OpenGL翻译

时间:2013-02-26 13:04:24

标签: c++ opengl

我在翻译我正在绘制的对象时遇到了一些问题。这是我的整个显示功能。我似乎找不到任何我做错的事。

glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
glOrtho(0, 720, 480, 0, -1.0, 1.0);
glTranslatef(-0.5f,0.0f,0.0f);

//drawing object here

glPopMatrix();
glutSwapBuffers();

1 个答案:

答案 0 :(得分:2)

完成glOrtho后,您需要开始修改模型视图矩阵堆栈:

// ...
glOrtho(0, 720, 480, 0, -1.0, 1.0);

glMatrixMode(GL_MODELVIEW);
glTranslatef(-0.5f,0.0f,0.0f);
// ...

但现在您的glPushMatrixglPopMatrix正在修改不同的堆栈,因此glPopMatrix会导致错误。无论如何,你不应该为了这么简单的例子而需要它们。