如何从fbx文件中提取顶点数据

时间:2010-06-26 23:00:44

标签: opengl direct3d 3dsmax fbx

我尝试从使用3ds max 2010创建的fbx文件中提取顶点和uv贴图信息。 我可以从文件中获得的是良好的顶点和多边形索引数据,但是错误的uv贴图。

请有人帮助我指出一个好的方向或给我一个教程。

感谢您准备好了。

1 个答案:

答案 0 :(得分:2)

请注意,当您为一个非常平滑的对象加载法线时,它们的转换方式会不同,而不是平滑的。

这是我为将FBX文件加载到系统内存中所做的一些代码的链接......认为它可能有所帮助。 DOWNLOAD LINK你想看看“MedelProcess_Mesh.cpp”btw来回答你可能遇到的一些问题。希望这会有所帮助,请记住我没有动画支持。

简单的答案::

对于UVs。

int uvIndex1 = mesh->GetTextureUVIndex(polyIndex, 0);
int uvIndex2 = mesh->GetTextureUVIndex(polyIndex, 1);
int uvIndex3 = mesh->GetTextureUVIndex(polyIndex, 2);
KFbxVector2 uv1 = uv->GetAt(uvIndex1);
KFbxVector2 uv2 = uv->GetAt(uvIndex2);
KFbxVector2 uv3 = uv->GetAt(uvIndex3);

对于Verts。

int vertexCount = mesh->GetControlPointsCount();
KFbxVector4* vertexArray = mesh->GetControlPoints();