-void GL_Backend_ResetState(void)
-{
- memset(&gl_state, 0, sizeof(gl_state));
- gl_state.depthtest = true;
- gl_state.alphatest = false;
- gl_state.blendfunc1 = GL_ONE;
- gl_state.blendfunc2 = GL_ZERO;
- gl_state.blend = false;
- gl_state.depthmask = GL_TRUE;
- gl_state.colormask = 15;
- gl_state.color4f[0] = gl_state.color4f[1] = gl_state.color4f[2] = gl_state.color4f[3] = 1;
- gl_state.lockrange_first = 0;
- gl_state.lockrange_count = 0;
- gl_state.cullface = v_flipped_state ? GL_BACK : GL_FRONT; // quake is backwards, this culls back faces
- gl_state.cullfaceenable = true;
- gl_state.polygonoffset[0] = 0;
- gl_state.polygonoffset[1] = 0;
-
- CHECKGLERROR
-
- qglColorMask(1, 1, 1, 1);
- qglAlphaFunc(GL_GEQUAL, 0.5);CHECKGLERROR
- qglDisable(GL_ALPHA_TEST);CHECKGLERROR
- qglBlendFunc(gl_state.blendfunc1, gl_state.blendfunc2);CHECKGLERROR
- qglDisable(GL_BLEND);CHECKGLERROR
- qglCullFace(gl_state.cullface);CHECKGLERROR
- qglEnable(GL_CULL_FACE);CHECKGLERROR
- qglDepthFunc(GL_LEQUAL);CHECKGLERROR
- qglEnable(GL_DEPTH_TEST);CHECKGLERROR
- qglDepthMask(gl_state.depthmask);CHECKGLERROR
- qglPolygonOffset(gl_state.polygonoffset[0], gl_state.polygonoffset[1]);
-
- if (vid.support.arb_vertex_buffer_object)
- {
- qglBindBufferARB(GL_ARRAY_BUFFER_ARB, 0);
- qglBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, 0);
- }
-
- if (vid.support.ext_framebuffer_object)
- {
- qglBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0);
- qglBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
- }
-
- qglVertexPointer(3, GL_FLOAT, sizeof(float[3]), NULL);CHECKGLERROR
- qglEnableClientState(GL_VERTEX_ARRAY);CHECKGLERROR
-
- qglColorPointer(4, GL_FLOAT, sizeof(float[4]), NULL);CHECKGLERROR
- qglDisableClientState(GL_COLOR_ARRAY);CHECKGLERROR
-
- GL_Color(0, 0, 0, 0);
- GL_Color(1, 1, 1, 1);
-
- GL_SetupTextureState();
-}
-