无法理解gluLookAt参数

时间:2016-03-02 15:45:39

标签: c++ visual-studio opengl glut

我现在正在学习OpenGL(过剩)。通过使用GL_Lines我绘制立方体,但它看起来像方形,所以我尝试使用gluLookAt。我一直在搜索和试验,但我无法理解它是如何工作的!请帮助。

1 个答案:

答案 0 :(得分:1)

documentation

中所述

C规范

void gluLookAt(GLdouble eyeX, GLdouble eyeY, GLdouble eyeZ,
               GLdouble centerX, GLdouble centerY, GLdouble centerZ,
               GLdouble upX, GLdouble upY, GLdouble upZ);

<强>参数

eyeXeyeYeyeZ
指定眼点的位置。

centerXcenterYcenterZ
指定参考点的位置。

upXupYupZ
指定向上矢量的方向。

<强>描述

gluLookAt创建一个从眼点,指示场景中心的参考点和UP矢量派生的视图矩阵。

矩阵将参考点映射到负z轴,将眼点映射到原点。当使用典型的投影矩阵时,场景的中心因此映射到视口的中心。类似地,投影到观察平面上的UP矢量描述的方向被映射到正y轴,使得它在视口中指向上方。 UP矢量不得与从眼点到参考点的视线平行。

借用以下图片(source

enter image description here

eyePcenterfcupup。 &#34;近飞机&#34;和#34;远飞机&#34;定义了viewing frustum

的范围