我在 OpenGL 中偶然发现了一个我无法解释的问题,除非我以某种方式误解了glPushMatrix()
/是如何glPopMatrix()
工作的。
下面的两段代码不应该有完全相同的效果吗?
glPushMatrix();
glVertex3f(0,0,0);
glTranslatef(c->e->coords[0], c->e->coords[1], c->e->coords[2]);
glPopMatrix();
对比
glVertex3f(c->e->coords[0], c->e->coords[1], c->e->coords[2]);
在我的应用程序中,只有当我使用第二个时,我才能看到任何东西。我尝试在代码中完全相同的位置使用两段代码,没有改变任何其他内容,而带有推送/弹出矩阵的代码不会在屏幕上绘制任何内容。