gpt4 book ai didi

ios - SceneKit 节点不会改变场景根节点的位置

转载 作者:可可西里 更新时间:2023-11-01 06:19:28 28 4
gpt4 key购买 nike

我将 SceneKit 与 ARKit 结合使用,现在有一个简单的应用程序,我可以在其中点击屏幕,它会向我的场景添加一个 ARAnchor 和一个 SCNNode。

在某些时候,我想要移动整个场景,所以我尝试更改 sceneView.scene.rootNode.position.x += 10 来测试它。如果我在任何特定节点上调用它,该节点确实会适当移动。但是在 rootNode 上调用它,没有任何反应,我希望每个子节点(场景中的每个节点)都随之移动。

为什么我的其他节点没有正确移动,我可以做些什么来解决这个问题?还是我想错了?

最佳答案

根据 SCNScene.rootNode 的文档:

You should not modify the transform property of the root node.

根节点定义了世界坐标系的原点——所有其他测量都是相对于它的。因此,改变它的位置、方向、比例或其变换的任何其他方面是没有意义的(而且通常是有问题的)。

如果您想移动 SceneKit 场景中的所有内容,请创建一个新节点以包含所有其他内容,然后更改该节点的变换。 (你不能对 ARSCNView 添加的节点执行此操作,因为 ARKit 使这些节点成为根节点的直接子节点,但这些节点的全部意义在于将它们定位在世界空间中。)

关于ios - SceneKit 节点不会改变场景根节点的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44835589/

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