如何使用 ARKit 放置 OBJ 类型的 3D 模型?

Cod*_*rce 5 augmented-reality .obj ios swift arkit

我需要一些帮助来使用新的 Apple ARKit 放置 3D 模型。是否可以放置类型为 的对象OBJ?我正在尝试放置头骨的 3d 模型。

//Load the OBJ file
let bundle = Bundle.main
guard let url = bundle.url(forResource: "Cranial", withExtension: "obj") else {
    fatalError("Failed to find model file")
}

let asset = MDLAsset(url:url)
guard let object = asset.object(at: 0) as? MDLMesh else {
    fatalError("Failed to get mesh from asset")
}

let scene = SCNScene()
let nodeCranial = SCNNode.init(mdlObject: object)
nodeCranial.simdPosition = float3(0, 0, 0.5)
sceneView.scene.rootNode.addChildNode(nodeCranial)
Run Code Online (Sandbox Code Playgroud)

不知道为什么镜头前什么都没有。如果我使用以下行而不是上面的 nodeCranial ,它会起作用:

let cubeNode = SCNNode(geometry: SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0))
Run Code Online (Sandbox Code Playgroud)

为什么它也不适用于OBJ文件?上面的代码在 func 中viewDidLoad()

May*_*iya 8

    let tempScene = SCNScene(named: "art.scnassets/cat/cat.obj")!
    modelNode = tempScene.rootNode
    modelNode.simdPosition = float3(0, 0, 0.5)
    sceneView.scene.rootNode.addChildNode(modelNode)
Run Code Online (Sandbox Code Playgroud)

you can load .obj, .scn or .dae files like this way.