我对从glOrtho
方法生成的视图量感到困惑,
我知道最后两个参数是针对Z轴的,
第一个表示观察者与近平面之间的距离,第二个表示观察者与远平面之间的距离。
我的问题是观察者(相机)究竟位于Z坐标?
并在此链接中program一些使近平面正面和远平面负面的代码,在这种情况下我们可以说Z-在观察者后面而Z +在观察者面前?
如果是,尝试使Z坐标对其中一个三角形的所有顶点都为负,你会注意到它虽然出现在观察者后面,但为什么会出现?
答案 0 :(得分:4)
第一个表示观察者与近平面之间的距离,第二个表示观察者与远平面之间的距离
不,不是。正交投影定义了一个盒子。 zNear和zFar是盒子的位置,而不是与“观察者”的距离。
正交投影没有透视投影所用的“观察者”。他们有方向视图,而不是视图位置。并且视图的方向始终是使zFar离最远的方向并且zNear最接近。如果zNear大于zFar,则视图方向为正Z;否则,这是负面的Z。
答案 1 :(得分:0)
实际上你的问题有点令人困惑。我想你可以尝试glLookAt()并让对象从不同的角度出现并看到差异。这是一个链接 http://mycodelog.com/2010/05/28/glcamera/