2016-03-02 91 views
0

我正在学习OpenGL(glut)。通过使用GL_Lines我画了立方体,但它看起来像正方形,所以我尝试使用gluLookAt。我一直在寻找和尝试,但我不明白它是如何工作的!请帮助。无法理解gluLookAt参数

回答

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

eyeP,所述centerfc,和upup。 “近平面”和“远平面”定义了viewing frustum的范围