diff options
Diffstat (limited to 'src/mesa/main')
50 files changed, 4577 insertions, 4152 deletions
diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c index f5b7d1e138..2462a1b003 100644 --- a/src/mesa/main/api_arrayelt.c +++ b/src/mesa/main/api_arrayelt.c @@ -28,6 +28,7 @@ #include "glheader.h" #include "api_arrayelt.h" +#include "bufferobj.h" #include "context.h" #include "imports.h" #include "macros.h" @@ -1071,7 +1072,7 @@ void _ae_destroy_context( GLcontext *ctx ) static void check_vbo( AEcontext *actx, struct gl_buffer_object *vbo ) { - if (vbo->Name && !vbo->Pointer) { + if (_mesa_is_bufferobj(vbo) && !_mesa_bufferobj_mapped(vbo)) { GLuint i; for (i = 0; i < actx->nr_vbos; i++) if (actx->vbo[i] == vbo) diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index e49cd041a6..199550b35d 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -107,6 +107,7 @@ #include "state.h" #include "stencil.h" #include "texenv.h" +#include "texgetimage.h" #include "teximage.h" #if FEATURE_texgen #include "texgen.h" diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c index b2f11ffbfe..2df4f17389 100644 --- a/src/mesa/main/api_validate.c +++ b/src/mesa/main/api_validate.c @@ -24,6 +24,7 @@ #include "glheader.h" #include "api_validate.h" +#include "bufferobj.h" #include "context.h" #include "imports.h" #include "mtypes.h" @@ -62,7 +63,7 @@ max_buffer_index(GLcontext *ctx, GLuint count, GLenum type, GLuint max = 0; GLuint i; - if (elementBuf->Name) { + if (_mesa_is_bufferobj(elementBuf)) { /* elements are in a user-defined buffer object. need to map it */ map = ctx->Driver.MapBuffer(ctx, GL_ELEMENT_ARRAY_BUFFER, GL_READ_ONLY, elementBuf); @@ -96,14 +97,12 @@ max_buffer_index(GLcontext *ctx, GLuint count, GLenum type, /** - * Check if OK to render by examining framebuffer status and vertex arrays. + * Check if OK to draw arrays/elements. */ static GLboolean -check_valid_to_render(GLcontext *ctx, char *function) +check_valid_to_render(GLcontext *ctx, const char *function) { - if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { - _mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT, - "glDraw%s(incomplete framebuffer)", function); + if (!_mesa_valid_to_render(ctx, function)) { return GL_FALSE; } @@ -160,11 +159,11 @@ _mesa_validate_DrawElements(GLcontext *ctx, if (ctx->NewState) _mesa_update_state(ctx); - if (!check_valid_to_render(ctx, "Elements")) + if (!check_valid_to_render(ctx, "glDrawElements")) return GL_FALSE; /* Vertex buffer object tests */ - if (ctx->Array.ElementArrayBufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Array.ElementArrayBufferObj)) { /* use indices in the buffer object */ /* make sure count doesn't go outside buffer bounds */ if (index_bytes(type, count) > ctx->Array.ElementArrayBufferObj->Size) { @@ -233,11 +232,11 @@ _mesa_validate_DrawRangeElements(GLcontext *ctx, GLenum mode, if (ctx->NewState) _mesa_update_state(ctx); - if (!check_valid_to_render(ctx, "RangeElements")) + if (!check_valid_to_render(ctx, "glDrawRangeElements")) return GL_FALSE; /* Vertex buffer object tests */ - if (ctx->Array.ElementArrayBufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Array.ElementArrayBufferObj)) { /* use indices in the buffer object */ /* make sure count doesn't go outside buffer bounds */ if (index_bytes(type, count) > ctx->Array.ElementArrayBufferObj->Size) { @@ -289,7 +288,7 @@ _mesa_validate_DrawArrays(GLcontext *ctx, if (ctx->NewState) _mesa_update_state(ctx); - if (!check_valid_to_render(ctx, "Arrays")) + if (!check_valid_to_render(ctx, "glDrawArrays")) return GL_FALSE; if (ctx->Const.CheckArrayBounds) { diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c index cb49c4cb07..ab99ca1c64 100644 --- a/src/mesa/main/attrib.c +++ b/src/mesa/main/attrib.c @@ -174,24 +174,30 @@ struct texture_state /** - * Allocate a new attribute state node. These nodes have a - * "kind" value and a pointer to a struct of state data. + * Allocate new attribute node of given type/kind. Attach payload data. + * Insert it into the linked list named by 'head'. */ -static struct gl_attrib_node * -new_attrib_node( GLbitfield kind ) +static void +save_attrib_data(struct gl_attrib_node **head, + GLbitfield kind, void *payload) { - struct gl_attrib_node *an = MALLOC_STRUCT(gl_attrib_node); - if (an) { - an->kind = kind; + struct gl_attrib_node *n = MALLOC_STRUCT(gl_attrib_node); + if (n) { + n->kind = kind; + n->data = payload; + /* insert at head */ + n->next = *head; + *head = n; + } + else { + /* out of memory! */ } - return an; } void GLAPIENTRY _mesa_PushAttrib(GLbitfield mask) { - struct gl_attrib_node *newnode; struct gl_attrib_node *head; GET_CURRENT_CONTEXT(ctx); @@ -213,10 +219,7 @@ _mesa_PushAttrib(GLbitfield mask) struct gl_accum_attrib *attr; attr = MALLOC_STRUCT( gl_accum_attrib ); MEMCPY( attr, &ctx->Accum, sizeof(struct gl_accum_attrib) ); - newnode = new_attrib_node( GL_ACCUM_BUFFER_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_ACCUM_BUFFER_BIT, attr); } if (mask & GL_COLOR_BUFFER_BIT) { @@ -227,10 +230,7 @@ _mesa_PushAttrib(GLbitfield mask) /* push the Draw FBO's DrawBuffer[] state, not ctx->Color.DrawBuffer[] */ for (i = 0; i < ctx->Const.MaxDrawBuffers; i ++) attr->DrawBuffer[i] = ctx->DrawBuffer->ColorDrawBuffer[i]; - newnode = new_attrib_node( GL_COLOR_BUFFER_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_COLOR_BUFFER_BIT, attr); } if (mask & GL_CURRENT_BIT) { @@ -238,20 +238,14 @@ _mesa_PushAttrib(GLbitfield mask) FLUSH_CURRENT( ctx, 0 ); attr = MALLOC_STRUCT( gl_current_attrib ); MEMCPY( attr, &ctx->Current, sizeof(struct gl_current_attrib) ); - newnode = new_attrib_node( GL_CURRENT_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_CURRENT_BIT, attr); } if (mask & GL_DEPTH_BUFFER_BIT) { struct gl_depthbuffer_attrib *attr; attr = MALLOC_STRUCT( gl_depthbuffer_attrib ); MEMCPY( attr, &ctx->Depth, sizeof(struct gl_depthbuffer_attrib) ); - newnode = new_attrib_node( GL_DEPTH_BUFFER_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_DEPTH_BUFFER_BIT, attr); } if (mask & GL_ENABLE_BIT) { @@ -331,40 +325,28 @@ _mesa_PushAttrib(GLbitfield mask) attr->VertexProgram = ctx->VertexProgram.Enabled; attr->VertexProgramPointSize = ctx->VertexProgram.PointSizeEnabled; attr->VertexProgramTwoSide = ctx->VertexProgram.TwoSideEnabled; - newnode = new_attrib_node( GL_ENABLE_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_ENABLE_BIT, attr); } if (mask & GL_EVAL_BIT) { struct gl_eval_attrib *attr; attr = MALLOC_STRUCT( gl_eval_attrib ); MEMCPY( attr, &ctx->Eval, sizeof(struct gl_eval_attrib) ); - newnode = new_attrib_node( GL_EVAL_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_EVAL_BIT, attr); } if (mask & GL_FOG_BIT) { struct gl_fog_attrib *attr; attr = MALLOC_STRUCT( gl_fog_attrib ); MEMCPY( attr, &ctx->Fog, sizeof(struct gl_fog_attrib) ); - newnode = new_attrib_node( GL_FOG_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_FOG_BIT, attr); } if (mask & GL_HINT_BIT) { struct gl_hint_attrib *attr; attr = MALLOC_STRUCT( gl_hint_attrib ); MEMCPY( attr, &ctx->Hint, sizeof(struct gl_hint_attrib) ); - newnode = new_attrib_node( GL_HINT_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_HINT_BIT, attr); } if (mask & GL_LIGHTING_BIT) { @@ -372,30 +354,21 @@ _mesa_PushAttrib(GLbitfield mask) FLUSH_CURRENT(ctx, 0); /* flush material changes */ attr = MALLOC_STRUCT( gl_light_attrib ); MEMCPY( attr, &ctx->Light, sizeof(struct gl_light_attrib) ); - newnode = new_attrib_node( GL_LIGHTING_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_LIGHTING_BIT, attr); } if (mask & GL_LINE_BIT) { struct gl_line_attrib *attr; attr = MALLOC_STRUCT( gl_line_attrib ); MEMCPY( attr, &ctx->Line, sizeof(struct gl_line_attrib) ); - newnode = new_attrib_node( GL_LINE_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_LINE_BIT, attr); } if (mask & GL_LIST_BIT) { struct gl_list_attrib *attr; attr = MALLOC_STRUCT( gl_list_attrib ); MEMCPY( attr, &ctx->List, sizeof(struct gl_list_attrib) ); - newnode = new_attrib_node( GL_LIST_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_LIST_BIT, attr); } if (mask & GL_PIXEL_MODE_BIT) { @@ -404,60 +377,42 @@ _mesa_PushAttrib(GLbitfield mask) MEMCPY( attr, &ctx->Pixel, sizeof(struct gl_pixel_attrib) ); /* push the Read FBO's ReadBuffer state, not ctx->Pixel.ReadBuffer */ attr->ReadBuffer = ctx->ReadBuffer->ColorReadBuffer; - newnode = new_attrib_node( GL_PIXEL_MODE_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_PIXEL_MODE_BIT, attr); } if (mask & GL_POINT_BIT) { struct gl_point_attrib *attr; attr = MALLOC_STRUCT( gl_point_attrib ); MEMCPY( attr, &ctx->Point, sizeof(struct gl_point_attrib) ); - newnode = new_attrib_node( GL_POINT_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_POINT_BIT, attr); } if (mask & GL_POLYGON_BIT) { struct gl_polygon_attrib *attr; attr = MALLOC_STRUCT( gl_polygon_attrib ); MEMCPY( attr, &ctx->Polygon, sizeof(struct gl_polygon_attrib) ); - newnode = new_attrib_node( GL_POLYGON_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_POLYGON_BIT, attr); } if (mask & GL_POLYGON_STIPPLE_BIT) { GLuint *stipple; stipple = (GLuint *) MALLOC( 32*sizeof(GLuint) ); MEMCPY( stipple, ctx->PolygonStipple, 32*sizeof(GLuint) ); - newnode = new_attrib_node( GL_POLYGON_STIPPLE_BIT ); - newnode->data = stipple; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_POLYGON_STIPPLE_BIT, stipple); } if (mask & GL_SCISSOR_BIT) { struct gl_scissor_attrib *attr; attr = MALLOC_STRUCT( gl_scissor_attrib ); MEMCPY( attr, &ctx->Scissor, sizeof(struct gl_scissor_attrib) ); - newnode = new_attrib_node( GL_SCISSOR_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_SCISSOR_BIT, attr); } if (mask & GL_STENCIL_BUFFER_BIT) { struct gl_stencil_attrib *attr; attr = MALLOC_STRUCT( gl_stencil_attrib ); MEMCPY( attr, &ctx->Stencil, sizeof(struct gl_stencil_attrib) ); - newnode = new_attrib_node( GL_STENCIL_BUFFER_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_STENCIL_BUFFER_BIT, attr); } if (mask & GL_TEXTURE_BIT) { @@ -494,30 +449,21 @@ _mesa_PushAttrib(GLbitfield mask) _mesa_unlock_context_textures(ctx); - newnode = new_attrib_node( GL_TEXTURE_BIT ); - newnode->data = texstate; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_TEXTURE_BIT, texstate); } if (mask & GL_TRANSFORM_BIT) { struct gl_transform_attrib *attr; attr = MALLOC_STRUCT( gl_transform_attrib ); MEMCPY( attr, &ctx->Transform, sizeof(struct gl_transform_attrib) ); - newnode = new_attrib_node( GL_TRANSFORM_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_TRANSFORM_BIT, attr); } if (mask & GL_VIEWPORT_BIT) { struct gl_viewport_attrib *attr; attr = MALLOC_STRUCT( gl_viewport_attrib ); MEMCPY( attr, &ctx->Viewport, sizeof(struct gl_viewport_attrib) ); - newnode = new_attrib_node( GL_VIEWPORT_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_VIEWPORT_BIT, attr); } /* GL_ARB_multisample */ @@ -525,10 +471,7 @@ _mesa_PushAttrib(GLbitfield mask) struct gl_multisample_attrib *attr; attr = MALLOC_STRUCT( gl_multisample_attrib ); MEMCPY( attr, &ctx->Multisample, sizeof(struct gl_multisample_attrib) ); - newnode = new_attrib_node( GL_MULTISAMPLE_BIT_ARB ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_MULTISAMPLE_BIT_ARB, attr); } end: @@ -1373,7 +1316,6 @@ copy_pixelstore(GLcontext *ctx, void GLAPIENTRY _mesa_PushClientAttrib(GLbitfield mask) { - struct gl_attrib_node *newnode; struct gl_attrib_node *head; GET_CURRENT_CONTEXT(ctx); @@ -1394,17 +1336,11 @@ _mesa_PushClientAttrib(GLbitfield mask) /* packing attribs */ attr = CALLOC_STRUCT( gl_pixelstore_attrib ); copy_pixelstore(ctx, attr, &ctx->Pack); - newnode = new_attrib_node( GL_CLIENT_PACK_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_CLIENT_PACK_BIT, attr); /* unpacking attribs */ attr = CALLOC_STRUCT( gl_pixelstore_attrib ); copy_pixelstore(ctx, attr, &ctx->Unpack); - newnode = new_attrib_node( GL_CLIENT_UNPACK_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_CLIENT_UNPACK_BIT, attr); } if (mask & GL_CLIENT_VERTEX_ARRAY_BIT) { @@ -1425,10 +1361,8 @@ _mesa_PushClientAttrib(GLbitfield mask) attr->ArrayObj = obj; - newnode = new_attrib_node( GL_CLIENT_VERTEX_ARRAY_BIT ); - newnode->data = attr; - newnode->next = head; - head = newnode; + save_attrib_data(&head, GL_CLIENT_VERTEX_ARRAY_BIT, attr); + /* bump reference counts on buffer objects */ adjust_buffer_object_ref_counts(ctx->Array.ArrayObj, 1); } diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index d640f5358e..f96185a4b5 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -156,7 +156,7 @@ buffer_object_subdata_range_good( GLcontext * ctx, GLenum target, _mesa_error(ctx, GL_INVALID_ENUM, "%s(target)", caller); return NULL; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "%s", caller); return NULL; } @@ -165,7 +165,7 @@ buffer_object_subdata_range_good( GLcontext * ctx, GLenum target, "%s(size + offset > buffer size)", caller); return NULL; } - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { /* Buffer is currently mapped */ _mesa_error(ctx, GL_INVALID_OPERATION, "%s", caller); return NULL; @@ -423,7 +423,7 @@ _mesa_buffer_map( GLcontext *ctx, GLenum target, GLenum access, (void) target; (void) access; /* Just return a direct pointer to the data */ - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { /* already mapped! */ return NULL; } @@ -445,7 +445,7 @@ _mesa_buffer_map_range( GLcontext *ctx, GLenum target, GLintptr offset, (void) target; (void) access; (void) length; - assert(!bufObj->Pointer); + assert(!_mesa_bufferobj_mapped(bufObj)); /* Just return a direct pointer to the data */ return bufObj->Data + offset; } @@ -502,8 +502,8 @@ _mesa_copy_buffer_subdata(GLcontext *ctx, GLubyte *srcPtr, *dstPtr; /* buffer should not already be mapped */ - assert(!src->Pointer); - assert(!dst->Pointer); + assert(!_mesa_bufferobj_mapped(src)); + assert(!_mesa_bufferobj_mapped(dst)); srcPtr = (GLubyte *) ctx->Driver.MapBuffer(ctx, GL_COPY_READ_BUFFER, GL_READ_ONLY, src); @@ -663,7 +663,7 @@ _mesa_validate_pbo_access(GLuint dimensions, GLvoid *start, *end; const GLubyte *sizeAddr; /* buffer size, cast to a pointer */ - ASSERT(pack->BufferObj->Name != 0); + ASSERT(_mesa_is_bufferobj(pack->BufferObj)); if (pack->BufferObj->Size == 0) /* no buffer! */ @@ -709,7 +709,7 @@ _mesa_map_bitmap_pbo(GLcontext *ctx, { const GLubyte *buf; - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { /* unpack from PBO */ buf = (GLubyte *) ctx->Driver.MapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, GL_READ_ONLY_ARB, @@ -736,7 +736,7 @@ void _mesa_unmap_bitmap_pbo(GLcontext *ctx, const struct gl_pixelstore_attrib *unpack) { - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, unpack->BufferObj); } @@ -753,7 +753,7 @@ _mesa_map_drawpix_pbo(GLcontext *ctx, { const GLvoid *buf; - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { /* unpack from PBO */ buf = (GLubyte *) ctx->Driver.MapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, GL_READ_ONLY_ARB, @@ -779,7 +779,7 @@ void _mesa_unmap_drawpix_pbo(GLcontext *ctx, const struct gl_pixelstore_attrib *unpack) { - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, unpack->BufferObj); } @@ -798,7 +798,7 @@ _mesa_map_readpix_pbo(GLcontext *ctx, { void *buf; - if (pack->BufferObj->Name) { + if (_mesa_is_bufferobj(pack->BufferObj)) { /* pack into PBO */ buf = (GLubyte *) ctx->Driver.MapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, GL_WRITE_ONLY_ARB, @@ -824,7 +824,7 @@ void _mesa_unmap_readpix_pbo(GLcontext *ctx, const struct gl_pixelstore_attrib *pack) { - if (pack->BufferObj->Name) { + if (_mesa_is_bufferobj(pack->BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, pack->BufferObj); } } @@ -932,7 +932,7 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids) ASSERT(bufObj->Name == ids[i]); - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { /* if mapped, unmap it now */ ctx->Driver.UnmapBuffer(ctx, 0, bufObj); bufObj->AccessFlags = DEFAULT_ACCESS; @@ -1086,12 +1086,12 @@ _mesa_BufferDataARB(GLenum target, GLsizeiptrARB size, _mesa_error(ctx, GL_INVALID_ENUM, "glBufferDataARB(target)" ); return; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBufferDataARB(buffer 0)" ); return; } - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { /* Unmap the existing buffer. We'll replace it now. Not an error. */ ctx->Driver.UnmapBuffer(ctx, target, bufObj); bufObj->AccessFlags = DEFAULT_ACCESS; @@ -1187,18 +1187,18 @@ _mesa_MapBufferARB(GLenum target, GLenum access) _mesa_error(ctx, GL_INVALID_ENUM, "glMapBufferARB(target)" ); return NULL; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glMapBufferARB(buffer 0)" ); return NULL; } - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glMapBufferARB(already mapped)"); return NULL; } ASSERT(ctx->Driver.MapBuffer); bufObj->Pointer = ctx->Driver.MapBuffer( ctx, target, access, bufObj ); - if (!bufObj->Pointer) { + if (!_mesa_bufferobj_mapped(bufObj)) { _mesa_error(ctx, GL_OUT_OF_MEMORY, "glMapBufferARB(access)"); } @@ -1248,11 +1248,11 @@ _mesa_UnmapBufferARB(GLenum target) _mesa_error(ctx, GL_INVALID_ENUM, "glUnmapBufferARB(target)" ); return GL_FALSE; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glUnmapBufferARB" ); return GL_FALSE; } - if (!bufObj->Pointer) { + if (!_mesa_bufferobj_mapped(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glUnmapBufferARB"); return GL_FALSE; } @@ -1315,7 +1315,7 @@ _mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint *params) _mesa_error(ctx, GL_INVALID_ENUM, "GetBufferParameterivARB(target)" ); return; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "GetBufferParameterivARB" ); return; } @@ -1331,7 +1331,7 @@ _mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint *params) *params = simplified_access_mode(bufObj->AccessFlags); break; case GL_BUFFER_MAPPED_ARB: - *params = (bufObj->Pointer != NULL); + *params = _mesa_bufferobj_mapped(bufObj); break; default: _mesa_error(ctx, GL_INVALID_ENUM, "glGetBufferParameterivARB(pname)"); @@ -1357,7 +1357,7 @@ _mesa_GetBufferPointervARB(GLenum target, GLenum pname, GLvoid **params) _mesa_error(ctx, GL_INVALID_ENUM, "glGetBufferPointervARB(target)" ); return; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glGetBufferPointervARB" ); return; } @@ -1376,26 +1376,26 @@ _mesa_CopyBufferSubData(GLenum readTarget, GLenum writeTarget, ASSERT_OUTSIDE_BEGIN_END(ctx); src = get_buffer(ctx, readTarget); - if (!src || src->Name == 0) { + if (!src || !_mesa_is_bufferobj(src)) { _mesa_error(ctx, GL_INVALID_ENUM, "glCopyBuffserSubData(readTarget = 0x%x)", readTarget); return; } dst = get_buffer(ctx, writeTarget); - if (!dst || dst->Name == 0) { + if (!dst || !_mesa_is_bufferobj(dst)) { _mesa_error(ctx, GL_INVALID_ENUM, "glCopyBuffserSubData(writeTarget = 0x%x)", writeTarget); return; } - if (src->Pointer) { + if (_mesa_bufferobj_mapped(src)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glCopyBuffserSubData(readBuffer is mapped)"); return; } - if (dst->Pointer) { + if (_mesa_bufferobj_mapped(dst)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glCopyBuffserSubData(writeBuffer is mapped)"); return; @@ -1499,7 +1499,7 @@ _mesa_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, } bufObj = get_buffer(ctx, target); - if (!bufObj || bufObj->Name == 0) { + if (!bufObj || !_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_ENUM, "glMapBufferRange(target = 0x%x)", target); return NULL; @@ -1511,7 +1511,7 @@ _mesa_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, return NULL; } - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glMapBufferRange(buffer already mapped)"); return NULL; @@ -1564,13 +1564,13 @@ _mesa_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) return; } - if (bufObj->Name == 0) { + if (!_mesa_is_bufferobj(bufObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glMapBufferRange(current buffer is 0)"); return; } - if (!bufObj->Pointer) { + if (!_mesa_bufferobj_mapped(bufObj)) { /* buffer is not mapped */ _mesa_error(ctx, GL_INVALID_OPERATION, "glMapBufferRange(buffer is not mapped)"); diff --git a/src/mesa/main/bufferobj.h b/src/mesa/main/bufferobj.h index ef59ff83c8..decb44a65e 100644 --- a/src/mesa/main/bufferobj.h +++ b/src/mesa/main/bufferobj.h @@ -36,6 +36,26 @@ * Internal functions */ + +/** Is the given buffer object currently mapped? */ +static INLINE GLboolean +_mesa_bufferobj_mapped(const struct gl_buffer_object *obj) +{ + return obj->Pointer != NULL; +} + +/** + * Is the given buffer object a user-created buffer object? + * Mesa uses default buffer objects in several places. Default buffers + * always have Name==0. User created buffers have Name!=0. + */ +static INLINE GLboolean +_mesa_is_bufferobj(const struct gl_buffer_object *obj) +{ + return obj->Name != 0; +} + + extern void _mesa_init_buffer_objects( GLcontext *ctx ); diff --git a/src/mesa/main/colortab.c b/src/mesa/main/colortab.c index bd9cf438b4..36304065eb 100644 --- a/src/mesa/main/colortab.c +++ b/src/mesa/main/colortab.c @@ -179,7 +179,7 @@ store_colortable_entries(GLcontext *ctx, struct gl_color_table *table, GLfloat bScale, GLfloat bBias, GLfloat aScale, GLfloat aBias) { - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* Get/unpack the color table data from a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Unpack, count, 1, 1, @@ -279,7 +279,7 @@ store_colortable_entries(GLcontext *ctx, struct gl_color_table *table, } } - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -696,7 +696,7 @@ _mesa_GetColorTable( GLenum target, GLenum format, return; } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack color table into PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Pack, table->Size, 1, 1, @@ -720,7 +720,7 @@ _mesa_GetColorTable( GLenum target, GLenum format, _mesa_pack_rgba_span_float(ctx, table->Size, rgba, format, type, data, &ctx->Pack, 0x0); - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h index e79bbc2ac5..9319505a75 100644 --- a/src/mesa/main/compiler.h +++ b/src/mesa/main/compiler.h @@ -110,10 +110,8 @@ extern "C" { #if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) && !defined(BUILD_FOR_SNAP) # define __WIN32__ # define finite _finite -#endif -#if defined(__WATCOMC__) +#elif defined(__WATCOMC__) # define finite _finite -# pragma disable_message(201) /* Disable unreachable code warnings */ #endif @@ -135,6 +133,10 @@ extern "C" { # endif # endif #endif +#if defined(__WATCOMC__) +# pragma disable_message(201) /* Disable unreachable code warnings */ +#endif + /** diff --git a/src/mesa/main/config.h b/src/mesa/main/config.h index f77a29a43e..e4995c35c4 100644 --- a/src/mesa/main/config.h +++ b/src/mesa/main/config.h @@ -138,9 +138,14 @@ /** * Maximum viewport/image width. Must accomodate all texture sizes too. */ -#define MAX_WIDTH 4096 + +#ifndef MAX_WIDTH +# define MAX_WIDTH 4096 +#endif /** Maximum viewport/image height */ -#define MAX_HEIGHT 4096 +#ifndef MAX_HEIGHT +# define MAX_HEIGHT 4096 +#endif /** Maxmimum size for CVA. May be overridden by the drivers. */ #define MAX_ARRAY_LOCK_SIZE 3000 diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index 415e339cb8..38ec418809 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -150,6 +150,7 @@ #include "glapi/glapioffsets.h" #include "glapi/glapitable.h" #include "shader/program.h" +#include "shader/prog_print.h" #include "shader/shader_api.h" #if FEATURE_ATI_fragment_shader #include "shader/atifragshader.h" @@ -1576,4 +1577,72 @@ _mesa_set_mvp_with_dp4( GLcontext *ctx, } + +/** + * Prior to drawing anything with glBegin, glDrawArrays, etc. this function + * is called to see if it's valid to render. This involves checking that + * the current shader is valid and the framebuffer is complete. + * If an error is detected it'll be recorded here. + * \return GL_TRUE if OK to render, GL_FALSE if not + */ +GLboolean +_mesa_valid_to_render(GLcontext *ctx, const char *where) +{ + if (ctx->Shader.CurrentProgram) { + /* using shaders */ + if (!ctx->Shader.CurrentProgram->LinkStatus) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(shader not linked), where"); + return GL_FALSE; + } + } + else { + if (ctx->VertexProgram.Enabled && !ctx->VertexProgram._Enabled) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(vertex program not valid)", where); + return GL_FALSE; + } + if (ctx->FragmentProgram.Enabled && !ctx->FragmentProgram._Enabled) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(fragment program not valid)", where); + return GL_FALSE; + } + } + + if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { + _mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT, + "%s(incomplete framebuffer)", where); + return GL_FALSE; + } + +#ifdef DEBUG + if (ctx->Shader.Flags & GLSL_LOG) { + struct gl_shader_program *shProg = ctx->Shader.CurrentProgram; + if (shProg) { + if (!shProg->_Used) { + /* This is the first time this shader is being used. + * Append shader's constants/uniforms to log file. + */ + GLuint i; + for (i = 0; i < shProg->NumShaders; i++) { + struct gl_shader *sh = shProg->Shaders[i]; + if (sh->Type == GL_VERTEX_SHADER) { + _mesa_append_uniforms_to_file(sh, + &shProg->VertexProgram->Base); + } + else if (sh->Type == GL_FRAGMENT_SHADER) { + _mesa_append_uniforms_to_file(sh, + &shProg->FragmentProgram->Base); + } + } + shProg->_Used = GL_TRUE; + } + } + } +#endif + + return GL_TRUE; +} + + /*@}*/ diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h index 0531ae8ee8..5587695fa0 100644 --- a/src/mesa/main/context.h +++ b/src/mesa/main/context.h @@ -159,6 +159,11 @@ _mesa_set_mvp_with_dp4( GLcontext *ctx, GLboolean flag ); +extern GLboolean +_mesa_valid_to_render(GLcontext *ctx, const char *where); + + + /** \name Miscellaneous */ /*@{*/ @@ -174,7 +179,6 @@ _mesa_Flush( void ); /*@}*/ - /** * \name Macros for flushing buffered rendering commands before state changes, * checking if inside glBegin/glEnd, etc. diff --git a/src/mesa/main/convolve.c b/src/mesa/main/convolve.c index 814c6a0a5a..69dba72ed3 100644 --- a/src/mesa/main/convolve.c +++ b/src/mesa/main/convolve.c @@ -144,7 +144,7 @@ _mesa_ConvolutionFilter1D(GLenum target, GLenum internalFormat, GLsizei width, G ctx->Convolution1D.Width = width; ctx->Convolution1D.Height = 1; - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack filter from PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Unpack, width, 1, 1, @@ -173,7 +173,7 @@ _mesa_ConvolutionFilter1D(GLenum target, GLenum internalFormat, GLsizei width, G format, type, image, &ctx->Unpack, 0); /* transferOps */ - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -242,7 +242,7 @@ _mesa_ConvolutionFilter2D(GLenum target, GLenum internalFormat, GLsizei width, G ctx->Convolution2D.Width = width; ctx->Convolution2D.Height = height; - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack filter from PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, &ctx->Unpack, width, height, 1, @@ -276,7 +276,7 @@ _mesa_ConvolutionFilter2D(GLenum target, GLenum internalFormat, GLsizei width, G 0); /* transferOps */ } - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -598,7 +598,7 @@ _mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type, return; } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* Pack the filter into a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, &ctx->Pack, @@ -629,7 +629,7 @@ _mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type, format, type, dst, &ctx->Pack, 0x0); } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } @@ -802,7 +802,7 @@ _mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type, filter = &ctx->Separable2D; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* Pack filter into PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Pack, filter->Width, 1, 1, @@ -850,7 +850,7 @@ _mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type, (void) span; /* unused at this time */ - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* Pack filter into PBO */ ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); @@ -905,7 +905,7 @@ _mesa_SeparableFilter2D(GLenum target, GLenum internalFormat, GLsizei width, GLs ctx->Separable2D.Width = width; ctx->Separable2D.Height = height; - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack filter from PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Unpack, width, 1, 1, @@ -971,7 +971,7 @@ _mesa_SeparableFilter2D(GLenum target, GLenum internalFormat, GLsizei width, GLs ctx->Pixel.ConvolutionFilterBias[2][3]); } - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } diff --git a/src/mesa/main/debug.c b/src/mesa/main/debug.c index 1c8c44fcb9..8492c8561d 100644 --- a/src/mesa/main/debug.c +++ b/src/mesa/main/debug.c @@ -33,6 +33,7 @@ #include "get.h" #include "pixelstore.h" #include "readpix.h" +#include "texgetimage.h" #include "texobj.h" #include "texformat.h" @@ -234,11 +235,11 @@ _mesa_init_debug( GLcontext *ctx ) */ static void write_ppm(const char *filename, const GLubyte *buffer, int width, int height, - int comps, int rcomp, int gcomp, int bcomp) + int comps, int rcomp, int gcomp, int bcomp, GLboolean invert) { FILE *f = fopen( filename, "w" ); if (f) { - int i, x, y; + int x, y; const GLubyte *ptr = buffer; fprintf(f,"P6\n"); fprintf(f,"# ppm-file created by osdemo.c\n"); @@ -246,10 +247,11 @@ write_ppm(const char *filename, const GLubyte *buffer, int width, int height, fprintf(f,"255\n"); fclose(f); f = fopen( filename, "ab" ); /* reopen in binary append mode */ - for (y=height-1; y>=0; y--) { - for (x=0; x<width; x++) { - i = (y*width + x) * comps; - fputc(ptr[i+rcomp], f); /* write red */ + for (y=0; y < height; y++) { + for (x = 0; x < width; x++) { + int yy = invert ? (height - 1 - y) : y; + int i = (yy * width + x) * comps; + fputc(ptr[i+rcomp], f); /* write red */ fputc(ptr[i+gcomp], f); /* write green */ fputc(ptr[i+bcomp], f); /* write blue */ } @@ -263,47 +265,34 @@ write_ppm(const char *filename, const GLubyte *buffer, int width, int height, * Write level[0] image to a ppm file. */ static void -write_texture_image(struct gl_texture_object *texObj) +write_texture_image(struct gl_texture_object *texObj, GLuint face, GLuint level) { - const struct gl_texture_image *img = texObj->Image[0][0]; - if (img && img->Data) { + struct gl_texture_image *img = texObj->Image[face][level]; + if (img) { + GET_CURRENT_CONTEXT(ctx); + struct gl_pixelstore_attrib store; + GLubyte *buffer; char s[100]; + buffer = (GLubyte *) _mesa_malloc(img->Width * img->Height + * img->Depth * 4); + + store = ctx->Pack; /* save */ + ctx->Pack = ctx->DefaultPacking; + + ctx->Driver.GetTexImage(ctx, texObj->Target, level, + GL_RGBA, GL_UNSIGNED_BYTE, + buffer, texObj, img); + /* make filename */ - sprintf(s, "/tmp/teximage%u.ppm", texObj->Name); - - switch (img->TexFormat->MesaFormat) { - case MESA_FORMAT_RGBA8888: - write_ppm(s, img->Data, img->Width, img->Height, 4, 3, 2, 1); - break; - case MESA_FORMAT_ARGB8888: - write_ppm(s, img->Data, img->Width, img->Height, 4, 2, 1, 0); - break; - case MESA_FORMAT_RGB888: - write_ppm(s, img->Data, img->Width, img->Height, 3, 2, 1, 0); - break; - case MESA_FORMAT_RGB565: - { - GLubyte *buf2 = (GLubyte *) _mesa_malloc(img->Width * img->Height * 3); - GLuint i; - for (i = 0; i < img->Width * img->Height; i++) { - GLint r, g, b; - GLushort s = ((GLushort *) img->Data)[i]; - r = UBYTE_TO_CHAN( ((s >> 8) & 0xf8) | ((s >> 13) & 0x7) ); - g = UBYTE_TO_CHAN( ((s >> 3) & 0xfc) | ((s >> 9) & 0x3) ); - b = UBYTE_TO_CHAN( ((s << 3) & 0xf8) | ((s >> 2) & 0x7) ); - buf2[i*3+1] = r; - buf2[i*3+2] = g; - buf2[i*3+3] = b; - } - write_ppm(s, buf2, img->Width, img->Height, 3, 2, 1, 0); - _mesa_free(buf2); - } - break; - default: - printf("XXXX unsupported mesa tex format %d in %s\n", - img->TexFormat->MesaFormat, __FUNCTION__); - } + _mesa_sprintf(s, "/tmp/teximage%u.ppm", texObj->Name); + + _mesa_printf(" Writing image level %u to %s\n", level, s); + write_ppm(s, buffer, img->Width, img->Height, 4, 0, 1, 2, GL_FALSE); + + ctx->Pack = store; /* restore */ + + _mesa_free(buffer); } } @@ -316,17 +305,21 @@ dump_texture_cb(GLuint id, void *data, void *userData) { struct gl_texture_object *texObj = (struct gl_texture_object *) data; int i; + GLboolean written = GL_FALSE; (void) userData; - printf("Texture %u\n", texObj->Name); - printf(" Target 0x%x\n", texObj->Target); + _mesa_printf("Texture %u\n", texObj->Name); + _mesa_printf(" Target 0x%x\n", texObj->Target); for (i = 0; i < MAX_TEXTURE_LEVELS; i++) { struct gl_texture_image *texImg = texObj->Image[0][i]; if (texImg) { - printf(" Image %u: %d x %d x %d at %p\n", i, - texImg->Width, texImg->Height, texImg->Depth, texImg->Data); - if (DumpImages && i == 0) { - write_texture_image(texObj); + _mesa_printf(" Image %u: %d x %d x %d, format %u at %p\n", i, + texImg->Width, texImg->Height, texImg->Depth, + texImg->TexFormat->MesaFormat, texImg->Data); + if (DumpImages && !written) { + GLuint face = 0; + write_texture_image(texObj, face, i); + written = GL_TRUE; } } } @@ -368,7 +361,7 @@ _mesa_dump_color_buffer(const char *filename) ctx->DrawBuffer->_ColorDrawBuffers[0], ctx->DrawBuffer->ColorDrawBuffer[0]); _mesa_printf("Writing %d x %d color buffer to %s\n", w, h, filename); - write_ppm(filename, buf, w, h, 4, 0, 1, 2); + write_ppm(filename, buf, w, h, 4, 0, 1, 2, GL_TRUE); _mesa_PopClientAttrib(); @@ -403,7 +396,7 @@ _mesa_dump_depth_buffer(const char *filename) } _mesa_printf("Writing %d x %d depth buffer to %s\n", w, h, filename); - write_ppm(filename, buf2, w, h, 3, 0, 1, 2); + write_ppm(filename, buf2, w, h, 3, 0, 1, 2, GL_TRUE); _mesa_PopClientAttrib(); @@ -438,7 +431,7 @@ _mesa_dump_stencil_buffer(const char *filename) } _mesa_printf("Writing %d x %d stencil buffer to %s\n", w, h, filename); - write_ppm(filename, buf2, w, h, 3, 0, 1, 2); + write_ppm(filename, buf2, w, h, 3, 0, 1, 2, GL_TRUE); _mesa_PopClientAttrib(); diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index 49f202daa1..9b68b3e116 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -683,24 +683,48 @@ translate_id(GLsizei n, GLenum type, const GLvoid * list) /** * Wrapper for _mesa_unpack_image() that handles pixel buffer objects. - * \todo This won't suffice when the PBO is really in VRAM/GPU memory. + * If we run out of memory, GL_OUT_OF_MEMORY will be recorded. */ static GLvoid * -unpack_image(GLuint dimensions, GLsizei width, GLsizei height, GLsizei depth, +unpack_image(GLcontext *ctx, GLuint dimensions, + GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels, const struct gl_pixelstore_attrib *unpack) { - if (unpack->BufferObj->Name == 0) { + if (!_mesa_is_bufferobj(unpack->BufferObj)) { /* no PBO */ - return _mesa_unpack_image(dimensions, width, height, depth, format, - type, pixels, unpack); + GLvoid *image = _mesa_unpack_image(dimensions, width, height, depth, + format, type, pixels, unpack); + if (pixels && !image) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "display list construction"); + } + return image; } - else - if (_mesa_validate_pbo_access - (dimensions, unpack, width, height, depth, format, type, pixels)) { - const GLubyte *src = ADD_POINTERS(unpack->BufferObj->Data, pixels); - return _mesa_unpack_image(dimensions, width, height, depth, format, - type, src, unpack); + else if (_mesa_validate_pbo_access(dimensions, unpack, width, height, depth, + format, type, pixels)) { + const GLubyte *map, *src; + GLvoid *image; + + map = (GLubyte *) + ctx->Driver.MapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, + GL_READ_ONLY_ARB, unpack->BufferObj); + if (!map) { + /* unable to map src buffer! */ + _mesa_error(ctx, GL_INVALID_OPERATION, "unable to map PBO"); + return NULL; + } + + src = ADD_POINTERS(map, pixels); + image = _mesa_unpack_image(dimensions, width, height, depth, + format, type, src, unpack); + + ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, + unpack->BufferObj); + + if (!image) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "display list construction"); + } + return image; } /* bad access! */ return NULL; @@ -858,7 +882,6 @@ save_Bitmap(GLsizei width, GLsizei height, GLfloat xmove, GLfloat ymove, const GLubyte * pixels) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = _mesa_unpack_bitmap(width, height, pixels, &ctx->Unpack); Node *n; ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_BITMAP, 7); @@ -869,10 +892,7 @@ save_Bitmap(GLsizei width, GLsizei height, n[4].f = yorig; n[5].f = xmove; n[6].f = ymove; - n[7].data = image; - } - else if (image) { - _mesa_free(image); + n[7].data = _mesa_unpack_bitmap(width, height, pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_Bitmap(ctx->Exec, (width, height, @@ -999,7 +1019,7 @@ _mesa_save_CallList(GLuint list) void GLAPIENTRY -_mesa_save_CallLists(GLsizei n, GLenum type, const GLvoid * lists) +_mesa_save_CallLists(GLsizei num, GLenum type, const GLvoid * lists) { GET_CURRENT_CONTEXT(ctx); GLint i; @@ -1024,7 +1044,7 @@ _mesa_save_CallLists(GLsizei n, GLenum type, const GLvoid * lists) typeErrorFlag = GL_TRUE; } - for (i = 0; i < n; i++) { + for (i = 0; i < num; i++) { GLint list = translate_id(i, type, lists); Node *n = ALLOC_INSTRUCTION(ctx, OPCODE_CALL_LIST_OFFSET, 2); if (n) { @@ -1039,7 +1059,7 @@ _mesa_save_CallLists(GLsizei n, GLenum type, const GLvoid * lists) invalidate_saved_current_state( ctx ); if (ctx->ExecuteFlag) { - CALL_CallLists(ctx->Exec, (n, type, lists)); + CALL_CallLists(ctx->Exec, (num, type, lists)); } } @@ -1217,8 +1237,6 @@ save_ColorTable(GLenum target, GLenum internalFormat, format, type, table)); } else { - GLvoid *image = unpack_image(1, width, 1, 1, format, type, table, - &ctx->Unpack); Node *n; ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_COLOR_TABLE, 6); @@ -1228,10 +1246,8 @@ save_ColorTable(GLenum target, GLenum internalFormat, n[3].i = width; n[4].e = format; n[5].e = type; - n[6].data = image; - } - else if (image) { - _mesa_free(image); + n[6].data = unpack_image(ctx, 1, width, 1, 1, format, type, table, + &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_ColorTable(ctx->Exec, (target, internalFormat, width, @@ -1307,8 +1323,6 @@ save_ColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * table) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = unpack_image(1, count, 1, 1, format, type, table, - &ctx->Unpack); Node *n; ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_COLOR_SUB_TABLE, 6); @@ -1318,10 +1332,8 @@ save_ColorSubTable(GLenum target, GLsizei start, GLsizei count, n[3].i = count; n[4].e = format; n[5].e = type; - n[6].data = image; - } - else if (image) { - _mesa_free(image); + n[6].data = unpack_image(ctx, 1, count, 1, 1, format, type, table, + &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_ColorSubTable(ctx->Exec, @@ -1379,10 +1391,10 @@ save_ConvolutionFilter1D(GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid * filter) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = unpack_image(1, width, 1, 1, format, type, filter, - &ctx->Unpack); Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_CONVOLUTION_FILTER_1D, 6); if (n) { n[1].e = target; @@ -1390,10 +1402,8 @@ save_ConvolutionFilter1D(GLenum target, GLenum internalFormat, GLsizei width, n[3].i = width; n[4].e = format; n[5].e = type; - n[6].data = image; - } - else if (image) { - _mesa_free(image); + n[6].data = unpack_image(ctx, 1, width, 1, 1, format, type, filter, + &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_ConvolutionFilter1D(ctx->Exec, (target, internalFormat, width, @@ -1408,10 +1418,10 @@ save_ConvolutionFilter2D(GLenum target, GLenum internalFormat, GLenum type, const GLvoid * filter) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = unpack_image(2, width, height, 1, format, type, filter, - &ctx->Unpack); Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_CONVOLUTION_FILTER_2D, 7); if (n) { n[1].e = target; @@ -1420,10 +1430,8 @@ save_ConvolutionFilter2D(GLenum target, GLenum internalFormat, n[4].i = height; n[5].e = format; n[6].e = type; - n[7].data = image; - } - else if (image) { - _mesa_free(image); + n[7].data = unpack_image(ctx, 2, width, height, 1, format, type, filter, + &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_ConvolutionFilter2D(ctx->Exec, @@ -1778,20 +1786,18 @@ save_DrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = unpack_image(2, width, height, 1, format, type, - pixels, &ctx->Unpack); Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_DRAW_PIXELS, 5); if (n) { n[1].i = width; n[2].i = height; n[3].e = format; n[4].e = type; - n[5].data = image; - } - else if (image) { - _mesa_free(image); + n[5].data = unpack_image(ctx, 2, width, height, 1, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_DrawPixels(ctx->Exec, (width, height, format, type, pixels)); @@ -1880,7 +1886,10 @@ save_Fogfv(GLenum pname, const GLfloat *params) static void GLAPIENTRY save_Fogf(GLenum pname, GLfloat param) { - save_Fogfv(pname, ¶m); + GLfloat parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_Fogfv(pname, parray); } @@ -1904,7 +1913,7 @@ save_Fogiv(GLenum pname, const GLint *params) break; default: /* Error will be caught later in gl_Fogfv */ - ; + ASSIGN_4V(p, 0.0F, 0.0F, 0.0F, 0.0F); } save_Fogfv(pname, p); } @@ -1913,7 +1922,10 @@ save_Fogiv(GLenum pname, const GLint *params) static void GLAPIENTRY save_Fogi(GLenum pname, GLint param) { - save_Fogiv(pname, ¶m); + GLint parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0; + save_Fogiv(pname, parray); } @@ -2077,9 +2089,12 @@ save_Lightfv(GLenum light, GLenum pname, const GLfloat *params) static void GLAPIENTRY -save_Lightf(GLenum light, GLenum pname, GLfloat params) +save_Lightf(GLenum light, GLenum pname, GLfloat param) { - save_Lightfv(light, pname, ¶ms); + GLfloat parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_Lightfv(light, pname, parray); } @@ -2125,7 +2140,10 @@ save_Lightiv(GLenum light, GLenum pname, const GLint *params) static void GLAPIENTRY save_Lighti(GLenum light, GLenum pname, GLint param) { - save_Lightiv(light, pname, ¶m); + GLint parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0; + save_Lightiv(light, pname, parray); } @@ -2152,7 +2170,10 @@ save_LightModelfv(GLenum pname, const GLfloat *params) static void GLAPIENTRY save_LightModelf(GLenum pname, GLfloat param) { - save_LightModelfv(pname, ¶m); + GLfloat parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_LightModelfv(pname, parray); } @@ -2174,7 +2195,7 @@ save_LightModeliv(GLenum pname, const GLint *params) break; default: /* Error will be caught later in gl_LightModelfv */ - ; + ASSIGN_4V(fparam, 0.0F, 0.0F, 0.0F, 0.0F); } save_LightModelfv(pname, fparam); } @@ -2183,7 +2204,10 @@ save_LightModeliv(GLenum pname, const GLint *params) static void GLAPIENTRY save_LightModeli(GLenum pname, GLint param) { - save_LightModeliv(pname, ¶m); + GLint parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0; + save_LightModeliv(pname, parray); } @@ -2698,21 +2722,28 @@ save_PointParameterfvEXT(GLenum pname, const GLfloat *params) static void GLAPIENTRY save_PointParameterfEXT(GLenum pname, GLfloat param) { - save_PointParameterfvEXT(pname, ¶m); + GLfloat parray[3]; + parray[0] = param; + parray[1] = parray[2] = 0.0F; + save_PointParameterfvEXT(pname, parray); } static void GLAPIENTRY save_PointParameteriNV(GLenum pname, GLint param) { - GLfloat p = (GLfloat) param; - save_PointParameterfvEXT(pname, &p); + GLfloat parray[3]; + parray[0] = (GLfloat) param; + parray[1] = parray[2] = 0.0F; + save_PointParameterfvEXT(pname, parray); } static void GLAPIENTRY save_PointParameterivNV(GLenum pname, const GLint * param) { - GLfloat p = (GLfloat) param[0]; - save_PointParameterfvEXT(pname, &p); + GLfloat parray[3]; + parray[0] = (GLfloat) param[0]; + parray[1] = parray[2] = 0.0F; + save_PointParameterfvEXT(pname, parray); } @@ -2753,16 +2784,14 @@ static void GLAPIENTRY save_PolygonStipple(const GLubyte * pattern) { GET_CURRENT_CONTEXT(ctx); - GLvoid *image = unpack_image(2, 32, 32, 1, GL_COLOR_INDEX, GL_BITMAP, - pattern, &ctx->Unpack); Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_POLYGON_STIPPLE, 1); if (n) { - n[1].data = image; - } - else if (image) { - _mesa_free(image); + n[1].data = unpack_image(ctx, 2, 32, 32, 1, GL_COLOR_INDEX, GL_BITMAP, + pattern, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_PolygonStipple(ctx->Exec, ((GLubyte *) pattern)); @@ -3386,7 +3415,10 @@ save_TexEnvfv(GLenum target, GLenum pname, const GLfloat *params) static void GLAPIENTRY save_TexEnvf(GLenum target, GLenum pname, GLfloat param) { - save_TexEnvfv(target, pname, ¶m); + GLfloat parray[4]; + parray[0] = (GLfloat) param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_TexEnvfv(target, pname, parray); } @@ -3454,8 +3486,10 @@ save_TexGeniv(GLenum coord, GLenum pname, const GLint *params) static void GLAPIENTRY save_TexGend(GLenum coord, GLenum pname, GLdouble param) { - GLfloat p = (GLfloat) param; - save_TexGenfv(coord, pname, &p); + GLfloat parray[4]; + parray[0] = (GLfloat) param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_TexGenfv(coord, pname, parray); } @@ -3474,14 +3508,20 @@ save_TexGendv(GLenum coord, GLenum pname, const GLdouble *params) static void GLAPIENTRY save_TexGenf(GLenum coord, GLenum pname, GLfloat param) { - save_TexGenfv(coord, pname, ¶m); + GLfloat parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_TexGenfv(coord, pname, parray); } static void GLAPIENTRY save_TexGeni(GLenum coord, GLenum pname, GLint param) { - save_TexGeniv(coord, pname, ¶m); + GLint parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0; + save_TexGeniv(coord, pname, parray); } @@ -3509,7 +3549,10 @@ save_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params) static void GLAPIENTRY save_TexParameterf(GLenum target, GLenum pname, GLfloat param) { - save_TexParameterfv(target, pname, ¶m); + GLfloat parray[4]; + parray[0] = param; + parray[1] = parray[2] = parray[3] = 0.0F; + save_TexParameterfv(target, pname, parray); } @@ -3546,8 +3589,6 @@ save_TexImage1D(GLenum target, border, format, type, pixels)); } else { - GLvoid *image = unpack_image(1, width, 1, 1, format, type, - pixels, &ctx->Unpack); Node *n; ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_IMAGE1D, 8); @@ -3559,10 +3600,8 @@ save_TexImage1D(GLenum target, n[5].i = border; n[6].e = format; n[7].e = type; - n[8].data = image; - } - else if (image) { - _mesa_free(image); + n[8].data = unpack_image(ctx, 1, width, 1, 1, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexImage1D(ctx->Exec, (target, level, components, width, @@ -3585,8 +3624,6 @@ save_TexImage2D(GLenum target, height, border, format, type, pixels)); } else { - GLvoid *image = unpack_image(2, width, height, 1, format, type, - pixels, &ctx->Unpack); Node *n; ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_IMAGE2D, 9); @@ -3599,10 +3636,8 @@ save_TexImage2D(GLenum target, n[6].i = border; n[7].e = format; n[8].e = type; - n[9].data = image; - } - else if (image) { - _mesa_free(image); + n[9].data = unpack_image(ctx, 2, width, height, 1, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexImage2D(ctx->Exec, (target, level, components, width, @@ -3628,8 +3663,6 @@ save_TexImage3D(GLenum target, } else { Node *n; - GLvoid *image = unpack_image(3, width, height, depth, format, type, - pixels, &ctx->Unpack); ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_IMAGE3D, 10); if (n) { @@ -3642,10 +3675,8 @@ save_TexImage3D(GLenum target, n[7].i = border; n[8].e = format; n[9].e = type; - n[10].data = image; - } - else if (image) { - _mesa_free(image); + n[10].data = unpack_image(ctx, 3, width, height, depth, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexImage3D(ctx->Exec, (target, level, internalFormat, width, @@ -3663,9 +3694,9 @@ save_TexSubImage1D(GLenum target, GLint level, GLint xoffset, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLvoid *image = unpack_image(1, width, 1, 1, format, type, - pixels, &ctx->Unpack); + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_SUB_IMAGE1D, 7); if (n) { n[1].e = target; @@ -3674,10 +3705,8 @@ save_TexSubImage1D(GLenum target, GLint level, GLint xoffset, n[4].i = (GLint) width; n[5].e = format; n[6].e = type; - n[7].data = image; - } - else if (image) { - _mesa_free(image); + n[7].data = unpack_image(ctx, 1, width, 1, 1, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexSubImage1D(ctx->Exec, (target, level, xoffset, width, @@ -3694,9 +3723,9 @@ save_TexSubImage2D(GLenum target, GLint level, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLvoid *image = unpack_image(2, width, height, 1, format, type, - pixels, &ctx->Unpack); + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_SUB_IMAGE2D, 9); if (n) { n[1].e = target; @@ -3707,10 +3736,8 @@ save_TexSubImage2D(GLenum target, GLint level, n[6].i = (GLint) height; n[7].e = format; n[8].e = type; - n[9].data = image; - } - else if (image) { - _mesa_free(image); + n[9].data = unpack_image(ctx, 2, width, height, 1, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexSubImage2D(ctx->Exec, (target, level, xoffset, yoffset, @@ -3727,9 +3754,9 @@ save_TexSubImage3D(GLenum target, GLint level, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLvoid *image = unpack_image(3, width, height, depth, format, type, - pixels, &ctx->Unpack); + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_TEX_SUB_IMAGE3D, 11); if (n) { n[1].e = target; @@ -3742,10 +3769,8 @@ save_TexSubImage3D(GLenum target, GLint level, n[8].i = (GLint) depth; n[9].e = format; n[10].e = type; - n[11].data = image; - } - else if (image) { - _mesa_free(image); + n[11].data = unpack_image(ctx, 3, width, height, depth, format, type, + pixels, &ctx->Unpack); } if (ctx->ExecuteFlag) { CALL_TexSubImage3D(ctx->Exec, (target, level, @@ -4458,18 +4483,17 @@ save_LoadProgramNV(GLenum target, GLuint id, GLsizei len, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLubyte *programCopy; - - programCopy = (GLubyte *) _mesa_malloc(len); - if (!programCopy) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, "glLoadProgramNV"); - return; - } - _mesa_memcpy(programCopy, program, len); ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_LOAD_PROGRAM_NV, 4); if (n) { + GLubyte *programCopy = (GLubyte *) _mesa_malloc(len); + if (!programCopy) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glLoadProgramNV"); + return; + } + _mesa_memcpy(programCopy, program, len); n[1].e = target; n[2].ui = id; n[3].i = len; @@ -4486,15 +4510,17 @@ save_RequestResidentProgramsNV(GLsizei num, const GLuint * ids) { GET_CURRENT_CONTEXT(ctx); Node *n; - GLuint *idCopy = (GLuint *) _mesa_malloc(num * sizeof(GLuint)); - if (!idCopy) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, "glRequestResidentProgramsNV"); - return; - } - _mesa_memcpy(idCopy, ids, num * sizeof(GLuint)); + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_TRACK_MATRIX_NV, 2); if (n) { + GLuint *idCopy = (GLuint *) _mesa_malloc(num * sizeof(GLuint)); + if (!idCopy) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glRequestResidentProgramsNV"); + return; + } + _mesa_memcpy(idCopy, ids, num * sizeof(GLuint)); n[1].i = num; n[2].data = idCopy; } @@ -4655,16 +4681,17 @@ save_ProgramNamedParameter4fNV(GLuint id, GLsizei len, const GLubyte * name, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLubyte *nameCopy = (GLubyte *) _mesa_malloc(len); - if (!nameCopy) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, "glProgramNamedParameter4fNV"); - return; - } - _mesa_memcpy(nameCopy, name, len); ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_PROGRAM_NAMED_PARAMETER_NV, 6); if (n) { + GLubyte *nameCopy = (GLubyte *) _mesa_malloc(len); + if (!nameCopy) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glProgramNamedParameter4fNV"); + return; + } + _mesa_memcpy(nameCopy, name, len); n[1].ui = id; n[2].i = len; n[3].data = nameCopy; @@ -4753,18 +4780,17 @@ save_ProgramStringARB(GLenum target, GLenum format, GLsizei len, { GET_CURRENT_CONTEXT(ctx); Node *n; - GLubyte *programCopy; - - programCopy = (GLubyte *) _mesa_malloc(len); - if (!programCopy) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, "glProgramStringARB"); - return; - } - _mesa_memcpy(programCopy, string, len); ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_PROGRAM_STRING_ARB, 4); if (n) { + GLubyte *programCopy = (GLubyte *) _mesa_malloc(len); + if (!programCopy) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glProgramStringARB"); + return; + } + _mesa_memcpy(programCopy, string, len); n[1].e = target; n[2].e = format; n[3].i = len; diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c index 6682b5e725..6d31f32443 100644 --- a/src/mesa/main/drawpix.c +++ b/src/mesa/main/drawpix.c @@ -27,6 +27,7 @@ #include "bufferobj.h" #include "context.h" #include "drawpix.h" +#include "enums.h" #include "feedback.h" #include "framebuffer.h" #include "image.h" @@ -34,6 +35,18 @@ #include "state.h" + +/** + * If a fragment program is enabled, check that it's valid. + * \return GL_TRUE if valid, GL_FALSE otherwise + */ +static GLboolean +valid_fragment_program(GLcontext *ctx) +{ + return !(ctx->FragmentProgram.Enabled && !ctx->FragmentProgram._Enabled); +} + + #if _HAVE_FULL_GL /* @@ -51,29 +64,34 @@ _mesa_DrawPixels( GLsizei width, GLsizei height, return; } + /* We're not using the current vertex program, and the driver may install + * it's own. + */ + _mesa_set_vp_override(ctx, GL_TRUE); + if (ctx->NewState) { _mesa_update_state(ctx); } - if (ctx->FragmentProgram.Enabled && !ctx->FragmentProgram._Enabled) { + if (!valid_fragment_program(ctx)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels (invalid fragment program)"); - return; + goto end; } if (_mesa_error_check_format_type(ctx, format, type, GL_TRUE)) { - /* found an error */ - return; + /* the error was already recorded */ + goto end; } if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { _mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT, "glDrawPixels(incomplete framebuffer)" ); - return; + goto end; } if (!ctx->Current.RasterPosValid) { - return; + goto end; /* no-op, not an error */ } if (ctx->RenderMode == GL_RENDER) { @@ -88,13 +106,13 @@ _mesa_DrawPixels( GLsizei width, GLsizei height, format, type, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(invalid PBO access)"); - return; + goto end; } - if (ctx->Unpack.BufferObj->Pointer) { + if (_mesa_bufferobj_mapped(ctx->Unpack.BufferObj)) { /* buffer is mapped - that's an error */ _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(PBO is mapped)"); - return; + goto end; } } @@ -116,6 +134,9 @@ _mesa_DrawPixels( GLsizei width, GLsizei height, ASSERT(ctx->RenderMode == GL_SELECT); /* Do nothing. See OpenGL Spec, Appendix B, Corollary 6. */ } + +end: + _mesa_set_vp_override(ctx, GL_FALSE); } @@ -126,37 +147,48 @@ _mesa_CopyPixels( GLint srcx, GLint srcy, GLsizei width, GLsizei height, GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); + if (width < 0 || height < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, "glCopyPixels(width or height < 0)"); + return; + } + + if (type != GL_COLOR && type != GL_DEPTH && type != GL_STENCIL) { + _mesa_error(ctx, GL_INVALID_ENUM, "glCopyPixels(type=%s)", + _mesa_lookup_enum_by_nr(type)); + return; + } + + /* We're not using the current vertex program, and the driver may install + * it's own. + */ + _mesa_set_vp_override(ctx, GL_TRUE); + if (ctx->NewState) { _mesa_update_state(ctx); } - if (ctx->FragmentProgram.Enabled && !ctx->FragmentProgram._Enabled) { + if (!valid_fragment_program(ctx)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glCopyPixels (invalid fragment program)"); - return; - } - - if (width < 0 || height < 0) { - _mesa_error(ctx, GL_INVALID_VALUE, "glCopyPixels(width or height < 0)"); - return; + goto end; } if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT || ctx->ReadBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { _mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT, "glCopyPixels(incomplete framebuffer)" ); - return; + goto end; } if (!_mesa_source_buffer_exists(ctx, type) || !_mesa_dest_buffer_exists(ctx, type)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glCopyPixels(missing source or dest buffer)"); - return; + goto end; } if (!ctx->Current.RasterPosValid || width ==0 || height == 0) { - return; + goto end; /* no-op, not an error */ } if (ctx->RenderMode == GL_RENDER) { @@ -181,6 +213,9 @@ _mesa_CopyPixels( GLint srcx, GLint srcy, GLsizei width, GLsizei height, ASSERT(ctx->RenderMode == GL_SELECT); /* Do nothing. See OpenGL Spec, Appendix B, Corollary 6. */ } + +end: + _mesa_set_vp_override(ctx, GL_FALSE); } #endif /* _HAVE_FULL_GL */ @@ -208,7 +243,7 @@ _mesa_Bitmap( GLsizei width, GLsizei height, _mesa_update_state(ctx); } - if (ctx->FragmentProgram.Enabled && !ctx->FragmentProgram._Enabled) { + if (!valid_fragment_program(ctx)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBitmap (invalid fragment program)"); return; @@ -235,7 +270,7 @@ _mesa_Bitmap( GLsizei width, GLsizei height, "glBitmap(invalid PBO access)"); return; } - if (ctx->Unpack.BufferObj->Pointer) { + if (_mesa_bufferobj_mapped(ctx->Unpack.BufferObj)) { /* buffer is mapped - that's an error */ _mesa_error(ctx, GL_INVALID_OPERATION, "glBitmap(PBO is mapped)"); return; @@ -264,68 +299,3 @@ _mesa_Bitmap( GLsizei width, GLsizei height, ctx->Current.RasterPos[0] += xmove; ctx->Current.RasterPos[1] += ymove; } - - - -#if 0 /* experimental */ -/* - * Execute glDrawDepthPixelsMESA(). This function accepts both a color - * image and depth (Z) image. Rasterization produces fragments with - * color and Z taken from these images. This function is intended for - * Z-compositing. Normally, this operation requires two glDrawPixels - * calls with stencil testing. - */ -void GLAPIENTRY -_mesa_DrawDepthPixelsMESA( GLsizei width, GLsizei height, - GLenum colorFormat, GLenum colorType, - const GLvoid *colors, - GLenum depthType, const GLvoid *depths ) -{ - GET_CURRENT_CONTEXT(ctx); - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - - if (width < 0 || height < 0) { - _mesa_error( ctx, GL_INVALID_VALUE, - "glDrawDepthPixelsMESA(width or height < 0" ); - return; - } - - if (!ctx->Current.RasterPosValid) { - return; - } - - if (ctx->NewState) { - _mesa_update_state(ctx); - } - - if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { - _mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT, - "glDrawDepthPixelsMESA(incomplete framebuffer)"); - return; - } - - if (ctx->RenderMode == GL_RENDER) { - /* Round, to satisfy conformance tests (matches SGI's OpenGL) */ - GLint x = IROUND(ctx->Current.RasterPos[0]); - GLint y = IROUND(ctx->Current.RasterPos[1]); - ctx->Driver.DrawDepthPixelsMESA(ctx, x, y, width, height, - colorFormat, colorType, colors, - depthType, depths, &ctx->Unpack); - } - else if (ctx->RenderMode == GL_FEEDBACK) { - /* Feedback the current raster pos info */ - FLUSH_CURRENT( ctx, 0 ); - _mesa_feedback_token( ctx, (GLfloat) (GLint) GL_DRAW_PIXEL_TOKEN ); - _mesa_feedback_vertex( ctx, - ctx->Current.RasterPos, - ctx->Current.RasterColor, - ctx->Current.RasterIndex, - ctx->Current.RasterTexCoords[0] ); - } - else { - ASSERT(ctx->RenderMode == GL_SELECT); - /* Do nothing. See OpenGL Spec, Appendix B, Corollary 6. */ - } -} - -#endif diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 48268fcd27..4bc54771e9 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -972,6 +972,11 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state) } break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + CHECK_EXTENSION(ARB_seamless_cube_map, cap); + ctx->Texture.CubeMapSeamless = state; + break; + default: _mesa_error(ctx, GL_INVALID_ENUM, "%s(0x%x)", state ? "glEnable" : "glDisable", cap); @@ -1395,6 +1400,11 @@ _mesa_IsEnabled( GLenum cap ) CHECK_EXTENSION(ATI_fragment_shader); return ctx->ATIFragmentShader.Enabled; #endif /* FEATURE_ATI_fragment_shader */ + + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + CHECK_EXTENSION(ARB_seamless_cube_map); + return ctx->Texture.CubeMapSeamless; + default: _mesa_error(ctx, GL_INVALID_ENUM, "glIsEnabled(0x%x)", (int) cap); return GL_FALSE; diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index 6e2adea636..ad40bb6e78 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -139,10 +139,12 @@ LONGSTRING static const char enum_string_table[] = "GL_BOOL_VEC4_ARB\0" "GL_BUFFER_ACCESS\0" "GL_BUFFER_ACCESS_ARB\0" + "GL_BUFFER_FLUSHING_UNMAP_APPLE\0" "GL_BUFFER_MAPPED\0" "GL_BUFFER_MAPPED_ARB\0" "GL_BUFFER_MAP_POINTER\0" "GL_BUFFER_MAP_POINTER_ARB\0" + "GL_BUFFER_SERIALIZED_MODIFY_APPLE\0" "GL_BUFFER_SIZE\0" "GL_BUFFER_SIZE_ARB\0" "GL_BUFFER_USAGE\0" @@ -1542,6 +1544,9 @@ LONGSTRING static const char enum_string_table[] = "GL_STENCIL_VALUE_MASK\0" "GL_STENCIL_WRITEMASK\0" "GL_STEREO\0" + "GL_STORAGE_CACHED_APPLE\0" + "GL_STORAGE_PRIVATE_APPLE\0" + "GL_STORAGE_SHARED_APPLE\0" "GL_STREAM_COPY\0" "GL_STREAM_COPY_ARB\0" "GL_STREAM_DRAW\0" @@ -1691,6 +1696,7 @@ LONGSTRING static const char enum_string_table[] = "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB\0" "GL_TEXTURE_CUBE_MAP_POSITIVE_Z\0" "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB\0" + "GL_TEXTURE_CUBE_MAP_SEAMLESS\0" "GL_TEXTURE_DEPTH\0" "GL_TEXTURE_DEPTH_SIZE\0" "GL_TEXTURE_DEPTH_SIZE_ARB\0" @@ -1730,6 +1736,8 @@ LONGSTRING static const char enum_string_table[] = "GL_TEXTURE_MIN_FILTER\0" "GL_TEXTURE_MIN_LOD\0" "GL_TEXTURE_PRIORITY\0" + "GL_TEXTURE_RANGE_LENGTH_APPLE\0" + "GL_TEXTURE_RANGE_POINTER_APPLE\0" "GL_TEXTURE_RECTANGLE_ARB\0" "GL_TEXTURE_RECTANGLE_NV\0" "GL_TEXTURE_RED_SIZE\0" @@ -1737,6 +1745,7 @@ LONGSTRING static const char enum_string_table[] = "GL_TEXTURE_RESIDENT\0" "GL_TEXTURE_STACK_DEPTH\0" "GL_TEXTURE_STENCIL_SIZE\0" + "GL_TEXTURE_STORAGE_HINT_APPLE\0" "GL_TEXTURE_TOO_LARGE_EXT\0" "GL_TEXTURE_UNSIGNED_REMAP_MODE_NV\0" "GL_TEXTURE_WIDTH\0" @@ -1871,7 +1880,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[1833] = +static const enum_elt all_enums[1842] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -1976,3064 +1985,3081 @@ static const enum_elt all_enums[1833] = { 1632, 0x00008B59 }, /* GL_BOOL_VEC4_ARB */ { 1649, 0x000088BB }, /* GL_BUFFER_ACCESS */ { 1666, 0x000088BB }, /* GL_BUFFER_ACCESS_ARB */ - { 1687, 0x000088BC }, /* GL_BUFFER_MAPPED */ - { 1704, 0x000088BC }, /* GL_BUFFER_MAPPED_ARB */ - { 1725, 0x000088BD }, /* GL_BUFFER_MAP_POINTER */ - { 1747, 0x000088BD }, /* GL_BUFFER_MAP_POINTER_ARB */ - { 1773, 0x00008764 }, /* GL_BUFFER_SIZE */ - { 1788, 0x00008764 }, /* GL_BUFFER_SIZE_ARB */ - { 1807, 0x00008765 }, /* GL_BUFFER_USAGE */ - { 1823, 0x00008765 }, /* GL_BUFFER_USAGE_ARB */ - { 1843, 0x0000877B }, /* GL_BUMP_ENVMAP_ATI */ - { 1862, 0x00008777 }, /* GL_BUMP_NUM_TEX_UNITS_ATI */ - { 1888, 0x00008775 }, /* GL_BUMP_ROT_MATRIX_ATI */ - { 1911, 0x00008776 }, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ - { 1939, 0x0000877C }, /* GL_BUMP_TARGET_ATI */ - { 1958, 0x00008778 }, /* GL_BUMP_TEX_UNITS_ATI */ - { 1980, 0x00001400 }, /* GL_BYTE */ - { 1988, 0x00002A24 }, /* GL_C3F_V3F */ - { 1999, 0x00002A26 }, /* GL_C4F_N3F_V3F */ - { 2014, 0x00002A22 }, /* GL_C4UB_V2F */ - { 2026, 0x00002A23 }, /* GL_C4UB_V3F */ - { 2038, 0x00000901 }, /* GL_CCW */ - { 2045, 0x00002900 }, /* GL_CLAMP */ - { 2054, 0x0000812D }, /* GL_CLAMP_TO_BORDER */ - { 2073, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */ - { 2096, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */ - { 2120, 0x0000812F }, /* GL_CLAMP_TO_EDGE */ - { 2137, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */ - { 2159, 0x00001500 }, /* GL_CLEAR */ - { 2168, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */ - { 2193, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */ - { 2222, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */ - { 2248, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ - { 2277, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */ - { 2303, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */ - { 2330, 0x00003000 }, /* GL_CLIP_PLANE0 */ - { 2345, 0x00003001 }, /* GL_CLIP_PLANE1 */ - { 2360, 0x00003002 }, /* GL_CLIP_PLANE2 */ - { 2375, 0x00003003 }, /* GL_CLIP_PLANE3 */ - { 2390, 0x00003004 }, /* GL_CLIP_PLANE4 */ - { 2405, 0x00003005 }, /* GL_CLIP_PLANE5 */ - { 2420, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - { 2453, 0x00000A00 }, /* GL_COEFF */ - { 2462, 0x00001800 }, /* GL_COLOR */ - { 2471, 0x00008076 }, /* GL_COLOR_ARRAY */ - { 2486, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - { 2516, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 2550, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */ - { 2573, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */ - { 2593, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */ - { 2615, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */ - { 2635, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0 */ - { 2656, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */ - { 2681, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1 */ - { 2702, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10 */ - { 2724, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */ - { 2750, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11 */ - { 2772, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */ - { 2798, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12 */ - { 2820, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */ - { 2846, 0x00008CED }, /* GL_COLOR_ATTACHMENT13 */ - { 2868, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */ - { 2894, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14 */ - { 2916, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */ - { 2942, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15 */ - { 2964, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */ - { 2990, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */ - { 3015, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2 */ - { 3036, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */ - { 3061, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3 */ - { 3082, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */ - { 3107, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4 */ - { 3128, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */ - { 3153, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5 */ - { 3174, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */ - { 3199, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6 */ - { 3220, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */ - { 3245, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7 */ - { 3266, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */ - { 3291, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8 */ - { 3312, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */ - { 3337, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9 */ - { 3358, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */ - { 3383, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */ - { 3403, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */ - { 3424, 0x00001900 }, /* GL_COLOR_INDEX */ - { 3439, 0x00001603 }, /* GL_COLOR_INDEXES */ - { 3456, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */ - { 3474, 0x00000B57 }, /* GL_COLOR_MATERIAL */ - { 3492, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */ - { 3515, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */ - { 3543, 0x000080B1 }, /* GL_COLOR_MATRIX */ - { 3559, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */ - { 3579, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */ - { 3607, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 3639, 0x00008458 }, /* GL_COLOR_SUM */ - { 3652, 0x00008458 }, /* GL_COLOR_SUM_ARB */ - { 3669, 0x000080D0 }, /* GL_COLOR_TABLE */ - { 3684, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */ - { 3710, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */ - { 3740, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */ - { 3770, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */ - { 3790, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */ - { 3814, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */ - { 3839, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */ - { 3868, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */ - { 3897, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */ - { 3919, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */ - { 3945, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */ - { 3971, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */ - { 3997, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */ - { 4027, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */ - { 4057, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */ - { 4087, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */ - { 4121, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */ - { 4155, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ - { 4185, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */ - { 4219, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */ - { 4253, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */ - { 4277, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */ - { 4305, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */ - { 4333, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */ - { 4354, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */ - { 4379, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */ - { 4400, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */ - { 4425, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */ - { 4450, 0x00000C23 }, /* GL_COLOR_WRITEMASK */ - { 4469, 0x00008570 }, /* GL_COMBINE */ - { 4480, 0x00008503 }, /* GL_COMBINE4 */ - { 4492, 0x00008572 }, /* GL_COMBINE_ALPHA */ - { 4509, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */ - { 4530, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */ - { 4551, 0x00008570 }, /* GL_COMBINE_ARB */ - { 4566, 0x00008570 }, /* GL_COMBINE_EXT */ - { 4581, 0x00008571 }, /* GL_COMBINE_RGB */ - { 4596, 0x00008571 }, /* GL_COMBINE_RGB_ARB */ - { 4615, 0x00008571 }, /* GL_COMBINE_RGB_EXT */ - { 4634, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */ - { 4670, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */ - { 4694, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */ - { 4722, 0x00001300 }, /* GL_COMPILE */ - { 4733, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */ - { 4756, 0x00008B81 }, /* GL_COMPILE_STATUS */ - { 4774, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */ - { 4794, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */ - { 4818, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */ - { 4842, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */ - { 4870, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */ - { 4894, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */ - { 4924, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */ - { 4958, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */ - { 4986, 0x000084ED }, /* GL_COMPRESSED_RGB */ - { 5004, 0x000084EE }, /* GL_COMPRESSED_RGBA */ - { 5023, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */ - { 5046, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - { 5075, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ - { 5108, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ - { 5141, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - { 5174, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */ - { 5196, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */ - { 5224, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ - { 5256, 0x00008C4A }, /* GL_COMPRESSED_SLUMINANCE */ - { 5281, 0x00008C4B }, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - { 5312, 0x00008C48 }, /* GL_COMPRESSED_SRGB */ - { 5331, 0x00008C49 }, /* GL_COMPRESSED_SRGB_ALPHA */ - { 5356, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */ - { 5386, 0x00008576 }, /* GL_CONSTANT */ - { 5398, 0x00008003 }, /* GL_CONSTANT_ALPHA */ - { 5416, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */ - { 5438, 0x00008576 }, /* GL_CONSTANT_ARB */ - { 5454, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */ - { 5478, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */ - { 5500, 0x00008001 }, /* GL_CONSTANT_COLOR */ - { 5518, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */ - { 5540, 0x00008576 }, /* GL_CONSTANT_EXT */ - { 5556, 0x00008010 }, /* GL_CONVOLUTION_1D */ - { 5574, 0x00008011 }, /* GL_CONVOLUTION_2D */ - { 5592, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ - { 5620, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ - { 5651, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ - { 5678, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ - { 5709, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ - { 5736, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ - { 5767, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ - { 5795, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ - { 5827, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ - { 5849, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ - { 5875, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ - { 5897, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ - { 5923, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ - { 5944, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ - { 5969, 0x00008862 }, /* GL_COORD_REPLACE */ - { 5986, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ - { 6007, 0x00008862 }, /* GL_COORD_REPLACE_NV */ - { 6027, 0x00001503 }, /* GL_COPY */ - { 6035, 0x0000150C }, /* GL_COPY_INVERTED */ - { 6052, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ - { 6072, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ - { 6092, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ - { 6113, 0x00000B44 }, /* GL_CULL_FACE */ - { 6126, 0x00000B45 }, /* GL_CULL_FACE_MODE */ - { 6144, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ - { 6163, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - { 6195, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - { 6230, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ - { 6251, 0x00000001 }, /* GL_CURRENT_BIT */ - { 6266, 0x00000B00 }, /* GL_CURRENT_COLOR */ - { 6283, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ - { 6304, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ - { 6330, 0x00000B01 }, /* GL_CURRENT_INDEX */ - { 6347, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ - { 6369, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ - { 6397, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ - { 6418, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - { 6452, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ - { 6485, 0x00000B02 }, /* GL_CURRENT_NORMAL */ - { 6503, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - { 6533, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ - { 6552, 0x00008865 }, /* GL_CURRENT_QUERY */ - { 6569, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ - { 6590, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ - { 6614, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ - { 6641, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ - { 6665, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ - { 6692, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ - { 6725, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ - { 6759, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - { 6792, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ - { 6819, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ - { 6845, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ - { 6870, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ - { 6899, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ - { 6921, 0x00000900 }, /* GL_CW */ - { 6927, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ - { 6948, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ - { 6969, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ - { 6989, 0x00002101 }, /* GL_DECAL */ - { 6998, 0x00001E03 }, /* GL_DECR */ - { 7006, 0x00008508 }, /* GL_DECR_WRAP */ - { 7019, 0x00008508 }, /* GL_DECR_WRAP_EXT */ - { 7036, 0x00008B80 }, /* GL_DELETE_STATUS */ - { 7053, 0x00001801 }, /* GL_DEPTH */ - { 7062, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ - { 7082, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ - { 7102, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ - { 7126, 0x00000D1F }, /* GL_DEPTH_BIAS */ - { 7140, 0x00000D56 }, /* GL_DEPTH_BITS */ - { 7154, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ - { 7174, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ - { 7199, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ - { 7219, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ - { 7237, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ - { 7258, 0x00001902 }, /* GL_DEPTH_COMPONENT */ - { 7277, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ - { 7298, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ - { 7323, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ - { 7349, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ - { 7370, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ - { 7395, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ - { 7421, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ - { 7442, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ - { 7467, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ - { 7493, 0x00000B74 }, /* GL_DEPTH_FUNC */ - { 7507, 0x00000B70 }, /* GL_DEPTH_RANGE */ - { 7522, 0x00000D1E }, /* GL_DEPTH_SCALE */ - { 7537, 0x000084F9 }, /* GL_DEPTH_STENCIL */ - { 7554, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ - { 7582, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ - { 7602, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - { 7630, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - { 7658, 0x00000B71 }, /* GL_DEPTH_TEST */ - { 7672, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ - { 7694, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ - { 7720, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ - { 7739, 0x00001201 }, /* GL_DIFFUSE */ - { 7750, 0x00000BD0 }, /* GL_DITHER */ - { 7760, 0x00000A02 }, /* GL_DOMAIN */ - { 7770, 0x00001100 }, /* GL_DONT_CARE */ - { 7783, 0x000086AE }, /* GL_DOT3_RGB */ - { 7795, 0x000086AF }, /* GL_DOT3_RGBA */ - { 7808, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ - { 7825, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ - { 7842, 0x000086AE }, /* GL_DOT3_RGB_ARB */ - { 7858, 0x00008740 }, /* GL_DOT3_RGB_EXT */ - { 7874, 0x0000140A }, /* GL_DOUBLE */ - { 7884, 0x00000C32 }, /* GL_DOUBLEBUFFER */ - { 7900, 0x00000C01 }, /* GL_DRAW_BUFFER */ - { 7915, 0x00008825 }, /* GL_DRAW_BUFFER0 */ - { 7931, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ - { 7951, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ - { 7971, 0x00008826 }, /* GL_DRAW_BUFFER1 */ - { 7987, 0x0000882F }, /* GL_DRAW_BUFFER10 */ - { 8004, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ - { 8025, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ - { 8046, 0x00008830 }, /* GL_DRAW_BUFFER11 */ - { 8063, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ - { 8084, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ - { 8105, 0x00008831 }, /* GL_DRAW_BUFFER12 */ - { 8122, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ - { 8143, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ - { 8164, 0x00008832 }, /* GL_DRAW_BUFFER13 */ - { 8181, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ - { 8202, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ - { 8223, 0x00008833 }, /* GL_DRAW_BUFFER14 */ - { 8240, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ - { 8261, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ - { 8282, 0x00008834 }, /* GL_DRAW_BUFFER15 */ - { 8299, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ - { 8320, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ - { 8341, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ - { 8361, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ - { 8381, 0x00008827 }, /* GL_DRAW_BUFFER2 */ - { 8397, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ - { 8417, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ - { 8437, 0x00008828 }, /* GL_DRAW_BUFFER3 */ - { 8453, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ - { 8473, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ - { 8493, 0x00008829 }, /* GL_DRAW_BUFFER4 */ - { 8509, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ - { 8529, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ - { 8549, 0x0000882A }, /* GL_DRAW_BUFFER5 */ - { 8565, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ - { 8585, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ - { 8605, 0x0000882B }, /* GL_DRAW_BUFFER6 */ - { 8621, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ - { 8641, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ - { 8661, 0x0000882C }, /* GL_DRAW_BUFFER7 */ - { 8677, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ - { 8697, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ - { 8717, 0x0000882D }, /* GL_DRAW_BUFFER8 */ - { 8733, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ - { 8753, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ - { 8773, 0x0000882E }, /* GL_DRAW_BUFFER9 */ - { 8789, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ - { 8809, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ - { 8829, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ - { 8849, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ - { 8881, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ - { 8905, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ - { 8925, 0x00000304 }, /* GL_DST_ALPHA */ - { 8938, 0x00000306 }, /* GL_DST_COLOR */ - { 8951, 0x0000877A }, /* GL_DU8DV8_ATI */ - { 8965, 0x00008779 }, /* GL_DUDV_ATI */ - { 8977, 0x000088EA }, /* GL_DYNAMIC_COPY */ - { 8993, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ - { 9013, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ - { 9029, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ - { 9049, 0x000088E9 }, /* GL_DYNAMIC_READ */ - { 9065, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ - { 9085, 0x00000B43 }, /* GL_EDGE_FLAG */ - { 9098, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ - { 9117, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - { 9151, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ - { 9189, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ - { 9216, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - { 9242, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ - { 9266, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - { 9298, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ - { 9334, 0x00001600 }, /* GL_EMISSION */ - { 9346, 0x00002000 }, /* GL_ENABLE_BIT */ - { 9360, 0x00000202 }, /* GL_EQUAL */ - { 9369, 0x00001509 }, /* GL_EQUIV */ - { 9378, 0x00010000 }, /* GL_EVAL_BIT */ - { 9390, 0x00000800 }, /* GL_EXP */ - { 9397, 0x00000801 }, /* GL_EXP2 */ - { 9405, 0x00001F03 }, /* GL_EXTENSIONS */ - { 9419, 0x00002400 }, /* GL_EYE_LINEAR */ - { 9433, 0x00002502 }, /* GL_EYE_PLANE */ - { 9446, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ - { 9471, 0x0000855B }, /* GL_EYE_RADIAL_NV */ - { 9488, 0x00000000 }, /* GL_FALSE */ - { 9497, 0x00001101 }, /* GL_FASTEST */ - { 9508, 0x00001C01 }, /* GL_FEEDBACK */ - { 9520, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ - { 9547, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ - { 9571, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ - { 9595, 0x00001B02 }, /* GL_FILL */ - { 9603, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ - { 9634, 0x00001D00 }, /* GL_FLAT */ - { 9642, 0x00001406 }, /* GL_FLOAT */ - { 9651, 0x00008B5A }, /* GL_FLOAT_MAT2 */ - { 9665, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ - { 9683, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ - { 9699, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ - { 9715, 0x00008B5B }, /* GL_FLOAT_MAT3 */ - { 9729, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ - { 9747, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ - { 9763, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ - { 9779, 0x00008B5C }, /* GL_FLOAT_MAT4 */ - { 9793, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ - { 9811, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ - { 9827, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ - { 9843, 0x00008B50 }, /* GL_FLOAT_VEC2 */ - { 9857, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ - { 9875, 0x00008B51 }, /* GL_FLOAT_VEC3 */ - { 9889, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ - { 9907, 0x00008B52 }, /* GL_FLOAT_VEC4 */ - { 9921, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ - { 9939, 0x00000B60 }, /* GL_FOG */ - { 9946, 0x00000080 }, /* GL_FOG_BIT */ - { 9957, 0x00000B66 }, /* GL_FOG_COLOR */ - { 9970, 0x00008451 }, /* GL_FOG_COORD */ - { 9983, 0x00008451 }, /* GL_FOG_COORDINATE */ - { 10001, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ - { 10025, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - { 10064, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ - { 10107, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - { 10139, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - { 10170, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - { 10199, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ - { 10224, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ - { 10243, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ - { 10277, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ - { 10304, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ - { 10330, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ - { 10354, 0x00008450 }, /* GL_FOG_COORD_SRC */ - { 10371, 0x00000B62 }, /* GL_FOG_DENSITY */ - { 10386, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ - { 10410, 0x00000B64 }, /* GL_FOG_END */ - { 10421, 0x00000C54 }, /* GL_FOG_HINT */ - { 10433, 0x00000B61 }, /* GL_FOG_INDEX */ - { 10446, 0x00000B65 }, /* GL_FOG_MODE */ - { 10458, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ - { 10477, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ - { 10502, 0x00000B63 }, /* GL_FOG_START */ - { 10515, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ - { 10533, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ - { 10557, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ - { 10576, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ - { 10599, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - { 10634, 0x00008D40 }, /* GL_FRAMEBUFFER */ - { 10649, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - { 10686, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - { 10722, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - { 10763, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - { 10804, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - { 10841, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - { 10878, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - { 10916, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ - { 10958, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - { 10996, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ - { 11038, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - { 11073, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - { 11112, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ - { 11161, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - { 11209, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ - { 11261, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - { 11301, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ - { 11345, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - { 11385, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ - { 11429, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ - { 11456, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ - { 11480, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ - { 11508, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ - { 11531, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ - { 11550, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - { 11587, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ - { 11628, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - { 11669, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - { 11711, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - { 11762, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - { 11800, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - { 11845, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ - { 11894, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - { 11932, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - { 11974, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - { 12006, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ - { 12031, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ - { 12058, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ - { 12089, 0x00000404 }, /* GL_FRONT */ - { 12098, 0x00000408 }, /* GL_FRONT_AND_BACK */ - { 12116, 0x00000B46 }, /* GL_FRONT_FACE */ - { 12130, 0x00000400 }, /* GL_FRONT_LEFT */ - { 12144, 0x00000401 }, /* GL_FRONT_RIGHT */ - { 12159, 0x00008006 }, /* GL_FUNC_ADD */ - { 12171, 0x00008006 }, /* GL_FUNC_ADD_EXT */ - { 12187, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ - { 12212, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ - { 12241, 0x0000800A }, /* GL_FUNC_SUBTRACT */ - { 12258, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ - { 12279, 0x00008191 }, /* GL_GENERATE_MIPMAP */ - { 12298, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ - { 12322, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ - { 12351, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ - { 12375, 0x00000206 }, /* GL_GEQUAL */ - { 12385, 0x00000204 }, /* GL_GREATER */ - { 12396, 0x00001904 }, /* GL_GREEN */ - { 12405, 0x00000D19 }, /* GL_GREEN_BIAS */ - { 12419, 0x00000D53 }, /* GL_GREEN_BITS */ - { 12433, 0x00000D18 }, /* GL_GREEN_SCALE */ - { 12448, 0x00008000 }, /* GL_HINT_BIT */ - { 12460, 0x00008024 }, /* GL_HISTOGRAM */ - { 12473, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ - { 12497, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ - { 12525, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ - { 12548, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ - { 12575, 0x00008024 }, /* GL_HISTOGRAM_EXT */ - { 12592, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ - { 12612, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ - { 12636, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ - { 12660, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ - { 12688, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - { 12716, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ - { 12748, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ - { 12770, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ - { 12796, 0x0000802D }, /* GL_HISTOGRAM_SINK */ - { 12814, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ - { 12836, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ - { 12855, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ - { 12878, 0x0000862A }, /* GL_IDENTITY_NV */ - { 12893, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ - { 12913, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - { 12953, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - { 12991, 0x00001E02 }, /* GL_INCR */ - { 12999, 0x00008507 }, /* GL_INCR_WRAP */ - { 13012, 0x00008507 }, /* GL_INCR_WRAP_EXT */ - { 13029, 0x00008222 }, /* GL_INDEX */ - { 13038, 0x00008077 }, /* GL_INDEX_ARRAY */ - { 13053, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - { 13083, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ - { 13117, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ - { 13140, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ - { 13162, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ - { 13182, 0x00000D51 }, /* GL_INDEX_BITS */ - { 13196, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ - { 13217, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ - { 13235, 0x00000C30 }, /* GL_INDEX_MODE */ - { 13249, 0x00000D13 }, /* GL_INDEX_OFFSET */ - { 13265, 0x00000D12 }, /* GL_INDEX_SHIFT */ - { 13280, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ - { 13299, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ - { 13318, 0x00001404 }, /* GL_INT */ - { 13325, 0x00008049 }, /* GL_INTENSITY */ - { 13338, 0x0000804C }, /* GL_INTENSITY12 */ - { 13353, 0x0000804C }, /* GL_INTENSITY12_EXT */ - { 13372, 0x0000804D }, /* GL_INTENSITY16 */ - { 13387, 0x0000804D }, /* GL_INTENSITY16_EXT */ - { 13406, 0x0000804A }, /* GL_INTENSITY4 */ - { 13420, 0x0000804A }, /* GL_INTENSITY4_EXT */ - { 13438, 0x0000804B }, /* GL_INTENSITY8 */ - { 13452, 0x0000804B }, /* GL_INTENSITY8_EXT */ - { 13470, 0x00008049 }, /* GL_INTENSITY_EXT */ - { 13487, 0x00008575 }, /* GL_INTERPOLATE */ - { 13502, 0x00008575 }, /* GL_INTERPOLATE_ARB */ - { 13521, 0x00008575 }, /* GL_INTERPOLATE_EXT */ - { 13540, 0x00008B53 }, /* GL_INT_VEC2 */ - { 13552, 0x00008B53 }, /* GL_INT_VEC2_ARB */ - { 13568, 0x00008B54 }, /* GL_INT_VEC3 */ - { 13580, 0x00008B54 }, /* GL_INT_VEC3_ARB */ - { 13596, 0x00008B55 }, /* GL_INT_VEC4 */ - { 13608, 0x00008B55 }, /* GL_INT_VEC4_ARB */ - { 13624, 0x00000500 }, /* GL_INVALID_ENUM */ - { 13640, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ - { 13673, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ - { 13710, 0x00000502 }, /* GL_INVALID_OPERATION */ - { 13731, 0x00000501 }, /* GL_INVALID_VALUE */ - { 13748, 0x0000862B }, /* GL_INVERSE_NV */ - { 13762, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ - { 13786, 0x0000150A }, /* GL_INVERT */ - { 13796, 0x00001E00 }, /* GL_KEEP */ - { 13804, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ - { 13834, 0x00000406 }, /* GL_LEFT */ - { 13842, 0x00000203 }, /* GL_LEQUAL */ - { 13852, 0x00000201 }, /* GL_LESS */ - { 13860, 0x00004000 }, /* GL_LIGHT0 */ - { 13870, 0x00004001 }, /* GL_LIGHT1 */ - { 13880, 0x00004002 }, /* GL_LIGHT2 */ - { 13890, 0x00004003 }, /* GL_LIGHT3 */ - { 13900, 0x00004004 }, /* GL_LIGHT4 */ - { 13910, 0x00004005 }, /* GL_LIGHT5 */ - { 13920, 0x00004006 }, /* GL_LIGHT6 */ - { 13930, 0x00004007 }, /* GL_LIGHT7 */ - { 13940, 0x00000B50 }, /* GL_LIGHTING */ - { 13952, 0x00000040 }, /* GL_LIGHTING_BIT */ - { 13968, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ - { 13991, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - { 14020, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ - { 14053, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - { 14081, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ - { 14105, 0x00001B01 }, /* GL_LINE */ - { 14113, 0x00002601 }, /* GL_LINEAR */ - { 14123, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ - { 14145, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - { 14175, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - { 14206, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ - { 14230, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ - { 14255, 0x00000001 }, /* GL_LINES */ - { 14264, 0x00000004 }, /* GL_LINE_BIT */ - { 14276, 0x00000002 }, /* GL_LINE_LOOP */ - { 14289, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ - { 14309, 0x00000B20 }, /* GL_LINE_SMOOTH */ - { 14324, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ - { 14344, 0x00000B24 }, /* GL_LINE_STIPPLE */ - { 14360, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ - { 14384, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ - { 14407, 0x00000003 }, /* GL_LINE_STRIP */ - { 14421, 0x00000702 }, /* GL_LINE_TOKEN */ - { 14435, 0x00000B21 }, /* GL_LINE_WIDTH */ - { 14449, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ - { 14475, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ - { 14495, 0x00008B82 }, /* GL_LINK_STATUS */ - { 14510, 0x00000B32 }, /* GL_LIST_BASE */ - { 14523, 0x00020000 }, /* GL_LIST_BIT */ - { 14535, 0x00000B33 }, /* GL_LIST_INDEX */ - { 14549, 0x00000B30 }, /* GL_LIST_MODE */ - { 14562, 0x00000101 }, /* GL_LOAD */ - { 14570, 0x00000BF1 }, /* GL_LOGIC_OP */ - { 14582, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ - { 14599, 0x00008CA1 }, /* GL_LOWER_LEFT */ - { 14613, 0x00001909 }, /* GL_LUMINANCE */ - { 14626, 0x00008041 }, /* GL_LUMINANCE12 */ - { 14641, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ - { 14664, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ - { 14691, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ - { 14713, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ - { 14739, 0x00008041 }, /* GL_LUMINANCE12_EXT */ - { 14758, 0x00008042 }, /* GL_LUMINANCE16 */ - { 14773, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ - { 14796, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ - { 14823, 0x00008042 }, /* GL_LUMINANCE16_EXT */ - { 14842, 0x0000803F }, /* GL_LUMINANCE4 */ - { 14856, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ - { 14877, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ - { 14902, 0x0000803F }, /* GL_LUMINANCE4_EXT */ - { 14920, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ - { 14941, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ - { 14966, 0x00008040 }, /* GL_LUMINANCE8 */ - { 14980, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ - { 15001, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ - { 15026, 0x00008040 }, /* GL_LUMINANCE8_EXT */ - { 15044, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ - { 15063, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ - { 15079, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ - { 15099, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ - { 15121, 0x00000D91 }, /* GL_MAP1_INDEX */ - { 15135, 0x00000D92 }, /* GL_MAP1_NORMAL */ - { 15150, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ - { 15174, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ - { 15198, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ - { 15222, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ - { 15246, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ - { 15263, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ - { 15280, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - { 15308, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - { 15337, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - { 15366, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - { 15395, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - { 15424, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - { 15453, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - { 15482, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - { 15510, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - { 15538, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - { 15566, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - { 15594, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - { 15622, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - { 15650, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - { 15678, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - { 15706, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - { 15734, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ - { 15750, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ - { 15770, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ - { 15792, 0x00000DB1 }, /* GL_MAP2_INDEX */ - { 15806, 0x00000DB2 }, /* GL_MAP2_NORMAL */ - { 15821, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ - { 15845, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ - { 15869, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ - { 15893, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ - { 15917, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ - { 15934, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ - { 15951, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - { 15979, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - { 16008, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - { 16037, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - { 16066, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - { 16095, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - { 16124, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - { 16153, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - { 16181, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - { 16209, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - { 16237, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - { 16265, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - { 16293, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - { 16321, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ - { 16349, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - { 16377, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - { 16405, 0x00000D10 }, /* GL_MAP_COLOR */ - { 16418, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ - { 16444, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ - { 16473, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ - { 16501, 0x00000001 }, /* GL_MAP_READ_BIT */ - { 16517, 0x00000D11 }, /* GL_MAP_STENCIL */ - { 16532, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ - { 16558, 0x00000002 }, /* GL_MAP_WRITE_BIT */ - { 16575, 0x000088C0 }, /* GL_MATRIX0_ARB */ - { 16590, 0x00008630 }, /* GL_MATRIX0_NV */ - { 16604, 0x000088CA }, /* GL_MATRIX10_ARB */ - { 16620, 0x000088CB }, /* GL_MATRIX11_ARB */ - { 16636, 0x000088CC }, /* GL_MATRIX12_ARB */ - { 16652, 0x000088CD }, /* GL_MATRIX13_ARB */ - { 16668, 0x000088CE }, /* GL_MATRIX14_ARB */ - { 16684, 0x000088CF }, /* GL_MATRIX15_ARB */ - { 16700, 0x000088D0 }, /* GL_MATRIX16_ARB */ - { 16716, 0x000088D1 }, /* GL_MATRIX17_ARB */ - { 16732, 0x000088D2 }, /* GL_MATRIX18_ARB */ - { 16748, 0x000088D3 }, /* GL_MATRIX19_ARB */ - { 16764, 0x000088C1 }, /* GL_MATRIX1_ARB */ - { 16779, 0x00008631 }, /* GL_MATRIX1_NV */ - { 16793, 0x000088D4 }, /* GL_MATRIX20_ARB */ - { 16809, 0x000088D5 }, /* GL_MATRIX21_ARB */ - { 16825, 0x000088D6 }, /* GL_MATRIX22_ARB */ - { 16841, 0x000088D7 }, /* GL_MATRIX23_ARB */ - { 16857, 0x000088D8 }, /* GL_MATRIX24_ARB */ - { 16873, 0x000088D9 }, /* GL_MATRIX25_ARB */ - { 16889, 0x000088DA }, /* GL_MATRIX26_ARB */ - { 16905, 0x000088DB }, /* GL_MATRIX27_ARB */ - { 16921, 0x000088DC }, /* GL_MATRIX28_ARB */ - { 16937, 0x000088DD }, /* GL_MATRIX29_ARB */ - { 16953, 0x000088C2 }, /* GL_MATRIX2_ARB */ - { 16968, 0x00008632 }, /* GL_MATRIX2_NV */ - { 16982, 0x000088DE }, /* GL_MATRIX30_ARB */ - { 16998, 0x000088DF }, /* GL_MATRIX31_ARB */ - { 17014, 0x000088C3 }, /* GL_MATRIX3_ARB */ - { 17029, 0x00008633 }, /* GL_MATRIX3_NV */ - { 17043, 0x000088C4 }, /* GL_MATRIX4_ARB */ - { 17058, 0x00008634 }, /* GL_MATRIX4_NV */ - { 17072, 0x000088C5 }, /* GL_MATRIX5_ARB */ - { 17087, 0x00008635 }, /* GL_MATRIX5_NV */ - { 17101, 0x000088C6 }, /* GL_MATRIX6_ARB */ - { 17116, 0x00008636 }, /* GL_MATRIX6_NV */ - { 17130, 0x000088C7 }, /* GL_MATRIX7_ARB */ - { 17145, 0x00008637 }, /* GL_MATRIX7_NV */ - { 17159, 0x000088C8 }, /* GL_MATRIX8_ARB */ - { 17174, 0x000088C9 }, /* GL_MATRIX9_ARB */ - { 17189, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ - { 17215, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - { 17249, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - { 17280, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - { 17313, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - { 17344, 0x00000BA0 }, /* GL_MATRIX_MODE */ - { 17359, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ - { 17381, 0x00008008 }, /* GL_MAX */ - { 17388, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ - { 17411, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - { 17443, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ - { 17469, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - { 17502, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - { 17528, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 17562, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ - { 17581, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - { 17610, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - { 17642, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 17678, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - { 17714, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ - { 17754, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ - { 17780, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ - { 17810, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ - { 17835, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ - { 17864, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - { 17893, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ - { 17926, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ - { 17946, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ - { 17970, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ - { 17994, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ - { 18018, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ - { 18043, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ - { 18061, 0x00008008 }, /* GL_MAX_EXT */ - { 18072, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - { 18107, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ - { 18146, 0x00000D31 }, /* GL_MAX_LIGHTS */ - { 18160, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ - { 18180, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - { 18218, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - { 18247, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ - { 18271, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ - { 18299, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ - { 18322, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 18359, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 18395, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - { 18422, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - { 18451, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - { 18485, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - { 18521, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - { 18548, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - { 18580, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - { 18616, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - { 18645, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - { 18674, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ - { 18702, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - { 18740, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 18784, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 18827, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 18861, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 18900, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 18937, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 18975, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 19018, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 19061, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - { 19091, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - { 19122, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 19158, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 19194, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ - { 19224, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - { 19258, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ - { 19291, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - { 19320, 0x00008D57 }, /* GL_MAX_SAMPLES */ - { 19335, 0x00008504 }, /* GL_MAX_SHININESS_NV */ - { 19355, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ - { 19379, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 19401, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 19427, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 19454, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 19485, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 19509, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 19543, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 19563, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 19590, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 19611, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 19636, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 19661, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 19696, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 19718, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 19744, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 19766, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 19792, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 19826, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 19864, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 19897, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 19934, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 19958, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 19979, 0x00008007 }, /* GL_MIN */ - { 19986, 0x0000802E }, /* GL_MINMAX */ - { 19996, 0x0000802E }, /* GL_MINMAX_EXT */ - { 20010, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 20027, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 20048, 0x00008030 }, /* GL_MINMAX_SINK */ - { 20063, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 20082, 0x00008007 }, /* GL_MIN_EXT */ - { 20093, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 20112, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 20135, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 20158, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 20178, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 20198, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 20228, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 20256, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 20284, 0x00001700 }, /* GL_MODELVIEW */ - { 20297, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 20315, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 20334, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 20353, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 20372, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 20391, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 20410, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 20429, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 20448, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 20467, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 20486, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 20505, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 20523, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 20542, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 20561, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 20580, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 20599, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 20618, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 20637, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 20656, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 20675, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 20694, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 20713, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 20731, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 20750, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 20769, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 20787, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 20805, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 20823, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 20841, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 20859, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 20877, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 20895, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 20915, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 20942, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 20967, 0x00002100 }, /* GL_MODULATE */ - { 20979, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 20999, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 21026, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 21051, 0x00000103 }, /* GL_MULT */ - { 21059, 0x0000809D }, /* GL_MULTISAMPLE */ - { 21074, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 21094, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 21113, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 21132, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 21156, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 21179, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 21209, 0x00002A25 }, /* GL_N3F_V3F */ - { 21220, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 21240, 0x0000150E }, /* GL_NAND */ - { 21248, 0x00002600 }, /* GL_NEAREST */ - { 21259, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 21290, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 21322, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 21347, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 21373, 0x00000200 }, /* GL_NEVER */ - { 21382, 0x00001102 }, /* GL_NICEST */ - { 21392, 0x00000000 }, /* GL_NONE */ - { 21400, 0x00001505 }, /* GL_NOOP */ - { 21408, 0x00001508 }, /* GL_NOR */ - { 21415, 0x00000BA1 }, /* GL_NORMALIZE */ - { 21428, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 21444, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 21475, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 21510, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 21534, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 21557, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 21578, 0x00008511 }, /* GL_NORMAL_MAP */ - { 21592, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 21610, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 21627, 0x00000205 }, /* GL_NOTEQUAL */ - { 21639, 0x00000000 }, /* GL_NO_ERROR */ - { 21651, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 21685, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 21723, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 21755, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 21797, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 21827, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 21867, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 21898, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 21927, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 21955, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 21985, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 22002, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 22028, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 22044, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 22079, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 22101, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 22120, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 22150, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 22171, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 22199, 0x00000001 }, /* GL_ONE */ - { 22206, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 22234, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 22266, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 22294, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 22326, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 22349, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 22372, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 22395, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 22418, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 22436, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 22458, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 22480, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 22496, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 22516, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 22536, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 22554, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 22576, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 22598, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 22614, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 22634, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 22654, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 22672, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 22694, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 22716, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 22732, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 22752, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 22772, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 22793, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 22812, 0x00001507 }, /* GL_OR */ - { 22818, 0x00000A01 }, /* GL_ORDER */ - { 22827, 0x0000150D }, /* GL_OR_INVERTED */ - { 22842, 0x0000150B }, /* GL_OR_REVERSE */ - { 22856, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 22873, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 22891, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 22912, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 22932, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 22950, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 22969, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 22989, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 23009, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 23027, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 23046, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 23071, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 23095, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 23116, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 23138, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 23160, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 23185, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 23209, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 23230, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 23252, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 23274, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 23296, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 23327, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 23347, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 23372, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 23392, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 23417, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 23437, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 23462, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 23482, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 23507, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 23527, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 23552, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 23572, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 23597, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 23617, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 23642, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 23662, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 23687, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 23707, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 23732, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 23752, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 23777, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 23795, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 23816, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 23845, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 23878, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 23903, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 23926, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 23957, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 23992, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 24019, 0x00001B00 }, /* GL_POINT */ - { 24028, 0x00000000 }, /* GL_POINTS */ - { 24038, 0x00000002 }, /* GL_POINT_BIT */ - { 24051, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 24081, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 24115, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 24149, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 24184, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 24213, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 24246, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 24279, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 24313, 0x00000B11 }, /* GL_POINT_SIZE */ - { 24327, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 24353, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 24371, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 24393, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 24415, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 24438, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 24456, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 24478, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 24500, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 24523, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 24543, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 24559, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 24580, 0x00008861 }, /* GL_POINT_SPRITE */ - { 24596, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 24616, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 24645, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 24664, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 24690, 0x00000701 }, /* GL_POINT_TOKEN */ - { 24705, 0x00000009 }, /* GL_POLYGON */ - { 24716, 0x00000008 }, /* GL_POLYGON_BIT */ - { 24731, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 24747, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 24770, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 24795, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 24818, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 24841, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 24865, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 24889, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 24907, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 24930, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 24949, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 24972, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 24989, 0x00001203 }, /* GL_POSITION */ - { 25001, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 25033, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 25069, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 25102, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 25139, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 25170, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 25205, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 25237, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 25273, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 25306, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 25338, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 25374, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 25407, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 25444, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 25474, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 25508, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 25539, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 25574, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 25605, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 25640, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 25672, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 25708, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 25738, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 25772, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 25803, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 25838, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 25870, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 25901, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 25936, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 25968, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 26004, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 26033, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 26066, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 26096, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 26130, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 26169, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 26202, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 26242, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 26276, 0x00008578 }, /* GL_PREVIOUS */ - { 26288, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 26304, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 26320, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 26337, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 26358, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 26379, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 26412, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 26444, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 26467, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 26490, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 26520, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 26549, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 26577, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 26599, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 26627, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 26655, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 26677, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 26698, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 26738, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 26777, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 26807, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 26842, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 26875, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 26909, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 26948, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 26987, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 27009, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 27035, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 27059, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 27082, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 27104, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 27125, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 27146, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 27173, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 27205, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 27237, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 27272, 0x00001701 }, /* GL_PROJECTION */ - { 27286, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 27307, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 27333, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ - { 27357, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 27378, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 27397, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 27420, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 27459, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 27497, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 27517, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 27547, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 27571, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 27591, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 27621, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 27645, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 27665, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 27698, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 27724, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 27754, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 27785, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 27815, 0x00002003 }, /* GL_Q */ - { 27820, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 27845, 0x00000007 }, /* GL_QUADS */ - { 27854, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - { 27902, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 27919, 0x00000008 }, /* GL_QUAD_STRIP */ - { 27933, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 27955, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 27981, 0x00008866 }, /* GL_QUERY_RESULT */ - { 27997, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 28017, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 28043, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 28073, 0x00002002 }, /* GL_R */ - { 28078, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 28090, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 28123, 0x00000C02 }, /* GL_READ_BUFFER */ - { 28138, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 28158, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 28190, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 28214, 0x000088B8 }, /* GL_READ_ONLY */ - { 28227, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 28244, 0x000088BA }, /* GL_READ_WRITE */ - { 28258, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 28276, 0x00001903 }, /* GL_RED */ - { 28283, 0x00008016 }, /* GL_REDUCE */ - { 28293, 0x00008016 }, /* GL_REDUCE_EXT */ - { 28307, 0x00000D15 }, /* GL_RED_BIAS */ - { 28319, 0x00000D52 }, /* GL_RED_BITS */ - { 28331, 0x00000D14 }, /* GL_RED_SCALE */ - { 28344, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 28362, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 28384, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 28405, 0x00001C00 }, /* GL_RENDER */ - { 28415, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 28431, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 28458, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 28486, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 28512, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 28539, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 28559, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 28586, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 28609, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 28636, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 28668, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 28704, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 28729, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 28753, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 28782, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 28804, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 28830, 0x00001F01 }, /* GL_RENDERER */ - { 28842, 0x00000C40 }, /* GL_RENDER_MODE */ - { 28857, 0x00002901 }, /* GL_REPEAT */ - { 28867, 0x00001E01 }, /* GL_REPLACE */ - { 28878, 0x00008062 }, /* GL_REPLACE_EXT */ - { 28893, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 28916, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 28934, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 28956, 0x00000102 }, /* GL_RETURN */ - { 28966, 0x00001907 }, /* GL_RGB */ - { 28973, 0x00008052 }, /* GL_RGB10 */ - { 28982, 0x00008059 }, /* GL_RGB10_A2 */ - { 28994, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 29010, 0x00008052 }, /* GL_RGB10_EXT */ - { 29023, 0x00008053 }, /* GL_RGB12 */ - { 29032, 0x00008053 }, /* GL_RGB12_EXT */ - { 29045, 0x00008054 }, /* GL_RGB16 */ - { 29054, 0x00008054 }, /* GL_RGB16_EXT */ - { 29067, 0x0000804E }, /* GL_RGB2_EXT */ - { 29079, 0x0000804F }, /* GL_RGB4 */ - { 29087, 0x0000804F }, /* GL_RGB4_EXT */ - { 29099, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 29112, 0x00008050 }, /* GL_RGB5 */ - { 29120, 0x00008057 }, /* GL_RGB5_A1 */ - { 29131, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 29146, 0x00008050 }, /* GL_RGB5_EXT */ - { 29158, 0x00008051 }, /* GL_RGB8 */ - { 29166, 0x00008051 }, /* GL_RGB8_EXT */ - { 29178, 0x00001908 }, /* GL_RGBA */ - { 29186, 0x0000805A }, /* GL_RGBA12 */ - { 29196, 0x0000805A }, /* GL_RGBA12_EXT */ - { 29210, 0x0000805B }, /* GL_RGBA16 */ - { 29220, 0x0000805B }, /* GL_RGBA16_EXT */ - { 29234, 0x00008055 }, /* GL_RGBA2 */ - { 29243, 0x00008055 }, /* GL_RGBA2_EXT */ - { 29256, 0x00008056 }, /* GL_RGBA4 */ - { 29265, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 29284, 0x00008056 }, /* GL_RGBA4_EXT */ - { 29297, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 29311, 0x00008058 }, /* GL_RGBA8 */ - { 29320, 0x00008058 }, /* GL_RGBA8_EXT */ - { 29333, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 29348, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 29366, 0x00000C31 }, /* GL_RGBA_MODE */ - { 29379, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 29392, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 29406, 0x000083A0 }, /* GL_RGB_S3TC */ - { 29418, 0x00008573 }, /* GL_RGB_SCALE */ - { 29431, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 29448, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 29465, 0x00000407 }, /* GL_RIGHT */ - { 29474, 0x00002000 }, /* GL_S */ - { 29479, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 29493, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 29514, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 29528, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 29549, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 29563, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 29579, 0x000080A9 }, /* GL_SAMPLES */ - { 29590, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 29606, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 29621, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 29639, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 29661, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 29689, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 29721, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 29744, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 29771, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 29789, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 29812, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 29834, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 29853, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 29876, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 29902, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 29932, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 29957, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 29986, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 30001, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 30016, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 30032, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 30057, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 30097, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 30141, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 30174, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 30204, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 30236, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 30266, 0x00001C02 }, /* GL_SELECT */ - { 30276, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 30304, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 30329, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 30345, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 30372, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 30403, 0x0000150F }, /* GL_SET */ - { 30410, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 30431, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 30455, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 30470, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 30485, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 30513, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 30536, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 30566, 0x00001601 }, /* GL_SHININESS */ - { 30579, 0x00001402 }, /* GL_SHORT */ - { 30588, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 30609, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 30625, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 30645, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 30664, 0x00008C46 }, /* GL_SLUMINANCE */ - { 30678, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 30693, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 30715, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 30735, 0x00001D01 }, /* GL_SMOOTH */ - { 30745, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 30778, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 30805, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 30838, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 30865, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 30882, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 30903, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 30924, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 30939, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 30958, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 30977, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 30994, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 31015, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 31036, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 31051, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 31070, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 31089, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 31106, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 31127, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 31148, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 31163, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 31182, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 31201, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 31221, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 31239, 0x00001202 }, /* GL_SPECULAR */ - { 31251, 0x00002402 }, /* GL_SPHERE_MAP */ - { 31265, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 31280, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 31298, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 31315, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 31329, 0x00008580 }, /* GL_SRC0_RGB */ - { 31341, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 31355, 0x00008581 }, /* GL_SRC1_RGB */ - { 31367, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 31381, 0x00008582 }, /* GL_SRC2_RGB */ - { 31393, 0x00000302 }, /* GL_SRC_ALPHA */ - { 31406, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 31428, 0x00000300 }, /* GL_SRC_COLOR */ - { 31441, 0x00008C40 }, /* GL_SRGB */ - { 31449, 0x00008C41 }, /* GL_SRGB8 */ - { 31458, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 31474, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 31488, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 31506, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 31525, 0x000088E6 }, /* GL_STATIC_COPY */ - { 31540, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 31559, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 31574, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 31593, 0x000088E5 }, /* GL_STATIC_READ */ - { 31608, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 31627, 0x00001802 }, /* GL_STENCIL */ - { 31638, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 31660, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 31686, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 31707, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 31732, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 31753, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 31778, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 31810, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 31846, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 31878, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 31914, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 31934, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 31961, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 31987, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 32003, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 32025, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 32048, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 32064, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 32080, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 32097, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 32120, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 32142, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 32164, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 32186, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 32207, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 32234, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 32261, 0x00000B97 }, /* GL_STENCIL_REF */ - { 32276, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 32292, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 32321, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 32343, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 32364, 0x00000C33 }, /* GL_STEREO */ - { 32374, 0x000088E2 }, /* GL_STREAM_COPY */ - { 32389, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 32408, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 32423, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 32442, 0x000088E1 }, /* GL_STREAM_READ */ - { 32457, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 32476, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 32493, 0x000084E7 }, /* GL_SUBTRACT */ - { 32505, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 32521, 0x00002001 }, /* GL_T */ - { 32526, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 32541, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 32560, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 32576, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 32591, 0x00002A27 }, /* GL_T2F_V3F */ - { 32602, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 32621, 0x00002A28 }, /* GL_T4F_V4F */ - { 32632, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 32655, 0x00001702 }, /* GL_TEXTURE */ - { 32666, 0x000084C0 }, /* GL_TEXTURE0 */ - { 32678, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 32694, 0x000084C1 }, /* GL_TEXTURE1 */ - { 32706, 0x000084CA }, /* GL_TEXTURE10 */ - { 32719, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 32736, 0x000084CB }, /* GL_TEXTURE11 */ - { 32749, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 32766, 0x000084CC }, /* GL_TEXTURE12 */ - { 32779, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 32796, 0x000084CD }, /* GL_TEXTURE13 */ - { 32809, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 32826, 0x000084CE }, /* GL_TEXTURE14 */ - { 32839, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 32856, 0x000084CF }, /* GL_TEXTURE15 */ - { 32869, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 32886, 0x000084D0 }, /* GL_TEXTURE16 */ - { 32899, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 32916, 0x000084D1 }, /* GL_TEXTURE17 */ - { 32929, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 32946, 0x000084D2 }, /* GL_TEXTURE18 */ - { 32959, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 32976, 0x000084D3 }, /* GL_TEXTURE19 */ - { 32989, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 33006, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 33022, 0x000084C2 }, /* GL_TEXTURE2 */ - { 33034, 0x000084D4 }, /* GL_TEXTURE20 */ - { 33047, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 33064, 0x000084D5 }, /* GL_TEXTURE21 */ - { 33077, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 33094, 0x000084D6 }, /* GL_TEXTURE22 */ - { 33107, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 33124, 0x000084D7 }, /* GL_TEXTURE23 */ - { 33137, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 33154, 0x000084D8 }, /* GL_TEXTURE24 */ - { 33167, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 33184, 0x000084D9 }, /* GL_TEXTURE25 */ - { 33197, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 33214, 0x000084DA }, /* GL_TEXTURE26 */ - { 33227, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 33244, 0x000084DB }, /* GL_TEXTURE27 */ - { 33257, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 33274, 0x000084DC }, /* GL_TEXTURE28 */ - { 33287, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 33304, 0x000084DD }, /* GL_TEXTURE29 */ - { 33317, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 33334, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 33350, 0x000084C3 }, /* GL_TEXTURE3 */ - { 33362, 0x000084DE }, /* GL_TEXTURE30 */ - { 33375, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 33392, 0x000084DF }, /* GL_TEXTURE31 */ - { 33405, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 33422, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 33438, 0x000084C4 }, /* GL_TEXTURE4 */ - { 33450, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 33466, 0x000084C5 }, /* GL_TEXTURE5 */ - { 33478, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 33494, 0x000084C6 }, /* GL_TEXTURE6 */ - { 33506, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 33522, 0x000084C7 }, /* GL_TEXTURE7 */ - { 33534, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 33550, 0x000084C8 }, /* GL_TEXTURE8 */ - { 33562, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 33578, 0x000084C9 }, /* GL_TEXTURE9 */ - { 33590, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 33606, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 33620, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 33644, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 33658, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 33682, 0x0000806F }, /* GL_TEXTURE_3D */ - { 33696, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 33718, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 33744, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 33766, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 33788, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 33820, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 33842, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 33874, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 33896, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 33924, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 33956, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 33989, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 34021, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 34036, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 34057, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 34082, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 34100, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 34124, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 34155, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 34185, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 34215, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 34250, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 34281, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 34319, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 34346, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 34378, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 34412, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 34436, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 34464, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 34488, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 34516, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 34549, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 34573, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 34595, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 34617, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 34643, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 34677, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 34710, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 34747, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 34775, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 34807, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 34830, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 34868, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 34910, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 34941, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 34969, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 34999, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 35027, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 35047, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 35071, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 35102, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 35137, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 35168, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 35203, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 35234, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 35269, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 35300, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 35335, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 35366, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 35401, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 35432, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 35467, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 35484, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 35506, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 35532, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 35547, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 35568, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 35588, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 35614, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 35634, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 35651, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 35668, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 35685, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 35702, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 35727, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 35749, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 35775, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 35793, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 35819, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 35845, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 35875, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 35902, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 35927, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 35947, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 35971, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 35998, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 36025, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 36052, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 36078, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 36108, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 36130, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 36148, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 36178, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 36206, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 36234, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 36262, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 36283, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 36302, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 36324, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 36343, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 36363, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 36388, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 36412, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 36432, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 36456, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 36476, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 36499, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 36523, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 36548, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 36582, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 36599, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 36617, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 36635, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 36653, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 36673, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 36692, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 36721, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 36738, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 36764, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 36794, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 36826, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 36856, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 36890, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 36906, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 36937, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 36972, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 37000, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 37032, 0x00000004 }, /* GL_TRIANGLES */ - { 37045, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 37061, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 37082, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 37100, 0x00000001 }, /* GL_TRUE */ - { 37108, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 37128, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 37151, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 37171, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 37192, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 37214, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 37236, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 37256, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 37277, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 37294, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 37321, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 37344, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 37360, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 37387, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 37408, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 37432, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 37463, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 37487, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 37515, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 37538, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 37556, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 37586, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 37612, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 37642, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 37668, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 37692, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 37720, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 37748, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 37775, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 37807, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 37838, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 37852, 0x00002A20 }, /* GL_V2F */ - { 37859, 0x00002A21 }, /* GL_V3F */ - { 37866, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 37885, 0x00001F00 }, /* GL_VENDOR */ - { 37895, 0x00001F02 }, /* GL_VERSION */ - { 37906, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 37922, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 37946, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 37976, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 38007, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 38042, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 38066, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 38087, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 38110, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 38131, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 38158, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 38186, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 38214, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 38242, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 38270, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 38298, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 38326, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 38353, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 38380, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 38407, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 38434, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 38461, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 38488, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 38515, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 38542, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 38569, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 38607, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 38649, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 38680, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 38715, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 38749, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 38787, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 38818, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 38853, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 38881, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 38913, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 38943, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 38977, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 39005, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 39037, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 39057, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 39079, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 39108, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 39129, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 39158, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 39191, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 39223, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 39250, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 39281, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 39311, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 39328, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 39349, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 39376, 0x00000BA2 }, /* GL_VIEWPORT */ - { 39388, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 39404, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 39424, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 39455, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 39490, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 39518, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 39543, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 39570, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 39595, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 39619, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 39638, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 39652, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 39670, 0x00001506 }, /* GL_XOR */ - { 39677, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 39696, 0x00008757 }, /* GL_YCBCR_MESA */ - { 39710, 0x00000000 }, /* GL_ZERO */ - { 39718, 0x00000D16 }, /* GL_ZOOM_X */ - { 39728, 0x00000D17 }, /* GL_ZOOM_Y */ + { 1687, 0x00008A13 }, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ + { 1718, 0x000088BC }, /* GL_BUFFER_MAPPED */ + { 1735, 0x000088BC }, /* GL_BUFFER_MAPPED_ARB */ + { 1756, 0x000088BD }, /* GL_BUFFER_MAP_POINTER */ + { 1778, 0x000088BD }, /* GL_BUFFER_MAP_POINTER_ARB */ + { 1804, 0x00008A12 }, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ + { 1838, 0x00008764 }, /* GL_BUFFER_SIZE */ + { 1853, 0x00008764 }, /* GL_BUFFER_SIZE_ARB */ + { 1872, 0x00008765 }, /* GL_BUFFER_USAGE */ + { 1888, 0x00008765 }, /* GL_BUFFER_USAGE_ARB */ + { 1908, 0x0000877B }, /* GL_BUMP_ENVMAP_ATI */ + { 1927, 0x00008777 }, /* GL_BUMP_NUM_TEX_UNITS_ATI */ + { 1953, 0x00008775 }, /* GL_BUMP_ROT_MATRIX_ATI */ + { 1976, 0x00008776 }, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ + { 2004, 0x0000877C }, /* GL_BUMP_TARGET_ATI */ + { 2023, 0x00008778 }, /* GL_BUMP_TEX_UNITS_ATI */ + { 2045, 0x00001400 }, /* GL_BYTE */ + { 2053, 0x00002A24 }, /* GL_C3F_V3F */ + { 2064, 0x00002A26 }, /* GL_C4F_N3F_V3F */ + { 2079, 0x00002A22 }, /* GL_C4UB_V2F */ + { 2091, 0x00002A23 }, /* GL_C4UB_V3F */ + { 2103, 0x00000901 }, /* GL_CCW */ + { 2110, 0x00002900 }, /* GL_CLAMP */ + { 2119, 0x0000812D }, /* GL_CLAMP_TO_BORDER */ + { 2138, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */ + { 2161, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */ + { 2185, 0x0000812F }, /* GL_CLAMP_TO_EDGE */ + { 2202, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */ + { 2224, 0x00001500 }, /* GL_CLEAR */ + { 2233, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */ + { 2258, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */ + { 2287, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */ + { 2313, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ + { 2342, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */ + { 2368, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */ + { 2395, 0x00003000 }, /* GL_CLIP_PLANE0 */ + { 2410, 0x00003001 }, /* GL_CLIP_PLANE1 */ + { 2425, 0x00003002 }, /* GL_CLIP_PLANE2 */ + { 2440, 0x00003003 }, /* GL_CLIP_PLANE3 */ + { 2455, 0x00003004 }, /* GL_CLIP_PLANE4 */ + { 2470, 0x00003005 }, /* GL_CLIP_PLANE5 */ + { 2485, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ + { 2518, 0x00000A00 }, /* GL_COEFF */ + { 2527, 0x00001800 }, /* GL_COLOR */ + { 2536, 0x00008076 }, /* GL_COLOR_ARRAY */ + { 2551, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */ + { 2581, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 2615, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */ + { 2638, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */ + { 2658, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */ + { 2680, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */ + { 2700, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0 */ + { 2721, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */ + { 2746, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1 */ + { 2767, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10 */ + { 2789, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */ + { 2815, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11 */ + { 2837, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */ + { 2863, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12 */ + { 2885, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */ + { 2911, 0x00008CED }, /* GL_COLOR_ATTACHMENT13 */ + { 2933, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */ + { 2959, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14 */ + { 2981, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */ + { 3007, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15 */ + { 3029, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */ + { 3055, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */ + { 3080, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2 */ + { 3101, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */ + { 3126, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3 */ + { 3147, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */ + { 3172, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4 */ + { 3193, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */ + { 3218, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5 */ + { 3239, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */ + { 3264, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6 */ + { 3285, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */ + { 3310, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7 */ + { 3331, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */ + { 3356, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8 */ + { 3377, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */ + { 3402, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9 */ + { 3423, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */ + { 3448, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */ + { 3468, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */ + { 3489, 0x00001900 }, /* GL_COLOR_INDEX */ + { 3504, 0x00001603 }, /* GL_COLOR_INDEXES */ + { 3521, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */ + { 3539, 0x00000B57 }, /* GL_COLOR_MATERIAL */ + { 3557, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */ + { 3580, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */ + { 3608, 0x000080B1 }, /* GL_COLOR_MATRIX */ + { 3624, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */ + { 3644, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */ + { 3672, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 3704, 0x00008458 }, /* GL_COLOR_SUM */ + { 3717, 0x00008458 }, /* GL_COLOR_SUM_ARB */ + { 3734, 0x000080D0 }, /* GL_COLOR_TABLE */ + { 3749, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */ + { 3775, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */ + { 3805, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */ + { 3835, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */ + { 3855, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */ + { 3879, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */ + { 3904, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */ + { 3933, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */ + { 3962, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */ + { 3984, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */ + { 4010, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */ + { 4036, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */ + { 4062, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */ + { 4092, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */ + { 4122, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */ + { 4152, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */ + { 4186, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */ + { 4220, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ + { 4250, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */ + { 4284, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */ + { 4318, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */ + { 4342, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */ + { 4370, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */ + { 4398, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */ + { 4419, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */ + { 4444, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */ + { 4465, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */ + { 4490, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */ + { 4515, 0x00000C23 }, /* GL_COLOR_WRITEMASK */ + { 4534, 0x00008570 }, /* GL_COMBINE */ + { 4545, 0x00008503 }, /* GL_COMBINE4 */ + { 4557, 0x00008572 }, /* GL_COMBINE_ALPHA */ + { 4574, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */ + { 4595, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */ + { 4616, 0x00008570 }, /* GL_COMBINE_ARB */ + { 4631, 0x00008570 }, /* GL_COMBINE_EXT */ + { 4646, 0x00008571 }, /* GL_COMBINE_RGB */ + { 4661, 0x00008571 }, /* GL_COMBINE_RGB_ARB */ + { 4680, 0x00008571 }, /* GL_COMBINE_RGB_EXT */ + { 4699, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */ + { 4735, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */ + { 4759, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */ + { 4787, 0x00001300 }, /* GL_COMPILE */ + { 4798, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */ + { 4821, 0x00008B81 }, /* GL_COMPILE_STATUS */ + { 4839, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */ + { 4859, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */ + { 4883, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */ + { 4907, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */ + { 4935, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */ + { 4959, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */ + { 4989, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */ + { 5023, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */ + { 5051, 0x000084ED }, /* GL_COMPRESSED_RGB */ + { 5069, 0x000084EE }, /* GL_COMPRESSED_RGBA */ + { 5088, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */ + { 5111, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ + { 5140, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ + { 5173, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ + { 5206, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ + { 5239, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */ + { 5261, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */ + { 5289, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ + { 5321, 0x00008C4A }, /* GL_COMPRESSED_SLUMINANCE */ + { 5346, 0x00008C4B }, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ + { 5377, 0x00008C48 }, /* GL_COMPRESSED_SRGB */ + { 5396, 0x00008C49 }, /* GL_COMPRESSED_SRGB_ALPHA */ + { 5421, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */ + { 5451, 0x00008576 }, /* GL_CONSTANT */ + { 5463, 0x00008003 }, /* GL_CONSTANT_ALPHA */ + { 5481, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */ + { 5503, 0x00008576 }, /* GL_CONSTANT_ARB */ + { 5519, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */ + { 5543, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */ + { 5565, 0x00008001 }, /* GL_CONSTANT_COLOR */ + { 5583, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */ + { 5605, 0x00008576 }, /* GL_CONSTANT_EXT */ + { 5621, 0x00008010 }, /* GL_CONVOLUTION_1D */ + { 5639, 0x00008011 }, /* GL_CONVOLUTION_2D */ + { 5657, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ + { 5685, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ + { 5716, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ + { 5743, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ + { 5774, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ + { 5801, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ + { 5832, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ + { 5860, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ + { 5892, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ + { 5914, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ + { 5940, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ + { 5962, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ + { 5988, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ + { 6009, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ + { 6034, 0x00008862 }, /* GL_COORD_REPLACE */ + { 6051, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ + { 6072, 0x00008862 }, /* GL_COORD_REPLACE_NV */ + { 6092, 0x00001503 }, /* GL_COPY */ + { 6100, 0x0000150C }, /* GL_COPY_INVERTED */ + { 6117, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ + { 6137, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ + { 6157, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ + { 6178, 0x00000B44 }, /* GL_CULL_FACE */ + { 6191, 0x00000B45 }, /* GL_CULL_FACE_MODE */ + { 6209, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ + { 6228, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + { 6260, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + { 6295, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ + { 6316, 0x00000001 }, /* GL_CURRENT_BIT */ + { 6331, 0x00000B00 }, /* GL_CURRENT_COLOR */ + { 6348, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ + { 6369, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ + { 6395, 0x00000B01 }, /* GL_CURRENT_INDEX */ + { 6412, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ + { 6434, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ + { 6462, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ + { 6483, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + { 6517, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ + { 6550, 0x00000B02 }, /* GL_CURRENT_NORMAL */ + { 6568, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + { 6598, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ + { 6617, 0x00008865 }, /* GL_CURRENT_QUERY */ + { 6634, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ + { 6655, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ + { 6679, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ + { 6706, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ + { 6730, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ + { 6757, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ + { 6790, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + { 6824, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + { 6857, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ + { 6884, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ + { 6910, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ + { 6935, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ + { 6964, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ + { 6986, 0x00000900 }, /* GL_CW */ + { 6992, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ + { 7013, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ + { 7034, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ + { 7054, 0x00002101 }, /* GL_DECAL */ + { 7063, 0x00001E03 }, /* GL_DECR */ + { 7071, 0x00008508 }, /* GL_DECR_WRAP */ + { 7084, 0x00008508 }, /* GL_DECR_WRAP_EXT */ + { 7101, 0x00008B80 }, /* GL_DELETE_STATUS */ + { 7118, 0x00001801 }, /* GL_DEPTH */ + { 7127, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ + { 7147, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ + { 7167, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ + { 7191, 0x00000D1F }, /* GL_DEPTH_BIAS */ + { 7205, 0x00000D56 }, /* GL_DEPTH_BITS */ + { 7219, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ + { 7239, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ + { 7264, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ + { 7284, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ + { 7302, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ + { 7323, 0x00001902 }, /* GL_DEPTH_COMPONENT */ + { 7342, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ + { 7363, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ + { 7388, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ + { 7414, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ + { 7435, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ + { 7460, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ + { 7486, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ + { 7507, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ + { 7532, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ + { 7558, 0x00000B74 }, /* GL_DEPTH_FUNC */ + { 7572, 0x00000B70 }, /* GL_DEPTH_RANGE */ + { 7587, 0x00000D1E }, /* GL_DEPTH_SCALE */ + { 7602, 0x000084F9 }, /* GL_DEPTH_STENCIL */ + { 7619, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ + { 7647, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ + { 7667, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + { 7695, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + { 7723, 0x00000B71 }, /* GL_DEPTH_TEST */ + { 7737, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ + { 7759, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ + { 7785, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ + { 7804, 0x00001201 }, /* GL_DIFFUSE */ + { 7815, 0x00000BD0 }, /* GL_DITHER */ + { 7825, 0x00000A02 }, /* GL_DOMAIN */ + { 7835, 0x00001100 }, /* GL_DONT_CARE */ + { 7848, 0x000086AE }, /* GL_DOT3_RGB */ + { 7860, 0x000086AF }, /* GL_DOT3_RGBA */ + { 7873, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ + { 7890, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ + { 7907, 0x000086AE }, /* GL_DOT3_RGB_ARB */ + { 7923, 0x00008740 }, /* GL_DOT3_RGB_EXT */ + { 7939, 0x0000140A }, /* GL_DOUBLE */ + { 7949, 0x00000C32 }, /* GL_DOUBLEBUFFER */ + { 7965, 0x00000C01 }, /* GL_DRAW_BUFFER */ + { 7980, 0x00008825 }, /* GL_DRAW_BUFFER0 */ + { 7996, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ + { 8016, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ + { 8036, 0x00008826 }, /* GL_DRAW_BUFFER1 */ + { 8052, 0x0000882F }, /* GL_DRAW_BUFFER10 */ + { 8069, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ + { 8090, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ + { 8111, 0x00008830 }, /* GL_DRAW_BUFFER11 */ + { 8128, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ + { 8149, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ + { 8170, 0x00008831 }, /* GL_DRAW_BUFFER12 */ + { 8187, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ + { 8208, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ + { 8229, 0x00008832 }, /* GL_DRAW_BUFFER13 */ + { 8246, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ + { 8267, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ + { 8288, 0x00008833 }, /* GL_DRAW_BUFFER14 */ + { 8305, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ + { 8326, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ + { 8347, 0x00008834 }, /* GL_DRAW_BUFFER15 */ + { 8364, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ + { 8385, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ + { 8406, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ + { 8426, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ + { 8446, 0x00008827 }, /* GL_DRAW_BUFFER2 */ + { 8462, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ + { 8482, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ + { 8502, 0x00008828 }, /* GL_DRAW_BUFFER3 */ + { 8518, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ + { 8538, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ + { 8558, 0x00008829 }, /* GL_DRAW_BUFFER4 */ + { 8574, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ + { 8594, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ + { 8614, 0x0000882A }, /* GL_DRAW_BUFFER5 */ + { 8630, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ + { 8650, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ + { 8670, 0x0000882B }, /* GL_DRAW_BUFFER6 */ + { 8686, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ + { 8706, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ + { 8726, 0x0000882C }, /* GL_DRAW_BUFFER7 */ + { 8742, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ + { 8762, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ + { 8782, 0x0000882D }, /* GL_DRAW_BUFFER8 */ + { 8798, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ + { 8818, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ + { 8838, 0x0000882E }, /* GL_DRAW_BUFFER9 */ + { 8854, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ + { 8874, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ + { 8894, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ + { 8914, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ + { 8946, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ + { 8970, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ + { 8990, 0x00000304 }, /* GL_DST_ALPHA */ + { 9003, 0x00000306 }, /* GL_DST_COLOR */ + { 9016, 0x0000877A }, /* GL_DU8DV8_ATI */ + { 9030, 0x00008779 }, /* GL_DUDV_ATI */ + { 9042, 0x000088EA }, /* GL_DYNAMIC_COPY */ + { 9058, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ + { 9078, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ + { 9094, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ + { 9114, 0x000088E9 }, /* GL_DYNAMIC_READ */ + { 9130, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ + { 9150, 0x00000B43 }, /* GL_EDGE_FLAG */ + { 9163, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ + { 9182, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + { 9216, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ + { 9254, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ + { 9281, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + { 9307, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ + { 9331, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + { 9363, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ + { 9399, 0x00001600 }, /* GL_EMISSION */ + { 9411, 0x00002000 }, /* GL_ENABLE_BIT */ + { 9425, 0x00000202 }, /* GL_EQUAL */ + { 9434, 0x00001509 }, /* GL_EQUIV */ + { 9443, 0x00010000 }, /* GL_EVAL_BIT */ + { 9455, 0x00000800 }, /* GL_EXP */ + { 9462, 0x00000801 }, /* GL_EXP2 */ + { 9470, 0x00001F03 }, /* GL_EXTENSIONS */ + { 9484, 0x00002400 }, /* GL_EYE_LINEAR */ + { 9498, 0x00002502 }, /* GL_EYE_PLANE */ + { 9511, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ + { 9536, 0x0000855B }, /* GL_EYE_RADIAL_NV */ + { 9553, 0x00000000 }, /* GL_FALSE */ + { 9562, 0x00001101 }, /* GL_FASTEST */ + { 9573, 0x00001C01 }, /* GL_FEEDBACK */ + { 9585, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ + { 9612, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ + { 9636, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ + { 9660, 0x00001B02 }, /* GL_FILL */ + { 9668, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ + { 9699, 0x00001D00 }, /* GL_FLAT */ + { 9707, 0x00001406 }, /* GL_FLOAT */ + { 9716, 0x00008B5A }, /* GL_FLOAT_MAT2 */ + { 9730, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ + { 9748, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ + { 9764, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ + { 9780, 0x00008B5B }, /* GL_FLOAT_MAT3 */ + { 9794, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ + { 9812, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ + { 9828, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ + { 9844, 0x00008B5C }, /* GL_FLOAT_MAT4 */ + { 9858, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ + { 9876, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ + { 9892, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ + { 9908, 0x00008B50 }, /* GL_FLOAT_VEC2 */ + { 9922, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ + { 9940, 0x00008B51 }, /* GL_FLOAT_VEC3 */ + { 9954, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ + { 9972, 0x00008B52 }, /* GL_FLOAT_VEC4 */ + { 9986, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ + { 10004, 0x00000B60 }, /* GL_FOG */ + { 10011, 0x00000080 }, /* GL_FOG_BIT */ + { 10022, 0x00000B66 }, /* GL_FOG_COLOR */ + { 10035, 0x00008451 }, /* GL_FOG_COORD */ + { 10048, 0x00008451 }, /* GL_FOG_COORDINATE */ + { 10066, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ + { 10090, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + { 10129, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ + { 10172, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + { 10204, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + { 10235, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + { 10264, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ + { 10289, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ + { 10308, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ + { 10342, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ + { 10369, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ + { 10395, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ + { 10419, 0x00008450 }, /* GL_FOG_COORD_SRC */ + { 10436, 0x00000B62 }, /* GL_FOG_DENSITY */ + { 10451, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ + { 10475, 0x00000B64 }, /* GL_FOG_END */ + { 10486, 0x00000C54 }, /* GL_FOG_HINT */ + { 10498, 0x00000B61 }, /* GL_FOG_INDEX */ + { 10511, 0x00000B65 }, /* GL_FOG_MODE */ + { 10523, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ + { 10542, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ + { 10567, 0x00000B63 }, /* GL_FOG_START */ + { 10580, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ + { 10598, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ + { 10622, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ + { 10641, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ + { 10664, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + { 10699, 0x00008D40 }, /* GL_FRAMEBUFFER */ + { 10714, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + { 10751, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + { 10787, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + { 10828, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + { 10869, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + { 10906, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + { 10943, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + { 10981, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ + { 11023, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + { 11061, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ + { 11103, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + { 11138, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + { 11177, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ + { 11226, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + { 11274, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ + { 11326, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + { 11366, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ + { 11410, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + { 11450, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ + { 11494, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ + { 11521, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ + { 11545, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ + { 11573, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ + { 11596, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ + { 11615, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + { 11652, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ + { 11693, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + { 11734, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ + { 11776, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + { 11827, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + { 11865, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + { 11910, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ + { 11959, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + { 11997, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ + { 12039, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + { 12071, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ + { 12096, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ + { 12123, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ + { 12154, 0x00000404 }, /* GL_FRONT */ + { 12163, 0x00000408 }, /* GL_FRONT_AND_BACK */ + { 12181, 0x00000B46 }, /* GL_FRONT_FACE */ + { 12195, 0x00000400 }, /* GL_FRONT_LEFT */ + { 12209, 0x00000401 }, /* GL_FRONT_RIGHT */ + { 12224, 0x00008006 }, /* GL_FUNC_ADD */ + { 12236, 0x00008006 }, /* GL_FUNC_ADD_EXT */ + { 12252, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ + { 12277, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ + { 12306, 0x0000800A }, /* GL_FUNC_SUBTRACT */ + { 12323, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ + { 12344, 0x00008191 }, /* GL_GENERATE_MIPMAP */ + { 12363, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ + { 12387, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ + { 12416, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ + { 12440, 0x00000206 }, /* GL_GEQUAL */ + { 12450, 0x00000204 }, /* GL_GREATER */ + { 12461, 0x00001904 }, /* GL_GREEN */ + { 12470, 0x00000D19 }, /* GL_GREEN_BIAS */ + { 12484, 0x00000D53 }, /* GL_GREEN_BITS */ + { 12498, 0x00000D18 }, /* GL_GREEN_SCALE */ + { 12513, 0x00008000 }, /* GL_HINT_BIT */ + { 12525, 0x00008024 }, /* GL_HISTOGRAM */ + { 12538, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ + { 12562, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ + { 12590, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ + { 12613, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ + { 12640, 0x00008024 }, /* GL_HISTOGRAM_EXT */ + { 12657, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ + { 12677, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ + { 12701, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ + { 12725, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ + { 12753, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + { 12781, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ + { 12813, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ + { 12835, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ + { 12861, 0x0000802D }, /* GL_HISTOGRAM_SINK */ + { 12879, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ + { 12901, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ + { 12920, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ + { 12943, 0x0000862A }, /* GL_IDENTITY_NV */ + { 12958, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ + { 12978, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ + { 13018, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ + { 13056, 0x00001E02 }, /* GL_INCR */ + { 13064, 0x00008507 }, /* GL_INCR_WRAP */ + { 13077, 0x00008507 }, /* GL_INCR_WRAP_EXT */ + { 13094, 0x00008222 }, /* GL_INDEX */ + { 13103, 0x00008077 }, /* GL_INDEX_ARRAY */ + { 13118, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + { 13148, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ + { 13182, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ + { 13205, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ + { 13227, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ + { 13247, 0x00000D51 }, /* GL_INDEX_BITS */ + { 13261, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ + { 13282, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ + { 13300, 0x00000C30 }, /* GL_INDEX_MODE */ + { 13314, 0x00000D13 }, /* GL_INDEX_OFFSET */ + { 13330, 0x00000D12 }, /* GL_INDEX_SHIFT */ + { 13345, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ + { 13364, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ + { 13383, 0x00001404 }, /* GL_INT */ + { 13390, 0x00008049 }, /* GL_INTENSITY */ + { 13403, 0x0000804C }, /* GL_INTENSITY12 */ + { 13418, 0x0000804C }, /* GL_INTENSITY12_EXT */ + { 13437, 0x0000804D }, /* GL_INTENSITY16 */ + { 13452, 0x0000804D }, /* GL_INTENSITY16_EXT */ + { 13471, 0x0000804A }, /* GL_INTENSITY4 */ + { 13485, 0x0000804A }, /* GL_INTENSITY4_EXT */ + { 13503, 0x0000804B }, /* GL_INTENSITY8 */ + { 13517, 0x0000804B }, /* GL_INTENSITY8_EXT */ + { 13535, 0x00008049 }, /* GL_INTENSITY_EXT */ + { 13552, 0x00008575 }, /* GL_INTERPOLATE */ + { 13567, 0x00008575 }, /* GL_INTERPOLATE_ARB */ + { 13586, 0x00008575 }, /* GL_INTERPOLATE_EXT */ + { 13605, 0x00008B53 }, /* GL_INT_VEC2 */ + { 13617, 0x00008B53 }, /* GL_INT_VEC2_ARB */ + { 13633, 0x00008B54 }, /* GL_INT_VEC3 */ + { 13645, 0x00008B54 }, /* GL_INT_VEC3_ARB */ + { 13661, 0x00008B55 }, /* GL_INT_VEC4 */ + { 13673, 0x00008B55 }, /* GL_INT_VEC4_ARB */ + { 13689, 0x00000500 }, /* GL_INVALID_ENUM */ + { 13705, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + { 13738, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ + { 13775, 0x00000502 }, /* GL_INVALID_OPERATION */ + { 13796, 0x00000501 }, /* GL_INVALID_VALUE */ + { 13813, 0x0000862B }, /* GL_INVERSE_NV */ + { 13827, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ + { 13851, 0x0000150A }, /* GL_INVERT */ + { 13861, 0x00001E00 }, /* GL_KEEP */ + { 13869, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ + { 13899, 0x00000406 }, /* GL_LEFT */ + { 13907, 0x00000203 }, /* GL_LEQUAL */ + { 13917, 0x00000201 }, /* GL_LESS */ + { 13925, 0x00004000 }, /* GL_LIGHT0 */ + { 13935, 0x00004001 }, /* GL_LIGHT1 */ + { 13945, 0x00004002 }, /* GL_LIGHT2 */ + { 13955, 0x00004003 }, /* GL_LIGHT3 */ + { 13965, 0x00004004 }, /* GL_LIGHT4 */ + { 13975, 0x00004005 }, /* GL_LIGHT5 */ + { 13985, 0x00004006 }, /* GL_LIGHT6 */ + { 13995, 0x00004007 }, /* GL_LIGHT7 */ + { 14005, 0x00000B50 }, /* GL_LIGHTING */ + { 14017, 0x00000040 }, /* GL_LIGHTING_BIT */ + { 14033, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ + { 14056, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + { 14085, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ + { 14118, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + { 14146, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ + { 14170, 0x00001B01 }, /* GL_LINE */ + { 14178, 0x00002601 }, /* GL_LINEAR */ + { 14188, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ + { 14210, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + { 14240, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + { 14271, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ + { 14295, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ + { 14320, 0x00000001 }, /* GL_LINES */ + { 14329, 0x00000004 }, /* GL_LINE_BIT */ + { 14341, 0x00000002 }, /* GL_LINE_LOOP */ + { 14354, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ + { 14374, 0x00000B20 }, /* GL_LINE_SMOOTH */ + { 14389, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ + { 14409, 0x00000B24 }, /* GL_LINE_STIPPLE */ + { 14425, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ + { 14449, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ + { 14472, 0x00000003 }, /* GL_LINE_STRIP */ + { 14486, 0x00000702 }, /* GL_LINE_TOKEN */ + { 14500, 0x00000B21 }, /* GL_LINE_WIDTH */ + { 14514, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ + { 14540, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ + { 14560, 0x00008B82 }, /* GL_LINK_STATUS */ + { 14575, 0x00000B32 }, /* GL_LIST_BASE */ + { 14588, 0x00020000 }, /* GL_LIST_BIT */ + { 14600, 0x00000B33 }, /* GL_LIST_INDEX */ + { 14614, 0x00000B30 }, /* GL_LIST_MODE */ + { 14627, 0x00000101 }, /* GL_LOAD */ + { 14635, 0x00000BF1 }, /* GL_LOGIC_OP */ + { 14647, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ + { 14664, 0x00008CA1 }, /* GL_LOWER_LEFT */ + { 14678, 0x00001909 }, /* GL_LUMINANCE */ + { 14691, 0x00008041 }, /* GL_LUMINANCE12 */ + { 14706, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ + { 14729, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ + { 14756, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ + { 14778, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ + { 14804, 0x00008041 }, /* GL_LUMINANCE12_EXT */ + { 14823, 0x00008042 }, /* GL_LUMINANCE16 */ + { 14838, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ + { 14861, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ + { 14888, 0x00008042 }, /* GL_LUMINANCE16_EXT */ + { 14907, 0x0000803F }, /* GL_LUMINANCE4 */ + { 14921, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ + { 14942, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ + { 14967, 0x0000803F }, /* GL_LUMINANCE4_EXT */ + { 14985, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ + { 15006, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ + { 15031, 0x00008040 }, /* GL_LUMINANCE8 */ + { 15045, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ + { 15066, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ + { 15091, 0x00008040 }, /* GL_LUMINANCE8_EXT */ + { 15109, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ + { 15128, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ + { 15144, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ + { 15164, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ + { 15186, 0x00000D91 }, /* GL_MAP1_INDEX */ + { 15200, 0x00000D92 }, /* GL_MAP1_NORMAL */ + { 15215, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ + { 15239, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ + { 15263, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ + { 15287, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ + { 15311, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ + { 15328, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ + { 15345, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + { 15373, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + { 15402, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + { 15431, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + { 15460, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + { 15489, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + { 15518, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + { 15547, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + { 15575, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + { 15603, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + { 15631, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + { 15659, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + { 15687, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + { 15715, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + { 15743, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + { 15771, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + { 15799, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ + { 15815, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ + { 15835, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ + { 15857, 0x00000DB1 }, /* GL_MAP2_INDEX */ + { 15871, 0x00000DB2 }, /* GL_MAP2_NORMAL */ + { 15886, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ + { 15910, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ + { 15934, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ + { 15958, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ + { 15982, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ + { 15999, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ + { 16016, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + { 16044, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + { 16073, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + { 16102, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + { 16131, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + { 16160, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + { 16189, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + { 16218, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + { 16246, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + { 16274, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + { 16302, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + { 16330, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + { 16358, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + { 16386, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ + { 16414, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + { 16442, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + { 16470, 0x00000D10 }, /* GL_MAP_COLOR */ + { 16483, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ + { 16509, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ + { 16538, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ + { 16566, 0x00000001 }, /* GL_MAP_READ_BIT */ + { 16582, 0x00000D11 }, /* GL_MAP_STENCIL */ + { 16597, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ + { 16623, 0x00000002 }, /* GL_MAP_WRITE_BIT */ + { 16640, 0x000088C0 }, /* GL_MATRIX0_ARB */ + { 16655, 0x00008630 }, /* GL_MATRIX0_NV */ + { 16669, 0x000088CA }, /* GL_MATRIX10_ARB */ + { 16685, 0x000088CB }, /* GL_MATRIX11_ARB */ + { 16701, 0x000088CC }, /* GL_MATRIX12_ARB */ + { 16717, 0x000088CD }, /* GL_MATRIX13_ARB */ + { 16733, 0x000088CE }, /* GL_MATRIX14_ARB */ + { 16749, 0x000088CF }, /* GL_MATRIX15_ARB */ + { 16765, 0x000088D0 }, /* GL_MATRIX16_ARB */ + { 16781, 0x000088D1 }, /* GL_MATRIX17_ARB */ + { 16797, 0x000088D2 }, /* GL_MATRIX18_ARB */ + { 16813, 0x000088D3 }, /* GL_MATRIX19_ARB */ + { 16829, 0x000088C1 }, /* GL_MATRIX1_ARB */ + { 16844, 0x00008631 }, /* GL_MATRIX1_NV */ + { 16858, 0x000088D4 }, /* GL_MATRIX20_ARB */ + { 16874, 0x000088D5 }, /* GL_MATRIX21_ARB */ + { 16890, 0x000088D6 }, /* GL_MATRIX22_ARB */ + { 16906, 0x000088D7 }, /* GL_MATRIX23_ARB */ + { 16922, 0x000088D8 }, /* GL_MATRIX24_ARB */ + { 16938, 0x000088D9 }, /* GL_MATRIX25_ARB */ + { 16954, 0x000088DA }, /* GL_MATRIX26_ARB */ + { 16970, 0x000088DB }, /* GL_MATRIX27_ARB */ + { 16986, 0x000088DC }, /* GL_MATRIX28_ARB */ + { 17002, 0x000088DD }, /* GL_MATRIX29_ARB */ + { 17018, 0x000088C2 }, /* GL_MATRIX2_ARB */ + { 17033, 0x00008632 }, /* GL_MATRIX2_NV */ + { 17047, 0x000088DE }, /* GL_MATRIX30_ARB */ + { 17063, 0x000088DF }, /* GL_MATRIX31_ARB */ + { 17079, 0x000088C3 }, /* GL_MATRIX3_ARB */ + { 17094, 0x00008633 }, /* GL_MATRIX3_NV */ + { 17108, 0x000088C4 }, /* GL_MATRIX4_ARB */ + { 17123, 0x00008634 }, /* GL_MATRIX4_NV */ + { 17137, 0x000088C5 }, /* GL_MATRIX5_ARB */ + { 17152, 0x00008635 }, /* GL_MATRIX5_NV */ + { 17166, 0x000088C6 }, /* GL_MATRIX6_ARB */ + { 17181, 0x00008636 }, /* GL_MATRIX6_NV */ + { 17195, 0x000088C7 }, /* GL_MATRIX7_ARB */ + { 17210, 0x00008637 }, /* GL_MATRIX7_NV */ + { 17224, 0x000088C8 }, /* GL_MATRIX8_ARB */ + { 17239, 0x000088C9 }, /* GL_MATRIX9_ARB */ + { 17254, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ + { 17280, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + { 17314, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + { 17345, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + { 17378, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + { 17409, 0x00000BA0 }, /* GL_MATRIX_MODE */ + { 17424, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ + { 17446, 0x00008008 }, /* GL_MAX */ + { 17453, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ + { 17476, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ + { 17508, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ + { 17534, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + { 17567, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + { 17593, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 17627, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ + { 17646, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + { 17675, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + { 17707, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 17743, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + { 17779, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ + { 17819, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ + { 17845, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ + { 17875, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ + { 17900, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ + { 17929, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + { 17958, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ + { 17991, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ + { 18011, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ + { 18035, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ + { 18059, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ + { 18083, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ + { 18108, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ + { 18126, 0x00008008 }, /* GL_MAX_EXT */ + { 18137, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + { 18172, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ + { 18211, 0x00000D31 }, /* GL_MAX_LIGHTS */ + { 18225, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ + { 18245, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + { 18283, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + { 18312, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ + { 18336, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ + { 18364, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ + { 18387, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 18424, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 18460, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + { 18487, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + { 18516, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + { 18550, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ + { 18586, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + { 18613, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + { 18645, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + { 18681, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + { 18710, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + { 18739, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ + { 18767, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + { 18805, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 18849, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 18892, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 18926, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 18965, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 19002, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 19040, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 19083, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 19126, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + { 19156, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + { 19187, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 19223, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 19259, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ + { 19289, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + { 19323, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ + { 19356, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + { 19385, 0x00008D57 }, /* GL_MAX_SAMPLES */ + { 19400, 0x00008504 }, /* GL_MAX_SHININESS_NV */ + { 19420, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ + { 19444, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ + { 19466, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ + { 19492, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + { 19519, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ + { 19550, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ + { 19574, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + { 19608, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ + { 19628, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ + { 19655, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ + { 19676, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ + { 19701, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ + { 19726, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ + { 19761, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ + { 19783, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ + { 19809, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ + { 19831, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ + { 19857, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + { 19891, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ + { 19929, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + { 19962, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ + { 19999, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ + { 20023, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ + { 20044, 0x00008007 }, /* GL_MIN */ + { 20051, 0x0000802E }, /* GL_MINMAX */ + { 20061, 0x0000802E }, /* GL_MINMAX_EXT */ + { 20075, 0x0000802F }, /* GL_MINMAX_FORMAT */ + { 20092, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ + { 20113, 0x00008030 }, /* GL_MINMAX_SINK */ + { 20128, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ + { 20147, 0x00008007 }, /* GL_MIN_EXT */ + { 20158, 0x00008370 }, /* GL_MIRRORED_REPEAT */ + { 20177, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ + { 20200, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ + { 20223, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ + { 20243, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ + { 20263, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + { 20293, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ + { 20321, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + { 20349, 0x00001700 }, /* GL_MODELVIEW */ + { 20362, 0x00001700 }, /* GL_MODELVIEW0_ARB */ + { 20380, 0x0000872A }, /* GL_MODELVIEW10_ARB */ + { 20399, 0x0000872B }, /* GL_MODELVIEW11_ARB */ + { 20418, 0x0000872C }, /* GL_MODELVIEW12_ARB */ + { 20437, 0x0000872D }, /* GL_MODELVIEW13_ARB */ + { 20456, 0x0000872E }, /* GL_MODELVIEW14_ARB */ + { 20475, 0x0000872F }, /* GL_MODELVIEW15_ARB */ + { 20494, 0x00008730 }, /* GL_MODELVIEW16_ARB */ + { 20513, 0x00008731 }, /* GL_MODELVIEW17_ARB */ + { 20532, 0x00008732 }, /* GL_MODELVIEW18_ARB */ + { 20551, 0x00008733 }, /* GL_MODELVIEW19_ARB */ + { 20570, 0x0000850A }, /* GL_MODELVIEW1_ARB */ + { 20588, 0x00008734 }, /* GL_MODELVIEW20_ARB */ + { 20607, 0x00008735 }, /* GL_MODELVIEW21_ARB */ + { 20626, 0x00008736 }, /* GL_MODELVIEW22_ARB */ + { 20645, 0x00008737 }, /* GL_MODELVIEW23_ARB */ + { 20664, 0x00008738 }, /* GL_MODELVIEW24_ARB */ + { 20683, 0x00008739 }, /* GL_MODELVIEW25_ARB */ + { 20702, 0x0000873A }, /* GL_MODELVIEW26_ARB */ + { 20721, 0x0000873B }, /* GL_MODELVIEW27_ARB */ + { 20740, 0x0000873C }, /* GL_MODELVIEW28_ARB */ + { 20759, 0x0000873D }, /* GL_MODELVIEW29_ARB */ + { 20778, 0x00008722 }, /* GL_MODELVIEW2_ARB */ + { 20796, 0x0000873E }, /* GL_MODELVIEW30_ARB */ + { 20815, 0x0000873F }, /* GL_MODELVIEW31_ARB */ + { 20834, 0x00008723 }, /* GL_MODELVIEW3_ARB */ + { 20852, 0x00008724 }, /* GL_MODELVIEW4_ARB */ + { 20870, 0x00008725 }, /* GL_MODELVIEW5_ARB */ + { 20888, 0x00008726 }, /* GL_MODELVIEW6_ARB */ + { 20906, 0x00008727 }, /* GL_MODELVIEW7_ARB */ + { 20924, 0x00008728 }, /* GL_MODELVIEW8_ARB */ + { 20942, 0x00008729 }, /* GL_MODELVIEW9_ARB */ + { 20960, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ + { 20980, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ + { 21007, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ + { 21032, 0x00002100 }, /* GL_MODULATE */ + { 21044, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ + { 21064, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ + { 21091, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ + { 21116, 0x00000103 }, /* GL_MULT */ + { 21124, 0x0000809D }, /* GL_MULTISAMPLE */ + { 21139, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ + { 21159, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ + { 21178, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ + { 21197, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ + { 21221, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ + { 21244, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + { 21274, 0x00002A25 }, /* GL_N3F_V3F */ + { 21285, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ + { 21305, 0x0000150E }, /* GL_NAND */ + { 21313, 0x00002600 }, /* GL_NEAREST */ + { 21324, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + { 21355, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + { 21387, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ + { 21412, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ + { 21438, 0x00000200 }, /* GL_NEVER */ + { 21447, 0x00001102 }, /* GL_NICEST */ + { 21457, 0x00000000 }, /* GL_NONE */ + { 21465, 0x00001505 }, /* GL_NOOP */ + { 21473, 0x00001508 }, /* GL_NOR */ + { 21480, 0x00000BA1 }, /* GL_NORMALIZE */ + { 21493, 0x00008075 }, /* GL_NORMAL_ARRAY */ + { 21509, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + { 21540, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ + { 21575, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ + { 21599, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ + { 21622, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ + { 21643, 0x00008511 }, /* GL_NORMAL_MAP */ + { 21657, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ + { 21675, 0x00008511 }, /* GL_NORMAL_MAP_NV */ + { 21692, 0x00000205 }, /* GL_NOTEQUAL */ + { 21704, 0x00000000 }, /* GL_NO_ERROR */ + { 21716, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + { 21750, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ + { 21788, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ + { 21820, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ + { 21862, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ + { 21892, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ + { 21932, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ + { 21963, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ + { 21992, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ + { 22020, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ + { 22050, 0x00002401 }, /* GL_OBJECT_LINEAR */ + { 22067, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ + { 22093, 0x00002501 }, /* GL_OBJECT_PLANE */ + { 22109, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ + { 22144, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ + { 22166, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ + { 22185, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ + { 22215, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ + { 22236, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ + { 22264, 0x00000001 }, /* GL_ONE */ + { 22271, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + { 22299, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ + { 22331, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ + { 22359, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ + { 22391, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ + { 22414, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ + { 22437, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ + { 22460, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ + { 22483, 0x00008598 }, /* GL_OPERAND0_ALPHA */ + { 22501, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ + { 22523, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ + { 22545, 0x00008590 }, /* GL_OPERAND0_RGB */ + { 22561, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ + { 22581, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ + { 22601, 0x00008599 }, /* GL_OPERAND1_ALPHA */ + { 22619, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ + { 22641, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ + { 22663, 0x00008591 }, /* GL_OPERAND1_RGB */ + { 22679, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ + { 22699, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ + { 22719, 0x0000859A }, /* GL_OPERAND2_ALPHA */ + { 22737, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ + { 22759, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ + { 22781, 0x00008592 }, /* GL_OPERAND2_RGB */ + { 22797, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ + { 22817, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ + { 22837, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ + { 22858, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ + { 22877, 0x00001507 }, /* GL_OR */ + { 22883, 0x00000A01 }, /* GL_ORDER */ + { 22892, 0x0000150D }, /* GL_OR_INVERTED */ + { 22907, 0x0000150B }, /* GL_OR_REVERSE */ + { 22921, 0x00000505 }, /* GL_OUT_OF_MEMORY */ + { 22938, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ + { 22956, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ + { 22977, 0x00008758 }, /* GL_PACK_INVERT_MESA */ + { 22997, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ + { 23015, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ + { 23034, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ + { 23054, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ + { 23074, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ + { 23092, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ + { 23111, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ + { 23136, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ + { 23160, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ + { 23181, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ + { 23203, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ + { 23225, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ + { 23250, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ + { 23274, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ + { 23295, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ + { 23317, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ + { 23339, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ + { 23361, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ + { 23392, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ + { 23412, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + { 23437, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ + { 23457, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + { 23482, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ + { 23502, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + { 23527, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ + { 23547, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + { 23572, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ + { 23592, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + { 23617, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ + { 23637, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + { 23662, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ + { 23682, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + { 23707, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ + { 23727, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + { 23752, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ + { 23772, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + { 23797, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ + { 23817, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + { 23842, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ + { 23860, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ + { 23881, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ + { 23910, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ + { 23943, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ + { 23968, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ + { 23991, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + { 24022, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ + { 24057, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ + { 24084, 0x00001B00 }, /* GL_POINT */ + { 24093, 0x00000000 }, /* GL_POINTS */ + { 24103, 0x00000002 }, /* GL_POINT_BIT */ + { 24116, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ + { 24146, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ + { 24180, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ + { 24214, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ + { 24249, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ + { 24278, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ + { 24311, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ + { 24344, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ + { 24378, 0x00000B11 }, /* GL_POINT_SIZE */ + { 24392, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ + { 24418, 0x00008127 }, /* GL_POINT_SIZE_MAX */ + { 24436, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ + { 24458, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ + { 24480, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ + { 24503, 0x00008126 }, /* GL_POINT_SIZE_MIN */ + { 24521, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ + { 24543, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ + { 24565, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ + { 24588, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ + { 24608, 0x00000B10 }, /* GL_POINT_SMOOTH */ + { 24624, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ + { 24645, 0x00008861 }, /* GL_POINT_SPRITE */ + { 24661, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ + { 24681, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ + { 24710, 0x00008861 }, /* GL_POINT_SPRITE_NV */ + { 24729, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ + { 24755, 0x00000701 }, /* GL_POINT_TOKEN */ + { 24770, 0x00000009 }, /* GL_POLYGON */ + { 24781, 0x00000008 }, /* GL_POLYGON_BIT */ + { 24796, 0x00000B40 }, /* GL_POLYGON_MODE */ + { 24812, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ + { 24835, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ + { 24860, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ + { 24883, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ + { 24906, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ + { 24930, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ + { 24954, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ + { 24972, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ + { 24995, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ + { 25014, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ + { 25037, 0x00000703 }, /* GL_POLYGON_TOKEN */ + { 25054, 0x00001203 }, /* GL_POSITION */ + { 25066, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + { 25098, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ + { 25134, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + { 25167, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ + { 25204, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + { 25235, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ + { 25270, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + { 25302, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ + { 25338, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + { 25371, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + { 25403, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ + { 25439, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + { 25472, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ + { 25509, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + { 25539, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ + { 25573, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + { 25604, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ + { 25639, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + { 25670, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ + { 25705, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + { 25737, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ + { 25773, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + { 25803, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ + { 25837, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + { 25868, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ + { 25903, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + { 25935, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + { 25966, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ + { 26001, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + { 26033, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ + { 26069, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ + { 26098, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ + { 26131, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ + { 26161, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ + { 26195, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + { 26234, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + { 26267, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + { 26307, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + { 26341, 0x00008578 }, /* GL_PREVIOUS */ + { 26353, 0x00008578 }, /* GL_PREVIOUS_ARB */ + { 26369, 0x00008578 }, /* GL_PREVIOUS_EXT */ + { 26385, 0x00008577 }, /* GL_PRIMARY_COLOR */ + { 26402, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ + { 26423, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ + { 26444, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 26477, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 26509, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ + { 26532, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ + { 26555, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ + { 26585, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ + { 26614, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ + { 26642, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ + { 26664, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + { 26692, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + { 26720, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ + { 26742, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ + { 26763, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 26803, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 26842, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 26872, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 26907, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 26940, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 26974, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 27013, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 27052, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ + { 27074, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ + { 27100, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ + { 27124, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ + { 27147, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ + { 27169, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ + { 27190, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ + { 27211, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ + { 27238, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 27270, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 27302, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + { 27337, 0x00001701 }, /* GL_PROJECTION */ + { 27351, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ + { 27372, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ + { 27398, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ + { 27422, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ + { 27443, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ + { 27462, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ + { 27485, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + { 27524, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + { 27562, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ + { 27582, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + { 27612, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ + { 27636, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ + { 27656, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + { 27686, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ + { 27710, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ + { 27730, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + { 27763, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ + { 27789, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ + { 27819, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + { 27850, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ + { 27880, 0x00002003 }, /* GL_Q */ + { 27885, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ + { 27910, 0x00000007 }, /* GL_QUADS */ + { 27919, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + { 27967, 0x00008614 }, /* GL_QUAD_MESH_SUN */ + { 27984, 0x00000008 }, /* GL_QUAD_STRIP */ + { 27998, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ + { 28020, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ + { 28046, 0x00008866 }, /* GL_QUERY_RESULT */ + { 28062, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ + { 28082, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ + { 28108, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ + { 28138, 0x00002002 }, /* GL_R */ + { 28143, 0x00002A10 }, /* GL_R3_G3_B2 */ + { 28155, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + { 28188, 0x00000C02 }, /* GL_READ_BUFFER */ + { 28203, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ + { 28223, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + { 28255, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ + { 28279, 0x000088B8 }, /* GL_READ_ONLY */ + { 28292, 0x000088B8 }, /* GL_READ_ONLY_ARB */ + { 28309, 0x000088BA }, /* GL_READ_WRITE */ + { 28323, 0x000088BA }, /* GL_READ_WRITE_ARB */ + { 28341, 0x00001903 }, /* GL_RED */ + { 28348, 0x00008016 }, /* GL_REDUCE */ + { 28358, 0x00008016 }, /* GL_REDUCE_EXT */ + { 28372, 0x00000D15 }, /* GL_RED_BIAS */ + { 28384, 0x00000D52 }, /* GL_RED_BITS */ + { 28396, 0x00000D14 }, /* GL_RED_SCALE */ + { 28409, 0x00008512 }, /* GL_REFLECTION_MAP */ + { 28427, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ + { 28449, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ + { 28470, 0x00001C00 }, /* GL_RENDER */ + { 28480, 0x00008D41 }, /* GL_RENDERBUFFER */ + { 28496, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ + { 28523, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ + { 28551, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ + { 28577, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ + { 28604, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ + { 28624, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ + { 28651, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ + { 28674, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ + { 28701, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + { 28733, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ + { 28769, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ + { 28794, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ + { 28818, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ + { 28847, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ + { 28869, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ + { 28895, 0x00001F01 }, /* GL_RENDERER */ + { 28907, 0x00000C40 }, /* GL_RENDER_MODE */ + { 28922, 0x00002901 }, /* GL_REPEAT */ + { 28932, 0x00001E01 }, /* GL_REPLACE */ + { 28943, 0x00008062 }, /* GL_REPLACE_EXT */ + { 28958, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ + { 28981, 0x0000803A }, /* GL_RESCALE_NORMAL */ + { 28999, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ + { 29021, 0x00000102 }, /* GL_RETURN */ + { 29031, 0x00001907 }, /* GL_RGB */ + { 29038, 0x00008052 }, /* GL_RGB10 */ + { 29047, 0x00008059 }, /* GL_RGB10_A2 */ + { 29059, 0x00008059 }, /* GL_RGB10_A2_EXT */ + { 29075, 0x00008052 }, /* GL_RGB10_EXT */ + { 29088, 0x00008053 }, /* GL_RGB12 */ + { 29097, 0x00008053 }, /* GL_RGB12_EXT */ + { 29110, 0x00008054 }, /* GL_RGB16 */ + { 29119, 0x00008054 }, /* GL_RGB16_EXT */ + { 29132, 0x0000804E }, /* GL_RGB2_EXT */ + { 29144, 0x0000804F }, /* GL_RGB4 */ + { 29152, 0x0000804F }, /* GL_RGB4_EXT */ + { 29164, 0x000083A1 }, /* GL_RGB4_S3TC */ + { 29177, 0x00008050 }, /* GL_RGB5 */ + { 29185, 0x00008057 }, /* GL_RGB5_A1 */ + { 29196, 0x00008057 }, /* GL_RGB5_A1_EXT */ + { 29211, 0x00008050 }, /* GL_RGB5_EXT */ + { 29223, 0x00008051 }, /* GL_RGB8 */ + { 29231, 0x00008051 }, /* GL_RGB8_EXT */ + { 29243, 0x00001908 }, /* GL_RGBA */ + { 29251, 0x0000805A }, /* GL_RGBA12 */ + { 29261, 0x0000805A }, /* GL_RGBA12_EXT */ + { 29275, 0x0000805B }, /* GL_RGBA16 */ + { 29285, 0x0000805B }, /* GL_RGBA16_EXT */ + { 29299, 0x00008055 }, /* GL_RGBA2 */ + { 29308, 0x00008055 }, /* GL_RGBA2_EXT */ + { 29321, 0x00008056 }, /* GL_RGBA4 */ + { 29330, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ + { 29349, 0x00008056 }, /* GL_RGBA4_EXT */ + { 29362, 0x000083A3 }, /* GL_RGBA4_S3TC */ + { 29376, 0x00008058 }, /* GL_RGBA8 */ + { 29385, 0x00008058 }, /* GL_RGBA8_EXT */ + { 29398, 0x00008F97 }, /* GL_RGBA8_SNORM */ + { 29413, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ + { 29431, 0x00000C31 }, /* GL_RGBA_MODE */ + { 29444, 0x000083A2 }, /* GL_RGBA_S3TC */ + { 29457, 0x00008F93 }, /* GL_RGBA_SNORM */ + { 29471, 0x000083A0 }, /* GL_RGB_S3TC */ + { 29483, 0x00008573 }, /* GL_RGB_SCALE */ + { 29496, 0x00008573 }, /* GL_RGB_SCALE_ARB */ + { 29513, 0x00008573 }, /* GL_RGB_SCALE_EXT */ + { 29530, 0x00000407 }, /* GL_RIGHT */ + { 29539, 0x00002000 }, /* GL_S */ + { 29544, 0x00008B5D }, /* GL_SAMPLER_1D */ + { 29558, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ + { 29579, 0x00008B5E }, /* GL_SAMPLER_2D */ + { 29593, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ + { 29614, 0x00008B5F }, /* GL_SAMPLER_3D */ + { 29628, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 29644, 0x000080A9 }, /* GL_SAMPLES */ + { 29655, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 29671, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 29686, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 29704, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 29726, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 29754, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 29786, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 29809, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 29836, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 29854, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 29877, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 29899, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 29918, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 29941, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 29967, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 29997, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 30022, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 30051, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 30066, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 30081, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 30097, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 30122, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 30162, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 30206, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 30239, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 30269, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 30301, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 30331, 0x00001C02 }, /* GL_SELECT */ + { 30341, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 30369, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 30394, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 30410, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 30437, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 30468, 0x0000150F }, /* GL_SET */ + { 30475, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 30496, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 30520, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 30535, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 30550, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 30578, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 30601, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 30631, 0x00001601 }, /* GL_SHININESS */ + { 30644, 0x00001402 }, /* GL_SHORT */ + { 30653, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 30674, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 30690, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 30710, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 30729, 0x00008C46 }, /* GL_SLUMINANCE */ + { 30743, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 30758, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 30780, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 30800, 0x00001D01 }, /* GL_SMOOTH */ + { 30810, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 30843, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 30870, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 30903, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 30930, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 30947, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 30968, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 30989, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 31004, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 31023, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 31042, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 31059, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 31080, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 31101, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 31116, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 31135, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 31154, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 31171, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 31192, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 31213, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 31228, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 31247, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 31266, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 31286, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 31304, 0x00001202 }, /* GL_SPECULAR */ + { 31316, 0x00002402 }, /* GL_SPHERE_MAP */ + { 31330, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 31345, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 31363, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 31380, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 31394, 0x00008580 }, /* GL_SRC0_RGB */ + { 31406, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 31420, 0x00008581 }, /* GL_SRC1_RGB */ + { 31432, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 31446, 0x00008582 }, /* GL_SRC2_RGB */ + { 31458, 0x00000302 }, /* GL_SRC_ALPHA */ + { 31471, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 31493, 0x00000300 }, /* GL_SRC_COLOR */ + { 31506, 0x00008C40 }, /* GL_SRGB */ + { 31514, 0x00008C41 }, /* GL_SRGB8 */ + { 31523, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 31539, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 31553, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 31571, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 31590, 0x000088E6 }, /* GL_STATIC_COPY */ + { 31605, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 31624, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 31639, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 31658, 0x000088E5 }, /* GL_STATIC_READ */ + { 31673, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 31692, 0x00001802 }, /* GL_STENCIL */ + { 31703, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 31725, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 31751, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 31772, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 31797, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 31818, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 31843, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 31875, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 31911, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 31943, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 31979, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 31999, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 32026, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 32052, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 32068, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 32090, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 32113, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 32129, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 32145, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 32162, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 32185, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 32207, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 32229, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 32251, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 32272, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 32299, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 32326, 0x00000B97 }, /* GL_STENCIL_REF */ + { 32341, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 32357, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 32386, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 32408, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 32429, 0x00000C33 }, /* GL_STEREO */ + { 32439, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 32463, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 32488, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 32512, 0x000088E2 }, /* GL_STREAM_COPY */ + { 32527, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 32546, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 32561, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 32580, 0x000088E1 }, /* GL_STREAM_READ */ + { 32595, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 32614, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 32631, 0x000084E7 }, /* GL_SUBTRACT */ + { 32643, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 32659, 0x00002001 }, /* GL_T */ + { 32664, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 32679, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 32698, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 32714, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 32729, 0x00002A27 }, /* GL_T2F_V3F */ + { 32740, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 32759, 0x00002A28 }, /* GL_T4F_V4F */ + { 32770, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 32793, 0x00001702 }, /* GL_TEXTURE */ + { 32804, 0x000084C0 }, /* GL_TEXTURE0 */ + { 32816, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 32832, 0x000084C1 }, /* GL_TEXTURE1 */ + { 32844, 0x000084CA }, /* GL_TEXTURE10 */ + { 32857, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 32874, 0x000084CB }, /* GL_TEXTURE11 */ + { 32887, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 32904, 0x000084CC }, /* GL_TEXTURE12 */ + { 32917, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 32934, 0x000084CD }, /* GL_TEXTURE13 */ + { 32947, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 32964, 0x000084CE }, /* GL_TEXTURE14 */ + { 32977, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 32994, 0x000084CF }, /* GL_TEXTURE15 */ + { 33007, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 33024, 0x000084D0 }, /* GL_TEXTURE16 */ + { 33037, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 33054, 0x000084D1 }, /* GL_TEXTURE17 */ + { 33067, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 33084, 0x000084D2 }, /* GL_TEXTURE18 */ + { 33097, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 33114, 0x000084D3 }, /* GL_TEXTURE19 */ + { 33127, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 33144, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 33160, 0x000084C2 }, /* GL_TEXTURE2 */ + { 33172, 0x000084D4 }, /* GL_TEXTURE20 */ + { 33185, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 33202, 0x000084D5 }, /* GL_TEXTURE21 */ + { 33215, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 33232, 0x000084D6 }, /* GL_TEXTURE22 */ + { 33245, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 33262, 0x000084D7 }, /* GL_TEXTURE23 */ + { 33275, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 33292, 0x000084D8 }, /* GL_TEXTURE24 */ + { 33305, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 33322, 0x000084D9 }, /* GL_TEXTURE25 */ + { 33335, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 33352, 0x000084DA }, /* GL_TEXTURE26 */ + { 33365, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 33382, 0x000084DB }, /* GL_TEXTURE27 */ + { 33395, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 33412, 0x000084DC }, /* GL_TEXTURE28 */ + { 33425, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 33442, 0x000084DD }, /* GL_TEXTURE29 */ + { 33455, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 33472, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 33488, 0x000084C3 }, /* GL_TEXTURE3 */ + { 33500, 0x000084DE }, /* GL_TEXTURE30 */ + { 33513, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 33530, 0x000084DF }, /* GL_TEXTURE31 */ + { 33543, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 33560, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 33576, 0x000084C4 }, /* GL_TEXTURE4 */ + { 33588, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 33604, 0x000084C5 }, /* GL_TEXTURE5 */ + { 33616, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 33632, 0x000084C6 }, /* GL_TEXTURE6 */ + { 33644, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 33660, 0x000084C7 }, /* GL_TEXTURE7 */ + { 33672, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 33688, 0x000084C8 }, /* GL_TEXTURE8 */ + { 33700, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 33716, 0x000084C9 }, /* GL_TEXTURE9 */ + { 33728, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 33744, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 33758, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 33782, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 33796, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 33820, 0x0000806F }, /* GL_TEXTURE_3D */ + { 33834, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 33856, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 33882, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 33904, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 33926, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 33958, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 33980, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 34012, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 34034, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 34062, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 34094, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 34127, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 34159, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 34174, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 34195, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 34220, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 34238, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 34262, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 34293, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 34323, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 34353, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 34388, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 34419, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 34457, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 34484, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 34516, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 34550, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 34574, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 34602, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 34626, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 34654, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 34687, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 34711, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 34733, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 34755, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 34781, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 34815, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 34848, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 34885, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 34913, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 34945, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 34968, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 35006, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 35048, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 35079, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 35107, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 35137, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 35165, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 35185, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 35209, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 35240, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 35275, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 35306, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 35341, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 35372, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 35407, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 35438, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 35473, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 35504, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 35539, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 35570, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 35605, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 35634, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 35651, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 35673, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 35699, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 35714, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 35735, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 35755, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 35781, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 35801, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 35818, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 35835, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 35852, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 35869, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 35894, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 35916, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 35942, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 35960, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 35986, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 36012, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 36042, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 36069, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 36094, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 36114, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 36138, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 36165, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 36192, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 36219, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 36245, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 36275, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 36297, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 36315, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 36345, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 36373, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 36401, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 36429, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 36450, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 36469, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 36491, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 36510, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 36530, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 36560, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 36591, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 36616, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 36640, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 36660, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 36684, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 36704, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 36727, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 36751, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 36781, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 36806, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 36840, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 36857, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 36875, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 36893, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 36911, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 36931, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 36950, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 36979, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 36996, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 37022, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 37052, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 37084, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 37114, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 37148, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 37164, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 37195, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 37230, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 37258, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 37290, 0x00000004 }, /* GL_TRIANGLES */ + { 37303, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 37319, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 37340, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 37358, 0x00000001 }, /* GL_TRUE */ + { 37366, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 37386, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 37409, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 37429, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 37450, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 37472, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 37494, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 37514, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 37535, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 37552, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 37579, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 37602, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 37618, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 37645, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 37666, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 37690, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 37721, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 37745, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 37773, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 37796, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 37814, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 37844, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 37870, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 37900, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 37926, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 37950, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 37978, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 38006, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 38033, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 38065, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 38096, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 38110, 0x00002A20 }, /* GL_V2F */ + { 38117, 0x00002A21 }, /* GL_V3F */ + { 38124, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 38143, 0x00001F00 }, /* GL_VENDOR */ + { 38153, 0x00001F02 }, /* GL_VERSION */ + { 38164, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 38180, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 38204, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 38234, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 38265, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 38300, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 38324, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 38345, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 38368, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 38389, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 38416, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 38444, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 38472, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 38500, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 38528, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 38556, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 38584, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 38611, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 38638, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 38665, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 38692, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 38719, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 38746, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 38773, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 38800, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 38827, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 38865, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 38907, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 38938, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 38973, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 39007, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 39045, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 39076, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 39111, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 39139, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 39171, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 39201, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 39235, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 39263, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 39295, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 39315, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 39337, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 39366, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 39387, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 39416, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 39449, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 39481, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 39508, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 39539, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 39569, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 39586, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 39607, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 39634, 0x00000BA2 }, /* GL_VIEWPORT */ + { 39646, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 39662, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 39682, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 39713, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 39748, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 39776, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 39801, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 39828, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 39853, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 39877, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 39896, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 39910, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 39928, 0x00001506 }, /* GL_XOR */ + { 39935, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 39954, 0x00008757 }, /* GL_YCBCR_MESA */ + { 39968, 0x00000000 }, /* GL_ZERO */ + { 39976, 0x00000D16 }, /* GL_ZOOM_X */ + { 39986, 0x00000D17 }, /* GL_ZOOM_Y */ }; -static const unsigned reduced_enums[1325] = +static const unsigned reduced_enums[1333] = { - 471, /* GL_FALSE */ - 687, /* GL_LINES */ - 689, /* GL_LINE_LOOP */ - 696, /* GL_LINE_STRIP */ - 1721, /* GL_TRIANGLES */ - 1724, /* GL_TRIANGLE_STRIP */ - 1722, /* GL_TRIANGLE_FAN */ - 1265, /* GL_QUADS */ - 1268, /* GL_QUAD_STRIP */ - 1152, /* GL_POLYGON */ - 1164, /* GL_POLYGON_STIPPLE_BIT */ - 1113, /* GL_PIXEL_MODE_BIT */ - 674, /* GL_LIGHTING_BIT */ - 500, /* GL_FOG_BIT */ + 473, /* GL_FALSE */ + 689, /* GL_LINES */ + 691, /* GL_LINE_LOOP */ + 698, /* GL_LINE_STRIP */ + 1730, /* GL_TRIANGLES */ + 1733, /* GL_TRIANGLE_STRIP */ + 1731, /* GL_TRIANGLE_FAN */ + 1267, /* GL_QUADS */ + 1270, /* GL_QUAD_STRIP */ + 1154, /* GL_POLYGON */ + 1166, /* GL_POLYGON_STIPPLE_BIT */ + 1115, /* GL_PIXEL_MODE_BIT */ + 676, /* GL_LIGHTING_BIT */ + 502, /* GL_FOG_BIT */ 8, /* GL_ACCUM */ - 706, /* GL_LOAD */ - 1320, /* GL_RETURN */ - 986, /* GL_MULT */ + 708, /* GL_LOAD */ + 1322, /* GL_RETURN */ + 988, /* GL_MULT */ 23, /* GL_ADD */ - 1002, /* GL_NEVER */ - 664, /* GL_LESS */ - 461, /* GL_EQUAL */ - 663, /* GL_LEQUAL */ - 586, /* GL_GREATER */ - 1017, /* GL_NOTEQUAL */ - 585, /* GL_GEQUAL */ + 1004, /* GL_NEVER */ + 666, /* GL_LESS */ + 463, /* GL_EQUAL */ + 665, /* GL_LEQUAL */ + 588, /* GL_GREATER */ + 1019, /* GL_NOTEQUAL */ + 587, /* GL_GEQUAL */ 46, /* GL_ALWAYS */ - 1460, /* GL_SRC_COLOR */ - 1046, /* GL_ONE_MINUS_SRC_COLOR */ - 1458, /* GL_SRC_ALPHA */ - 1045, /* GL_ONE_MINUS_SRC_ALPHA */ - 440, /* GL_DST_ALPHA */ - 1043, /* GL_ONE_MINUS_DST_ALPHA */ - 441, /* GL_DST_COLOR */ - 1044, /* GL_ONE_MINUS_DST_COLOR */ - 1459, /* GL_SRC_ALPHA_SATURATE */ - 573, /* GL_FRONT_LEFT */ - 574, /* GL_FRONT_RIGHT */ + 1462, /* GL_SRC_COLOR */ + 1048, /* GL_ONE_MINUS_SRC_COLOR */ + 1460, /* GL_SRC_ALPHA */ + 1047, /* GL_ONE_MINUS_SRC_ALPHA */ + 442, /* GL_DST_ALPHA */ + 1045, /* GL_ONE_MINUS_DST_ALPHA */ + 443, /* GL_DST_COLOR */ + 1046, /* GL_ONE_MINUS_DST_COLOR */ + 1461, /* GL_SRC_ALPHA_SATURATE */ + 575, /* GL_FRONT_LEFT */ + 576, /* GL_FRONT_RIGHT */ 68, /* GL_BACK_LEFT */ 69, /* GL_BACK_RIGHT */ - 570, /* GL_FRONT */ + 572, /* GL_FRONT */ 67, /* GL_BACK */ - 662, /* GL_LEFT */ - 1362, /* GL_RIGHT */ - 571, /* GL_FRONT_AND_BACK */ + 664, /* GL_LEFT */ + 1364, /* GL_RIGHT */ + 573, /* GL_FRONT_AND_BACK */ 62, /* GL_AUX0 */ 63, /* GL_AUX1 */ 64, /* GL_AUX2 */ 65, /* GL_AUX3 */ - 652, /* GL_INVALID_ENUM */ - 656, /* GL_INVALID_VALUE */ - 655, /* GL_INVALID_OPERATION */ - 1465, /* GL_STACK_OVERFLOW */ - 1466, /* GL_STACK_UNDERFLOW */ - 1071, /* GL_OUT_OF_MEMORY */ - 653, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + 654, /* GL_INVALID_ENUM */ + 658, /* GL_INVALID_VALUE */ + 657, /* GL_INVALID_OPERATION */ + 1467, /* GL_STACK_OVERFLOW */ + 1468, /* GL_STACK_UNDERFLOW */ + 1073, /* GL_OUT_OF_MEMORY */ + 655, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1091, /* GL_PASS_THROUGH_TOKEN */ - 1151, /* GL_POINT_TOKEN */ - 697, /* GL_LINE_TOKEN */ - 1165, /* GL_POLYGON_TOKEN */ + 1093, /* GL_PASS_THROUGH_TOKEN */ + 1153, /* GL_POINT_TOKEN */ + 699, /* GL_LINE_TOKEN */ + 1167, /* GL_POLYGON_TOKEN */ 73, /* GL_BITMAP_TOKEN */ - 439, /* GL_DRAW_PIXEL_TOKEN */ - 297, /* GL_COPY_PIXEL_TOKEN */ - 690, /* GL_LINE_RESET_TOKEN */ - 464, /* GL_EXP */ - 465, /* GL_EXP2 */ - 333, /* GL_CW */ - 122, /* GL_CCW */ - 143, /* GL_COEFF */ - 1068, /* GL_ORDER */ - 377, /* GL_DOMAIN */ - 307, /* GL_CURRENT_COLOR */ - 310, /* GL_CURRENT_INDEX */ - 316, /* GL_CURRENT_NORMAL */ - 329, /* GL_CURRENT_TEXTURE_COORDS */ - 321, /* GL_CURRENT_RASTER_COLOR */ - 323, /* GL_CURRENT_RASTER_INDEX */ - 327, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - 324, /* GL_CURRENT_RASTER_POSITION */ - 325, /* GL_CURRENT_RASTER_POSITION_VALID */ - 322, /* GL_CURRENT_RASTER_DISTANCE */ - 1144, /* GL_POINT_SMOOTH */ - 1133, /* GL_POINT_SIZE */ - 1143, /* GL_POINT_SIZE_RANGE */ - 1134, /* GL_POINT_SIZE_GRANULARITY */ - 691, /* GL_LINE_SMOOTH */ - 698, /* GL_LINE_WIDTH */ - 700, /* GL_LINE_WIDTH_RANGE */ - 699, /* GL_LINE_WIDTH_GRANULARITY */ - 693, /* GL_LINE_STIPPLE */ - 694, /* GL_LINE_STIPPLE_PATTERN */ - 695, /* GL_LINE_STIPPLE_REPEAT */ - 705, /* GL_LIST_MODE */ - 870, /* GL_MAX_LIST_NESTING */ - 702, /* GL_LIST_BASE */ - 704, /* GL_LIST_INDEX */ - 1154, /* GL_POLYGON_MODE */ - 1161, /* GL_POLYGON_SMOOTH */ - 1163, /* GL_POLYGON_STIPPLE */ - 450, /* GL_EDGE_FLAG */ - 300, /* GL_CULL_FACE */ - 301, /* GL_CULL_FACE_MODE */ - 572, /* GL_FRONT_FACE */ - 673, /* GL_LIGHTING */ - 678, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - 679, /* GL_LIGHT_MODEL_TWO_SIDE */ - 675, /* GL_LIGHT_MODEL_AMBIENT */ - 1408, /* GL_SHADE_MODEL */ - 190, /* GL_COLOR_MATERIAL_FACE */ - 191, /* GL_COLOR_MATERIAL_PARAMETER */ - 189, /* GL_COLOR_MATERIAL */ - 499, /* GL_FOG */ - 521, /* GL_FOG_INDEX */ - 517, /* GL_FOG_DENSITY */ - 525, /* GL_FOG_START */ - 519, /* GL_FOG_END */ - 522, /* GL_FOG_MODE */ - 501, /* GL_FOG_COLOR */ - 364, /* GL_DEPTH_RANGE */ - 371, /* GL_DEPTH_TEST */ - 374, /* GL_DEPTH_WRITEMASK */ - 352, /* GL_DEPTH_CLEAR_VALUE */ - 363, /* GL_DEPTH_FUNC */ + 441, /* GL_DRAW_PIXEL_TOKEN */ + 299, /* GL_COPY_PIXEL_TOKEN */ + 692, /* GL_LINE_RESET_TOKEN */ + 466, /* GL_EXP */ + 467, /* GL_EXP2 */ + 335, /* GL_CW */ + 124, /* GL_CCW */ + 145, /* GL_COEFF */ + 1070, /* GL_ORDER */ + 379, /* GL_DOMAIN */ + 309, /* GL_CURRENT_COLOR */ + 312, /* GL_CURRENT_INDEX */ + 318, /* GL_CURRENT_NORMAL */ + 331, /* GL_CURRENT_TEXTURE_COORDS */ + 323, /* GL_CURRENT_RASTER_COLOR */ + 325, /* GL_CURRENT_RASTER_INDEX */ + 329, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + 326, /* GL_CURRENT_RASTER_POSITION */ + 327, /* GL_CURRENT_RASTER_POSITION_VALID */ + 324, /* GL_CURRENT_RASTER_DISTANCE */ + 1146, /* GL_POINT_SMOOTH */ + 1135, /* GL_POINT_SIZE */ + 1145, /* GL_POINT_SIZE_RANGE */ + 1136, /* GL_POINT_SIZE_GRANULARITY */ + 693, /* GL_LINE_SMOOTH */ + 700, /* GL_LINE_WIDTH */ + 702, /* GL_LINE_WIDTH_RANGE */ + 701, /* GL_LINE_WIDTH_GRANULARITY */ + 695, /* GL_LINE_STIPPLE */ + 696, /* GL_LINE_STIPPLE_PATTERN */ + 697, /* GL_LINE_STIPPLE_REPEAT */ + 707, /* GL_LIST_MODE */ + 872, /* GL_MAX_LIST_NESTING */ + 704, /* GL_LIST_BASE */ + 706, /* GL_LIST_INDEX */ + 1156, /* GL_POLYGON_MODE */ + 1163, /* GL_POLYGON_SMOOTH */ + 1165, /* GL_POLYGON_STIPPLE */ + 452, /* GL_EDGE_FLAG */ + 302, /* GL_CULL_FACE */ + 303, /* GL_CULL_FACE_MODE */ + 574, /* GL_FRONT_FACE */ + 675, /* GL_LIGHTING */ + 680, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + 681, /* GL_LIGHT_MODEL_TWO_SIDE */ + 677, /* GL_LIGHT_MODEL_AMBIENT */ + 1410, /* GL_SHADE_MODEL */ + 192, /* GL_COLOR_MATERIAL_FACE */ + 193, /* GL_COLOR_MATERIAL_PARAMETER */ + 191, /* GL_COLOR_MATERIAL */ + 501, /* GL_FOG */ + 523, /* GL_FOG_INDEX */ + 519, /* GL_FOG_DENSITY */ + 527, /* GL_FOG_START */ + 521, /* GL_FOG_END */ + 524, /* GL_FOG_MODE */ + 503, /* GL_FOG_COLOR */ + 366, /* GL_DEPTH_RANGE */ + 373, /* GL_DEPTH_TEST */ + 376, /* GL_DEPTH_WRITEMASK */ + 354, /* GL_DEPTH_CLEAR_VALUE */ + 365, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1501, /* GL_STENCIL_TEST */ - 1489, /* GL_STENCIL_CLEAR_VALUE */ - 1491, /* GL_STENCIL_FUNC */ - 1503, /* GL_STENCIL_VALUE_MASK */ - 1490, /* GL_STENCIL_FAIL */ - 1498, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1499, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1500, /* GL_STENCIL_REF */ - 1504, /* GL_STENCIL_WRITEMASK */ - 839, /* GL_MATRIX_MODE */ - 1007, /* GL_NORMALIZE */ - 1814, /* GL_VIEWPORT */ - 981, /* GL_MODELVIEW_STACK_DEPTH */ - 1244, /* GL_PROJECTION_STACK_DEPTH */ - 1699, /* GL_TEXTURE_STACK_DEPTH */ - 979, /* GL_MODELVIEW_MATRIX */ - 1243, /* GL_PROJECTION_MATRIX */ - 1684, /* GL_TEXTURE_MATRIX */ + 1503, /* GL_STENCIL_TEST */ + 1491, /* GL_STENCIL_CLEAR_VALUE */ + 1493, /* GL_STENCIL_FUNC */ + 1505, /* GL_STENCIL_VALUE_MASK */ + 1492, /* GL_STENCIL_FAIL */ + 1500, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1501, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1502, /* GL_STENCIL_REF */ + 1506, /* GL_STENCIL_WRITEMASK */ + 841, /* GL_MATRIX_MODE */ + 1009, /* GL_NORMALIZE */ + 1823, /* GL_VIEWPORT */ + 983, /* GL_MODELVIEW_STACK_DEPTH */ + 1246, /* GL_PROJECTION_STACK_DEPTH */ + 1707, /* GL_TEXTURE_STACK_DEPTH */ + 981, /* GL_MODELVIEW_MATRIX */ + 1245, /* GL_PROJECTION_MATRIX */ + 1690, /* GL_TEXTURE_MATRIX */ 60, /* GL_ATTRIB_STACK_DEPTH */ - 133, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ + 135, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 43, /* GL_ALPHA_TEST */ 44, /* GL_ALPHA_TEST_FUNC */ 45, /* GL_ALPHA_TEST_REF */ - 376, /* GL_DITHER */ + 378, /* GL_DITHER */ 77, /* GL_BLEND_DST */ 86, /* GL_BLEND_SRC */ 74, /* GL_BLEND */ - 708, /* GL_LOGIC_OP_MODE */ - 626, /* GL_INDEX_LOGIC_OP */ - 188, /* GL_COLOR_LOGIC_OP */ + 710, /* GL_LOGIC_OP_MODE */ + 628, /* GL_INDEX_LOGIC_OP */ + 190, /* GL_COLOR_LOGIC_OP */ 66, /* GL_AUX_BUFFERS */ - 387, /* GL_DRAW_BUFFER */ - 1278, /* GL_READ_BUFFER */ - 1389, /* GL_SCISSOR_BOX */ - 1390, /* GL_SCISSOR_TEST */ - 625, /* GL_INDEX_CLEAR_VALUE */ - 630, /* GL_INDEX_WRITEMASK */ - 185, /* GL_COLOR_CLEAR_VALUE */ - 227, /* GL_COLOR_WRITEMASK */ - 627, /* GL_INDEX_MODE */ - 1355, /* GL_RGBA_MODE */ - 386, /* GL_DOUBLEBUFFER */ - 1505, /* GL_STEREO */ - 1313, /* GL_RENDER_MODE */ - 1092, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1145, /* GL_POINT_SMOOTH_HINT */ - 692, /* GL_LINE_SMOOTH_HINT */ - 1162, /* GL_POLYGON_SMOOTH_HINT */ - 520, /* GL_FOG_HINT */ - 1665, /* GL_TEXTURE_GEN_S */ - 1666, /* GL_TEXTURE_GEN_T */ - 1664, /* GL_TEXTURE_GEN_R */ - 1663, /* GL_TEXTURE_GEN_Q */ - 1105, /* GL_PIXEL_MAP_I_TO_I */ - 1111, /* GL_PIXEL_MAP_S_TO_S */ - 1107, /* GL_PIXEL_MAP_I_TO_R */ - 1103, /* GL_PIXEL_MAP_I_TO_G */ - 1101, /* GL_PIXEL_MAP_I_TO_B */ - 1099, /* GL_PIXEL_MAP_I_TO_A */ - 1109, /* GL_PIXEL_MAP_R_TO_R */ - 1097, /* GL_PIXEL_MAP_G_TO_G */ - 1095, /* GL_PIXEL_MAP_B_TO_B */ - 1093, /* GL_PIXEL_MAP_A_TO_A */ - 1106, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1112, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1108, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1104, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1102, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1100, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1110, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1098, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1096, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1094, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 1733, /* GL_UNPACK_SWAP_BYTES */ - 1728, /* GL_UNPACK_LSB_FIRST */ - 1729, /* GL_UNPACK_ROW_LENGTH */ - 1732, /* GL_UNPACK_SKIP_ROWS */ - 1731, /* GL_UNPACK_SKIP_PIXELS */ - 1726, /* GL_UNPACK_ALIGNMENT */ - 1080, /* GL_PACK_SWAP_BYTES */ - 1075, /* GL_PACK_LSB_FIRST */ - 1076, /* GL_PACK_ROW_LENGTH */ - 1079, /* GL_PACK_SKIP_ROWS */ - 1078, /* GL_PACK_SKIP_PIXELS */ - 1072, /* GL_PACK_ALIGNMENT */ - 786, /* GL_MAP_COLOR */ - 791, /* GL_MAP_STENCIL */ - 629, /* GL_INDEX_SHIFT */ - 628, /* GL_INDEX_OFFSET */ - 1291, /* GL_RED_SCALE */ - 1289, /* GL_RED_BIAS */ - 1831, /* GL_ZOOM_X */ - 1832, /* GL_ZOOM_Y */ - 590, /* GL_GREEN_SCALE */ - 588, /* GL_GREEN_BIAS */ + 389, /* GL_DRAW_BUFFER */ + 1280, /* GL_READ_BUFFER */ + 1391, /* GL_SCISSOR_BOX */ + 1392, /* GL_SCISSOR_TEST */ + 627, /* GL_INDEX_CLEAR_VALUE */ + 632, /* GL_INDEX_WRITEMASK */ + 187, /* GL_COLOR_CLEAR_VALUE */ + 229, /* GL_COLOR_WRITEMASK */ + 629, /* GL_INDEX_MODE */ + 1357, /* GL_RGBA_MODE */ + 388, /* GL_DOUBLEBUFFER */ + 1507, /* GL_STEREO */ + 1315, /* GL_RENDER_MODE */ + 1094, /* GL_PERSPECTIVE_CORRECTION_HINT */ + 1147, /* GL_POINT_SMOOTH_HINT */ + 694, /* GL_LINE_SMOOTH_HINT */ + 1164, /* GL_POLYGON_SMOOTH_HINT */ + 522, /* GL_FOG_HINT */ + 1671, /* GL_TEXTURE_GEN_S */ + 1672, /* GL_TEXTURE_GEN_T */ + 1670, /* GL_TEXTURE_GEN_R */ + 1669, /* GL_TEXTURE_GEN_Q */ + 1107, /* GL_PIXEL_MAP_I_TO_I */ + 1113, /* GL_PIXEL_MAP_S_TO_S */ + 1109, /* GL_PIXEL_MAP_I_TO_R */ + 1105, /* GL_PIXEL_MAP_I_TO_G */ + 1103, /* GL_PIXEL_MAP_I_TO_B */ + 1101, /* GL_PIXEL_MAP_I_TO_A */ + 1111, /* GL_PIXEL_MAP_R_TO_R */ + 1099, /* GL_PIXEL_MAP_G_TO_G */ + 1097, /* GL_PIXEL_MAP_B_TO_B */ + 1095, /* GL_PIXEL_MAP_A_TO_A */ + 1108, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + 1114, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + 1110, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + 1106, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + 1104, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + 1102, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + 1112, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + 1100, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + 1098, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + 1096, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + 1742, /* GL_UNPACK_SWAP_BYTES */ + 1737, /* GL_UNPACK_LSB_FIRST */ + 1738, /* GL_UNPACK_ROW_LENGTH */ + 1741, /* GL_UNPACK_SKIP_ROWS */ + 1740, /* GL_UNPACK_SKIP_PIXELS */ + 1735, /* GL_UNPACK_ALIGNMENT */ + 1082, /* GL_PACK_SWAP_BYTES */ + 1077, /* GL_PACK_LSB_FIRST */ + 1078, /* GL_PACK_ROW_LENGTH */ + 1081, /* GL_PACK_SKIP_ROWS */ + 1080, /* GL_PACK_SKIP_PIXELS */ + 1074, /* GL_PACK_ALIGNMENT */ + 788, /* GL_MAP_COLOR */ + 793, /* GL_MAP_STENCIL */ + 631, /* GL_INDEX_SHIFT */ + 630, /* GL_INDEX_OFFSET */ + 1293, /* GL_RED_SCALE */ + 1291, /* GL_RED_BIAS */ + 1840, /* GL_ZOOM_X */ + 1841, /* GL_ZOOM_Y */ + 592, /* GL_GREEN_SCALE */ + 590, /* GL_GREEN_BIAS */ 92, /* GL_BLUE_SCALE */ 90, /* GL_BLUE_BIAS */ 42, /* GL_ALPHA_SCALE */ 40, /* GL_ALPHA_BIAS */ - 365, /* GL_DEPTH_SCALE */ - 346, /* GL_DEPTH_BIAS */ - 865, /* GL_MAX_EVAL_ORDER */ - 869, /* GL_MAX_LIGHTS */ - 848, /* GL_MAX_CLIP_PLANES */ - 914, /* GL_MAX_TEXTURE_SIZE */ - 875, /* GL_MAX_PIXEL_MAP_TABLE */ - 844, /* GL_MAX_ATTRIB_STACK_DEPTH */ - 872, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - 873, /* GL_MAX_NAME_STACK_DEPTH */ - 901, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 915, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 929, /* GL_MAX_VIEWPORT_DIMS */ - 845, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1512, /* GL_SUBPIXEL_BITS */ - 624, /* GL_INDEX_BITS */ - 1290, /* GL_RED_BITS */ - 589, /* GL_GREEN_BITS */ + 367, /* GL_DEPTH_SCALE */ + 348, /* GL_DEPTH_BIAS */ + 867, /* GL_MAX_EVAL_ORDER */ + 871, /* GL_MAX_LIGHTS */ + 850, /* GL_MAX_CLIP_PLANES */ + 916, /* GL_MAX_TEXTURE_SIZE */ + 877, /* GL_MAX_PIXEL_MAP_TABLE */ + 846, /* GL_MAX_ATTRIB_STACK_DEPTH */ + 874, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + 875, /* GL_MAX_NAME_STACK_DEPTH */ + 903, /* GL_MAX_PROJECTION_STACK_DEPTH */ + 917, /* GL_MAX_TEXTURE_STACK_DEPTH */ + 931, /* GL_MAX_VIEWPORT_DIMS */ + 847, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + 1517, /* GL_SUBPIXEL_BITS */ + 626, /* GL_INDEX_BITS */ + 1292, /* GL_RED_BITS */ + 591, /* GL_GREEN_BITS */ 91, /* GL_BLUE_BITS */ 41, /* GL_ALPHA_BITS */ - 347, /* GL_DEPTH_BITS */ - 1487, /* GL_STENCIL_BITS */ + 349, /* GL_DEPTH_BITS */ + 1489, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 995, /* GL_NAME_STACK_DEPTH */ + 997, /* GL_NAME_STACK_DEPTH */ 61, /* GL_AUTO_NORMAL */ - 732, /* GL_MAP1_COLOR_4 */ - 735, /* GL_MAP1_INDEX */ - 736, /* GL_MAP1_NORMAL */ - 737, /* GL_MAP1_TEXTURE_COORD_1 */ - 738, /* GL_MAP1_TEXTURE_COORD_2 */ - 739, /* GL_MAP1_TEXTURE_COORD_3 */ - 740, /* GL_MAP1_TEXTURE_COORD_4 */ - 741, /* GL_MAP1_VERTEX_3 */ - 742, /* GL_MAP1_VERTEX_4 */ - 759, /* GL_MAP2_COLOR_4 */ - 762, /* GL_MAP2_INDEX */ - 763, /* GL_MAP2_NORMAL */ - 764, /* GL_MAP2_TEXTURE_COORD_1 */ - 765, /* GL_MAP2_TEXTURE_COORD_2 */ - 766, /* GL_MAP2_TEXTURE_COORD_3 */ - 767, /* GL_MAP2_TEXTURE_COORD_4 */ - 768, /* GL_MAP2_VERTEX_3 */ - 769, /* GL_MAP2_VERTEX_4 */ - 733, /* GL_MAP1_GRID_DOMAIN */ - 734, /* GL_MAP1_GRID_SEGMENTS */ - 760, /* GL_MAP2_GRID_DOMAIN */ - 761, /* GL_MAP2_GRID_SEGMENTS */ - 1589, /* GL_TEXTURE_1D */ - 1591, /* GL_TEXTURE_2D */ - 474, /* GL_FEEDBACK_BUFFER_POINTER */ - 475, /* GL_FEEDBACK_BUFFER_SIZE */ - 476, /* GL_FEEDBACK_BUFFER_TYPE */ - 1399, /* GL_SELECTION_BUFFER_POINTER */ - 1400, /* GL_SELECTION_BUFFER_SIZE */ - 1703, /* GL_TEXTURE_WIDTH */ - 1670, /* GL_TEXTURE_HEIGHT */ - 1626, /* GL_TEXTURE_COMPONENTS */ - 1610, /* GL_TEXTURE_BORDER_COLOR */ - 1609, /* GL_TEXTURE_BORDER */ - 378, /* GL_DONT_CARE */ - 472, /* GL_FASTEST */ - 1003, /* GL_NICEST */ + 734, /* GL_MAP1_COLOR_4 */ + 737, /* GL_MAP1_INDEX */ + 738, /* GL_MAP1_NORMAL */ + 739, /* GL_MAP1_TEXTURE_COORD_1 */ + 740, /* GL_MAP1_TEXTURE_COORD_2 */ + 741, /* GL_MAP1_TEXTURE_COORD_3 */ + 742, /* GL_MAP1_TEXTURE_COORD_4 */ + 743, /* GL_MAP1_VERTEX_3 */ + 744, /* GL_MAP1_VERTEX_4 */ + 761, /* GL_MAP2_COLOR_4 */ + 764, /* GL_MAP2_INDEX */ + 765, /* GL_MAP2_NORMAL */ + 766, /* GL_MAP2_TEXTURE_COORD_1 */ + 767, /* GL_MAP2_TEXTURE_COORD_2 */ + 768, /* GL_MAP2_TEXTURE_COORD_3 */ + 769, /* GL_MAP2_TEXTURE_COORD_4 */ + 770, /* GL_MAP2_VERTEX_3 */ + 771, /* GL_MAP2_VERTEX_4 */ + 735, /* GL_MAP1_GRID_DOMAIN */ + 736, /* GL_MAP1_GRID_SEGMENTS */ + 762, /* GL_MAP2_GRID_DOMAIN */ + 763, /* GL_MAP2_GRID_SEGMENTS */ + 1594, /* GL_TEXTURE_1D */ + 1596, /* GL_TEXTURE_2D */ + 476, /* GL_FEEDBACK_BUFFER_POINTER */ + 477, /* GL_FEEDBACK_BUFFER_SIZE */ + 478, /* GL_FEEDBACK_BUFFER_TYPE */ + 1401, /* GL_SELECTION_BUFFER_POINTER */ + 1402, /* GL_SELECTION_BUFFER_SIZE */ + 1712, /* GL_TEXTURE_WIDTH */ + 1676, /* GL_TEXTURE_HEIGHT */ + 1631, /* GL_TEXTURE_COMPONENTS */ + 1615, /* GL_TEXTURE_BORDER_COLOR */ + 1614, /* GL_TEXTURE_BORDER */ + 380, /* GL_DONT_CARE */ + 474, /* GL_FASTEST */ + 1005, /* GL_NICEST */ 47, /* GL_AMBIENT */ - 375, /* GL_DIFFUSE */ - 1447, /* GL_SPECULAR */ - 1166, /* GL_POSITION */ - 1450, /* GL_SPOT_DIRECTION */ - 1451, /* GL_SPOT_EXPONENT */ - 1449, /* GL_SPOT_CUTOFF */ - 271, /* GL_CONSTANT_ATTENUATION */ - 682, /* GL_LINEAR_ATTENUATION */ - 1264, /* GL_QUADRATIC_ATTENUATION */ - 241, /* GL_COMPILE */ - 242, /* GL_COMPILE_AND_EXECUTE */ - 117, /* GL_BYTE */ - 1734, /* GL_UNSIGNED_BYTE */ - 1413, /* GL_SHORT */ - 1745, /* GL_UNSIGNED_SHORT */ - 632, /* GL_INT */ - 1737, /* GL_UNSIGNED_INT */ - 480, /* GL_FLOAT */ + 377, /* GL_DIFFUSE */ + 1449, /* GL_SPECULAR */ + 1168, /* GL_POSITION */ + 1452, /* GL_SPOT_DIRECTION */ + 1453, /* GL_SPOT_EXPONENT */ + 1451, /* GL_SPOT_CUTOFF */ + 273, /* GL_CONSTANT_ATTENUATION */ + 684, /* GL_LINEAR_ATTENUATION */ + 1266, /* GL_QUADRATIC_ATTENUATION */ + 243, /* GL_COMPILE */ + 244, /* GL_COMPILE_AND_EXECUTE */ + 119, /* GL_BYTE */ + 1743, /* GL_UNSIGNED_BYTE */ + 1415, /* GL_SHORT */ + 1754, /* GL_UNSIGNED_SHORT */ + 634, /* GL_INT */ + 1746, /* GL_UNSIGNED_INT */ + 482, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ 7, /* GL_4_BYTES */ - 385, /* GL_DOUBLE */ - 129, /* GL_CLEAR */ + 387, /* GL_DOUBLE */ + 131, /* GL_CLEAR */ 49, /* GL_AND */ 51, /* GL_AND_REVERSE */ - 295, /* GL_COPY */ + 297, /* GL_COPY */ 50, /* GL_AND_INVERTED */ - 1005, /* GL_NOOP */ - 1827, /* GL_XOR */ - 1067, /* GL_OR */ - 1006, /* GL_NOR */ - 462, /* GL_EQUIV */ - 659, /* GL_INVERT */ - 1070, /* GL_OR_REVERSE */ - 296, /* GL_COPY_INVERTED */ - 1069, /* GL_OR_INVERTED */ - 996, /* GL_NAND */ - 1404, /* GL_SET */ - 459, /* GL_EMISSION */ - 1412, /* GL_SHININESS */ + 1007, /* GL_NOOP */ + 1836, /* GL_XOR */ + 1069, /* GL_OR */ + 1008, /* GL_NOR */ + 464, /* GL_EQUIV */ + 661, /* GL_INVERT */ + 1072, /* GL_OR_REVERSE */ + 298, /* GL_COPY_INVERTED */ + 1071, /* GL_OR_INVERTED */ + 998, /* GL_NAND */ + 1406, /* GL_SET */ + 461, /* GL_EMISSION */ + 1414, /* GL_SHININESS */ 48, /* GL_AMBIENT_AND_DIFFUSE */ - 187, /* GL_COLOR_INDEXES */ - 946, /* GL_MODELVIEW */ - 1242, /* GL_PROJECTION */ - 1524, /* GL_TEXTURE */ - 144, /* GL_COLOR */ - 342, /* GL_DEPTH */ - 1473, /* GL_STENCIL */ - 186, /* GL_COLOR_INDEX */ - 1492, /* GL_STENCIL_INDEX */ - 353, /* GL_DEPTH_COMPONENT */ - 1286, /* GL_RED */ - 587, /* GL_GREEN */ + 189, /* GL_COLOR_INDEXES */ + 948, /* GL_MODELVIEW */ + 1244, /* GL_PROJECTION */ + 1529, /* GL_TEXTURE */ + 146, /* GL_COLOR */ + 344, /* GL_DEPTH */ + 1475, /* GL_STENCIL */ + 188, /* GL_COLOR_INDEX */ + 1494, /* GL_STENCIL_INDEX */ + 355, /* GL_DEPTH_COMPONENT */ + 1288, /* GL_RED */ + 589, /* GL_GREEN */ 89, /* GL_BLUE */ 31, /* GL_ALPHA */ - 1321, /* GL_RGB */ - 1340, /* GL_RGBA */ - 710, /* GL_LUMINANCE */ - 731, /* GL_LUMINANCE_ALPHA */ + 1323, /* GL_RGB */ + 1342, /* GL_RGBA */ + 712, /* GL_LUMINANCE */ + 733, /* GL_LUMINANCE_ALPHA */ 72, /* GL_BITMAP */ - 1122, /* GL_POINT */ - 680, /* GL_LINE */ - 477, /* GL_FILL */ - 1295, /* GL_RENDER */ - 473, /* GL_FEEDBACK */ - 1398, /* GL_SELECT */ - 479, /* GL_FLAT */ - 1422, /* GL_SMOOTH */ - 660, /* GL_KEEP */ - 1315, /* GL_REPLACE */ - 614, /* GL_INCR */ - 338, /* GL_DECR */ - 1760, /* GL_VENDOR */ - 1312, /* GL_RENDERER */ - 1761, /* GL_VERSION */ - 466, /* GL_EXTENSIONS */ - 1363, /* GL_S */ - 1515, /* GL_T */ - 1275, /* GL_R */ - 1263, /* GL_Q */ - 982, /* GL_MODULATE */ - 337, /* GL_DECAL */ - 1660, /* GL_TEXTURE_ENV_MODE */ - 1659, /* GL_TEXTURE_ENV_COLOR */ - 1658, /* GL_TEXTURE_ENV */ - 467, /* GL_EYE_LINEAR */ - 1029, /* GL_OBJECT_LINEAR */ - 1448, /* GL_SPHERE_MAP */ - 1662, /* GL_TEXTURE_GEN_MODE */ - 1031, /* GL_OBJECT_PLANE */ - 468, /* GL_EYE_PLANE */ - 997, /* GL_NEAREST */ - 681, /* GL_LINEAR */ - 1001, /* GL_NEAREST_MIPMAP_NEAREST */ - 686, /* GL_LINEAR_MIPMAP_NEAREST */ - 1000, /* GL_NEAREST_MIPMAP_LINEAR */ - 685, /* GL_LINEAR_MIPMAP_LINEAR */ - 1683, /* GL_TEXTURE_MAG_FILTER */ - 1691, /* GL_TEXTURE_MIN_FILTER */ - 1705, /* GL_TEXTURE_WRAP_S */ - 1706, /* GL_TEXTURE_WRAP_T */ - 123, /* GL_CLAMP */ - 1314, /* GL_REPEAT */ - 1160, /* GL_POLYGON_OFFSET_UNITS */ - 1159, /* GL_POLYGON_OFFSET_POINT */ - 1158, /* GL_POLYGON_OFFSET_LINE */ - 1276, /* GL_R3_G3_B2 */ - 1757, /* GL_V2F */ - 1758, /* GL_V3F */ - 120, /* GL_C4UB_V2F */ - 121, /* GL_C4UB_V3F */ - 118, /* GL_C3F_V3F */ - 994, /* GL_N3F_V3F */ - 119, /* GL_C4F_N3F_V3F */ - 1520, /* GL_T2F_V3F */ - 1522, /* GL_T4F_V4F */ - 1518, /* GL_T2F_C4UB_V3F */ - 1516, /* GL_T2F_C3F_V3F */ - 1519, /* GL_T2F_N3F_V3F */ - 1517, /* GL_T2F_C4F_N3F_V3F */ - 1521, /* GL_T4F_C4F_N3F_V4F */ - 136, /* GL_CLIP_PLANE0 */ - 137, /* GL_CLIP_PLANE1 */ - 138, /* GL_CLIP_PLANE2 */ - 139, /* GL_CLIP_PLANE3 */ - 140, /* GL_CLIP_PLANE4 */ - 141, /* GL_CLIP_PLANE5 */ - 665, /* GL_LIGHT0 */ - 666, /* GL_LIGHT1 */ - 667, /* GL_LIGHT2 */ - 668, /* GL_LIGHT3 */ - 669, /* GL_LIGHT4 */ - 670, /* GL_LIGHT5 */ - 671, /* GL_LIGHT6 */ - 672, /* GL_LIGHT7 */ - 591, /* GL_HINT_BIT */ - 273, /* GL_CONSTANT_COLOR */ - 1041, /* GL_ONE_MINUS_CONSTANT_COLOR */ - 268, /* GL_CONSTANT_ALPHA */ - 1039, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1124, /* GL_POINT */ + 682, /* GL_LINE */ + 479, /* GL_FILL */ + 1297, /* GL_RENDER */ + 475, /* GL_FEEDBACK */ + 1400, /* GL_SELECT */ + 481, /* GL_FLAT */ + 1424, /* GL_SMOOTH */ + 662, /* GL_KEEP */ + 1317, /* GL_REPLACE */ + 616, /* GL_INCR */ + 340, /* GL_DECR */ + 1769, /* GL_VENDOR */ + 1314, /* GL_RENDERER */ + 1770, /* GL_VERSION */ + 468, /* GL_EXTENSIONS */ + 1365, /* GL_S */ + 1520, /* GL_T */ + 1277, /* GL_R */ + 1265, /* GL_Q */ + 984, /* GL_MODULATE */ + 339, /* GL_DECAL */ + 1666, /* GL_TEXTURE_ENV_MODE */ + 1665, /* GL_TEXTURE_ENV_COLOR */ + 1664, /* GL_TEXTURE_ENV */ + 469, /* GL_EYE_LINEAR */ + 1031, /* GL_OBJECT_LINEAR */ + 1450, /* GL_SPHERE_MAP */ + 1668, /* GL_TEXTURE_GEN_MODE */ + 1033, /* GL_OBJECT_PLANE */ + 470, /* GL_EYE_PLANE */ + 999, /* GL_NEAREST */ + 683, /* GL_LINEAR */ + 1003, /* GL_NEAREST_MIPMAP_NEAREST */ + 688, /* GL_LINEAR_MIPMAP_NEAREST */ + 1002, /* GL_NEAREST_MIPMAP_LINEAR */ + 687, /* GL_LINEAR_MIPMAP_LINEAR */ + 1689, /* GL_TEXTURE_MAG_FILTER */ + 1697, /* GL_TEXTURE_MIN_FILTER */ + 1714, /* GL_TEXTURE_WRAP_S */ + 1715, /* GL_TEXTURE_WRAP_T */ + 125, /* GL_CLAMP */ + 1316, /* GL_REPEAT */ + 1162, /* GL_POLYGON_OFFSET_UNITS */ + 1161, /* GL_POLYGON_OFFSET_POINT */ + 1160, /* GL_POLYGON_OFFSET_LINE */ + 1278, /* GL_R3_G3_B2 */ + 1766, /* GL_V2F */ + 1767, /* GL_V3F */ + 122, /* GL_C4UB_V2F */ + 123, /* GL_C4UB_V3F */ + 120, /* GL_C3F_V3F */ + 996, /* GL_N3F_V3F */ + 121, /* GL_C4F_N3F_V3F */ + 1525, /* GL_T2F_V3F */ + 1527, /* GL_T4F_V4F */ + 1523, /* GL_T2F_C4UB_V3F */ + 1521, /* GL_T2F_C3F_V3F */ + 1524, /* GL_T2F_N3F_V3F */ + 1522, /* GL_T2F_C4F_N3F_V3F */ + 1526, /* GL_T4F_C4F_N3F_V4F */ + 138, /* GL_CLIP_PLANE0 */ + 139, /* GL_CLIP_PLANE1 */ + 140, /* GL_CLIP_PLANE2 */ + 141, /* GL_CLIP_PLANE3 */ + 142, /* GL_CLIP_PLANE4 */ + 143, /* GL_CLIP_PLANE5 */ + 667, /* GL_LIGHT0 */ + 668, /* GL_LIGHT1 */ + 669, /* GL_LIGHT2 */ + 670, /* GL_LIGHT3 */ + 671, /* GL_LIGHT4 */ + 672, /* GL_LIGHT5 */ + 673, /* GL_LIGHT6 */ + 674, /* GL_LIGHT7 */ + 593, /* GL_HINT_BIT */ + 275, /* GL_CONSTANT_COLOR */ + 1043, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 270, /* GL_CONSTANT_ALPHA */ + 1041, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 75, /* GL_BLEND_COLOR */ - 575, /* GL_FUNC_ADD */ - 930, /* GL_MIN */ - 841, /* GL_MAX */ + 577, /* GL_FUNC_ADD */ + 932, /* GL_MIN */ + 843, /* GL_MAX */ 80, /* GL_BLEND_EQUATION */ - 579, /* GL_FUNC_SUBTRACT */ - 577, /* GL_FUNC_REVERSE_SUBTRACT */ - 276, /* GL_CONVOLUTION_1D */ - 277, /* GL_CONVOLUTION_2D */ - 1401, /* GL_SEPARABLE_2D */ - 280, /* GL_CONVOLUTION_BORDER_MODE */ - 284, /* GL_CONVOLUTION_FILTER_SCALE */ - 282, /* GL_CONVOLUTION_FILTER_BIAS */ - 1287, /* GL_REDUCE */ - 286, /* GL_CONVOLUTION_FORMAT */ - 290, /* GL_CONVOLUTION_WIDTH */ - 288, /* GL_CONVOLUTION_HEIGHT */ - 856, /* GL_MAX_CONVOLUTION_WIDTH */ - 854, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1199, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1195, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1190, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1186, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1197, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1193, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1188, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1184, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - 592, /* GL_HISTOGRAM */ - 1247, /* GL_PROXY_HISTOGRAM */ - 608, /* GL_HISTOGRAM_WIDTH */ - 598, /* GL_HISTOGRAM_FORMAT */ - 604, /* GL_HISTOGRAM_RED_SIZE */ - 600, /* GL_HISTOGRAM_GREEN_SIZE */ - 595, /* GL_HISTOGRAM_BLUE_SIZE */ - 593, /* GL_HISTOGRAM_ALPHA_SIZE */ - 602, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - 606, /* GL_HISTOGRAM_SINK */ - 931, /* GL_MINMAX */ - 933, /* GL_MINMAX_FORMAT */ - 935, /* GL_MINMAX_SINK */ - 1523, /* GL_TABLE_TOO_LARGE_EXT */ - 1736, /* GL_UNSIGNED_BYTE_3_3_2 */ - 1747, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 1749, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 1742, /* GL_UNSIGNED_INT_8_8_8_8 */ - 1738, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1157, /* GL_POLYGON_OFFSET_FILL */ - 1156, /* GL_POLYGON_OFFSET_FACTOR */ - 1155, /* GL_POLYGON_OFFSET_BIAS */ - 1318, /* GL_RESCALE_NORMAL */ + 581, /* GL_FUNC_SUBTRACT */ + 579, /* GL_FUNC_REVERSE_SUBTRACT */ + 278, /* GL_CONVOLUTION_1D */ + 279, /* GL_CONVOLUTION_2D */ + 1403, /* GL_SEPARABLE_2D */ + 282, /* GL_CONVOLUTION_BORDER_MODE */ + 286, /* GL_CONVOLUTION_FILTER_SCALE */ + 284, /* GL_CONVOLUTION_FILTER_BIAS */ + 1289, /* GL_REDUCE */ + 288, /* GL_CONVOLUTION_FORMAT */ + 292, /* GL_CONVOLUTION_WIDTH */ + 290, /* GL_CONVOLUTION_HEIGHT */ + 858, /* GL_MAX_CONVOLUTION_WIDTH */ + 856, /* GL_MAX_CONVOLUTION_HEIGHT */ + 1201, /* GL_POST_CONVOLUTION_RED_SCALE */ + 1197, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + 1192, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + 1188, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + 1199, /* GL_POST_CONVOLUTION_RED_BIAS */ + 1195, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + 1190, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + 1186, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + 594, /* GL_HISTOGRAM */ + 1249, /* GL_PROXY_HISTOGRAM */ + 610, /* GL_HISTOGRAM_WIDTH */ + 600, /* GL_HISTOGRAM_FORMAT */ + 606, /* GL_HISTOGRAM_RED_SIZE */ + 602, /* GL_HISTOGRAM_GREEN_SIZE */ + 597, /* GL_HISTOGRAM_BLUE_SIZE */ + 595, /* GL_HISTOGRAM_ALPHA_SIZE */ + 604, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + 608, /* GL_HISTOGRAM_SINK */ + 933, /* GL_MINMAX */ + 935, /* GL_MINMAX_FORMAT */ + 937, /* GL_MINMAX_SINK */ + 1528, /* GL_TABLE_TOO_LARGE_EXT */ + 1745, /* GL_UNSIGNED_BYTE_3_3_2 */ + 1756, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 1758, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 1751, /* GL_UNSIGNED_INT_8_8_8_8 */ + 1747, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1159, /* GL_POLYGON_OFFSET_FILL */ + 1158, /* GL_POLYGON_OFFSET_FACTOR */ + 1157, /* GL_POLYGON_OFFSET_BIAS */ + 1320, /* GL_RESCALE_NORMAL */ 36, /* GL_ALPHA4 */ 38, /* GL_ALPHA8 */ 32, /* GL_ALPHA12 */ 34, /* GL_ALPHA16 */ - 721, /* GL_LUMINANCE4 */ - 727, /* GL_LUMINANCE8 */ - 711, /* GL_LUMINANCE12 */ - 717, /* GL_LUMINANCE16 */ - 722, /* GL_LUMINANCE4_ALPHA4 */ - 725, /* GL_LUMINANCE6_ALPHA2 */ - 728, /* GL_LUMINANCE8_ALPHA8 */ - 714, /* GL_LUMINANCE12_ALPHA4 */ - 712, /* GL_LUMINANCE12_ALPHA12 */ - 718, /* GL_LUMINANCE16_ALPHA16 */ - 633, /* GL_INTENSITY */ - 638, /* GL_INTENSITY4 */ - 640, /* GL_INTENSITY8 */ - 634, /* GL_INTENSITY12 */ - 636, /* GL_INTENSITY16 */ - 1330, /* GL_RGB2_EXT */ - 1331, /* GL_RGB4 */ - 1334, /* GL_RGB5 */ - 1338, /* GL_RGB8 */ - 1322, /* GL_RGB10 */ - 1326, /* GL_RGB12 */ - 1328, /* GL_RGB16 */ - 1345, /* GL_RGBA2 */ - 1347, /* GL_RGBA4 */ - 1335, /* GL_RGB5_A1 */ - 1351, /* GL_RGBA8 */ - 1323, /* GL_RGB10_A2 */ - 1341, /* GL_RGBA12 */ - 1343, /* GL_RGBA16 */ - 1696, /* GL_TEXTURE_RED_SIZE */ - 1668, /* GL_TEXTURE_GREEN_SIZE */ - 1607, /* GL_TEXTURE_BLUE_SIZE */ - 1594, /* GL_TEXTURE_ALPHA_SIZE */ - 1681, /* GL_TEXTURE_LUMINANCE_SIZE */ - 1672, /* GL_TEXTURE_INTENSITY_SIZE */ - 1316, /* GL_REPLACE_EXT */ - 1251, /* GL_PROXY_TEXTURE_1D */ - 1254, /* GL_PROXY_TEXTURE_2D */ - 1701, /* GL_TEXTURE_TOO_LARGE_EXT */ - 1693, /* GL_TEXTURE_PRIORITY */ - 1698, /* GL_TEXTURE_RESIDENT */ - 1597, /* GL_TEXTURE_BINDING_1D */ - 1599, /* GL_TEXTURE_BINDING_2D */ - 1601, /* GL_TEXTURE_BINDING_3D */ - 1077, /* GL_PACK_SKIP_IMAGES */ - 1073, /* GL_PACK_IMAGE_HEIGHT */ - 1730, /* GL_UNPACK_SKIP_IMAGES */ - 1727, /* GL_UNPACK_IMAGE_HEIGHT */ - 1593, /* GL_TEXTURE_3D */ - 1257, /* GL_PROXY_TEXTURE_3D */ - 1655, /* GL_TEXTURE_DEPTH */ - 1704, /* GL_TEXTURE_WRAP_R */ - 842, /* GL_MAX_3D_TEXTURE_SIZE */ - 1762, /* GL_VERTEX_ARRAY */ - 1008, /* GL_NORMAL_ARRAY */ - 145, /* GL_COLOR_ARRAY */ - 618, /* GL_INDEX_ARRAY */ - 1634, /* GL_TEXTURE_COORD_ARRAY */ - 451, /* GL_EDGE_FLAG_ARRAY */ - 1768, /* GL_VERTEX_ARRAY_SIZE */ - 1770, /* GL_VERTEX_ARRAY_TYPE */ - 1769, /* GL_VERTEX_ARRAY_STRIDE */ - 1013, /* GL_NORMAL_ARRAY_TYPE */ - 1012, /* GL_NORMAL_ARRAY_STRIDE */ - 149, /* GL_COLOR_ARRAY_SIZE */ - 151, /* GL_COLOR_ARRAY_TYPE */ - 150, /* GL_COLOR_ARRAY_STRIDE */ - 623, /* GL_INDEX_ARRAY_TYPE */ - 622, /* GL_INDEX_ARRAY_STRIDE */ - 1638, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 1640, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 1639, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - 455, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 1767, /* GL_VERTEX_ARRAY_POINTER */ - 1011, /* GL_NORMAL_ARRAY_POINTER */ - 148, /* GL_COLOR_ARRAY_POINTER */ - 621, /* GL_INDEX_ARRAY_POINTER */ - 1637, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - 454, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 987, /* GL_MULTISAMPLE */ - 1375, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1377, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1382, /* GL_SAMPLE_COVERAGE */ - 1379, /* GL_SAMPLE_BUFFERS */ - 1370, /* GL_SAMPLES */ - 1386, /* GL_SAMPLE_COVERAGE_VALUE */ - 1384, /* GL_SAMPLE_COVERAGE_INVERT */ - 192, /* GL_COLOR_MATRIX */ - 194, /* GL_COLOR_MATRIX_STACK_DEPTH */ - 850, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1182, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1178, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1173, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1169, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1180, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1176, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1171, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1167, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 1617, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1258, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 1619, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 723, /* GL_LUMINANCE4 */ + 729, /* GL_LUMINANCE8 */ + 713, /* GL_LUMINANCE12 */ + 719, /* GL_LUMINANCE16 */ + 724, /* GL_LUMINANCE4_ALPHA4 */ + 727, /* GL_LUMINANCE6_ALPHA2 */ + 730, /* GL_LUMINANCE8_ALPHA8 */ + 716, /* GL_LUMINANCE12_ALPHA4 */ + 714, /* GL_LUMINANCE12_ALPHA12 */ + 720, /* GL_LUMINANCE16_ALPHA16 */ + 635, /* GL_INTENSITY */ + 640, /* GL_INTENSITY4 */ + 642, /* GL_INTENSITY8 */ + 636, /* GL_INTENSITY12 */ + 638, /* GL_INTENSITY16 */ + 1332, /* GL_RGB2_EXT */ + 1333, /* GL_RGB4 */ + 1336, /* GL_RGB5 */ + 1340, /* GL_RGB8 */ + 1324, /* GL_RGB10 */ + 1328, /* GL_RGB12 */ + 1330, /* GL_RGB16 */ + 1347, /* GL_RGBA2 */ + 1349, /* GL_RGBA4 */ + 1337, /* GL_RGB5_A1 */ + 1353, /* GL_RGBA8 */ + 1325, /* GL_RGB10_A2 */ + 1343, /* GL_RGBA12 */ + 1345, /* GL_RGBA16 */ + 1704, /* GL_TEXTURE_RED_SIZE */ + 1674, /* GL_TEXTURE_GREEN_SIZE */ + 1612, /* GL_TEXTURE_BLUE_SIZE */ + 1599, /* GL_TEXTURE_ALPHA_SIZE */ + 1687, /* GL_TEXTURE_LUMINANCE_SIZE */ + 1678, /* GL_TEXTURE_INTENSITY_SIZE */ + 1318, /* GL_REPLACE_EXT */ + 1253, /* GL_PROXY_TEXTURE_1D */ + 1256, /* GL_PROXY_TEXTURE_2D */ + 1710, /* GL_TEXTURE_TOO_LARGE_EXT */ + 1699, /* GL_TEXTURE_PRIORITY */ + 1706, /* GL_TEXTURE_RESIDENT */ + 1602, /* GL_TEXTURE_BINDING_1D */ + 1604, /* GL_TEXTURE_BINDING_2D */ + 1606, /* GL_TEXTURE_BINDING_3D */ + 1079, /* GL_PACK_SKIP_IMAGES */ + 1075, /* GL_PACK_IMAGE_HEIGHT */ + 1739, /* GL_UNPACK_SKIP_IMAGES */ + 1736, /* GL_UNPACK_IMAGE_HEIGHT */ + 1598, /* GL_TEXTURE_3D */ + 1259, /* GL_PROXY_TEXTURE_3D */ + 1661, /* GL_TEXTURE_DEPTH */ + 1713, /* GL_TEXTURE_WRAP_R */ + 844, /* GL_MAX_3D_TEXTURE_SIZE */ + 1771, /* GL_VERTEX_ARRAY */ + 1010, /* GL_NORMAL_ARRAY */ + 147, /* GL_COLOR_ARRAY */ + 620, /* GL_INDEX_ARRAY */ + 1639, /* GL_TEXTURE_COORD_ARRAY */ + 453, /* GL_EDGE_FLAG_ARRAY */ + 1777, /* GL_VERTEX_ARRAY_SIZE */ + 1779, /* GL_VERTEX_ARRAY_TYPE */ + 1778, /* GL_VERTEX_ARRAY_STRIDE */ + 1015, /* GL_NORMAL_ARRAY_TYPE */ + 1014, /* GL_NORMAL_ARRAY_STRIDE */ + 151, /* GL_COLOR_ARRAY_SIZE */ + 153, /* GL_COLOR_ARRAY_TYPE */ + 152, /* GL_COLOR_ARRAY_STRIDE */ + 625, /* GL_INDEX_ARRAY_TYPE */ + 624, /* GL_INDEX_ARRAY_STRIDE */ + 1643, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 1645, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 1644, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 457, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + 1776, /* GL_VERTEX_ARRAY_POINTER */ + 1013, /* GL_NORMAL_ARRAY_POINTER */ + 150, /* GL_COLOR_ARRAY_POINTER */ + 623, /* GL_INDEX_ARRAY_POINTER */ + 1642, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 456, /* GL_EDGE_FLAG_ARRAY_POINTER */ + 989, /* GL_MULTISAMPLE */ + 1377, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1379, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1384, /* GL_SAMPLE_COVERAGE */ + 1381, /* GL_SAMPLE_BUFFERS */ + 1372, /* GL_SAMPLES */ + 1388, /* GL_SAMPLE_COVERAGE_VALUE */ + 1386, /* GL_SAMPLE_COVERAGE_INVERT */ + 194, /* GL_COLOR_MATRIX */ + 196, /* GL_COLOR_MATRIX_STACK_DEPTH */ + 852, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + 1184, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + 1180, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + 1175, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + 1171, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + 1182, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + 1178, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + 1173, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + 1169, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + 1622, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 1260, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + 1624, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ 79, /* GL_BLEND_DST_RGB */ 88, /* GL_BLEND_SRC_RGB */ 78, /* GL_BLEND_DST_ALPHA */ 87, /* GL_BLEND_SRC_ALPHA */ - 198, /* GL_COLOR_TABLE */ - 1192, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1175, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1246, /* GL_PROXY_COLOR_TABLE */ - 1250, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1249, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - 222, /* GL_COLOR_TABLE_SCALE */ - 202, /* GL_COLOR_TABLE_BIAS */ - 207, /* GL_COLOR_TABLE_FORMAT */ - 224, /* GL_COLOR_TABLE_WIDTH */ - 219, /* GL_COLOR_TABLE_RED_SIZE */ - 210, /* GL_COLOR_TABLE_GREEN_SIZE */ - 204, /* GL_COLOR_TABLE_BLUE_SIZE */ - 199, /* GL_COLOR_TABLE_ALPHA_SIZE */ - 216, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ - 213, /* GL_COLOR_TABLE_INTENSITY_SIZE */ + 200, /* GL_COLOR_TABLE */ + 1194, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + 1177, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + 1248, /* GL_PROXY_COLOR_TABLE */ + 1252, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + 1251, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + 224, /* GL_COLOR_TABLE_SCALE */ + 204, /* GL_COLOR_TABLE_BIAS */ + 209, /* GL_COLOR_TABLE_FORMAT */ + 226, /* GL_COLOR_TABLE_WIDTH */ + 221, /* GL_COLOR_TABLE_RED_SIZE */ + 212, /* GL_COLOR_TABLE_GREEN_SIZE */ + 206, /* GL_COLOR_TABLE_BLUE_SIZE */ + 201, /* GL_COLOR_TABLE_ALPHA_SIZE */ + 218, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ + 215, /* GL_COLOR_TABLE_INTENSITY_SIZE */ 70, /* GL_BGR */ 71, /* GL_BGRA */ - 864, /* GL_MAX_ELEMENTS_VERTICES */ - 863, /* GL_MAX_ELEMENTS_INDICES */ - 1671, /* GL_TEXTURE_INDEX_SIZE_EXT */ - 142, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1139, /* GL_POINT_SIZE_MIN */ - 1135, /* GL_POINT_SIZE_MAX */ - 1129, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1125, /* GL_POINT_DISTANCE_ATTENUATION */ - 124, /* GL_CLAMP_TO_BORDER */ - 127, /* GL_CLAMP_TO_EDGE */ - 1692, /* GL_TEXTURE_MIN_LOD */ - 1690, /* GL_TEXTURE_MAX_LOD */ - 1596, /* GL_TEXTURE_BASE_LEVEL */ - 1689, /* GL_TEXTURE_MAX_LEVEL */ - 611, /* GL_IGNORE_BORDER_HP */ - 272, /* GL_CONSTANT_BORDER_HP */ - 1317, /* GL_REPLICATE_BORDER_HP */ - 278, /* GL_CONVOLUTION_BORDER_COLOR */ - 1036, /* GL_OCCLUSION_TEST_HP */ - 1037, /* GL_OCCLUSION_TEST_RESULT_HP */ - 683, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1611, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1613, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1615, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 1616, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1614, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1612, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - 846, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - 847, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1202, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1204, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1201, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1203, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 1679, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 1680, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 1678, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - 581, /* GL_GENERATE_MIPMAP */ - 582, /* GL_GENERATE_MIPMAP_HINT */ - 523, /* GL_FOG_OFFSET_SGIX */ - 524, /* GL_FOG_OFFSET_VALUE_SGIX */ - 1625, /* GL_TEXTURE_COMPARE_SGIX */ - 1624, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 1675, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 1667, /* GL_TEXTURE_GEQUAL_R_SGIX */ - 354, /* GL_DEPTH_COMPONENT16 */ - 357, /* GL_DEPTH_COMPONENT24 */ - 360, /* GL_DEPTH_COMPONENT32 */ - 302, /* GL_CULL_VERTEX_EXT */ - 304, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - 303, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 1824, /* GL_WRAP_BORDER_SUN */ - 1618, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - 676, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1415, /* GL_SINGLE_COLOR */ - 1402, /* GL_SEPARATE_SPECULAR_COLOR */ - 1411, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - 534, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - 535, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - 542, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - 537, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - 533, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - 532, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - 536, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - 543, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - 554, /* GL_FRAMEBUFFER_DEFAULT */ - 567, /* GL_FRAMEBUFFER_UNDEFINED */ - 367, /* GL_DEPTH_STENCIL_ATTACHMENT */ - 617, /* GL_INDEX */ - 1735, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 1750, /* GL_UNSIGNED_SHORT_5_6_5 */ - 1751, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 1748, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 1746, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 1743, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 1741, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 1687, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 1688, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 1686, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 938, /* GL_MIRRORED_REPEAT */ - 1358, /* GL_RGB_S3TC */ - 1333, /* GL_RGB4_S3TC */ - 1356, /* GL_RGBA_S3TC */ - 1350, /* GL_RGBA4_S3TC */ - 1354, /* GL_RGBA_DXT5_S3TC */ - 1348, /* GL_RGBA4_DXT5_S3TC */ - 261, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ - 256, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ - 257, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ - 258, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - 999, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 998, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - 684, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - 510, /* GL_FOG_COORDINATE_SOURCE */ - 502, /* GL_FOG_COORD */ - 526, /* GL_FRAGMENT_DEPTH */ - 308, /* GL_CURRENT_FOG_COORD */ - 509, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - 508, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - 507, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - 504, /* GL_FOG_COORDINATE_ARRAY */ - 196, /* GL_COLOR_SUM */ - 328, /* GL_CURRENT_SECONDARY_COLOR */ - 1395, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1397, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1396, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1394, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1391, /* GL_SECONDARY_COLOR_ARRAY */ - 326, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + 866, /* GL_MAX_ELEMENTS_VERTICES */ + 865, /* GL_MAX_ELEMENTS_INDICES */ + 1677, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 144, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ + 1141, /* GL_POINT_SIZE_MIN */ + 1137, /* GL_POINT_SIZE_MAX */ + 1131, /* GL_POINT_FADE_THRESHOLD_SIZE */ + 1127, /* GL_POINT_DISTANCE_ATTENUATION */ + 126, /* GL_CLAMP_TO_BORDER */ + 129, /* GL_CLAMP_TO_EDGE */ + 1698, /* GL_TEXTURE_MIN_LOD */ + 1696, /* GL_TEXTURE_MAX_LOD */ + 1601, /* GL_TEXTURE_BASE_LEVEL */ + 1695, /* GL_TEXTURE_MAX_LEVEL */ + 613, /* GL_IGNORE_BORDER_HP */ + 274, /* GL_CONSTANT_BORDER_HP */ + 1319, /* GL_REPLICATE_BORDER_HP */ + 280, /* GL_CONVOLUTION_BORDER_COLOR */ + 1038, /* GL_OCCLUSION_TEST_HP */ + 1039, /* GL_OCCLUSION_TEST_RESULT_HP */ + 685, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + 1616, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 1618, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 1620, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 1621, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1619, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 1617, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 848, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + 849, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1204, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + 1206, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + 1203, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + 1205, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + 1685, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 1686, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 1684, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 583, /* GL_GENERATE_MIPMAP */ + 584, /* GL_GENERATE_MIPMAP_HINT */ + 525, /* GL_FOG_OFFSET_SGIX */ + 526, /* GL_FOG_OFFSET_VALUE_SGIX */ + 1630, /* GL_TEXTURE_COMPARE_SGIX */ + 1629, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 1681, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 1673, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 356, /* GL_DEPTH_COMPONENT16 */ + 359, /* GL_DEPTH_COMPONENT24 */ + 362, /* GL_DEPTH_COMPONENT32 */ + 304, /* GL_CULL_VERTEX_EXT */ + 306, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + 305, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + 1833, /* GL_WRAP_BORDER_SUN */ + 1623, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 678, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + 1417, /* GL_SINGLE_COLOR */ + 1404, /* GL_SEPARATE_SPECULAR_COLOR */ + 1413, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 536, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + 537, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + 544, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + 539, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + 535, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + 534, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + 538, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + 545, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + 556, /* GL_FRAMEBUFFER_DEFAULT */ + 569, /* GL_FRAMEBUFFER_UNDEFINED */ + 369, /* GL_DEPTH_STENCIL_ATTACHMENT */ + 619, /* GL_INDEX */ + 1744, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 1759, /* GL_UNSIGNED_SHORT_5_6_5 */ + 1760, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 1757, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 1755, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 1752, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 1750, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 1693, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 1694, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 1692, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 940, /* GL_MIRRORED_REPEAT */ + 1360, /* GL_RGB_S3TC */ + 1335, /* GL_RGB4_S3TC */ + 1358, /* GL_RGBA_S3TC */ + 1352, /* GL_RGBA4_S3TC */ + 1356, /* GL_RGBA_DXT5_S3TC */ + 1350, /* GL_RGBA4_DXT5_S3TC */ + 263, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ + 258, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ + 259, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ + 260, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ + 1001, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + 1000, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + 686, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + 512, /* GL_FOG_COORDINATE_SOURCE */ + 504, /* GL_FOG_COORD */ + 528, /* GL_FRAGMENT_DEPTH */ + 310, /* GL_CURRENT_FOG_COORD */ + 511, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + 510, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + 509, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + 506, /* GL_FOG_COORDINATE_ARRAY */ + 198, /* GL_COLOR_SUM */ + 330, /* GL_CURRENT_SECONDARY_COLOR */ + 1397, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1399, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1398, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1396, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1393, /* GL_SECONDARY_COLOR_ARRAY */ + 328, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 28, /* GL_ALIASED_POINT_SIZE_RANGE */ 27, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1525, /* GL_TEXTURE0 */ - 1527, /* GL_TEXTURE1 */ - 1549, /* GL_TEXTURE2 */ - 1571, /* GL_TEXTURE3 */ - 1577, /* GL_TEXTURE4 */ - 1579, /* GL_TEXTURE5 */ - 1581, /* GL_TEXTURE6 */ - 1583, /* GL_TEXTURE7 */ - 1585, /* GL_TEXTURE8 */ - 1587, /* GL_TEXTURE9 */ - 1528, /* GL_TEXTURE10 */ - 1530, /* GL_TEXTURE11 */ - 1532, /* GL_TEXTURE12 */ - 1534, /* GL_TEXTURE13 */ - 1536, /* GL_TEXTURE14 */ - 1538, /* GL_TEXTURE15 */ - 1540, /* GL_TEXTURE16 */ - 1542, /* GL_TEXTURE17 */ - 1544, /* GL_TEXTURE18 */ - 1546, /* GL_TEXTURE19 */ - 1550, /* GL_TEXTURE20 */ - 1552, /* GL_TEXTURE21 */ - 1554, /* GL_TEXTURE22 */ - 1556, /* GL_TEXTURE23 */ - 1558, /* GL_TEXTURE24 */ - 1560, /* GL_TEXTURE25 */ - 1562, /* GL_TEXTURE26 */ - 1564, /* GL_TEXTURE27 */ - 1566, /* GL_TEXTURE28 */ - 1568, /* GL_TEXTURE29 */ - 1572, /* GL_TEXTURE30 */ - 1574, /* GL_TEXTURE31 */ + 1530, /* GL_TEXTURE0 */ + 1532, /* GL_TEXTURE1 */ + 1554, /* GL_TEXTURE2 */ + 1576, /* GL_TEXTURE3 */ + 1582, /* GL_TEXTURE4 */ + 1584, /* GL_TEXTURE5 */ + 1586, /* GL_TEXTURE6 */ + 1588, /* GL_TEXTURE7 */ + 1590, /* GL_TEXTURE8 */ + 1592, /* GL_TEXTURE9 */ + 1533, /* GL_TEXTURE10 */ + 1535, /* GL_TEXTURE11 */ + 1537, /* GL_TEXTURE12 */ + 1539, /* GL_TEXTURE13 */ + 1541, /* GL_TEXTURE14 */ + 1543, /* GL_TEXTURE15 */ + 1545, /* GL_TEXTURE16 */ + 1547, /* GL_TEXTURE17 */ + 1549, /* GL_TEXTURE18 */ + 1551, /* GL_TEXTURE19 */ + 1555, /* GL_TEXTURE20 */ + 1557, /* GL_TEXTURE21 */ + 1559, /* GL_TEXTURE22 */ + 1561, /* GL_TEXTURE23 */ + 1563, /* GL_TEXTURE24 */ + 1565, /* GL_TEXTURE25 */ + 1567, /* GL_TEXTURE26 */ + 1569, /* GL_TEXTURE27 */ + 1571, /* GL_TEXTURE28 */ + 1573, /* GL_TEXTURE29 */ + 1577, /* GL_TEXTURE30 */ + 1579, /* GL_TEXTURE31 */ 18, /* GL_ACTIVE_TEXTURE */ - 130, /* GL_CLIENT_ACTIVE_TEXTURE */ - 916, /* GL_MAX_TEXTURE_UNITS */ - 1714, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 1717, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 1719, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 1711, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1513, /* GL_SUBTRACT */ - 904, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - 244, /* GL_COMPRESSED_ALPHA */ - 248, /* GL_COMPRESSED_LUMINANCE */ - 249, /* GL_COMPRESSED_LUMINANCE_ALPHA */ - 246, /* GL_COMPRESSED_INTENSITY */ - 252, /* GL_COMPRESSED_RGB */ - 253, /* GL_COMPRESSED_RGBA */ - 1632, /* GL_TEXTURE_COMPRESSION_HINT */ - 1694, /* GL_TEXTURE_RECTANGLE_ARB */ - 1604, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - 1261, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - 902, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - 366, /* GL_DEPTH_STENCIL */ - 1739, /* GL_UNSIGNED_INT_24_8 */ - 912, /* GL_MAX_TEXTURE_LOD_BIAS */ - 1685, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 913, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 1661, /* GL_TEXTURE_FILTER_CONTROL */ - 1676, /* GL_TEXTURE_LOD_BIAS */ - 229, /* GL_COMBINE4 */ - 906, /* GL_MAX_SHININESS_NV */ - 907, /* GL_MAX_SPOT_EXPONENT_NV */ - 615, /* GL_INCR_WRAP */ - 339, /* GL_DECR_WRAP */ - 958, /* GL_MODELVIEW1_ARB */ - 1014, /* GL_NORMAL_MAP */ - 1292, /* GL_REFLECTION_MAP */ - 1641, /* GL_TEXTURE_CUBE_MAP */ - 1602, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 1649, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 1643, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 1651, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 1645, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 1653, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 1647, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1259, /* GL_PROXY_TEXTURE_CUBE_MAP */ - 858, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 993, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 518, /* GL_FOG_DISTANCE_MODE_NV */ - 470, /* GL_EYE_RADIAL_NV */ - 469, /* GL_EYE_PLANE_ABSOLUTE_NV */ - 228, /* GL_COMBINE */ - 235, /* GL_COMBINE_RGB */ - 230, /* GL_COMBINE_ALPHA */ - 1359, /* GL_RGB_SCALE */ + 132, /* GL_CLIENT_ACTIVE_TEXTURE */ + 918, /* GL_MAX_TEXTURE_UNITS */ + 1723, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 1726, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 1728, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 1720, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1518, /* GL_SUBTRACT */ + 906, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + 246, /* GL_COMPRESSED_ALPHA */ + 250, /* GL_COMPRESSED_LUMINANCE */ + 251, /* GL_COMPRESSED_LUMINANCE_ALPHA */ + 248, /* GL_COMPRESSED_INTENSITY */ + 254, /* GL_COMPRESSED_RGB */ + 255, /* GL_COMPRESSED_RGBA */ + 1637, /* GL_TEXTURE_COMPRESSION_HINT */ + 1702, /* GL_TEXTURE_RECTANGLE_ARB */ + 1609, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + 1263, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + 904, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + 368, /* GL_DEPTH_STENCIL */ + 1748, /* GL_UNSIGNED_INT_24_8 */ + 914, /* GL_MAX_TEXTURE_LOD_BIAS */ + 1691, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 915, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + 1667, /* GL_TEXTURE_FILTER_CONTROL */ + 1682, /* GL_TEXTURE_LOD_BIAS */ + 231, /* GL_COMBINE4 */ + 908, /* GL_MAX_SHININESS_NV */ + 909, /* GL_MAX_SPOT_EXPONENT_NV */ + 617, /* GL_INCR_WRAP */ + 341, /* GL_DECR_WRAP */ + 960, /* GL_MODELVIEW1_ARB */ + 1016, /* GL_NORMAL_MAP */ + 1294, /* GL_REFLECTION_MAP */ + 1646, /* GL_TEXTURE_CUBE_MAP */ + 1607, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 1654, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 1648, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 1656, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 1650, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 1658, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 1652, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 1261, /* GL_PROXY_TEXTURE_CUBE_MAP */ + 860, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + 995, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + 520, /* GL_FOG_DISTANCE_MODE_NV */ + 472, /* GL_EYE_RADIAL_NV */ + 471, /* GL_EYE_PLANE_ABSOLUTE_NV */ + 230, /* GL_COMBINE */ + 237, /* GL_COMBINE_RGB */ + 232, /* GL_COMBINE_ALPHA */ + 1361, /* GL_RGB_SCALE */ 24, /* GL_ADD_SIGNED */ - 643, /* GL_INTERPOLATE */ - 267, /* GL_CONSTANT */ - 1208, /* GL_PRIMARY_COLOR */ - 1205, /* GL_PREVIOUS */ - 1430, /* GL_SOURCE0_RGB */ - 1436, /* GL_SOURCE1_RGB */ - 1442, /* GL_SOURCE2_RGB */ - 1446, /* GL_SOURCE3_RGB_NV */ - 1427, /* GL_SOURCE0_ALPHA */ - 1433, /* GL_SOURCE1_ALPHA */ - 1439, /* GL_SOURCE2_ALPHA */ - 1445, /* GL_SOURCE3_ALPHA_NV */ - 1050, /* GL_OPERAND0_RGB */ - 1056, /* GL_OPERAND1_RGB */ - 1062, /* GL_OPERAND2_RGB */ - 1066, /* GL_OPERAND3_RGB_NV */ - 1047, /* GL_OPERAND0_ALPHA */ - 1053, /* GL_OPERAND1_ALPHA */ - 1059, /* GL_OPERAND2_ALPHA */ - 1065, /* GL_OPERAND3_ALPHA_NV */ - 1763, /* GL_VERTEX_ARRAY_BINDING */ - 1828, /* GL_YCBCR_422_APPLE */ - 1752, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 1754, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 1417, /* GL_SLICE_ACCUM_SUN */ - 1267, /* GL_QUAD_MESH_SUN */ - 1723, /* GL_TRIANGLE_MESH_SUN */ - 1802, /* GL_VERTEX_PROGRAM_ARB */ - 1813, /* GL_VERTEX_STATE_PROGRAM_NV */ - 1789, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 1795, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 1797, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 1799, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - 330, /* GL_CURRENT_VERTEX_ATTRIB */ - 1221, /* GL_PROGRAM_LENGTH_ARB */ - 1235, /* GL_PROGRAM_STRING_ARB */ - 980, /* GL_MODELVIEW_PROJECTION_NV */ - 610, /* GL_IDENTITY_NV */ - 657, /* GL_INVERSE_NV */ - 1716, /* GL_TRANSPOSE_NV */ - 658, /* GL_INVERSE_TRANSPOSE_NV */ - 888, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - 887, /* GL_MAX_PROGRAM_MATRICES_ARB */ - 795, /* GL_MATRIX0_NV */ - 807, /* GL_MATRIX1_NV */ - 819, /* GL_MATRIX2_NV */ - 823, /* GL_MATRIX3_NV */ - 825, /* GL_MATRIX4_NV */ - 827, /* GL_MATRIX5_NV */ - 829, /* GL_MATRIX6_NV */ - 831, /* GL_MATRIX7_NV */ - 314, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - 311, /* GL_CURRENT_MATRIX_ARB */ - 1805, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - 1808, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1233, /* GL_PROGRAM_PARAMETER_NV */ - 1793, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1237, /* GL_PROGRAM_TARGET_NV */ - 1234, /* GL_PROGRAM_RESIDENT_NV */ - 1708, /* GL_TRACK_MATRIX_NV */ - 1709, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 1803, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1215, /* GL_PROGRAM_ERROR_POSITION_ARB */ - 351, /* GL_DEPTH_CLAMP_NV */ - 1771, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 1778, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 1779, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 1780, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 1781, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 1782, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 1783, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 1784, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 1785, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 1786, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 1772, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 1773, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 1774, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 1775, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 1776, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 1777, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - 743, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - 750, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - 751, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - 752, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - 753, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - 754, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - 755, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - 756, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - 757, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - 758, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - 744, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - 745, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - 746, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - 747, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - 748, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - 749, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - 770, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - 777, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - 778, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - 779, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - 780, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - 781, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - 782, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1214, /* GL_PROGRAM_BINDING_ARB */ - 784, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - 785, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - 771, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - 772, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - 773, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - 774, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - 775, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - 776, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 1630, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 1627, /* GL_TEXTURE_COMPRESSED */ - 1019, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - 266, /* GL_COMPRESSED_TEXTURE_FORMATS */ - 928, /* GL_MAX_VERTEX_UNITS_ARB */ + 645, /* GL_INTERPOLATE */ + 269, /* GL_CONSTANT */ + 1210, /* GL_PRIMARY_COLOR */ + 1207, /* GL_PREVIOUS */ + 1432, /* GL_SOURCE0_RGB */ + 1438, /* GL_SOURCE1_RGB */ + 1444, /* GL_SOURCE2_RGB */ + 1448, /* GL_SOURCE3_RGB_NV */ + 1429, /* GL_SOURCE0_ALPHA */ + 1435, /* GL_SOURCE1_ALPHA */ + 1441, /* GL_SOURCE2_ALPHA */ + 1447, /* GL_SOURCE3_ALPHA_NV */ + 1052, /* GL_OPERAND0_RGB */ + 1058, /* GL_OPERAND1_RGB */ + 1064, /* GL_OPERAND2_RGB */ + 1068, /* GL_OPERAND3_RGB_NV */ + 1049, /* GL_OPERAND0_ALPHA */ + 1055, /* GL_OPERAND1_ALPHA */ + 1061, /* GL_OPERAND2_ALPHA */ + 1067, /* GL_OPERAND3_ALPHA_NV */ + 1772, /* GL_VERTEX_ARRAY_BINDING */ + 1700, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 1701, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 1837, /* GL_YCBCR_422_APPLE */ + 1761, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 1763, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 1709, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1509, /* GL_STORAGE_PRIVATE_APPLE */ + 1508, /* GL_STORAGE_CACHED_APPLE */ + 1510, /* GL_STORAGE_SHARED_APPLE */ + 1419, /* GL_SLICE_ACCUM_SUN */ + 1269, /* GL_QUAD_MESH_SUN */ + 1732, /* GL_TRIANGLE_MESH_SUN */ + 1811, /* GL_VERTEX_PROGRAM_ARB */ + 1822, /* GL_VERTEX_STATE_PROGRAM_NV */ + 1798, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 1804, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 1806, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 1808, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 332, /* GL_CURRENT_VERTEX_ATTRIB */ + 1223, /* GL_PROGRAM_LENGTH_ARB */ + 1237, /* GL_PROGRAM_STRING_ARB */ + 982, /* GL_MODELVIEW_PROJECTION_NV */ + 612, /* GL_IDENTITY_NV */ + 659, /* GL_INVERSE_NV */ + 1725, /* GL_TRANSPOSE_NV */ + 660, /* GL_INVERSE_TRANSPOSE_NV */ + 890, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + 889, /* GL_MAX_PROGRAM_MATRICES_ARB */ + 797, /* GL_MATRIX0_NV */ + 809, /* GL_MATRIX1_NV */ + 821, /* GL_MATRIX2_NV */ + 825, /* GL_MATRIX3_NV */ + 827, /* GL_MATRIX4_NV */ + 829, /* GL_MATRIX5_NV */ + 831, /* GL_MATRIX6_NV */ + 833, /* GL_MATRIX7_NV */ + 316, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + 313, /* GL_CURRENT_MATRIX_ARB */ + 1814, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + 1817, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 1235, /* GL_PROGRAM_PARAMETER_NV */ + 1802, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 1239, /* GL_PROGRAM_TARGET_NV */ + 1236, /* GL_PROGRAM_RESIDENT_NV */ + 1717, /* GL_TRACK_MATRIX_NV */ + 1718, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 1812, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 1217, /* GL_PROGRAM_ERROR_POSITION_ARB */ + 353, /* GL_DEPTH_CLAMP_NV */ + 1780, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 1787, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 1788, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 1789, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 1790, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 1791, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 1792, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 1793, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 1794, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 1795, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 1781, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 1782, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 1783, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 1784, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 1785, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 1786, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 745, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + 752, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + 753, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + 754, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + 755, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + 756, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + 757, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + 758, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + 759, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + 760, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + 746, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + 747, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + 748, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + 749, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + 750, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + 751, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + 772, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + 779, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + 780, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + 781, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + 782, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + 783, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + 784, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + 1216, /* GL_PROGRAM_BINDING_ARB */ + 786, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + 787, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + 773, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + 774, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + 775, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + 776, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + 777, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + 778, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + 1635, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 1632, /* GL_TEXTURE_COMPRESSED */ + 1021, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 268, /* GL_COMPRESSED_TEXTURE_FORMATS */ + 930, /* GL_MAX_VERTEX_UNITS_ARB */ 22, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 1823, /* GL_WEIGHT_SUM_UNITY_ARB */ - 1801, /* GL_VERTEX_BLEND_ARB */ - 332, /* GL_CURRENT_WEIGHT_ARB */ - 1822, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 1821, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 1820, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 1819, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 1816, /* GL_WEIGHT_ARRAY_ARB */ - 379, /* GL_DOT3_RGB */ - 380, /* GL_DOT3_RGBA */ - 260, /* GL_COMPRESSED_RGB_FXT1_3DFX */ - 255, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - 988, /* GL_MULTISAMPLE_3DFX */ - 1380, /* GL_SAMPLE_BUFFERS_3DFX */ - 1371, /* GL_SAMPLES_3DFX */ - 969, /* GL_MODELVIEW2_ARB */ - 972, /* GL_MODELVIEW3_ARB */ - 973, /* GL_MODELVIEW4_ARB */ - 974, /* GL_MODELVIEW5_ARB */ - 975, /* GL_MODELVIEW6_ARB */ - 976, /* GL_MODELVIEW7_ARB */ - 977, /* GL_MODELVIEW8_ARB */ - 978, /* GL_MODELVIEW9_ARB */ - 948, /* GL_MODELVIEW10_ARB */ - 949, /* GL_MODELVIEW11_ARB */ - 950, /* GL_MODELVIEW12_ARB */ - 951, /* GL_MODELVIEW13_ARB */ - 952, /* GL_MODELVIEW14_ARB */ - 953, /* GL_MODELVIEW15_ARB */ - 954, /* GL_MODELVIEW16_ARB */ - 955, /* GL_MODELVIEW17_ARB */ - 956, /* GL_MODELVIEW18_ARB */ - 957, /* GL_MODELVIEW19_ARB */ - 959, /* GL_MODELVIEW20_ARB */ - 960, /* GL_MODELVIEW21_ARB */ - 961, /* GL_MODELVIEW22_ARB */ - 962, /* GL_MODELVIEW23_ARB */ - 963, /* GL_MODELVIEW24_ARB */ - 964, /* GL_MODELVIEW25_ARB */ - 965, /* GL_MODELVIEW26_ARB */ - 966, /* GL_MODELVIEW27_ARB */ - 967, /* GL_MODELVIEW28_ARB */ - 968, /* GL_MODELVIEW29_ARB */ - 970, /* GL_MODELVIEW30_ARB */ - 971, /* GL_MODELVIEW31_ARB */ - 384, /* GL_DOT3_RGB_EXT */ - 382, /* GL_DOT3_RGBA_EXT */ - 942, /* GL_MIRROR_CLAMP_EXT */ - 945, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 983, /* GL_MODULATE_ADD_ATI */ - 984, /* GL_MODULATE_SIGNED_ADD_ATI */ - 985, /* GL_MODULATE_SUBTRACT_ATI */ - 1829, /* GL_YCBCR_MESA */ - 1074, /* GL_PACK_INVERT_MESA */ - 335, /* GL_DEBUG_OBJECT_MESA */ - 336, /* GL_DEBUG_PRINT_MESA */ - 334, /* GL_DEBUG_ASSERT_MESA */ - 107, /* GL_BUFFER_SIZE */ - 109, /* GL_BUFFER_USAGE */ - 113, /* GL_BUMP_ROT_MATRIX_ATI */ - 114, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ - 112, /* GL_BUMP_NUM_TEX_UNITS_ATI */ - 116, /* GL_BUMP_TEX_UNITS_ATI */ - 443, /* GL_DUDV_ATI */ - 442, /* GL_DU8DV8_ATI */ - 111, /* GL_BUMP_ENVMAP_ATI */ - 115, /* GL_BUMP_TARGET_ATI */ - 1478, /* GL_STENCIL_BACK_FUNC */ - 1476, /* GL_STENCIL_BACK_FAIL */ - 1480, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1482, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - 527, /* GL_FRAGMENT_PROGRAM_ARB */ - 1212, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1240, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1239, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1224, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1230, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1229, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 877, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 900, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 899, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - 890, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 896, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 895, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 860, /* GL_MAX_DRAW_BUFFERS */ - 388, /* GL_DRAW_BUFFER0 */ - 391, /* GL_DRAW_BUFFER1 */ - 412, /* GL_DRAW_BUFFER2 */ - 415, /* GL_DRAW_BUFFER3 */ - 418, /* GL_DRAW_BUFFER4 */ - 421, /* GL_DRAW_BUFFER5 */ - 424, /* GL_DRAW_BUFFER6 */ - 427, /* GL_DRAW_BUFFER7 */ - 430, /* GL_DRAW_BUFFER8 */ - 433, /* GL_DRAW_BUFFER9 */ - 392, /* GL_DRAW_BUFFER10 */ - 395, /* GL_DRAW_BUFFER11 */ - 398, /* GL_DRAW_BUFFER12 */ - 401, /* GL_DRAW_BUFFER13 */ - 404, /* GL_DRAW_BUFFER14 */ - 407, /* GL_DRAW_BUFFER15 */ + 1832, /* GL_WEIGHT_SUM_UNITY_ARB */ + 1810, /* GL_VERTEX_BLEND_ARB */ + 334, /* GL_CURRENT_WEIGHT_ARB */ + 1831, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 1830, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 1829, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 1828, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 1825, /* GL_WEIGHT_ARRAY_ARB */ + 381, /* GL_DOT3_RGB */ + 382, /* GL_DOT3_RGBA */ + 262, /* GL_COMPRESSED_RGB_FXT1_3DFX */ + 257, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ + 990, /* GL_MULTISAMPLE_3DFX */ + 1382, /* GL_SAMPLE_BUFFERS_3DFX */ + 1373, /* GL_SAMPLES_3DFX */ + 971, /* GL_MODELVIEW2_ARB */ + 974, /* GL_MODELVIEW3_ARB */ + 975, /* GL_MODELVIEW4_ARB */ + 976, /* GL_MODELVIEW5_ARB */ + 977, /* GL_MODELVIEW6_ARB */ + 978, /* GL_MODELVIEW7_ARB */ + 979, /* GL_MODELVIEW8_ARB */ + 980, /* GL_MODELVIEW9_ARB */ + 950, /* GL_MODELVIEW10_ARB */ + 951, /* GL_MODELVIEW11_ARB */ + 952, /* GL_MODELVIEW12_ARB */ + 953, /* GL_MODELVIEW13_ARB */ + 954, /* GL_MODELVIEW14_ARB */ + 955, /* GL_MODELVIEW15_ARB */ + 956, /* GL_MODELVIEW16_ARB */ + 957, /* GL_MODELVIEW17_ARB */ + 958, /* GL_MODELVIEW18_ARB */ + 959, /* GL_MODELVIEW19_ARB */ + 961, /* GL_MODELVIEW20_ARB */ + 962, /* GL_MODELVIEW21_ARB */ + 963, /* GL_MODELVIEW22_ARB */ + 964, /* GL_MODELVIEW23_ARB */ + 965, /* GL_MODELVIEW24_ARB */ + 966, /* GL_MODELVIEW25_ARB */ + 967, /* GL_MODELVIEW26_ARB */ + 968, /* GL_MODELVIEW27_ARB */ + 969, /* GL_MODELVIEW28_ARB */ + 970, /* GL_MODELVIEW29_ARB */ + 972, /* GL_MODELVIEW30_ARB */ + 973, /* GL_MODELVIEW31_ARB */ + 386, /* GL_DOT3_RGB_EXT */ + 384, /* GL_DOT3_RGBA_EXT */ + 944, /* GL_MIRROR_CLAMP_EXT */ + 947, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + 985, /* GL_MODULATE_ADD_ATI */ + 986, /* GL_MODULATE_SIGNED_ADD_ATI */ + 987, /* GL_MODULATE_SUBTRACT_ATI */ + 1838, /* GL_YCBCR_MESA */ + 1076, /* GL_PACK_INVERT_MESA */ + 337, /* GL_DEBUG_OBJECT_MESA */ + 338, /* GL_DEBUG_PRINT_MESA */ + 336, /* GL_DEBUG_ASSERT_MESA */ + 109, /* GL_BUFFER_SIZE */ + 111, /* GL_BUFFER_USAGE */ + 115, /* GL_BUMP_ROT_MATRIX_ATI */ + 116, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ + 114, /* GL_BUMP_NUM_TEX_UNITS_ATI */ + 118, /* GL_BUMP_TEX_UNITS_ATI */ + 445, /* GL_DUDV_ATI */ + 444, /* GL_DU8DV8_ATI */ + 113, /* GL_BUMP_ENVMAP_ATI */ + 117, /* GL_BUMP_TARGET_ATI */ + 1480, /* GL_STENCIL_BACK_FUNC */ + 1478, /* GL_STENCIL_BACK_FAIL */ + 1482, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1484, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 529, /* GL_FRAGMENT_PROGRAM_ARB */ + 1214, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1242, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1241, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1226, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1232, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1231, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 879, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 902, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 901, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + 892, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 898, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 897, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 862, /* GL_MAX_DRAW_BUFFERS */ + 390, /* GL_DRAW_BUFFER0 */ + 393, /* GL_DRAW_BUFFER1 */ + 414, /* GL_DRAW_BUFFER2 */ + 417, /* GL_DRAW_BUFFER3 */ + 420, /* GL_DRAW_BUFFER4 */ + 423, /* GL_DRAW_BUFFER5 */ + 426, /* GL_DRAW_BUFFER6 */ + 429, /* GL_DRAW_BUFFER7 */ + 432, /* GL_DRAW_BUFFER8 */ + 435, /* GL_DRAW_BUFFER9 */ + 394, /* GL_DRAW_BUFFER10 */ + 397, /* GL_DRAW_BUFFER11 */ + 400, /* GL_DRAW_BUFFER12 */ + 403, /* GL_DRAW_BUFFER13 */ + 406, /* GL_DRAW_BUFFER14 */ + 409, /* GL_DRAW_BUFFER15 */ 81, /* GL_BLEND_EQUATION_ALPHA */ - 840, /* GL_MATRIX_PALETTE_ARB */ - 871, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - 874, /* GL_MAX_PALETTE_MATRICES_ARB */ - 317, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - 834, /* GL_MATRIX_INDEX_ARRAY_ARB */ - 312, /* GL_CURRENT_MATRIX_INDEX_ARB */ - 836, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - 838, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - 837, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - 835, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 1656, /* GL_TEXTURE_DEPTH_SIZE */ - 372, /* GL_DEPTH_TEXTURE_MODE */ - 1622, /* GL_TEXTURE_COMPARE_MODE */ - 1620, /* GL_TEXTURE_COMPARE_FUNC */ - 239, /* GL_COMPARE_R_TO_TEXTURE */ - 1146, /* GL_POINT_SPRITE */ - 292, /* GL_COORD_REPLACE */ - 1150, /* GL_POINT_SPRITE_R_MODE_NV */ - 1269, /* GL_QUERY_COUNTER_BITS */ - 319, /* GL_CURRENT_QUERY */ - 1271, /* GL_QUERY_RESULT */ - 1273, /* GL_QUERY_RESULT_AVAILABLE */ - 922, /* GL_MAX_VERTEX_ATTRIBS */ - 1791, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - 370, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - 369, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - 908, /* GL_MAX_TEXTURE_COORDS */ - 910, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1217, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1219, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1218, /* GL_PROGRAM_FORMAT_ARB */ - 1702, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - 349, /* GL_DEPTH_BOUNDS_TEST_EXT */ - 348, /* GL_DEPTH_BOUNDS_EXT */ + 842, /* GL_MATRIX_PALETTE_ARB */ + 873, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + 876, /* GL_MAX_PALETTE_MATRICES_ARB */ + 319, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + 836, /* GL_MATRIX_INDEX_ARRAY_ARB */ + 314, /* GL_CURRENT_MATRIX_INDEX_ARB */ + 838, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + 840, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + 839, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + 837, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + 1662, /* GL_TEXTURE_DEPTH_SIZE */ + 374, /* GL_DEPTH_TEXTURE_MODE */ + 1627, /* GL_TEXTURE_COMPARE_MODE */ + 1625, /* GL_TEXTURE_COMPARE_FUNC */ + 241, /* GL_COMPARE_R_TO_TEXTURE */ + 1148, /* GL_POINT_SPRITE */ + 294, /* GL_COORD_REPLACE */ + 1152, /* GL_POINT_SPRITE_R_MODE_NV */ + 1271, /* GL_QUERY_COUNTER_BITS */ + 321, /* GL_CURRENT_QUERY */ + 1273, /* GL_QUERY_RESULT */ + 1275, /* GL_QUERY_RESULT_AVAILABLE */ + 924, /* GL_MAX_VERTEX_ATTRIBS */ + 1800, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 372, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + 371, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + 910, /* GL_MAX_TEXTURE_COORDS */ + 912, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + 1219, /* GL_PROGRAM_ERROR_STRING_ARB */ + 1221, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + 1220, /* GL_PROGRAM_FORMAT_ARB */ + 1711, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 351, /* GL_DEPTH_BOUNDS_TEST_EXT */ + 350, /* GL_DEPTH_BOUNDS_EXT */ 52, /* GL_ARRAY_BUFFER */ - 456, /* GL_ELEMENT_ARRAY_BUFFER */ + 458, /* GL_ELEMENT_ARRAY_BUFFER */ 53, /* GL_ARRAY_BUFFER_BINDING */ - 457, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 1765, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1009, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - 146, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - 619, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 1635, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - 452, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1392, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - 505, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 1817, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 1787, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1220, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - 883, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1226, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 892, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1238, /* GL_PROGRAM_TEMPORARIES_ARB */ - 898, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1228, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 894, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1232, /* GL_PROGRAM_PARAMETERS_ARB */ - 897, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1227, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - 893, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1213, /* GL_PROGRAM_ATTRIBS_ARB */ - 878, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1225, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - 891, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1211, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - 876, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1223, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 889, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 884, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - 880, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1241, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 1713, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1282, /* GL_READ_ONLY */ - 1825, /* GL_WRITE_ONLY */ - 1284, /* GL_READ_WRITE */ + 459, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + 1774, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1011, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 148, /* GL_COLOR_ARRAY_BUFFER_BINDING */ + 621, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + 1640, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 454, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + 1394, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 507, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + 1826, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 1796, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 1222, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + 885, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + 1228, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 894, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1240, /* GL_PROGRAM_TEMPORARIES_ARB */ + 900, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + 1230, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 896, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1234, /* GL_PROGRAM_PARAMETERS_ARB */ + 899, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + 1229, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + 895, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1215, /* GL_PROGRAM_ATTRIBS_ARB */ + 880, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + 1227, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + 893, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1213, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + 878, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1225, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 891, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 886, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + 882, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + 1243, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + 1722, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 1284, /* GL_READ_ONLY */ + 1834, /* GL_WRITE_ONLY */ + 1286, /* GL_READ_WRITE */ 101, /* GL_BUFFER_ACCESS */ - 103, /* GL_BUFFER_MAPPED */ - 105, /* GL_BUFFER_MAP_POINTER */ - 1707, /* GL_TIME_ELAPSED_EXT */ - 794, /* GL_MATRIX0_ARB */ - 806, /* GL_MATRIX1_ARB */ - 818, /* GL_MATRIX2_ARB */ - 822, /* GL_MATRIX3_ARB */ - 824, /* GL_MATRIX4_ARB */ - 826, /* GL_MATRIX5_ARB */ - 828, /* GL_MATRIX6_ARB */ - 830, /* GL_MATRIX7_ARB */ - 832, /* GL_MATRIX8_ARB */ - 833, /* GL_MATRIX9_ARB */ - 796, /* GL_MATRIX10_ARB */ - 797, /* GL_MATRIX11_ARB */ - 798, /* GL_MATRIX12_ARB */ - 799, /* GL_MATRIX13_ARB */ - 800, /* GL_MATRIX14_ARB */ - 801, /* GL_MATRIX15_ARB */ - 802, /* GL_MATRIX16_ARB */ - 803, /* GL_MATRIX17_ARB */ - 804, /* GL_MATRIX18_ARB */ - 805, /* GL_MATRIX19_ARB */ - 808, /* GL_MATRIX20_ARB */ - 809, /* GL_MATRIX21_ARB */ - 810, /* GL_MATRIX22_ARB */ - 811, /* GL_MATRIX23_ARB */ - 812, /* GL_MATRIX24_ARB */ - 813, /* GL_MATRIX25_ARB */ - 814, /* GL_MATRIX26_ARB */ - 815, /* GL_MATRIX27_ARB */ - 816, /* GL_MATRIX28_ARB */ - 817, /* GL_MATRIX29_ARB */ - 820, /* GL_MATRIX30_ARB */ - 821, /* GL_MATRIX31_ARB */ - 1508, /* GL_STREAM_DRAW */ - 1510, /* GL_STREAM_READ */ - 1506, /* GL_STREAM_COPY */ - 1469, /* GL_STATIC_DRAW */ - 1471, /* GL_STATIC_READ */ - 1467, /* GL_STATIC_COPY */ - 446, /* GL_DYNAMIC_DRAW */ - 448, /* GL_DYNAMIC_READ */ - 444, /* GL_DYNAMIC_COPY */ - 1114, /* GL_PIXEL_PACK_BUFFER */ - 1118, /* GL_PIXEL_UNPACK_BUFFER */ - 1115, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1119, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - 343, /* GL_DEPTH24_STENCIL8 */ - 1700, /* GL_TEXTURE_STENCIL_SIZE */ - 881, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - 879, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - 882, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - 886, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - 885, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 843, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - 1502, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 104, /* GL_BUFFER_MAPPED */ + 106, /* GL_BUFFER_MAP_POINTER */ + 1716, /* GL_TIME_ELAPSED_EXT */ + 796, /* GL_MATRIX0_ARB */ + 808, /* GL_MATRIX1_ARB */ + 820, /* GL_MATRIX2_ARB */ + 824, /* GL_MATRIX3_ARB */ + 826, /* GL_MATRIX4_ARB */ + 828, /* GL_MATRIX5_ARB */ + 830, /* GL_MATRIX6_ARB */ + 832, /* GL_MATRIX7_ARB */ + 834, /* GL_MATRIX8_ARB */ + 835, /* GL_MATRIX9_ARB */ + 798, /* GL_MATRIX10_ARB */ + 799, /* GL_MATRIX11_ARB */ + 800, /* GL_MATRIX12_ARB */ + 801, /* GL_MATRIX13_ARB */ + 802, /* GL_MATRIX14_ARB */ + 803, /* GL_MATRIX15_ARB */ + 804, /* GL_MATRIX16_ARB */ + 805, /* GL_MATRIX17_ARB */ + 806, /* GL_MATRIX18_ARB */ + 807, /* GL_MATRIX19_ARB */ + 810, /* GL_MATRIX20_ARB */ + 811, /* GL_MATRIX21_ARB */ + 812, /* GL_MATRIX22_ARB */ + 813, /* GL_MATRIX23_ARB */ + 814, /* GL_MATRIX24_ARB */ + 815, /* GL_MATRIX25_ARB */ + 816, /* GL_MATRIX26_ARB */ + 817, /* GL_MATRIX27_ARB */ + 818, /* GL_MATRIX28_ARB */ + 819, /* GL_MATRIX29_ARB */ + 822, /* GL_MATRIX30_ARB */ + 823, /* GL_MATRIX31_ARB */ + 1513, /* GL_STREAM_DRAW */ + 1515, /* GL_STREAM_READ */ + 1511, /* GL_STREAM_COPY */ + 1471, /* GL_STATIC_DRAW */ + 1473, /* GL_STATIC_READ */ + 1469, /* GL_STATIC_COPY */ + 448, /* GL_DYNAMIC_DRAW */ + 450, /* GL_DYNAMIC_READ */ + 446, /* GL_DYNAMIC_COPY */ + 1116, /* GL_PIXEL_PACK_BUFFER */ + 1120, /* GL_PIXEL_UNPACK_BUFFER */ + 1117, /* GL_PIXEL_PACK_BUFFER_BINDING */ + 1121, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 345, /* GL_DEPTH24_STENCIL8 */ + 1708, /* GL_TEXTURE_STENCIL_SIZE */ + 1660, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 881, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + 884, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + 888, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + 887, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + 845, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ + 1504, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 17, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 943, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1373, /* GL_SAMPLES_PASSED */ - 528, /* GL_FRAGMENT_SHADER */ - 1811, /* GL_VERTEX_SHADER */ - 1231, /* GL_PROGRAM_OBJECT_ARB */ - 1405, /* GL_SHADER_OBJECT_ARB */ - 867, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 926, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 920, /* GL_MAX_VARYING_FLOATS */ - 924, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - 852, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1034, /* GL_OBJECT_TYPE_ARB */ - 1407, /* GL_SHADER_TYPE */ - 493, /* GL_FLOAT_VEC2 */ - 495, /* GL_FLOAT_VEC3 */ - 497, /* GL_FLOAT_VEC4 */ - 646, /* GL_INT_VEC2 */ - 648, /* GL_INT_VEC3 */ - 650, /* GL_INT_VEC4 */ + 945, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + 1375, /* GL_SAMPLES_PASSED */ + 108, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ + 103, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ + 530, /* GL_FRAGMENT_SHADER */ + 1820, /* GL_VERTEX_SHADER */ + 1233, /* GL_PROGRAM_OBJECT_ARB */ + 1407, /* GL_SHADER_OBJECT_ARB */ + 869, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + 928, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + 922, /* GL_MAX_VARYING_FLOATS */ + 926, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + 854, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + 1036, /* GL_OBJECT_TYPE_ARB */ + 1409, /* GL_SHADER_TYPE */ + 495, /* GL_FLOAT_VEC2 */ + 497, /* GL_FLOAT_VEC3 */ + 499, /* GL_FLOAT_VEC4 */ + 648, /* GL_INT_VEC2 */ + 650, /* GL_INT_VEC3 */ + 652, /* GL_INT_VEC4 */ 93, /* GL_BOOL */ 95, /* GL_BOOL_VEC2 */ 97, /* GL_BOOL_VEC3 */ 99, /* GL_BOOL_VEC4 */ - 481, /* GL_FLOAT_MAT2 */ - 485, /* GL_FLOAT_MAT3 */ - 489, /* GL_FLOAT_MAT4 */ - 1364, /* GL_SAMPLER_1D */ - 1366, /* GL_SAMPLER_2D */ - 1368, /* GL_SAMPLER_3D */ - 1369, /* GL_SAMPLER_CUBE */ - 1365, /* GL_SAMPLER_1D_SHADOW */ - 1367, /* GL_SAMPLER_2D_SHADOW */ - 483, /* GL_FLOAT_MAT2x3 */ - 484, /* GL_FLOAT_MAT2x4 */ - 487, /* GL_FLOAT_MAT3x2 */ - 488, /* GL_FLOAT_MAT3x4 */ - 491, /* GL_FLOAT_MAT4x2 */ - 492, /* GL_FLOAT_MAT4x3 */ - 341, /* GL_DELETE_STATUS */ - 243, /* GL_COMPILE_STATUS */ - 701, /* GL_LINK_STATUS */ - 1759, /* GL_VALIDATE_STATUS */ - 631, /* GL_INFO_LOG_LENGTH */ + 483, /* GL_FLOAT_MAT2 */ + 487, /* GL_FLOAT_MAT3 */ + 491, /* GL_FLOAT_MAT4 */ + 1366, /* GL_SAMPLER_1D */ + 1368, /* GL_SAMPLER_2D */ + 1370, /* GL_SAMPLER_3D */ + 1371, /* GL_SAMPLER_CUBE */ + 1367, /* GL_SAMPLER_1D_SHADOW */ + 1369, /* GL_SAMPLER_2D_SHADOW */ + 485, /* GL_FLOAT_MAT2x3 */ + 486, /* GL_FLOAT_MAT2x4 */ + 489, /* GL_FLOAT_MAT3x2 */ + 490, /* GL_FLOAT_MAT3x4 */ + 493, /* GL_FLOAT_MAT4x2 */ + 494, /* GL_FLOAT_MAT4x3 */ + 343, /* GL_DELETE_STATUS */ + 245, /* GL_COMPILE_STATUS */ + 703, /* GL_LINK_STATUS */ + 1768, /* GL_VALIDATE_STATUS */ + 633, /* GL_INFO_LOG_LENGTH */ 55, /* GL_ATTACHED_SHADERS */ 20, /* GL_ACTIVE_UNIFORMS */ 21, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1406, /* GL_SHADER_SOURCE_LENGTH */ + 1408, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ - 530, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1409, /* GL_SHADING_LANGUAGE_VERSION */ - 318, /* GL_CURRENT_PROGRAM */ - 1083, /* GL_PALETTE4_RGB8_OES */ - 1085, /* GL_PALETTE4_RGBA8_OES */ - 1081, /* GL_PALETTE4_R5_G6_B5_OES */ - 1084, /* GL_PALETTE4_RGBA4_OES */ - 1082, /* GL_PALETTE4_RGB5_A1_OES */ - 1088, /* GL_PALETTE8_RGB8_OES */ - 1090, /* GL_PALETTE8_RGBA8_OES */ - 1086, /* GL_PALETTE8_R5_G6_B5_OES */ - 1089, /* GL_PALETTE8_RGBA4_OES */ - 1087, /* GL_PALETTE8_RGB5_A1_OES */ - 613, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - 612, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - 1744, /* GL_UNSIGNED_NORMALIZED */ - 1590, /* GL_TEXTURE_1D_ARRAY_EXT */ - 1252, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - 1592, /* GL_TEXTURE_2D_ARRAY_EXT */ - 1255, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - 1598, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - 1600, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - 1461, /* GL_SRGB */ - 1462, /* GL_SRGB8 */ - 1464, /* GL_SRGB_ALPHA */ - 1463, /* GL_SRGB8_ALPHA8 */ - 1421, /* GL_SLUMINANCE_ALPHA */ - 1420, /* GL_SLUMINANCE8_ALPHA8 */ - 1418, /* GL_SLUMINANCE */ - 1419, /* GL_SLUMINANCE8 */ - 264, /* GL_COMPRESSED_SRGB */ - 265, /* GL_COMPRESSED_SRGB_ALPHA */ - 262, /* GL_COMPRESSED_SLUMINANCE */ - 263, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 1148, /* GL_POINT_SPRITE_COORD_ORIGIN */ - 709, /* GL_LOWER_LEFT */ - 1756, /* GL_UPPER_LEFT */ - 1484, /* GL_STENCIL_BACK_REF */ - 1485, /* GL_STENCIL_BACK_VALUE_MASK */ - 1486, /* GL_STENCIL_BACK_WRITEMASK */ - 437, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ - 1298, /* GL_RENDERBUFFER_BINDING_EXT */ - 1279, /* GL_READ_FRAMEBUFFER */ - 436, /* GL_DRAW_FRAMEBUFFER */ - 1280, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - 1308, /* GL_RENDERBUFFER_SAMPLES */ - 540, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - 538, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - 549, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - 545, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - 547, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - 552, /* GL_FRAMEBUFFER_COMPLETE */ - 556, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - 562, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - 560, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - 558, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - 561, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - 559, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - 565, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - 568, /* GL_FRAMEBUFFER_UNSUPPORTED */ - 566, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - 849, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - 152, /* GL_COLOR_ATTACHMENT0 */ - 154, /* GL_COLOR_ATTACHMENT1 */ - 168, /* GL_COLOR_ATTACHMENT2 */ - 170, /* GL_COLOR_ATTACHMENT3 */ - 172, /* GL_COLOR_ATTACHMENT4 */ - 174, /* GL_COLOR_ATTACHMENT5 */ - 176, /* GL_COLOR_ATTACHMENT6 */ - 178, /* GL_COLOR_ATTACHMENT7 */ - 180, /* GL_COLOR_ATTACHMENT8 */ - 182, /* GL_COLOR_ATTACHMENT9 */ - 155, /* GL_COLOR_ATTACHMENT10 */ - 157, /* GL_COLOR_ATTACHMENT11 */ - 159, /* GL_COLOR_ATTACHMENT12 */ - 161, /* GL_COLOR_ATTACHMENT13 */ - 163, /* GL_COLOR_ATTACHMENT14 */ - 165, /* GL_COLOR_ATTACHMENT15 */ - 344, /* GL_DEPTH_ATTACHMENT */ - 1474, /* GL_STENCIL_ATTACHMENT */ - 531, /* GL_FRAMEBUFFER */ - 1296, /* GL_RENDERBUFFER */ - 1310, /* GL_RENDERBUFFER_WIDTH */ - 1303, /* GL_RENDERBUFFER_HEIGHT */ - 1305, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1497, /* GL_STENCIL_INDEX_EXT */ - 1494, /* GL_STENCIL_INDEX1_EXT */ - 1495, /* GL_STENCIL_INDEX4_EXT */ - 1496, /* GL_STENCIL_INDEX8_EXT */ - 1493, /* GL_STENCIL_INDEX16_EXT */ - 1307, /* GL_RENDERBUFFER_RED_SIZE */ - 1302, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1299, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1297, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1300, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1309, /* GL_RENDERBUFFER_STENCIL_SIZE */ - 564, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - 905, /* GL_MAX_SAMPLES */ - 1266, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - 478, /* GL_FIRST_VERTEX_CONVENTION_EXT */ - 661, /* GL_LAST_VERTEX_CONVENTION_EXT */ - 1245, /* GL_PROVOKING_VERTEX_EXT */ - 298, /* GL_COPY_READ_BUFFER */ - 299, /* GL_COPY_WRITE_BUFFER */ - 1357, /* GL_RGBA_SNORM */ - 1353, /* GL_RGBA8_SNORM */ - 1414, /* GL_SIGNED_NORMALIZED */ - 463, /* GL_EVAL_BIT */ - 1277, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - 703, /* GL_LIST_BIT */ - 1606, /* GL_TEXTURE_BIT */ - 1388, /* GL_SCISSOR_BIT */ + 532, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + 1411, /* GL_SHADING_LANGUAGE_VERSION */ + 320, /* GL_CURRENT_PROGRAM */ + 1085, /* GL_PALETTE4_RGB8_OES */ + 1087, /* GL_PALETTE4_RGBA8_OES */ + 1083, /* GL_PALETTE4_R5_G6_B5_OES */ + 1086, /* GL_PALETTE4_RGBA4_OES */ + 1084, /* GL_PALETTE4_RGB5_A1_OES */ + 1090, /* GL_PALETTE8_RGB8_OES */ + 1092, /* GL_PALETTE8_RGBA8_OES */ + 1088, /* GL_PALETTE8_R5_G6_B5_OES */ + 1091, /* GL_PALETTE8_RGBA4_OES */ + 1089, /* GL_PALETTE8_RGB5_A1_OES */ + 615, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ + 614, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ + 1753, /* GL_UNSIGNED_NORMALIZED */ + 1595, /* GL_TEXTURE_1D_ARRAY_EXT */ + 1254, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + 1597, /* GL_TEXTURE_2D_ARRAY_EXT */ + 1257, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + 1603, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + 1605, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + 1463, /* GL_SRGB */ + 1464, /* GL_SRGB8 */ + 1466, /* GL_SRGB_ALPHA */ + 1465, /* GL_SRGB8_ALPHA8 */ + 1423, /* GL_SLUMINANCE_ALPHA */ + 1422, /* GL_SLUMINANCE8_ALPHA8 */ + 1420, /* GL_SLUMINANCE */ + 1421, /* GL_SLUMINANCE8 */ + 266, /* GL_COMPRESSED_SRGB */ + 267, /* GL_COMPRESSED_SRGB_ALPHA */ + 264, /* GL_COMPRESSED_SLUMINANCE */ + 265, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ + 1150, /* GL_POINT_SPRITE_COORD_ORIGIN */ + 711, /* GL_LOWER_LEFT */ + 1765, /* GL_UPPER_LEFT */ + 1486, /* GL_STENCIL_BACK_REF */ + 1487, /* GL_STENCIL_BACK_VALUE_MASK */ + 1488, /* GL_STENCIL_BACK_WRITEMASK */ + 439, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ + 1300, /* GL_RENDERBUFFER_BINDING_EXT */ + 1281, /* GL_READ_FRAMEBUFFER */ + 438, /* GL_DRAW_FRAMEBUFFER */ + 1282, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + 1310, /* GL_RENDERBUFFER_SAMPLES */ + 542, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + 540, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + 551, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + 547, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + 549, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + 554, /* GL_FRAMEBUFFER_COMPLETE */ + 558, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + 564, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + 562, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + 560, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + 563, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + 561, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ + 567, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ + 570, /* GL_FRAMEBUFFER_UNSUPPORTED */ + 568, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + 851, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + 154, /* GL_COLOR_ATTACHMENT0 */ + 156, /* GL_COLOR_ATTACHMENT1 */ + 170, /* GL_COLOR_ATTACHMENT2 */ + 172, /* GL_COLOR_ATTACHMENT3 */ + 174, /* GL_COLOR_ATTACHMENT4 */ + 176, /* GL_COLOR_ATTACHMENT5 */ + 178, /* GL_COLOR_ATTACHMENT6 */ + 180, /* GL_COLOR_ATTACHMENT7 */ + 182, /* GL_COLOR_ATTACHMENT8 */ + 184, /* GL_COLOR_ATTACHMENT9 */ + 157, /* GL_COLOR_ATTACHMENT10 */ + 159, /* GL_COLOR_ATTACHMENT11 */ + 161, /* GL_COLOR_ATTACHMENT12 */ + 163, /* GL_COLOR_ATTACHMENT13 */ + 165, /* GL_COLOR_ATTACHMENT14 */ + 167, /* GL_COLOR_ATTACHMENT15 */ + 346, /* GL_DEPTH_ATTACHMENT */ + 1476, /* GL_STENCIL_ATTACHMENT */ + 533, /* GL_FRAMEBUFFER */ + 1298, /* GL_RENDERBUFFER */ + 1312, /* GL_RENDERBUFFER_WIDTH */ + 1305, /* GL_RENDERBUFFER_HEIGHT */ + 1307, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + 1499, /* GL_STENCIL_INDEX_EXT */ + 1496, /* GL_STENCIL_INDEX1_EXT */ + 1497, /* GL_STENCIL_INDEX4_EXT */ + 1498, /* GL_STENCIL_INDEX8_EXT */ + 1495, /* GL_STENCIL_INDEX16_EXT */ + 1309, /* GL_RENDERBUFFER_RED_SIZE */ + 1304, /* GL_RENDERBUFFER_GREEN_SIZE */ + 1301, /* GL_RENDERBUFFER_BLUE_SIZE */ + 1299, /* GL_RENDERBUFFER_ALPHA_SIZE */ + 1302, /* GL_RENDERBUFFER_DEPTH_SIZE */ + 1311, /* GL_RENDERBUFFER_STENCIL_SIZE */ + 566, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + 907, /* GL_MAX_SAMPLES */ + 1268, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + 480, /* GL_FIRST_VERTEX_CONVENTION_EXT */ + 663, /* GL_LAST_VERTEX_CONVENTION_EXT */ + 1247, /* GL_PROVOKING_VERTEX_EXT */ + 300, /* GL_COPY_READ_BUFFER */ + 301, /* GL_COPY_WRITE_BUFFER */ + 1359, /* GL_RGBA_SNORM */ + 1355, /* GL_RGBA8_SNORM */ + 1416, /* GL_SIGNED_NORMALIZED */ + 465, /* GL_EVAL_BIT */ + 1279, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 705, /* GL_LIST_BIT */ + 1611, /* GL_TEXTURE_BIT */ + 1390, /* GL_SCISSOR_BIT */ 29, /* GL_ALL_ATTRIB_BITS */ - 990, /* GL_MULTISAMPLE_BIT */ + 992, /* GL_MULTISAMPLE_BIT */ 30, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index c60b58a492..195fdde346 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -61,6 +61,7 @@ static const struct { { OFF, "GL_ARB_pixel_buffer_object", F(EXT_pixel_buffer_object) }, { OFF, "GL_ARB_point_parameters", F(EXT_point_parameters) }, { OFF, "GL_ARB_point_sprite", F(ARB_point_sprite) }, + { OFF, "GL_ARB_seamless_cube_map", F(ARB_seamless_cube_map) }, { OFF, "GL_ARB_shader_objects", F(ARB_shader_objects) }, { OFF, "GL_ARB_shading_language_100", F(ARB_shading_language_100) }, { OFF, "GL_ARB_shading_language_120", F(ARB_shading_language_120) }, @@ -78,6 +79,7 @@ static const struct { { OFF, "GL_ARB_texture_non_power_of_two", F(ARB_texture_non_power_of_two)}, { OFF, "GL_ARB_texture_rectangle", F(NV_texture_rectangle) }, { ON, "GL_ARB_transpose_matrix", F(ARB_transpose_matrix) }, + { OFF, "GL_ARB_vertex_array_bgra", F(EXT_vertex_array_bgra) }, { OFF, "GL_ARB_vertex_array_object", F(ARB_vertex_array_object) }, { ON, "GL_ARB_vertex_buffer_object", F(ARB_vertex_buffer_object) }, { OFF, "GL_ARB_vertex_program", F(ARB_vertex_program) }, @@ -413,6 +415,7 @@ _mesa_enable_2_0_extensions(GLcontext *ctx) ctx->Extensions.ARB_fragment_shader = GL_TRUE; #endif ctx->Extensions.ARB_point_sprite = GL_TRUE; + ctx->Extensions.EXT_blend_equation_separate = GL_TRUE; ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE; #if FEATURE_ARB_shader_objects ctx->Extensions.ARB_shader_objects = GL_TRUE; diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 83301f1e62..825a23090b 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -417,21 +417,22 @@ test_attachment_completeness(const GLcontext *ctx, GLenum format, if (format == GL_COLOR) { if (att->Renderbuffer->_BaseFormat != GL_RGB && att->Renderbuffer->_BaseFormat != GL_RGBA) { - ASSERT(att->Renderbuffer->RedBits); - ASSERT(att->Renderbuffer->GreenBits); - ASSERT(att->Renderbuffer->BlueBits); att_incomplete("bad renderbuffer color format"); att->Complete = GL_FALSE; return; } + ASSERT(att->Renderbuffer->RedBits); + ASSERT(att->Renderbuffer->GreenBits); + ASSERT(att->Renderbuffer->BlueBits); } else if (format == GL_DEPTH) { - ASSERT(att->Renderbuffer->DepthBits); if (att->Renderbuffer->_BaseFormat == GL_DEPTH_COMPONENT) { + ASSERT(att->Renderbuffer->DepthBits); /* OK */ } else if (ctx->Extensions.EXT_packed_depth_stencil && att->Renderbuffer->_BaseFormat == GL_DEPTH_STENCIL_EXT) { + ASSERT(att->Renderbuffer->DepthBits); /* OK */ } else { @@ -442,12 +443,13 @@ test_attachment_completeness(const GLcontext *ctx, GLenum format, } else { assert(format == GL_STENCIL); - ASSERT(att->Renderbuffer->StencilBits); if (att->Renderbuffer->_BaseFormat == GL_STENCIL_INDEX) { + ASSERT(att->Renderbuffer->StencilBits); /* OK */ } else if (ctx->Extensions.EXT_packed_depth_stencil && att->Renderbuffer->_BaseFormat == GL_DEPTH_STENCIL_EXT) { + ASSERT(att->Renderbuffer->StencilBits); /* OK */ } else { @@ -2038,7 +2040,9 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, if (mask & GL_STENCIL_BUFFER_BIT) { struct gl_renderbuffer *readRb = readFb->_StencilBuffer; struct gl_renderbuffer *drawRb = drawFb->_StencilBuffer; - if (readRb->StencilBits != drawRb->StencilBits) { + if (!readRb || + !drawRb || + readRb->StencilBits != drawRb->StencilBits) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBlitFramebufferEXT(stencil buffer size mismatch"); return; @@ -2048,7 +2052,9 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, if (mask & GL_DEPTH_BUFFER_BIT) { struct gl_renderbuffer *readRb = readFb->_DepthBuffer; struct gl_renderbuffer *drawRb = drawFb->_DepthBuffer; - if (readRb->DepthBits != drawRb->DepthBits) { + if (!readRb || + !drawRb || + readRb->DepthBits != drawRb->DepthBits) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBlitFramebufferEXT(depth buffer size mismatch"); return; diff --git a/src/mesa/main/fog.c b/src/mesa/main/fog.c index 50a61bd84b..4323d3db82 100644 --- a/src/mesa/main/fog.c +++ b/src/mesa/main/fog.c @@ -67,7 +67,7 @@ _mesa_Fogiv(GLenum pname, const GLint *params ) break; default: /* Error will be caught later in _mesa_Fogfv */ - ; + ASSIGN_4V(p, 0.0F, 0.0F, 0.0F, 0.0F); } _mesa_Fogfv(pname, p); } diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c index 5a13c88a7a..dc79b8ca61 100644 --- a/src/mesa/main/framebuffer.c +++ b/src/mesa/main/framebuffer.c @@ -817,7 +817,7 @@ _mesa_update_framebuffer(GLcontext *ctx) /** * Check if the renderbuffer for a read operation (glReadPixels, glCopyPixels, - * glCopyTex[Sub]Image, etc. exists. + * glCopyTex[Sub]Image, etc) exists. * \param format a basic image format such as GL_RGB, GL_RGBA, GL_ALPHA, * GL_DEPTH_COMPONENT, etc. or GL_COLOR, GL_DEPTH, GL_STENCIL. * \return GL_TRUE if buffer exists, GL_FALSE otherwise @@ -825,8 +825,12 @@ _mesa_update_framebuffer(GLcontext *ctx) GLboolean _mesa_source_buffer_exists(GLcontext *ctx, GLenum format) { - const struct gl_renderbuffer_attachment *att - = ctx->ReadBuffer->Attachment; + const struct gl_renderbuffer_attachment *att = ctx->ReadBuffer->Attachment; + + /* If we don't know the framebuffer status, update it now */ + if (ctx->ReadBuffer->_Status == 0) { + _mesa_test_framebuffer_completeness(ctx, ctx->ReadBuffer); + } if (ctx->ReadBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { return GL_FALSE; @@ -850,10 +854,8 @@ _mesa_source_buffer_exists(GLcontext *ctx, GLenum format) if (ctx->ReadBuffer->_ColorReadBuffer == NULL) { return GL_FALSE; } - /* XXX enable this post 6.5 release: ASSERT(ctx->ReadBuffer->_ColorReadBuffer->RedBits > 0 || ctx->ReadBuffer->_ColorReadBuffer->IndexBits > 0); - */ break; case GL_DEPTH: case GL_DEPTH_COMPONENT: @@ -891,13 +893,17 @@ _mesa_source_buffer_exists(GLcontext *ctx, GLenum format) /** * As above, but for drawing operations. - * XXX code do some code merging w/ above function. + * XXX could do some code merging w/ above function. */ GLboolean _mesa_dest_buffer_exists(GLcontext *ctx, GLenum format) { - const struct gl_renderbuffer_attachment *att - = ctx->ReadBuffer->Attachment; + const struct gl_renderbuffer_attachment *att = ctx->DrawBuffer->Attachment; + + /* If we don't know the framebuffer status, update it now */ + if (ctx->DrawBuffer->_Status == 0) { + _mesa_test_framebuffer_completeness(ctx, ctx->DrawBuffer); + } if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) { return GL_FALSE; @@ -918,7 +924,7 @@ _mesa_dest_buffer_exists(GLcontext *ctx, GLenum format) case GL_BGRA: case GL_ABGR_EXT: case GL_COLOR_INDEX: - /* nothing special */ + /* Nothing special since GL_DRAW_BUFFER could be GL_NONE. */ /* Could assert that colorbuffer has RedBits > 0 */ break; case GL_DEPTH: @@ -945,7 +951,7 @@ _mesa_dest_buffer_exists(GLcontext *ctx, GLenum format) break; default: _mesa_problem(ctx, - "Unexpected format 0x%x in _mesa_source_buffer_exists", + "Unexpected format 0x%x in _mesa_dest_buffer_exists", format); return GL_FALSE; } diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 516159bbf2..79f06a3c40 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -1879,6 +1879,10 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params ) CHECK_EXT1(APPLE_vertex_array_object, "GetBooleanv"); params[0] = INT_TO_BOOLEAN(ctx->Array.ArrayObj->Name); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + CHECK_EXT1(ARB_seamless_cube_map, "GetBooleanv"); + params[0] = ctx->Texture.CubeMapSeamless; + break; default: _mesa_error(ctx, GL_INVALID_ENUM, "glGetBooleanv(pname=0x%x)", pname); } @@ -3701,6 +3705,10 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params ) CHECK_EXT1(APPLE_vertex_array_object, "GetFloatv"); params[0] = (GLfloat)(ctx->Array.ArrayObj->Name); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + CHECK_EXT1(ARB_seamless_cube_map, "GetFloatv"); + params[0] = BOOLEAN_TO_FLOAT(ctx->Texture.CubeMapSeamless); + break; default: _mesa_error(ctx, GL_INVALID_ENUM, "glGetFloatv(pname=0x%x)", pname); } @@ -5523,6 +5531,10 @@ _mesa_GetIntegerv( GLenum pname, GLint *params ) CHECK_EXT1(APPLE_vertex_array_object, "GetIntegerv"); params[0] = ctx->Array.ArrayObj->Name; break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + CHECK_EXT1(ARB_seamless_cube_map, "GetIntegerv"); + params[0] = BOOLEAN_TO_INT(ctx->Texture.CubeMapSeamless); + break; default: _mesa_error(ctx, GL_INVALID_ENUM, "glGetIntegerv(pname=0x%x)", pname); } diff --git a/src/mesa/main/get_gen.py b/src/mesa/main/get_gen.py index 5666ad0e42..e9c8226d08 100644 --- a/src/mesa/main/get_gen.py +++ b/src/mesa/main/get_gen.py @@ -1015,6 +1015,10 @@ StateVars = [ # GL_APPLE_vertex_array_object ( "GL_VERTEX_ARRAY_BINDING_APPLE", GLint, ["ctx->Array.ArrayObj->Name"], "", ["APPLE_vertex_array_object"] ), + + # GL_ARB_seamless_cube_map + ( "GL_TEXTURE_CUBE_MAP_SEAMLESS", GLboolean, ["ctx->Texture.CubeMapSeamless"], "", + ["ARB_seamless_cube_map"] ), ] diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c index 41fd786d7d..6599ed9698 100644 --- a/src/mesa/main/getstring.c +++ b/src/mesa/main/getstring.c @@ -266,5 +266,6 @@ _mesa_GetError( void ) _mesa_debug(ctx, "glGetError <-- %s\n", _mesa_lookup_enum_by_nr(e)); ctx->ErrorValue = (GLenum) GL_NO_ERROR; + ctx->ErrorDebugCount = 0; return e; } diff --git a/src/mesa/main/histogram.c b/src/mesa/main/histogram.c index 5fee4fd0e3..726a50d3b1 100644 --- a/src/mesa/main/histogram.c +++ b/src/mesa/main/histogram.c @@ -649,7 +649,7 @@ _mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvo return; } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack min/max values into a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Pack, 2, 1, 1, @@ -687,7 +687,7 @@ _mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvo format, type, values, &ctx->Pack, 0x0); } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } @@ -733,7 +733,7 @@ _mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, G return; } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack min/max values into a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(1, &ctx->Pack, ctx->Histogram.Width, 1, 1, @@ -761,7 +761,7 @@ _mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, G (CONST GLuint (*)[4]) ctx->Histogram.Count, format, type, values, &ctx->Pack); - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c index 090e5eb330..d77c593ac7 100644 --- a/src/mesa/main/image.c +++ b/src/mesa/main/image.c @@ -531,6 +531,210 @@ _mesa_is_legal_format_and_type( GLcontext *ctx, GLenum format, GLenum type ) /** + * Test if the given image format is a color/RGBA format (i.e., not color + * index, depth, stencil, etc). + * \param format the image format value (may by an internal texture format) + * \return GL_TRUE if its a color/RGBA format, GL_FALSE otherwise. + */ +GLboolean +_mesa_is_color_format(GLenum format) +{ + switch (format) { + case GL_RED: + case GL_GREEN: + case GL_BLUE: + case GL_ALPHA: + case GL_ALPHA4: + case GL_ALPHA8: + case GL_ALPHA12: + case GL_ALPHA16: + case 1: + case GL_LUMINANCE: + case GL_LUMINANCE4: + case GL_LUMINANCE8: + case GL_LUMINANCE12: + case GL_LUMINANCE16: + case 2: + case GL_LUMINANCE_ALPHA: + case GL_LUMINANCE4_ALPHA4: + case GL_LUMINANCE6_ALPHA2: + case GL_LUMINANCE8_ALPHA8: + case GL_LUMINANCE12_ALPHA4: + case GL_LUMINANCE12_ALPHA12: + case GL_LUMINANCE16_ALPHA16: + case GL_INTENSITY: + case GL_INTENSITY4: + case GL_INTENSITY8: + case GL_INTENSITY12: + case GL_INTENSITY16: + case 3: + case GL_RGB: + case GL_BGR: + case GL_R3_G3_B2: + case GL_RGB4: + case GL_RGB5: + case GL_RGB8: + case GL_RGB10: + case GL_RGB12: + case GL_RGB16: + case 4: + case GL_ABGR_EXT: + case GL_RGBA: + case GL_BGRA: + case GL_RGBA2: + case GL_RGBA4: + case GL_RGB5_A1: + case GL_RGBA8: + case GL_RGB10_A2: + case GL_RGBA12: + case GL_RGBA16: + /* float texture formats */ + case GL_ALPHA16F_ARB: + case GL_ALPHA32F_ARB: + case GL_LUMINANCE16F_ARB: + case GL_LUMINANCE32F_ARB: + case GL_LUMINANCE_ALPHA16F_ARB: + case GL_LUMINANCE_ALPHA32F_ARB: + case GL_INTENSITY16F_ARB: + case GL_INTENSITY32F_ARB: + case GL_RGB16F_ARB: + case GL_RGB32F_ARB: + case GL_RGBA16F_ARB: + case GL_RGBA32F_ARB: + /* compressed formats */ + case GL_COMPRESSED_ALPHA: + case GL_COMPRESSED_LUMINANCE: + case GL_COMPRESSED_LUMINANCE_ALPHA: + case GL_COMPRESSED_INTENSITY: + case GL_COMPRESSED_RGB: + case GL_COMPRESSED_RGBA: + case GL_RGB_S3TC: + case GL_RGB4_S3TC: + case GL_RGBA_S3TC: + case GL_RGBA4_S3TC: + case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: + case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: + case GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: + case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: + case GL_COMPRESSED_RGB_FXT1_3DFX: + case GL_COMPRESSED_RGBA_FXT1_3DFX: +#if FEATURE_EXT_texture_sRGB + case GL_SRGB_EXT: + case GL_SRGB8_EXT: + case GL_SRGB_ALPHA_EXT: + case GL_SRGB8_ALPHA8_EXT: + case GL_SLUMINANCE_ALPHA_EXT: + case GL_SLUMINANCE8_ALPHA8_EXT: + case GL_SLUMINANCE_EXT: + case GL_SLUMINANCE8_EXT: + case GL_COMPRESSED_SRGB_EXT: + case GL_COMPRESSED_SRGB_S3TC_DXT1_EXT: + case GL_COMPRESSED_SRGB_ALPHA_EXT: + case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: + case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: + case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: + case GL_COMPRESSED_SLUMINANCE_EXT: + case GL_COMPRESSED_SLUMINANCE_ALPHA_EXT: +#endif /* FEATURE_EXT_texture_sRGB */ + return GL_TRUE; + /* signed texture formats */ + case GL_RGBA_SNORM: + case GL_RGBA8_SNORM: + return GL_TRUE; + case GL_YCBCR_MESA: /* not considered to be RGB */ + /* fall-through */ + default: + return GL_FALSE; + } +} + + +/** + * Test if the given image format is a color index format. + */ +GLboolean +_mesa_is_index_format(GLenum format) +{ + switch (format) { + case GL_COLOR_INDEX: + case GL_COLOR_INDEX1_EXT: + case GL_COLOR_INDEX2_EXT: + case GL_COLOR_INDEX4_EXT: + case GL_COLOR_INDEX8_EXT: + case GL_COLOR_INDEX12_EXT: + case GL_COLOR_INDEX16_EXT: + return GL_TRUE; + default: + return GL_FALSE; + } +} + + +/** + * Test if the given image format is a depth component format. + */ +GLboolean +_mesa_is_depth_format(GLenum format) +{ + switch (format) { + case GL_DEPTH_COMPONENT: + case GL_DEPTH_COMPONENT16: + case GL_DEPTH_COMPONENT24: + case GL_DEPTH_COMPONENT32: + return GL_TRUE; + default: + return GL_FALSE; + } +} + + +/** + * Test if the given image format is a YCbCr format. + */ +GLboolean +_mesa_is_ycbcr_format(GLenum format) +{ + switch (format) { + case GL_YCBCR_MESA: + return GL_TRUE; + default: + return GL_FALSE; + } +} + + +/** + * Test if the given image format is a depth+stencil format. + */ +GLboolean +_mesa_is_depthstencil_format(GLenum format) +{ + switch (format) { + case GL_DEPTH24_STENCIL8_EXT: + case GL_DEPTH_STENCIL_EXT: + return GL_TRUE; + default: + return GL_FALSE; + } +} + +/** + * Test if the given image format is a dudv format. + */ +GLboolean +_mesa_is_dudv_format(GLenum format) +{ + switch (format) { + case GL_DUDV_ATI: + case GL_DU8DV8_ATI: + return GL_TRUE; + default: + return GL_FALSE; + } +} + + +/** * Return the address of a specific pixel in an image (1D, 2D or 3D). * * Pixel unpacking/packing parameters are observed according to \p packing. @@ -5335,3 +5539,181 @@ _mesa_clip_to_region(GLint xmin, GLint ymin, return GL_TRUE; } + + +/** + * Clip dst coords against Xmax (or Ymax). + */ +static INLINE void +clip_right_or_top(GLint *srcX0, GLint *srcX1, + GLint *dstX0, GLint *dstX1, + GLint maxValue) +{ + GLfloat t, bias; + + if (*dstX1 > maxValue) { + /* X1 outside right edge */ + ASSERT(*dstX0 < maxValue); /* X0 should be inside right edge */ + t = (GLfloat) (maxValue - *dstX0) / (GLfloat) (*dstX1 - *dstX0); + /* chop off [t, 1] part */ + ASSERT(t >= 0.0 && t <= 1.0); + *dstX1 = maxValue; + bias = (*srcX0 < *srcX1) ? 0.5 : -0.5; + *srcX1 = *srcX0 + (GLint) (t * (*srcX1 - *srcX0) + bias); + } + else if (*dstX0 > maxValue) { + /* X0 outside right edge */ + ASSERT(*dstX1 < maxValue); /* X1 should be inside right edge */ + t = (GLfloat) (maxValue - *dstX1) / (GLfloat) (*dstX0 - *dstX1); + /* chop off [t, 1] part */ + ASSERT(t >= 0.0 && t <= 1.0); + *dstX0 = maxValue; + bias = (*srcX0 < *srcX1) ? -0.5 : 0.5; + *srcX0 = *srcX1 + (GLint) (t * (*srcX0 - *srcX1) + bias); + } +} + + +/** + * Clip dst coords against Xmin (or Ymin). + */ +static INLINE void +clip_left_or_bottom(GLint *srcX0, GLint *srcX1, + GLint *dstX0, GLint *dstX1, + GLint minValue) +{ + GLfloat t, bias; + + if (*dstX0 < minValue) { + /* X0 outside left edge */ + ASSERT(*dstX1 > minValue); /* X1 should be inside left edge */ + t = (GLfloat) (minValue - *dstX0) / (GLfloat) (*dstX1 - *dstX0); + /* chop off [0, t] part */ + ASSERT(t >= 0.0 && t <= 1.0); + *dstX0 = minValue; + bias = (*srcX0 < *srcX1) ? 0.5 : -0.5; /* flipped??? */ + *srcX0 = *srcX0 + (GLint) (t * (*srcX1 - *srcX0) + bias); + } + else if (*dstX1 < minValue) { + /* X1 outside left edge */ + ASSERT(*dstX0 > minValue); /* X0 should be inside left edge */ + t = (GLfloat) (minValue - *dstX1) / (GLfloat) (*dstX0 - *dstX1); + /* chop off [0, t] part */ + ASSERT(t >= 0.0 && t <= 1.0); + *dstX1 = minValue; + bias = (*srcX0 < *srcX1) ? 0.5 : -0.5; + *srcX1 = *srcX1 + (GLint) (t * (*srcX0 - *srcX1) + bias); + } +} + + +/** + * Do clipping of blit src/dest rectangles. + * The dest rect is clipped against both the buffer bounds and scissor bounds. + * The src rect is just clipped against the buffer bounds. + * + * When either the src or dest rect is clipped, the other is also clipped + * proportionately! + * + * Note that X0 need not be less than X1 (same for Y) for either the source + * and dest rects. That makes the clipping a little trickier. + * + * \return GL_TRUE if anything is left to draw, GL_FALSE if totally clipped + */ +GLboolean +_mesa_clip_blit(GLcontext *ctx, + GLint *srcX0, GLint *srcY0, GLint *srcX1, GLint *srcY1, + GLint *dstX0, GLint *dstY0, GLint *dstX1, GLint *dstY1) +{ + const GLint srcXmin = 0; + const GLint srcXmax = ctx->ReadBuffer->Width; + const GLint srcYmin = 0; + const GLint srcYmax = ctx->ReadBuffer->Height; + + /* these include scissor bounds */ + const GLint dstXmin = ctx->DrawBuffer->_Xmin; + const GLint dstXmax = ctx->DrawBuffer->_Xmax; + const GLint dstYmin = ctx->DrawBuffer->_Ymin; + const GLint dstYmax = ctx->DrawBuffer->_Ymax; + + /* + printf("PreClipX: src: %d .. %d dst: %d .. %d\n", + *srcX0, *srcX1, *dstX0, *dstX1); + printf("PreClipY: src: %d .. %d dst: %d .. %d\n", + *srcY0, *srcY1, *dstY0, *dstY1); + */ + + /* trivial rejection tests */ + if (*dstX0 == *dstX1) + return GL_FALSE; /* no width */ + if (*dstX0 <= dstXmin && *dstX1 <= dstXmin) + return GL_FALSE; /* totally out (left) of bounds */ + if (*dstX0 >= dstXmax && *dstX1 >= dstXmax) + return GL_FALSE; /* totally out (right) of bounds */ + + if (*dstY0 == *dstY1) + return GL_FALSE; + if (*dstY0 <= dstYmin && *dstY1 <= dstYmin) + return GL_FALSE; + if (*dstY0 >= dstYmax && *dstY1 >= dstYmax) + return GL_FALSE; + + if (*srcX0 == *srcX1) + return GL_FALSE; + if (*srcX0 <= srcXmin && *srcX1 <= srcXmin) + return GL_FALSE; + if (*srcX0 >= srcXmax && *srcX1 >= srcXmax) + return GL_FALSE; + + if (*srcY0 == *srcY1) + return GL_FALSE; + if (*srcY0 <= srcYmin && *srcY1 <= srcYmin) + return GL_FALSE; + if (*srcY0 >= srcYmax && *srcY1 >= srcYmax) + return GL_FALSE; + + /* + * dest clip + */ + clip_right_or_top(srcX0, srcX1, dstX0, dstX1, dstXmax); + clip_right_or_top(srcY0, srcY1, dstY0, dstY1, dstYmax); + clip_left_or_bottom(srcX0, srcX1, dstX0, dstX1, dstXmin); + clip_left_or_bottom(srcY0, srcY1, dstY0, dstY1, dstYmin); + + /* + * src clip (just swap src/dst values from above) + */ + clip_right_or_top(dstX0, dstX1, srcX0, srcX1, srcXmax); + clip_right_or_top(dstY0, dstY1, srcY0, srcY1, srcYmax); + clip_left_or_bottom(dstX0, dstX1, srcX0, srcX1, srcXmin); + clip_left_or_bottom(dstY0, dstY1, srcY0, srcY1, srcYmin); + + /* + printf("PostClipX: src: %d .. %d dst: %d .. %d\n", + *srcX0, *srcX1, *dstX0, *dstX1); + printf("PostClipY: src: %d .. %d dst: %d .. %d\n", + *srcY0, *srcY1, *dstY0, *dstY1); + */ + + ASSERT(*dstX0 >= dstXmin); + ASSERT(*dstX0 <= dstXmax); + ASSERT(*dstX1 >= dstXmin); + ASSERT(*dstX1 <= dstXmax); + + ASSERT(*dstY0 >= dstYmin); + ASSERT(*dstY0 <= dstYmax); + ASSERT(*dstY1 >= dstYmin); + ASSERT(*dstY1 <= dstYmax); + + ASSERT(*srcX0 >= srcXmin); + ASSERT(*srcX0 <= srcXmax); + ASSERT(*srcX1 >= srcXmin); + ASSERT(*srcX1 <= srcXmax); + + ASSERT(*srcY0 >= srcYmin); + ASSERT(*srcY0 <= srcYmax); + ASSERT(*srcY1 >= srcYmin); + ASSERT(*srcY1 <= srcYmax); + + return GL_TRUE; +} diff --git a/src/mesa/main/image.h b/src/mesa/main/image.h index b26c27e5a8..20459a5f1e 100644 --- a/src/mesa/main/image.h +++ b/src/mesa/main/image.h @@ -54,6 +54,24 @@ _mesa_bytes_per_pixel( GLenum format, GLenum type ); extern GLboolean _mesa_is_legal_format_and_type( GLcontext *ctx, GLenum format, GLenum type ); +extern GLboolean +_mesa_is_color_format(GLenum format); + +extern GLboolean +_mesa_is_index_format(GLenum format); + +extern GLboolean +_mesa_is_depth_format(GLenum format); + +extern GLboolean +_mesa_is_ycbcr_format(GLenum format); + +extern GLboolean +_mesa_is_depthstencil_format(GLenum format); + +extern GLboolean +_mesa_is_dudv_format(GLenum format); + extern GLvoid * _mesa_image_address( GLuint dimensions, @@ -291,4 +309,10 @@ _mesa_clip_to_region(GLint xmin, GLint ymin, GLint *x, GLint *y, GLsizei *width, GLsizei *height ); +extern GLboolean +_mesa_clip_blit(GLcontext *ctx, + GLint *srcX0, GLint *srcY0, GLint *srcX1, GLint *srcY1, + GLint *dstX0, GLint *dstY0, GLint *dstX1, GLint *dstY1); + + #endif diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c index 1722579e82..6ffaddcde9 100644 --- a/src/mesa/main/imports.c +++ b/src/mesa/main/imports.c @@ -911,6 +911,20 @@ _mesa_strtod( const char *s, char **end ) return strtod(s, end); } +/** Compute simple checksum/hash for a string */ +unsigned int +_mesa_str_checksum(const char *str) +{ + /* This could probably be much better */ + unsigned int sum, i; + const char *c; + sum = i = 1; + for (c = str; *c; c++) + sum += *c * (i % 100); + return sum; +} + + /*@}*/ @@ -1021,23 +1035,59 @@ output_if_debug(const char *prefixString, const char *outputString, } } -static const char *error_string( GLenum error ); -static void flush_delayed_errors( GLcontext *ctx ) +/** + * Return string version of GL error code. + */ +static const char * +error_string( GLenum error ) +{ + switch (error) { + case GL_NO_ERROR: + return "GL_NO_ERROR"; + case GL_INVALID_VALUE: + return "GL_INVALID_VALUE"; + case GL_INVALID_ENUM: + return "GL_INVALID_ENUM"; + case GL_INVALID_OPERATION: + return "GL_INVALID_OPERATION"; + case GL_STACK_OVERFLOW: + return "GL_STACK_OVERFLOW"; + case GL_STACK_UNDERFLOW: + return "GL_STACK_UNDERFLOW"; + case GL_OUT_OF_MEMORY: + return "GL_OUT_OF_MEMORY"; + case GL_TABLE_TOO_LARGE: + return "GL_TABLE_TOO_LARGE"; + case GL_INVALID_FRAMEBUFFER_OPERATION_EXT: + return "GL_INVALID_FRAMEBUFFER_OPERATION"; + default: + return "unknown"; + } +} + + +/** + * When a new type of error is recorded, print a message describing + * previous errors which were accumulated. + */ +static void +flush_delayed_errors( GLcontext *ctx ) { - char s2[MAXSTRING]; + char s[MAXSTRING]; if (ctx->ErrorDebugCount) { - _mesa_snprintf(s2, MAXSTRING, "%d similar %s errors", + _mesa_snprintf(s, MAXSTRING, "%d similar %s errors", ctx->ErrorDebugCount, error_string(ctx->ErrorValue)); - output_if_debug("Mesa: ", s2, GL_TRUE); + output_if_debug("Mesa", s, GL_TRUE); ctx->ErrorDebugCount = 0; } } + /** * Report a warning (a recoverable error condition) to stderr if * either DEBUG is defined or the MESA_DEBUG env var is set. @@ -1083,31 +1133,6 @@ _mesa_problem( const GLcontext *ctx, const char *fmtString, ... ) fprintf(stderr, "Please report at bugzilla.freedesktop.org\n"); } -static const char *error_string( GLenum error ) -{ - switch (error) { - case GL_NO_ERROR: - return "GL_NO_ERROR"; - case GL_INVALID_VALUE: - return "GL_INVALID_VALUE"; - case GL_INVALID_ENUM: - return "GL_INVALID_ENUM"; - case GL_INVALID_OPERATION: - return "GL_INVALID_OPERATION"; - case GL_STACK_OVERFLOW: - return "GL_STACK_OVERFLOW"; - case GL_STACK_UNDERFLOW: - return "GL_STACK_UNDERFLOW"; - case GL_OUT_OF_MEMORY: - return "GL_OUT_OF_MEMORY"; - case GL_TABLE_TOO_LARGE: - return "GL_TABLE_TOO_LARGE"; - case GL_INVALID_FRAMEBUFFER_OPERATION_EXT: - return "GL_INVALID_FRAMEBUFFER_OPERATION"; - default: - return "unknown"; - } -} /** * Record an OpenGL state error. These usually occur when the user diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h index 7b61e22e93..fb85f0862c 100644 --- a/src/mesa/main/imports.h +++ b/src/mesa/main/imports.h @@ -586,6 +586,9 @@ _mesa_atoi( const char *s ); extern double _mesa_strtod( const char *s, char **end ); +extern unsigned int +_mesa_str_checksum(const char *str); + extern int _mesa_sprintf( char *str, const char *fmt, ... ); diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c index 0f0d831fee..10c89f4368 100644 --- a/src/mesa/main/light.c +++ b/src/mesa/main/light.c @@ -528,7 +528,7 @@ _mesa_LightModeliv( GLenum pname, const GLint *params ) break; default: /* Error will be caught later in gl_LightModelfv */ - ; + ASSIGN_4V(fparam, 0.0F, 0.0F, 0.0F, 0.0F); } _mesa_LightModelfv( pname, fparam ); } @@ -1256,15 +1256,15 @@ _mesa_update_tnl_spaces( GLcontext *ctx, GLuint new_state ) ctx->Driver.LightingSpaceChange( ctx ); } else { - GLuint new_state = ctx->NewState; + GLuint new_state2 = ctx->NewState; /* Recalculate that same state only if it has been invalidated * by other statechanges. */ - if (new_state & _NEW_MODELVIEW) + if (new_state2 & _NEW_MODELVIEW) update_modelview_scale(ctx); - if (new_state & (_NEW_LIGHT|_NEW_MODELVIEW)) + if (new_state2 & (_NEW_LIGHT|_NEW_MODELVIEW)) compute_light_positions( ctx ); } } diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index d0309f5e90..2d497ff2c6 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -83,6 +83,7 @@ /*@{*/ struct _mesa_HashTable; struct gl_attrib_node; +struct gl_meta_state; struct gl_pixelstore_attrib; struct gl_program_cache; struct gl_texture_format; @@ -227,7 +228,9 @@ typedef enum FRAG_ATTRIB_TEX5 = 9, FRAG_ATTRIB_TEX6 = 10, FRAG_ATTRIB_TEX7 = 11, - FRAG_ATTRIB_VAR0 = 12, /**< shader varying */ + FRAG_ATTRIB_FACE = 12, /**< front/back face */ + FRAG_ATTRIB_PNTC = 13, /**< sprite/point coord */ + FRAG_ATTRIB_VAR0 = 14, /**< shader varying */ FRAG_ATTRIB_MAX = (FRAG_ATTRIB_VAR0 + MAX_VARYING) } gl_frag_attrib; @@ -239,6 +242,8 @@ typedef enum #define FRAG_BIT_COL0 (1 << FRAG_ATTRIB_COL0) #define FRAG_BIT_COL1 (1 << FRAG_ATTRIB_COL1) #define FRAG_BIT_FOGC (1 << FRAG_ATTRIB_FOGC) +#define FRAG_BIT_FACE (1 << FRAG_ATTRIB_FACE) +#define FRAG_BIT_PNTC (1 << FRAG_ATTRIB_PNTC) #define FRAG_BIT_TEX0 (1 << FRAG_ATTRIB_TEX0) #define FRAG_BIT_TEX1 (1 << FRAG_ATTRIB_TEX1) #define FRAG_BIT_TEX2 (1 << FRAG_ATTRIB_TEX2) @@ -1440,6 +1445,9 @@ struct gl_texture_attrib struct gl_texture_object *ProxyTex[NUM_TEXTURE_TARGETS]; + /** GL_ARB_seamless_cubemap */ + GLboolean CubeMapSeamless; + /** GL_EXT_shared_texture_palette */ GLboolean SharedPalette; struct gl_color_table Palette; @@ -1834,9 +1842,6 @@ struct gl_fragment_program struct gl_program Base; /**< base class */ GLenum FogOption; GLboolean UsesKill; /**< shader uses KIL instruction */ - GLboolean UsesPointCoord; /**< shader uses gl_PointCoord */ - GLboolean UsesFrontFacing; /**< shader used gl_FrontFacing */ - GLboolean UsesFogFragCoord; /**< shader used gl_FogFragCoord */ }; @@ -2004,6 +2009,7 @@ struct gl_shader GLboolean Main; /**< shader defines main() */ GLboolean UnresolvedRefs; const GLchar *Source; /**< Source code string */ + GLuint SourceChecksum; /**< for debug/logging purposes */ struct gl_program *Program; /**< Post-compile assembly code */ GLchar *InfoLog; struct gl_sl_pragmas Pragmas; @@ -2034,6 +2040,7 @@ struct gl_shader_program struct gl_program_parameter_list *Varying; GLboolean LinkStatus; /**< GL_LINK_STATUS */ GLboolean Validated; + GLboolean _Used; /**< Ever used for drawing? */ GLchar *InfoLog; }; @@ -2454,6 +2461,7 @@ struct gl_extensions GLboolean ARB_multitexture; GLboolean ARB_occlusion_query; GLboolean ARB_point_sprite; + GLboolean ARB_seamless_cube_map; GLboolean ARB_shader_objects; GLboolean ARB_shading_language_100; GLboolean ARB_shading_language_120; @@ -2981,6 +2989,8 @@ struct __GLcontextRec struct gl_buffer_object *CopyWriteBuffer; /**< GL_ARB_copy_buffer */ /*@}*/ + struct gl_meta_state *Meta; /**< for "meta" operations */ + #if FEATURE_EXT_framebuffer_object struct gl_renderbuffer *CurrentRenderbuffer; #endif diff --git a/src/mesa/main/pixel.c b/src/mesa/main/pixel.c index d9f3e476e8..25f55a422f 100644 --- a/src/mesa/main/pixel.c +++ b/src/mesa/main/pixel.c @@ -158,7 +158,7 @@ _mesa_PixelMapfv( GLenum map, GLsizei mapsize, const GLfloat *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack pixelmap from PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Unpack's buffer object */ @@ -188,7 +188,7 @@ _mesa_PixelMapfv( GLenum map, GLsizei mapsize, const GLfloat *values ) store_pixelmap(ctx, map, mapsize, values); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -217,7 +217,7 @@ _mesa_PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack pixelmap from PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Unpack's buffer object */ @@ -259,7 +259,7 @@ _mesa_PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values ) } } - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -290,7 +290,7 @@ _mesa_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack pixelmap from PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Unpack's buffer object */ @@ -333,7 +333,7 @@ _mesa_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values ) } } - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, ctx->Unpack.BufferObj); } @@ -359,7 +359,7 @@ _mesa_GetPixelMapfv( GLenum map, GLfloat *values ) mapsize = pm->Size; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack pixelmap into PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Pack's buffer object */ @@ -397,7 +397,7 @@ _mesa_GetPixelMapfv( GLenum map, GLfloat *values ) MEMCPY(values, pm->Map, mapsize * sizeof(GLfloat)); } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } @@ -420,7 +420,7 @@ _mesa_GetPixelMapuiv( GLenum map, GLuint *values ) } mapsize = pm->Size; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack pixelmap into PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Pack's buffer object */ @@ -458,7 +458,7 @@ _mesa_GetPixelMapuiv( GLenum map, GLuint *values ) } } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } @@ -481,7 +481,7 @@ _mesa_GetPixelMapusv( GLenum map, GLushort *values ) } mapsize = pm ? pm->Size : 0; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack pixelmap into PBO */ GLubyte *buf; /* Note, need to use DefaultPacking and Pack's buffer object */ @@ -528,7 +528,7 @@ _mesa_GetPixelMapusv( GLenum map, GLushort *values ) } } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } diff --git a/src/mesa/main/polygon.c b/src/mesa/main/polygon.c index 564250b881..d11c9424d5 100644 --- a/src/mesa/main/polygon.c +++ b/src/mesa/main/polygon.c @@ -193,7 +193,7 @@ _mesa_PolygonMode( GLenum face, GLenum mode ) void _mesa_polygon_stipple(GLcontext *ctx, const GLubyte *pattern) { - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* Get/unpack the stipple pattern from a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, &ctx->Unpack, 32, 32, 1, @@ -258,7 +258,7 @@ _mesa_GetPolygonStipple( GLubyte *dest ) /* XXX someday we may put this code into a separate function and call * it with ctx->Driver.GetPolygonStipple(). */ - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* Put/pack the stipple pattern into a PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, &ctx->Pack, 32, 32, 1, diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index 2326776ecb..feea1d375f 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -44,6 +44,10 @@ _mesa_error_check_format_type(GLcontext *ctx, GLenum format, GLenum type, GLboolean drawing) { const char *readDraw = drawing ? "Draw" : "Read"; + const GLboolean reading = !drawing; + + /* state validation should have already been done */ + ASSERT(ctx->NewState == 0x0); if (ctx->Extensions.EXT_packed_depth_stencil && type == GL_UNSIGNED_INT_24_8_EXT @@ -73,32 +77,45 @@ _mesa_error_check_format_type(GLcontext *ctx, GLenum format, GLenum type, case GL_RGBA: case GL_BGRA: case GL_ABGR_EXT: - if (drawing && !ctx->Visual.rgbMode) { - _mesa_error(ctx, GL_INVALID_OPERATION, + if (drawing) { + if (!ctx->DrawBuffer->Visual.rgbMode) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(drawing RGB pixels into color index buffer)"); - return GL_TRUE; + return GL_TRUE; + } } - if (!drawing && !_mesa_dest_buffer_exists(ctx, GL_COLOR)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glReadPixels(no color buffer)"); - return GL_TRUE; + else { + /* reading */ + if (!_mesa_source_buffer_exists(ctx, GL_COLOR)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glReadPixels(no color buffer)"); + return GL_TRUE; + } } break; case GL_COLOR_INDEX: - if (!drawing && ctx->Visual.rgbMode) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glReadPixels(reading color index format from RGB buffer)"); - return GL_TRUE; + if (drawing) { + if (ctx->DrawBuffer->Visual.rgbMode && + (ctx->PixelMaps.ItoR.Size == 0 || + ctx->PixelMaps.ItoG.Size == 0 || + ctx->PixelMaps.ItoB.Size == 0)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glDrawPixels(drawing color index pixels into RGB buffer)"); + return GL_TRUE; + } } - if (!drawing && !_mesa_dest_buffer_exists(ctx, GL_COLOR)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glReadPixels(no color buffer)"); - return GL_TRUE; + else { + /* reading */ + if (!_mesa_source_buffer_exists(ctx, GL_COLOR)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glReadPixels(no color buffer)"); + return GL_TRUE; + } } break; case GL_STENCIL_INDEX: if ((drawing && !_mesa_dest_buffer_exists(ctx, format)) || - (!drawing && !_mesa_source_buffer_exists(ctx, format))) { + (reading && !_mesa_source_buffer_exists(ctx, format))) { _mesa_error(ctx, GL_INVALID_OPERATION, "gl%sPixels(no stencil buffer)", readDraw); return GL_TRUE; @@ -118,7 +135,7 @@ _mesa_error_check_format_type(GLcontext *ctx, GLenum format, GLenum type, return GL_TRUE; } if ((drawing && !_mesa_dest_buffer_exists(ctx, format)) || - (!drawing && !_mesa_source_buffer_exists(ctx, format))) { + (reading && !_mesa_source_buffer_exists(ctx, format))) { _mesa_error(ctx, GL_INVALID_OPERATION, "gl%sPixels(no depth or stencil buffer)", readDraw); return GL_TRUE; @@ -173,7 +190,7 @@ _mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, if (width == 0 || height == 0) return; /* nothing to do */ - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { if (!_mesa_validate_pbo_access(2, &ctx->Pack, width, height, 1, format, type, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, @@ -181,7 +198,7 @@ _mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, return; } - if (ctx->Pack.BufferObj->Pointer) { + if (_mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { /* buffer is mapped - that's an error */ _mesa_error(ctx, GL_INVALID_OPERATION, "glReadPixels(PBO is mapped)"); return; diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index ad6e6ce7cd..93bbccd3c7 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -196,7 +196,7 @@ delete_bufferobj_cb(GLuint id, void *data, void *userData) { struct gl_buffer_object *bufObj = (struct gl_buffer_object *) data; GLcontext *ctx = (GLcontext *) userData; - if (bufObj->Pointer) { + if (_mesa_bufferobj_mapped(bufObj)) { ctx->Driver.UnmapBuffer(ctx, 0, bufObj); bufObj->Pointer = NULL; } diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index d8191ab518..140a998df2 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -547,7 +547,8 @@ _mesa_update_state_locked( GLcontext *ctx ) /* Determine which state flags effect vertex/fragment program state */ if (ctx->FragmentProgram._MaintainTexEnvProgram) { prog_flags |= (_NEW_TEXTURE | _NEW_FOG | - _NEW_ARRAY | _NEW_LIGHT | _NEW_POINT | _NEW_RENDERMODE); + _NEW_ARRAY | _NEW_LIGHT | _NEW_POINT | _NEW_RENDERMODE | + _NEW_PROGRAM); } if (ctx->VertexProgram._MaintainTnlProgram) { prog_flags |= (_NEW_ARRAY | _NEW_TEXTURE | _NEW_TEXTURE_MATRIX | @@ -712,6 +713,6 @@ _mesa_set_vp_override(GLcontext *ctx, GLboolean flag) /* Set one of the bits which will trigger fragment program * regeneration: */ - ctx->NewState |= _NEW_ARRAY; + ctx->NewState |= _NEW_PROGRAM; } } diff --git a/src/mesa/main/texenv.c b/src/mesa/main/texenv.c index 4c04a7ed37..6d86a4275c 100644 --- a/src/mesa/main/texenv.c +++ b/src/mesa/main/texenv.c @@ -35,6 +35,7 @@ #include "main/enums.h" #include "main/macros.h" #include "main/texenv.h" +#include "main/texstate.h" #define TE_ERROR(errCode, msg, value) \ @@ -466,7 +467,7 @@ _mesa_TexEnvfv( GLenum target, GLenum pname, const GLfloat *param ) return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); if (target == GL_TEXTURE_ENV) { switch (pname) { @@ -793,7 +794,7 @@ _mesa_GetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ) return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); if (target == GL_TEXTURE_ENV) { if (pname == GL_TEXTURE_ENV_COLOR) { @@ -857,7 +858,7 @@ _mesa_GetTexEnviv( GLenum target, GLenum pname, GLint *params ) return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); if (target == GL_TEXTURE_ENV) { if (pname == GL_TEXTURE_ENV_COLOR) { @@ -908,12 +909,26 @@ _mesa_GetTexEnviv( GLenum target, GLenum pname, GLint *params ) } } -/* why does ATI_envmap_bumpmap require new entrypoints? Should just - reuse TexEnv ones... */ + +/** + * Why does ATI_envmap_bumpmap require new entrypoints? Should just + * reuse TexEnv ones... + */ void GLAPIENTRY _mesa_TexBumpParameterivATI( GLenum pname, const GLint *param ) { GLfloat p[4]; + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (!ctx->Extensions.ATI_envmap_bumpmap) { + /* This isn't an "official" error case, but let's tell the user + * that something's wrong. + */ + _mesa_error(ctx, GL_INVALID_OPERATION, "glTexBumpParameterivATI"); + return; + } + if (pname == GL_BUMP_ROT_MATRIX_ATI) { /* hope that conversion is correct here */ p[0] = INT_TO_FLOAT( param[0] ); @@ -923,11 +938,12 @@ _mesa_TexBumpParameterivATI( GLenum pname, const GLint *param ) } else { p[0] = (GLfloat) param[0]; - p[1] = p[2] = p[3] = 0; /* init to zero, just to be safe */ + p[1] = p[2] = p[3] = 0.0F; /* init to zero, just to be safe */ } _mesa_TexBumpParameterfvATI( pname, p ); } + void GLAPIENTRY _mesa_TexBumpParameterfvATI( GLenum pname, const GLfloat *param ) { @@ -935,8 +951,12 @@ _mesa_TexBumpParameterfvATI( GLenum pname, const GLfloat *param ) GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); - /* should return error if extension not supported? */ - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + if (!ctx->Extensions.ATI_envmap_bumpmap) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glTexBumpParameterfvATI"); + return; + } + + texUnit = _mesa_get_current_tex_unit(ctx); if (pname == GL_BUMP_ROT_MATRIX_ATI) { if (TEST_EQ_4V(param, texUnit->RotMatrix)) @@ -955,17 +975,21 @@ _mesa_TexBumpParameterfvATI( GLenum pname, const GLfloat *param ) } } + void GLAPIENTRY _mesa_GetTexBumpParameterivATI( GLenum pname, GLint *param ) { const struct gl_texture_unit *texUnit; GLuint i; - GLint temp = 0; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); - /* should return error if extension not supported? */ - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + if (!ctx->Extensions.ATI_envmap_bumpmap) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexBumpParameterivATI"); + return; + } + + texUnit = _mesa_get_current_tex_unit(ctx); if (pname == GL_BUMP_ROT_MATRIX_SIZE_ATI) { /* spec leaves open to support larger matrices. @@ -982,12 +1006,13 @@ _mesa_GetTexBumpParameterivATI( GLenum pname, GLint *param ) param[3] = FLOAT_TO_INT(texUnit->RotMatrix[3]); } else if (pname == GL_BUMP_NUM_TEX_UNITS_ATI) { + GLint count = 0; for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) { if (ctx->Const.SupportedBumpUnits & (1 << i)) { - temp++; + count++; } } - *param = temp; + *param = count; } else if (pname == GL_BUMP_TEX_UNITS_ATI) { for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) { @@ -1002,23 +1027,27 @@ _mesa_GetTexBumpParameterivATI( GLenum pname, GLint *param ) } } + void GLAPIENTRY _mesa_GetTexBumpParameterfvATI( GLenum pname, GLfloat *param ) { const struct gl_texture_unit *texUnit; GLuint i; - GLint temp = 0; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); - /* should return error if extension not supported? */ - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + if (!ctx->Extensions.ATI_envmap_bumpmap) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexBumpParameterfvATI"); + return; + } + + texUnit = _mesa_get_current_tex_unit(ctx); if (pname == GL_BUMP_ROT_MATRIX_SIZE_ATI) { /* spec leaves open to support larger matrices. Don't think anyone would ever want to use it (and apps might not understand it) so hardcode this. */ - *param = (GLfloat) 4; + *param = 4.0F; } else if (pname == GL_BUMP_ROT_MATRIX_ATI) { param[0] = texUnit->RotMatrix[0]; @@ -1027,12 +1056,13 @@ _mesa_GetTexBumpParameterfvATI( GLenum pname, GLfloat *param ) param[3] = texUnit->RotMatrix[3]; } else if (pname == GL_BUMP_NUM_TEX_UNITS_ATI) { + GLint count = 0; for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) { if (ctx->Const.SupportedBumpUnits & (1 << i)) { - temp++; + count++; } } - *param = (GLfloat) temp; + *param = (GLfloat) count; } else if (pname == GL_BUMP_TEX_UNITS_ATI) { for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) { @@ -1046,4 +1076,3 @@ _mesa_GetTexBumpParameterfvATI( GLenum pname, GLfloat *param ) return; } } - diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c index 6b090ff399..3736138b9e 100644 --- a/src/mesa/main/texenvprogram.c +++ b/src/mesa/main/texenvprogram.c @@ -275,6 +275,7 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) { /* _NEW_PROGRAM */ const GLboolean vertexShader = (ctx->Shader.CurrentProgram && + ctx->Shader.CurrentProgram->LinkStatus && ctx->Shader.CurrentProgram->VertexProgram); const GLboolean vertexProgram = ctx->VertexProgram._Enabled; GLbitfield fp_inputs = 0x0; @@ -321,8 +322,10 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) /* Then look at what might be varying as a result of enabled * arrays, etc: */ - if (varying_inputs & VERT_BIT_COLOR0) fp_inputs |= FRAG_BIT_COL0; - if (varying_inputs & VERT_BIT_COLOR1) fp_inputs |= FRAG_BIT_COL1; + if (varying_inputs & VERT_BIT_COLOR0) + fp_inputs |= FRAG_BIT_COL0; + if (varying_inputs & VERT_BIT_COLOR1) + fp_inputs |= FRAG_BIT_COL1; fp_inputs |= (((varying_inputs & VERT_BIT_TEX_ANY) >> VERT_ATTRIB_TEX0) << FRAG_ATTRIB_TEX0); @@ -340,7 +343,7 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) if (vertexShader) vprog = ctx->Shader.CurrentProgram->VertexProgram; else - vprog = ctx->VertexProgram._Current; + vprog = ctx->VertexProgram.Current; vp_outputs = vprog->Base.OutputsWritten; @@ -351,8 +354,10 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) if (ctx->Point.PointSprite) vp_outputs |= FRAG_BITS_TEX_ANY; - if (vp_outputs & (1 << VERT_RESULT_COL0)) fp_inputs |= FRAG_BIT_COL0; - if (vp_outputs & (1 << VERT_RESULT_COL1)) fp_inputs |= FRAG_BIT_COL1; + if (vp_outputs & (1 << VERT_RESULT_COL0)) + fp_inputs |= FRAG_BIT_COL0; + if (vp_outputs & (1 << VERT_RESULT_COL1)) + fp_inputs |= FRAG_BIT_COL1; fp_inputs |= (((vp_outputs & VERT_RESULT_TEX_ANY) >> VERT_RESULT_TEX0) << FRAG_ATTRIB_TEX0); diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c index 02409d8009..14d6fc7659 100644 --- a/src/mesa/main/texgetimage.c +++ b/src/mesa/main/texgetimage.c @@ -30,11 +30,14 @@ #include "glheader.h" +#include "bufferobj.h" #include "context.h" #include "image.h" #include "texcompress.h" #include "texformat.h" #include "texgetimage.h" +#include "teximage.h" +#include "texstate.h" @@ -116,7 +119,7 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level, { const GLuint dimensions = (target == GL_TEXTURE_3D) ? 3 : 2; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* Packing texture image into a PBO. * Map the (potentially) VRAM-based buffer into our process space so * we can write into it with the code below. @@ -296,7 +299,7 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level, } /* img */ } - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } @@ -316,7 +319,7 @@ _mesa_get_compressed_teximage(GLcontext *ctx, GLenum target, GLint level, { GLuint size; - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* pack texture image into a PBO */ GLubyte *buf; if ((const GLubyte *) img + texImage->CompressedSize > @@ -349,8 +352,230 @@ _mesa_get_compressed_teximage(GLcontext *ctx, GLenum target, GLint level, /* just memcpy, no pixelstore or pixel transfer */ _mesa_memcpy(img, texImage->Data, size); - if (ctx->Pack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_PACK_BUFFER_EXT, ctx->Pack.BufferObj); } } + + + +/** + * Do error checking for a glGetTexImage() call. + * \return GL_TRUE if any error, GL_FALSE if no errors. + */ +static GLboolean +getteximage_error_check(GLcontext *ctx, GLenum target, GLint level, + GLenum format, GLenum type, GLvoid *pixels ) +{ + const struct gl_texture_unit *texUnit; + struct gl_texture_object *texObj; + struct gl_texture_image *texImage; + const GLuint maxLevels = _mesa_max_texture_levels(ctx, target); + + if (maxLevels == 0) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(target=0x%x)", target); + return GL_TRUE; + } + + if (level < 0 || level >= maxLevels) { + _mesa_error( ctx, GL_INVALID_VALUE, "glGetTexImage(level)" ); + return GL_TRUE; + } + + if (_mesa_sizeof_packed_type(type) <= 0) { + _mesa_error( ctx, GL_INVALID_ENUM, "glGetTexImage(type)" ); + return GL_TRUE; + } + + if (_mesa_components_in_format(format) <= 0 || + format == GL_STENCIL_INDEX) { + _mesa_error( ctx, GL_INVALID_ENUM, "glGetTexImage(format)" ); + return GL_TRUE; + } + + if (!ctx->Extensions.EXT_paletted_texture && _mesa_is_index_format(format)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); + return GL_TRUE; + } + + if (!ctx->Extensions.ARB_depth_texture && _mesa_is_depth_format(format)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); + return GL_TRUE; + } + + if (!ctx->Extensions.MESA_ycbcr_texture && _mesa_is_ycbcr_format(format)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); + return GL_TRUE; + } + + if (!ctx->Extensions.EXT_packed_depth_stencil + && _mesa_is_depthstencil_format(format)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); + return GL_TRUE; + } + + if (!ctx->Extensions.ATI_envmap_bumpmap + && _mesa_is_dudv_format(format)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); + return GL_TRUE; + } + + texUnit = _mesa_get_current_tex_unit(ctx); + texObj = _mesa_select_tex_object(ctx, texUnit, target); + + if (!texObj || _mesa_is_proxy_texture(target)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(target)"); + return GL_TRUE; + } + + texImage = _mesa_select_tex_image(ctx, texObj, target, level); + if (!texImage) { + /* out of memory */ + return GL_TRUE; + } + + /* Make sure the requested image format is compatible with the + * texture's format. Note that a color index texture can be converted + * to RGBA so that combo is allowed. + */ + if (_mesa_is_color_format(format) + && !_mesa_is_color_format(texImage->TexFormat->BaseFormat) + && !_mesa_is_index_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + else if (_mesa_is_index_format(format) + && !_mesa_is_index_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + else if (_mesa_is_depth_format(format) + && !_mesa_is_depth_format(texImage->TexFormat->BaseFormat) + && !_mesa_is_depthstencil_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + else if (_mesa_is_ycbcr_format(format) + && !_mesa_is_ycbcr_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + else if (_mesa_is_depthstencil_format(format) + && !_mesa_is_depthstencil_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + else if (_mesa_is_dudv_format(format) + && !_mesa_is_dudv_format(texImage->TexFormat->BaseFormat)) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); + return GL_TRUE; + } + + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { + /* packing texture image into a PBO */ + const GLuint dimensions = (target == GL_TEXTURE_3D) ? 3 : 2; + if (!_mesa_validate_pbo_access(dimensions, &ctx->Pack, texImage->Width, + texImage->Height, texImage->Depth, + format, type, pixels)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetTexImage(invalid PBO access)"); + return GL_TRUE; + } + } + + return GL_FALSE; +} + + + +/** + * Get texture image. Called by glGetTexImage. + * + * \param target texture target. + * \param level image level. + * \param format pixel data format for returned image. + * \param type pixel data type for returned image. + * \param pixels returned pixel data. + */ +void GLAPIENTRY +_mesa_GetTexImage( GLenum target, GLint level, GLenum format, + GLenum type, GLvoid *pixels ) +{ + const struct gl_texture_unit *texUnit; + struct gl_texture_object *texObj; + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); + + if (getteximage_error_check(ctx, target, level, format, type, pixels)) { + return; + } + + texUnit = _mesa_get_current_tex_unit(ctx); + texObj = _mesa_select_tex_object(ctx, texUnit, target); + + _mesa_lock_texture(ctx, texObj); + { + struct gl_texture_image *texImage = + _mesa_select_tex_image(ctx, texObj, target, level); + + /* typically, this will call _mesa_get_teximage() */ + ctx->Driver.GetTexImage(ctx, target, level, format, type, pixels, + texObj, texImage); + } + _mesa_unlock_texture(ctx, texObj); +} + + +void GLAPIENTRY +_mesa_GetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img) +{ + const struct gl_texture_unit *texUnit; + struct gl_texture_object *texObj; + struct gl_texture_image *texImage; + GLint maxLevels; + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); + + texUnit = _mesa_get_current_tex_unit(ctx); + texObj = _mesa_select_tex_object(ctx, texUnit, target); + if (!texObj) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetCompressedTexImageARB"); + return; + } + + maxLevels = _mesa_max_texture_levels(ctx, target); + ASSERT(maxLevels > 0); /* 0 indicates bad target, caught above */ + + if (level < 0 || level >= maxLevels) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGetCompressedTexImageARB(level)"); + return; + } + + if (_mesa_is_proxy_texture(target)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glGetCompressedTexImageARB(target)"); + return; + } + + _mesa_lock_texture(ctx, texObj); + { + texImage = _mesa_select_tex_image(ctx, texObj, target, level); + if (texImage) { + if (texImage->IsCompressed) { + /* this typically calls _mesa_get_compressed_teximage() */ + ctx->Driver.GetCompressedTexImage(ctx, target, level, img, + texObj, texImage); + } + else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetCompressedTexImageARB"); + } + } + else { + /* probably invalid mipmap level */ + _mesa_error(ctx, GL_INVALID_VALUE, + "glGetCompressedTexImageARB(level)"); + } + } + _mesa_unlock_texture(ctx, texObj); +} diff --git a/src/mesa/main/texgetimage.h b/src/mesa/main/texgetimage.h index 01f486e8f0..088d27c7e1 100644 --- a/src/mesa/main/texgetimage.h +++ b/src/mesa/main/texgetimage.h @@ -43,4 +43,13 @@ _mesa_get_compressed_teximage(GLcontext *ctx, GLenum target, GLint level, +extern void GLAPIENTRY +_mesa_GetTexImage( GLenum target, GLint level, + GLenum format, GLenum type, GLvoid *pixels ); + + +extern void GLAPIENTRY +_mesa_GetCompressedTexImageARB(GLenum target, GLint lod, GLvoid *img); + + #endif /* TEXGETIMAGE_H */ diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 6e21066537..8228303040 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -1,6 +1,6 @@ /* * mesa 3-D graphics library - * Version: 7.5 + * Version: 7.6 * * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. * Copyright (C) 2009 VMware, Inc. All Rights Reserved. @@ -182,6 +182,8 @@ logbase2( int n ) * * This is the format which is used during texture application (i.e. the * texture format and env mode determine the arithmetic used. + * + * XXX this could be static */ GLint _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat ) @@ -415,211 +417,6 @@ _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat ) /** - * Test if the given image format is a color/RGBA format (i.e., not color - * index, depth, stencil, etc). - * \param format the image format value (may by an internal texture format) - * \return GL_TRUE if its a color/RGBA format, GL_FALSE otherwise. - * XXX maybe move this func to image.c - */ -GLboolean -_mesa_is_color_format(GLenum format) -{ - switch (format) { - case GL_RED: - case GL_GREEN: - case GL_BLUE: - case GL_ALPHA: - case GL_ALPHA4: - case GL_ALPHA8: - case GL_ALPHA12: - case GL_ALPHA16: - case 1: - case GL_LUMINANCE: - case GL_LUMINANCE4: - case GL_LUMINANCE8: - case GL_LUMINANCE12: - case GL_LUMINANCE16: - case 2: - case GL_LUMINANCE_ALPHA: - case GL_LUMINANCE4_ALPHA4: - case GL_LUMINANCE6_ALPHA2: - case GL_LUMINANCE8_ALPHA8: - case GL_LUMINANCE12_ALPHA4: - case GL_LUMINANCE12_ALPHA12: - case GL_LUMINANCE16_ALPHA16: - case GL_INTENSITY: - case GL_INTENSITY4: - case GL_INTENSITY8: - case GL_INTENSITY12: - case GL_INTENSITY16: - case 3: - case GL_RGB: - case GL_BGR: - case GL_R3_G3_B2: - case GL_RGB4: - case GL_RGB5: - case GL_RGB8: - case GL_RGB10: - case GL_RGB12: - case GL_RGB16: - case 4: - case GL_ABGR_EXT: - case GL_RGBA: - case GL_BGRA: - case GL_RGBA2: - case GL_RGBA4: - case GL_RGB5_A1: - case GL_RGBA8: - case GL_RGB10_A2: - case GL_RGBA12: - case GL_RGBA16: - /* float texture formats */ - case GL_ALPHA16F_ARB: - case GL_ALPHA32F_ARB: - case GL_LUMINANCE16F_ARB: - case GL_LUMINANCE32F_ARB: - case GL_LUMINANCE_ALPHA16F_ARB: - case GL_LUMINANCE_ALPHA32F_ARB: - case GL_INTENSITY16F_ARB: - case GL_INTENSITY32F_ARB: - case GL_RGB16F_ARB: - case GL_RGB32F_ARB: - case GL_RGBA16F_ARB: - case GL_RGBA32F_ARB: - /* compressed formats */ - case GL_COMPRESSED_ALPHA: - case GL_COMPRESSED_LUMINANCE: - case GL_COMPRESSED_LUMINANCE_ALPHA: - case GL_COMPRESSED_INTENSITY: - case GL_COMPRESSED_RGB: - case GL_COMPRESSED_RGBA: - case GL_RGB_S3TC: - case GL_RGB4_S3TC: - case GL_RGBA_S3TC: - case GL_RGBA4_S3TC: - case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: - case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: - case GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: - case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: - case GL_COMPRESSED_RGB_FXT1_3DFX: - case GL_COMPRESSED_RGBA_FXT1_3DFX: -#if FEATURE_EXT_texture_sRGB - case GL_SRGB_EXT: - case GL_SRGB8_EXT: - case GL_SRGB_ALPHA_EXT: - case GL_SRGB8_ALPHA8_EXT: - case GL_SLUMINANCE_ALPHA_EXT: - case GL_SLUMINANCE8_ALPHA8_EXT: - case GL_SLUMINANCE_EXT: - case GL_SLUMINANCE8_EXT: - case GL_COMPRESSED_SRGB_EXT: - case GL_COMPRESSED_SRGB_S3TC_DXT1_EXT: - case GL_COMPRESSED_SRGB_ALPHA_EXT: - case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: - case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: - case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: - case GL_COMPRESSED_SLUMINANCE_EXT: - case GL_COMPRESSED_SLUMINANCE_ALPHA_EXT: -#endif /* FEATURE_EXT_texture_sRGB */ - return GL_TRUE; - /* signed texture formats */ - case GL_RGBA_SNORM: - case GL_RGBA8_SNORM: - return GL_TRUE; - case GL_YCBCR_MESA: /* not considered to be RGB */ - /* fall-through */ - default: - return GL_FALSE; - } -} - - -/** - * Test if the given image format is a color index format. - */ -static GLboolean -is_index_format(GLenum format) -{ - switch (format) { - case GL_COLOR_INDEX: - case GL_COLOR_INDEX1_EXT: - case GL_COLOR_INDEX2_EXT: - case GL_COLOR_INDEX4_EXT: - case GL_COLOR_INDEX8_EXT: - case GL_COLOR_INDEX12_EXT: - case GL_COLOR_INDEX16_EXT: - return GL_TRUE; - default: - return GL_FALSE; - } -} - - -/** - * Test if the given image format is a depth component format. - */ -static GLboolean -is_depth_format(GLenum format) -{ - switch (format) { - case GL_DEPTH_COMPONENT16: - case GL_DEPTH_COMPONENT24: - case GL_DEPTH_COMPONENT32: - case GL_DEPTH_COMPONENT: - return GL_TRUE; - default: - return GL_FALSE; - } -} - - -/** - * Test if the given image format is a YCbCr format. - */ -static GLboolean -is_ycbcr_format(GLenum format) -{ - switch (format) { - case GL_YCBCR_MESA: - return GL_TRUE; - default: - return GL_FALSE; - } -} - - -/** - * Test if the given image format is a Depth/Stencil format. - */ -static GLboolean -is_depthstencil_format(GLenum format) -{ - switch (format) { - case GL_DEPTH24_STENCIL8_EXT: - case GL_DEPTH_STENCIL_EXT: - return GL_TRUE; - default: - return GL_FALSE; - } -} - -/** - * Test if the given image format is a dudv format. - */ -static GLboolean -is_dudv_format(GLenum format) -{ - switch (format) { - case GL_DUDV_ATI: - case GL_DU8DV8_ATI: - return GL_TRUE; - default: - return GL_FALSE; - } -} - - -/** * Test if it is a supported compressed format. * * \param internalFormat the internal format token provided by the user. @@ -679,37 +476,14 @@ _mesa_set_tex_image(struct gl_texture_object *tObj, GLenum target, GLint level, struct gl_texture_image *texImage) { + const GLuint face = _mesa_tex_target_to_face(target); + ASSERT(tObj); ASSERT(texImage); - /* XXX simplify this with _mesa_tex_target_to_face() */ - switch (target) { - case GL_TEXTURE_1D: - case GL_TEXTURE_2D: - case GL_TEXTURE_3D: - case GL_TEXTURE_1D_ARRAY_EXT: - case GL_TEXTURE_2D_ARRAY_EXT: - tObj->Image[0][level] = texImage; - break; - case GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB: - { - GLuint face = ((GLuint) target - - (GLuint) GL_TEXTURE_CUBE_MAP_POSITIVE_X); - tObj->Image[face][level] = texImage; - } - break; - case GL_TEXTURE_RECTANGLE_NV: - ASSERT(level == 0); - tObj->Image[0][level] = texImage; - break; - default: - _mesa_problem(NULL, "bad target in _mesa_set_tex_image()"); - return; - } + ASSERT(target != GL_TEXTURE_RECTANGLE_NV || level == 0); + + tObj->Image[face][level] = texImage; + /* Set the 'back' pointer */ texImage->TexObject = tObj; } @@ -788,6 +562,9 @@ _mesa_delete_texture_image( GLcontext *ctx, struct gl_texture_image *texImage ) GLboolean _mesa_is_proxy_texture(GLenum target) { + /* NUM_TEXTURE_TARGETS should match number of terms below */ + assert(NUM_TEXTURE_TARGETS == 7); + return (target == GL_PROXY_TEXTURE_1D || target == GL_PROXY_TEXTURE_2D || target == GL_PROXY_TEXTURE_3D || @@ -864,74 +641,28 @@ _mesa_select_tex_object(GLcontext *ctx, const struct gl_texture_unit *texUnit, /** - * Get the texture image struct which corresponds to target and level - * of the given texture unit. + * Get a texture image pointer from a texture object, given a texture + * target and mipmap level. The target and level parameters should + * have already been error-checked. * * \param ctx GL context. * \param texObj texture unit. * \param target texture target. * \param level image level. * - * \return pointer to the texture image structure on success, or NULL on failure. - * - * \sa gl_texture_unit. + * \return pointer to the texture image structure, or NULL on failure. */ struct gl_texture_image * _mesa_select_tex_image(GLcontext *ctx, const struct gl_texture_object *texObj, GLenum target, GLint level) { - ASSERT(texObj); - - if (level < 0 || level >= MAX_TEXTURE_LEVELS) - return NULL; - - /* XXX simplify this with _mesa_tex_target_to_face() */ - switch (target) { - case GL_TEXTURE_1D: - case GL_PROXY_TEXTURE_1D: - case GL_TEXTURE_2D: - case GL_PROXY_TEXTURE_2D: - case GL_TEXTURE_3D: - case GL_PROXY_TEXTURE_3D: - return texObj->Image[0][level]; - - case GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB: - if (ctx->Extensions.ARB_texture_cube_map) { - GLuint face = ((GLuint) target - - (GLuint) GL_TEXTURE_CUBE_MAP_POSITIVE_X); - return texObj->Image[face][level]; - } - else - return NULL; - - case GL_PROXY_TEXTURE_CUBE_MAP_ARB: - if (ctx->Extensions.ARB_texture_cube_map) - return texObj->Image[0][level]; - else - return NULL; - - case GL_TEXTURE_RECTANGLE_NV: - case GL_PROXY_TEXTURE_RECTANGLE_NV: - if (ctx->Extensions.NV_texture_rectangle && level == 0) - return texObj->Image[0][level]; - else - return NULL; + const GLuint face = _mesa_tex_target_to_face(target); - case GL_TEXTURE_1D_ARRAY_EXT: - case GL_PROXY_TEXTURE_1D_ARRAY_EXT: - case GL_TEXTURE_2D_ARRAY_EXT: - case GL_PROXY_TEXTURE_2D_ARRAY_EXT: - return (ctx->Extensions.MESA_texture_array) - ? texObj->Image[0][level] : NULL; + ASSERT(texObj); + ASSERT(level >= 0); + ASSERT(level < MAX_TEXTURE_LEVELS); - default: - return NULL; - } + return texObj->Image[face][level]; } @@ -1053,10 +784,6 @@ _mesa_max_texture_levels(GLcontext *ctx, GLenum target) case GL_PROXY_TEXTURE_1D: case GL_TEXTURE_2D: case GL_PROXY_TEXTURE_2D: - case GL_TEXTURE_1D_ARRAY_EXT: - case GL_PROXY_TEXTURE_1D_ARRAY_EXT: - case GL_TEXTURE_2D_ARRAY_EXT: - case GL_PROXY_TEXTURE_2D_ARRAY_EXT: return ctx->Const.MaxTextureLevels; case GL_TEXTURE_3D: case GL_PROXY_TEXTURE_3D: @@ -1069,10 +796,17 @@ _mesa_max_texture_levels(GLcontext *ctx, GLenum target) case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB: case GL_TEXTURE_CUBE_MAP_ARB: case GL_PROXY_TEXTURE_CUBE_MAP_ARB: - return ctx->Const.MaxCubeTextureLevels; + return ctx->Extensions.ARB_texture_cube_map + ? ctx->Const.MaxCubeTextureLevels : 0; case GL_TEXTURE_RECTANGLE_NV: case GL_PROXY_TEXTURE_RECTANGLE_NV: - return 1; + return ctx->Extensions.NV_texture_rectangle ? 1 : 0; + case GL_TEXTURE_1D_ARRAY_EXT: + case GL_PROXY_TEXTURE_1D_ARRAY_EXT: + case GL_TEXTURE_2D_ARRAY_EXT: + case GL_PROXY_TEXTURE_2D_ARRAY_EXT: + return ctx->Extensions.MESA_texture_array + ? ctx->Const.MaxTextureLevels : 0; default: return 0; /* bad target */ } @@ -1273,6 +1007,23 @@ _mesa_init_teximage_fields(GLcontext *ctx, GLenum target, /** + * Free and clear fields of the gl_texture_image struct. + * + * \param ctx GL context. + * \param texImage texture image structure to be cleared. + * + * After the call, \p texImage will have no data associated with it. Its + * fields are cleared so that its parent object will test incomplete. + */ +void +_mesa_clear_texture_image(GLcontext *ctx, struct gl_texture_image *texImage) +{ + ctx->Driver.FreeTexImageData(ctx, texImage); + clear_teximage_fields(texImage); +} + + +/** * This is the fallback for Driver.TestProxyTexImage(). Test the texture * level, width, height and depth against the ctx->Const limits for textures. * @@ -1586,13 +1337,13 @@ texture_error_check( GLcontext *ctx, GLenum target, /* make sure internal format and format basically agree */ colorFormat = _mesa_is_color_format(format); - indexFormat = is_index_format(format); + indexFormat = _mesa_is_index_format(format); if ((_mesa_is_color_format(internalFormat) && !colorFormat && !indexFormat) || - (is_index_format(internalFormat) && !indexFormat) || - (is_depth_format(internalFormat) != is_depth_format(format)) || - (is_ycbcr_format(internalFormat) != is_ycbcr_format(format)) || - (is_depthstencil_format(internalFormat) != is_depthstencil_format(format)) || - (is_dudv_format(internalFormat) != is_dudv_format(format))) { + (_mesa_is_index_format(internalFormat) && !indexFormat) || + (_mesa_is_depth_format(internalFormat) != _mesa_is_depth_format(format)) || + (_mesa_is_ycbcr_format(internalFormat) != _mesa_is_ycbcr_format(format)) || + (_mesa_is_depthstencil_format(internalFormat) != _mesa_is_depthstencil_format(format)) || + (_mesa_is_dudv_format(internalFormat) != _mesa_is_dudv_format(format))) { if (!isProxy) _mesa_error(ctx, GL_INVALID_OPERATION, "glTexImage%dD(incompatible internalFormat 0x%x, format 0x%x)", @@ -1926,14 +1677,14 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions, return GL_TRUE; } - /* NOTE: the format and type aren't really significant for - * TestProxyTexImage(). Only the internalformat really matters. if (!_mesa_source_buffer_exists(ctx, format)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glCopyTexImage%dD(missing readbuffer)", dimensions); return GL_TRUE; } + /* NOTE: the format and type aren't really significant for + * TestProxyTexImage(). Only the internalformat really matters. */ type = GL_FLOAT; @@ -2027,7 +1778,7 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions, return GL_TRUE; } } - else if (is_depth_format(internalFormat)) { + else if (_mesa_is_depth_format(internalFormat)) { /* make sure we have depth/stencil buffers */ if (!ctx->ReadBuffer->_DepthBuffer) { _mesa_error(ctx, GL_INVALID_OPERATION, @@ -2035,7 +1786,7 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions, return GL_TRUE; } } - else if (is_depthstencil_format(internalFormat)) { + else if (_mesa_is_depthstencil_format(internalFormat)) { /* make sure we have depth/stencil buffers */ if (!ctx->ReadBuffer->_DepthBuffer || !ctx->ReadBuffer->_StencilBuffer) { _mesa_error(ctx, GL_INVALID_OPERATION, @@ -2260,147 +2011,6 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions, } -/** - * Get texture image. Called by glGetTexImage. - * - * \param target texture target. - * \param level image level. - * \param format pixel data format for returned image. - * \param type pixel data type for returned image. - * \param pixels returned pixel data. - */ -void GLAPIENTRY -_mesa_GetTexImage( GLenum target, GLint level, GLenum format, - GLenum type, GLvoid *pixels ) -{ - const struct gl_texture_unit *texUnit; - struct gl_texture_object *texObj; - struct gl_texture_image *texImage; - GLint maxLevels = 0; - GET_CURRENT_CONTEXT(ctx); - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - - texUnit = &(ctx->Texture.Unit[ctx->Texture.CurrentUnit]); - texObj = _mesa_select_tex_object(ctx, texUnit, target); - if (!texObj || _mesa_is_proxy_texture(target)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(target)"); - return; - } - - maxLevels = _mesa_max_texture_levels(ctx, target); - ASSERT(maxLevels > 0); /* 0 indicates bad target, caught above */ - - if (level < 0 || level >= maxLevels) { - _mesa_error( ctx, GL_INVALID_VALUE, "glGetTexImage(level)" ); - return; - } - - if (_mesa_sizeof_packed_type(type) <= 0) { - _mesa_error( ctx, GL_INVALID_ENUM, "glGetTexImage(type)" ); - return; - } - - if (_mesa_components_in_format(format) <= 0 || - format == GL_STENCIL_INDEX) { - _mesa_error( ctx, GL_INVALID_ENUM, "glGetTexImage(format)" ); - return; - } - - if (!ctx->Extensions.EXT_paletted_texture && is_index_format(format)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); - return; - } - - if (!ctx->Extensions.ARB_depth_texture && is_depth_format(format)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); - return; - } - - if (!ctx->Extensions.MESA_ycbcr_texture && is_ycbcr_format(format)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); - return; - } - - if (!ctx->Extensions.EXT_packed_depth_stencil - && is_depthstencil_format(format)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); - return; - } - - if (!ctx->Extensions.ATI_envmap_bumpmap - && is_dudv_format(format)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)"); - return; - } - - _mesa_lock_texture(ctx, texObj); - { - texImage = _mesa_select_tex_image(ctx, texObj, target, level); - if (!texImage) { - /* invalid mipmap level, not an error */ - goto out; - } - - - /* Make sure the requested image format is compatible with the - * texture's format. Note that a color index texture can be converted - * to RGBA so that combo is allowed. - */ - if (_mesa_is_color_format(format) - && !_mesa_is_color_format(texImage->TexFormat->BaseFormat) - && !is_index_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - else if (is_index_format(format) - && !is_index_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - else if (is_depth_format(format) - && !is_depth_format(texImage->TexFormat->BaseFormat) - && !is_depthstencil_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - else if (is_ycbcr_format(format) - && !is_ycbcr_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - else if (is_depthstencil_format(format) - && !is_depthstencil_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - else if (is_dudv_format(format) - && !is_dudv_format(texImage->TexFormat->BaseFormat)) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)"); - goto out; - } - - if (ctx->Pack.BufferObj->Name) { - /* packing texture image into a PBO */ - const GLuint dimensions = (target == GL_TEXTURE_3D) ? 3 : 2; - if (!_mesa_validate_pbo_access(dimensions, &ctx->Pack, texImage->Width, - texImage->Height, texImage->Depth, - format, type, pixels)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetTexImage(invalid PBO access)"); - goto out; - } - } - - /* typically, this will call _mesa_get_teximage() */ - ctx->Driver.GetTexImage(ctx, target, level, format, type, pixels, - texObj, texImage); - - } - out: - _mesa_unlock_texture(ctx, texObj); -} - - /** Callback info for walking over FBO hash table */ struct cb_info { @@ -2544,7 +2154,7 @@ _mesa_TexImage1D( GLenum target, GLint level, GLint internalFormat, if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) _mesa_update_state(ctx); - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -2652,7 +2262,7 @@ _mesa_TexImage2D( GLenum target, GLint level, GLint internalFormat, if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) _mesa_update_state(ctx); - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -2755,7 +2365,7 @@ _mesa_TexImage3D( GLenum target, GLint level, GLint internalFormat, if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) _mesa_update_state(ctx); - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -2861,7 +2471,7 @@ _mesa_TexSubImage1D( GLenum target, GLint level, } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); assert(texObj); @@ -2921,7 +2531,7 @@ _mesa_TexSubImage2D( GLenum target, GLint level, return; /* error was detected */ } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -2973,7 +2583,7 @@ _mesa_TexSubImage3D( GLenum target, GLint level, return; /* error was detected */ } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3034,7 +2644,7 @@ _mesa_CopyTexImage1D( GLenum target, GLint level, postConvWidth, 1, border)) return; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3100,7 +2710,7 @@ _mesa_CopyTexImage2D( GLenum target, GLint level, GLenum internalFormat, postConvWidth, postConvHeight, border)) return; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3160,7 +2770,7 @@ _mesa_CopyTexSubImage1D( GLenum target, GLint level, if (copytexsubimage_error_check1(ctx, 1, target, level)) return; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3215,7 +2825,7 @@ _mesa_CopyTexSubImage2D( GLenum target, GLint level, if (copytexsubimage_error_check1(ctx, 2, target, level)) return; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3270,7 +2880,7 @@ _mesa_CopyTexSubImage3D( GLenum target, GLint level, if (copytexsubimage_error_check1(ctx, 3, target, level)) return; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3524,7 +3134,7 @@ _mesa_CompressedTexImage1DARB(GLenum target, GLint level, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3578,7 +3188,7 @@ _mesa_CompressedTexImage1DARB(GLenum target, GLint level, struct gl_texture_unit *texUnit; struct gl_texture_object *texObj; struct gl_texture_image *texImage; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3621,7 +3231,7 @@ _mesa_CompressedTexImage2DARB(GLenum target, GLint level, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3677,7 +3287,7 @@ _mesa_CompressedTexImage2DARB(GLenum target, GLint level, struct gl_texture_unit *texUnit; struct gl_texture_object *texObj; struct gl_texture_image *texImage; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); @@ -3717,7 +3327,7 @@ _mesa_CompressedTexImage3DARB(GLenum target, GLint level, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3771,7 +3381,7 @@ _mesa_CompressedTexImage3DARB(GLenum target, GLint level, struct gl_texture_unit *texUnit; struct gl_texture_object *texObj; struct gl_texture_image *texImage; - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3810,7 +3420,7 @@ _mesa_CompressedTexSubImage1DARB(GLenum target, GLint level, GLint xoffset, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3867,7 +3477,7 @@ _mesa_CompressedTexSubImage2DARB(GLenum target, GLint level, GLint xoffset, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3924,7 +3534,7 @@ _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); texObj = _mesa_select_tex_object(ctx, texUnit, target); _mesa_lock_texture(ctx, texObj); { @@ -3961,55 +3571,3 @@ _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, } -void GLAPIENTRY -_mesa_GetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img) -{ - const struct gl_texture_unit *texUnit; - struct gl_texture_object *texObj; - struct gl_texture_image *texImage; - GLint maxLevels; - GET_CURRENT_CONTEXT(ctx); - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; - texObj = _mesa_select_tex_object(ctx, texUnit, target); - if (!texObj) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetCompressedTexImageARB"); - return; - } - - maxLevels = _mesa_max_texture_levels(ctx, target); - ASSERT(maxLevels > 0); /* 0 indicates bad target, caught above */ - - if (level < 0 || level >= maxLevels) { - _mesa_error(ctx, GL_INVALID_VALUE, "glGetCompressedTexImageARB(level)"); - return; - } - - if (_mesa_is_proxy_texture(target)) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetCompressedTexImageARB(target)"); - return; - } - - _mesa_lock_texture(ctx, texObj); - { - texImage = _mesa_select_tex_image(ctx, texObj, target, level); - if (texImage) { - if (texImage->IsCompressed) { - /* this typically calls _mesa_get_compressed_teximage() */ - ctx->Driver.GetCompressedTexImage(ctx, target, level, img, - texObj, texImage); - } - else { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetCompressedTexImageARB"); - } - } - else { - /* probably invalid mipmap level */ - _mesa_error(ctx, GL_INVALID_VALUE, - "glGetCompressedTexImageARB(level)"); - } - } - _mesa_unlock_texture(ctx, texObj); -} diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h index eb60a1fa8f..094177da79 100644 --- a/src/mesa/main/teximage.h +++ b/src/mesa/main/teximage.h @@ -73,6 +73,10 @@ _mesa_init_teximage_fields(GLcontext *ctx, GLenum target, extern void +_mesa_clear_texture_image(GLcontext *ctx, struct gl_texture_image *texImage); + + +extern void _mesa_set_tex_image(struct gl_texture_object *tObj, GLenum target, GLint level, struct gl_texture_image *texImage); @@ -111,10 +115,6 @@ extern GLuint _mesa_tex_target_to_face(GLenum target); -extern GLboolean -_mesa_is_color_format(GLenum format); - - /** * Lock a texture for updating. See also _mesa_lock_context_textures(). */ @@ -164,11 +164,6 @@ _mesa_TexImage3DEXT( GLenum target, GLint level, GLenum internalformat, extern void GLAPIENTRY -_mesa_GetTexImage( GLenum target, GLint level, - GLenum format, GLenum type, GLvoid *pixels ); - - -extern void GLAPIENTRY _mesa_TexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, @@ -260,9 +255,6 @@ _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); -extern void GLAPIENTRY -_mesa_GetCompressedTexImageARB(GLenum target, GLint lod, GLvoid *img); - /*@}*/ #endif diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index 2082f945f1..d09c439250 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -261,6 +261,32 @@ _mesa_copy_texture_object( struct gl_texture_object *dest, /** + * Clear all texture images of the given texture object. + * + * \param ctx GL context. + * \param t texture object. + * + * \sa _mesa_clear_texture_image(). + */ +void +_mesa_clear_texture_object(GLcontext *ctx, struct gl_texture_object *texObj) +{ + GLuint i, j; + + if (texObj->Target == 0) + return; + + for (i = 0; i < MAX_FACES; i++) { + for (j = 0; j < MAX_TEXTURE_LEVELS; j++) { + struct gl_texture_image *texImage = texObj->Image[i][j]; + if (texImage) + _mesa_clear_texture_image(ctx, texImage); + } + } +} + + +/** * Check if the given texture object is valid by examining its Target field. * For debugging only. */ @@ -308,7 +334,7 @@ _mesa_reference_texobj(struct gl_texture_object **ptr, GLboolean deleteFlag = GL_FALSE; struct gl_texture_object *oldTex = *ptr; - assert(valid_texture_object(oldTex)); + ASSERT(valid_texture_object(oldTex)); _glthread_LOCK_MUTEX(oldTex->Mutex); ASSERT(oldTex->RefCount > 0); @@ -331,7 +357,7 @@ _mesa_reference_texobj(struct gl_texture_object **ptr, if (tex) { /* reference new texture */ - assert(valid_texture_object(tex)); + ASSERT(valid_texture_object(tex)); _glthread_LOCK_MUTEX(tex->Mutex); if (tex->RefCount == 0) { /* this texture's being deleted (look just above) */ @@ -665,6 +691,24 @@ _mesa_test_texobj_completeness( const GLcontext *ctx, /** + * Mark a texture object dirty. It forces the object to be incomplete + * and optionally forces the context to re-validate its state. + * + * \param ctx GL context. + * \param texObj texture object. + * \param invalidate_state also invalidate context state. + */ +void +_mesa_dirty_texobj(GLcontext *ctx, struct gl_texture_object *texObj, + GLboolean invalidate_state) +{ + texObj->_Complete = GL_FALSE; + if (invalidate_state) + ctx->NewState |= _NEW_TEXTURE; +} + + +/** * Return pointer to a default/fallback texture. * The texture is a 2D 8x8 RGBA texture with all texels = (0,0,0,1). * That's the value a sampler should get when sampling from an @@ -715,7 +759,6 @@ _mesa_get_fallback_texture(GLcontext *ctx) } - /*@}*/ @@ -1160,10 +1203,9 @@ _mesa_IsTexture( GLuint texture ) /** - * Simplest implementation of texture locking: Grab the a new mutex in - * the shared context. Examine the shared context state timestamp and - * if there has been a change, set the appropriate bits in - * ctx->NewState. + * Simplest implementation of texture locking: grab the shared tex + * mutex. Examine the shared context state timestamp and if there has + * been a change, set the appropriate bits in ctx->NewState. * * This is used to deal with synchronizing things when a texture object * is used/modified by different contexts (or threads) which are sharing diff --git a/src/mesa/main/texobj.h b/src/mesa/main/texobj.h index 2599c0816a..9bfebd45c8 100644 --- a/src/mesa/main/texobj.h +++ b/src/mesa/main/texobj.h @@ -58,6 +58,9 @@ _mesa_copy_texture_object( struct gl_texture_object *dest, const struct gl_texture_object *src ); extern void +_mesa_clear_texture_object(GLcontext *ctx, struct gl_texture_object *obj); + +extern void _mesa_reference_texobj(struct gl_texture_object **ptr, struct gl_texture_object *tex); @@ -65,6 +68,10 @@ extern void _mesa_test_texobj_completeness( const GLcontext *ctx, struct gl_texture_object *obj ); +extern void +_mesa_dirty_texobj(GLcontext *ctx, struct gl_texture_object *texObj, + GLboolean invalidate_state); + extern struct gl_texture_object * _mesa_get_fallback_texture(GLcontext *ctx); @@ -76,7 +83,6 @@ _mesa_lock_context_textures( GLcontext *ctx ); /*@}*/ - /** * \name API functions */ diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index d27c59381c..05d144270e 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -38,6 +38,7 @@ #include "main/texcompress.h" #include "main/texparam.h" #include "main/teximage.h" +#include "main/texstate.h" #include "shader/prog_instruction.h" @@ -88,7 +89,7 @@ get_texobj(GLcontext *ctx, GLenum target) return NULL; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); switch (target) { case GL_TEXTURE_1D: @@ -716,44 +717,6 @@ _mesa_GetTexLevelParameterfv( GLenum target, GLint level, } -static GLuint -tex_image_dimensions(GLcontext *ctx, GLenum target) -{ - switch (target) { - case GL_TEXTURE_1D: - case GL_PROXY_TEXTURE_1D: - return 1; - case GL_TEXTURE_2D: - case GL_PROXY_TEXTURE_2D: - return 2; - case GL_TEXTURE_3D: - case GL_PROXY_TEXTURE_3D: - return 3; - case GL_TEXTURE_CUBE_MAP: - case GL_PROXY_TEXTURE_CUBE_MAP: - case GL_TEXTURE_CUBE_MAP_POSITIVE_X: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_X: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Y: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: - case GL_TEXTURE_CUBE_MAP_POSITIVE_Z: - case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: - return ctx->Extensions.ARB_texture_cube_map ? 2 : 0; - case GL_TEXTURE_RECTANGLE_NV: - case GL_PROXY_TEXTURE_RECTANGLE_NV: - return ctx->Extensions.NV_texture_rectangle ? 2 : 0; - case GL_TEXTURE_1D_ARRAY_EXT: - case GL_PROXY_TEXTURE_1D_ARRAY_EXT: - return ctx->Extensions.MESA_texture_array ? 2 : 0; - case GL_TEXTURE_2D_ARRAY_EXT: - case GL_PROXY_TEXTURE_2D_ARRAY_EXT: - return ctx->Extensions.MESA_texture_array ? 3 : 0; - default: - _mesa_problem(ctx, "bad target in _mesa_tex_target_dimensions()"); - return 0; - } -} - - void GLAPIENTRY _mesa_GetTexLevelParameteriv( GLenum target, GLint level, GLenum pname, GLint *params ) @@ -761,7 +724,6 @@ _mesa_GetTexLevelParameteriv( GLenum target, GLint level, const struct gl_texture_unit *texUnit; struct gl_texture_object *texObj; const struct gl_texture_image *img = NULL; - GLuint dimensions; GLboolean isProxy; GLint maxLevels; GET_CURRENT_CONTEXT(ctx); @@ -773,19 +735,13 @@ _mesa_GetTexLevelParameteriv( GLenum target, GLint level, return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); /* this will catch bad target values */ - dimensions = tex_image_dimensions(ctx, target); /* 1, 2 or 3 */ - if (dimensions == 0) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetTexLevelParameter[if]v(target)"); - return; - } - maxLevels = _mesa_max_texture_levels(ctx, target); if (maxLevels == 0) { - /* should not happen since <target> was just checked above */ - _mesa_problem(ctx, "maxLevels=0 in _mesa_GetTexLevelParameter"); + _mesa_error(ctx, GL_INVALID_ENUM, + "glGetTexLevelParameter[if]v(target=0x%x)", target); return; } @@ -1002,7 +958,7 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); obj = _mesa_select_tex_object(ctx, texUnit, target); if (!obj) { @@ -1169,7 +1125,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) return; } - texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit]; + texUnit = _mesa_get_current_tex_unit(ctx); obj = _mesa_select_tex_object(ctx, texUnit, target); if (!obj) { diff --git a/src/mesa/main/texstate.h b/src/mesa/main/texstate.h index a7d7088c62..17ac68000c 100644 --- a/src/mesa/main/texstate.h +++ b/src/mesa/main/texstate.h @@ -35,6 +35,18 @@ #include "mtypes.h" +/** + * Return pointer to current texture unit. + * This the texture unit set by glActiveTexture(), not glClientActiveTexture(). + */ +static INLINE struct gl_texture_unit * +_mesa_get_current_tex_unit(GLcontext *ctx) +{ + ASSERT(ctx->Texture.CurrentUnit < Elements(ctx->Texture.Unit)); + return &(ctx->Texture.Unit[ctx->Texture.CurrentUnit]); +} + + extern void _mesa_copy_texture_state( const GLcontext *src, GLcontext *dst ); @@ -48,16 +60,14 @@ _mesa_print_texunit_state( GLcontext *ctx, GLuint unit ); */ /*@{*/ - -/* - * GL_ARB_multitexture - */ extern void GLAPIENTRY _mesa_ActiveTextureARB( GLenum target ); extern void GLAPIENTRY _mesa_ClientActiveTextureARB( GLenum target ); +/*@}*/ + /** * \name Initialization, state maintenance diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index bfced1b3f4..a22db628d3 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -3138,7 +3138,7 @@ _mesa_validate_pbo_teximage(GLcontext *ctx, GLuint dimensions, { GLubyte *buf; - if (unpack->BufferObj->Name == 0) { + if (!_mesa_is_bufferobj(unpack->BufferObj)) { /* no PBO */ return pixels; } @@ -3174,7 +3174,7 @@ _mesa_validate_pbo_compressed_teximage(GLcontext *ctx, { GLubyte *buf; - if (packing->BufferObj->Name == 0) { + if (!_mesa_is_bufferobj(packing->BufferObj)) { /* not using a PBO - return pointer unchanged */ return pixels; } @@ -3204,7 +3204,7 @@ void _mesa_unmap_teximage_pbo(GLcontext *ctx, const struct gl_pixelstore_attrib *unpack) { - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, unpack->BufferObj); } diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index 3d5b8faecf..be1c03cec2 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -135,7 +135,8 @@ _mesa_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) break; #endif default: - _mesa_error( ctx, GL_INVALID_ENUM, "glVertexPointer(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glVertexPointer(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -186,7 +187,8 @@ _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) break; #endif default: - _mesa_error( ctx, GL_INVALID_ENUM, "glNormalPointer(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glNormalPointer(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -265,7 +267,8 @@ _mesa_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) break; #endif default: - _mesa_error( ctx, GL_INVALID_ENUM, "glColorPointer(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glColorPointer(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -415,7 +418,8 @@ _mesa_SecondaryColorPointerEXT(GLint size, GLenum type, elementSize = size * sizeof(GLdouble); break; default: - _mesa_error( ctx, GL_INVALID_ENUM, "glSecondaryColorPointer(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glSecondaryColorPointer(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -476,7 +480,8 @@ _mesa_TexCoordPointer(GLint size, GLenum type, GLsizei stride, break; #endif default: - _mesa_error( ctx, GL_INVALID_ENUM, "glTexCoordPointer(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glTexCoordPointer(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -610,7 +615,8 @@ _mesa_VertexAttribPointerNV(GLuint index, GLint size, GLenum type, elementSize = size * sizeof(GLdouble); break; default: - _mesa_error( ctx, GL_INVALID_ENUM, "glVertexAttribPointerNV(type)" ); + _mesa_error( ctx, GL_INVALID_ENUM, "glVertexAttribPointerNV(type=%s)", + _mesa_lookup_enum_by_nr(type)); return; } @@ -1093,6 +1099,29 @@ _mesa_MultiModeDrawElementsIBM( const GLenum * mode, const GLsizei * count, /** + * Copy one client vertex array to another. + */ +void +_mesa_copy_client_array(GLcontext *ctx, + struct gl_client_array *dst, + struct gl_client_array *src) +{ + dst->Size = src->Size; + dst->Type = src->Type; + dst->Format = src->Format; + dst->Stride = src->Stride; + dst->StrideB = src->StrideB; + dst->Ptr = src->Ptr; + dst->Enabled = src->Enabled; + dst->Normalized = src->Normalized; + dst->_ElementSize = src->_ElementSize; + _mesa_reference_buffer_object(ctx, &dst->BufferObj, src->BufferObj); + dst->_MaxElement = src->_MaxElement; +} + + + +/** * Print vertex array's fields. */ static void diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h index d4d505ae04..becc67c29d 100644 --- a/src/mesa/main/varray.h +++ b/src/mesa/main/varray.h @@ -161,6 +161,12 @@ _mesa_DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, extern void +_mesa_copy_client_array(GLcontext *ctx, + struct gl_client_array *dst, + struct gl_client_array *src); + + +extern void _mesa_print_arrays(GLcontext *ctx); extern void diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c index 50e0402d27..309308c983 100644 --- a/src/mesa/main/viewport.c +++ b/src/mesa/main/viewport.c @@ -120,6 +120,10 @@ _mesa_DepthRange(GLclampd nearval, GLclampd farval) if (MESA_VERBOSE&VERBOSE_API) _mesa_debug(ctx, "glDepthRange %f %f\n", nearval, farval); + if (ctx->Viewport.Near == nearval && + ctx->Viewport.Far == farval) + return; + ctx->Viewport.Near = (GLfloat) CLAMP(nearval, 0.0, 1.0); ctx->Viewport.Far = (GLfloat) CLAMP(farval, 0.0, 1.0); ctx->NewState |= _NEW_VIEWPORT; |