-void GL_DrawRangeElements(int firstvert, int endvert, int indexcount, const int *index)
-{
- int arraylocked = false;
- c_meshs++;
- c_meshelements += indexcount;
- if (indexcount == 0 || endvert == firstvert)
- {
- Con_Printf("GL_DrawRangeElements(%d, %d, %d, %08p);\n", firstvert, endvert, indexcount, index);
- return;
- }
- if (gl_supportslockarrays && gl_lockarrays.integer)
- {
- qglLockArraysEXT(firstvert, endvert - firstvert);
- CHECKGLERROR
- arraylocked = true;
- }
- if (gl_mesh_drawrangeelements.integer && qglDrawRangeElements != NULL)
- qglDrawRangeElements(GL_TRIANGLES, firstvert, endvert, indexcount, GL_UNSIGNED_INT, (const GLuint *) index);
- else
- qglDrawElements(GL_TRIANGLES, indexcount, GL_UNSIGNED_INT, (const GLuint *) index);
- CHECKGLERROR
- if (arraylocked)
- {
- qglUnlockArraysEXT();
- CHECKGLERROR
- arraylocked = false;
- }
-}
-