RealityKit – 加载 USDC 模型失败,出现 RealityKit.Entity.LoadError 错误 0

RealityKit – Loading USDC model fails with RealityKit.Entity.LoadError error 0

加载机器 (USDC) 以 致命错误结束:操作无法完成。 (RealityKit.Entity.LoadError 错误 0。)。没有提供有关该问题的更多详细信息。

这是一个非AR RealityKit 场景。在阻塞主线程的同时加载模型是故意的。

有什么错误可能意味着什么的建议吗?我找不到任何解释。

func loadMachine() {
    do {
        machine = try Entity.load(named: "Machine")
    } catch let error {
        fatalError(error.localizedDescription) 

        //  Fatal error: The operation couldn’t be completed. 
        //  (RealityKit.Entity.LoadError error 0.)
    }
}

使用 .usdz 模型(也称为 binary-encoded zero-compression zip 文件),而不是 .usdc。虽然 Apple 的 Quick Look 能够显示 USDA (ascii) 和 USDC(二进制)模型,但 RealityKit 2.0 和 Reality Composer 1.5 只能读取 USD 系列的 USDZ 模型。

.usdz 格式是由 Pixar 与 Apple 合作专门为 AR 创建的。

let machine = try! ModelEntity.load(named: "Machine.usdz")

要将 USDC 转换为 USDZ,请使用 command line tools, or Autodesk Maya 2020+ 和 USD plug-in。