相机 Space OpenGL 教程

Camera Space OpenGL Tutorial

我正在学习 http://alfonse.bitbucket.org/oldtut/Positioning/Tut04%20Perspective%20Projection.html 上的教程,我相信用户 Nicol Bolas 就是作者。在Camera Perspective题目下卡住了

“我们的透视投影变换将特定于此 space。如前所述,投影平面应是 X 轴和 Y 轴上的 [-1, 1] 区域,并具有 Z 值的 -1。投影将从 -Z 方向上的顶点到此平面;具有正 Z 值的顶点在投影平面后面。

现在,我们做一个更简化的假设:透视平面的中心位置在相机中固定在(0, 0, -1) space。因此,由于投影平面指向 -Z 轴下方,因此眼睛相对于投影平面的位置为 (0, 0, -1)。因此,Ez 值(从投影平面到眼睛的偏移量)始终为 -1。这意味着我们的透视术语,当表述为除法而不是乘法时,简单地是 Pz/-1:相机的否定 - space Z 坐标。“

眼睛相对于投影平面的位置在z方向不是正1吗?

我的理解是眼睛在 (0,0,0),平面的中心在 (0,0,-1)。相对来说,眼睛在z方向到平面+1。

除了这个例外,我对本教程的理解非常好。我什至可以在相信这一点的同时看过去并理解教程的其余部分,但这不是我想要做的。

Therefore, since the projection plane is pointing down the -Z axis, eye's location relative to the plane of projection is (0, 0, -1).

最好当这句话不存在。事实上,它不存在。我拒绝你证明我错了。

不公平 looking at the Bitbucket repo either ;)