缺少OpenGL ES 2.0标头中的方法和常量

时间:2010-11-28 22:00:53

标签: iphone ipad ios opengl-es

我开始学习OpenGL与iOS一起使用它。我想知道为什么glMatrixMode之类的方法或GL_PROJECTION中的<OpenGLES/ES1/gl.h>等常量,而<OpenGLES/ES2/gl.h>中却没有。{1}}。为什么?在使用OpenGL ES 2.0而不是1.1时,您是否强制编写自己的着色器?

1 个答案:

答案 0 :(得分:5)

固定功能管道(包括内置矩阵)完全取自OpenGL ES 2.0,因此常量如GL_PROJECTION,以及glPushMatrix,glRotate,glMatrixMode等功能已被删除。

此更改要求您编写着色器并将自己的模型和投影矩阵传递/计算到它。虽然ES 2为您提供了更大的灵活性,但它也使得使用旧代码变得非常困难并且作为初学者开始使用。

如果您不完全了解投影和模型矩阵,您可能希望坚持使用ES 1.

可以找到带有进一步解释的演示文稿here