如何通过点击来获取SCNNode?

时间:2019-06-13 15:13:04

标签: ios swift arkit

我有一个ARSCNView,其中放置了一些SCNNode,为每个SCNNode分配了ID,然后将它们存储在数组中。

现在,当我点击它时,我要获取的是SCNNode。现在,我可以点击并更改节点的颜色。但是我无法获得具有我设置的ID(在存储属性中设置为0的节点)的节点,它的位置也是(0,0,0)。我认为它正在返回该节点的新实例。

我将此代码作为参考:https://stackoverflow.com/a/46074366/6605214

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

找到了解决方案。我从场景中以错误的方式加载节点。

之前:

let scene = SCNScene(named: "marker.scn")!
let node = scene.rootNode

之后:

let scene = SCNScene(named: "marker.scn")!
let node = scene.rootNode.childNode(withName: "marker", recursively: true)