SCNKit:扩展父节点无效

dmr*_*r07 5 scenekit swift

我正在尝试按比例缩小包含其他节点的SCNNode,但它本身没有几何。我按比例阅读了文档,但我有点怀疑它们会相对于父级进行定位,而不是相对于父级进行定位。

问题: scale似乎什么也没做。

这是我的SCNNode子类的摘录

addChildNode(Node1)
addChildNode(Node2)
Node2.addChildNode(Node21)
addChildNode(Node3)

print("pre-scale", self.scale)
// prints SCNVector3(x: 1.0, y: 1.0, z: 1.0)
self.scale = SCNVector3(x:0.05, y:0.05, z:0.05)
print("post-scale", self.scale)
// prints SCNVector3(x: 0.05, y: 0.05, z: 0.05)
Run Code Online (Sandbox Code Playgroud)

可见,没有任何变化。

我已经考虑过进行循环并将缩放因子应用于每个子节点,但是我认为相对位置会变得一团糟。

我希望一切都可以扩展并保持其完整性。有什么我想念的吗?

Fra*_*ank 0

尝试将所有子节点一一缩放:

let newScale = Float(0.05)
for c in self.childNodes
{
    c.scale = SCNVector3Make(newScale, newScale, newScale)
}
Run Code Online (Sandbox Code Playgroud)