我正在将一些旧的XNA代码移植到D3D11,它使用FBX模型。它们非常基本,所以如果需要的话,我可以在3DSMax中重新创建它们,或者如果存在工具,可以转换它们。
所有我想要的是能够得到网格加载,理想情况下沿着CDXUTSDKMesh(但不支持FBX)的线。我看了看内容导出器,但它仍然需要安装FBX SDK,我希望避免这种情况。
是否有一种相当简单的方法来加载FBX网格,或者我可以使用3DSMax导出到通过CDXUTSDKMesh加载的格式。
让我困惑的是,如果你通过Item->New在Visual Studio中创建一个场景,它是一个FBX模型,从我可以看出,如果不使用FBX SDK自己做,这是完全不支持的。
一定有更简单的方法!想法吗?
使用Autodesk FBX SDK完成.FBX
文件的工作。Visual Studio内容管道使用Autodesk FBX SDK:它安装Autodesk FBX dll。内容导出器还需要Autodesk FBX dll。
一般来说,FBX
是一种创作和交换格式。游戏和3D应用程序不直接加载FBX模型,而是沿着VBO
, SDKMESH
或CMO
加载一些运行时格式-参见directxmesh wiki页面上的这些格式。开发人员需要Autodesk FBX SDK在他们的构建系统上,但他们不需要部署它,因为他们的内容已经"煮"成其他二进制格式。
对你来说最简单的事情就是将你的FBX添加到Visual Studio中,在你的项目中启用内容管道,然后使用DirectX Tool Kit加载构建的CMO
——它也可以加载VBO
或SDKMESH
文件,并且有意设计得很像XNA Game Studio类设计,但在c++中。
如果您正在制作数字内容创建(DCC)应用程序,需要对FBX文件进行直接I/O,那么您应该使用Autodesk FBX SDK。