Разница между rootNode.addChildNode() и session.add(якорь:) в ARKit
Я следую нескольким нативным учебникам по ARKit и вижу несколько примеров позиционирования объектов непосредственно в корневой узел sceneView следующим образом:
sceneView.scene.rootNode.addChildNode(mySCNNode)
В других примерах объекты добавляются с помощью якорей, например:
sceneView.session.add(anchor: myARAnchor)
func renderer(_ renderer: SCNSceneRenderer, didAdd node: SCNNode, for anchor: ARAnchor) {
node.addChildNode(mySCNNode)
}
Кажется, что оба метода отслеживают одно и то же, но в чем разница между этими двумя методами? Почему я решил добавить узел в качестве ARAnchor
против простого добавления его в качестве дочернего к корневому представлению?