【发布时间】:2013-02-20 05:39:27
【问题描述】:
我知道这段代码有问题,好像我运行它什么都没有。
这段代码中出错的部分
void display(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0, 1.0, 1.0);
glLoadIdentity ();
glPushMatrix();
glRotated((GLdouble) Vangle,1.0,0.0,0.0);
gluLookAt (0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
glPopMatrix();
glutWireCube (1.0);
glFlush ();
}
你能说出哪里不对吗?
我认为在矩阵堆栈方法(push和pop)中,我不知道如何使用它
注意:Vangle 的值为零。
【问题讨论】:
-
立方体是否显示没有矩阵操作?请记住,“pop”将撤消对“pushed”矩阵所做的一切。
-
为什么在 gluLookAt 之前执行 glRotated()?您是否也需要旋转,因为 gluLookAt 本质上会向矩阵堆栈提交一些旋转和平移?
-
我想到的另一点是,您应该在调用 gluLookAt 之前调用 glMatrixMode(GL_PROJECTION),然后再调用 glMatrixMode(GL_MODELVIEW) 以防止混淆。请参阅此线程:stackoverflow.com/questions/13053334/… 这应该可以解决有关此问题的任何困惑。 (我希望!)
-
是的,不显示矩阵运算。
-
爱德华·伯德,我想旋转坐标系然后放置视点的位置,这会使视点的位置发生变化,我想编写通过改变场景周围的相机瞄准来查看场景各个方面的程序
标签: opengl