OpenGL ES 2.0还支持glPushMatrix和glPopMatrix吗?我目前正在以以下方式使用它们:
glPushMatrix();
glTranslatef(xLoc, yLoc, 0);
[myTexturePointer drawAtPoint:CGPointZero];
glPopMatrix();
我之所以问这个问题,是因为我读过一些关于2.0的文章“从规范中移除矩阵堆栈”。由于我对OpenGL比较陌生,我不确定在哪里可以找到一个明确的答案。
发布于 2010-05-27 11:22:25
不,OpenGL ES 2.0使用可编程管道,而不是早期版本中的固定函数管道。您不能使用立即模式命令(glVertex、glNormal等)或矩阵堆栈。您应该实现自己的矩阵堆栈数据结构(这无论如何都是首选的,因为固定的函数矩阵堆栈具有依赖于实现的深度),并将当前矩阵发送到着色器程序。
要很好地介绍现代OpenGL,请查看这些tutorials from Durian Software。它们基于OpenGL 2.0,但其概念将直接映射到ES2.0规范。
https://stackoverflow.com/questions/2918232
复制相似问题