**
理解FBX格式中Mesh数据结构**
fbx文件是现在许多建模动画软件和游戏引擎之间共用的模型文件格式。fbx文件分为两种方式从建模软件中导出,一种是二进制文件另一种是ASCII码保存。
ASCII保存的格式右键打开方式选文本可以打开看到里面保存的数据。对于模型网格来说,模型中点坐标、点索引、 点法线、uv 是生成模型的重要参数。在文本中Object properties 能找到这个些数据。
比如打开一个简单正方提模型我们可以看到下面数据:
Vertices的24个值是三维数据集的8个顶点(3个值代表一个顶点三维坐标)。
PolygonVertexIndex 下的36个值是顶点索引(mesh中点的索引)
Normals 的108是12个三角形的每个三角形角的36个法线(3个值代表一个法向量)。
UV 下的24是12个纹理坐标(2个值代表一个纹理坐标对)。
UVIndex 的36是三维数据集的36个三角形角的纹理坐标索引(引用 UV 的值)。
Vertices中数据不难理解,就是这些数据三个一组对应X、Y、Z构成一个三维坐标,所以可以得到正方体的8个顶点坐标。
PolygonVertexIndex 看到这个数据中的大家都会有疑问:
为什么顶点索引数据会有负数?