从上一篇文章我们可以看出,OBJ文件中存储数据的方式:
前缀 参数1 参数2 参数3.......
前缀就是一些标识。这些标识代表一些东西,比如v就标识vertex,f标识face,vt标识纹理坐标,vn标识法线向量等等。
在继续说OBJ文件之前先说一下另一个东西。
用3D建模软件做出来的OBJ文件一般会带有一个.mtl文件,比如你做了一个box.obj文件,导出的时候会生成一个box.mtl文件。那么这个box.mtl文件是用来干什么的呢?
这个文件里面保存着box.obj这个模型的纹理信息,光照等等。因为在你用txt方式打开一个obj文件的时候会发现,这个obj文件内部不存在对某个纹理图片的申明,但是正确的导入的话,能够绘制出带有纹理的模型,这个的原因其实就在于这个.mtl文件,.mtl文件中有obj文件中用到的每一个纹理的名字,例如:sky.jpg。