Ser*_*gio 7 ios swift scnnode arkit usdz
我已经下载了苹果提供的 .usdz 模型:https : //developer.apple.com/arkit/gallery/
但是现在,我想用这些模型之一创建一个 SCNNode,所以我这样做是为了获取节点:
guard let urlPath = Bundle.main.url(forResource: "retrotv", withExtension: "usdz") else {
return
}
let mdlAsset = MDLAsset(url: urlPath)
let modelRootNode = SCNScene(mdlAsset: mdlAsset).rootNode
Run Code Online (Sandbox Code Playgroud)
然后我将它添加到场景中,结果是这样的:
为什么它没有纹理?
如您所见,我已将下载的 .usdz 文件放入我的项目目录中的文件夹中:
Fla*_*urt 13
添加 .USDZ 对象的正确方法实际上是使用文件的 URL 创建场景:
let scene = try! SCNScene(url: usdzURL, options: [.checkConsistency: true])
Run Code Online (Sandbox Code Playgroud)
甚至通过参考节点创建:
let referenceNode = SCNReferenceNode(url: usdzURL)
referenceNode.load()
Run Code Online (Sandbox Code Playgroud)