OPENGL 两个 LoadIdentity
OPENGL Two LoadIdentitys
当我执行两个 glLoadIdentity() 时,
它看起来像它的 2d:
glMatrixMode(GL_PROJECTION_MATRIX);
glLoadIdentity();
gluPerspective( 90, (double)windowWidth / (double)windowHeight, 0.1, 100 );
glMatrixMode(GL_MODELVIEW_MATRIX);
glLoadIdentity();
Camera.Render(); // (gluLookAt)
但是,当我移除最后一个时,它可以工作,但光线似乎随着相机移动:
glMatrixMode(GL_PROJECTION_MATRIX);
glLoadIdentity();
gluPerspective( 90, (double)windowWidth / (double)windowHeight, 0.1, 100 );
glMatrixMode(GL_MODELVIEW_MATRIX);
Camera.Render(); // (gluLookAt)
您正在向 glMatrixMode
传递无效参数。
尝试传递 GL_PROJECTION
/GL_MODELVIEW
而不是 GL_PROJECTION_MATRIX
/GL_MODELVIEW_MATRIX
给他们。
当我执行两个 glLoadIdentity() 时, 它看起来像它的 2d:
glMatrixMode(GL_PROJECTION_MATRIX);
glLoadIdentity();
gluPerspective( 90, (double)windowWidth / (double)windowHeight, 0.1, 100 );
glMatrixMode(GL_MODELVIEW_MATRIX);
glLoadIdentity();
Camera.Render(); // (gluLookAt)
但是,当我移除最后一个时,它可以工作,但光线似乎随着相机移动:
glMatrixMode(GL_PROJECTION_MATRIX);
glLoadIdentity();
gluPerspective( 90, (double)windowWidth / (double)windowHeight, 0.1, 100 );
glMatrixMode(GL_MODELVIEW_MATRIX);
Camera.Render(); // (gluLookAt)
您正在向 glMatrixMode
传递无效参数。
尝试传递 GL_PROJECTION
/GL_MODELVIEW
而不是 GL_PROJECTION_MATRIX
/GL_MODELVIEW_MATRIX
给他们。