我想知道如何相对于Device Reference(而不是相对于World Reference)获取SCNNode的坐标?

谢谢!

最佳答案

一种选择是获取ARCamera节点的位置。您可以通过遍历所有子节点来完成此操作,直到找到ARCamera(或者可能使用ARSCNView的pointOfView方法,不确定这一点)。

找到相机后,您可以将其存储到SCNNode类型的变量中,然后基本上需要获得两者之间位置的差异。您可以执行以下操作:

SCNVector3Make(cameraNode.x - targetNode.x,
               cameraNode.y - targetNode.y,
               cameraNode.z - targetNode.z);

10-08 15:32