有没有办法使用 ARKit 加载 FBX 文件?



在我的项目中,我使用 ARKit 定位 3D 文件。我能够加载.dae.obj格式模型。

有什么方法可以加载.fbx文件吗?

更新 时间:2023 年 1 月 14 日。

您可以在此处找到有关.FBX转换的信息

ARKit 无法在场景中加载 3D 模型。这是SceneKit或RealityKit的工作。但是,这两个框架都不直接支持.FBX文件格式。您可以通过 ModelIO 实现.FBX文件格式的读取,但这对任何开发人员来说都是一个真正的挑战,因为您需要弄清楚如何处理层次结构、材质、照明、动画等。

准备模型以在 SceneKit 和 RealityKit 中工作的最佳方法是将其转换为 。USDZ 文件通过 Xcode 命令行工具中的usdzconvert命令。要将.FBX文件转换为.USDZ只需在终端中执行以下命令:

usdzconvert ~/Desktop/fileName.fbx

还有用于应用在 3D 包中生成的渲染通道的其他标志:

usdzconvert fileName.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 中设置全局变量。

如果您更喜欢GUI,请使用现实转换器应用程序。

> 六月 2020

要将FBX转换为USDZ,您需要Apple的usdzconvert实用程序。要使其正常工作,请仔细阅读安装说明。

您将需要此处的"FBX Python SDK"和"FBX Python Bindings"。

请注意,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应用程序。这允许将 fbx 转换为美元。

尝试使用AssimpKit 在 SceneKit 场景中使用fbx文件。

AssimpKit目前支持29种文件格式(包括fbx),允许您使用 这些文件直接在 SceneKit 中,而无需将它们转换为 场景套件或模型 IO 支持的任何文件,从而保存 资产管道中的额外步骤。

其他支持的文件格式:

3d, 3ds, ac, b3d, bvh, cob, dae, dxf, ifc, irr, md2, md5mesh, md5anim, M3SD, NFF, OBJ, 关闭, 网状.xml, 层, Q3O, Q3S, 原始, SMD, STL, WRL, XGL, ZGL, FBX, MD3

你不能直接在XCode/Scenekit中使用FBX(或者至少现在不能)。

您需要将文件以太转换为 .obj 或(我更喜欢的).dae

使用i.Ex Blender作为转换工具通常没有任何问题。

然后,如果需要,您可以直接从XCode将其转换为.scn文件。(根据Apple的说法,.scn文件具有较小的尺寸和更快的加载速度)

最新更新