I have been doing some processing to update my GLIntercept tool with the newer extensions, and decided to use the extension listing from existing tools.
I started with glLoader - it seems to have been manually created from the registry files - but found a lot of bugs in it (I would highly recommend NOT using this extension loader for this reason)
I then switched to alfonse’s XML file - generated from the spec files. I did the process and just for kicks I am comparing the results with glLoader.
It seems that there are some inconsistency with the registery and spec files:
1)// Missing:
MAX_DEBUG_MESSAGE_LENGTH_AMD 0x9143
- // First parameter is const in extension - but spec file states it is an out paramter?
vdpauSurfaceNV VDPAURegisterVideoSurfaceNV (const void *vdpSurface, enum target, sizei numTextureNames, const uint *textureNames);
vdpauSurfaceNV VDPAURegisterOutputSurfaceNV (const void *vdpSurface, enum target, sizei numTextureNames, const uint *textureNames);
3)//Registery/Spec disagree on naming:
MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A
MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV 0x8C8A,
4)// uint/sizei difference Probably should be sizei?
void glTransformFeedbackAttribsNV(GLuint count, const GLint * attribs, GLenum bufferMode);
void glTransformFeedbackAttribsNV(GLsizei count, const GLint * attribs, GLenum bufferMode);
5)// deprecated but missing from spec file
GL_RGBA_DXT5_S3TC = 0x83A4,
GL_RGBA4_DXT5_S3TC = 0x83A5,
6)// Ext registry says:
GL_PACK_RESAMPLE_SGIX = 0x842E,
GL_UNPACK_RESAMPLE_SGIX = 0x842F,
GL_RESAMPLE_REPLICATE_SGIX = 0x8433,
GL_RESAMPLE_ZERO_FILL_SGIX = 0x8434,
Spec file says:
GL_PACK_RESAMPLE_SGIX = 0x842C,
GL_UNPACK_RESAMPLE_SGIX = 0x842D,
GL_RESAMPLE_REPLICATE_SGIX = 0x842E,
GL_RESAMPLE_ZERO_FILL_SGIX = 0x842F,
-
//uint/sizei difference
void glVertexWeightPointerEXT(GLsizei size, GLenum type, GLsizei stride, const GLvoid * pointer);
void glVertexWeightPointerEXT(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); -
//Missing from spec file:
MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F -
//Reg/spec file differences
RGBA_FLOAT_MODE_ATI 0x8820
TYPE_RGBA_FLOAT_ATI 0x8820 -
Missing from spec file, in reg file:
void glGetPixelTransformParameterivEXT(GLenum target, GLenum pname, const GLint* params);
void glGetPixelTransformParameterfvEXT(GLenum target, GLenum pname, const GLfloat* params);
I am only about 50% done with the (slow) compare - but just thought I would list the ones I have found so far.