OpenGL renderer GL state problems

Issue #32 resolved
Former user created an issue

Automatic migration. Original reporter: "muhkuh"

The OpenGL renderer does not set the required culling state to GL_FRONT in 0.41.

In the current CVS version somebody seems to have tried to take care of it but things are worse now.

1. glCullFace is called with GL_CCW as parameter. Valid parameters for glCullFace are GL_FRONT, GL_BACK and GL_FRONT_AND_BACK. GL_CCW is a valid parameter for glFrontFace! This gives and invalid enum error.

2. There are no corresponding glPopMatrix calls for the glPushMatrix calls to restore the modelview and the projection matrix. This leads to an "overflow" of the OpenGL matrix stacks (and the old matrices are not restored).

Reproducibility: always

Additional information: File: cegui_mk2\src\renderers\OpenGLGUIRenderer\openglrenderer.cpp

Affected functions: void OpenGLRenderer::initPerFrameStates(void) void OpenGLRenderer::exitPerFrameStates(void)

Affected versions: 0.41 CVS 1.9

Appended fix does: 1. Turn off culling in initPerFrameStates() completely as I didn't see how culling would be of any use in CEGUI rendering.

2. Popping previously pushed modelview and projection matrices from the stack inexitPerFrameStates().

Comments (2)

  1. Log in to comment