swift ARKit节点在100m后消失

6ss1mwsb  于 2023-02-07  发布在  Swift
关注(0)|答案(2)|浏览(157)

我目前正在开发ARKit(SceneKit)应用程序。我注意到如果我将节点放在100 m,节点会显示得很好,但如果我将其设置为101 m或更远,它就不会显示。
这是距离限制吗?

var translation = matrix_identity_float4x4
translation.columns.3.x = 1
translation.columns.3.y = 1
translation.columns.3.z = -100
let transform = simd_mul(currentFrame.camera.transform, translation)
let anchor = ARAnchor(name: "test", transform: transform)
sceneView.session.add(anchor: anchor)

有没有办法增加这个范围?

luaexgnf

luaexgnf1#

要增加摄影机的范围,请使用“属性检查器”的“Z Clipping”区域中的“Far”属性。
默认值为100米。

var zFar: Double { get set }

摘自Developer Documentationfar值确定摄像机和可见表面之间的最大距离。如果表面距离摄像机的距离大于此距离,则该表面将被剪切且不显示。默认的远值为100.0

let camera = SCNCamera()
camera.zFar = 1000

这篇文章提供了一个重要的信息。

7tofc5zh

7tofc5zh2#

看起来没有办法更新SpriteKit的Z最大范围。只有SceneKit允许您通过更新相机的zfar属性来修改这一点。感谢Gigantic的帮助!

相关问题