OpenGl ES glPushAttrib()3D模型渲染

时间:2013-04-03 21:16:46

标签: c++ opengl-es-2.0 3d-model

我知道我不能在openGL ES中执行glPush / PopAttrib,而且我必须手动执行此操作。我的问题是: 我需要启用/禁用和psuh / pop才能正确渲染3D模型?

我遇到的问题是颜色在不同的对象之间混合呈现。此外,某些对象没有纹理,看起来它正在尝试应用它。

是否存在“安全”可能未经过优化的方式来确保每次渲染新对象时openGL状态都是“干净”?有点像glPushAttrib(GL_ALL_ATTRIB_BITS)

1 个答案:

答案 0 :(得分:4)

不,没有。但是OpenGL ES 2.0中可能的状态(~10)要少得多,其他一切都由你自己的着色器控制。基本上你只需要启用/禁用所有可能的状态(并正确配置你启用的状态)。

可以在此处找到所有州的列表:

http://www.khronos.org/opengles/sdk/docs/man/xhtml/glEnable.xml