我无法按照我想要的方式定位相机。我知道我需要使用gluLookAt
来设置相机。据我所知,前三个用于相机的位置,第二个用于目的地,第三个用于相机upvector
,我正在尝试实现一个相机应该看的盒子在它的中心。这个盒子由6个三角形组成,不一定是一个像样的盒子。为了得到它的中心,我得到所有三角形顶点的平均值(x
,y
和z
)。
所以这是我的显示功能:
Vect v=getBoxCenter();
gluLookAt(camera.pos.x, camera.pos.y, camera.pos.z,
v.x,v.y,v.z,
camera.upVector.x, camera.upVector.y, camera.upVector.z);
glColor3f(1, 0, 0);
glBegin(GL_TRIANGLES);
glVertex3f(0, 0, 0); glVertex3f(100, 0, 0); glVertex3f(0, 100, 0);
glEnd();
glutSwapBuffers();
当我不使用gluLookAt
时,三角形在屏幕中央显示正常。我做错了什么?