2

我目前正在开发 ARKit (SpriteKit) 应用程序。我注意到如果我在100m 处放置一个节点,该节点会显示得很好,但如果我将其设置为101m 或更远,它将不会显示。

这是距离限制吗?

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)

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

4

2 回答 2

2

为了增加相机的范围使用Far属性Z Clipping检查器区域中的属性。

默认值为100米。

在此处输入图像描述

var zFar: Double { get set }

开发者文档摘录:该far值决定了相机和可见表面之间的最大距离。如果某个曲面与相机的距离超过此距离,则该曲面将被剪裁并且不会出现。默认远值为100.0.

let camera = SCNCamera()
camera.zFar = 10000

在此处输入图像描述

于 2018-10-13T11:38:07.120 回答
1

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

于 2018-10-16T22:13:11.733 回答