gpt4 book ai didi

ios - 子类化 SCNScene 和 SceneKit 编辑器

转载 作者:行者123 更新时间:2023-11-28 21:36:09 25 4
gpt4 key购买 nike

我有一个带有相机设置的 SCNScene 子类,我想在所有子类中使用它。

let scene01 = TheSubclassScene()
let scene02 = TheSubclassScene(named:"art.scnassets/testScene.scn")!
self.sceneArray.addObject(scene01)
self.sceneArray.addObject(scene02)

我想在运行时改变场景。当我在代码中创建场景而不是使用 SceneKit 编辑器中的场景时,这会起作用。所以 scene01 正在工作,但 scene02 没有。在调试器中,我可以看到数组中的两个场景。一个是 SCNSceneSubclass 类型,另一个是 SCNScene 类型。

有什么方法可以让它工作吗?

更新:这是我的场景子类

class TheSubclassScene: SCNScene
{
let cameraNode = CameraNode()

override init()
{
super.init()
self.rootNode.addChildNode(self.cameraNode)
}

required init?(coder aDecoder: NSCoder)
{
super.init(coder: aDecoder)
}
}

最佳答案

我有解决该问题的方法。不好,但它有效。我实例化一个 SCNScene(named: "art.scnassets/testScene.scn") 然后我实例化一个 TheSubclassScene() 我克隆场景的 rootNode 并将它添加为子类场景的子节点。

let testScene = SCNScene(named:"art.scnassets/testScene.scn")!
let subclassScene = TheSubclassScene()
subclassScene.rootNode.addChildNode(testScene.rootNode.clone())

关于ios - 子类化 SCNScene 和 SceneKit 编辑器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33881677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com