0

我有一个扩展名为“.usdz”的 3D 对象资产文件。

如果此 3D 对象资产文件存储在应用程序的资源中,则场景将加载为“Y 轴向上”,如 Xcode 和 Reality Composer 应用程序中所示。

如果从 iPhone/iPad 设备(使用 UIDocumentPickerController)导入相同的文件,场景会在 Z 轴上旋转 90 度。

在我的研究中,我遇到了以下链接:

Xcode 8 中的“始终使用 Y-Up 轴”去哪儿了?

场景套件。哪条路向上?

我的理解是,从设备导入文件时,“Y - 轴向上”选项不起作用。

另外,我尝试了以下方式来加载资产:

var urlObj : URL!

let fileManager = FileManager.default

let documentDirectory = fileManager.urls(for: .documentDirectory, in: .userDomainMask)[0]

let directoryContents = try! fileManager.contentsOfDirectory(at: documentDirectory, includingPropertiesForKeys: nil)

for obj in directoryContents {
        let urlStr = obj.absoluteString.removingPercentEncoding                                       
        urlObj = urlStr
        
        break
}

try SCNScene(url: urlObj, options: [SCNSceneSource.LoadingOption.convertToYUp: 1])

但这也行不通。

解决此问题的任何帮助都会有很大帮助。提前致谢!

4

0 回答 0