修改相机的透视投影

modifying camera's perspective projection

在透视投影中,距离相机较近的大小相同的物体看起来比距离较远的物体大。是否有可能影响透视投影的失真?图说的就是我的意思

当相机靠近物体时,默认的透视投影有时会导致不真实的失真,如果我可以设置一些 属性 来修改它就太好了。我为 projectionTransform()setProjectionTransform(_:) 祈祷,但我不知道如何使用它们。 usesOrthographicProjection 不幸的是太极端了。

简单!您正在寻找的是视野。它可用 as a property of the camera 并且与现实生活中的 Zoom 相当。

低视野意味着您的相机非常放大。那样的话,视角就会很小,但您将不得不将相机进一步向后移动(因为你正在放大)。

相反,如果您设置高视野,相机将被非常缩小,直到它开始看起来像 GoPro 或任何 "wide angle" 相机。会有很多失真,你需要将相机移近一些。

Here's a crash course on perspective for virtual cameras。这是关于 Cinema 4D 的,他们使用 "Focal Length" 而不是视野,但总体概念是相同的。