OGeek|极客世界-中国程序员成长平台

标题: ios - 如何在 iOS SceneKit 中使用具有不同场景图形的 DAE 文件 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:34
标题: ios - 如何在 iOS SceneKit 中使用具有不同场景图形的 DAE 文件

我有一个 .dae 文件并想在 SceneKit 中使用该模型。问题是 .dae 文件中有不同的场景图: enter image description here

在我的 ViewController.swift 我有这个代码:

let scene = SCNScene(named: "art.scnassets/Edward_Kenway.dae")!
self.baumNode = scene.rootNode.childNode(withName: "???", recursively: true)

我必须在 childNode withName 中使用什么?如果我选择第一个场景图 (EdwardKenwayNecklace) 并将几何图形的名称 (EdwardKenwayNecklaceMesh) 放入我的代码中,应用程序就会崩溃。



Best Answer-推荐答案


您可以遍历场景的子节点,然后将它们全部添加到您创建的新节点中。

假设这是您正在寻找的东西,这样的事情可能会起作用。

func loadModel() {
    let virtualObjectScene = SCNScene(named: path)
    let wrapperNode = SCNNode()
    for child: SCNNode in virtualObjectScene?.rootNode?.childNodes {
        wrapperNode.addChildNode(child)
    }
    addChildNode(wrapperNode)
}

路径是场景的名称。 该函数在初始化一个 SCNNode 类型的对象后运行,然后对该对象调用 loadModel。

关于ios - 如何在 iOS SceneKit 中使用具有不同场景图形的 DAE 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45913242/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://jike.in/) Powered by Discuz! X3.4