diff options
Diffstat (limited to 'src/mesa/main')
35 files changed, 3323 insertions, 2855 deletions
diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index c714d177a2..e49cd041a6 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -641,6 +641,8 @@ _mesa_init_exec_table(struct _glapi_table *exec) /* ???. GL_EXT_depth_bounds_test */ SET_DepthBoundsEXT(exec, _mesa_DepthBoundsEXT); + SET_ProvokingVertexEXT(exec, _mesa_ProvokingVertexEXT); + /* ARB 1. GL_ARB_multitexture */ #if _HAVE_FULL_GL SET_ActiveTextureARB(exec, _mesa_ActiveTextureARB); @@ -895,7 +897,15 @@ _mesa_init_exec_table(struct _glapi_table *exec) SET_RenderbufferStorageMultisample(exec, _mesa_RenderbufferStorageMultisample); #endif +#if FEATURE_ARB_map_buffer_range + SET_MapBufferRange(exec, _mesa_MapBufferRange); + SET_FlushMappedBufferRange(exec, _mesa_FlushMappedBufferRange); +#endif + /* GL_ARB_copy_buffer */ SET_CopyBufferSubData(exec, _mesa_CopyBufferSubData); -} + /* GL_ARB_vertex_array_object */ + SET_BindVertexArray(exec, _mesa_BindVertexArray); + SET_GenVertexArrays(exec, _mesa_GenVertexArrays); +} diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c index 1507671250..b2f11ffbfe 100644 --- a/src/mesa/main/api_validate.c +++ b/src/mesa/main/api_validate.c @@ -60,7 +60,7 @@ max_buffer_index(GLcontext *ctx, GLuint count, GLenum type, { const GLubyte *map = NULL; GLuint max = 0; - GLint i; + GLuint i; if (elementBuf->Name) { /* elements are in a user-defined buffer object. need to map it */ diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c index c03353b78f..fd35d4e38c 100644 --- a/src/mesa/main/arrayobj.c +++ b/src/mesa/main/arrayobj.c @@ -63,10 +63,11 @@ static INLINE struct gl_array_object * lookup_arrayobj(GLcontext *ctx, GLuint id) { - return (id == 0) - ? NULL - : (struct gl_array_object *) _mesa_HashLookup(ctx->Shared->ArrayObjects, - id); + if (id == 0) + return NULL; + else + return (struct gl_array_object *) + _mesa_HashLookup(ctx->Array.Objects, id); } @@ -252,7 +253,7 @@ save_array_object( GLcontext *ctx, struct gl_array_object *obj ) { if (obj->Name > 0) { /* insert into hash table */ - _mesa_HashInsert(ctx->Shared->ArrayObjects, obj->Name, obj); + _mesa_HashInsert(ctx->Array.Objects, obj->Name, obj); } } @@ -266,7 +267,7 @@ remove_array_object( GLcontext *ctx, struct gl_array_object *obj ) { if (obj->Name > 0) { /* remove from hash table */ - _mesa_HashRemove(ctx->Shared->ArrayObjects, obj->Name); + _mesa_HashRemove(ctx->Array.Objects, obj->Name); } } @@ -352,18 +353,15 @@ _mesa_update_array_object_max_element(GLcontext *ctx, /* API Functions */ /**********************************************************************/ + /** - * Bind a new array. - * - * \todo - * The binding could be done more efficiently by comparing the non-NULL - * pointers in the old and new objects. The only arrays that are "dirty" are - * the ones that are non-NULL in either object. + * Helper for _mesa_BindVertexArray() and _mesa_BindVertexArrayAPPLE(). + * \param genRequired specifies behavour when id was not generated with + * glGenVertexArrays(). */ -void GLAPIENTRY -_mesa_BindVertexArrayAPPLE( GLuint id ) +static void +bind_vertex_array(GLcontext *ctx, GLuint id, GLboolean genRequired) { - GET_CURRENT_CONTEXT(ctx); struct gl_array_object * const oldObj = ctx->Array.ArrayObj; struct gl_array_object *newObj = NULL; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -386,8 +384,12 @@ _mesa_BindVertexArrayAPPLE( GLuint id ) /* non-default array object */ newObj = lookup_arrayobj(ctx, id); if (!newObj) { - /* If this is a new array object id, allocate an array object now. - */ + if (genRequired) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glBindVertexArray(id)"); + return; + } + + /* For APPLE version, generate a new array object now */ newObj = (*ctx->Driver.NewArrayObject)(ctx, id); if (!newObj) { _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindVertexArrayAPPLE"); @@ -403,7 +405,37 @@ _mesa_BindVertexArrayAPPLE( GLuint id ) /* Pass BindVertexArray call to device driver */ if (ctx->Driver.BindArrayObject && newObj) - (*ctx->Driver.BindArrayObject)( ctx, newObj ); + ctx->Driver.BindArrayObject(ctx, newObj); +} + + +/** + * ARB version of glBindVertexArray() + * This function behaves differently from glBindVertexArrayAPPLE() in + * that this function requires all ids to have been previously generated + * by glGenVertexArrays[APPLE](). + */ +void GLAPIENTRY +_mesa_BindVertexArray( GLuint id ) +{ + GET_CURRENT_CONTEXT(ctx); + bind_vertex_array(ctx, id, GL_TRUE); +} + + +/** + * Bind a new array. + * + * \todo + * The binding could be done more efficiently by comparing the non-NULL + * pointers in the old and new objects. The only arrays that are "dirty" are + * the ones that are non-NULL in either object. + */ +void GLAPIENTRY +_mesa_BindVertexArrayAPPLE( GLuint id ) +{ + GET_CURRENT_CONTEXT(ctx); + bind_vertex_array(ctx, id, GL_FALSE); } @@ -425,8 +457,6 @@ _mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids) return; } - _glthread_LOCK_MUTEX(ctx->Shared->Mutex); - for (i = 0; i < n; i++) { struct gl_array_object *obj = lookup_arrayobj(ctx, ids[i]); @@ -450,21 +480,19 @@ _mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids) _mesa_reference_array_object(ctx, &obj, NULL); } } - - _glthread_UNLOCK_MUTEX(ctx->Shared->Mutex); } /** * Generate a set of unique array object IDs and store them in \c arrays. - * + * Helper for _mesa_GenVertexArrays[APPLE]() functions below. * \param n Number of IDs to generate. * \param arrays Array of \c n locations to store the IDs. + * \param vboOnly Will arrays have to reside in VBOs? */ -void GLAPIENTRY -_mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays) +static void +gen_vertex_arrays(GLcontext *ctx, GLsizei n, GLuint *arrays, GLboolean vboOnly) { - GET_CURRENT_CONTEXT(ctx); GLuint first; GLint i; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -478,12 +506,7 @@ _mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays) return; } - /* - * This must be atomic (generation and allocation of array object IDs) - */ - _glthread_LOCK_MUTEX(ctx->Shared->Mutex); - - first = _mesa_HashFindFreeKeyBlock(ctx->Shared->ArrayObjects, n); + first = _mesa_HashFindFreeKeyBlock(ctx->Array.Objects, n); /* Allocate new, empty array objects and return identifiers */ for (i = 0; i < n; i++) { @@ -492,15 +515,37 @@ _mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays) obj = (*ctx->Driver.NewArrayObject)( ctx, name ); if (!obj) { - _glthread_UNLOCK_MUTEX(ctx->Shared->Mutex); _mesa_error(ctx, GL_OUT_OF_MEMORY, "glGenVertexArraysAPPLE"); return; } + obj->VBOonly = vboOnly; save_array_object(ctx, obj); arrays[i] = first + i; } +} + + +/** + * ARB version of glGenVertexArrays() + * All arrays will be required to live in VBOs. + */ +void GLAPIENTRY +_mesa_GenVertexArrays(GLsizei n, GLuint *arrays) +{ + GET_CURRENT_CONTEXT(ctx); + gen_vertex_arrays(ctx, n, arrays, GL_TRUE); +} + - _glthread_UNLOCK_MUTEX(ctx->Shared->Mutex); +/** + * APPLE version of glGenVertexArraysAPPLE() + * Arrays may live in VBOs or ordinary memory. + */ +void GLAPIENTRY +_mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays) +{ + GET_CURRENT_CONTEXT(ctx); + gen_vertex_arrays(ctx, n, arrays, GL_FALSE); } @@ -521,9 +566,7 @@ _mesa_IsVertexArrayAPPLE( GLuint id ) if (id == 0) return GL_FALSE; - _glthread_LOCK_MUTEX(ctx->Shared->Mutex); obj = lookup_arrayobj(ctx, id); - _glthread_UNLOCK_MUTEX(ctx->Shared->Mutex); return (obj != NULL) ? GL_TRUE : GL_FALSE; } diff --git a/src/mesa/main/arrayobj.h b/src/mesa/main/arrayobj.h index abca5ab9b4..8999edc724 100644 --- a/src/mesa/main/arrayobj.h +++ b/src/mesa/main/arrayobj.h @@ -67,10 +67,15 @@ _mesa_update_array_object_max_element(GLcontext *ctx, * API functions */ + +void GLAPIENTRY _mesa_BindVertexArray( GLuint id ); + void GLAPIENTRY _mesa_BindVertexArrayAPPLE( GLuint id ); void GLAPIENTRY _mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids); +void GLAPIENTRY _mesa_GenVertexArrays(GLsizei n, GLuint *arrays); + void GLAPIENTRY _mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *buffer); GLboolean GLAPIENTRY _mesa_IsVertexArrayAPPLE( GLuint id ); diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index a49da3d3b5..d640f5358e 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -45,9 +45,9 @@ #ifdef FEATURE_OES_mapbuffer -#define DEFAULT_ACCESS GL_WRITE_ONLY; +#define DEFAULT_ACCESS GL_MAP_WRITE_BIT #else -#define DEFAULT_ACCESS GL_READ_WRITE; +#define DEFAULT_ACCESS (GL_MAP_READ_BIT | GL_MAP_WRITE_BIT) #endif @@ -101,6 +101,24 @@ get_buffer(GLcontext *ctx, GLenum target) /** + * Convert a GLbitfield describing the mapped buffer access flags + * into one of GL_READ_WRITE, GL_READ_ONLY, or GL_WRITE_ONLY. + */ +static GLenum +simplified_access_mode(GLbitfield access) +{ + const GLbitfield rwFlags = GL_MAP_READ_BIT | GL_MAP_WRITE_BIT; + if ((access & rwFlags) == rwFlags) + return GL_READ_WRITE; + if ((access & GL_MAP_READ_BIT) == GL_MAP_READ_BIT) + return GL_READ_ONLY; + if ((access & GL_MAP_WRITE_BIT) == GL_MAP_WRITE_BIT) + return GL_WRITE_ONLY; + return GL_READ_WRITE; /* this should never happen, but no big deal */ +} + + +/** * Tests the subdata range parameters and sets the GL error code for * \c glBufferSubDataARB and \c glGetBufferSubDataARB. * @@ -162,7 +180,7 @@ buffer_object_subdata_range_good( GLcontext * ctx, GLenum target, * * Default callback for the \c dd_function_table::NewBufferObject() hook. */ -struct gl_buffer_object * +static struct gl_buffer_object * _mesa_new_buffer_object( GLcontext *ctx, GLuint name, GLenum target ) { struct gl_buffer_object *obj; @@ -180,7 +198,7 @@ _mesa_new_buffer_object( GLcontext *ctx, GLuint name, GLenum target ) * * Default callback for the \c dd_function_table::DeleteBuffer() hook. */ -void +static void _mesa_delete_buffer_object( GLcontext *ctx, struct gl_buffer_object *bufObj ) { (void) ctx; @@ -276,7 +294,7 @@ _mesa_initialize_buffer_object( struct gl_buffer_object *obj, obj->RefCount = 1; obj->Name = name; obj->Usage = GL_STATIC_DRAW_ARB; - obj->Access = DEFAULT_ACCESS; + obj->AccessFlags = DEFAULT_ACCESS; } @@ -298,7 +316,7 @@ _mesa_initialize_buffer_object( struct gl_buffer_object *obj, * * \sa glBufferDataARB, dd_function_table::BufferData. */ -void +static void _mesa_buffer_data( GLcontext *ctx, GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage, struct gl_buffer_object * bufObj ) @@ -337,7 +355,7 @@ _mesa_buffer_data( GLcontext *ctx, GLenum target, GLsizeiptrARB size, * * \sa glBufferSubDataARB, dd_function_table::BufferSubData. */ -void +static void _mesa_buffer_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data, struct gl_buffer_object * bufObj ) @@ -370,7 +388,7 @@ _mesa_buffer_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, * * \sa glBufferGetSubDataARB, dd_function_table::GetBufferSubData. */ -void +static void _mesa_buffer_get_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data, struct gl_buffer_object * bufObj ) @@ -397,7 +415,7 @@ _mesa_buffer_get_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, * * \sa glMapBufferARB, dd_function_table::MapBuffer */ -void * +static void * _mesa_buffer_map( GLcontext *ctx, GLenum target, GLenum access, struct gl_buffer_object *bufObj ) { @@ -415,13 +433,50 @@ _mesa_buffer_map( GLcontext *ctx, GLenum target, GLenum access, /** + * Default fallback for \c dd_function_table::MapBufferRange(). + * Called via glMapBufferRange(). + */ +static void * +_mesa_buffer_map_range( GLcontext *ctx, GLenum target, GLintptr offset, + GLsizeiptr length, GLbitfield access, + struct gl_buffer_object *bufObj ) +{ + (void) ctx; + (void) target; + (void) access; + (void) length; + assert(!bufObj->Pointer); + /* Just return a direct pointer to the data */ + return bufObj->Data + offset; +} + + +/** + * Default fallback for \c dd_function_table::FlushMappedBufferRange(). + * Called via glFlushMappedBufferRange(). + */ +static void +_mesa_buffer_flush_mapped_range( GLcontext *ctx, GLenum target, + GLintptr offset, GLsizeiptr length, + struct gl_buffer_object *obj ) +{ + (void) ctx; + (void) target; + (void) offset; + (void) length; + (void) obj; + /* no-op */ +} + + +/** * Default callback for \c dd_function_table::MapBuffer(). * * The input parameters will have been already tested for errors. * * \sa glUnmapBufferARB, dd_function_table::UnmapBuffer */ -GLboolean +static GLboolean _mesa_buffer_unmap( GLcontext *ctx, GLenum target, struct gl_buffer_object *bufObj ) { @@ -437,7 +492,7 @@ _mesa_buffer_unmap( GLcontext *ctx, GLenum target, * Default fallback for \c dd_function_table::CopyBufferSubData(). * Called via glCopyBuffserSubData(). */ -void +static void _mesa_copy_buffer_subdata(GLcontext *ctx, struct gl_buffer_object *src, struct gl_buffer_object *dst, @@ -470,11 +525,15 @@ _mesa_copy_buffer_subdata(GLcontext *ctx, void _mesa_init_buffer_objects( GLcontext *ctx ) { - ctx->Array.ArrayBufferObj = ctx->Shared->NullBufferObj; - ctx->Array.ElementArrayBufferObj = ctx->Shared->NullBufferObj; - - ctx->CopyReadBuffer = ctx->Shared->NullBufferObj; - ctx->CopyWriteBuffer = ctx->Shared->NullBufferObj; + _mesa_reference_buffer_object(ctx, &ctx->Array.ArrayBufferObj, + ctx->Shared->NullBufferObj); + _mesa_reference_buffer_object(ctx, &ctx->Array.ElementArrayBufferObj, + ctx->Shared->NullBufferObj); + + _mesa_reference_buffer_object(ctx, &ctx->CopyReadBuffer, + ctx->Shared->NullBufferObj); + _mesa_reference_buffer_object(ctx, &ctx->CopyWriteBuffer, + ctx->Shared->NullBufferObj); } @@ -804,6 +863,32 @@ unbind(GLcontext *ctx, } +/** + * Plug default/fallback buffer object functions into the device + * driver hooks. + */ +void +_mesa_init_buffer_object_functions(struct dd_function_table *driver) +{ + /* GL_ARB_vertex/pixel_buffer_object */ + driver->NewBufferObject = _mesa_new_buffer_object; + driver->DeleteBuffer = _mesa_delete_buffer_object; + driver->BindBuffer = NULL; + driver->BufferData = _mesa_buffer_data; + driver->BufferSubData = _mesa_buffer_subdata; + driver->GetBufferSubData = _mesa_buffer_get_subdata; + driver->MapBuffer = _mesa_buffer_map; + driver->UnmapBuffer = _mesa_buffer_unmap; + + /* GL_ARB_map_buffer_range */ + driver->MapBufferRange = _mesa_buffer_map_range; + driver->FlushMappedBufferRange = _mesa_buffer_flush_mapped_range; + + /* GL_ARB_copy_buffer */ + driver->CopyBufferSubData = _mesa_copy_buffer_subdata; +} + + /**********************************************************************/ /* API Functions */ @@ -850,7 +935,7 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids) if (bufObj->Pointer) { /* if mapped, unmap it now */ ctx->Driver.UnmapBuffer(ctx, 0, bufObj); - bufObj->Access = DEFAULT_ACCESS; + bufObj->AccessFlags = DEFAULT_ACCESS; bufObj->Pointer = NULL; } @@ -1009,7 +1094,7 @@ _mesa_BufferDataARB(GLenum target, GLsizeiptrARB size, if (bufObj->Pointer) { /* Unmap the existing buffer. We'll replace it now. Not an error. */ ctx->Driver.UnmapBuffer(ctx, target, bufObj); - bufObj->Access = DEFAULT_ACCESS; + bufObj->AccessFlags = DEFAULT_ACCESS; bufObj->Pointer = NULL; } @@ -1079,13 +1164,18 @@ _mesa_MapBufferARB(GLenum target, GLenum access) { GET_CURRENT_CONTEXT(ctx); struct gl_buffer_object * bufObj; + GLbitfield accessFlags; ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, NULL); switch (access) { case GL_READ_ONLY_ARB: + accessFlags = GL_MAP_READ_BIT; + break; case GL_WRITE_ONLY_ARB: + accessFlags = GL_MAP_WRITE_BIT; + break; case GL_READ_WRITE_ARB: - /* OK */ + accessFlags = GL_MAP_READ_BIT | GL_MAP_WRITE_BIT; break; default: _mesa_error(ctx, GL_INVALID_ENUM, "glMapBufferARB(access)"); @@ -1112,7 +1202,10 @@ _mesa_MapBufferARB(GLenum target, GLenum access) _mesa_error(ctx, GL_OUT_OF_MEMORY, "glMapBufferARB(access)"); } - bufObj->Access = access; + bufObj->AccessFlags = accessFlags; + bufObj->Offset = 0; + bufObj->Length = bufObj->Size; + if (access == GL_WRITE_ONLY_ARB || access == GL_READ_WRITE_ARB) bufObj->Written = GL_TRUE; @@ -1181,7 +1274,7 @@ _mesa_UnmapBufferARB(GLenum target) #endif #ifdef VBO_DEBUG - if (bufObj->Access == GL_WRITE_ONLY_ARB) { + if (bufObj->AccessFlags & GL_MAP_WRITE_BIT) { GLuint i, unchanged = 0; GLubyte *b = (GLubyte *) bufObj->Pointer; GLint pos = -1; @@ -1201,8 +1294,10 @@ _mesa_UnmapBufferARB(GLenum target) #endif status = ctx->Driver.UnmapBuffer( ctx, target, bufObj ); - bufObj->Access = DEFAULT_ACCESS; + bufObj->AccessFlags = DEFAULT_ACCESS; bufObj->Pointer = NULL; + bufObj->Offset = 0; + bufObj->Length = 0; return status; } @@ -1233,7 +1328,7 @@ _mesa_GetBufferParameterivARB(GLenum target, GLenum pname, GLint *params) *params = bufObj->Usage; break; case GL_BUFFER_ACCESS_ARB: - *params = bufObj->Access; + *params = simplified_access_mode(bufObj->AccessFlags); break; case GL_BUFFER_MAPPED_ARB: *params = (bufObj->Pointer != NULL); @@ -1350,3 +1445,153 @@ _mesa_CopyBufferSubData(GLenum readTarget, GLenum writeTarget, ctx->Driver.CopyBufferSubData(ctx, src, dst, readOffset, writeOffset, size); } + +/** + * See GL_ARB_map_buffer_range spec + */ +void * GLAPIENTRY +_mesa_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, + GLbitfield access) +{ + GET_CURRENT_CONTEXT(ctx); + struct gl_buffer_object *bufObj; + ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, NULL); + + if (!ctx->Extensions.ARB_map_buffer_range) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(extension not supported)"); + return NULL; + } + + if (offset < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(offset = %ld)", offset); + return NULL; + } + + if (length < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(length = %ld)", length); + return NULL; + } + + if ((access & (GL_MAP_READ_BIT | GL_MAP_WRITE_BIT)) == 0) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(access indicates neither read or write)"); + return NULL; + } + + if (access & GL_MAP_READ_BIT) { + if ((access & GL_MAP_INVALIDATE_RANGE_BIT) || + (access & GL_MAP_INVALIDATE_BUFFER_BIT) || + (access & GL_MAP_UNSYNCHRONIZED_BIT)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(invalid access flags)"); + return NULL; + } + } + + if ((access & GL_MAP_FLUSH_EXPLICIT_BIT) && + ((access & GL_MAP_WRITE_BIT) == 0)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(invalid access flags)"); + return NULL; + } + + bufObj = get_buffer(ctx, target); + if (!bufObj || bufObj->Name == 0) { + _mesa_error(ctx, GL_INVALID_ENUM, + "glMapBufferRange(target = 0x%x)", target); + return NULL; + } + + if (offset + length > bufObj->Size) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(offset + length > size)"); + return NULL; + } + + if (bufObj->Pointer) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(buffer already mapped)"); + return NULL; + } + + ASSERT(ctx->Driver.MapBufferRange); + bufObj->Pointer = ctx->Driver.MapBufferRange(ctx, target, offset, length, + access, bufObj); + + bufObj->Offset = offset; + bufObj->Length = length; + bufObj->AccessFlags = access; + + return bufObj->Pointer; +} + + +/** + * See GL_ARB_map_buffer_range spec + */ +void GLAPIENTRY +_mesa_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) +{ + GET_CURRENT_CONTEXT(ctx); + struct gl_buffer_object *bufObj; + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (!ctx->Extensions.ARB_map_buffer_range) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(extension not supported)"); + return; + } + + if (offset < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(offset = %ld)", offset); + return; + } + + if (length < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(length = %ld)", length); + return; + } + + bufObj = get_buffer(ctx, target); + if (!bufObj) { + _mesa_error(ctx, GL_INVALID_ENUM, + "glMapBufferRange(target = 0x%x)", target); + return; + } + + if (bufObj->Name == 0) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(current buffer is 0)"); + return; + } + + if (!bufObj->Pointer) { + /* buffer is not mapped */ + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(buffer is not mapped)"); + return; + } + + if ((bufObj->AccessFlags & GL_MAP_FLUSH_EXPLICIT_BIT) == 0) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMapBufferRange(GL_MAP_FLUSH_EXPLICIT_BIT not set)"); + return; + } + + if (offset + length > bufObj->Length) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glMapBufferRange(offset %ld + length %ld > mapped length %ld)", + offset, length, bufObj->Length); + return; + } + + ASSERT(bufObj->AccessFlags & GL_MAP_WRITE_BIT); + + if (ctx->Driver.FlushMappedBufferRange) + ctx->Driver.FlushMappedBufferRange(ctx, target, offset, length, bufObj); +} diff --git a/src/mesa/main/bufferobj.h b/src/mesa/main/bufferobj.h index 79c027aa4d..ef59ff83c8 100644 --- a/src/mesa/main/bufferobj.h +++ b/src/mesa/main/bufferobj.h @@ -42,11 +42,6 @@ _mesa_init_buffer_objects( GLcontext *ctx ); extern void _mesa_update_default_objects_buffer_objects(GLcontext *ctx); -extern struct gl_buffer_object * -_mesa_new_buffer_object( GLcontext *ctx, GLuint name, GLenum target ); - -extern void -_mesa_delete_buffer_object( GLcontext *ctx, struct gl_buffer_object *bufObj ); extern struct gl_buffer_object * _mesa_lookup_bufferobj(GLcontext *ctx, GLuint buffer); @@ -60,36 +55,6 @@ _mesa_reference_buffer_object(GLcontext *ctx, struct gl_buffer_object **ptr, struct gl_buffer_object *bufObj); -extern void -_mesa_buffer_data( GLcontext *ctx, GLenum target, GLsizeiptrARB size, - const GLvoid * data, GLenum usage, - struct gl_buffer_object * bufObj ); - -extern void -_mesa_buffer_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, - GLsizeiptrARB size, const GLvoid * data, - struct gl_buffer_object * bufObj ); - -extern void -_mesa_buffer_get_subdata( GLcontext *ctx, GLenum target, GLintptrARB offset, - GLsizeiptrARB size, GLvoid * data, - struct gl_buffer_object * bufObj ); - -extern void * -_mesa_buffer_map( GLcontext *ctx, GLenum target, GLenum access, - struct gl_buffer_object * bufObj ); - -extern GLboolean -_mesa_buffer_unmap( GLcontext *ctx, GLenum target, - struct gl_buffer_object * bufObj ); - -extern void -_mesa_copy_buffer_subdata(GLcontext *ctx, - struct gl_buffer_object *src, - struct gl_buffer_object *dst, - GLintptr readOffset, GLintptr writeOffset, - GLsizeiptr size); - extern GLboolean _mesa_validate_pbo_access(GLuint dimensions, const struct gl_pixelstore_attrib *pack, @@ -124,6 +89,9 @@ _mesa_unmap_readpix_pbo(GLcontext *ctx, const struct gl_pixelstore_attrib *pack); +extern void +_mesa_init_buffer_object_functions(struct dd_function_table *driver); + /* * API functions @@ -167,4 +135,11 @@ _mesa_CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +extern void * GLAPIENTRY +_mesa_MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, + GLbitfield access); + +extern void GLAPIENTRY +_mesa_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length); + #endif diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h index 93103fe878..e79bbc2ac5 100644 --- a/src/mesa/main/compiler.h +++ b/src/mesa/main/compiler.h @@ -468,9 +468,9 @@ do { \ #endif - +#ifndef Elements #define Elements(x) (sizeof(x)/sizeof(*(x))) - +#endif diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index bf53bd3467..415e339cb8 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -592,6 +592,9 @@ _mesa_init_constants(GLcontext *ctx) /* GL_ATI_envmap_bumpmap */ ctx->Const.SupportedBumpUnits = SUPPORTED_ATI_BUMP_UNITS; + /* GL_EXT_provoking_vertex */ + ctx->Const.QuadsFollowProvokingVertexConvention = GL_TRUE; + /* sanity checks */ ASSERT(ctx->Const.MaxTextureUnits == MIN2(ctx->Const.MaxTextureImageUnits, ctx->Const.MaxTextureCoordUnits)); @@ -1008,6 +1011,7 @@ _mesa_free_context_data( GLcontext *ctx ) #if FEATURE_ARB_occlusion_query _mesa_free_query_data(ctx); #endif + _mesa_free_varray_data(ctx); _mesa_delete_array_object(ctx, ctx->Array.DefaultArrayObj); @@ -1256,6 +1260,24 @@ initialize_framebuffer_size(GLcontext *ctx, GLframebuffer *fb) /** + * Check if the viewport/scissor size has not yet been initialized. + * Initialize the size if the given width and height are non-zero. + */ +void +_mesa_check_init_viewport(GLcontext *ctx, GLuint width, GLuint height) +{ + if (!ctx->ViewportInitialized && width > 0 && height > 0) { + /* Note: set flag here, before calling _mesa_set_viewport(), to prevent + * potential infinite recursion. + */ + ctx->ViewportInitialized = GL_TRUE; + _mesa_set_viewport(ctx, 0, 0, width, height); + _mesa_set_scissor(ctx, 0, 0, width, height); + } +} + + +/** * Bind the given context to the given drawBuffer and readBuffer and * make it the current context for the calling thread. * We'll render into the drawBuffer and read pixels from the @@ -1372,25 +1394,24 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer, ASSERT(drawBuffer->Height > 0); #endif - if (newCtx->FirstTimeCurrent) { - /* set initial viewport and scissor size now */ - _mesa_set_viewport(newCtx, 0, 0, - drawBuffer->Width, drawBuffer->Height); - _mesa_set_scissor(newCtx, 0, 0, - drawBuffer->Width, drawBuffer->Height ); - check_context_limits(newCtx); + if (drawBuffer) { + _mesa_check_init_viewport(newCtx, + drawBuffer->Width, drawBuffer->Height); } } - /* We can use this to help debug user's problems. Tell them to set - * the MESA_INFO env variable before running their app. Then the - * first time each context is made current we'll print some useful - * information. - */ if (newCtx->FirstTimeCurrent) { + check_context_limits(newCtx); + + /* We can use this to help debug user's problems. Tell them to set + * the MESA_INFO env variable before running their app. Then the + * first time each context is made current we'll print some useful + * information. + */ if (_mesa_getenv("MESA_INFO")) { _mesa_print_info(); } + newCtx->FirstTimeCurrent = GL_FALSE; } } diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h index 6b3e1b2b97..0531ae8ee8 100644 --- a/src/mesa/main/context.h +++ b/src/mesa/main/context.h @@ -130,6 +130,9 @@ extern void _mesa_copy_context(const GLcontext *src, GLcontext *dst, GLuint mask); +extern void +_mesa_check_init_viewport(GLcontext *ctx, GLuint width, GLuint height); + extern GLboolean _mesa_make_current( GLcontext *ctx, GLframebuffer *drawBuffer, GLframebuffer *readBuffer ); diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index d3c1717a50..49f202daa1 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -352,6 +352,9 @@ typedef enum OPCODE_EVAL_P1, OPCODE_EVAL_P2, + /* GL_EXT_provoking_vertex */ + OPCODE_PROVOKING_VERTEX, + /* The following three are meta instructions */ OPCODE_ERROR, /* raise compiled-in error */ OPCODE_CONTINUE, @@ -957,6 +960,20 @@ save_BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) } } +static void invalidate_saved_current_state( GLcontext *ctx ) +{ + GLint i; + + for (i = 0; i < VERT_ATTRIB_MAX; i++) + ctx->ListState.ActiveAttribSize[i] = 0; + + for (i = 0; i < MAT_ATTRIB_MAX; i++) + ctx->ListState.ActiveMaterialSize[i] = 0; + + memset(&ctx->ListState.Current, 0, sizeof ctx->ListState.Current); + + ctx->Driver.CurrentSavePrimitive = PRIM_UNKNOWN; +} void GLAPIENTRY _mesa_save_CallList(GLuint list) @@ -970,9 +987,10 @@ _mesa_save_CallList(GLuint list) n[1].ui = list; } - /* After this, we don't know what begin/end state we're in: + /* After this, we don't know what state we're in. Invalidate all + * cached information previously gathered: */ - ctx->Driver.CurrentSavePrimitive = PRIM_UNKNOWN; + invalidate_saved_current_state( ctx ); if (ctx->ExecuteFlag) { _mesa_CallList(list); @@ -1015,9 +1033,10 @@ _mesa_save_CallLists(GLsizei n, GLenum type, const GLvoid * lists) } } - /* After this, we don't know what begin/end state we're in: + /* After this, we don't know what state we're in. Invalidate all + * cached information previously gathered: */ - ctx->Driver.CurrentSavePrimitive = PRIM_UNKNOWN; + invalidate_saved_current_state( ctx ); if (ctx->ExecuteFlag) { CALL_CallLists(ctx->Exec, (n, type, lists)); @@ -3177,14 +3196,26 @@ save_ShadeModel(GLenum mode) { GET_CURRENT_CONTEXT(ctx); Node *n; - ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + ASSERT_OUTSIDE_SAVE_BEGIN_END(ctx); + + if (ctx->ExecuteFlag) { + CALL_ShadeModel(ctx->Exec, (mode)); + } + + if (ctx->ListState.Current.ShadeModel == mode) + return; + + SAVE_FLUSH_VERTICES(ctx); + + /* Only save the value if we know the statechange will take effect: + */ + if (ctx->Driver.CurrentSavePrimitive == PRIM_OUTSIDE_BEGIN_END) + ctx->ListState.Current.ShadeModel = mode; + n = ALLOC_INSTRUCTION(ctx, OPCODE_SHADE_MODEL, 1); if (n) { n[1].e = mode; } - if (ctx->ExecuteFlag) { - CALL_ShadeModel(ctx->Exec, (mode)); - } } @@ -5146,14 +5177,21 @@ save_EdgeFlag(GLboolean x) save_Attr1fNV(VERT_ATTRIB_EDGEFLAG, x ? (GLfloat)1.0 : (GLfloat)0.0); } +static INLINE GLboolean compare4fv( const GLfloat *a, + const GLfloat *b, + GLuint count ) +{ + return memcmp( a, b, count * sizeof(GLfloat) ) == 0; +} + + static void GLAPIENTRY save_Materialfv(GLenum face, GLenum pname, const GLfloat * param) { GET_CURRENT_CONTEXT(ctx); Node *n; int args, i; - - SAVE_FLUSH_VERTICES(ctx); + GLuint bitmask; switch (face) { case GL_BACK: @@ -5183,26 +5221,43 @@ save_Materialfv(GLenum face, GLenum pname, const GLfloat * param) _mesa_compile_error(ctx, GL_INVALID_ENUM, "material(pname)"); return; } - - n = ALLOC_INSTRUCTION(ctx, OPCODE_MATERIAL, 6); - if (n) { - n[1].e = face; - n[2].e = pname; - for (i = 0; i < args; i++) - n[3 + i].f = param[i]; + + if (ctx->ExecuteFlag) { + CALL_Materialfv(ctx->Exec, (face, pname, param)); } - { - GLuint bitmask = _mesa_material_bitmask(ctx, face, pname, ~0, NULL); - for (i = 0; i < MAT_ATTRIB_MAX; i++) - if (bitmask & (1 << i)) { + bitmask = _mesa_material_bitmask(ctx, face, pname, ~0, NULL); + + /* Try to eliminate redundant statechanges. Because it is legal to + * call glMaterial even inside begin/end calls, don't need to worry + * about ctx->Driver.CurrentSavePrimitive here. + */ + for (i = 0; i < MAT_ATTRIB_MAX; i++) { + if (bitmask & (1 << i)) { + if (ctx->ListState.ActiveMaterialSize[i] == args && + compare4fv(ctx->ListState.CurrentMaterial[i], param, args)) { + bitmask &= ~(1 << i); + } + else { ctx->ListState.ActiveMaterialSize[i] = args; COPY_SZ_4V(ctx->ListState.CurrentMaterial[i], args, param); } + } } - if (ctx->ExecuteFlag) { - CALL_Materialfv(ctx->Exec, (face, pname, param)); + /* If this call has effect, return early: + */ + if (bitmask == 0) + return; + + SAVE_FLUSH_VERTICES(ctx); + + n = ALLOC_INSTRUCTION(ctx, OPCODE_MATERIAL, 6); + if (n) { + n[1].e = face; + n[2].e = pname; + for (i = 0; i < args; i++) + n[3 + i].f = param[i]; } } @@ -5705,6 +5760,25 @@ save_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, #endif +/** GL_EXT_provoking_vertex */ +static void GLAPIENTRY +save_ProvokingVertexEXT(GLenum mode) +{ + GET_CURRENT_CONTEXT(ctx); + Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = ALLOC_INSTRUCTION(ctx, OPCODE_PROVOKING_VERTEX, 1); + if (n) { + n[1].e = mode; + } + if (ctx->ExecuteFlag) { + /*CALL_ProvokingVertexEXT(ctx->Exec, (mode));*/ + _mesa_ProvokingVertexEXT(mode); + } +} + + + /** * Save an error-generating command into display list. * @@ -6269,6 +6343,9 @@ execute_list(GLcontext *ctx, GLuint list) case OPCODE_SHADE_MODEL: CALL_ShadeModel(ctx->Exec, (n[1].e)); break; + case OPCODE_PROVOKING_VERTEX: + CALL_ProvokingVertexEXT(ctx->Exec, (n[1].e)); + break; case OPCODE_STENCIL_FUNC: CALL_StencilFunc(ctx->Exec, (n[1].e, n[2].i, n[3].ui)); break; @@ -6771,7 +6848,6 @@ void GLAPIENTRY _mesa_NewList(GLuint name, GLenum mode) { GET_CURRENT_CONTEXT(ctx); - GLint i; FLUSH_CURRENT(ctx, 0); /* must be called before assert */ ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -6799,20 +6875,15 @@ _mesa_NewList(GLuint name, GLenum mode) ctx->CompileFlag = GL_TRUE; ctx->ExecuteFlag = (mode == GL_COMPILE_AND_EXECUTE); + /* Reset acumulated list state: + */ + invalidate_saved_current_state( ctx ); + /* Allocate new display list */ ctx->ListState.CurrentList = make_list(name, BLOCK_SIZE); ctx->ListState.CurrentBlock = ctx->ListState.CurrentList->Head; ctx->ListState.CurrentPos = 0; - /* Reset acumulated list state: - */ - for (i = 0; i < Elements(ctx->ListState.ActiveAttribSize); i++) - ctx->ListState.ActiveAttribSize[i] = 0; - - for (i = 0; i < Elements(ctx->ListState.ActiveMaterialSize); i++) - ctx->ListState.ActiveMaterialSize[i] = 0; - - ctx->Driver.CurrentSavePrimitive = PRIM_UNKNOWN; ctx->Driver.NewList(ctx, name, mode); ctx->CurrentDispatch = ctx->Save; @@ -8239,8 +8310,17 @@ _mesa_init_dlist_table(struct _glapi_table *table) SET_ProgramLocalParameters4fvEXT(table, save_ProgramLocalParameters4fvEXT); #endif + /* ARB 50. GL_ARB_map_buffer_range */ +#if FEATURE_ARB_map_buffer_range + SET_MapBufferRange(table, _mesa_MapBufferRange); /* no dlist save */ + SET_FlushMappedBufferRange(table, _mesa_FlushMappedBufferRange); /* no dl */ +#endif + /* ARB 59. GL_ARB_copy_buffer */ SET_CopyBufferSubData(table, _mesa_CopyBufferSubData); /* no dlist save */ + + /* 364. GL_EXT_provoking_vertex */ + SET_ProvokingVertexEXT(table, save_ProvokingVertexEXT); } @@ -8477,6 +8557,11 @@ print_list(GLcontext *ctx, GLuint list) _mesa_printf("EVAL_P2 %d %d\n", n[1].i, n[2].i); break; + case OPCODE_PROVOKING_VERTEX: + _mesa_printf("ProvokingVertex %s\n", + _mesa_lookup_enum_by_nr(n[1].ui)); + break; + /* * meta opcodes/commands */ diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index 4339e3ba4e..6e2adea636 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -514,6 +514,7 @@ LONGSTRING static const char enum_string_table[] = "GL_FEEDBACK_BUFFER_SIZE\0" "GL_FEEDBACK_BUFFER_TYPE\0" "GL_FILL\0" + "GL_FIRST_VERTEX_CONVENTION_EXT\0" "GL_FLAT\0" "GL_FLOAT\0" "GL_FLOAT_MAT2\0" @@ -696,6 +697,7 @@ LONGSTRING static const char enum_string_table[] = "GL_INVERSE_TRANSPOSE_NV\0" "GL_INVERT\0" "GL_KEEP\0" + "GL_LAST_VERTEX_CONVENTION_EXT\0" "GL_LEFT\0" "GL_LEQUAL\0" "GL_LESS\0" @@ -821,7 +823,13 @@ LONGSTRING static const char enum_string_table[] = "GL_MAP2_VERTEX_ATTRIB8_4_NV\0" "GL_MAP2_VERTEX_ATTRIB9_4_NV\0" "GL_MAP_COLOR\0" + "GL_MAP_FLUSH_EXPLICIT_BIT\0" + "GL_MAP_INVALIDATE_BUFFER_BIT\0" + "GL_MAP_INVALIDATE_RANGE_BIT\0" + "GL_MAP_READ_BIT\0" "GL_MAP_STENCIL\0" + "GL_MAP_UNSYNCHRONIZED_BIT\0" + "GL_MAP_WRITE_BIT\0" "GL_MATRIX0_ARB\0" "GL_MATRIX0_NV\0" "GL_MATRIX10_ARB\0" @@ -1273,6 +1281,7 @@ LONGSTRING static const char enum_string_table[] = "GL_PROJECTION\0" "GL_PROJECTION_MATRIX\0" "GL_PROJECTION_STACK_DEPTH\0" + "GL_PROVOKING_VERTEX_EXT\0" "GL_PROXY_COLOR_TABLE\0" "GL_PROXY_HISTOGRAM\0" "GL_PROXY_HISTOGRAM_EXT\0" @@ -1293,6 +1302,7 @@ LONGSTRING static const char enum_string_table[] = "GL_Q\0" "GL_QUADRATIC_ATTENUATION\0" "GL_QUADS\0" + "GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT\0" "GL_QUAD_MESH_SUN\0" "GL_QUAD_STRIP\0" "GL_QUERY_COUNTER_BITS\0" @@ -1789,6 +1799,7 @@ LONGSTRING static const char enum_string_table[] = "GL_VENDOR\0" "GL_VERSION\0" "GL_VERTEX_ARRAY\0" + "GL_VERTEX_ARRAY_BINDING\0" "GL_VERTEX_ARRAY_BINDING_APPLE\0" "GL_VERTEX_ARRAY_BUFFER_BINDING\0" "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB\0" @@ -1860,7 +1871,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[1822] = +static const enum_elt all_enums[1833] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -2340,1429 +2351,1440 @@ static const enum_elt all_enums[1822] = { 9547, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ { 9571, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ { 9595, 0x00001B02 }, /* GL_FILL */ - { 9603, 0x00001D00 }, /* GL_FLAT */ - { 9611, 0x00001406 }, /* GL_FLOAT */ - { 9620, 0x00008B5A }, /* GL_FLOAT_MAT2 */ - { 9634, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ - { 9652, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ - { 9668, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ - { 9684, 0x00008B5B }, /* GL_FLOAT_MAT3 */ - { 9698, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ - { 9716, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ - { 9732, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ - { 9748, 0x00008B5C }, /* GL_FLOAT_MAT4 */ - { 9762, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ - { 9780, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ - { 9796, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ - { 9812, 0x00008B50 }, /* GL_FLOAT_VEC2 */ - { 9826, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ - { 9844, 0x00008B51 }, /* GL_FLOAT_VEC3 */ - { 9858, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ - { 9876, 0x00008B52 }, /* GL_FLOAT_VEC4 */ - { 9890, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ - { 9908, 0x00000B60 }, /* GL_FOG */ - { 9915, 0x00000080 }, /* GL_FOG_BIT */ - { 9926, 0x00000B66 }, /* GL_FOG_COLOR */ - { 9939, 0x00008451 }, /* GL_FOG_COORD */ - { 9952, 0x00008451 }, /* GL_FOG_COORDINATE */ - { 9970, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ - { 9994, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - { 10033, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ - { 10076, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - { 10108, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - { 10139, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - { 10168, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ - { 10193, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ - { 10212, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ - { 10246, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ - { 10273, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ - { 10299, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ - { 10323, 0x00008450 }, /* GL_FOG_COORD_SRC */ - { 10340, 0x00000B62 }, /* GL_FOG_DENSITY */ - { 10355, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ - { 10379, 0x00000B64 }, /* GL_FOG_END */ - { 10390, 0x00000C54 }, /* GL_FOG_HINT */ - { 10402, 0x00000B61 }, /* GL_FOG_INDEX */ - { 10415, 0x00000B65 }, /* GL_FOG_MODE */ - { 10427, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ - { 10446, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ - { 10471, 0x00000B63 }, /* GL_FOG_START */ - { 10484, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ - { 10502, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ - { 10526, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ - { 10545, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ - { 10568, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - { 10603, 0x00008D40 }, /* GL_FRAMEBUFFER */ - { 10618, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - { 10655, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - { 10691, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - { 10732, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - { 10773, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - { 10810, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - { 10847, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - { 10885, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ - { 10927, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - { 10965, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ - { 11007, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - { 11042, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - { 11081, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ - { 11130, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - { 11178, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ - { 11230, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - { 11270, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ - { 11314, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - { 11354, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ - { 11398, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ - { 11425, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ - { 11449, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ - { 11477, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ - { 11500, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ - { 11519, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - { 11556, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ - { 11597, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - { 11638, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - { 11680, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - { 11731, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - { 11769, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - { 11814, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ - { 11863, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - { 11901, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - { 11943, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - { 11975, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ - { 12000, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ - { 12027, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ - { 12058, 0x00000404 }, /* GL_FRONT */ - { 12067, 0x00000408 }, /* GL_FRONT_AND_BACK */ - { 12085, 0x00000B46 }, /* GL_FRONT_FACE */ - { 12099, 0x00000400 }, /* GL_FRONT_LEFT */ - { 12113, 0x00000401 }, /* GL_FRONT_RIGHT */ - { 12128, 0x00008006 }, /* GL_FUNC_ADD */ - { 12140, 0x00008006 }, /* GL_FUNC_ADD_EXT */ - { 12156, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ - { 12181, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ - { 12210, 0x0000800A }, /* GL_FUNC_SUBTRACT */ - { 12227, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ - { 12248, 0x00008191 }, /* GL_GENERATE_MIPMAP */ - { 12267, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ - { 12291, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ - { 12320, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ - { 12344, 0x00000206 }, /* GL_GEQUAL */ - { 12354, 0x00000204 }, /* GL_GREATER */ - { 12365, 0x00001904 }, /* GL_GREEN */ - { 12374, 0x00000D19 }, /* GL_GREEN_BIAS */ - { 12388, 0x00000D53 }, /* GL_GREEN_BITS */ - { 12402, 0x00000D18 }, /* GL_GREEN_SCALE */ - { 12417, 0x00008000 }, /* GL_HINT_BIT */ - { 12429, 0x00008024 }, /* GL_HISTOGRAM */ - { 12442, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ - { 12466, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ - { 12494, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ - { 12517, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ - { 12544, 0x00008024 }, /* GL_HISTOGRAM_EXT */ - { 12561, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ - { 12581, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ - { 12605, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ - { 12629, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ - { 12657, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - { 12685, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ - { 12717, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ - { 12739, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ - { 12765, 0x0000802D }, /* GL_HISTOGRAM_SINK */ - { 12783, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ - { 12805, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ - { 12824, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ - { 12847, 0x0000862A }, /* GL_IDENTITY_NV */ - { 12862, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ - { 12882, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - { 12922, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - { 12960, 0x00001E02 }, /* GL_INCR */ - { 12968, 0x00008507 }, /* GL_INCR_WRAP */ - { 12981, 0x00008507 }, /* GL_INCR_WRAP_EXT */ - { 12998, 0x00008222 }, /* GL_INDEX */ - { 13007, 0x00008077 }, /* GL_INDEX_ARRAY */ - { 13022, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - { 13052, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ - { 13086, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ - { 13109, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ - { 13131, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ - { 13151, 0x00000D51 }, /* GL_INDEX_BITS */ - { 13165, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ - { 13186, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ - { 13204, 0x00000C30 }, /* GL_INDEX_MODE */ - { 13218, 0x00000D13 }, /* GL_INDEX_OFFSET */ - { 13234, 0x00000D12 }, /* GL_INDEX_SHIFT */ - { 13249, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ - { 13268, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ - { 13287, 0x00001404 }, /* GL_INT */ - { 13294, 0x00008049 }, /* GL_INTENSITY */ - { 13307, 0x0000804C }, /* GL_INTENSITY12 */ - { 13322, 0x0000804C }, /* GL_INTENSITY12_EXT */ - { 13341, 0x0000804D }, /* GL_INTENSITY16 */ - { 13356, 0x0000804D }, /* GL_INTENSITY16_EXT */ - { 13375, 0x0000804A }, /* GL_INTENSITY4 */ - { 13389, 0x0000804A }, /* GL_INTENSITY4_EXT */ - { 13407, 0x0000804B }, /* GL_INTENSITY8 */ - { 13421, 0x0000804B }, /* GL_INTENSITY8_EXT */ - { 13439, 0x00008049 }, /* GL_INTENSITY_EXT */ - { 13456, 0x00008575 }, /* GL_INTERPOLATE */ - { 13471, 0x00008575 }, /* GL_INTERPOLATE_ARB */ - { 13490, 0x00008575 }, /* GL_INTERPOLATE_EXT */ - { 13509, 0x00008B53 }, /* GL_INT_VEC2 */ - { 13521, 0x00008B53 }, /* GL_INT_VEC2_ARB */ - { 13537, 0x00008B54 }, /* GL_INT_VEC3 */ - { 13549, 0x00008B54 }, /* GL_INT_VEC3_ARB */ - { 13565, 0x00008B55 }, /* GL_INT_VEC4 */ - { 13577, 0x00008B55 }, /* GL_INT_VEC4_ARB */ - { 13593, 0x00000500 }, /* GL_INVALID_ENUM */ - { 13609, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ - { 13642, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ - { 13679, 0x00000502 }, /* GL_INVALID_OPERATION */ - { 13700, 0x00000501 }, /* GL_INVALID_VALUE */ - { 13717, 0x0000862B }, /* GL_INVERSE_NV */ - { 13731, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ - { 13755, 0x0000150A }, /* GL_INVERT */ - { 13765, 0x00001E00 }, /* GL_KEEP */ - { 13773, 0x00000406 }, /* GL_LEFT */ - { 13781, 0x00000203 }, /* GL_LEQUAL */ - { 13791, 0x00000201 }, /* GL_LESS */ - { 13799, 0x00004000 }, /* GL_LIGHT0 */ - { 13809, 0x00004001 }, /* GL_LIGHT1 */ - { 13819, 0x00004002 }, /* GL_LIGHT2 */ - { 13829, 0x00004003 }, /* GL_LIGHT3 */ - { 13839, 0x00004004 }, /* GL_LIGHT4 */ - { 13849, 0x00004005 }, /* GL_LIGHT5 */ - { 13859, 0x00004006 }, /* GL_LIGHT6 */ - { 13869, 0x00004007 }, /* GL_LIGHT7 */ - { 13879, 0x00000B50 }, /* GL_LIGHTING */ - { 13891, 0x00000040 }, /* GL_LIGHTING_BIT */ - { 13907, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ - { 13930, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - { 13959, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ - { 13992, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - { 14020, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ - { 14044, 0x00001B01 }, /* GL_LINE */ - { 14052, 0x00002601 }, /* GL_LINEAR */ - { 14062, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ - { 14084, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - { 14114, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - { 14145, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ - { 14169, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ - { 14194, 0x00000001 }, /* GL_LINES */ - { 14203, 0x00000004 }, /* GL_LINE_BIT */ - { 14215, 0x00000002 }, /* GL_LINE_LOOP */ - { 14228, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ - { 14248, 0x00000B20 }, /* GL_LINE_SMOOTH */ - { 14263, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ - { 14283, 0x00000B24 }, /* GL_LINE_STIPPLE */ - { 14299, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ - { 14323, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ - { 14346, 0x00000003 }, /* GL_LINE_STRIP */ - { 14360, 0x00000702 }, /* GL_LINE_TOKEN */ - { 14374, 0x00000B21 }, /* GL_LINE_WIDTH */ - { 14388, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ - { 14414, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ - { 14434, 0x00008B82 }, /* GL_LINK_STATUS */ - { 14449, 0x00000B32 }, /* GL_LIST_BASE */ - { 14462, 0x00020000 }, /* GL_LIST_BIT */ - { 14474, 0x00000B33 }, /* GL_LIST_INDEX */ - { 14488, 0x00000B30 }, /* GL_LIST_MODE */ - { 14501, 0x00000101 }, /* GL_LOAD */ - { 14509, 0x00000BF1 }, /* GL_LOGIC_OP */ - { 14521, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ - { 14538, 0x00008CA1 }, /* GL_LOWER_LEFT */ - { 14552, 0x00001909 }, /* GL_LUMINANCE */ - { 14565, 0x00008041 }, /* GL_LUMINANCE12 */ - { 14580, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ - { 14603, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ - { 14630, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ - { 14652, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ - { 14678, 0x00008041 }, /* GL_LUMINANCE12_EXT */ - { 14697, 0x00008042 }, /* GL_LUMINANCE16 */ - { 14712, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ - { 14735, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ - { 14762, 0x00008042 }, /* GL_LUMINANCE16_EXT */ - { 14781, 0x0000803F }, /* GL_LUMINANCE4 */ - { 14795, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ - { 14816, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ - { 14841, 0x0000803F }, /* GL_LUMINANCE4_EXT */ - { 14859, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ - { 14880, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ - { 14905, 0x00008040 }, /* GL_LUMINANCE8 */ - { 14919, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ - { 14940, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ - { 14965, 0x00008040 }, /* GL_LUMINANCE8_EXT */ - { 14983, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ - { 15002, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ - { 15018, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ - { 15038, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ - { 15060, 0x00000D91 }, /* GL_MAP1_INDEX */ - { 15074, 0x00000D92 }, /* GL_MAP1_NORMAL */ - { 15089, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ - { 15113, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ - { 15137, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ - { 15161, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ - { 15185, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ - { 15202, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ - { 15219, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - { 15247, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - { 15276, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - { 15305, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - { 15334, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - { 15363, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - { 15392, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - { 15421, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - { 15449, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - { 15477, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - { 15505, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - { 15533, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - { 15561, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - { 15589, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - { 15617, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - { 15645, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - { 15673, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ - { 15689, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ - { 15709, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ - { 15731, 0x00000DB1 }, /* GL_MAP2_INDEX */ - { 15745, 0x00000DB2 }, /* GL_MAP2_NORMAL */ - { 15760, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ - { 15784, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ - { 15808, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ - { 15832, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ - { 15856, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ - { 15873, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ - { 15890, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - { 15918, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - { 15947, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - { 15976, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - { 16005, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - { 16034, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - { 16063, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - { 16092, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - { 16120, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - { 16148, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - { 16176, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - { 16204, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - { 16232, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - { 16260, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ - { 16288, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - { 16316, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - { 16344, 0x00000D10 }, /* GL_MAP_COLOR */ - { 16357, 0x00000D11 }, /* GL_MAP_STENCIL */ - { 16372, 0x000088C0 }, /* GL_MATRIX0_ARB */ - { 16387, 0x00008630 }, /* GL_MATRIX0_NV */ - { 16401, 0x000088CA }, /* GL_MATRIX10_ARB */ - { 16417, 0x000088CB }, /* GL_MATRIX11_ARB */ - { 16433, 0x000088CC }, /* GL_MATRIX12_ARB */ - { 16449, 0x000088CD }, /* GL_MATRIX13_ARB */ - { 16465, 0x000088CE }, /* GL_MATRIX14_ARB */ - { 16481, 0x000088CF }, /* GL_MATRIX15_ARB */ - { 16497, 0x000088D0 }, /* GL_MATRIX16_ARB */ - { 16513, 0x000088D1 }, /* GL_MATRIX17_ARB */ - { 16529, 0x000088D2 }, /* GL_MATRIX18_ARB */ - { 16545, 0x000088D3 }, /* GL_MATRIX19_ARB */ - { 16561, 0x000088C1 }, /* GL_MATRIX1_ARB */ - { 16576, 0x00008631 }, /* GL_MATRIX1_NV */ - { 16590, 0x000088D4 }, /* GL_MATRIX20_ARB */ - { 16606, 0x000088D5 }, /* GL_MATRIX21_ARB */ - { 16622, 0x000088D6 }, /* GL_MATRIX22_ARB */ - { 16638, 0x000088D7 }, /* GL_MATRIX23_ARB */ - { 16654, 0x000088D8 }, /* GL_MATRIX24_ARB */ - { 16670, 0x000088D9 }, /* GL_MATRIX25_ARB */ - { 16686, 0x000088DA }, /* GL_MATRIX26_ARB */ - { 16702, 0x000088DB }, /* GL_MATRIX27_ARB */ - { 16718, 0x000088DC }, /* GL_MATRIX28_ARB */ - { 16734, 0x000088DD }, /* GL_MATRIX29_ARB */ - { 16750, 0x000088C2 }, /* GL_MATRIX2_ARB */ - { 16765, 0x00008632 }, /* GL_MATRIX2_NV */ - { 16779, 0x000088DE }, /* GL_MATRIX30_ARB */ - { 16795, 0x000088DF }, /* GL_MATRIX31_ARB */ - { 16811, 0x000088C3 }, /* GL_MATRIX3_ARB */ - { 16826, 0x00008633 }, /* GL_MATRIX3_NV */ - { 16840, 0x000088C4 }, /* GL_MATRIX4_ARB */ - { 16855, 0x00008634 }, /* GL_MATRIX4_NV */ - { 16869, 0x000088C5 }, /* GL_MATRIX5_ARB */ - { 16884, 0x00008635 }, /* GL_MATRIX5_NV */ - { 16898, 0x000088C6 }, /* GL_MATRIX6_ARB */ - { 16913, 0x00008636 }, /* GL_MATRIX6_NV */ - { 16927, 0x000088C7 }, /* GL_MATRIX7_ARB */ - { 16942, 0x00008637 }, /* GL_MATRIX7_NV */ - { 16956, 0x000088C8 }, /* GL_MATRIX8_ARB */ - { 16971, 0x000088C9 }, /* GL_MATRIX9_ARB */ - { 16986, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ - { 17012, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - { 17046, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - { 17077, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - { 17110, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - { 17141, 0x00000BA0 }, /* GL_MATRIX_MODE */ - { 17156, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ - { 17178, 0x00008008 }, /* GL_MAX */ - { 17185, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ - { 17208, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - { 17240, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ - { 17266, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - { 17299, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - { 17325, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 17359, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ - { 17378, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - { 17407, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - { 17439, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 17475, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - { 17511, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ - { 17551, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ - { 17577, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ - { 17607, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ - { 17632, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ - { 17661, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - { 17690, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ - { 17723, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ - { 17743, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ - { 17767, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ - { 17791, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ - { 17815, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ - { 17840, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ - { 17858, 0x00008008 }, /* GL_MAX_EXT */ - { 17869, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - { 17904, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ - { 17943, 0x00000D31 }, /* GL_MAX_LIGHTS */ - { 17957, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ - { 17977, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - { 18015, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - { 18044, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ - { 18068, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ - { 18096, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ - { 18119, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 18156, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 18192, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - { 18219, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - { 18248, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - { 18282, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - { 18318, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - { 18345, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - { 18377, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - { 18413, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - { 18442, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - { 18471, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ - { 18499, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - { 18537, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 18581, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 18624, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 18658, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 18697, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 18734, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 18772, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 18815, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 18858, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - { 18888, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - { 18919, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 18955, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 18991, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ - { 19021, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - { 19055, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ - { 19088, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - { 19117, 0x00008D57 }, /* GL_MAX_SAMPLES */ - { 19132, 0x00008504 }, /* GL_MAX_SHININESS_NV */ - { 19152, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ - { 19176, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 19198, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 19224, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 19251, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 19282, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 19306, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 19340, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 19360, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 19387, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 19408, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 19433, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 19458, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 19493, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 19515, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 19541, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 19563, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 19589, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 19623, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 19661, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 19694, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 19731, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 19755, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 19776, 0x00008007 }, /* GL_MIN */ - { 19783, 0x0000802E }, /* GL_MINMAX */ - { 19793, 0x0000802E }, /* GL_MINMAX_EXT */ - { 19807, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 19824, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 19845, 0x00008030 }, /* GL_MINMAX_SINK */ - { 19860, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 19879, 0x00008007 }, /* GL_MIN_EXT */ - { 19890, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 19909, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 19932, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 19955, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 19975, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 19995, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 20025, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 20053, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 20081, 0x00001700 }, /* GL_MODELVIEW */ - { 20094, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 20112, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 20131, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 20150, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 20169, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 20188, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 20207, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 20226, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 20245, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 20264, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 20283, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 20302, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 20320, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 20339, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 20358, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 20377, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 20396, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 20415, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 20434, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 20453, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 20472, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 20491, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 20510, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 20528, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 20547, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 20566, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 20584, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 20602, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 20620, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 20638, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 20656, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 20674, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 20692, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 20712, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 20739, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 20764, 0x00002100 }, /* GL_MODULATE */ - { 20776, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 20796, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 20823, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 20848, 0x00000103 }, /* GL_MULT */ - { 20856, 0x0000809D }, /* GL_MULTISAMPLE */ - { 20871, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 20891, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 20910, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 20929, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 20953, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 20976, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 21006, 0x00002A25 }, /* GL_N3F_V3F */ - { 21017, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 21037, 0x0000150E }, /* GL_NAND */ - { 21045, 0x00002600 }, /* GL_NEAREST */ - { 21056, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 21087, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 21119, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 21144, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 21170, 0x00000200 }, /* GL_NEVER */ - { 21179, 0x00001102 }, /* GL_NICEST */ - { 21189, 0x00000000 }, /* GL_NONE */ - { 21197, 0x00001505 }, /* GL_NOOP */ - { 21205, 0x00001508 }, /* GL_NOR */ - { 21212, 0x00000BA1 }, /* GL_NORMALIZE */ - { 21225, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 21241, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 21272, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 21307, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 21331, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 21354, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 21375, 0x00008511 }, /* GL_NORMAL_MAP */ - { 21389, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 21407, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 21424, 0x00000205 }, /* GL_NOTEQUAL */ - { 21436, 0x00000000 }, /* GL_NO_ERROR */ - { 21448, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 21482, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 21520, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 21552, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 21594, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 21624, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 21664, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 21695, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 21724, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 21752, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 21782, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 21799, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 21825, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 21841, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 21876, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 21898, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 21917, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 21947, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 21968, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 21996, 0x00000001 }, /* GL_ONE */ - { 22003, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 22031, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 22063, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 22091, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 22123, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 22146, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 22169, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 22192, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 22215, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 22233, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 22255, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 22277, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 22293, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 22313, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 22333, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 22351, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 22373, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 22395, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 22411, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 22431, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 22451, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 22469, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 22491, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 22513, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 22529, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 22549, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 22569, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 22590, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 22609, 0x00001507 }, /* GL_OR */ - { 22615, 0x00000A01 }, /* GL_ORDER */ - { 22624, 0x0000150D }, /* GL_OR_INVERTED */ - { 22639, 0x0000150B }, /* GL_OR_REVERSE */ - { 22653, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 22670, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 22688, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 22709, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 22729, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 22747, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 22766, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 22786, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 22806, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 22824, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 22843, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 22868, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 22892, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 22913, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 22935, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 22957, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 22982, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 23006, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 23027, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 23049, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 23071, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 23093, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 23124, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 23144, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 23169, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 23189, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 23214, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 23234, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 23259, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 23279, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 23304, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 23324, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 23349, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 23369, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 23394, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 23414, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 23439, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 23459, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 23484, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 23504, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 23529, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 23549, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 23574, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 23592, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 23613, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 23642, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 23675, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 23700, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 23723, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 23754, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 23789, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 23816, 0x00001B00 }, /* GL_POINT */ - { 23825, 0x00000000 }, /* GL_POINTS */ - { 23835, 0x00000002 }, /* GL_POINT_BIT */ - { 23848, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 23878, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 23912, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 23946, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 23981, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 24010, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 24043, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 24076, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 24110, 0x00000B11 }, /* GL_POINT_SIZE */ - { 24124, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 24150, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 24168, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 24190, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 24212, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 24235, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 24253, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 24275, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 24297, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 24320, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 24340, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 24356, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 24377, 0x00008861 }, /* GL_POINT_SPRITE */ - { 24393, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 24413, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 24442, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 24461, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 24487, 0x00000701 }, /* GL_POINT_TOKEN */ - { 24502, 0x00000009 }, /* GL_POLYGON */ - { 24513, 0x00000008 }, /* GL_POLYGON_BIT */ - { 24528, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 24544, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 24567, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 24592, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 24615, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 24638, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 24662, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 24686, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 24704, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 24727, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 24746, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 24769, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 24786, 0x00001203 }, /* GL_POSITION */ - { 24798, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 24830, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 24866, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 24899, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 24936, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 24967, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 25002, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 25034, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 25070, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 25103, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 25135, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 25171, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 25204, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 25241, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 25271, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 25305, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 25336, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 25371, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 25402, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 25437, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 25469, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 25505, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 25535, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 25569, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 25600, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 25635, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 25667, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 25698, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 25733, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 25765, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 25801, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 25830, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 25863, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 25893, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 25927, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 25966, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 25999, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 26039, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 26073, 0x00008578 }, /* GL_PREVIOUS */ - { 26085, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 26101, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 26117, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 26134, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 26155, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 26176, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 26209, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 26241, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 26264, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 26287, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 26317, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 26346, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 26374, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 26396, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 26424, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 26452, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 26474, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 26495, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 26535, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 26574, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 26604, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 26639, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 26672, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 26706, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 26745, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 26784, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 26806, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 26832, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 26856, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 26879, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 26901, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 26922, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 26943, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 26970, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 27002, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 27034, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 27069, 0x00001701 }, /* GL_PROJECTION */ - { 27083, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 27104, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 27130, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 27151, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 27170, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 27193, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 27232, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 27270, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 27290, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 27320, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 27344, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 27364, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 27394, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 27418, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 27438, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 27471, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 27497, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 27527, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 27558, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 27588, 0x00002003 }, /* GL_Q */ - { 27593, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 27618, 0x00000007 }, /* GL_QUADS */ - { 27627, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 27644, 0x00000008 }, /* GL_QUAD_STRIP */ - { 27658, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 27680, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 27706, 0x00008866 }, /* GL_QUERY_RESULT */ - { 27722, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 27742, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 27768, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 27798, 0x00002002 }, /* GL_R */ - { 27803, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 27815, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 27848, 0x00000C02 }, /* GL_READ_BUFFER */ - { 27863, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 27883, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 27915, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 27939, 0x000088B8 }, /* GL_READ_ONLY */ - { 27952, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 27969, 0x000088BA }, /* GL_READ_WRITE */ - { 27983, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 28001, 0x00001903 }, /* GL_RED */ - { 28008, 0x00008016 }, /* GL_REDUCE */ - { 28018, 0x00008016 }, /* GL_REDUCE_EXT */ - { 28032, 0x00000D15 }, /* GL_RED_BIAS */ - { 28044, 0x00000D52 }, /* GL_RED_BITS */ - { 28056, 0x00000D14 }, /* GL_RED_SCALE */ - { 28069, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 28087, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 28109, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 28130, 0x00001C00 }, /* GL_RENDER */ - { 28140, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 28156, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 28183, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 28211, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 28237, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 28264, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 28284, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 28311, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 28334, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 28361, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 28393, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 28429, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 28454, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 28478, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 28507, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 28529, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 28555, 0x00001F01 }, /* GL_RENDERER */ - { 28567, 0x00000C40 }, /* GL_RENDER_MODE */ - { 28582, 0x00002901 }, /* GL_REPEAT */ - { 28592, 0x00001E01 }, /* GL_REPLACE */ - { 28603, 0x00008062 }, /* GL_REPLACE_EXT */ - { 28618, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 28641, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 28659, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 28681, 0x00000102 }, /* GL_RETURN */ - { 28691, 0x00001907 }, /* GL_RGB */ - { 28698, 0x00008052 }, /* GL_RGB10 */ - { 28707, 0x00008059 }, /* GL_RGB10_A2 */ - { 28719, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 28735, 0x00008052 }, /* GL_RGB10_EXT */ - { 28748, 0x00008053 }, /* GL_RGB12 */ - { 28757, 0x00008053 }, /* GL_RGB12_EXT */ - { 28770, 0x00008054 }, /* GL_RGB16 */ - { 28779, 0x00008054 }, /* GL_RGB16_EXT */ - { 28792, 0x0000804E }, /* GL_RGB2_EXT */ - { 28804, 0x0000804F }, /* GL_RGB4 */ - { 28812, 0x0000804F }, /* GL_RGB4_EXT */ - { 28824, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 28837, 0x00008050 }, /* GL_RGB5 */ - { 28845, 0x00008057 }, /* GL_RGB5_A1 */ - { 28856, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 28871, 0x00008050 }, /* GL_RGB5_EXT */ - { 28883, 0x00008051 }, /* GL_RGB8 */ - { 28891, 0x00008051 }, /* GL_RGB8_EXT */ - { 28903, 0x00001908 }, /* GL_RGBA */ - { 28911, 0x0000805A }, /* GL_RGBA12 */ - { 28921, 0x0000805A }, /* GL_RGBA12_EXT */ - { 28935, 0x0000805B }, /* GL_RGBA16 */ - { 28945, 0x0000805B }, /* GL_RGBA16_EXT */ - { 28959, 0x00008055 }, /* GL_RGBA2 */ - { 28968, 0x00008055 }, /* GL_RGBA2_EXT */ - { 28981, 0x00008056 }, /* GL_RGBA4 */ - { 28990, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 29009, 0x00008056 }, /* GL_RGBA4_EXT */ - { 29022, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 29036, 0x00008058 }, /* GL_RGBA8 */ - { 29045, 0x00008058 }, /* GL_RGBA8_EXT */ - { 29058, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 29073, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 29091, 0x00000C31 }, /* GL_RGBA_MODE */ - { 29104, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 29117, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 29131, 0x000083A0 }, /* GL_RGB_S3TC */ - { 29143, 0x00008573 }, /* GL_RGB_SCALE */ - { 29156, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 29173, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 29190, 0x00000407 }, /* GL_RIGHT */ - { 29199, 0x00002000 }, /* GL_S */ - { 29204, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 29218, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 29239, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 29253, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 29274, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 29288, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 29304, 0x000080A9 }, /* GL_SAMPLES */ - { 29315, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 29331, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 29346, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 29364, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 29386, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 29414, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 29446, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 29469, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 29496, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 29514, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 29537, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 29559, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 29578, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 29601, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 29627, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 29657, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 29682, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 29711, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 29726, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 29741, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 29757, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 29782, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 29822, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 29866, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 29899, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 29929, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 29961, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 29991, 0x00001C02 }, /* GL_SELECT */ - { 30001, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 30029, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 30054, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 30070, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 30097, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 30128, 0x0000150F }, /* GL_SET */ - { 30135, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 30156, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 30180, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 30195, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 30210, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 30238, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 30261, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 30291, 0x00001601 }, /* GL_SHININESS */ - { 30304, 0x00001402 }, /* GL_SHORT */ - { 30313, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 30334, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 30350, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 30370, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 30389, 0x00008C46 }, /* GL_SLUMINANCE */ - { 30403, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 30418, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 30440, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 30460, 0x00001D01 }, /* GL_SMOOTH */ - { 30470, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 30503, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 30530, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 30563, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 30590, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 30607, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 30628, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 30649, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 30664, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 30683, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 30702, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 30719, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 30740, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 30761, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 30776, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 30795, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 30814, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 30831, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 30852, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 30873, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 30888, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 30907, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 30926, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 30946, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 30964, 0x00001202 }, /* GL_SPECULAR */ - { 30976, 0x00002402 }, /* GL_SPHERE_MAP */ - { 30990, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 31005, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 31023, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 31040, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 31054, 0x00008580 }, /* GL_SRC0_RGB */ - { 31066, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 31080, 0x00008581 }, /* GL_SRC1_RGB */ - { 31092, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 31106, 0x00008582 }, /* GL_SRC2_RGB */ - { 31118, 0x00000302 }, /* GL_SRC_ALPHA */ - { 31131, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 31153, 0x00000300 }, /* GL_SRC_COLOR */ - { 31166, 0x00008C40 }, /* GL_SRGB */ - { 31174, 0x00008C41 }, /* GL_SRGB8 */ - { 31183, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 31199, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 31213, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 31231, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 31250, 0x000088E6 }, /* GL_STATIC_COPY */ - { 31265, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 31284, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 31299, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 31318, 0x000088E5 }, /* GL_STATIC_READ */ - { 31333, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 31352, 0x00001802 }, /* GL_STENCIL */ - { 31363, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 31385, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 31411, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 31432, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 31457, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 31478, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 31503, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 31535, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 31571, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 31603, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 31639, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 31659, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 31686, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 31712, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 31728, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 31750, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 31773, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 31789, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 31805, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 31822, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 31845, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 31867, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 31889, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 31911, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 31932, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 31959, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 31986, 0x00000B97 }, /* GL_STENCIL_REF */ - { 32001, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 32017, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 32046, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 32068, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 32089, 0x00000C33 }, /* GL_STEREO */ - { 32099, 0x000088E2 }, /* GL_STREAM_COPY */ - { 32114, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 32133, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 32148, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 32167, 0x000088E1 }, /* GL_STREAM_READ */ - { 32182, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 32201, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 32218, 0x000084E7 }, /* GL_SUBTRACT */ - { 32230, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 32246, 0x00002001 }, /* GL_T */ - { 32251, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 32266, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 32285, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 32301, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 32316, 0x00002A27 }, /* GL_T2F_V3F */ - { 32327, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 32346, 0x00002A28 }, /* GL_T4F_V4F */ - { 32357, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 32380, 0x00001702 }, /* GL_TEXTURE */ - { 32391, 0x000084C0 }, /* GL_TEXTURE0 */ - { 32403, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 32419, 0x000084C1 }, /* GL_TEXTURE1 */ - { 32431, 0x000084CA }, /* GL_TEXTURE10 */ - { 32444, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 32461, 0x000084CB }, /* GL_TEXTURE11 */ - { 32474, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 32491, 0x000084CC }, /* GL_TEXTURE12 */ - { 32504, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 32521, 0x000084CD }, /* GL_TEXTURE13 */ - { 32534, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 32551, 0x000084CE }, /* GL_TEXTURE14 */ - { 32564, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 32581, 0x000084CF }, /* GL_TEXTURE15 */ - { 32594, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 32611, 0x000084D0 }, /* GL_TEXTURE16 */ - { 32624, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 32641, 0x000084D1 }, /* GL_TEXTURE17 */ - { 32654, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 32671, 0x000084D2 }, /* GL_TEXTURE18 */ - { 32684, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 32701, 0x000084D3 }, /* GL_TEXTURE19 */ - { 32714, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 32731, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 32747, 0x000084C2 }, /* GL_TEXTURE2 */ - { 32759, 0x000084D4 }, /* GL_TEXTURE20 */ - { 32772, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 32789, 0x000084D5 }, /* GL_TEXTURE21 */ - { 32802, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 32819, 0x000084D6 }, /* GL_TEXTURE22 */ - { 32832, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 32849, 0x000084D7 }, /* GL_TEXTURE23 */ - { 32862, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 32879, 0x000084D8 }, /* GL_TEXTURE24 */ - { 32892, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 32909, 0x000084D9 }, /* GL_TEXTURE25 */ - { 32922, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 32939, 0x000084DA }, /* GL_TEXTURE26 */ - { 32952, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 32969, 0x000084DB }, /* GL_TEXTURE27 */ - { 32982, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 32999, 0x000084DC }, /* GL_TEXTURE28 */ - { 33012, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 33029, 0x000084DD }, /* GL_TEXTURE29 */ - { 33042, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 33059, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 33075, 0x000084C3 }, /* GL_TEXTURE3 */ - { 33087, 0x000084DE }, /* GL_TEXTURE30 */ - { 33100, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 33117, 0x000084DF }, /* GL_TEXTURE31 */ - { 33130, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 33147, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 33163, 0x000084C4 }, /* GL_TEXTURE4 */ - { 33175, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 33191, 0x000084C5 }, /* GL_TEXTURE5 */ - { 33203, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 33219, 0x000084C6 }, /* GL_TEXTURE6 */ - { 33231, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 33247, 0x000084C7 }, /* GL_TEXTURE7 */ - { 33259, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 33275, 0x000084C8 }, /* GL_TEXTURE8 */ - { 33287, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 33303, 0x000084C9 }, /* GL_TEXTURE9 */ - { 33315, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 33331, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 33345, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 33369, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 33383, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 33407, 0x0000806F }, /* GL_TEXTURE_3D */ - { 33421, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 33443, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 33469, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 33491, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 33513, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 33545, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 33567, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 33599, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 33621, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 33649, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 33681, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 33714, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 33746, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 33761, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 33782, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 33807, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 33825, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 33849, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 33880, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 33910, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 33940, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 33975, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 34006, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 34044, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 34071, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 34103, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 34137, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 34161, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 34189, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 34213, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 34241, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 34274, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 34298, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 34320, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 34342, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 34368, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 34402, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 34435, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 34472, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 34500, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 34532, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 34555, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 34593, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 34635, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 34666, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 34694, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 34724, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 34752, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 34772, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 34796, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 34827, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 34862, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 34893, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 34928, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 34959, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 34994, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 35025, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 35060, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 35091, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 35126, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 35157, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 35192, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 35209, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 35231, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 35257, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 35272, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 35293, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 35313, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 35339, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 35359, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 35376, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 35393, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 35410, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 35427, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 35452, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 35474, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 35500, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 35518, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 35544, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 35570, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 35600, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 35627, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 35652, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 35672, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 35696, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 35723, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 35750, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 35777, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 35803, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 35833, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 35855, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 35873, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 35903, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 35931, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 35959, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 35987, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 36008, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 36027, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 36049, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 36068, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 36088, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 36113, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 36137, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 36157, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 36181, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 36201, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 36224, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 36248, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 36273, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 36307, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 36324, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 36342, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 36360, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 36378, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 36398, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 36417, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 36446, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 36463, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 36489, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 36519, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 36551, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 36581, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 36615, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 36631, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 36662, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 36697, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 36725, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 36757, 0x00000004 }, /* GL_TRIANGLES */ - { 36770, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 36786, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 36807, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 36825, 0x00000001 }, /* GL_TRUE */ - { 36833, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 36853, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 36876, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 36896, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 36917, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 36939, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 36961, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 36981, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 37002, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 37019, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 37046, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 37069, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 37085, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 37112, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 37133, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 37157, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 37188, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 37212, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 37240, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 37263, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 37281, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 37311, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 37337, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 37367, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 37393, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 37417, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 37445, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 37473, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 37500, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 37532, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 37563, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 37577, 0x00002A20 }, /* GL_V2F */ - { 37584, 0x00002A21 }, /* GL_V3F */ - { 37591, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 37610, 0x00001F00 }, /* GL_VENDOR */ - { 37620, 0x00001F02 }, /* GL_VERSION */ - { 37631, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 37647, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 37677, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 37708, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 37743, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 37767, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 37788, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 37811, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 37832, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 37859, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 37887, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 37915, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 37943, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 37971, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 37999, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 38027, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 38054, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 38081, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 38108, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 38135, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 38162, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 38189, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 38216, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 38243, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 38270, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 38308, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 38350, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 38381, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 38416, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 38450, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 38488, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 38519, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 38554, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 38582, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 38614, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 38644, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 38678, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 38706, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 38738, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 38758, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 38780, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 38809, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 38830, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 38859, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 38892, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 38924, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 38951, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 38982, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 39012, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 39029, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 39050, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 39077, 0x00000BA2 }, /* GL_VIEWPORT */ - { 39089, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 39105, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 39125, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 39156, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 39191, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 39219, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 39244, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 39271, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 39296, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 39320, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 39339, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 39353, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 39371, 0x00001506 }, /* GL_XOR */ - { 39378, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 39397, 0x00008757 }, /* GL_YCBCR_MESA */ - { 39411, 0x00000000 }, /* GL_ZERO */ - { 39419, 0x00000D16 }, /* GL_ZOOM_X */ - { 39429, 0x00000D17 }, /* GL_ZOOM_Y */ + { 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 */ }; -static const unsigned reduced_enums[1321] = +static const unsigned reduced_enums[1325] = { 471, /* GL_FALSE */ - 685, /* GL_LINES */ - 687, /* GL_LINE_LOOP */ - 694, /* GL_LINE_STRIP */ - 1711, /* GL_TRIANGLES */ - 1714, /* GL_TRIANGLE_STRIP */ - 1712, /* GL_TRIANGLE_FAN */ - 1256, /* GL_QUADS */ - 1258, /* GL_QUAD_STRIP */ - 1144, /* GL_POLYGON */ - 1156, /* GL_POLYGON_STIPPLE_BIT */ - 1105, /* GL_PIXEL_MODE_BIT */ - 672, /* GL_LIGHTING_BIT */ - 499, /* GL_FOG_BIT */ + 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 */ 8, /* GL_ACCUM */ - 704, /* GL_LOAD */ - 1310, /* GL_RETURN */ - 978, /* GL_MULT */ + 706, /* GL_LOAD */ + 1320, /* GL_RETURN */ + 986, /* GL_MULT */ 23, /* GL_ADD */ - 994, /* GL_NEVER */ - 662, /* GL_LESS */ + 1002, /* GL_NEVER */ + 664, /* GL_LESS */ 461, /* GL_EQUAL */ - 661, /* GL_LEQUAL */ - 585, /* GL_GREATER */ - 1009, /* GL_NOTEQUAL */ - 584, /* GL_GEQUAL */ + 663, /* GL_LEQUAL */ + 586, /* GL_GREATER */ + 1017, /* GL_NOTEQUAL */ + 585, /* GL_GEQUAL */ 46, /* GL_ALWAYS */ - 1450, /* GL_SRC_COLOR */ - 1038, /* GL_ONE_MINUS_SRC_COLOR */ - 1448, /* GL_SRC_ALPHA */ - 1037, /* GL_ONE_MINUS_SRC_ALPHA */ + 1460, /* GL_SRC_COLOR */ + 1046, /* GL_ONE_MINUS_SRC_COLOR */ + 1458, /* GL_SRC_ALPHA */ + 1045, /* GL_ONE_MINUS_SRC_ALPHA */ 440, /* GL_DST_ALPHA */ - 1035, /* GL_ONE_MINUS_DST_ALPHA */ + 1043, /* GL_ONE_MINUS_DST_ALPHA */ 441, /* GL_DST_COLOR */ - 1036, /* GL_ONE_MINUS_DST_COLOR */ - 1449, /* GL_SRC_ALPHA_SATURATE */ - 572, /* GL_FRONT_LEFT */ - 573, /* GL_FRONT_RIGHT */ + 1044, /* GL_ONE_MINUS_DST_COLOR */ + 1459, /* GL_SRC_ALPHA_SATURATE */ + 573, /* GL_FRONT_LEFT */ + 574, /* GL_FRONT_RIGHT */ 68, /* GL_BACK_LEFT */ 69, /* GL_BACK_RIGHT */ - 569, /* GL_FRONT */ + 570, /* GL_FRONT */ 67, /* GL_BACK */ - 660, /* GL_LEFT */ - 1352, /* GL_RIGHT */ - 570, /* GL_FRONT_AND_BACK */ + 662, /* GL_LEFT */ + 1362, /* GL_RIGHT */ + 571, /* GL_FRONT_AND_BACK */ 62, /* GL_AUX0 */ 63, /* GL_AUX1 */ 64, /* GL_AUX2 */ 65, /* GL_AUX3 */ - 651, /* GL_INVALID_ENUM */ - 655, /* GL_INVALID_VALUE */ - 654, /* GL_INVALID_OPERATION */ - 1455, /* GL_STACK_OVERFLOW */ - 1456, /* GL_STACK_UNDERFLOW */ - 1063, /* GL_OUT_OF_MEMORY */ - 652, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + 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 */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1083, /* GL_PASS_THROUGH_TOKEN */ - 1143, /* GL_POINT_TOKEN */ - 695, /* GL_LINE_TOKEN */ - 1157, /* GL_POLYGON_TOKEN */ + 1091, /* GL_PASS_THROUGH_TOKEN */ + 1151, /* GL_POINT_TOKEN */ + 697, /* GL_LINE_TOKEN */ + 1165, /* GL_POLYGON_TOKEN */ 73, /* GL_BITMAP_TOKEN */ 439, /* GL_DRAW_PIXEL_TOKEN */ 297, /* GL_COPY_PIXEL_TOKEN */ - 688, /* GL_LINE_RESET_TOKEN */ + 690, /* GL_LINE_RESET_TOKEN */ 464, /* GL_EXP */ 465, /* GL_EXP2 */ 333, /* GL_CW */ 122, /* GL_CCW */ 143, /* GL_COEFF */ - 1060, /* GL_ORDER */ + 1068, /* GL_ORDER */ 377, /* GL_DOMAIN */ 307, /* GL_CURRENT_COLOR */ 310, /* GL_CURRENT_INDEX */ @@ -3774,67 +3796,67 @@ static const unsigned reduced_enums[1321] = 324, /* GL_CURRENT_RASTER_POSITION */ 325, /* GL_CURRENT_RASTER_POSITION_VALID */ 322, /* GL_CURRENT_RASTER_DISTANCE */ - 1136, /* GL_POINT_SMOOTH */ - 1125, /* GL_POINT_SIZE */ - 1135, /* GL_POINT_SIZE_RANGE */ - 1126, /* GL_POINT_SIZE_GRANULARITY */ - 689, /* GL_LINE_SMOOTH */ - 696, /* GL_LINE_WIDTH */ - 698, /* GL_LINE_WIDTH_RANGE */ - 697, /* GL_LINE_WIDTH_GRANULARITY */ - 691, /* GL_LINE_STIPPLE */ - 692, /* GL_LINE_STIPPLE_PATTERN */ - 693, /* GL_LINE_STIPPLE_REPEAT */ - 703, /* GL_LIST_MODE */ - 862, /* GL_MAX_LIST_NESTING */ - 700, /* GL_LIST_BASE */ - 702, /* GL_LIST_INDEX */ - 1146, /* GL_POLYGON_MODE */ - 1153, /* GL_POLYGON_SMOOTH */ - 1155, /* GL_POLYGON_STIPPLE */ + 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 */ - 571, /* GL_FRONT_FACE */ - 671, /* GL_LIGHTING */ - 676, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - 677, /* GL_LIGHT_MODEL_TWO_SIDE */ - 673, /* GL_LIGHT_MODEL_AMBIENT */ - 1398, /* GL_SHADE_MODEL */ + 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 */ - 498, /* GL_FOG */ - 520, /* GL_FOG_INDEX */ - 516, /* GL_FOG_DENSITY */ - 524, /* GL_FOG_START */ - 518, /* GL_FOG_END */ - 521, /* GL_FOG_MODE */ - 500, /* GL_FOG_COLOR */ + 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 */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1491, /* GL_STENCIL_TEST */ - 1479, /* GL_STENCIL_CLEAR_VALUE */ - 1481, /* GL_STENCIL_FUNC */ - 1493, /* GL_STENCIL_VALUE_MASK */ - 1480, /* GL_STENCIL_FAIL */ - 1488, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1489, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1490, /* GL_STENCIL_REF */ - 1494, /* GL_STENCIL_WRITEMASK */ - 831, /* GL_MATRIX_MODE */ - 999, /* GL_NORMALIZE */ - 1803, /* GL_VIEWPORT */ - 973, /* GL_MODELVIEW_STACK_DEPTH */ - 1236, /* GL_PROJECTION_STACK_DEPTH */ - 1689, /* GL_TEXTURE_STACK_DEPTH */ - 971, /* GL_MODELVIEW_MATRIX */ - 1235, /* GL_PROJECTION_MATRIX */ - 1674, /* GL_TEXTURE_MATRIX */ + 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 */ 60, /* GL_ATTRIB_STACK_DEPTH */ 133, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 43, /* GL_ALPHA_TEST */ @@ -3844,162 +3866,162 @@ static const unsigned reduced_enums[1321] = 77, /* GL_BLEND_DST */ 86, /* GL_BLEND_SRC */ 74, /* GL_BLEND */ - 706, /* GL_LOGIC_OP_MODE */ - 625, /* GL_INDEX_LOGIC_OP */ + 708, /* GL_LOGIC_OP_MODE */ + 626, /* GL_INDEX_LOGIC_OP */ 188, /* GL_COLOR_LOGIC_OP */ 66, /* GL_AUX_BUFFERS */ 387, /* GL_DRAW_BUFFER */ - 1268, /* GL_READ_BUFFER */ - 1379, /* GL_SCISSOR_BOX */ - 1380, /* GL_SCISSOR_TEST */ - 624, /* GL_INDEX_CLEAR_VALUE */ - 629, /* GL_INDEX_WRITEMASK */ + 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 */ - 626, /* GL_INDEX_MODE */ - 1345, /* GL_RGBA_MODE */ + 627, /* GL_INDEX_MODE */ + 1355, /* GL_RGBA_MODE */ 386, /* GL_DOUBLEBUFFER */ - 1495, /* GL_STEREO */ - 1303, /* GL_RENDER_MODE */ - 1084, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1137, /* GL_POINT_SMOOTH_HINT */ - 690, /* GL_LINE_SMOOTH_HINT */ - 1154, /* GL_POLYGON_SMOOTH_HINT */ - 519, /* GL_FOG_HINT */ - 1655, /* GL_TEXTURE_GEN_S */ - 1656, /* GL_TEXTURE_GEN_T */ - 1654, /* GL_TEXTURE_GEN_R */ - 1653, /* GL_TEXTURE_GEN_Q */ - 1097, /* GL_PIXEL_MAP_I_TO_I */ - 1103, /* GL_PIXEL_MAP_S_TO_S */ - 1099, /* GL_PIXEL_MAP_I_TO_R */ - 1095, /* GL_PIXEL_MAP_I_TO_G */ - 1093, /* GL_PIXEL_MAP_I_TO_B */ - 1091, /* GL_PIXEL_MAP_I_TO_A */ - 1101, /* GL_PIXEL_MAP_R_TO_R */ - 1089, /* GL_PIXEL_MAP_G_TO_G */ - 1087, /* GL_PIXEL_MAP_B_TO_B */ - 1085, /* GL_PIXEL_MAP_A_TO_A */ - 1098, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1104, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1100, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1096, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1094, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1092, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1102, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1090, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1088, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1086, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 1723, /* GL_UNPACK_SWAP_BYTES */ - 1718, /* GL_UNPACK_LSB_FIRST */ - 1719, /* GL_UNPACK_ROW_LENGTH */ - 1722, /* GL_UNPACK_SKIP_ROWS */ - 1721, /* GL_UNPACK_SKIP_PIXELS */ - 1716, /* GL_UNPACK_ALIGNMENT */ - 1072, /* GL_PACK_SWAP_BYTES */ - 1067, /* GL_PACK_LSB_FIRST */ - 1068, /* GL_PACK_ROW_LENGTH */ - 1071, /* GL_PACK_SKIP_ROWS */ - 1070, /* GL_PACK_SKIP_PIXELS */ - 1064, /* GL_PACK_ALIGNMENT */ - 784, /* GL_MAP_COLOR */ - 785, /* GL_MAP_STENCIL */ - 628, /* GL_INDEX_SHIFT */ - 627, /* GL_INDEX_OFFSET */ - 1281, /* GL_RED_SCALE */ - 1279, /* GL_RED_BIAS */ - 1820, /* GL_ZOOM_X */ - 1821, /* GL_ZOOM_Y */ - 589, /* GL_GREEN_SCALE */ - 587, /* GL_GREEN_BIAS */ + 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 */ 92, /* GL_BLUE_SCALE */ 90, /* GL_BLUE_BIAS */ 42, /* GL_ALPHA_SCALE */ 40, /* GL_ALPHA_BIAS */ 365, /* GL_DEPTH_SCALE */ 346, /* GL_DEPTH_BIAS */ - 857, /* GL_MAX_EVAL_ORDER */ - 861, /* GL_MAX_LIGHTS */ - 840, /* GL_MAX_CLIP_PLANES */ - 906, /* GL_MAX_TEXTURE_SIZE */ - 867, /* GL_MAX_PIXEL_MAP_TABLE */ - 836, /* GL_MAX_ATTRIB_STACK_DEPTH */ - 864, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - 865, /* GL_MAX_NAME_STACK_DEPTH */ - 893, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 907, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 921, /* GL_MAX_VIEWPORT_DIMS */ - 837, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1502, /* GL_SUBPIXEL_BITS */ - 623, /* GL_INDEX_BITS */ - 1280, /* GL_RED_BITS */ - 588, /* GL_GREEN_BITS */ + 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 */ 91, /* GL_BLUE_BITS */ 41, /* GL_ALPHA_BITS */ 347, /* GL_DEPTH_BITS */ - 1477, /* GL_STENCIL_BITS */ + 1487, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 987, /* GL_NAME_STACK_DEPTH */ + 995, /* GL_NAME_STACK_DEPTH */ 61, /* GL_AUTO_NORMAL */ - 730, /* GL_MAP1_COLOR_4 */ - 733, /* GL_MAP1_INDEX */ - 734, /* GL_MAP1_NORMAL */ - 735, /* GL_MAP1_TEXTURE_COORD_1 */ - 736, /* GL_MAP1_TEXTURE_COORD_2 */ - 737, /* GL_MAP1_TEXTURE_COORD_3 */ - 738, /* GL_MAP1_TEXTURE_COORD_4 */ - 739, /* GL_MAP1_VERTEX_3 */ - 740, /* GL_MAP1_VERTEX_4 */ - 757, /* GL_MAP2_COLOR_4 */ - 760, /* GL_MAP2_INDEX */ - 761, /* GL_MAP2_NORMAL */ - 762, /* GL_MAP2_TEXTURE_COORD_1 */ - 763, /* GL_MAP2_TEXTURE_COORD_2 */ - 764, /* GL_MAP2_TEXTURE_COORD_3 */ - 765, /* GL_MAP2_TEXTURE_COORD_4 */ - 766, /* GL_MAP2_VERTEX_3 */ - 767, /* GL_MAP2_VERTEX_4 */ - 731, /* GL_MAP1_GRID_DOMAIN */ - 732, /* GL_MAP1_GRID_SEGMENTS */ - 758, /* GL_MAP2_GRID_DOMAIN */ - 759, /* GL_MAP2_GRID_SEGMENTS */ - 1579, /* GL_TEXTURE_1D */ - 1581, /* GL_TEXTURE_2D */ + 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 */ - 1389, /* GL_SELECTION_BUFFER_POINTER */ - 1390, /* GL_SELECTION_BUFFER_SIZE */ - 1693, /* GL_TEXTURE_WIDTH */ - 1660, /* GL_TEXTURE_HEIGHT */ - 1616, /* GL_TEXTURE_COMPONENTS */ - 1600, /* GL_TEXTURE_BORDER_COLOR */ - 1599, /* GL_TEXTURE_BORDER */ + 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 */ - 995, /* GL_NICEST */ + 1003, /* GL_NICEST */ 47, /* GL_AMBIENT */ 375, /* GL_DIFFUSE */ - 1437, /* GL_SPECULAR */ - 1158, /* GL_POSITION */ - 1440, /* GL_SPOT_DIRECTION */ - 1441, /* GL_SPOT_EXPONENT */ - 1439, /* GL_SPOT_CUTOFF */ + 1447, /* GL_SPECULAR */ + 1166, /* GL_POSITION */ + 1450, /* GL_SPOT_DIRECTION */ + 1451, /* GL_SPOT_EXPONENT */ + 1449, /* GL_SPOT_CUTOFF */ 271, /* GL_CONSTANT_ATTENUATION */ - 680, /* GL_LINEAR_ATTENUATION */ - 1255, /* GL_QUADRATIC_ATTENUATION */ + 682, /* GL_LINEAR_ATTENUATION */ + 1264, /* GL_QUADRATIC_ATTENUATION */ 241, /* GL_COMPILE */ 242, /* GL_COMPILE_AND_EXECUTE */ 117, /* GL_BYTE */ - 1724, /* GL_UNSIGNED_BYTE */ - 1403, /* GL_SHORT */ - 1735, /* GL_UNSIGNED_SHORT */ - 631, /* GL_INT */ - 1727, /* GL_UNSIGNED_INT */ - 479, /* GL_FLOAT */ + 1734, /* GL_UNSIGNED_BYTE */ + 1413, /* GL_SHORT */ + 1745, /* GL_UNSIGNED_SHORT */ + 632, /* GL_INT */ + 1737, /* GL_UNSIGNED_INT */ + 480, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ 7, /* GL_4_BYTES */ @@ -4009,284 +4031,284 @@ static const unsigned reduced_enums[1321] = 51, /* GL_AND_REVERSE */ 295, /* GL_COPY */ 50, /* GL_AND_INVERTED */ - 997, /* GL_NOOP */ - 1816, /* GL_XOR */ - 1059, /* GL_OR */ - 998, /* GL_NOR */ + 1005, /* GL_NOOP */ + 1827, /* GL_XOR */ + 1067, /* GL_OR */ + 1006, /* GL_NOR */ 462, /* GL_EQUIV */ - 658, /* GL_INVERT */ - 1062, /* GL_OR_REVERSE */ + 659, /* GL_INVERT */ + 1070, /* GL_OR_REVERSE */ 296, /* GL_COPY_INVERTED */ - 1061, /* GL_OR_INVERTED */ - 988, /* GL_NAND */ - 1394, /* GL_SET */ + 1069, /* GL_OR_INVERTED */ + 996, /* GL_NAND */ + 1404, /* GL_SET */ 459, /* GL_EMISSION */ - 1402, /* GL_SHININESS */ + 1412, /* GL_SHININESS */ 48, /* GL_AMBIENT_AND_DIFFUSE */ 187, /* GL_COLOR_INDEXES */ - 938, /* GL_MODELVIEW */ - 1234, /* GL_PROJECTION */ - 1514, /* GL_TEXTURE */ + 946, /* GL_MODELVIEW */ + 1242, /* GL_PROJECTION */ + 1524, /* GL_TEXTURE */ 144, /* GL_COLOR */ 342, /* GL_DEPTH */ - 1463, /* GL_STENCIL */ + 1473, /* GL_STENCIL */ 186, /* GL_COLOR_INDEX */ - 1482, /* GL_STENCIL_INDEX */ + 1492, /* GL_STENCIL_INDEX */ 353, /* GL_DEPTH_COMPONENT */ - 1276, /* GL_RED */ - 586, /* GL_GREEN */ + 1286, /* GL_RED */ + 587, /* GL_GREEN */ 89, /* GL_BLUE */ 31, /* GL_ALPHA */ - 1311, /* GL_RGB */ - 1330, /* GL_RGBA */ - 708, /* GL_LUMINANCE */ - 729, /* GL_LUMINANCE_ALPHA */ + 1321, /* GL_RGB */ + 1340, /* GL_RGBA */ + 710, /* GL_LUMINANCE */ + 731, /* GL_LUMINANCE_ALPHA */ 72, /* GL_BITMAP */ - 1114, /* GL_POINT */ - 678, /* GL_LINE */ + 1122, /* GL_POINT */ + 680, /* GL_LINE */ 477, /* GL_FILL */ - 1285, /* GL_RENDER */ + 1295, /* GL_RENDER */ 473, /* GL_FEEDBACK */ - 1388, /* GL_SELECT */ - 478, /* GL_FLAT */ - 1412, /* GL_SMOOTH */ - 659, /* GL_KEEP */ - 1305, /* GL_REPLACE */ - 613, /* GL_INCR */ + 1398, /* GL_SELECT */ + 479, /* GL_FLAT */ + 1422, /* GL_SMOOTH */ + 660, /* GL_KEEP */ + 1315, /* GL_REPLACE */ + 614, /* GL_INCR */ 338, /* GL_DECR */ - 1750, /* GL_VENDOR */ - 1302, /* GL_RENDERER */ - 1751, /* GL_VERSION */ + 1760, /* GL_VENDOR */ + 1312, /* GL_RENDERER */ + 1761, /* GL_VERSION */ 466, /* GL_EXTENSIONS */ - 1353, /* GL_S */ - 1505, /* GL_T */ - 1265, /* GL_R */ - 1254, /* GL_Q */ - 974, /* GL_MODULATE */ + 1363, /* GL_S */ + 1515, /* GL_T */ + 1275, /* GL_R */ + 1263, /* GL_Q */ + 982, /* GL_MODULATE */ 337, /* GL_DECAL */ - 1650, /* GL_TEXTURE_ENV_MODE */ - 1649, /* GL_TEXTURE_ENV_COLOR */ - 1648, /* GL_TEXTURE_ENV */ + 1660, /* GL_TEXTURE_ENV_MODE */ + 1659, /* GL_TEXTURE_ENV_COLOR */ + 1658, /* GL_TEXTURE_ENV */ 467, /* GL_EYE_LINEAR */ - 1021, /* GL_OBJECT_LINEAR */ - 1438, /* GL_SPHERE_MAP */ - 1652, /* GL_TEXTURE_GEN_MODE */ - 1023, /* GL_OBJECT_PLANE */ + 1029, /* GL_OBJECT_LINEAR */ + 1448, /* GL_SPHERE_MAP */ + 1662, /* GL_TEXTURE_GEN_MODE */ + 1031, /* GL_OBJECT_PLANE */ 468, /* GL_EYE_PLANE */ - 989, /* GL_NEAREST */ - 679, /* GL_LINEAR */ - 993, /* GL_NEAREST_MIPMAP_NEAREST */ - 684, /* GL_LINEAR_MIPMAP_NEAREST */ - 992, /* GL_NEAREST_MIPMAP_LINEAR */ - 683, /* GL_LINEAR_MIPMAP_LINEAR */ - 1673, /* GL_TEXTURE_MAG_FILTER */ - 1681, /* GL_TEXTURE_MIN_FILTER */ - 1695, /* GL_TEXTURE_WRAP_S */ - 1696, /* GL_TEXTURE_WRAP_T */ + 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 */ - 1304, /* GL_REPEAT */ - 1152, /* GL_POLYGON_OFFSET_UNITS */ - 1151, /* GL_POLYGON_OFFSET_POINT */ - 1150, /* GL_POLYGON_OFFSET_LINE */ - 1266, /* GL_R3_G3_B2 */ - 1747, /* GL_V2F */ - 1748, /* GL_V3F */ + 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 */ - 986, /* GL_N3F_V3F */ + 994, /* GL_N3F_V3F */ 119, /* GL_C4F_N3F_V3F */ - 1510, /* GL_T2F_V3F */ - 1512, /* GL_T4F_V4F */ - 1508, /* GL_T2F_C4UB_V3F */ - 1506, /* GL_T2F_C3F_V3F */ - 1509, /* GL_T2F_N3F_V3F */ - 1507, /* GL_T2F_C4F_N3F_V3F */ - 1511, /* GL_T4F_C4F_N3F_V4F */ + 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 */ - 663, /* GL_LIGHT0 */ - 664, /* GL_LIGHT1 */ - 665, /* GL_LIGHT2 */ - 666, /* GL_LIGHT3 */ - 667, /* GL_LIGHT4 */ - 668, /* GL_LIGHT5 */ - 669, /* GL_LIGHT6 */ - 670, /* GL_LIGHT7 */ - 590, /* GL_HINT_BIT */ + 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 */ - 1033, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 1041, /* GL_ONE_MINUS_CONSTANT_COLOR */ 268, /* GL_CONSTANT_ALPHA */ - 1031, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1039, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 75, /* GL_BLEND_COLOR */ - 574, /* GL_FUNC_ADD */ - 922, /* GL_MIN */ - 833, /* GL_MAX */ + 575, /* GL_FUNC_ADD */ + 930, /* GL_MIN */ + 841, /* GL_MAX */ 80, /* GL_BLEND_EQUATION */ - 578, /* GL_FUNC_SUBTRACT */ - 576, /* GL_FUNC_REVERSE_SUBTRACT */ + 579, /* GL_FUNC_SUBTRACT */ + 577, /* GL_FUNC_REVERSE_SUBTRACT */ 276, /* GL_CONVOLUTION_1D */ 277, /* GL_CONVOLUTION_2D */ - 1391, /* GL_SEPARABLE_2D */ + 1401, /* GL_SEPARABLE_2D */ 280, /* GL_CONVOLUTION_BORDER_MODE */ 284, /* GL_CONVOLUTION_FILTER_SCALE */ 282, /* GL_CONVOLUTION_FILTER_BIAS */ - 1277, /* GL_REDUCE */ + 1287, /* GL_REDUCE */ 286, /* GL_CONVOLUTION_FORMAT */ 290, /* GL_CONVOLUTION_WIDTH */ 288, /* GL_CONVOLUTION_HEIGHT */ - 848, /* GL_MAX_CONVOLUTION_WIDTH */ - 846, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1191, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1187, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1182, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1178, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1189, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1185, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1180, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1176, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - 591, /* GL_HISTOGRAM */ - 1238, /* GL_PROXY_HISTOGRAM */ - 607, /* GL_HISTOGRAM_WIDTH */ - 597, /* GL_HISTOGRAM_FORMAT */ - 603, /* GL_HISTOGRAM_RED_SIZE */ - 599, /* GL_HISTOGRAM_GREEN_SIZE */ - 594, /* GL_HISTOGRAM_BLUE_SIZE */ - 592, /* GL_HISTOGRAM_ALPHA_SIZE */ - 601, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - 605, /* GL_HISTOGRAM_SINK */ - 923, /* GL_MINMAX */ - 925, /* GL_MINMAX_FORMAT */ - 927, /* GL_MINMAX_SINK */ - 1513, /* GL_TABLE_TOO_LARGE_EXT */ - 1726, /* GL_UNSIGNED_BYTE_3_3_2 */ - 1737, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 1739, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 1732, /* GL_UNSIGNED_INT_8_8_8_8 */ - 1728, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1149, /* GL_POLYGON_OFFSET_FILL */ - 1148, /* GL_POLYGON_OFFSET_FACTOR */ - 1147, /* GL_POLYGON_OFFSET_BIAS */ - 1308, /* GL_RESCALE_NORMAL */ + 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 */ 36, /* GL_ALPHA4 */ 38, /* GL_ALPHA8 */ 32, /* GL_ALPHA12 */ 34, /* GL_ALPHA16 */ - 719, /* GL_LUMINANCE4 */ - 725, /* GL_LUMINANCE8 */ - 709, /* GL_LUMINANCE12 */ - 715, /* GL_LUMINANCE16 */ - 720, /* GL_LUMINANCE4_ALPHA4 */ - 723, /* GL_LUMINANCE6_ALPHA2 */ - 726, /* GL_LUMINANCE8_ALPHA8 */ - 712, /* GL_LUMINANCE12_ALPHA4 */ - 710, /* GL_LUMINANCE12_ALPHA12 */ - 716, /* GL_LUMINANCE16_ALPHA16 */ - 632, /* GL_INTENSITY */ - 637, /* GL_INTENSITY4 */ - 639, /* GL_INTENSITY8 */ - 633, /* GL_INTENSITY12 */ - 635, /* GL_INTENSITY16 */ - 1320, /* GL_RGB2_EXT */ - 1321, /* GL_RGB4 */ - 1324, /* GL_RGB5 */ - 1328, /* GL_RGB8 */ - 1312, /* GL_RGB10 */ - 1316, /* GL_RGB12 */ - 1318, /* GL_RGB16 */ - 1335, /* GL_RGBA2 */ - 1337, /* GL_RGBA4 */ - 1325, /* GL_RGB5_A1 */ - 1341, /* GL_RGBA8 */ - 1313, /* GL_RGB10_A2 */ - 1331, /* GL_RGBA12 */ - 1333, /* GL_RGBA16 */ - 1686, /* GL_TEXTURE_RED_SIZE */ - 1658, /* GL_TEXTURE_GREEN_SIZE */ - 1597, /* GL_TEXTURE_BLUE_SIZE */ - 1584, /* GL_TEXTURE_ALPHA_SIZE */ - 1671, /* GL_TEXTURE_LUMINANCE_SIZE */ - 1662, /* GL_TEXTURE_INTENSITY_SIZE */ - 1306, /* GL_REPLACE_EXT */ - 1242, /* GL_PROXY_TEXTURE_1D */ - 1245, /* GL_PROXY_TEXTURE_2D */ - 1691, /* GL_TEXTURE_TOO_LARGE_EXT */ - 1683, /* GL_TEXTURE_PRIORITY */ - 1688, /* GL_TEXTURE_RESIDENT */ - 1587, /* GL_TEXTURE_BINDING_1D */ - 1589, /* GL_TEXTURE_BINDING_2D */ - 1591, /* GL_TEXTURE_BINDING_3D */ - 1069, /* GL_PACK_SKIP_IMAGES */ - 1065, /* GL_PACK_IMAGE_HEIGHT */ - 1720, /* GL_UNPACK_SKIP_IMAGES */ - 1717, /* GL_UNPACK_IMAGE_HEIGHT */ - 1583, /* GL_TEXTURE_3D */ - 1248, /* GL_PROXY_TEXTURE_3D */ - 1645, /* GL_TEXTURE_DEPTH */ - 1694, /* GL_TEXTURE_WRAP_R */ - 834, /* GL_MAX_3D_TEXTURE_SIZE */ - 1752, /* GL_VERTEX_ARRAY */ - 1000, /* GL_NORMAL_ARRAY */ + 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 */ - 617, /* GL_INDEX_ARRAY */ - 1624, /* GL_TEXTURE_COORD_ARRAY */ + 618, /* GL_INDEX_ARRAY */ + 1634, /* GL_TEXTURE_COORD_ARRAY */ 451, /* GL_EDGE_FLAG_ARRAY */ - 1757, /* GL_VERTEX_ARRAY_SIZE */ - 1759, /* GL_VERTEX_ARRAY_TYPE */ - 1758, /* GL_VERTEX_ARRAY_STRIDE */ - 1005, /* GL_NORMAL_ARRAY_TYPE */ - 1004, /* GL_NORMAL_ARRAY_STRIDE */ + 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 */ - 622, /* GL_INDEX_ARRAY_TYPE */ - 621, /* GL_INDEX_ARRAY_STRIDE */ - 1628, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 1630, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 1629, /* GL_TEXTURE_COORD_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 */ - 1756, /* GL_VERTEX_ARRAY_POINTER */ - 1003, /* GL_NORMAL_ARRAY_POINTER */ + 1767, /* GL_VERTEX_ARRAY_POINTER */ + 1011, /* GL_NORMAL_ARRAY_POINTER */ 148, /* GL_COLOR_ARRAY_POINTER */ - 620, /* GL_INDEX_ARRAY_POINTER */ - 1627, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 621, /* GL_INDEX_ARRAY_POINTER */ + 1637, /* GL_TEXTURE_COORD_ARRAY_POINTER */ 454, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 979, /* GL_MULTISAMPLE */ - 1365, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1367, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1372, /* GL_SAMPLE_COVERAGE */ - 1369, /* GL_SAMPLE_BUFFERS */ - 1360, /* GL_SAMPLES */ - 1376, /* GL_SAMPLE_COVERAGE_VALUE */ - 1374, /* GL_SAMPLE_COVERAGE_INVERT */ + 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 */ - 842, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1174, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1170, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1165, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1161, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1172, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1168, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1163, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1159, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 1607, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1249, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 1609, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 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 */ 79, /* GL_BLEND_DST_RGB */ 88, /* GL_BLEND_SRC_RGB */ 78, /* GL_BLEND_DST_ALPHA */ 87, /* GL_BLEND_SRC_ALPHA */ 198, /* GL_COLOR_TABLE */ - 1184, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1167, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1237, /* GL_PROXY_COLOR_TABLE */ - 1241, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1240, /* GL_PROXY_POST_COLOR_MATRIX_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 */ @@ -4299,374 +4321,374 @@ static const unsigned reduced_enums[1321] = 213, /* GL_COLOR_TABLE_INTENSITY_SIZE */ 70, /* GL_BGR */ 71, /* GL_BGRA */ - 856, /* GL_MAX_ELEMENTS_VERTICES */ - 855, /* GL_MAX_ELEMENTS_INDICES */ - 1661, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 864, /* GL_MAX_ELEMENTS_VERTICES */ + 863, /* GL_MAX_ELEMENTS_INDICES */ + 1671, /* GL_TEXTURE_INDEX_SIZE_EXT */ 142, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1131, /* GL_POINT_SIZE_MIN */ - 1127, /* GL_POINT_SIZE_MAX */ - 1121, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1117, /* GL_POINT_DISTANCE_ATTENUATION */ + 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 */ - 1682, /* GL_TEXTURE_MIN_LOD */ - 1680, /* GL_TEXTURE_MAX_LOD */ - 1586, /* GL_TEXTURE_BASE_LEVEL */ - 1679, /* GL_TEXTURE_MAX_LEVEL */ - 610, /* GL_IGNORE_BORDER_HP */ + 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 */ - 1307, /* GL_REPLICATE_BORDER_HP */ + 1317, /* GL_REPLICATE_BORDER_HP */ 278, /* GL_CONVOLUTION_BORDER_COLOR */ - 1028, /* GL_OCCLUSION_TEST_HP */ - 1029, /* GL_OCCLUSION_TEST_RESULT_HP */ - 681, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1601, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1603, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1605, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 1606, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1604, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1602, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - 838, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - 839, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1194, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1196, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1193, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1195, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 1669, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 1670, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 1668, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - 580, /* GL_GENERATE_MIPMAP */ - 581, /* GL_GENERATE_MIPMAP_HINT */ - 522, /* GL_FOG_OFFSET_SGIX */ - 523, /* GL_FOG_OFFSET_VALUE_SGIX */ - 1615, /* GL_TEXTURE_COMPARE_SGIX */ - 1614, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 1665, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 1657, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 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 */ - 1813, /* GL_WRAP_BORDER_SUN */ - 1608, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - 674, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1405, /* GL_SINGLE_COLOR */ - 1392, /* GL_SEPARATE_SPECULAR_COLOR */ - 1401, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - 533, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - 534, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - 541, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - 536, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - 532, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - 531, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - 535, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - 542, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - 553, /* GL_FRAMEBUFFER_DEFAULT */ - 566, /* GL_FRAMEBUFFER_UNDEFINED */ + 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 */ - 616, /* GL_INDEX */ - 1725, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 1740, /* GL_UNSIGNED_SHORT_5_6_5 */ - 1741, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 1738, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 1736, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 1733, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 1731, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 1677, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 1678, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 1676, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 930, /* GL_MIRRORED_REPEAT */ - 1348, /* GL_RGB_S3TC */ - 1323, /* GL_RGB4_S3TC */ - 1346, /* GL_RGBA_S3TC */ - 1340, /* GL_RGBA4_S3TC */ - 1344, /* GL_RGBA_DXT5_S3TC */ - 1338, /* GL_RGBA4_DXT5_S3TC */ + 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 */ - 991, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 990, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - 682, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - 509, /* GL_FOG_COORDINATE_SOURCE */ - 501, /* GL_FOG_COORD */ - 525, /* GL_FRAGMENT_DEPTH */ + 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 */ - 508, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - 507, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - 506, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - 503, /* GL_FOG_COORDINATE_ARRAY */ + 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 */ - 1385, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1387, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1386, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1384, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1381, /* GL_SECONDARY_COLOR_ARRAY */ + 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 */ 28, /* GL_ALIASED_POINT_SIZE_RANGE */ 27, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1515, /* GL_TEXTURE0 */ - 1517, /* GL_TEXTURE1 */ - 1539, /* GL_TEXTURE2 */ - 1561, /* GL_TEXTURE3 */ - 1567, /* GL_TEXTURE4 */ - 1569, /* GL_TEXTURE5 */ - 1571, /* GL_TEXTURE6 */ - 1573, /* GL_TEXTURE7 */ - 1575, /* GL_TEXTURE8 */ - 1577, /* GL_TEXTURE9 */ - 1518, /* GL_TEXTURE10 */ - 1520, /* GL_TEXTURE11 */ - 1522, /* GL_TEXTURE12 */ - 1524, /* GL_TEXTURE13 */ - 1526, /* GL_TEXTURE14 */ - 1528, /* GL_TEXTURE15 */ - 1530, /* GL_TEXTURE16 */ - 1532, /* GL_TEXTURE17 */ - 1534, /* GL_TEXTURE18 */ - 1536, /* GL_TEXTURE19 */ - 1540, /* GL_TEXTURE20 */ - 1542, /* GL_TEXTURE21 */ - 1544, /* GL_TEXTURE22 */ - 1546, /* GL_TEXTURE23 */ - 1548, /* GL_TEXTURE24 */ - 1550, /* GL_TEXTURE25 */ - 1552, /* GL_TEXTURE26 */ - 1554, /* GL_TEXTURE27 */ - 1556, /* GL_TEXTURE28 */ - 1558, /* GL_TEXTURE29 */ - 1562, /* GL_TEXTURE30 */ - 1564, /* GL_TEXTURE31 */ + 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 */ 18, /* GL_ACTIVE_TEXTURE */ 130, /* GL_CLIENT_ACTIVE_TEXTURE */ - 908, /* GL_MAX_TEXTURE_UNITS */ - 1704, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 1707, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 1709, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 1701, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1503, /* GL_SUBTRACT */ - 896, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + 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 */ - 1622, /* GL_TEXTURE_COMPRESSION_HINT */ - 1684, /* GL_TEXTURE_RECTANGLE_ARB */ - 1594, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - 1252, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - 894, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + 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 */ - 1729, /* GL_UNSIGNED_INT_24_8 */ - 904, /* GL_MAX_TEXTURE_LOD_BIAS */ - 1675, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 905, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 1651, /* GL_TEXTURE_FILTER_CONTROL */ - 1666, /* GL_TEXTURE_LOD_BIAS */ + 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 */ - 898, /* GL_MAX_SHININESS_NV */ - 899, /* GL_MAX_SPOT_EXPONENT_NV */ - 614, /* GL_INCR_WRAP */ + 906, /* GL_MAX_SHININESS_NV */ + 907, /* GL_MAX_SPOT_EXPONENT_NV */ + 615, /* GL_INCR_WRAP */ 339, /* GL_DECR_WRAP */ - 950, /* GL_MODELVIEW1_ARB */ - 1006, /* GL_NORMAL_MAP */ - 1282, /* GL_REFLECTION_MAP */ - 1631, /* GL_TEXTURE_CUBE_MAP */ - 1592, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 1639, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 1633, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 1641, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 1635, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 1643, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 1637, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1250, /* GL_PROXY_TEXTURE_CUBE_MAP */ - 850, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 985, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 517, /* GL_FOG_DISTANCE_MODE_NV */ + 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 */ - 1349, /* GL_RGB_SCALE */ + 1359, /* GL_RGB_SCALE */ 24, /* GL_ADD_SIGNED */ - 642, /* GL_INTERPOLATE */ + 643, /* GL_INTERPOLATE */ 267, /* GL_CONSTANT */ - 1200, /* GL_PRIMARY_COLOR */ - 1197, /* GL_PREVIOUS */ - 1420, /* GL_SOURCE0_RGB */ - 1426, /* GL_SOURCE1_RGB */ - 1432, /* GL_SOURCE2_RGB */ - 1436, /* GL_SOURCE3_RGB_NV */ - 1417, /* GL_SOURCE0_ALPHA */ - 1423, /* GL_SOURCE1_ALPHA */ - 1429, /* GL_SOURCE2_ALPHA */ - 1435, /* GL_SOURCE3_ALPHA_NV */ - 1042, /* GL_OPERAND0_RGB */ - 1048, /* GL_OPERAND1_RGB */ - 1054, /* GL_OPERAND2_RGB */ - 1058, /* GL_OPERAND3_RGB_NV */ - 1039, /* GL_OPERAND0_ALPHA */ - 1045, /* GL_OPERAND1_ALPHA */ - 1051, /* GL_OPERAND2_ALPHA */ - 1057, /* GL_OPERAND3_ALPHA_NV */ - 1753, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - 1817, /* GL_YCBCR_422_APPLE */ - 1742, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 1744, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 1407, /* GL_SLICE_ACCUM_SUN */ - 1257, /* GL_QUAD_MESH_SUN */ - 1713, /* GL_TRIANGLE_MESH_SUN */ - 1791, /* GL_VERTEX_PROGRAM_ARB */ - 1802, /* GL_VERTEX_STATE_PROGRAM_NV */ - 1778, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 1784, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 1786, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 1788, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 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 */ - 1213, /* GL_PROGRAM_LENGTH_ARB */ - 1227, /* GL_PROGRAM_STRING_ARB */ - 972, /* GL_MODELVIEW_PROJECTION_NV */ - 609, /* GL_IDENTITY_NV */ - 656, /* GL_INVERSE_NV */ - 1706, /* GL_TRANSPOSE_NV */ - 657, /* GL_INVERSE_TRANSPOSE_NV */ - 880, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - 879, /* GL_MAX_PROGRAM_MATRICES_ARB */ - 787, /* GL_MATRIX0_NV */ - 799, /* GL_MATRIX1_NV */ - 811, /* GL_MATRIX2_NV */ - 815, /* GL_MATRIX3_NV */ - 817, /* GL_MATRIX4_NV */ - 819, /* GL_MATRIX5_NV */ - 821, /* GL_MATRIX6_NV */ - 823, /* GL_MATRIX7_NV */ + 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 */ - 1794, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - 1797, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1225, /* GL_PROGRAM_PARAMETER_NV */ - 1782, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1229, /* GL_PROGRAM_TARGET_NV */ - 1226, /* GL_PROGRAM_RESIDENT_NV */ - 1698, /* GL_TRACK_MATRIX_NV */ - 1699, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 1792, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1207, /* GL_PROGRAM_ERROR_POSITION_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 */ - 1760, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 1767, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 1768, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 1769, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 1770, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 1771, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 1772, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 1773, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 1774, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 1775, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 1761, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 1762, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 1763, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 1764, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 1765, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 1766, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - 741, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - 748, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - 749, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - 750, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - 751, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - 752, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - 753, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - 754, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - 755, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - 756, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - 742, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - 743, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - 744, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - 745, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - 746, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - 747, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - 768, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - 775, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - 776, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - 777, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - 778, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - 779, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - 780, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1206, /* GL_PROGRAM_BINDING_ARB */ - 782, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - 783, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - 769, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - 770, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - 771, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - 772, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - 773, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - 774, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 1620, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 1617, /* GL_TEXTURE_COMPRESSED */ - 1011, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 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 */ - 920, /* GL_MAX_VERTEX_UNITS_ARB */ + 928, /* GL_MAX_VERTEX_UNITS_ARB */ 22, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 1812, /* GL_WEIGHT_SUM_UNITY_ARB */ - 1790, /* GL_VERTEX_BLEND_ARB */ + 1823, /* GL_WEIGHT_SUM_UNITY_ARB */ + 1801, /* GL_VERTEX_BLEND_ARB */ 332, /* GL_CURRENT_WEIGHT_ARB */ - 1811, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 1810, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 1809, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 1808, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 1805, /* GL_WEIGHT_ARRAY_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 */ - 980, /* GL_MULTISAMPLE_3DFX */ - 1370, /* GL_SAMPLE_BUFFERS_3DFX */ - 1361, /* GL_SAMPLES_3DFX */ - 961, /* GL_MODELVIEW2_ARB */ - 964, /* GL_MODELVIEW3_ARB */ - 965, /* GL_MODELVIEW4_ARB */ - 966, /* GL_MODELVIEW5_ARB */ - 967, /* GL_MODELVIEW6_ARB */ - 968, /* GL_MODELVIEW7_ARB */ - 969, /* GL_MODELVIEW8_ARB */ - 970, /* GL_MODELVIEW9_ARB */ - 940, /* GL_MODELVIEW10_ARB */ - 941, /* GL_MODELVIEW11_ARB */ - 942, /* GL_MODELVIEW12_ARB */ - 943, /* GL_MODELVIEW13_ARB */ - 944, /* GL_MODELVIEW14_ARB */ - 945, /* GL_MODELVIEW15_ARB */ - 946, /* GL_MODELVIEW16_ARB */ - 947, /* GL_MODELVIEW17_ARB */ - 948, /* GL_MODELVIEW18_ARB */ - 949, /* GL_MODELVIEW19_ARB */ - 951, /* GL_MODELVIEW20_ARB */ - 952, /* GL_MODELVIEW21_ARB */ - 953, /* GL_MODELVIEW22_ARB */ - 954, /* GL_MODELVIEW23_ARB */ - 955, /* GL_MODELVIEW24_ARB */ - 956, /* GL_MODELVIEW25_ARB */ - 957, /* GL_MODELVIEW26_ARB */ - 958, /* GL_MODELVIEW27_ARB */ - 959, /* GL_MODELVIEW28_ARB */ - 960, /* GL_MODELVIEW29_ARB */ - 962, /* GL_MODELVIEW30_ARB */ - 963, /* GL_MODELVIEW31_ARB */ + 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 */ - 934, /* GL_MIRROR_CLAMP_EXT */ - 937, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 975, /* GL_MODULATE_ADD_ATI */ - 976, /* GL_MODULATE_SIGNED_ADD_ATI */ - 977, /* GL_MODULATE_SUBTRACT_ATI */ - 1818, /* GL_YCBCR_MESA */ - 1066, /* GL_PACK_INVERT_MESA */ + 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 */ @@ -4680,24 +4702,24 @@ static const unsigned reduced_enums[1321] = 442, /* GL_DU8DV8_ATI */ 111, /* GL_BUMP_ENVMAP_ATI */ 115, /* GL_BUMP_TARGET_ATI */ - 1468, /* GL_STENCIL_BACK_FUNC */ - 1466, /* GL_STENCIL_BACK_FAIL */ - 1470, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1472, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - 526, /* GL_FRAGMENT_PROGRAM_ARB */ - 1204, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1232, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1231, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1216, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1222, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1221, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 869, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 892, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 891, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - 882, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 888, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 887, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 852, /* GL_MAX_DRAW_BUFFERS */ + 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 */ @@ -4715,251 +4737,251 @@ static const unsigned reduced_enums[1321] = 404, /* GL_DRAW_BUFFER14 */ 407, /* GL_DRAW_BUFFER15 */ 81, /* GL_BLEND_EQUATION_ALPHA */ - 832, /* GL_MATRIX_PALETTE_ARB */ - 863, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - 866, /* GL_MAX_PALETTE_MATRICES_ARB */ + 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 */ - 826, /* GL_MATRIX_INDEX_ARRAY_ARB */ + 834, /* GL_MATRIX_INDEX_ARRAY_ARB */ 312, /* GL_CURRENT_MATRIX_INDEX_ARB */ - 828, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - 830, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - 829, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - 827, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 1646, /* GL_TEXTURE_DEPTH_SIZE */ + 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 */ - 1612, /* GL_TEXTURE_COMPARE_MODE */ - 1610, /* GL_TEXTURE_COMPARE_FUNC */ + 1622, /* GL_TEXTURE_COMPARE_MODE */ + 1620, /* GL_TEXTURE_COMPARE_FUNC */ 239, /* GL_COMPARE_R_TO_TEXTURE */ - 1138, /* GL_POINT_SPRITE */ + 1146, /* GL_POINT_SPRITE */ 292, /* GL_COORD_REPLACE */ - 1142, /* GL_POINT_SPRITE_R_MODE_NV */ - 1259, /* GL_QUERY_COUNTER_BITS */ + 1150, /* GL_POINT_SPRITE_R_MODE_NV */ + 1269, /* GL_QUERY_COUNTER_BITS */ 319, /* GL_CURRENT_QUERY */ - 1261, /* GL_QUERY_RESULT */ - 1263, /* GL_QUERY_RESULT_AVAILABLE */ - 914, /* GL_MAX_VERTEX_ATTRIBS */ - 1780, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 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 */ - 900, /* GL_MAX_TEXTURE_COORDS */ - 902, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1209, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1211, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1210, /* GL_PROGRAM_FORMAT_ARB */ - 1692, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_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 */ 52, /* GL_ARRAY_BUFFER */ 456, /* GL_ELEMENT_ARRAY_BUFFER */ 53, /* GL_ARRAY_BUFFER_BINDING */ 457, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 1754, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1001, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 1765, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1009, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ 146, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - 618, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 1625, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 619, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + 1635, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ 452, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1382, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - 504, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 1806, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 1776, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1212, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - 875, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1218, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 884, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1230, /* GL_PROGRAM_TEMPORARIES_ARB */ - 890, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1220, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 886, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1224, /* GL_PROGRAM_PARAMETERS_ARB */ - 889, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1219, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - 885, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1205, /* GL_PROGRAM_ATTRIBS_ARB */ - 870, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1217, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - 883, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1203, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - 868, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1215, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 881, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 876, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - 872, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1233, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 1703, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1272, /* GL_READ_ONLY */ - 1814, /* GL_WRITE_ONLY */ - 1274, /* GL_READ_WRITE */ + 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 */ 101, /* GL_BUFFER_ACCESS */ 103, /* GL_BUFFER_MAPPED */ 105, /* GL_BUFFER_MAP_POINTER */ - 1697, /* GL_TIME_ELAPSED_EXT */ - 786, /* GL_MATRIX0_ARB */ - 798, /* GL_MATRIX1_ARB */ - 810, /* GL_MATRIX2_ARB */ - 814, /* GL_MATRIX3_ARB */ - 816, /* GL_MATRIX4_ARB */ - 818, /* GL_MATRIX5_ARB */ - 820, /* GL_MATRIX6_ARB */ - 822, /* GL_MATRIX7_ARB */ - 824, /* GL_MATRIX8_ARB */ - 825, /* GL_MATRIX9_ARB */ - 788, /* GL_MATRIX10_ARB */ - 789, /* GL_MATRIX11_ARB */ - 790, /* GL_MATRIX12_ARB */ - 791, /* GL_MATRIX13_ARB */ - 792, /* GL_MATRIX14_ARB */ - 793, /* GL_MATRIX15_ARB */ - 794, /* GL_MATRIX16_ARB */ - 795, /* GL_MATRIX17_ARB */ - 796, /* GL_MATRIX18_ARB */ - 797, /* GL_MATRIX19_ARB */ - 800, /* GL_MATRIX20_ARB */ - 801, /* GL_MATRIX21_ARB */ - 802, /* GL_MATRIX22_ARB */ - 803, /* GL_MATRIX23_ARB */ - 804, /* GL_MATRIX24_ARB */ - 805, /* GL_MATRIX25_ARB */ - 806, /* GL_MATRIX26_ARB */ - 807, /* GL_MATRIX27_ARB */ - 808, /* GL_MATRIX28_ARB */ - 809, /* GL_MATRIX29_ARB */ - 812, /* GL_MATRIX30_ARB */ - 813, /* GL_MATRIX31_ARB */ - 1498, /* GL_STREAM_DRAW */ - 1500, /* GL_STREAM_READ */ - 1496, /* GL_STREAM_COPY */ - 1459, /* GL_STATIC_DRAW */ - 1461, /* GL_STATIC_READ */ - 1457, /* GL_STATIC_COPY */ + 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 */ - 1106, /* GL_PIXEL_PACK_BUFFER */ - 1110, /* GL_PIXEL_UNPACK_BUFFER */ - 1107, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1111, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 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 */ - 1690, /* GL_TEXTURE_STENCIL_SIZE */ - 873, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - 871, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - 874, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - 878, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - 877, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 835, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - 1492, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 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 */ 17, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 935, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1363, /* GL_SAMPLES_PASSED */ - 527, /* GL_FRAGMENT_SHADER */ - 1800, /* GL_VERTEX_SHADER */ - 1223, /* GL_PROGRAM_OBJECT_ARB */ - 1395, /* GL_SHADER_OBJECT_ARB */ - 859, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 918, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 912, /* GL_MAX_VARYING_FLOATS */ - 916, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - 844, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1026, /* GL_OBJECT_TYPE_ARB */ - 1397, /* GL_SHADER_TYPE */ - 492, /* GL_FLOAT_VEC2 */ - 494, /* GL_FLOAT_VEC3 */ - 496, /* GL_FLOAT_VEC4 */ - 645, /* GL_INT_VEC2 */ - 647, /* GL_INT_VEC3 */ - 649, /* GL_INT_VEC4 */ + 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 */ 93, /* GL_BOOL */ 95, /* GL_BOOL_VEC2 */ 97, /* GL_BOOL_VEC3 */ 99, /* GL_BOOL_VEC4 */ - 480, /* GL_FLOAT_MAT2 */ - 484, /* GL_FLOAT_MAT3 */ - 488, /* GL_FLOAT_MAT4 */ - 1354, /* GL_SAMPLER_1D */ - 1356, /* GL_SAMPLER_2D */ - 1358, /* GL_SAMPLER_3D */ - 1359, /* GL_SAMPLER_CUBE */ - 1355, /* GL_SAMPLER_1D_SHADOW */ - 1357, /* GL_SAMPLER_2D_SHADOW */ - 482, /* GL_FLOAT_MAT2x3 */ - 483, /* GL_FLOAT_MAT2x4 */ - 486, /* GL_FLOAT_MAT3x2 */ - 487, /* GL_FLOAT_MAT3x4 */ - 490, /* GL_FLOAT_MAT4x2 */ - 491, /* GL_FLOAT_MAT4x3 */ + 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 */ - 699, /* GL_LINK_STATUS */ - 1749, /* GL_VALIDATE_STATUS */ - 630, /* GL_INFO_LOG_LENGTH */ + 701, /* GL_LINK_STATUS */ + 1759, /* GL_VALIDATE_STATUS */ + 631, /* GL_INFO_LOG_LENGTH */ 55, /* GL_ATTACHED_SHADERS */ 20, /* GL_ACTIVE_UNIFORMS */ 21, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1396, /* GL_SHADER_SOURCE_LENGTH */ + 1406, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ - 529, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1399, /* GL_SHADING_LANGUAGE_VERSION */ + 530, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + 1409, /* GL_SHADING_LANGUAGE_VERSION */ 318, /* GL_CURRENT_PROGRAM */ - 1075, /* GL_PALETTE4_RGB8_OES */ - 1077, /* GL_PALETTE4_RGBA8_OES */ - 1073, /* GL_PALETTE4_R5_G6_B5_OES */ - 1076, /* GL_PALETTE4_RGBA4_OES */ - 1074, /* GL_PALETTE4_RGB5_A1_OES */ - 1080, /* GL_PALETTE8_RGB8_OES */ - 1082, /* GL_PALETTE8_RGBA8_OES */ - 1078, /* GL_PALETTE8_R5_G6_B5_OES */ - 1081, /* GL_PALETTE8_RGBA4_OES */ - 1079, /* GL_PALETTE8_RGB5_A1_OES */ - 612, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - 611, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - 1734, /* GL_UNSIGNED_NORMALIZED */ - 1580, /* GL_TEXTURE_1D_ARRAY_EXT */ - 1243, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - 1582, /* GL_TEXTURE_2D_ARRAY_EXT */ - 1246, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - 1588, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - 1590, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - 1451, /* GL_SRGB */ - 1452, /* GL_SRGB8 */ - 1454, /* GL_SRGB_ALPHA */ - 1453, /* GL_SRGB8_ALPHA8 */ - 1411, /* GL_SLUMINANCE_ALPHA */ - 1410, /* GL_SLUMINANCE8_ALPHA8 */ - 1408, /* GL_SLUMINANCE */ - 1409, /* GL_SLUMINANCE8 */ + 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 */ - 1140, /* GL_POINT_SPRITE_COORD_ORIGIN */ - 707, /* GL_LOWER_LEFT */ - 1746, /* GL_UPPER_LEFT */ - 1474, /* GL_STENCIL_BACK_REF */ - 1475, /* GL_STENCIL_BACK_VALUE_MASK */ - 1476, /* GL_STENCIL_BACK_WRITEMASK */ + 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 */ - 1288, /* GL_RENDERBUFFER_BINDING_EXT */ - 1269, /* GL_READ_FRAMEBUFFER */ + 1298, /* GL_RENDERBUFFER_BINDING_EXT */ + 1279, /* GL_READ_FRAMEBUFFER */ 436, /* GL_DRAW_FRAMEBUFFER */ - 1270, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - 1298, /* GL_RENDERBUFFER_SAMPLES */ - 539, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - 537, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - 548, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - 544, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - 546, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - 551, /* GL_FRAMEBUFFER_COMPLETE */ - 555, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - 561, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - 559, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - 557, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - 560, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - 558, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - 564, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - 567, /* GL_FRAMEBUFFER_UNSUPPORTED */ - 565, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - 841, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + 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 */ @@ -4977,37 +4999,41 @@ static const unsigned reduced_enums[1321] = 163, /* GL_COLOR_ATTACHMENT14 */ 165, /* GL_COLOR_ATTACHMENT15 */ 344, /* GL_DEPTH_ATTACHMENT */ - 1464, /* GL_STENCIL_ATTACHMENT */ - 530, /* GL_FRAMEBUFFER */ - 1286, /* GL_RENDERBUFFER */ - 1300, /* GL_RENDERBUFFER_WIDTH */ - 1293, /* GL_RENDERBUFFER_HEIGHT */ - 1295, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1487, /* GL_STENCIL_INDEX_EXT */ - 1484, /* GL_STENCIL_INDEX1_EXT */ - 1485, /* GL_STENCIL_INDEX4_EXT */ - 1486, /* GL_STENCIL_INDEX8_EXT */ - 1483, /* GL_STENCIL_INDEX16_EXT */ - 1297, /* GL_RENDERBUFFER_RED_SIZE */ - 1292, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1289, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1287, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1290, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1299, /* GL_RENDERBUFFER_STENCIL_SIZE */ - 563, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - 897, /* GL_MAX_SAMPLES */ + 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 */ - 1347, /* GL_RGBA_SNORM */ - 1343, /* GL_RGBA8_SNORM */ - 1404, /* GL_SIGNED_NORMALIZED */ + 1357, /* GL_RGBA_SNORM */ + 1353, /* GL_RGBA8_SNORM */ + 1414, /* GL_SIGNED_NORMALIZED */ 463, /* GL_EVAL_BIT */ - 1267, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - 701, /* GL_LIST_BIT */ - 1596, /* GL_TEXTURE_BIT */ - 1378, /* GL_SCISSOR_BIT */ + 1277, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 703, /* GL_LIST_BIT */ + 1606, /* GL_TEXTURE_BIT */ + 1388, /* GL_SCISSOR_BIT */ 29, /* GL_ALL_ATTRIB_BITS */ - 982, /* GL_MULTISAMPLE_BIT */ + 990, /* GL_MULTISAMPLE_BIT */ 30, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; @@ -5065,6 +5091,29 @@ const char *_mesa_lookup_enum_by_nr( int nr ) } } +/* Get the name of an enum given that it is a primitive type. Avoids + * GL_FALSE/GL_POINTS ambiguity and others. + */ +const char *_mesa_lookup_prim_by_nr( int nr ) +{ + switch (nr) { + case GL_POINTS: return "GL_POINTS"; + case GL_LINES: return "GL_LINES"; + case GL_LINE_STRIP: return "GL_LINE_STRIP"; + case GL_LINE_LOOP: return "GL_LINE_LOOP"; + case GL_TRIANGLES: return "GL_TRIANGLES"; + case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP"; + case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN"; + case GL_QUADS: return "GL_QUADS"; + case GL_QUAD_STRIP: return "GL_QUAD_STRIP"; + case GL_POLYGON: return "GL_POLYGON"; + case GL_POLYGON+1: return "OUTSIDE_BEGIN_END"; + default: return "<invalid>"; + } +} + + + int _mesa_lookup_enum_by_name( const char *symbol ) { enum_elt * f = NULL; diff --git a/src/mesa/main/enums.h b/src/mesa/main/enums.h index 23a4767f35..b5f69001b8 100644 --- a/src/mesa/main/enums.h +++ b/src/mesa/main/enums.h @@ -40,6 +40,12 @@ #if defined(_HAVE_FULL_GL) && _HAVE_FULL_GL extern const char *_mesa_lookup_enum_by_nr( int nr ); + +/* Get the name of an enum given that it is a primitive type. Avoids + * GL_FALSE/GL_POINTS ambiguity and others. + */ +const char *_mesa_lookup_prim_by_nr( int nr ); + extern int _mesa_lookup_enum_by_name( const char *symbol ); #else diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 490110a6d2..c60b58a492 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -1,8 +1,9 @@ /* * Mesa 3-D graphics library - * Version: 7.3 + * Version: 7.6 * * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -53,6 +54,7 @@ static const struct { { OFF, "GL_ARB_framebuffer_object", F(ARB_framebuffer_object) }, { OFF, "GL_ARB_half_float_pixel", F(ARB_half_float_pixel) }, { OFF, "GL_ARB_imaging", F(ARB_imaging) }, + { OFF, "GL_ARB_map_buffer_range", F(ARB_map_buffer_range) }, { ON, "GL_ARB_multisample", F(ARB_multisample) }, { OFF, "GL_ARB_multitexture", F(ARB_multitexture) }, { OFF, "GL_ARB_occlusion_query", F(ARB_occlusion_query) }, @@ -76,6 +78,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_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) }, { OFF, "GL_ARB_vertex_shader", F(ARB_vertex_shader) }, @@ -107,6 +110,7 @@ static const struct { { OFF, "GL_EXT_pixel_buffer_object", F(EXT_pixel_buffer_object) }, { OFF, "GL_EXT_point_parameters", F(EXT_point_parameters) }, { ON, "GL_EXT_polygon_offset", F(EXT_polygon_offset) }, + { OFF, "GL_EXT_provoking_vertex", F(EXT_provoking_vertex) }, { ON, "GL_EXT_rescale_normal", F(EXT_rescale_normal) }, { OFF, "GL_EXT_secondary_color", F(EXT_secondary_color) }, { ON, "GL_EXT_separate_specular_color", F(EXT_separate_specular_color) }, @@ -199,6 +203,7 @@ _mesa_enable_sw_extensions(GLcontext *ctx) #endif ctx->Extensions.ARB_half_float_pixel = GL_TRUE; ctx->Extensions.ARB_imaging = GL_TRUE; + ctx->Extensions.ARB_map_buffer_range = GL_TRUE; ctx->Extensions.ARB_multitexture = GL_TRUE; #if FEATURE_ARB_occlusion_query ctx->Extensions.ARB_occlusion_query = GL_TRUE; @@ -223,6 +228,7 @@ _mesa_enable_sw_extensions(GLcontext *ctx) /*ctx->Extensions.ARB_texture_float = GL_TRUE;*/ ctx->Extensions.ARB_texture_mirrored_repeat = GL_TRUE; ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE; + ctx->Extensions.ARB_vertex_array_object = GL_TRUE; #if FEATURE_ARB_vertex_program ctx->Extensions.ARB_vertex_program = GL_TRUE; #endif @@ -263,6 +269,7 @@ _mesa_enable_sw_extensions(GLcontext *ctx) ctx->Extensions.EXT_pixel_buffer_object = GL_TRUE; #endif ctx->Extensions.EXT_point_parameters = GL_TRUE; + ctx->Extensions.EXT_provoking_vertex = GL_TRUE; ctx->Extensions.EXT_shadow_funcs = GL_TRUE; ctx->Extensions.EXT_secondary_color = GL_TRUE; ctx->Extensions.EXT_shared_texture_palette = GL_TRUE; diff --git a/src/mesa/main/ffvertex_prog.c b/src/mesa/main/ffvertex_prog.c index 43325b1352..80dde4b5aa 100644 --- a/src/mesa/main/ffvertex_prog.c +++ b/src/mesa/main/ffvertex_prog.c @@ -1,8 +1,8 @@ /************************************************************************** - * + * * Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas. * All Rights Reserved. - * + * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the * "Software"), to deal in the Software without restriction, including @@ -10,11 +10,11 @@ * distribute, sub license, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: - * + * * The above copyright notice and this permission notice (including the * next paragraph) shall be included in all copies or substantial portions * of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. @@ -22,7 +22,7 @@ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * + * **************************************************************************/ /** @@ -48,20 +48,16 @@ struct state_key { unsigned light_color_material_mask:12; - unsigned light_material_mask:12; unsigned light_global_enabled:1; unsigned light_local_viewer:1; unsigned light_twoside:1; - unsigned light_color_material:1; unsigned material_shininess_is_zero:1; unsigned need_eye_coords:1; unsigned normalize:1; unsigned rescale_normals:1; unsigned fog_source_is_depth:1; - unsigned tnl_do_vertex_fog:1; unsigned separate_specular:1; - unsigned fog_mode:2; unsigned point_attenuated:1; unsigned point_array:1; unsigned texture_enabled_global:1; @@ -73,7 +69,7 @@ struct state_key { unsigned light_enabled:1; unsigned light_eyepos3_is_zero:1; unsigned light_spotcutoff_is_180:1; - unsigned light_attenuated:1; + unsigned light_attenuated:1; unsigned texunit_really_enabled:1; unsigned texmat_enabled:1; unsigned texgen_enabled:4; @@ -85,23 +81,6 @@ struct state_key { }; - -#define FOG_NONE 0 -#define FOG_LINEAR 1 -#define FOG_EXP 2 -#define FOG_EXP2 3 - -static GLuint translate_fog_mode( GLenum mode ) -{ - switch (mode) { - case GL_LINEAR: return FOG_LINEAR; - case GL_EXP: return FOG_EXP; - case GL_EXP2: return FOG_EXP2; - default: return FOG_NONE; - } -} - - #define TXG_NONE 0 #define TXG_OBJ_LINEAR 1 #define TXG_EYE_LINEAR 2 @@ -125,42 +104,6 @@ static GLuint translate_texgen( GLboolean enabled, GLenum mode ) } -/** - * Returns bitmask of flags indicating which materials are set per-vertex - * in the current VB. - * XXX get these from the VBO... - */ -static GLbitfield -tnl_get_per_vertex_materials(GLcontext *ctx) -{ - GLbitfield mask = 0x0; -#if 0 - TNLcontext *tnl = TNL_CONTEXT(ctx); - struct vertex_buffer *VB = &tnl->vb; - GLuint i; - - for (i = _TNL_FIRST_MAT; i <= _TNL_LAST_MAT; i++) - if (VB->AttribPtr[i] && VB->AttribPtr[i]->stride) - mask |= 1 << (i - _TNL_FIRST_MAT); -#endif - return mask; -} - - -/** - * Should fog be computed per-vertex? - */ -static GLboolean -tnl_get_per_vertex_fog(GLcontext *ctx) -{ -#if 0 - TNLcontext *tnl = TNL_CONTEXT(ctx); - return tnl->_DoVertexFog; -#else - return GL_FALSE; -#endif -} - static GLboolean check_active_shininess( GLcontext *ctx, const struct state_key *key, @@ -168,10 +111,11 @@ static GLboolean check_active_shininess( GLcontext *ctx, { GLuint bit = 1 << (MAT_ATTRIB_FRONT_SHININESS + side); - if (key->light_color_material_mask & bit) + if ((key->varying_vp_inputs & VERT_BIT_COLOR0) && + (key->light_color_material_mask & bit)) return GL_TRUE; - if (key->light_material_mask & bit) + if (key->varying_vp_inputs & (bit << 16)) return GL_TRUE; if (ctx->Light.Material.Attrib[MAT_ATTRIB_FRONT_SHININESS + side][0] != 0.0F) @@ -216,12 +160,9 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) key->light_twoside = 1; if (ctx->Light.ColorMaterialEnabled) { - key->light_color_material = 1; key->light_color_material_mask = ctx->Light.ColorMaterialBitmask; } - key->light_material_mask = tnl_get_per_vertex_materials(ctx); - for (i = 0; i < MAX_LIGHTS; i++) { struct gl_light *light = &ctx->Light.Light[i]; @@ -230,7 +171,7 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) if (light->EyePosition[3] == 0.0) key->unit[i].light_eyepos3_is_zero = 1; - + if (light->SpotCutoff == 180.0) key->unit[i].light_spotcutoff_is_180 = 1; @@ -259,12 +200,8 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) if (ctx->Transform.RescaleNormals) key->rescale_normals = 1; - key->fog_mode = translate_fog_mode(fp->FogOption); - if (ctx->Fog.FogCoordinateSource == GL_FRAGMENT_DEPTH_EXT) key->fog_source_is_depth = 1; - - key->tnl_do_vertex_fog = tnl_get_per_vertex_fog(ctx); if (ctx->Point._Attenuated) key->point_attenuated = 1; @@ -278,29 +215,29 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) ctx->Texture._TexMatEnabled || ctx->Texture._EnabledUnits) key->texture_enabled_global = 1; - + for (i = 0; i < MAX_TEXTURE_COORD_UNITS; i++) { struct gl_texture_unit *texUnit = &ctx->Texture.Unit[i]; if (texUnit->_ReallyEnabled) key->unit[i].texunit_really_enabled = 1; - if (ctx->Texture._TexMatEnabled & ENABLE_TEXMAT(i)) + if (ctx->Texture._TexMatEnabled & ENABLE_TEXMAT(i)) key->unit[i].texmat_enabled = 1; - + if (texUnit->TexGenEnabled) { key->unit[i].texgen_enabled = 1; - - key->unit[i].texgen_mode0 = + + key->unit[i].texgen_mode0 = translate_texgen( texUnit->TexGenEnabled & (1<<0), texUnit->GenS.Mode ); - key->unit[i].texgen_mode1 = + key->unit[i].texgen_mode1 = translate_texgen( texUnit->TexGenEnabled & (1<<1), texUnit->GenT.Mode ); - key->unit[i].texgen_mode2 = + key->unit[i].texgen_mode2 = translate_texgen( texUnit->TexGenEnabled & (1<<2), texUnit->GenR.Mode ); - key->unit[i].texgen_mode3 = + key->unit[i].texgen_mode3 = translate_texgen( texUnit->TexGenEnabled & (1<<3), texUnit->GenQ.Mode ); } @@ -308,7 +245,7 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) } - + /* Very useful debugging tool - produces annotated listing of * generated program with line/function references for each * instruction back into this file: @@ -317,7 +254,7 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) /* Use uregs to represent registers internally, translate to Mesa's - * expected formats on emit. + * expected formats on emit. * * NOTE: These are passed by value extensively in this file rather * than as usual by pointer reference. If this disturbs you, try @@ -343,10 +280,10 @@ struct tnl_program { struct gl_vertex_program *program; GLint max_inst; /** number of instructions allocated for program */ GLboolean mvp_with_dp4; - + GLuint temp_in_use; GLuint temp_reserved; - + struct ureg eye_position; struct ureg eye_position_z; struct ureg eye_position_normalized; @@ -450,7 +387,7 @@ static void release_temps( struct tnl_program *p ) } -static struct ureg register_param5(struct tnl_program *p, +static struct ureg register_param5(struct tnl_program *p, GLint s0, GLint s1, GLint s2, @@ -481,9 +418,9 @@ static struct ureg register_param5(struct tnl_program *p, */ static struct ureg register_input( struct tnl_program *p, GLuint input ) { - /* Material attribs are passed here as inputs >= 32 - */ - if (input >= 32 || (p->state->varying_vp_inputs & (1<<input))) { + assert(input < 32); + + if (p->state->varying_vp_inputs & (1<<input)) { p->program->Base.InputsRead |= (1<<input); return make_ureg(PROGRAM_INPUT, input); } @@ -503,7 +440,7 @@ static struct ureg register_output( struct tnl_program *p, GLuint output ) } -static struct ureg register_const4f( struct tnl_program *p, +static struct ureg register_const4f( struct tnl_program *p, GLfloat s0, GLfloat s1, GLfloat s2, @@ -535,7 +472,7 @@ static GLboolean is_undef( struct ureg reg ) static struct ureg get_identity_param( struct tnl_program *p ) { - if (is_undef(p->identity)) + if (is_undef(p->identity)) p->identity = register_const4f(p, 0,0,0,1); return p->identity; @@ -554,7 +491,7 @@ static void register_matrix_param5( struct tnl_program *p, /* This is a bit sad as the support is there to pull the whole * matrix out in one go: */ - for (i = 0; i <= s3 - s2; i++) + for (i = 0; i <= s3 - s2; i++) matrix[i] = register_param5( p, s0, s1, i, i, s4 ); } @@ -579,7 +516,7 @@ static void emit_dst( struct prog_dst_register *dst, dst->File = reg.file; dst->Index = reg.idx; /* allow zero as a shorthand for xyzw */ - dst->WriteMask = mask ? mask : WRITEMASK_XYZW; + dst->WriteMask = mask ? mask : WRITEMASK_XYZW; dst->CondMask = COND_TR; /* always pass cond test */ dst->CondSwizzle = SWIZZLE_NOOP; dst->CondSrc = 0; @@ -594,12 +531,12 @@ static void debug_insn( struct prog_instruction *inst, const char *fn, { if (DISASSEM) { static const char *last_fn; - + if (fn != last_fn) { last_fn = fn; _mesa_printf("%s:\n", fn); } - + _mesa_printf("%d:\t", line); _mesa_print_instruction(inst); } @@ -618,7 +555,7 @@ static void emit_op3fn(struct tnl_program *p, { GLuint nr; struct prog_instruction *inst; - + assert((GLint) p->program->Base.NumInstructions <= p->max_inst); if (p->program->Base.NumInstructions == p->max_inst) { @@ -643,16 +580,16 @@ static void emit_op3fn(struct tnl_program *p, p->program->Base.Instructions = newInst; } - + nr = p->program->Base.NumInstructions++; inst = &p->program->Base.Instructions[nr]; - inst->Opcode = (enum prog_opcode) op; + inst->Opcode = (enum prog_opcode) op; inst->Data = 0; - + emit_arg( &inst->SrcReg[0], src0 ); emit_arg( &inst->SrcReg[1], src1 ); - emit_arg( &inst->SrcReg[2], src2 ); + emit_arg( &inst->SrcReg[2], src2 ); emit_dst( &inst->DstReg, dest, mask ); @@ -672,7 +609,7 @@ static void emit_op3fn(struct tnl_program *p, static struct ureg make_temp( struct tnl_program *p, struct ureg reg ) { - if (reg.file == PROGRAM_TEMPORARY && + if (reg.file == PROGRAM_TEMPORARY && !(p->temp_reserved & (1<<reg.idx))) return reg; else { @@ -753,19 +690,19 @@ static void emit_normalize_vec3( struct tnl_program *p, } -static void emit_passthrough( struct tnl_program *p, +static void emit_passthrough( struct tnl_program *p, GLuint input, GLuint output ) { struct ureg out = register_output(p, output); - emit_op1(p, OPCODE_MOV, out, 0, register_input(p, input)); + emit_op1(p, OPCODE_MOV, out, 0, register_input(p, input)); } static struct ureg get_eye_position( struct tnl_program *p ) { if (is_undef(p->eye_position)) { - struct ureg pos = register_input( p, VERT_ATTRIB_POS ); + struct ureg pos = register_input( p, VERT_ATTRIB_POS ); struct ureg modelview[4]; p->eye_position = reserve_temp(p); @@ -783,18 +720,18 @@ static struct ureg get_eye_position( struct tnl_program *p ) emit_transpose_matrix_transform_vec4(p, p->eye_position, modelview, pos); } } - + return p->eye_position; } static struct ureg get_eye_position_z( struct tnl_program *p ) { - if (!is_undef(p->eye_position)) + if (!is_undef(p->eye_position)) return swizzle1(p->eye_position, Z); if (is_undef(p->eye_position_z)) { - struct ureg pos = register_input( p, VERT_ATTRIB_POS ); + struct ureg pos = register_input( p, VERT_ATTRIB_POS ); struct ureg modelview[4]; p->eye_position_z = reserve_temp(p); @@ -804,10 +741,10 @@ static struct ureg get_eye_position_z( struct tnl_program *p ) emit_op2(p, OPCODE_DP4, p->eye_position_z, 0, pos, modelview[2]); } - + return p->eye_position_z; } - + static struct ureg get_eye_position_normalized( struct tnl_program *p ) { @@ -816,7 +753,7 @@ static struct ureg get_eye_position_normalized( struct tnl_program *p ) p->eye_position_normalized = reserve_temp(p); emit_normalize_vec3(p, p->eye_position_normalized, eye); } - + return p->eye_position_normalized; } @@ -830,7 +767,7 @@ static struct ureg get_transformed_normal( struct tnl_program *p ) { p->transformed_normal = register_input(p, VERT_ATTRIB_NORMAL ); } - else if (is_undef(p->transformed_normal)) + else if (is_undef(p->transformed_normal)) { struct ureg normal = register_input(p, VERT_ATTRIB_NORMAL ); struct ureg mvinv[3]; @@ -861,7 +798,7 @@ static struct ureg get_transformed_normal( struct tnl_program *p ) emit_op2( p, OPCODE_MUL, transformed_normal, 0, normal, rescale ); normal = transformed_normal; } - + assert(normal.file == PROGRAM_TEMPORARY); p->transformed_normal = normal; } @@ -872,17 +809,17 @@ static struct ureg get_transformed_normal( struct tnl_program *p ) static void build_hpos( struct tnl_program *p ) { - struct ureg pos = register_input( p, VERT_ATTRIB_POS ); + struct ureg pos = register_input( p, VERT_ATTRIB_POS ); struct ureg hpos = register_output( p, VERT_RESULT_HPOS ); struct ureg mvp[4]; if (p->mvp_with_dp4) { - register_matrix_param5( p, STATE_MVP_MATRIX, 0, 0, 3, + register_matrix_param5( p, STATE_MVP_MATRIX, 0, 0, 3, 0, mvp ); emit_matrix_transform_vec4( p, hpos, mvp, pos ); } else { - register_matrix_param5( p, STATE_MVP_MATRIX, 0, 0, 3, + register_matrix_param5( p, STATE_MVP_MATRIX, 0, 0, 3, STATE_MATRIX_TRANSPOSE, mvp ); emit_transpose_matrix_transform_vec4( p, hpos, mvp, pos ); } @@ -903,27 +840,28 @@ static void set_material_flags( struct tnl_program *p ) p->color_materials = 0; p->materials = 0; - if (p->state->light_color_material) { - p->materials = + if (p->state->varying_vp_inputs & VERT_BIT_COLOR0) { + p->materials = p->color_materials = p->state->light_color_material_mask; } - p->materials |= p->state->light_material_mask; + p->materials |= (p->state->varying_vp_inputs >> 16); } -/* XXX temporary!!! */ -#define _TNL_ATTRIB_MAT_FRONT_AMBIENT 32 - -static struct ureg get_material( struct tnl_program *p, GLuint side, +static struct ureg get_material( struct tnl_program *p, GLuint side, GLuint property ) { GLuint attrib = material_attrib(side, property); if (p->color_materials & (1<<attrib)) return register_input(p, VERT_ATTRIB_COLOR0); - else if (p->materials & (1<<attrib)) - return register_input( p, attrib + _TNL_ATTRIB_MAT_FRONT_AMBIENT ); + else if (p->materials & (1<<attrib)) { + /* Put material values in the GENERIC slots -- they are not used + * for anything in fixed function mode. + */ + return register_input( p, attrib + VERT_ATTRIB_GENERIC0 ); + } else return register_param3( p, STATE_MATERIAL, side, property ); } @@ -952,7 +890,7 @@ static struct ureg get_scenecolor( struct tnl_program *p, GLuint side ) struct ureg material_ambient = get_material(p, side, STATE_AMBIENT); struct ureg material_diffuse = get_material(p, side, STATE_DIFFUSE); struct ureg tmp = make_temp(p, material_diffuse); - emit_op3(p, OPCODE_MAD, tmp, WRITEMASK_XYZ, lm_ambient, + emit_op3(p, OPCODE_MAD, tmp, WRITEMASK_XYZ, lm_ambient, material_ambient, material_emission); return tmp; } @@ -961,12 +899,12 @@ static struct ureg get_scenecolor( struct tnl_program *p, GLuint side ) } -static struct ureg get_lightprod( struct tnl_program *p, GLuint light, +static struct ureg get_lightprod( struct tnl_program *p, GLuint light, GLuint side, GLuint property ) { GLuint attrib = material_attrib(side, property); if (p->materials & (1<<attrib)) { - struct ureg light_value = + struct ureg light_value = register_param3(p, STATE_LIGHT, light, property); struct ureg material_value = get_material(p, side, property); struct ureg tmp = get_temp(p); @@ -979,7 +917,7 @@ static struct ureg get_lightprod( struct tnl_program *p, GLuint light, static struct ureg calculate_light_attenuation( struct tnl_program *p, - GLuint i, + GLuint i, struct ureg VPpli, struct ureg dist ) { @@ -1008,27 +946,27 @@ static struct ureg calculate_light_attenuation( struct tnl_program *p, */ if (p->state->unit[i].light_attenuated) { /* 1/d,d,d,1/d */ - emit_op1(p, OPCODE_RCP, dist, WRITEMASK_YZ, dist); + emit_op1(p, OPCODE_RCP, dist, WRITEMASK_YZ, dist); /* 1,d,d*d,1/d */ - emit_op2(p, OPCODE_MUL, dist, WRITEMASK_XZ, dist, swizzle1(dist,Y)); + emit_op2(p, OPCODE_MUL, dist, WRITEMASK_XZ, dist, swizzle1(dist,Y)); /* 1/dist-atten */ - emit_op2(p, OPCODE_DP3, dist, 0, attenuation, dist); + emit_op2(p, OPCODE_DP3, dist, 0, attenuation, dist); if (!p->state->unit[i].light_spotcutoff_is_180) { /* dist-atten */ - emit_op1(p, OPCODE_RCP, dist, 0, dist); + emit_op1(p, OPCODE_RCP, dist, 0, dist); /* spot-atten * dist-atten */ - emit_op2(p, OPCODE_MUL, att, 0, dist, att); + emit_op2(p, OPCODE_MUL, att, 0, dist, att); } else { /* dist-atten */ - emit_op1(p, OPCODE_RCP, att, 0, dist); + emit_op1(p, OPCODE_RCP, att, 0, dist); } } return att; } - + /** * Compute: @@ -1047,7 +985,7 @@ static void emit_degenerate_lit( struct tnl_program *p, /* MAX lit, id, dots; */ - emit_op2(p, OPCODE_MAX, lit, WRITEMASK_XYZW, id, dots); + emit_op2(p, OPCODE_MAX, lit, WRITEMASK_XYZW, id, dots); /* result[2] = (in > 0 ? 1 : 0) * SLT lit.z, id.z, dots; # lit.z = (0 < dots.z) ? 1 : 0 @@ -1080,10 +1018,10 @@ static void build_lighting( struct tnl_program *p ) * dots.w = front.shininess */ - for (i = 0; i < MAX_LIGHTS; i++) + for (i = 0; i < MAX_LIGHTS; i++) if (p->state->unit[i].light_enabled) nr_lights++; - + set_material_flags(p); { @@ -1106,7 +1044,7 @@ static void build_lighting( struct tnl_program *p ) * The negation will be un-done later in the back-face code below. */ struct ureg shininess = get_material(p, 1, STATE_SHININESS); - emit_op1(p, OPCODE_MOV, dots, WRITEMASK_Z, + emit_op1(p, OPCODE_MOV, dots, WRITEMASK_Z, negate(swizzle1(shininess,X))); release_temp(p, shininess); } @@ -1134,12 +1072,12 @@ static void build_lighting( struct tnl_program *p ) struct ureg res0 = register_output( p, VERT_RESULT_BFC0 ); emit_op1(p, OPCODE_MOV, res0, 0, _bfc0); } - + if (twoside && separate) { struct ureg res1 = register_output( p, VERT_RESULT_BFC1 ); emit_op1(p, OPCODE_MOV, res1, 0, _bfc1); } - + if (nr_lights == 0) { release_temps(p); return; @@ -1149,16 +1087,16 @@ static void build_lighting( struct tnl_program *p ) if (p->state->unit[i].light_enabled) { struct ureg half = undef; struct ureg att = undef, VPpli = undef; - + count++; if (p->state->unit[i].light_eyepos3_is_zero) { /* Can used precomputed constants in this case. * Attenuation never applies to infinite lights. */ - VPpli = register_param3(p, STATE_INTERNAL, - STATE_LIGHT_POSITION_NORMALIZED, i); - + VPpli = register_param3(p, STATE_INTERNAL, + STATE_LIGHT_POSITION_NORMALIZED, i); + if (!p->state->material_shininess_is_zero) { if (p->state->light_local_viewer) { struct ureg eye_hat = get_eye_position_normalized(p); @@ -1167,22 +1105,22 @@ static void build_lighting( struct tnl_program *p ) emit_normalize_vec3(p, half, half); } else { - half = register_param3(p, STATE_INTERNAL, + half = register_param3(p, STATE_INTERNAL, STATE_LIGHT_HALF_VECTOR, i); } } } else { - struct ureg Ppli = register_param3(p, STATE_INTERNAL, - STATE_LIGHT_POSITION, i); + struct ureg Ppli = register_param3(p, STATE_INTERNAL, + STATE_LIGHT_POSITION, i); struct ureg V = get_eye_position(p); struct ureg dist = get_temp(p); - VPpli = get_temp(p); - + VPpli = get_temp(p); + /* Calculate VPpli vector */ - emit_op2(p, OPCODE_SUB, VPpli, 0, Ppli, V); + emit_op2(p, OPCODE_SUB, VPpli, 0, Ppli, V); /* Normalize VPpli. The dist value also used in * attenuation below. @@ -1192,7 +1130,7 @@ static void build_lighting( struct tnl_program *p ) emit_op2(p, OPCODE_MUL, VPpli, 0, VPpli, dist); /* Calculate attenuation: - */ + */ if (!p->state->unit[i].light_spotcutoff_is_180 || p->state->unit[i].light_attenuated) { att = calculate_light_attenuation(p, i, VPpli, dist); @@ -1208,7 +1146,7 @@ static void build_lighting( struct tnl_program *p ) emit_op2(p, OPCODE_SUB, half, 0, VPpli, eye_hat); } else { - struct ureg z_dir = swizzle(get_identity_param(p),X,Y,W,Z); + struct ureg z_dir = swizzle(get_identity_param(p),X,Y,W,Z); emit_op2(p, OPCODE_ADD, half, 0, VPpli, z_dir); } @@ -1277,7 +1215,7 @@ static void build_lighting( struct tnl_program *p ) emit_op3(p, OPCODE_MAD, res0, mask0, swizzle1(lit,Y), diffuse, _col0); emit_op3(p, OPCODE_MAD, res1, mask1, swizzle1(lit,Z), specular, _col1); - + release_temp(p, ambient); release_temp(p, diffuse); release_temp(p, specular); @@ -1291,7 +1229,7 @@ static void build_lighting( struct tnl_program *p ) struct ureg specular = get_lightprod(p, i, 1, STATE_SPECULAR); struct ureg res0, res1; GLuint mask0, mask1; - + if (count == nr_lights) { if (separate) { mask0 = WRITEMASK_XYZ; @@ -1368,52 +1306,10 @@ static void build_fog( struct tnl_program *p ) input = swizzle1(register_input(p, VERT_ATTRIB_FOG), X); } - if (p->state->fog_mode && p->state->tnl_do_vertex_fog) { - struct ureg params = register_param2(p, STATE_INTERNAL, - STATE_FOG_PARAMS_OPTIMIZED); - struct ureg tmp = get_temp(p); - GLboolean useabs = (p->state->fog_mode != FOG_EXP2); - - if (useabs) { - emit_op1(p, OPCODE_ABS, tmp, 0, input); - } - - switch (p->state->fog_mode) { - case FOG_LINEAR: { - struct ureg id = get_identity_param(p); - emit_op3(p, OPCODE_MAD, tmp, 0, useabs ? tmp : input, - swizzle1(params,X), swizzle1(params,Y)); - emit_op2(p, OPCODE_MAX, tmp, 0, tmp, swizzle1(id,X)); /* saturate */ - emit_op2(p, OPCODE_MIN, fog, WRITEMASK_X, tmp, swizzle1(id,W)); - break; - } - case FOG_EXP: - emit_op2(p, OPCODE_MUL, tmp, 0, useabs ? tmp : input, - swizzle1(params,Z)); - emit_op1(p, OPCODE_EX2, fog, WRITEMASK_X, negate(tmp)); - break; - case FOG_EXP2: - emit_op2(p, OPCODE_MUL, tmp, 0, input, swizzle1(params,W)); - emit_op2(p, OPCODE_MUL, tmp, 0, tmp, tmp); - emit_op1(p, OPCODE_EX2, fog, WRITEMASK_X, negate(tmp)); - break; - } - - release_temp(p, tmp); - } - else { - /* results = incoming fog coords (compute fog per-fragment later) - * - * KW: Is it really necessary to do anything in this case? - * BP: Yes, we always need to compute the absolute value, unless - * we want to push that down into the fragment program... - */ - GLboolean useabs = GL_TRUE; - emit_op1(p, useabs ? OPCODE_ABS : OPCODE_MOV, fog, WRITEMASK_X, input); - } + emit_op1(p, OPCODE_ABS, fog, WRITEMASK_X, input); } - + static void build_reflect_texgen( struct tnl_program *p, struct ureg dest, GLuint writemask ) @@ -1423,9 +1319,9 @@ static void build_reflect_texgen( struct tnl_program *p, struct ureg tmp = get_temp(p); /* n.u */ - emit_op2(p, OPCODE_DP3, tmp, 0, normal, eye_hat); + emit_op2(p, OPCODE_DP3, tmp, 0, normal, eye_hat); /* 2n.u */ - emit_op2(p, OPCODE_ADD, tmp, 0, tmp, tmp); + emit_op2(p, OPCODE_ADD, tmp, 0, tmp, tmp); /* (-2n.u)n + u */ emit_op3(p, OPCODE_MAD, dest, writemask, negate(tmp), normal, eye_hat); @@ -1454,22 +1350,22 @@ static void build_sphere_texgen( struct tnl_program *p, */ /* n.u */ - emit_op2(p, OPCODE_DP3, tmp, 0, normal, eye_hat); + emit_op2(p, OPCODE_DP3, tmp, 0, normal, eye_hat); /* 2n.u */ - emit_op2(p, OPCODE_ADD, tmp, 0, tmp, tmp); + emit_op2(p, OPCODE_ADD, tmp, 0, tmp, tmp); /* (-2n.u)n + u */ - emit_op3(p, OPCODE_MAD, r, 0, negate(tmp), normal, eye_hat); + emit_op3(p, OPCODE_MAD, r, 0, negate(tmp), normal, eye_hat); /* r + 0,0,1 */ - emit_op2(p, OPCODE_ADD, tmp, 0, r, swizzle(id,X,Y,W,Z)); + emit_op2(p, OPCODE_ADD, tmp, 0, r, swizzle(id,X,Y,W,Z)); /* rx^2 + ry^2 + (rz+1)^2 */ - emit_op2(p, OPCODE_DP3, tmp, 0, tmp, tmp); + emit_op2(p, OPCODE_DP3, tmp, 0, tmp, tmp); /* 2/m */ - emit_op1(p, OPCODE_RSQ, tmp, 0, tmp); + emit_op1(p, OPCODE_RSQ, tmp, 0, tmp); /* 1/m */ - emit_op2(p, OPCODE_MUL, inv_m, 0, tmp, half); + emit_op2(p, OPCODE_MUL, inv_m, 0, tmp, half); /* r/m + 1/2 */ - emit_op3(p, OPCODE_MAD, dest, writemask, r, inv_m, half); - + emit_op3(p, OPCODE_MAD, dest, writemask, r, inv_m, half); + release_temp(p, tmp); release_temp(p, r); release_temp(p, inv_m); @@ -1484,10 +1380,10 @@ static void build_texture_transform( struct tnl_program *p ) if (!(p->state->fragprog_inputs_read & FRAG_BIT_TEX(i))) continue; - - if (p->state->unit[i].texgen_enabled || + + if (p->state->unit[i].texgen_enabled || p->state->unit[i].texmat_enabled) { - + GLuint texmat_enabled = p->state->unit[i].texmat_enabled; struct ureg out = register_output(p, VERT_RESULT_TEX0 + i); struct ureg out_texgen = undef; @@ -1498,8 +1394,8 @@ static void build_texture_transform( struct tnl_program *p ) GLuint reflect_mask = 0; GLuint normal_mask = 0; GLuint modes[4]; - - if (texmat_enabled) + + if (texmat_enabled) out_texgen = get_temp(p); else out_texgen = out; @@ -1513,31 +1409,31 @@ static void build_texture_transform( struct tnl_program *p ) switch (modes[j]) { case TXG_OBJ_LINEAR: { struct ureg obj = register_input(p, VERT_ATTRIB_POS); - struct ureg plane = + struct ureg plane = register_param3(p, STATE_TEXGEN, i, STATE_TEXGEN_OBJECT_S + j); - emit_op2(p, OPCODE_DP4, out_texgen, WRITEMASK_X << j, + emit_op2(p, OPCODE_DP4, out_texgen, WRITEMASK_X << j, obj, plane ); break; } case TXG_EYE_LINEAR: { struct ureg eye = get_eye_position(p); - struct ureg plane = - register_param3(p, STATE_TEXGEN, i, + struct ureg plane = + register_param3(p, STATE_TEXGEN, i, STATE_TEXGEN_EYE_S + j); - emit_op2(p, OPCODE_DP4, out_texgen, WRITEMASK_X << j, + emit_op2(p, OPCODE_DP4, out_texgen, WRITEMASK_X << j, eye, plane ); break; } - case TXG_SPHERE_MAP: + case TXG_SPHERE_MAP: sphere_mask |= WRITEMASK_X << j; break; case TXG_REFLECTION_MAP: reflect_mask |= WRITEMASK_X << j; break; - case TXG_NORMAL_MAP: + case TXG_NORMAL_MAP: normal_mask |= WRITEMASK_X << j; break; case TXG_NONE: @@ -1566,8 +1462,8 @@ static void build_texture_transform( struct tnl_program *p ) if (texmat_enabled) { struct ureg texmat[4]; - struct ureg in = (!is_undef(out_texgen) ? - out_texgen : + struct ureg in = (!is_undef(out_texgen) ? + out_texgen : register_input(p, VERT_ATTRIB_TEX0+i)); if (p->mvp_with_dp4) { register_matrix_param5( p, STATE_TEXTURE_MATRIX, i, 0, 3, @@ -1629,17 +1525,6 @@ static void build_atten_pointsize( struct tnl_program *p ) /** - * Emit constant point size. - */ -static void build_constant_pointsize( struct tnl_program *p ) -{ - struct ureg state_size = register_param1(p, STATE_POINT_SIZE); - struct ureg out = register_output(p, VERT_RESULT_PSIZ); - emit_op1(p, OPCODE_MOV, out, WRITEMASK_X, state_size); -} - - -/** * Pass-though per-vertex point size, from user's point size array. */ static void build_array_pointsize( struct tnl_program *p ) @@ -1670,8 +1555,7 @@ static void build_tnl_program( struct tnl_program *p ) } } - if ((p->state->fragprog_inputs_read & FRAG_BIT_FOGC) || - p->state->fog_mode != FOG_NONE) + if (p->state->fragprog_inputs_read & FRAG_BIT_FOGC) build_fog(p); if (p->state->fragprog_inputs_read & FRAG_BITS_TEX_ANY) @@ -1681,12 +1565,6 @@ static void build_tnl_program( struct tnl_program *p ) build_atten_pointsize(p); else if (p->state->point_array) build_array_pointsize(p); -#if 0 - else - build_constant_pointsize(p); -#else - (void) build_constant_pointsize; -#endif /* Finish up: */ @@ -1718,7 +1596,7 @@ create_new_program( const struct state_key *key, p.identity = undef; p.temp_in_use = 0; p.mvp_with_dp4 = mvp_with_dp4; - + if (max_temps >= sizeof(int) * 8) p.temp_reserved = 0; else @@ -1761,14 +1639,14 @@ _mesa_get_fixed_func_vertex_program(GLcontext *ctx) */ prog = (struct gl_vertex_program *) _mesa_search_program_cache(ctx->VertexProgram.Cache, &key, sizeof(key)); - + if (!prog) { /* OK, we'll have to build a new one */ if (0) _mesa_printf("Build new TNL program\n"); - + prog = (struct gl_vertex_program *) - ctx->Driver.NewProgram(ctx, GL_VERTEX_PROGRAM_ARB, 0); + ctx->Driver.NewProgram(ctx, GL_VERTEX_PROGRAM_ARB, 0); if (!prog) return NULL; @@ -1778,7 +1656,7 @@ _mesa_get_fixed_func_vertex_program(GLcontext *ctx) #if 0 if (ctx->Driver.ProgramStringNotify) - ctx->Driver.ProgramStringNotify( ctx, GL_VERTEX_PROGRAM_ARB, + ctx->Driver.ProgramStringNotify( ctx, GL_VERTEX_PROGRAM_ARB, &prog->Base ); #endif _mesa_program_cache_insert(ctx, ctx->VertexProgram.Cache, diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 1ed6fc3383..516159bbf2 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -1835,6 +1835,14 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params ) CHECK_EXT1(EXT_framebuffer_blit, "GetBooleanv"); params[0] = INT_TO_BOOLEAN(ctx->ReadBuffer->Name); break; + case GL_PROVOKING_VERTEX_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetBooleanv"); + params[0] = ctx->Light.ProvokingVertex; + break; + case GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetBooleanv"); + params[0] = ctx->Const.QuadsFollowProvokingVertexConvention; + break; case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB: CHECK_EXT1(ARB_fragment_shader, "GetBooleanv"); params[0] = INT_TO_BOOLEAN(ctx->Const.FragmentProgram.MaxUniformComponents); @@ -3649,6 +3657,14 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params ) CHECK_EXT1(EXT_framebuffer_blit, "GetFloatv"); params[0] = (GLfloat)(ctx->ReadBuffer->Name); break; + case GL_PROVOKING_VERTEX_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetFloatv"); + params[0] = BOOLEAN_TO_FLOAT(ctx->Light.ProvokingVertex); + break; + case GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetFloatv"); + params[0] = BOOLEAN_TO_FLOAT(ctx->Const.QuadsFollowProvokingVertexConvention); + break; case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB: CHECK_EXT1(ARB_fragment_shader, "GetFloatv"); params[0] = (GLfloat)(ctx->Const.FragmentProgram.MaxUniformComponents); @@ -5463,6 +5479,14 @@ _mesa_GetIntegerv( GLenum pname, GLint *params ) CHECK_EXT1(EXT_framebuffer_blit, "GetIntegerv"); params[0] = ctx->ReadBuffer->Name; break; + case GL_PROVOKING_VERTEX_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetIntegerv"); + params[0] = BOOLEAN_TO_INT(ctx->Light.ProvokingVertex); + break; + case GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT: + CHECK_EXT1(EXT_provoking_vertex, "GetIntegerv"); + params[0] = BOOLEAN_TO_INT(ctx->Const.QuadsFollowProvokingVertexConvention); + break; case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB: CHECK_EXT1(ARB_fragment_shader, "GetIntegerv"); params[0] = ctx->Const.FragmentProgram.MaxUniformComponents; diff --git a/src/mesa/main/get_gen.py b/src/mesa/main/get_gen.py index 43ee5fff10..5666ad0e42 100644 --- a/src/mesa/main/get_gen.py +++ b/src/mesa/main/get_gen.py @@ -976,6 +976,13 @@ StateVars = [ ( "GL_READ_FRAMEBUFFER_BINDING_EXT", GLint, ["ctx->ReadBuffer->Name"], "", ["EXT_framebuffer_blit"] ), + # GL_EXT_provoking_vertex + ( "GL_PROVOKING_VERTEX_EXT", GLboolean, + ["ctx->Light.ProvokingVertex"], "", ["EXT_provoking_vertex"] ), + ( "GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT", GLboolean, + ["ctx->Const.QuadsFollowProvokingVertexConvention"], "", + ["EXT_provoking_vertex"] ), + # GL_ARB_fragment_shader ( "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB", GLint, ["ctx->Const.FragmentProgram.MaxUniformComponents"], "", diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c index ac604fd12c..0f0d831fee 100644 --- a/src/mesa/main/light.c +++ b/src/mesa/main/light.c @@ -1,8 +1,9 @@ /* * Mesa 3-D graphics library - * Version: 7.0 + * Version: 7.5 * - * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -64,6 +65,37 @@ _mesa_ShadeModel( GLenum mode ) /** + * Set the provoking vertex (the vertex which specifies the prim's + * color when flat shading) to either the first or last vertex of the + * triangle or line. + */ +void GLAPIENTRY +_mesa_ProvokingVertexEXT(GLenum mode) +{ + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (MESA_VERBOSE&VERBOSE_API) + _mesa_debug(ctx, "glProvokingVertexEXT 0x%x\n", mode); + + switch (mode) { + case GL_FIRST_VERTEX_CONVENTION_EXT: + case GL_LAST_VERTEX_CONVENTION_EXT: + break; + default: + _mesa_error(ctx, GL_INVALID_ENUM, "glProvokingVertexEXT(0x%x)", mode); + return; + } + + if (ctx->Light.ProvokingVertex == mode) + return; + + FLUSH_VERTICES(ctx, _NEW_LIGHT); + ctx->Light.ProvokingVertex = mode; +} + + +/** * Helper function called by _mesa_Lightfv and _mesa_PopAttrib to set * per-light state. * For GL_POSITION and GL_SPOT_DIRECTION the params position/direction @@ -1348,6 +1380,7 @@ _mesa_init_lighting( GLcontext *ctx ) init_lightmodel( &ctx->Light.Model ); init_material( &ctx->Light.Material ); ctx->Light.ShadeModel = GL_SMOOTH; + ctx->Light.ProvokingVertex = GL_LAST_VERTEX_CONVENTION_EXT; ctx->Light.Enabled = GL_FALSE; ctx->Light.ColorMaterialFace = GL_FRONT_AND_BACK; ctx->Light.ColorMaterialMode = GL_AMBIENT_AND_DIFFUSE; diff --git a/src/mesa/main/light.h b/src/mesa/main/light.h index b97e17b5be..9c1a5eefad 100644 --- a/src/mesa/main/light.h +++ b/src/mesa/main/light.h @@ -1,13 +1,9 @@ -/** - * \file light.h - * Lighting. - */ - /* * Mesa 3-D graphics library - * Version: 3.5 + * Version: 7.5 * - * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -37,6 +33,10 @@ extern void GLAPIENTRY _mesa_ShadeModel( GLenum mode ); +extern void GLAPIENTRY +_mesa_ProvokingVertexEXT(GLenum mode); + + #if _HAVE_FULL_GL extern void GLAPIENTRY _mesa_ColorMaterial( GLenum face, GLenum mode ); diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h index 01d59dd42d..4ca7957ffa 100644 --- a/src/mesa/main/macros.h +++ b/src/mesa/main/macros.h @@ -55,7 +55,7 @@ extern GLfloat _mesa_ubyte_to_float_color_tab[256]; /** Convert GLbyte in [-128,127] to GLfloat in [-1.0,1.0], texture/fb data */ -#define BYTE_TO_FLOAT_TEX(B) ((B) == -128 ? -1.0 : (B) * (1.0F/127.0F)) +#define BYTE_TO_FLOAT_TEX(B) ((B) == -128 ? -1.0F : (B) * (1.0F/127.0F)) /** Convert GLfloat in [-1.0,1.0] to GLbyte in [-128,127], texture/fb data */ #define FLOAT_TO_BYTE_TEX(X) ( (GLint) (127.0F * (X)) ) @@ -65,7 +65,7 @@ extern GLfloat _mesa_ubyte_to_float_color_tab[256]; #define USHORT_TO_FLOAT(S) ((GLfloat) (S) * (1.0F / 65535.0F)) /** Convert GLfloat in [0.0,1.0] to GLushort in [0, 65535] */ -#define FLOAT_TO_USHORT(X) ((GLuint) ((X) * 65535.0)) +#define FLOAT_TO_USHORT(X) ((GLuint) ((X) * 65535.0F)) /** Convert GLshort in [-32768,32767] to GLfloat in [-1.0,1.0] */ @@ -76,35 +76,35 @@ extern GLfloat _mesa_ubyte_to_float_color_tab[256]; /** Convert GLshort in [-32768,32767] to GLfloat in [-1.0,1.0], texture/fb data */ -#define SHORT_TO_FLOAT_TEX(S) ((S) == -32768 ? -1.0 : (S) * (1.0F/32767.0F)) +#define SHORT_TO_FLOAT_TEX(S) ((S) == -32768 ? -1.0F : (S) * (1.0F/32767.0F)) /** Convert GLfloat in [-1.0,1.0] to GLshort in [-32768,32767], texture/fb data */ #define FLOAT_TO_SHORT_TEX(X) ( (GLint) (32767.0F * (X)) ) /** Convert GLuint in [0,4294967295] to GLfloat in [0.0,1.0] */ -#define UINT_TO_FLOAT(U) ((GLfloat) (U) * (1.0F / 4294967295.0F)) +#define UINT_TO_FLOAT(U) ((GLfloat) (U) * (1.0F / 4294967295.0)) /** Convert GLfloat in [0.0,1.0] to GLuint in [0,4294967295] */ #define FLOAT_TO_UINT(X) ((GLuint) ((X) * 4294967295.0)) /** Convert GLint in [-2147483648,2147483647] to GLfloat in [-1.0,1.0] */ -#define INT_TO_FLOAT(I) ((2.0F * (I) + 1.0F) * (1.0F/4294967294.0F)) +#define INT_TO_FLOAT(I) ((2.0F * (I) + 1.0F) * (1.0F/4294967294.0)) /** Convert GLfloat in [-1.0,1.0] to GLint in [-2147483648,2147483647] */ /* causes overflow: -#define FLOAT_TO_INT(X) ( (((GLint) (4294967294.0F * (X))) - 1) / 2 ) +#define FLOAT_TO_INT(X) ( (((GLint) (4294967294.0 * (X))) - 1) / 2 ) */ /* a close approximation: */ #define FLOAT_TO_INT(X) ( (GLint) (2147483647.0 * (X)) ) /** Convert GLint in [-2147483648,2147483647] to GLfloat in [-1.0,1.0], texture/fb data */ -#define INT_TO_FLOAT_TEX(I) ((I) == -2147483648 ? -1.0 : (I) * (1.0F/2147483647.0)) +#define INT_TO_FLOAT_TEX(I) ((I) == -2147483648 ? -1.0F : (I) * (1.0F/2147483647.0)) /** Convert GLfloat in [-1.0,1.0] to GLint in [-2147483648,2147483647], texture/fb data */ -#define FLOAT_TO_INT_TEX(X) ( (GLint) (2147483647.0F * (X)) ) +#define FLOAT_TO_INT_TEX(X) ( (GLint) (2147483647.0 * (X)) ) #define BYTE_TO_UBYTE(b) ((GLubyte) ((b) < 0 ? 0 : (GLubyte) (b))) @@ -120,7 +120,7 @@ extern GLfloat _mesa_ubyte_to_float_color_tab[256]; #define INT_TO_USHORT(i) ((i) < 0 ? 0 : ((GLushort) ((i) >> 15))) #define UINT_TO_USHORT(i) ((i) < 0 ? 0 : ((GLushort) ((i) >> 16))) #define UNCLAMPED_FLOAT_TO_USHORT(us, f) \ - us = ( (GLushort) IROUND( CLAMP((f), 0.0, 1.0) * 65535.0F) ) + us = ( (GLushort) IROUND( CLAMP((f), 0.0F, 1.0F) * 65535.0F) ) #define CLAMPED_FLOAT_TO_USHORT(us, f) \ us = ( (GLushort) IROUND( (f) * 65535.0F) ) diff --git a/src/mesa/main/mfeatures.h b/src/mesa/main/mfeatures.h index 62c3ead3e1..ef973314e3 100644 --- a/src/mesa/main/mfeatures.h +++ b/src/mesa/main/mfeatures.h @@ -61,6 +61,7 @@ #define FEATURE_ARB_occlusion_query _HAVE_FULL_GL #define FEATURE_ARB_fragment_program _HAVE_FULL_GL #define FEATURE_ARB_framebuffer_object _HAVE_FULL_GL +#define FEATURE_ARB_map_buffer_range _HAVE_FULL_GL #define FEATURE_ARB_pixel_buffer_object _HAVE_FULL_GL #define FEATURE_ARB_vertex_buffer_object _HAVE_FULL_GL #define FEATURE_ARB_vertex_program _HAVE_FULL_GL diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c index 872982fa43..3dca09d9f2 100644 --- a/src/mesa/main/mipmap.c +++ b/src/mesa/main/mipmap.c @@ -1601,9 +1601,6 @@ _mesa_generate_mipmap(GLcontext *ctx, GLenum target, return; } - if (dstImage->ImageOffsets) - _mesa_free(dstImage->ImageOffsets); - /* Free old image data */ if (dstImage->Data) ctx->Driver.FreeTexImageData(ctx, dstImage); diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 46020eb210..d7e7d2ac21 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -770,6 +770,7 @@ struct gl_light_attrib GLboolean Enabled; /**< Lighting enabled flag */ GLenum ShadeModel; /**< GL_FLAT or GL_SMOOTH */ + GLenum ProvokingVertex; /**< GL_EXT_provoking_vertex */ GLenum ColorMaterialFace; /**< GL_FRONT, BACK or FRONT_AND_BACK */ GLenum ColorMaterialMode; /**< GL_AMBIENT, GL_DIFFUSE, etc */ GLbitfield ColorMaterialBitmask; /**< bitmask formed from Face and Mode */ @@ -1503,7 +1504,7 @@ struct gl_buffer_object GLubyte *Data; /**< Location of storage either in RAM or VRAM. */ /** Fields describing a mapped buffer */ /*@{*/ - GLenum Access; /**< GL_READ_ONLY_ARB, GL_WRITE_ONLY_ARB, etc. */ + GLbitfield AccessFlags; /**< Mask of GL_MAP_x_BIT flags */ GLvoid *Pointer; /**< User-space address of mapping */ GLintptr Offset; /**< Mapped offset */ GLsizeiptr Length; /**< Mapped length */ @@ -1562,6 +1563,7 @@ struct gl_array_object GLint RefCount; _glthread_Mutex Mutex; + GLboolean VBOonly; /**< require all arrays to live in VBOs? */ /** Conventional vertex arrays */ /*@{*/ @@ -1607,6 +1609,9 @@ struct gl_array_attrib /** The default vertex array object */ struct gl_array_object *DefaultArrayObj; + /** Array objects (GL_ARB/APPLE_vertex_array_object) */ + struct _mesa_HashTable *Objects; + GLint ActiveTexture; /**< Client Active Texture */ GLuint LockFirst; /**< GL_EXT_compiled_vertex_array */ GLuint LockCount; /**< GL_EXT_compiled_vertex_array */ @@ -2048,6 +2053,7 @@ struct gl_shader_state struct gl_shader_program *CurrentProgram; /**< The user-bound program */ /** Driver-selectable options: */ GLboolean EmitHighLevelInstructions; /**< IF/ELSE/ENDIF vs. BRA, etc. */ + GLboolean EmitContReturn; /**< Emit CONT/RET opcodes? */ GLboolean EmitCondCodes; /**< Use condition codes? */ GLboolean EmitComments; /**< Annotated instructions */ void *MemPool; @@ -2118,9 +2124,6 @@ struct gl_shared_state struct _mesa_HashTable *FrameBuffers; #endif - /** Objects associated with the GL_APPLE_vertex_array_object extension. */ - struct _mesa_HashTable *ArrayObjects; - void *DriverData; /**< Device driver shared state */ }; @@ -2424,6 +2427,9 @@ struct gl_constants GLuint MaxVarying; /**< Number of float[4] varying parameters */ GLbitfield SupportedBumpUnits; /**> units supporting GL_ATI_envmap_bumpmap as targets */ + + /**< GL_EXT_provoking_vertex */ + GLboolean QuadsFollowProvokingVertexConvention; }; @@ -2443,6 +2449,7 @@ struct gl_extensions GLboolean ARB_framebuffer_object; GLboolean ARB_half_float_pixel; GLboolean ARB_imaging; + GLboolean ARB_map_buffer_range; GLboolean ARB_multisample; GLboolean ARB_multitexture; GLboolean ARB_occlusion_query; @@ -2462,6 +2469,7 @@ struct gl_extensions GLboolean ARB_texture_mirrored_repeat; GLboolean ARB_texture_non_power_of_two; GLboolean ARB_transpose_matrix; + GLboolean ARB_vertex_array_object; GLboolean ARB_vertex_buffer_object; GLboolean ARB_vertex_program; GLboolean ARB_vertex_shader; @@ -2493,6 +2501,7 @@ struct gl_extensions GLboolean EXT_pixel_buffer_object; GLboolean EXT_point_parameters; GLboolean EXT_polygon_offset; + GLboolean EXT_provoking_vertex; GLboolean EXT_rescale_normal; GLboolean EXT_shadow_funcs; GLboolean EXT_secondary_color; @@ -2825,6 +2834,13 @@ struct gl_dlist_state GLubyte ActiveEdgeFlag; GLboolean CurrentEdgeFlag; + + struct { + /* State known to have been set by the currently-compiling display + * list. Used to eliminate some redundant state changes. + */ + GLenum ShadeModel; + } Current; }; @@ -2973,6 +2989,8 @@ struct __GLcontextRec GLenum RenderMode; /**< either GL_RENDER, GL_SELECT, GL_FEEDBACK */ GLbitfield NewState; /**< bitwise-or of _NEW_* flags */ + GLboolean ViewportInitialized; /**< has viewport size been initialized? */ + GLbitfield varying_vp_inputs; /**< mask of VERT_BIT_* flags */ /** \name Derived state */ diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c index c25b31af02..a73c6e0508 100644 --- a/src/mesa/main/queryobj.c +++ b/src/mesa/main/queryobj.c @@ -38,7 +38,7 @@ * \param id - the new object's ID * \return pointer to new query_object object or NULL if out of memory. */ -struct gl_query_object * +static struct gl_query_object * _mesa_new_query_object(GLcontext *ctx, GLuint id) { struct gl_query_object *q = MALLOC_STRUCT(gl_query_object); @@ -57,7 +57,7 @@ _mesa_new_query_object(GLcontext *ctx, GLuint id) * Begin a query. Software driver fallback. * Called via ctx->Driver.BeginQuery(). */ -void +static void _mesa_begin_query(GLcontext *ctx, struct gl_query_object *q) { /* no-op */ @@ -68,7 +68,7 @@ _mesa_begin_query(GLcontext *ctx, struct gl_query_object *q) * End a query. Software driver fallback. * Called via ctx->Driver.EndQuery(). */ -void +static void _mesa_end_query(GLcontext *ctx, struct gl_query_object *q) { q->Ready = GL_TRUE; @@ -79,7 +79,7 @@ _mesa_end_query(GLcontext *ctx, struct gl_query_object *q) * Wait for query to complete. Software driver fallback. * Called via ctx->Driver.WaitQuery(). */ -void +static void _mesa_wait_query(GLcontext *ctx, struct gl_query_object *q) { /* For software drivers, _mesa_end_query() should have completed the query. @@ -94,7 +94,7 @@ _mesa_wait_query(GLcontext *ctx, struct gl_query_object *q) * Check if a query results are ready. Software driver fallback. * Called via ctx->Driver.CheckQuery(). */ -void +static void _mesa_check_query(GLcontext *ctx, struct gl_query_object *q) { /* No-op for sw rendering. @@ -107,7 +107,7 @@ _mesa_check_query(GLcontext *ctx, struct gl_query_object *q) * Delete a query object. Called via ctx->Driver.DeleteQuery(). * Not removed from hash table here. */ -void +static void _mesa_delete_query(GLcontext *ctx, struct gl_query_object *q) { _mesa_free(q); @@ -123,6 +123,18 @@ lookup_query_object(GLcontext *ctx, GLuint id) +void +_mesa_init_query_object_functions(struct dd_function_table *driver) +{ + driver->NewQueryObject = _mesa_new_query_object; + driver->DeleteQuery = _mesa_delete_query; + driver->BeginQuery = _mesa_begin_query; + driver->EndQuery = _mesa_end_query; + driver->WaitQuery = _mesa_wait_query; + driver->CheckQuery = _mesa_check_query; +} + + void GLAPIENTRY _mesa_GenQueriesARB(GLsizei n, GLuint *ids) { diff --git a/src/mesa/main/queryobj.h b/src/mesa/main/queryobj.h index bc02b65b54..ee775ef959 100644 --- a/src/mesa/main/queryobj.h +++ b/src/mesa/main/queryobj.h @@ -27,9 +27,6 @@ #define OCCLUDE_H -extern struct gl_query_object * -_mesa_new_query_object(GLcontext *ctx, GLuint id); - extern void _mesa_init_query(GLcontext *ctx); @@ -37,19 +34,7 @@ extern void _mesa_free_query_data(GLcontext *ctx); extern void -_mesa_delete_query(GLcontext *ctx, struct gl_query_object *q); - -extern void -_mesa_begin_query(GLcontext *ctx, struct gl_query_object *q); - -extern void -_mesa_end_query(GLcontext *ctx, struct gl_query_object *q); - -extern void -_mesa_wait_query(GLcontext *ctx, struct gl_query_object *q); - -extern void -_mesa_check_query(GLcontext *ctx, struct gl_query_object *q); +_mesa_init_query_object_functions(struct dd_function_table *driver); extern void GLAPIENTRY diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index 759883743d..ad6e6ce7cd 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -97,10 +97,8 @@ _mesa_alloc_shared_state(GLcontext *ctx) * it never gets deleted. * XXX with recent/improved refcounting this may not longer be needed. */ - shared->NullBufferObj = _mesa_new_buffer_object(ctx, 0, 0); - shared->NullBufferObj->RefCount = 1000; - - shared->ArrayObjects = _mesa_NewHashTable(); + shared->NullBufferObj = ctx->Driver.NewBufferObject(ctx, 0, 0); + shared->NullBufferObj->RefCount = 1000 * 1000 * 1000; /* Create default texture objects */ for (i = 0; i < NUM_TEXTURE_TARGETS; i++) { @@ -207,18 +205,6 @@ delete_bufferobj_cb(GLuint id, void *data, void *userData) /** - * Callback for deleting an array object. Called by _mesa_HashDeleteAll(). - */ -static void -delete_arrayobj_cb(GLuint id, void *data, void *userData) -{ - struct gl_array_object *arrayObj = (struct gl_array_object *) data; - GLcontext *ctx = (GLcontext *) userData; - _mesa_delete_array_object(ctx, arrayObj); -} - - -/** * Callback for freeing shader program data. Call it before delete_shader_cb * to avoid memory access error. */ @@ -320,9 +306,6 @@ _mesa_free_shared_state(GLcontext *ctx, struct gl_shared_state *shared) _mesa_HashDeleteAll(shared->Programs, delete_program_cb, ctx); _mesa_DeleteHashTable(shared->Programs); - _mesa_HashDeleteAll(shared->ArrayObjects, delete_arrayobj_cb, ctx); - _mesa_DeleteHashTable(shared->ArrayObjects); - #if FEATURE_ARB_vertex_program _mesa_reference_vertprog(ctx, &shared->DefaultVertexProgram, NULL); #endif @@ -350,7 +333,7 @@ _mesa_free_shared_state(GLcontext *ctx, struct gl_shared_state *shared) #endif #if FEATURE_ARB_vertex_buffer_object - _mesa_delete_buffer_object(ctx, shared->NullBufferObj); + ctx->Driver.DeleteBuffer(ctx, shared->NullBufferObj); #endif /* diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index 7b41b8f4da..9ba131bee5 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -75,6 +75,16 @@ compute_max_element(struct gl_client_array *array) { assert(array->Enabled); if (array->BufferObj->Name) { + GLsizeiptrARB offset = (GLsizeiptrARB) array->Ptr; + GLsizeiptrARB obj_size = (GLsizeiptrARB) array->BufferObj->Size; + + if (offset < obj_size) { + array->_MaxElement = (obj_size - offset + + array->StrideB - + array->_ElementSize) / array->StrideB; + } else { + array->_MaxElement = 0; + } /* Compute the max element we can access in the VBO without going * out of bounds. */ @@ -537,7 +547,7 @@ _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 | _DD_NEW_SEPARATE_SPECULAR | - _NEW_ARRAY); + _NEW_ARRAY | _NEW_LIGHT | _NEW_POINT | _NEW_RENDERMODE); } if (ctx->VertexProgram._MaintainTnlProgram) { prog_flags |= (_NEW_ARRAY | _NEW_TEXTURE | _NEW_TEXTURE_MATRIX | diff --git a/src/mesa/main/texenv.c b/src/mesa/main/texenv.c index 4d511f2f7e..4c04a7ed37 100644 --- a/src/mesa/main/texenv.c +++ b/src/mesa/main/texenv.c @@ -959,7 +959,7 @@ void GLAPIENTRY _mesa_GetTexBumpParameterivATI( GLenum pname, GLint *param ) { const struct gl_texture_unit *texUnit; - GLint i; + GLuint i; GLint temp = 0; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -1006,7 +1006,7 @@ void GLAPIENTRY _mesa_GetTexBumpParameterfvATI( GLenum pname, GLfloat *param ) { const struct gl_texture_unit *texUnit; - GLint i; + GLuint i; GLint temp = 0; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c index a70d069bd9..a3f1246c98 100644 --- a/src/mesa/main/texenvprogram.c +++ b/src/mesa/main/texenvprogram.c @@ -261,6 +261,7 @@ static GLuint translate_tex_src_bit( GLbitfield bit ) */ static GLbitfield get_fp_input_mask( GLcontext *ctx ) { + /* _NEW_PROGRAM */ const GLboolean vertexShader = (ctx->Shader.CurrentProgram && ctx->Shader.CurrentProgram->VertexProgram); const GLboolean vertexProgram = ctx->VertexProgram._Enabled; @@ -274,22 +275,26 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) fp_inputs = ~0; } else if (ctx->RenderMode == GL_FEEDBACK) { + /* _NEW_RENDERMODE */ fp_inputs = (FRAG_BIT_COL0 | FRAG_BIT_TEX0); } else if (!(vertexProgram || vertexShader) || !ctx->VertexProgram._Current) { /* Fixed function vertex logic */ + /* _NEW_ARRAY */ GLbitfield varying_inputs = ctx->varying_vp_inputs; /* These get generated in the setup routine regardless of the * vertex program: */ + /* _NEW_POINT */ if (ctx->Point.PointSprite) varying_inputs |= FRAG_BITS_TEX_ANY; /* First look at what values may be computed by the generated * vertex program: */ + /* _NEW_LIGHT */ if (ctx->Light.Enabled) { fp_inputs |= FRAG_BIT_COL0; @@ -297,6 +302,7 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) fp_inputs |= FRAG_BIT_COL1; } + /* _NEW_TEXTURE */ fp_inputs |= (ctx->Texture._TexGenEnabled | ctx->Texture._TexMatEnabled) << FRAG_ATTRIB_TEX0; @@ -329,6 +335,7 @@ static GLbitfield get_fp_input_mask( GLcontext *ctx ) /* These get generated in the setup routine regardless of the * vertex program: */ + /* _NEW_POINT */ if (ctx->Point.PointSprite) vp_outputs |= FRAG_BITS_TEX_ANY; @@ -355,6 +362,7 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) memset(key, 0, sizeof(*key)); + /* _NEW_TEXTURE */ for (i = 0; i < ctx->Const.MaxTextureUnits; i++) { const struct gl_texture_unit *texUnit = &ctx->Texture.Unit[i]; GLenum format; @@ -408,11 +416,13 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) } } + /* _DD_NEW_SEPARATE_SPECULAR */ if (ctx->_TriangleCaps & DD_SEPARATE_SPECULAR) { key->separate_specular = 1; inputs_referenced |= FRAG_BIT_COL1; } + /* _NEW_FOG */ if (ctx->Fog.Enabled) { key->fog_enabled = 1; key->fog_mode = translate_fog_mode(ctx->Fog.Mode); @@ -877,6 +887,7 @@ static struct ureg get_source( struct texenv_fragment_program *p, default: assert(0); + return undef; } } diff --git a/src/mesa/main/texformat_tmp.h b/src/mesa/main/texformat_tmp.h index f3b2fb9c9c..eb160deff9 100644 --- a/src/mesa/main/texformat_tmp.h +++ b/src/mesa/main/texformat_tmp.h @@ -1347,13 +1347,13 @@ static void FETCH(f_ycbcr)( const struct gl_texture_image *texImage, const GLubyte cb = *src0 & 0xff; /* chroma U */ const GLubyte y1 = (*src1 >> 8) & 0xff; /* luminance */ const GLubyte cr = *src1 & 0xff; /* chroma V */ - const GLfloat y = (i & 1) ? y1 : y0; /* choose even/odd luminance */ - GLfloat r = 1.164 * (y - 16) + 1.596 * (cr - 128); - GLfloat g = 1.164 * (y - 16) - 0.813 * (cr - 128) - 0.391 * (cb - 128); - GLfloat b = 1.164 * (y - 16) + 2.018 * (cb - 128); - r *= (1.0 / 255.0F); - g *= (1.0 / 255.0F); - b *= (1.0 / 255.0F); + const GLubyte y = (i & 1) ? y1 : y0; /* choose even/odd luminance */ + GLfloat r = 1.164F * (y - 16) + 1.596F * (cr - 128); + GLfloat g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128); + GLfloat b = 1.164F * (y - 16) + 2.018F * (cb - 128); + r *= (1.0F / 255.0F); + g *= (1.0F / 255.0F); + b *= (1.0F / 255.0F); texel[RCOMP] = CLAMP(r, 0.0F, 1.0F); texel[GCOMP] = CLAMP(g, 0.0F, 1.0F); texel[BCOMP] = CLAMP(b, 0.0F, 1.0F); @@ -1388,13 +1388,13 @@ static void FETCH(f_ycbcr_rev)( const struct gl_texture_image *texImage, const GLubyte cr = (*src0 >> 8) & 0xff; /* chroma V */ const GLubyte y1 = *src1 & 0xff; /* luminance */ const GLubyte cb = (*src1 >> 8) & 0xff; /* chroma U */ - const GLfloat y = (i & 1) ? y1 : y0; /* choose even/odd luminance */ - GLfloat r = 1.164 * (y - 16) + 1.596 * (cr - 128); - GLfloat g = 1.164 * (y - 16) - 0.813 * (cr - 128) - 0.391 * (cb - 128); - GLfloat b = 1.164 * (y - 16) + 2.018 * (cb - 128); - r *= (1.0 / 255.0F); - g *= (1.0 / 255.0F); - b *= (1.0 / 255.0F); + const GLubyte y = (i & 1) ? y1 : y0; /* choose even/odd luminance */ + GLfloat r = 1.164F * (y - 16) + 1.596F * (cr - 128); + GLfloat g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128); + GLfloat b = 1.164F * (y - 16) + 2.018F * (cb - 128); + r *= (1.0F / 255.0F); + g *= (1.0F / 255.0F); + b *= (1.0F / 255.0F); texel[RCOMP] = CLAMP(r, 0.0F, 1.0F); texel[GCOMP] = CLAMP(g, 0.0F, 1.0F); texel[BCOMP] = CLAMP(b, 0.0F, 1.0F); diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c index 70a25080cb..02409d8009 100644 --- a/src/mesa/main/texgetimage.c +++ b/src/mesa/main/texgetimage.c @@ -73,11 +73,11 @@ linear_to_nonlinear(GLfloat cl) { /* can't have values outside [0, 1] */ GLfloat cs; - if (cl < 0.0031308) { - cs = 12.92 * cl; + if (cl < 0.0031308f) { + cs = 12.92f * cl; } else { - cs = 1.055 * _mesa_pow(cl, 0.41666) - 0.055; + cs = (GLfloat)(1.055 * _mesa_pow(cl, 0.41666) - 0.055); } return cs; } diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 76b46d700b..6e21066537 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -1250,6 +1250,8 @@ _mesa_init_teximage_fields(GLcontext *ctx, GLenum target, * We allocate the array for 1D/2D textures too in order to avoid special- * case code in the texstore routines. */ + if (img->ImageOffsets) + _mesa_free(img->ImageOffsets); img->ImageOffsets = (GLuint *) _mesa_malloc(depth * sizeof(GLuint)); for (i = 0; i < depth; i++) { img->ImageOffsets[i] = i * width * height; diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index 2195a334d3..d27c59381c 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -882,7 +882,8 @@ _mesa_GetTexLevelParameteriv( GLenum target, GLint level, "glGetTexLevelParameter[if]v(pname)"); break; case GL_TEXTURE_STENCIL_SIZE_EXT: - if (ctx->Extensions.EXT_packed_depth_stencil) { + if (ctx->Extensions.EXT_packed_depth_stencil || + ctx->Extensions.ARB_framebuffer_object) { *params = img->TexFormat->StencilBits; } else { diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index f04c137c6d..3d5b8faecf 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -30,6 +30,7 @@ #include "context.h" #include "enable.h" #include "enums.h" +#include "hash.h" #include "mtypes.h" #include "varray.h" #include "arrayobj.h" @@ -38,6 +39,8 @@ /** * Set the fields of a vertex array. + * Also do an error check for GL_ARB_vertex_array_object: check that + * all arrays reside in VBOs when using a vertex array object. * * \param array the array to update * \param dirtyBit which bit to set in ctx->Array.NewState for this array @@ -48,14 +51,26 @@ * \param stride stride between elements, in elements * \param normalized are integer types converted to floats in [-1, 1]? * \param ptr the address (or offset inside VBO) of the array data + * \return GL_TRUE if no error, GL_FALSE if error */ -static void +static GLboolean update_array(GLcontext *ctx, struct gl_client_array *array, GLbitfield dirtyBit, GLsizei elementSize, GLint size, GLenum type, GLenum format, GLsizei stride, GLboolean normalized, const GLvoid *ptr) { ASSERT(format == GL_RGBA || format == GL_BGRA); + + if (ctx->Array.ArrayObj->VBOonly && + ctx->Array.ArrayBufferObj->Name == 0) { + /* GL_ARB_vertex_array_object requires that all arrays reside in VBOs. + * Generate GL_INVALID_OPERATION if that's not true. + */ + _mesa_error(ctx, GL_INVALID_OPERATION, + "glVertex/Normal/EtcPointer(non-VBO array)"); + return GL_FALSE; + } + array->Size = size; array->Type = type; array->Format = format; @@ -70,6 +85,8 @@ update_array(GLcontext *ctx, struct gl_client_array *array, ctx->NewState |= _NEW_ARRAY; ctx->Array.NewState |= dirtyBit; + + return GL_TRUE; } @@ -122,8 +139,9 @@ _mesa_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) return; } - update_array(ctx, &ctx->Array.ArrayObj->Vertex, _NEW_ARRAY_VERTEX, - elementSize, size, type, GL_RGBA, stride, GL_FALSE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->Vertex, _NEW_ARRAY_VERTEX, + elementSize, size, type, GL_RGBA, stride, GL_FALSE, ptr)) + return; if (ctx->Driver.VertexPointer) ctx->Driver.VertexPointer( ctx, size, type, stride, ptr ); @@ -172,8 +190,9 @@ _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) return; } - update_array(ctx, &ctx->Array.ArrayObj->Normal, _NEW_ARRAY_NORMAL, - elementSize, 3, type, GL_RGBA, stride, GL_TRUE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->Normal, _NEW_ARRAY_NORMAL, + elementSize, 3, type, GL_RGBA, stride, GL_TRUE, ptr)) + return; if (ctx->Driver.NormalPointer) ctx->Driver.NormalPointer( ctx, type, stride, ptr ); @@ -250,8 +269,9 @@ _mesa_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) return; } - update_array(ctx, &ctx->Array.ArrayObj->Color, _NEW_ARRAY_COLOR0, - elementSize, size, type, format, stride, GL_TRUE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->Color, _NEW_ARRAY_COLOR0, + elementSize, size, type, format, stride, GL_TRUE, ptr)) + return; if (ctx->Driver.ColorPointer) ctx->Driver.ColorPointer( ctx, size, type, stride, ptr ); @@ -282,8 +302,9 @@ _mesa_FogCoordPointerEXT(GLenum type, GLsizei stride, const GLvoid *ptr) return; } - update_array(ctx, &ctx->Array.ArrayObj->FogCoord, _NEW_ARRAY_FOGCOORD, - elementSize, 1, type, GL_RGBA, stride, GL_FALSE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->FogCoord, _NEW_ARRAY_FOGCOORD, + elementSize, 1, type, GL_RGBA, stride, GL_FALSE, ptr)) + return; if (ctx->Driver.FogCoordPointer) ctx->Driver.FogCoordPointer( ctx, type, stride, ptr ); @@ -323,8 +344,9 @@ _mesa_IndexPointer(GLenum type, GLsizei stride, const GLvoid *ptr) return; } - update_array(ctx, &ctx->Array.ArrayObj->Index, _NEW_ARRAY_INDEX, - elementSize, 1, type, GL_RGBA, stride, GL_FALSE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->Index, _NEW_ARRAY_INDEX, + elementSize, 1, type, GL_RGBA, stride, GL_FALSE, ptr)) + return; if (ctx->Driver.IndexPointer) ctx->Driver.IndexPointer( ctx, type, stride, ptr ); @@ -397,8 +419,10 @@ _mesa_SecondaryColorPointerEXT(GLint size, GLenum type, return; } - update_array(ctx, &ctx->Array.ArrayObj->SecondaryColor, _NEW_ARRAY_COLOR1, - elementSize, size, type, format, stride, GL_TRUE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->SecondaryColor, + _NEW_ARRAY_COLOR1, elementSize, size, type, + format, stride, GL_TRUE, ptr)) + return; if (ctx->Driver.SecondaryColorPointer) ctx->Driver.SecondaryColorPointer( ctx, size, type, stride, ptr ); @@ -456,9 +480,10 @@ _mesa_TexCoordPointer(GLint size, GLenum type, GLsizei stride, return; } - update_array(ctx, &ctx->Array.ArrayObj->TexCoord[unit], - _NEW_ARRAY_TEXCOORD(unit), - elementSize, size, type, GL_RGBA, stride, GL_FALSE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->TexCoord[unit], + _NEW_ARRAY_TEXCOORD(unit), + elementSize, size, type, GL_RGBA, stride, GL_FALSE, ptr)) + return; if (ctx->Driver.TexCoordPointer) ctx->Driver.TexCoordPointer( ctx, size, type, stride, ptr ); @@ -476,9 +501,10 @@ _mesa_EdgeFlagPointer(GLsizei stride, const GLvoid *ptr) return; } - update_array(ctx, &ctx->Array.ArrayObj->EdgeFlag, _NEW_ARRAY_EDGEFLAG, - sizeof(GLboolean), 1, GL_UNSIGNED_BYTE, GL_RGBA, - stride, GL_FALSE, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->EdgeFlag, _NEW_ARRAY_EDGEFLAG, + sizeof(GLboolean), 1, GL_UNSIGNED_BYTE, GL_RGBA, + stride, GL_FALSE, ptr)) + return; if (ctx->Driver.EdgeFlagPointer) ctx->Driver.EdgeFlagPointer( ctx, stride, ptr ); @@ -588,9 +614,10 @@ _mesa_VertexAttribPointerNV(GLuint index, GLint size, GLenum type, return; } - update_array(ctx, &ctx->Array.ArrayObj->VertexAttrib[index], - _NEW_ARRAY_ATTRIB(index), - elementSize, size, type, format, stride, normalized, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->VertexAttrib[index], + _NEW_ARRAY_ATTRIB(index), + elementSize, size, type, format, stride, normalized, ptr)) + return; if (ctx->Driver.VertexAttribPointer) ctx->Driver.VertexAttribPointer( ctx, index, size, type, stride, ptr ); @@ -687,9 +714,10 @@ _mesa_VertexAttribPointerARB(GLuint index, GLint size, GLenum type, return; } - update_array(ctx, &ctx->Array.ArrayObj->VertexAttrib[index], - _NEW_ARRAY_ATTRIB(index), - elementSize, size, type, format, stride, normalized, ptr); + if (!update_array(ctx, &ctx->Array.ArrayObj->VertexAttrib[index], + _NEW_ARRAY_ATTRIB(index), + elementSize, size, type, format, stride, normalized, ptr)) + return; if (ctx->Driver.VertexAttribPointer) ctx->Driver.VertexAttribPointer(ctx, index, size, type, stride, ptr); @@ -1120,4 +1148,29 @@ _mesa_init_varray(GLcontext *ctx) _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj, ctx->Array.DefaultArrayObj); ctx->Array.ActiveTexture = 0; /* GL_ARB_multitexture */ + + ctx->Array.Objects = _mesa_NewHashTable(); +} + + +/** + * Callback for deleting an array object. Called by _mesa_HashDeleteAll(). + */ +static void +delete_arrayobj_cb(GLuint id, void *data, void *userData) +{ + struct gl_array_object *arrayObj = (struct gl_array_object *) data; + GLcontext *ctx = (GLcontext *) userData; + _mesa_delete_array_object(ctx, arrayObj); +} + + +/** + * Free vertex array state for given context. + */ +void +_mesa_free_varray_data(GLcontext *ctx) +{ + _mesa_HashDeleteAll(ctx->Array.Objects, delete_arrayobj_cb, ctx); + _mesa_DeleteHashTable(ctx->Array.Objects); } diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h index 46cc3ee342..d4d505ae04 100644 --- a/src/mesa/main/varray.h +++ b/src/mesa/main/varray.h @@ -166,10 +166,14 @@ _mesa_print_arrays(GLcontext *ctx); extern void _mesa_init_varray( GLcontext * ctx ); +extern void +_mesa_free_varray_data(GLcontext *ctx); + #else /** No-op */ #define _mesa_init_varray( c ) ((void)0) +#define _mesa_free_varray_data( c ) ((void)0) #endif diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c index ead856d32c..50e0402d27 100644 --- a/src/mesa/main/viewport.c +++ b/src/mesa/main/viewport.c @@ -73,8 +73,8 @@ _mesa_set_viewport(GLcontext *ctx, GLint x, GLint y, } /* clamp width and height to the implementation dependent range */ - width = CLAMP(width, 1, (GLsizei) ctx->Const.MaxViewportWidth); - height = CLAMP(height, 1, (GLsizei) ctx->Const.MaxViewportHeight); + width = MIN2(width, (GLsizei) ctx->Const.MaxViewportWidth); + height = MIN2(height, (GLsizei) ctx->Const.MaxViewportHeight); ctx->Viewport.X = x; ctx->Viewport.Width = width; |