gpt4 book ai didi

ios - SCNNode.removeFromParentNode() 和渲染循环

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

我有一个关于删除 SCNNodes 的问题我有一个创建 SCNNodes 的函数,当节点准备就绪时,我添加它:

scene.rootNode.addChildNode(node)

然后我用这个函数创建了一个新的 SCNNode,我想删除旧的并添加新的,不幸的是 SCNNode.removeFromParentNode() 不会删除旧的:

func cleanUpAndAdd(){
for node in scene.rootNode.childNodes{
if node.name == "object" {
node.removeFromParentNode()
scene.rootNode.addChildNode(object)
object.name = "object"
} else {
scene.rootNode.addChildNode(object)
object.name = "object"
}
}
}

它只是添加和添加,从不删除...

我错过了什么?

最佳答案

请注意,SCNNode.childNodes 是一个集合(数组),因此根据 Cocoa 惯例,您不应该尝试改变它(SCNNode.addChildNode(_:)),同时它正在被枚举。如果你这样做,SceneKit 会注意到生成一个运行时异常,但行为是未定义的。

关于ios - SCNNode.removeFromParentNode() 和渲染循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44670832/

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