【发布时间】:2019-10-22 22:34:25
【问题描述】:
在我的项目中,我使用 ARKit 投影 3d 文件。我能够投影.dae 和.obj 格式模型。
无论如何我可以加载.fbx 文件吗?
【问题讨论】:
标签: bash augmented-reality scenekit arkit realitykit
在我的项目中,我使用 ARKit 投影 3d 文件。我能够投影.dae 和.obj 格式模型。
无论如何我可以加载.fbx 文件吗?
【问题讨论】:
标签: bash augmented-reality scenekit arkit realitykit
更新:2020 年 9 月 11 日。
涵盖.fbx 转换设置的完整信息,请阅读HERE。
ARKit 没有在场景中加载 3D 模型。这是 SceneKit 或 RealityKit 的工作。然而,这两个框架都不直接支持.fbx 文件格式。您可以通过ModelIO 实现对.fbx 文件格式的读取,但这并非易事。
为使用 ARKit、SceneKit 和 RealityKit 准备模型的最佳方法是通过 Xcode 11 和 Xcode 12 中的新 usdzconvert 命令将其转换为 .usdz 文件。
要将.fbx 文件转换为.usdz,只需在终端中键入以下行:
usdzconvert file.fbx
还有九个标志用于应用在 3D 包中生成的渲染通道:
usdzconvert file.fbx -diffuseColor albedo.png
-opacity transparent.png
-metallic chrome.jpg
-roughness rough.jpg
-normal bump.png
-occlusion ao.jpg
-emissiveColor emit.png
-clearcoat varnishing.jpg
-clearcoatRoughness ungloss.png
要使用此命令行转换工具,请从 Apple 开发人员资源下载 USDZ Tools 和从 Autodesk 开发人员资源下载 FBX Python SDK。不要忘记在 macOS 中设置全局变量。
【讨论】:
2020 年 6 月
要将 FBX 转换为 USDZ,您需要来自 Apple 的 usdzconvert 实用程序。要使其正常工作,请仔细阅读安装说明。
您将需要来自here 的“FBX Python SDK”和“FBX Python 绑定”。
请注意,FBX Python SDK 的当前(2020 年 6 月)版本是 2020.1,因此您必须更改 USB.command 中的以下行
# export PYTHONPATH=$PYTHONPATH:/Applications/Autodesk/FBX\ Python\ SDK/2019.0/lib/Python27_x86
到
export PYTHONPATH=$PYTHONPATH:/Applications/Autodesk/FBX\ Python\ SDK/2020.1/lib/Python27_ub
要使用 usdzconvert,请双击 /Applications/usdpython/USD.command,然后在打开的终端中输入 usdzconvert。
就是这样!
【讨论】:
您可以从 Apple 下载Reality Converter app。这允许将 fbx 转换为 usdz。
【讨论】:
尝试使用AssimpKit 在 SceneKit 场景中使用您的 fbx 文件。
AssimpKit 目前支持 29 种文件格式(包括 fbx),允许您使用 这些文件直接在 SceneKit 中,无需将它们转换为 SceneKit 或 Model IO 支持的任何文件,从而保存 资产管道中的额外步骤。
其他支持的文件格式:
3d、3ds、ac、b3d、bvh、cob、dae、dxf、ifc、irr、md2、md5mesh、md5anim、 m3sd,nff,obj,关闭,mesh.xml,ply,q3o,q3s,原始,smd,stl,wrl,xgl, zgl, fbx, md3
【讨论】: