首页 文章

ARKit会话中的远平面有多远?

提问于
浏览
0

所以,

我一直在SCNSceneRenderer上使用unproject函数:

public func unprojectPoint(_ point: SCNVector3) -> SCNVector3

当我想取消投影屏幕点时,我传递Z = 1 .

为了检查事物,我还在场景中的未投影矢量位置放置了一个节点 . 事情似乎结束了 .

在这个过程中,我想知道ARKit如何真正处理远近飞机 .

记录到远处平面上的未投影点给我这个,这是我指向相机时(尽可能直接停机 - 世界坐标中的Z):

SCNVector3(x: 121.191811, y: -176.614227, z: -1111.88794)

鉴于在ARKit中单位是米,-1111是否意味着远平面距离大约1K?

我试图理解近距离和远距离平面在ARKit会话中的位置,具体来说,是远处平面处于固定位置,这意味着它是否始终与摄像机保持固定距离?它改变了吗?大约1K米似乎有意义吗?

1 回答

  • 1

    unprojectPoint 功能使用与相机相同的投影 . 如果您想知道相机投影的近距离和远距离平面是什么,请向视图询问其pointOfView节点,向该节点询问其camera,然后向摄像机询问其zNearzFar设置 .

相关问题