如何使用 python fbx sdk 导出二进制 fbx 文件

how to fbx sdk export binary fbx file with python

我想用 python throw autodesk fbx sdk 导出二进制 fbx 文件,但是导出文件没有 Material,并且导出 ascii fbx,它可以很好地工作。有人可以帮助我吗? ps: 如何在 linux 中使用 fbx 转换将 ascii fbx 文件导出为二进制文件,我在 autodesk 网站上搜索转换,不支持 Linux OS

如果要导出material,需要添加

pSdkManager.GetIOSettings().SetBoolProp(EXP_FBX_MATERIAL, True)
pSdkManager.GetIOSettings().SetBoolProp(EXP_FBX_TEXTURE, True)
pSdkManager.GetIOSettings().SetBoolProp(EXP_FBX_EMBEDDED, True) # or False if you want ASCII

在二进制和ascii之间选择

pFileFormat =pSdkManager.GetIOPluginRegistry().GetNativeWriterFormat()
if not pEmbedMedia:
    lFormatCount =pSdkManager.GetIOPluginRegistry().GetWriterFormatCount()
    for lFormatIndex in range(lFormatCount):
        if pSdkManager.GetIOPluginRegistry().WriterIsFBX(lFormatIndex):
            lDesc =pSdkManager.GetIOPluginRegistry().GetWriterFormatDescription(lFormatIndex)
            if "ascii" in lDesc:
                pFileFormat =lFormatIndex
                break

并在 Exporter.Initialize() 调用中使用 pFileFormat。

Linux 从未发布 FbxConverter,因此没有选项。谁既然获得了 Python 绑定,既然 SDK 可以做与应用程序相同的事情,为什么不做一个简单的 Python 命令行转换器呢?