我的问题是关于在使用 openGL 3.3、FreeImage 和 FBX SDK 2014.2 的应用程序中加载 .fbx 模型
我正在使用面向 z-up 的 3ds max 2014。然而,openGL 是面向 Y 的。因此,当我尝试加载模型时,它会旋转!
我尝试了几种方法。 3ds max fbx 插件有 fbx 导出器。我在 Axis Conversion-> Up Axis 下选择 Y 和 Z 作为上轴,但没有效果。模型仍在旋转。
然后我尝试了 ConvertScene() 函数,但仍然没有效果。然后我发现 CobvertScene() 不会转换节点的轴系。
有什么有效的方法可以在 openGL 中正确加载 .fbx 模型吗?
在openGL中加载模型时如何更改模型的up_Axis?
最佳答案
轴转换由 FbxAxisSystem 处理,如下所示:
FbxAxisSystem directXAxisSys(FbxAxisSystem::EUpVector::eYAxis,
FbxAxisSystem::EFrontVector::eParityEven,
FbxAxisSystem::eRightHanded);
directXAxisSys.ConvertScene(scene);
默认情况下,它会覆盖您提供给它的场景,但如果您不想要该功能,则有一个重载的 ConvertScene() 函数。
如果您要转换为另一个系统,请检查 FbxAxisSystem 中的默认值,它们被声明为静态常量。
关于visual-c++ - Fbx SDK 上轴转换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21221029/