You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1645 lines
157 KiB
C

typedef void (*GL_DRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
typedef void (*GL_TEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_ACTIVETEXTUREPROC) (GLenum texture);
typedef void (*GL_SAMPLECOVERAGEPROC) (GLfloat value, GLboolean invert);
typedef void (*GL_COMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_GETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, void *img);
typedef void (*GL_CLIENTACTIVETEXTUREPROC) (GLenum texture);
typedef void (*GL_MULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
typedef void (*GL_MULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
typedef void (*GL_MULTITEXCOORD1FPROC) (GLenum target, GLfloat s);
typedef void (*GL_MULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);
typedef void (*GL_MULTITEXCOORD1IPROC) (GLenum target, GLint s);
typedef void (*GL_MULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);
typedef void (*GL_MULTITEXCOORD1SPROC) (GLenum target, GLshort s);
typedef void (*GL_MULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);
typedef void (*GL_MULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);
typedef void (*GL_MULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);
typedef void (*GL_MULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
typedef void (*GL_MULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);
typedef void (*GL_MULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);
typedef void (*GL_MULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);
typedef void (*GL_MULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);
typedef void (*GL_MULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);
typedef void (*GL_MULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
typedef void (*GL_MULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);
typedef void (*GL_MULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
typedef void (*GL_MULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);
typedef void (*GL_MULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);
typedef void (*GL_MULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);
typedef void (*GL_MULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
typedef void (*GL_MULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);
typedef void (*GL_MULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
typedef void (*GL_MULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);
typedef void (*GL_MULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
typedef void (*GL_MULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);
typedef void (*GL_MULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
typedef void (*GL_MULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);
typedef void (*GL_MULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
typedef void (*GL_MULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);
typedef void (*GL_LOADTRANSPOSEMATRIXFPROC) (const GLfloat *m);
typedef void (*GL_LOADTRANSPOSEMATRIXDPROC) (const GLdouble *m);
typedef void (*GL_MULTTRANSPOSEMATRIXFPROC) (const GLfloat *m);
typedef void (*GL_MULTTRANSPOSEMATRIXDPROC) (const GLdouble *m);
typedef void (*GL_BLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
typedef void (*GL_MULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
typedef void (*GL_MULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount);
typedef void (*GL_POINTPARAMETERFPROC) (GLenum pname, GLfloat param);
typedef void (*GL_POINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
typedef void (*GL_POINTPARAMETERIPROC) (GLenum pname, GLint param);
typedef void (*GL_POINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
typedef void (*GL_FOGCOORDFPROC) (GLfloat coord);
typedef void (*GL_FOGCOORDFVPROC) (const GLfloat *coord);
typedef void (*GL_FOGCOORDDPROC) (GLdouble coord);
typedef void (*GL_FOGCOORDDVPROC) (const GLdouble *coord);
typedef void (*GL_FOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_SECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);
typedef void (*GL_SECONDARYCOLOR3BVPROC) (const GLbyte *v);
typedef void (*GL_SECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);
typedef void (*GL_SECONDARYCOLOR3DVPROC) (const GLdouble *v);
typedef void (*GL_SECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);
typedef void (*GL_SECONDARYCOLOR3FVPROC) (const GLfloat *v);
typedef void (*GL_SECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);
typedef void (*GL_SECONDARYCOLOR3IVPROC) (const GLint *v);
typedef void (*GL_SECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);
typedef void (*GL_SECONDARYCOLOR3SVPROC) (const GLshort *v);
typedef void (*GL_SECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);
typedef void (*GL_SECONDARYCOLOR3UBVPROC) (const GLubyte *v);
typedef void (*GL_SECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);
typedef void (*GL_SECONDARYCOLOR3UIVPROC) (const GLuint *v);
typedef void (*GL_SECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);
typedef void (*GL_SECONDARYCOLOR3USVPROC) (const GLushort *v);
typedef void (*GL_SECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_WINDOWPOS2DPROC) (GLdouble x, GLdouble y);
typedef void (*GL_WINDOWPOS2DVPROC) (const GLdouble *v);
typedef void (*GL_WINDOWPOS2FPROC) (GLfloat x, GLfloat y);
typedef void (*GL_WINDOWPOS2FVPROC) (const GLfloat *v);
typedef void (*GL_WINDOWPOS2IPROC) (GLint x, GLint y);
typedef void (*GL_WINDOWPOS2IVPROC) (const GLint *v);
typedef void (*GL_WINDOWPOS2SPROC) (GLshort x, GLshort y);
typedef void (*GL_WINDOWPOS2SVPROC) (const GLshort *v);
typedef void (*GL_WINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_WINDOWPOS3DVPROC) (const GLdouble *v);
typedef void (*GL_WINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_WINDOWPOS3FVPROC) (const GLfloat *v);
typedef void (*GL_WINDOWPOS3IPROC) (GLint x, GLint y, GLint z);
typedef void (*GL_WINDOWPOS3IVPROC) (const GLint *v);
typedef void (*GL_WINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z);
typedef void (*GL_WINDOWPOS3SVPROC) (const GLshort *v);
typedef void (*GL_BLENDEQUATIONPROC) (GLenum mode);
typedef void (*GL_GENQUERIESPROC) (GLsizei n, GLuint *ids);
typedef void (*GL_DELETEQUERIESPROC) (GLsizei n, const GLuint *ids);
typedef GLboolean (*GL_ISQUERYPROC) (GLuint id);
typedef void (*GL_BEGINQUERYPROC) (GLenum target, GLuint id);
typedef void (*GL_ENDQUERYPROC) (GLenum target);
typedef void (*GL_GETQUERYIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint *params);
typedef void (*GL_GETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint *params);
typedef void (*GL_BINDBUFFERPROC) (GLenum target, GLuint buffer);
typedef void (*GL_DELETEBUFFERSPROC) (GLsizei n, const GLuint *buffers);
typedef void (*GL_GENBUFFERSPROC) (GLsizei n, GLuint *buffers);
typedef GLboolean (*GL_ISBUFFERPROC) (GLuint buffer);
typedef void (*GL_BUFFERDATAPROC) (GLenum target, GLsizeiptr size, const void *data, GLenum usage);
typedef void (*GL_BUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
typedef void (*GL_GETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, void *data);
typedef void *(*GL_MAPBUFFERPROC) (GLenum target, GLenum access);
typedef GLboolean (*GL_UNMAPBUFFERPROC) (GLenum target);
typedef void (*GL_GETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, void **params);
typedef void (*GL_DRAWBUFFERSPROC) (GLsizei n, const GLenum *bufs);
typedef void (*GL_STENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
typedef void (*GL_STENCILFUNCSEPARATEPROC) (GLenum face, GLenum func, GLint ref, GLuint mask);
typedef void (*GL_STENCILMASKSEPARATEPROC) (GLenum face, GLuint mask);
typedef void (*GL_ATTACHSHADERPROC) (GLuint program, GLuint shader);
typedef void (*GL_BINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar *name);
typedef void (*GL_COMPILESHADERPROC) (GLuint shader);
typedef GLuint (*GL_CREATEPROGRAMPROC) (void);
typedef GLuint (*GL_CREATESHADERPROC) (GLenum type);
typedef void (*GL_DELETEPROGRAMPROC) (GLuint program);
typedef void (*GL_DELETESHADERPROC) (GLuint shader);
typedef void (*GL_DETACHSHADERPROC) (GLuint program, GLuint shader);
typedef void (*GL_DISABLEVERTEXATTRIBARRAYPROC) (GLuint index);
typedef void (*GL_ENABLEVERTEXATTRIBARRAYPROC) (GLuint index);
typedef void (*GL_GETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
typedef void (*GL_GETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
typedef void (*GL_GETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
typedef GLint (*GL_GETATTRIBLOCATIONPROC) (GLuint program, const GLchar *name);
typedef void (*GL_GETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint *params);
typedef void (*GL_GETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
typedef void (*GL_GETSHADERIVPROC) (GLuint shader, GLenum pname, GLint *params);
typedef void (*GL_GETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
typedef void (*GL_GETSHADERSOURCEPROC) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
typedef GLint (*GL_GETUNIFORMLOCATIONPROC) (GLuint program, const GLchar *name);
typedef void (*GL_GETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat *params);
typedef void (*GL_GETUNIFORMIVPROC) (GLuint program, GLint location, GLint *params);
typedef void (*GL_GETVERTEXATTRIBDVPROC) (GLuint index, GLenum pname, GLdouble *params);
typedef void (*GL_GETVERTEXATTRIBFVPROC) (GLuint index, GLenum pname, GLfloat *params);
typedef void (*GL_GETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint *params);
typedef void (*GL_GETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, void **pointer);
typedef GLboolean (*GL_ISPROGRAMPROC) (GLuint program);
typedef GLboolean (*GL_ISSHADERPROC) (GLuint shader);
typedef void (*GL_LINKPROGRAMPROC) (GLuint program);
typedef void (*GL_SHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
typedef void (*GL_USEPROGRAMPROC) (GLuint program);
typedef void (*GL_UNIFORM1FPROC) (GLint location, GLfloat v0);
typedef void (*GL_UNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1);
typedef void (*GL_UNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
typedef void (*GL_UNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
typedef void (*GL_UNIFORM1IPROC) (GLint location, GLint v0);
typedef void (*GL_UNIFORM2IPROC) (GLint location, GLint v0, GLint v1);
typedef void (*GL_UNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2);
typedef void (*GL_UNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
typedef void (*GL_UNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_UNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_UNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_UNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_UNIFORM1IVPROC) (GLint location, GLsizei count, const GLint *value);
typedef void (*GL_UNIFORM2IVPROC) (GLint location, GLsizei count, const GLint *value);
typedef void (*GL_UNIFORM3IVPROC) (GLint location, GLsizei count, const GLint *value);
typedef void (*GL_UNIFORM4IVPROC) (GLint location, GLsizei count, const GLint *value);
typedef void (*GL_UNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_VALIDATEPROGRAMPROC) (GLuint program);
typedef void (*GL_VERTEXATTRIB1DPROC) (GLuint index, GLdouble x);
typedef void (*GL_VERTEXATTRIB1DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIB1FPROC) (GLuint index, GLfloat x);
typedef void (*GL_VERTEXATTRIB1FVPROC) (GLuint index, const GLfloat *v);
typedef void (*GL_VERTEXATTRIB1SPROC) (GLuint index, GLshort x);
typedef void (*GL_VERTEXATTRIB1SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y);
typedef void (*GL_VERTEXATTRIB2DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y);
typedef void (*GL_VERTEXATTRIB2FVPROC) (GLuint index, const GLfloat *v);
typedef void (*GL_VERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y);
typedef void (*GL_VERTEXATTRIB2SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_VERTEXATTRIB3DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_VERTEXATTRIB3FVPROC) (GLuint index, const GLfloat *v);
typedef void (*GL_VERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
typedef void (*GL_VERTEXATTRIB3SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte *v);
typedef void (*GL_VERTEXATTRIB4NIVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIB4NSVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
typedef void (*GL_VERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte *v);
typedef void (*GL_VERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort *v);
typedef void (*GL_VERTEXATTRIB4BVPROC) (GLuint index, const GLbyte *v);
typedef void (*GL_VERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_VERTEXATTRIB4DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
typedef void (*GL_VERTEXATTRIB4FVPROC) (GLuint index, const GLfloat *v);
typedef void (*GL_VERTEXATTRIB4IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
typedef void (*GL_VERTEXATTRIB4SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte *v);
typedef void (*GL_VERTEXATTRIB4UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIB4USVPROC) (GLuint index, const GLushort *v);
typedef void (*GL_VERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
typedef void (*GL_UNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_UNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_COLORMASKIPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
typedef void (*GL_GETBOOLEANI_VPROC) (GLenum target, GLuint index, GLboolean *data);
typedef void (*GL_GETINTEGERI_VPROC) (GLenum target, GLuint index, GLint *data);
typedef void (*GL_ENABLEIPROC) (GLenum target, GLuint index);
typedef void (*GL_DISABLEIPROC) (GLenum target, GLuint index);
typedef GLboolean (*GL_ISENABLEDIPROC) (GLenum target, GLuint index);
typedef void (*GL_BEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode);
typedef void (*GL_ENDTRANSFORMFEEDBACKPROC) (void);
typedef void (*GL_BINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_BINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
typedef void (*GL_TRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
typedef void (*GL_GETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
typedef void (*GL_CLAMPCOLORPROC) (GLenum target, GLenum clamp);
typedef void (*GL_BEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode);
typedef void (*GL_ENDCONDITIONALRENDERPROC) (void);
typedef void (*GL_VERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_GETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint *params);
typedef void (*GL_GETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint *params);
typedef void (*GL_VERTEXATTRIBI1IPROC) (GLuint index, GLint x);
typedef void (*GL_VERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
typedef void (*GL_VERTEXATTRIBI3IPROC) (GLuint index, GLint x, GLint y, GLint z);
typedef void (*GL_VERTEXATTRIBI4IPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
typedef void (*GL_VERTEXATTRIBI1UIPROC) (GLuint index, GLuint x);
typedef void (*GL_VERTEXATTRIBI2UIPROC) (GLuint index, GLuint x, GLuint y);
typedef void (*GL_VERTEXATTRIBI3UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
typedef void (*GL_VERTEXATTRIBI4UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
typedef void (*GL_VERTEXATTRIBI1IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI2IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI3IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI4IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte *v);
typedef void (*GL_VERTEXATTRIBI4SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte *v);
typedef void (*GL_VERTEXATTRIBI4USVPROC) (GLuint index, const GLushort *v);
typedef void (*GL_GETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint *params);
typedef void (*GL_BINDFRAGDATALOCATIONPROC) (GLuint program, GLuint color, const GLchar *name);
typedef GLint (*GL_GETFRAGDATALOCATIONPROC) (GLuint program, const GLchar *name);
typedef void (*GL_UNIFORM1UIPROC) (GLint location, GLuint v0);
typedef void (*GL_UNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1);
typedef void (*GL_UNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
typedef void (*GL_UNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
typedef void (*GL_UNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_TEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_TEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint *params);
typedef void (*GL_GETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint *params);
typedef const GLubyte *(*GL_GETSTRINGIPROC) (GLenum name, GLuint index);
typedef GLboolean (*GL_ISRENDERBUFFERPROC) (GLuint renderbuffer);
typedef void (*GL_BINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
typedef void (*GL_DELETERENDERBUFFERSPROC) (GLsizei n, const GLuint *renderbuffers);
typedef void (*GL_GENRENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
typedef void (*GL_RENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_GETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef GLboolean (*GL_ISFRAMEBUFFERPROC) (GLuint framebuffer);
typedef void (*GL_BINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
typedef void (*GL_DELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint *framebuffers);
typedef void (*GL_GENFRAMEBUFFERSPROC) (GLsizei n, GLuint *framebuffers);
typedef GLenum (*GL_CHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
typedef void (*GL_FRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_FRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_FRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
typedef void (*GL_FRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
typedef void (*GL_GETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
typedef void (*GL_GENERATEMIPMAPPROC) (GLenum target);
typedef void (*GL_BLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
typedef void (*GL_RENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_FRAMEBUFFERTEXTURELAYERPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
typedef void *(*GL_MAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
typedef void (*GL_FLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
typedef void (*GL_BINDVERTEXARRAYPROC) (GLuint array);
typedef void (*GL_DELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint *arrays);
typedef void (*GL_GENVERTEXARRAYSPROC) (GLsizei n, GLuint *arrays);
typedef GLboolean (*GL_ISVERTEXARRAYPROC) (GLuint array);
typedef void (*GL_DRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
typedef void (*GL_DRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
typedef void (*GL_TEXBUFFERPROC) (GLenum target, GLenum internalformat, GLuint buffer);
typedef void (*GL_PRIMITIVERESTARTINDEXPROC) (GLuint index);
typedef void (*GL_COPYBUFFERSUBDATAPROC) (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
typedef void (*GL_GETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
typedef void (*GL_GETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
typedef void (*GL_GETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
typedef GLuint (*GL_GETUNIFORMBLOCKINDEXPROC) (GLuint program, const GLchar *uniformBlockName);
typedef void (*GL_GETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
typedef void (*GL_GETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
typedef void (*GL_UNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
typedef void (*GL_DRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
typedef void (*GL_DRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
typedef void (*GL_DRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
typedef void (*GL_MULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex);
typedef void (*GL_PROVOKINGVERTEXPROC) (GLenum mode);
typedef GLsync (*GL_FENCESYNCPROC) (GLenum condition, GLbitfield flags);
typedef GLboolean (*GL_ISSYNCPROC) (GLsync sync);
typedef void (*GL_DELETESYNCPROC) (GLsync sync);
typedef GLenum (*GL_CLIENTWAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
typedef void (*GL_WAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
typedef void (*GL_GETINTEGER64VPROC) (GLenum pname, GLint64 *data);
typedef void (*GL_GETSYNCIVPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
typedef void (*GL_GETINTEGER64I_VPROC) (GLenum target, GLuint index, GLint64 *data);
typedef void (*GL_GETBUFFERPARAMETERI64VPROC) (GLenum target, GLenum pname, GLint64 *params);
typedef void (*GL_FRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
typedef void (*GL_TEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
typedef void (*GL_TEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
typedef void (*GL_GETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat *val);
typedef void (*GL_SAMPLEMASKIPROC) (GLuint maskNumber, GLbitfield mask);
typedef void (*GL_BINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
typedef GLint (*GL_GETFRAGDATAINDEXPROC) (GLuint program, const GLchar *name);
typedef void (*GL_GENSAMPLERSPROC) (GLsizei count, GLuint *samplers);
typedef void (*GL_DELETESAMPLERSPROC) (GLsizei count, const GLuint *samplers);
typedef GLboolean (*GL_ISSAMPLERPROC) (GLuint sampler);
typedef void (*GL_BINDSAMPLERPROC) (GLuint unit, GLuint sampler);
typedef void (*GL_SAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param);
typedef void (*GL_SAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint *param);
typedef void (*GL_SAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param);
typedef void (*GL_SAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat *param);
typedef void (*GL_SAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint *param);
typedef void (*GL_SAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint *param);
typedef void (*GL_GETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint *params);
typedef void (*GL_GETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint *params);
typedef void (*GL_GETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat *params);
typedef void (*GL_GETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint *params);
typedef void (*GL_QUERYCOUNTERPROC) (GLuint id, GLenum target);
typedef void (*GL_GETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64 *params);
typedef void (*GL_GETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64 *params);
typedef void (*GL_VERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor);
typedef void (*GL_VERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
typedef void (*GL_VERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
typedef void (*GL_VERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
typedef void (*GL_VERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
typedef void (*GL_VERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
typedef void (*GL_VERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
typedef void (*GL_VERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
typedef void (*GL_VERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
typedef void (*GL_VERTEXP2UIPROC) (GLenum type, GLuint value);
typedef void (*GL_VERTEXP2UIVPROC) (GLenum type, const GLuint *value);
typedef void (*GL_VERTEXP3UIPROC) (GLenum type, GLuint value);
typedef void (*GL_VERTEXP3UIVPROC) (GLenum type, const GLuint *value);
typedef void (*GL_VERTEXP4UIPROC) (GLenum type, GLuint value);
typedef void (*GL_VERTEXP4UIVPROC) (GLenum type, const GLuint *value);
typedef void (*GL_TEXCOORDP1UIPROC) (GLenum type, GLuint coords);
typedef void (*GL_TEXCOORDP1UIVPROC) (GLenum type, const GLuint *coords);
typedef void (*GL_TEXCOORDP2UIPROC) (GLenum type, GLuint coords);
typedef void (*GL_TEXCOORDP2UIVPROC) (GLenum type, const GLuint *coords);
typedef void (*GL_TEXCOORDP3UIPROC) (GLenum type, GLuint coords);
typedef void (*GL_TEXCOORDP3UIVPROC) (GLenum type, const GLuint *coords);
typedef void (*GL_TEXCOORDP4UIPROC) (GLenum type, GLuint coords);
typedef void (*GL_TEXCOORDP4UIVPROC) (GLenum type, const GLuint *coords);
typedef void (*GL_MULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords);
typedef void (*GL_MULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
typedef void (*GL_MULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords);
typedef void (*GL_MULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
typedef void (*GL_MULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords);
typedef void (*GL_MULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
typedef void (*GL_MULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords);
typedef void (*GL_MULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
typedef void (*GL_NORMALP3UIPROC) (GLenum type, GLuint coords);
typedef void (*GL_NORMALP3UIVPROC) (GLenum type, const GLuint *coords);
typedef void (*GL_COLORP3UIPROC) (GLenum type, GLuint color);
typedef void (*GL_COLORP3UIVPROC) (GLenum type, const GLuint *color);
typedef void (*GL_COLORP4UIPROC) (GLenum type, GLuint color);
typedef void (*GL_COLORP4UIVPROC) (GLenum type, const GLuint *color);
typedef void (*GL_SECONDARYCOLORP3UIPROC) (GLenum type, GLuint color);
typedef void (*GL_SECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint *color);
typedef void (*GL_MINSAMPLESHADINGPROC) (GLfloat value);
typedef void (*GL_BLENDEQUATIONIPROC) (GLuint buf, GLenum mode);
typedef void (*GL_BLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
typedef void (*GL_BLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst);
typedef void (*GL_BLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
typedef void (*GL_DRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect);
typedef void (*GL_DRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect);
typedef void (*GL_UNIFORM1DPROC) (GLint location, GLdouble x);
typedef void (*GL_UNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y);
typedef void (*GL_UNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_UNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_UNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_UNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_UNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_UNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_UNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_GETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble *params);
typedef GLint (*GL_GETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const GLchar *name);
typedef GLuint (*GL_GETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const GLchar *name);
typedef void (*GL_GETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
typedef void (*GL_GETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
typedef void (*GL_GETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
typedef void (*GL_UNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint *indices);
typedef void (*GL_GETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint *params);
typedef void (*GL_GETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint *values);
typedef void (*GL_PATCHPARAMETERIPROC) (GLenum pname, GLint value);
typedef void (*GL_PATCHPARAMETERFVPROC) (GLenum pname, const GLfloat *values);
typedef void (*GL_BINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id);
typedef void (*GL_DELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint *ids);
typedef void (*GL_GENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint *ids);
typedef GLboolean (*GL_ISTRANSFORMFEEDBACKPROC) (GLuint id);
typedef void (*GL_PAUSETRANSFORMFEEDBACKPROC) (void);
typedef void (*GL_RESUMETRANSFORMFEEDBACKPROC) (void);
typedef void (*GL_DRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id);
typedef void (*GL_DRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream);
typedef void (*GL_BEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id);
typedef void (*GL_ENDQUERYINDEXEDPROC) (GLenum target, GLuint index);
typedef void (*GL_GETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params);
typedef void (*GL_RELEASESHADERCOMPILERPROC) (void);
typedef void (*GL_SHADERBINARYPROC) (GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
typedef void (*GL_GETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
typedef void (*GL_DEPTHRANGEFPROC) (GLfloat n, GLfloat f);
typedef void (*GL_CLEARDEPTHFPROC) (GLfloat d);
typedef void (*GL_GETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
typedef void (*GL_PROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
typedef void (*GL_PROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value);
typedef void (*GL_USEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
typedef void (*GL_ACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program);
typedef GLuint (*GL_CREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const GLchar *const*strings);
typedef void (*GL_BINDPROGRAMPIPELINEPROC) (GLuint pipeline);
typedef void (*GL_DELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint *pipelines);
typedef void (*GL_GENPROGRAMPIPELINESPROC) (GLsizei n, GLuint *pipelines);
typedef GLboolean (*GL_ISPROGRAMPIPELINEPROC) (GLuint pipeline);
typedef void (*GL_GETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint *params);
typedef void (*GL_PROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint v0);
typedef void (*GL_PROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat v0);
typedef void (*GL_PROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble v0);
typedef void (*GL_PROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint v0);
typedef void (*GL_PROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint v0, GLint v1);
typedef void (*GL_PROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
typedef void (*GL_PROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1);
typedef void (*GL_PROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
typedef void (*GL_PROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
typedef void (*GL_PROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
typedef void (*GL_PROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
typedef void (*GL_PROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
typedef void (*GL_PROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
typedef void (*GL_PROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
typedef void (*GL_PROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
typedef void (*GL_PROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
typedef void (*GL_PROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_VALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline);
typedef void (*GL_GETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
typedef void (*GL_VERTEXATTRIBL1DPROC) (GLuint index, GLdouble x);
typedef void (*GL_VERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y);
typedef void (*GL_VERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_VERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_VERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_GETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble *params);
typedef void (*GL_VIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat *v);
typedef void (*GL_VIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
typedef void (*GL_VIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat *v);
typedef void (*GL_SCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint *v);
typedef void (*GL_SCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
typedef void (*GL_SCISSORINDEXEDVPROC) (GLuint index, const GLint *v);
typedef void (*GL_DEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLdouble *v);
typedef void (*GL_DEPTHRANGEINDEXEDPROC) (GLuint index, GLdouble n, GLdouble f);
typedef void (*GL_GETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat *data);
typedef void (*GL_GETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble *data);
typedef void (*GL_DRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
typedef void (*GL_DRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
typedef void (*GL_DRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
typedef void (*GL_GETINTERNALFORMATIVPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
typedef void (*GL_GETACTIVEATOMICCOUNTERBUFFERIVPROC) (GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
typedef void (*GL_BINDIMAGETEXTUREPROC) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
typedef void (*GL_MEMORYBARRIERPROC) (GLbitfield barriers);
typedef void (*GL_TEXSTORAGE1DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
typedef void (*GL_TEXSTORAGE2DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_TEXSTORAGE3DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
typedef void (*GL_DRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei instancecount);
typedef void (*GL_DRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
typedef void (*GL_DISPATCHCOMPUTEPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
typedef void (*GL_DISPATCHCOMPUTEINDIRECTPROC) (GLintptr indirect);
typedef void (*GL_COPYIMAGESUBDATAPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
typedef void (*GL_FRAMEBUFFERPARAMETERIPROC) (GLenum target, GLenum pname, GLint param);
typedef void (*GL_GETFRAMEBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETINTERNALFORMATI64VPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
typedef void (*GL_INVALIDATETEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
typedef void (*GL_INVALIDATETEXIMAGEPROC) (GLuint texture, GLint level);
typedef void (*GL_INVALIDATEBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
typedef void (*GL_INVALIDATEBUFFERDATAPROC) (GLuint buffer);
typedef void (*GL_INVALIDATEFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
typedef void (*GL_INVALIDATESUBFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_MULTIDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
typedef void (*GL_MULTIDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
typedef void (*GL_GETPROGRAMINTERFACEIVPROC) (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
typedef GLuint (*GL_GETPROGRAMRESOURCEINDEXPROC) (GLuint program, GLenum programInterface, const GLchar *name);
typedef void (*GL_GETPROGRAMRESOURCENAMEPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
typedef void (*GL_GETPROGRAMRESOURCEIVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
typedef GLint (*GL_GETPROGRAMRESOURCELOCATIONPROC) (GLuint program, GLenum programInterface, const GLchar *name);
typedef GLint (*GL_GETPROGRAMRESOURCELOCATIONINDEXPROC) (GLuint program, GLenum programInterface, const GLchar *name);
typedef void (*GL_SHADERSTORAGEBLOCKBINDINGPROC) (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
typedef void (*GL_TEXBUFFERRANGEPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_TEXSTORAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
typedef void (*GL_TEXSTORAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
typedef void (*GL_TEXTUREVIEWPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
typedef void (*GL_BINDVERTEXBUFFERPROC) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
typedef void (*GL_VERTEXATTRIBFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
typedef void (*GL_VERTEXATTRIBIFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXATTRIBLFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXATTRIBBINDINGPROC) (GLuint attribindex, GLuint bindingindex);
typedef void (*GL_VERTEXBINDINGDIVISORPROC) (GLuint bindingindex, GLuint divisor);
typedef void (*GL_DEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
typedef void (*GL_DEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
typedef void (*GL_DEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
typedef GLuint (*GL_GETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
typedef void (*GL_PUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
typedef void (*GL_POPDEBUGGROUPPROC) (void);
typedef void (*GL_OBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
typedef void (*GL_GETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
typedef void (*GL_OBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
typedef void (*GL_GETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
typedef void (*GL_BUFFERSTORAGEPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags);
typedef void (*GL_CLEARTEXIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
typedef void (*GL_CLEARTEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
typedef void (*GL_BINDBUFFERSBASEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint *buffers);
typedef void (*GL_BINDBUFFERSRANGEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes);
typedef void (*GL_BINDTEXTURESPROC) (GLuint first, GLsizei count, const GLuint *textures);
typedef void (*GL_BINDSAMPLERSPROC) (GLuint first, GLsizei count, const GLuint *samplers);
typedef void (*GL_BINDIMAGETEXTURESPROC) (GLuint first, GLsizei count, const GLuint *textures);
typedef void (*GL_BINDVERTEXBUFFERSPROC) (GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
typedef void (*GL_CLIPCONTROLPROC) (GLenum origin, GLenum depth);
typedef void (*GL_CREATETRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint *ids);
typedef void (*GL_TRANSFORMFEEDBACKBUFFERBASEPROC) (GLuint xfb, GLuint index, GLuint buffer);
typedef void (*GL_TRANSFORMFEEDBACKBUFFERRANGEPROC) (GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_GETTRANSFORMFEEDBACKIVPROC) (GLuint xfb, GLenum pname, GLint *param);
typedef void (*GL_GETTRANSFORMFEEDBACKI_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint *param);
typedef void (*GL_GETTRANSFORMFEEDBACKI64_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint64 *param);
typedef void (*GL_CREATEBUFFERSPROC) (GLsizei n, GLuint *buffers);
typedef void (*GL_NAMEDBUFFERSTORAGEPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags);
typedef void (*GL_NAMEDBUFFERDATAPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage);
typedef void (*GL_NAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
typedef void (*GL_COPYNAMEDBUFFERSUBDATAPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
typedef void (*GL_CLEARNAMEDBUFFERDATAPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
typedef void (*GL_CLEARNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
typedef void *(*GL_MAPNAMEDBUFFERPROC) (GLuint buffer, GLenum access);
typedef void *(*GL_MAPNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
typedef GLboolean (*GL_UNMAPNAMEDBUFFERPROC) (GLuint buffer);
typedef void (*GL_FLUSHMAPPEDNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
typedef void (*GL_GETNAMEDBUFFERPARAMETERIVPROC) (GLuint buffer, GLenum pname, GLint *params);
typedef void (*GL_GETNAMEDBUFFERPARAMETERI64VPROC) (GLuint buffer, GLenum pname, GLint64 *params);
typedef void (*GL_GETNAMEDBUFFERPOINTERVPROC) (GLuint buffer, GLenum pname, void **params);
typedef void (*GL_GETNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data);
typedef void (*GL_CREATEFRAMEBUFFERSPROC) (GLsizei n, GLuint *framebuffers);
typedef void (*GL_NAMEDFRAMEBUFFERRENDERBUFFERPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
typedef void (*GL_NAMEDFRAMEBUFFERPARAMETERIPROC) (GLuint framebuffer, GLenum pname, GLint param);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTUREPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTURELAYERPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
typedef void (*GL_NAMEDFRAMEBUFFERDRAWBUFFERPROC) (GLuint framebuffer, GLenum buf);
typedef void (*GL_NAMEDFRAMEBUFFERDRAWBUFFERSPROC) (GLuint framebuffer, GLsizei n, const GLenum *bufs);
typedef void (*GL_NAMEDFRAMEBUFFERREADBUFFERPROC) (GLuint framebuffer, GLenum src);
typedef void (*GL_INVALIDATENAMEDFRAMEBUFFERDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments);
typedef void (*GL_INVALIDATENAMEDFRAMEBUFFERSUBDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_CLEARNAMEDFRAMEBUFFERIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value);
typedef void (*GL_CLEARNAMEDFRAMEBUFFERUIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value);
typedef void (*GL_CLEARNAMEDFRAMEBUFFERFVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value);
typedef void (*GL_CLEARNAMEDFRAMEBUFFERFIPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
typedef void (*GL_BLITNAMEDFRAMEBUFFERPROC) (GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
typedef GLenum (*GL_CHECKNAMEDFRAMEBUFFERSTATUSPROC) (GLuint framebuffer, GLenum target);
typedef void (*GL_GETNAMEDFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint *param);
typedef void (*GL_GETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
typedef void (*GL_CREATERENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
typedef void (*GL_NAMEDRENDERBUFFERSTORAGEPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_NAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_GETNAMEDRENDERBUFFERPARAMETERIVPROC) (GLuint renderbuffer, GLenum pname, GLint *params);
typedef void (*GL_CREATETEXTURESPROC) (GLenum target, GLsizei n, GLuint *textures);
typedef void (*GL_TEXTUREBUFFERPROC) (GLuint texture, GLenum internalformat, GLuint buffer);
typedef void (*GL_TEXTUREBUFFERRANGEPROC) (GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_TEXTURESTORAGE1DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width);
typedef void (*GL_TEXTURESTORAGE2DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_TEXTURESTORAGE3DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
typedef void (*GL_TEXTURESTORAGE2DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
typedef void (*GL_TEXTURESTORAGE3DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
typedef void (*GL_TEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
typedef void (*GL_COPYTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_COPYTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_TEXTUREPARAMETERFPROC) (GLuint texture, GLenum pname, GLfloat param);
typedef void (*GL_TEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, const GLfloat *param);
typedef void (*GL_TEXTUREPARAMETERIPROC) (GLuint texture, GLenum pname, GLint param);
typedef void (*GL_TEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, const GLint *params);
typedef void (*GL_TEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, const GLuint *params);
typedef void (*GL_TEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, const GLint *param);
typedef void (*GL_GENERATETEXTUREMIPMAPPROC) (GLuint texture);
typedef void (*GL_BINDTEXTUREUNITPROC) (GLuint unit, GLuint texture);
typedef void (*GL_GETTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
typedef void (*GL_GETCOMPRESSEDTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLsizei bufSize, void *pixels);
typedef void (*GL_GETTEXTURELEVELPARAMETERFVPROC) (GLuint texture, GLint level, GLenum pname, GLfloat *params);
typedef void (*GL_GETTEXTURELEVELPARAMETERIVPROC) (GLuint texture, GLint level, GLenum pname, GLint *params);
typedef void (*GL_GETTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, GLfloat *params);
typedef void (*GL_GETTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, GLint *params);
typedef void (*GL_GETTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, GLuint *params);
typedef void (*GL_GETTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, GLint *params);
typedef void (*GL_CREATEVERTEXARRAYSPROC) (GLsizei n, GLuint *arrays);
typedef void (*GL_DISABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
typedef void (*GL_ENABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
typedef void (*GL_VERTEXARRAYELEMENTBUFFERPROC) (GLuint vaobj, GLuint buffer);
typedef void (*GL_VERTEXARRAYVERTEXBUFFERPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
typedef void (*GL_VERTEXARRAYVERTEXBUFFERSPROC) (GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
typedef void (*GL_VERTEXARRAYATTRIBBINDINGPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
typedef void (*GL_VERTEXARRAYATTRIBFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYATTRIBIFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYATTRIBLFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYBINDINGDIVISORPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor);
typedef void (*GL_GETVERTEXARRAYIVPROC) (GLuint vaobj, GLenum pname, GLint *param);
typedef void (*GL_GETVERTEXARRAYINDEXEDIVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint *param);
typedef void (*GL_GETVERTEXARRAYINDEXED64IVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint64 *param);
typedef void (*GL_CREATESAMPLERSPROC) (GLsizei n, GLuint *samplers);
typedef void (*GL_CREATEPROGRAMPIPELINESPROC) (GLsizei n, GLuint *pipelines);
typedef void (*GL_CREATEQUERIESPROC) (GLenum target, GLsizei n, GLuint *ids);
typedef void (*GL_GETQUERYBUFFEROBJECTI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
typedef void (*GL_GETQUERYBUFFEROBJECTIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
typedef void (*GL_GETQUERYBUFFEROBJECTUI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
typedef void (*GL_GETQUERYBUFFEROBJECTUIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
typedef void (*GL_MEMORYBARRIERBYREGIONPROC) (GLbitfield barriers);
typedef void (*GL_GETTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
typedef void (*GL_GETCOMPRESSEDTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels);
typedef GLenum (*GL_GETGRAPHICSRESETSTATUSPROC) (void);
typedef void (*GL_GETNCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLsizei bufSize, void *pixels);
typedef void (*GL_GETNTEXIMAGEPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
typedef void (*GL_GETNUNIFORMDVPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
typedef void (*GL_GETNUNIFORMFVPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
typedef void (*GL_GETNUNIFORMIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
typedef void (*GL_GETNUNIFORMUIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
typedef void (*GL_READNPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
typedef void (*GL_GETNMAPDVPROC) (GLenum target, GLenum query, GLsizei bufSize, GLdouble *v);
typedef void (*GL_GETNMAPFVPROC) (GLenum target, GLenum query, GLsizei bufSize, GLfloat *v);
typedef void (*GL_GETNMAPIVPROC) (GLenum target, GLenum query, GLsizei bufSize, GLint *v);
typedef void (*GL_GETNPIXELMAPFVPROC) (GLenum map, GLsizei bufSize, GLfloat *values);
typedef void (*GL_GETNPIXELMAPUIVPROC) (GLenum map, GLsizei bufSize, GLuint *values);
typedef void (*GL_GETNPIXELMAPUSVPROC) (GLenum map, GLsizei bufSize, GLushort *values);
typedef void (*GL_GETNPOLYGONSTIPPLEPROC) (GLsizei bufSize, GLubyte *pattern);
typedef void (*GL_GETNCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void *table);
typedef void (*GL_GETNCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void *image);
typedef void (*GL_GETNSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void *row, GLsizei columnBufSize, void *column, void *span);
typedef void (*GL_GETNHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void *values);
typedef void (*GL_GETNMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void *values);
typedef void (*GL_TEXTUREBARRIERPROC) (void);
typedef void (*GL_SPECIALIZESHADERPROC) (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue);
typedef void (*GL_MULTIDRAWARRAYSINDIRECTCOUNTPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
typedef void (*GL_MULTIDRAWELEMENTSINDIRECTCOUNTPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
typedef void (*GL_POLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp);
typedef void (*GL_COLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table);
typedef void (*GL_COLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_COLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_COPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
typedef void (*GL_GETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, void *table);
typedef void (*GL_GETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_COLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data);
typedef void (*GL_COPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
typedef void (*GL_CONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image);
typedef void (*GL_CONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image);
typedef void (*GL_CONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
typedef void (*GL_CONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_CONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
typedef void (*GL_CONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_COPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_GETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, void *image);
typedef void (*GL_GETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span);
typedef void (*GL_SEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column);
typedef void (*GL_GETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values);
typedef void (*GL_GETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values);
typedef void (*GL_GETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_HISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
typedef void (*GL_MINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
typedef void (*GL_RESETHISTOGRAMPROC) (GLenum target);
typedef void (*GL_RESETMINMAXPROC) (GLenum target);
typedef void (*GL_NAMEDBUFFERPAGECOMMITMENTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit);
typedef void (*GL_BLENDBARRIERKHRPROC) (void);
typedef void (*GL_MAXSHADERCOMPILERTHREADSKHRPROC) (GLuint count);
typedef void (*GL_MULTITEXCOORD1BOESPROC) (GLenum texture, GLbyte s);
typedef void (*GL_MULTITEXCOORD1BVOESPROC) (GLenum texture, const GLbyte *coords);
typedef void (*GL_MULTITEXCOORD2BOESPROC) (GLenum texture, GLbyte s, GLbyte t);
typedef void (*GL_MULTITEXCOORD2BVOESPROC) (GLenum texture, const GLbyte *coords);
typedef void (*GL_MULTITEXCOORD3BOESPROC) (GLenum texture, GLbyte s, GLbyte t, GLbyte r);
typedef void (*GL_MULTITEXCOORD3BVOESPROC) (GLenum texture, const GLbyte *coords);
typedef void (*GL_MULTITEXCOORD4BOESPROC) (GLenum texture, GLbyte s, GLbyte t, GLbyte r, GLbyte q);
typedef void (*GL_MULTITEXCOORD4BVOESPROC) (GLenum texture, const GLbyte *coords);
typedef void (*GL_TEXCOORD1BOESPROC) (GLbyte s);
typedef void (*GL_TEXCOORD1BVOESPROC) (const GLbyte *coords);
typedef void (*GL_TEXCOORD2BOESPROC) (GLbyte s, GLbyte t);
typedef void (*GL_TEXCOORD2BVOESPROC) (const GLbyte *coords);
typedef void (*GL_TEXCOORD3BOESPROC) (GLbyte s, GLbyte t, GLbyte r);
typedef void (*GL_TEXCOORD3BVOESPROC) (const GLbyte *coords);
typedef void (*GL_TEXCOORD4BOESPROC) (GLbyte s, GLbyte t, GLbyte r, GLbyte q);
typedef void (*GL_TEXCOORD4BVOESPROC) (const GLbyte *coords);
typedef void (*GL_VERTEX2BOESPROC) (GLbyte x, GLbyte y);
typedef void (*GL_VERTEX2BVOESPROC) (const GLbyte *coords);
typedef void (*GL_VERTEX3BOESPROC) (GLbyte x, GLbyte y, GLbyte z);
typedef void (*GL_VERTEX3BVOESPROC) (const GLbyte *coords);
typedef void (*GL_VERTEX4BOESPROC) (GLbyte x, GLbyte y, GLbyte z, GLbyte w);
typedef void (*GL_VERTEX4BVOESPROC) (const GLbyte *coords);
typedef void (*GL_ALPHAFUNCXOESPROC) (GLenum func, GLfixed ref);
typedef void (*GL_CLEARCOLORXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (*GL_CLEARDEPTHXOESPROC) (GLfixed depth);
typedef void (*GL_CLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
typedef void (*GL_COLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (*GL_DEPTHRANGEXOESPROC) (GLfixed n, GLfixed f);
typedef void (*GL_FOGXOESPROC) (GLenum pname, GLfixed param);
typedef void (*GL_FOGXVOESPROC) (GLenum pname, const GLfixed *param);
typedef void (*GL_FRUSTUMXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
typedef void (*GL_GETCLIPPLANEXOESPROC) (GLenum plane, GLfixed *equation);
typedef void (*GL_GETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
typedef void (*GL_GETTEXENVXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
typedef void (*GL_GETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
typedef void (*GL_LIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
typedef void (*GL_LIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *param);
typedef void (*GL_LIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
typedef void (*GL_LIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
typedef void (*GL_LINEWIDTHXOESPROC) (GLfixed width);
typedef void (*GL_LOADMATRIXXOESPROC) (const GLfixed *m);
typedef void (*GL_MATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
typedef void (*GL_MATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *param);
typedef void (*GL_MULTMATRIXXOESPROC) (const GLfixed *m);
typedef void (*GL_MULTITEXCOORD4XOESPROC) (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
typedef void (*GL_NORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
typedef void (*GL_ORTHOXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
typedef void (*GL_POINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
typedef void (*GL_POINTSIZEXOESPROC) (GLfixed size);
typedef void (*GL_POLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
typedef void (*GL_ROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
typedef void (*GL_SCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (*GL_TEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (*GL_TEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
typedef void (*GL_TEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (*GL_TEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
typedef void (*GL_TRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (*GL_ACCUMXOESPROC) (GLenum op, GLfixed value);
typedef void (*GL_BITMAPXOESPROC) (GLsizei width, GLsizei height, GLfixed xorig, GLfixed yorig, GLfixed xmove, GLfixed ymove, const GLubyte *bitmap);
typedef void (*GL_BLENDCOLORXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (*GL_CLEARACCUMXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (*GL_COLOR3XOESPROC) (GLfixed red, GLfixed green, GLfixed blue);
typedef void (*GL_COLOR3XVOESPROC) (const GLfixed *components);
typedef void (*GL_COLOR4XVOESPROC) (const GLfixed *components);
typedef void (*GL_CONVOLUTIONPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (*GL_CONVOLUTIONPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
typedef void (*GL_EVALCOORD1XOESPROC) (GLfixed u);
typedef void (*GL_EVALCOORD1XVOESPROC) (const GLfixed *coords);
typedef void (*GL_EVALCOORD2XOESPROC) (GLfixed u, GLfixed v);
typedef void (*GL_EVALCOORD2XVOESPROC) (const GLfixed *coords);
typedef void (*GL_FEEDBACKBUFFERXOESPROC) (GLsizei n, GLenum type, const GLfixed *buffer);
typedef void (*GL_GETCONVOLUTIONPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
typedef void (*GL_GETHISTOGRAMPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
typedef void (*GL_GETLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed *params);
typedef void (*GL_GETMAPXVOESPROC) (GLenum target, GLenum query, GLfixed *v);
typedef void (*GL_GETMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
typedef void (*GL_GETPIXELMAPXVPROC) (GLenum map, GLint size, GLfixed *values);
typedef void (*GL_GETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
typedef void (*GL_GETTEXLEVELPARAMETERXVOESPROC) (GLenum target, GLint level, GLenum pname, GLfixed *params);
typedef void (*GL_INDEXXOESPROC) (GLfixed component);
typedef void (*GL_INDEXXVOESPROC) (const GLfixed *component);
typedef void (*GL_LOADTRANSPOSEMATRIXXOESPROC) (const GLfixed *m);
typedef void (*GL_MAP1XOESPROC) (GLenum target, GLfixed u1, GLfixed u2, GLint stride, GLint order, GLfixed points);
typedef void (*GL_MAP2XOESPROC) (GLenum target, GLfixed u1, GLfixed u2, GLint ustride, GLint uorder, GLfixed v1, GLfixed v2, GLint vstride, GLint vorder, GLfixed points);
typedef void (*GL_MAPGRID1XOESPROC) (GLint n, GLfixed u1, GLfixed u2);
typedef void (*GL_MAPGRID2XOESPROC) (GLint n, GLfixed u1, GLfixed u2, GLfixed v1, GLfixed v2);
typedef void (*GL_MULTTRANSPOSEMATRIXXOESPROC) (const GLfixed *m);
typedef void (*GL_MULTITEXCOORD1XOESPROC) (GLenum texture, GLfixed s);
typedef void (*GL_MULTITEXCOORD1XVOESPROC) (GLenum texture, const GLfixed *coords);
typedef void (*GL_MULTITEXCOORD2XOESPROC) (GLenum texture, GLfixed s, GLfixed t);
typedef void (*GL_MULTITEXCOORD2XVOESPROC) (GLenum texture, const GLfixed *coords);
typedef void (*GL_MULTITEXCOORD3XOESPROC) (GLenum texture, GLfixed s, GLfixed t, GLfixed r);
typedef void (*GL_MULTITEXCOORD3XVOESPROC) (GLenum texture, const GLfixed *coords);
typedef void (*GL_MULTITEXCOORD4XVOESPROC) (GLenum texture, const GLfixed *coords);
typedef void (*GL_NORMAL3XVOESPROC) (const GLfixed *coords);
typedef void (*GL_PASSTHROUGHXOESPROC) (GLfixed token);
typedef void (*GL_PIXELMAPXPROC) (GLenum map, GLint size, const GLfixed *values);
typedef void (*GL_PIXELSTOREXPROC) (GLenum pname, GLfixed param);
typedef void (*GL_PIXELTRANSFERXOESPROC) (GLenum pname, GLfixed param);
typedef void (*GL_PIXELZOOMXOESPROC) (GLfixed xfactor, GLfixed yfactor);
typedef void (*GL_PRIORITIZETEXTURESXOESPROC) (GLsizei n, const GLuint *textures, const GLfixed *priorities);
typedef void (*GL_RASTERPOS2XOESPROC) (GLfixed x, GLfixed y);
typedef void (*GL_RASTERPOS2XVOESPROC) (const GLfixed *coords);
typedef void (*GL_RASTERPOS3XOESPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (*GL_RASTERPOS3XVOESPROC) (const GLfixed *coords);
typedef void (*GL_RASTERPOS4XOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed w);
typedef void (*GL_RASTERPOS4XVOESPROC) (const GLfixed *coords);
typedef void (*GL_RECTXOESPROC) (GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2);
typedef void (*GL_RECTXVOESPROC) (const GLfixed *v1, const GLfixed *v2);
typedef void (*GL_TEXCOORD1XOESPROC) (GLfixed s);
typedef void (*GL_TEXCOORD1XVOESPROC) (const GLfixed *coords);
typedef void (*GL_TEXCOORD2XOESPROC) (GLfixed s, GLfixed t);
typedef void (*GL_TEXCOORD2XVOESPROC) (const GLfixed *coords);
typedef void (*GL_TEXCOORD3XOESPROC) (GLfixed s, GLfixed t, GLfixed r);
typedef void (*GL_TEXCOORD3XVOESPROC) (const GLfixed *coords);
typedef void (*GL_TEXCOORD4XOESPROC) (GLfixed s, GLfixed t, GLfixed r, GLfixed q);
typedef void (*GL_TEXCOORD4XVOESPROC) (const GLfixed *coords);
typedef void (*GL_TEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
typedef void (*GL_TEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
typedef void (*GL_VERTEX2XOESPROC) (GLfixed x);
typedef void (*GL_VERTEX2XVOESPROC) (const GLfixed *coords);
typedef void (*GL_VERTEX3XOESPROC) (GLfixed x, GLfixed y);
typedef void (*GL_VERTEX3XVOESPROC) (const GLfixed *coords);
typedef void (*GL_VERTEX4XOESPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (*GL_VERTEX4XVOESPROC) (const GLfixed *coords);
typedef GLbitfield (*GL_QUERYMATRIXXOESPROC) (GLfixed *mantissa, GLint *exponent);
typedef void (*GL_CLEARDEPTHFOESPROC) (GLclampf depth);
typedef void (*GL_CLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
typedef void (*GL_DEPTHRANGEFOESPROC) (GLclampf n, GLclampf f);
typedef void (*GL_FRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
typedef void (*GL_GETCLIPPLANEFOESPROC) (GLenum plane, GLfloat *equation);
typedef void (*GL_ORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
typedef void (*GL_TBUFFERMASK3DFXPROC) (GLuint mask);
typedef void (*GL_ELEMENTPOINTERAPPLEPROC) (GLenum type, const void *pointer);
typedef void (*GL_DRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count);
typedef void (*GL_DRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
typedef void (*GL_MULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
typedef void (*GL_MULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount);
typedef void (*GL_GENFENCESAPPLEPROC) (GLsizei n, GLuint *fences);
typedef void (*GL_DELETEFENCESAPPLEPROC) (GLsizei n, const GLuint *fences);
typedef void (*GL_SETFENCEAPPLEPROC) (GLuint fence);
typedef GLboolean (*GL_ISFENCEAPPLEPROC) (GLuint fence);
typedef GLboolean (*GL_TESTFENCEAPPLEPROC) (GLuint fence);
typedef void (*GL_FINISHFENCEAPPLEPROC) (GLuint fence);
typedef GLboolean (*GL_TESTOBJECTAPPLEPROC) (GLenum object, GLuint name);
typedef void (*GL_FINISHOBJECTAPPLEPROC) (GLenum object, GLint name);
typedef void (*GL_BUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param);
typedef void (*GL_FLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size);
typedef GLenum (*GL_OBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
typedef GLenum (*GL_OBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
typedef void (*GL_GETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint *params);
typedef void (*GL_TEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, const void *pointer);
typedef void (*GL_GETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, void **params);
typedef void (*GL_BINDVERTEXARRAYAPPLEPROC) (GLuint array);
typedef void (*GL_DELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint *arrays);
typedef void (*GL_GENVERTEXARRAYSAPPLEPROC) (GLsizei n, GLuint *arrays);
typedef GLboolean (*GL_ISVERTEXARRAYAPPLEPROC) (GLuint array);
typedef void (*GL_VERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer);
typedef void (*GL_FLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer);
typedef void (*GL_VERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param);
typedef void (*GL_ENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
typedef void (*GL_DISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
typedef GLboolean (*GL_ISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname);
typedef void (*GL_MAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
typedef void (*GL_MAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
typedef void (*GL_MAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
typedef void (*GL_MAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
typedef void (*GL_DRAWBUFFERSATIPROC) (GLsizei n, const GLenum *bufs);
typedef void (*GL_ELEMENTPOINTERATIPROC) (GLenum type, const void *pointer);
typedef void (*GL_DRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count);
typedef void (*GL_DRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count);
typedef void (*GL_TEXBUMPPARAMETERIVATIPROC) (GLenum pname, const GLint *param);
typedef void (*GL_TEXBUMPPARAMETERFVATIPROC) (GLenum pname, const GLfloat *param);
typedef void (*GL_GETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);
typedef void (*GL_GETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);
typedef GLuint (*GL_GENFRAGMENTSHADERSATIPROC) (GLuint range);
typedef void (*GL_BINDFRAGMENTSHADERATIPROC) (GLuint id);
typedef void (*GL_DELETEFRAGMENTSHADERATIPROC) (GLuint id);
typedef void (*GL_BEGINFRAGMENTSHADERATIPROC) (void);
typedef void (*GL_ENDFRAGMENTSHADERATIPROC) (void);
typedef void (*GL_PASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle);
typedef void (*GL_SAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle);
typedef void (*GL_COLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
typedef void (*GL_COLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
typedef void (*GL_COLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
typedef void (*GL_ALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
typedef void (*GL_ALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
typedef void (*GL_ALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
typedef void (*GL_SETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat *value);
typedef void *(*GL_MAPOBJECTBUFFERATIPROC) (GLuint buffer);
typedef void (*GL_UNMAPOBJECTBUFFERATIPROC) (GLuint buffer);
typedef void (*GL_PNTRIANGLESIATIPROC) (GLenum pname, GLint param);
typedef void (*GL_PNTRIANGLESFATIPROC) (GLenum pname, GLfloat param);
typedef void (*GL_STENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
typedef void (*GL_STENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
typedef GLuint (*GL_NEWOBJECTBUFFERATIPROC) (GLsizei size, const void *pointer, GLenum usage);
typedef GLboolean (*GL_ISOBJECTBUFFERATIPROC) (GLuint buffer);
typedef void (*GL_UPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const void *pointer, GLenum preserve);
typedef void (*GL_GETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat *params);
typedef void (*GL_GETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint *params);
typedef void (*GL_FREEOBJECTBUFFERATIPROC) (GLuint buffer);
typedef void (*GL_ARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
typedef void (*GL_GETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat *params);
typedef void (*GL_GETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint *params);
typedef void (*GL_VARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
typedef void (*GL_GETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat *params);
typedef void (*GL_GETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint *params);
typedef void (*GL_VERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
typedef void (*GL_GETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat *params);
typedef void (*GL_GETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint *params);
typedef void (*GL_VERTEXSTREAM1SATIPROC) (GLenum stream, GLshort x);
typedef void (*GL_VERTEXSTREAM1SVATIPROC) (GLenum stream, const GLshort *coords);
typedef void (*GL_VERTEXSTREAM1IATIPROC) (GLenum stream, GLint x);
typedef void (*GL_VERTEXSTREAM1IVATIPROC) (GLenum stream, const GLint *coords);
typedef void (*GL_VERTEXSTREAM1FATIPROC) (GLenum stream, GLfloat x);
typedef void (*GL_VERTEXSTREAM1FVATIPROC) (GLenum stream, const GLfloat *coords);
typedef void (*GL_VERTEXSTREAM1DATIPROC) (GLenum stream, GLdouble x);
typedef void (*GL_VERTEXSTREAM1DVATIPROC) (GLenum stream, const GLdouble *coords);
typedef void (*GL_VERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y);
typedef void (*GL_VERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *coords);
typedef void (*GL_VERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y);
typedef void (*GL_VERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *coords);
typedef void (*GL_VERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y);
typedef void (*GL_VERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *coords);
typedef void (*GL_VERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y);
typedef void (*GL_VERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *coords);
typedef void (*GL_VERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);
typedef void (*GL_VERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
typedef void (*GL_VERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);
typedef void (*GL_VERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
typedef void (*GL_VERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_VERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
typedef void (*GL_VERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_VERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
typedef void (*GL_VERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
typedef void (*GL_VERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *coords);
typedef void (*GL_VERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w);
typedef void (*GL_VERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *coords);
typedef void (*GL_VERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
typedef void (*GL_VERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *coords);
typedef void (*GL_VERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_VERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *coords);
typedef void (*GL_NORMALSTREAM3BATIPROC) (GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz);
typedef void (*GL_NORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *coords);
typedef void (*GL_NORMALSTREAM3SATIPROC) (GLenum stream, GLshort nx, GLshort ny, GLshort nz);
typedef void (*GL_NORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
typedef void (*GL_NORMALSTREAM3IATIPROC) (GLenum stream, GLint nx, GLint ny, GLint nz);
typedef void (*GL_NORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
typedef void (*GL_NORMALSTREAM3FATIPROC) (GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz);
typedef void (*GL_NORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
typedef void (*GL_NORMALSTREAM3DATIPROC) (GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz);
typedef void (*GL_NORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
typedef void (*GL_CLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream);
typedef void (*GL_VERTEXBLENDENVIATIPROC) (GLenum pname, GLint param);
typedef void (*GL_VERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param);
typedef void (*GL_EGLIMAGETARGETTEXSTORAGEPROC) (GLenum target, GLeglImageOES image, const GLint* attrib_list);
typedef void (*GL_EGLIMAGETARGETTEXTURESTORAGEPROC) (GLuint texture, GLeglImageOES image, const GLint* attrib_list);
typedef void (*GL_UNIFORMBUFFERPROC) (GLuint program, GLint location, GLuint buffer);
typedef GLint (*GL_GETUNIFORMBUFFERSIZEPROC) (GLuint program, GLint location);
typedef GLintptr (*GL_GETUNIFORMOFFSETPROC) (GLuint program, GLint location);
typedef void (*GL_BLENDCOLORPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
typedef void (*GL_BLENDEQUATIONSEPARATEPROC) (GLenum modeRGB, GLenum modeAlpha);
typedef void (*GL_BLENDEQUATIONPROC) (GLenum mode);
typedef void (*GL_COLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data);
typedef void (*GL_COPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
typedef void (*GL_LOCKARRAYSPROC) (GLint first, GLsizei count);
typedef void (*GL_UNLOCKARRAYSPROC) (void);
typedef void (*GL_CONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image);
typedef void (*GL_CONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image);
typedef void (*GL_CONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
typedef void (*GL_CONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_CONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
typedef void (*GL_CONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_COPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_GETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, void *image);
typedef void (*GL_GETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span);
typedef void (*GL_SEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column);
typedef void (*GL_TANGENT3BPROC) (GLbyte tx, GLbyte ty, GLbyte tz);
typedef void (*GL_TANGENT3BVPROC) (const GLbyte *v);
typedef void (*GL_TANGENT3DPROC) (GLdouble tx, GLdouble ty, GLdouble tz);
typedef void (*GL_TANGENT3DVPROC) (const GLdouble *v);
typedef void (*GL_TANGENT3FPROC) (GLfloat tx, GLfloat ty, GLfloat tz);
typedef void (*GL_TANGENT3FVPROC) (const GLfloat *v);
typedef void (*GL_TANGENT3IPROC) (GLint tx, GLint ty, GLint tz);
typedef void (*GL_TANGENT3IVPROC) (const GLint *v);
typedef void (*GL_TANGENT3SPROC) (GLshort tx, GLshort ty, GLshort tz);
typedef void (*GL_TANGENT3SVPROC) (const GLshort *v);
typedef void (*GL_BINORMAL3BPROC) (GLbyte bx, GLbyte by, GLbyte bz);
typedef void (*GL_BINORMAL3BVPROC) (const GLbyte *v);
typedef void (*GL_BINORMAL3DPROC) (GLdouble bx, GLdouble by, GLdouble bz);
typedef void (*GL_BINORMAL3DVPROC) (const GLdouble *v);
typedef void (*GL_BINORMAL3FPROC) (GLfloat bx, GLfloat by, GLfloat bz);
typedef void (*GL_BINORMAL3FVPROC) (const GLfloat *v);
typedef void (*GL_BINORMAL3IPROC) (GLint bx, GLint by, GLint bz);
typedef void (*GL_BINORMAL3IVPROC) (const GLint *v);
typedef void (*GL_BINORMAL3SPROC) (GLshort bx, GLshort by, GLshort bz);
typedef void (*GL_BINORMAL3SVPROC) (const GLshort *v);
typedef void (*GL_TANGENTPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_BINORMALPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_COPYTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
typedef void (*GL_COPYTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
typedef void (*GL_COPYTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_COPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_CULLPARAMETERDVPROC) (GLenum pname, GLdouble *params);
typedef void (*GL_CULLPARAMETERFVPROC) (GLenum pname, GLfloat *params);
typedef void (*GL_LABELOBJECTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
typedef void (*GL_GETOBJECTLABELPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
typedef void (*GL_INSERTEVENTMARKERPROC) (GLsizei length, const GLchar *marker);
typedef void (*GL_PUSHGROUPMARKERPROC) (GLsizei length, const GLchar *marker);
typedef void (*GL_POPGROUPMARKERPROC) (void);
typedef void (*GL_DEPTHBOUNDSPROC) (GLclampd zmin, GLclampd zmax);
typedef void (*GL_MATRIXLOADFPROC) (GLenum mode, const GLfloat *m);
typedef void (*GL_MATRIXLOADDPROC) (GLenum mode, const GLdouble *m);
typedef void (*GL_MATRIXMULTFPROC) (GLenum mode, const GLfloat *m);
typedef void (*GL_MATRIXMULTDPROC) (GLenum mode, const GLdouble *m);
typedef void (*GL_MATRIXLOADIDENTITYPROC) (GLenum mode);
typedef void (*GL_MATRIXROTATEFPROC) (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_MATRIXROTATEDPROC) (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_MATRIXSCALEFPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_MATRIXSCALEDPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_MATRIXTRANSLATEFPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_MATRIXTRANSLATEDPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_MATRIXFRUSTUMPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
typedef void (*GL_MATRIXORTHOPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
typedef void (*GL_MATRIXPOPPROC) (GLenum mode);
typedef void (*GL_MATRIXPUSHPROC) (GLenum mode);
typedef void (*GL_CLIENTATTRIBDEFAULTPROC) (GLbitfield mask);
typedef void (*GL_PUSHCLIENTATTRIBDEFAULTPROC) (GLbitfield mask);
typedef void (*GL_TEXTUREPARAMETERFPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param);
typedef void (*GL_TEXTUREPARAMETERFVPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_TEXTUREPARAMETERIPROC) (GLuint texture, GLenum target, GLenum pname, GLint param);
typedef void (*GL_TEXTUREPARAMETERIVPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_TEXTUREIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTUREIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURESUBIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURESUBIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COPYTEXTUREIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
typedef void (*GL_COPYTEXTUREIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
typedef void (*GL_COPYTEXTURESUBIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYTEXTURESUBIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_GETTEXTUREIMAGEPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
typedef void (*GL_GETTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETTEXTURELEVELPARAMETERFVPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat *params);
typedef void (*GL_GETTEXTURELEVELPARAMETERIVPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint *params);
typedef void (*GL_TEXTUREIMAGE3DPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURESUBIMAGE3DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COPYTEXTURESUBIMAGE3DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_BINDMULTITEXTUREPROC) (GLenum texunit, GLenum target, GLuint texture);
typedef void (*GL_MULTITEXCOORDPOINTERPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_MULTITEXENVFPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
typedef void (*GL_MULTITEXENVFVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_MULTITEXENVIPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
typedef void (*GL_MULTITEXENVIVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_MULTITEXGENDPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
typedef void (*GL_MULTITEXGENDVPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble *params);
typedef void (*GL_MULTITEXGENFPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
typedef void (*GL_MULTITEXGENFVPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat *params);
typedef void (*GL_MULTITEXGENIPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param);
typedef void (*GL_MULTITEXGENIVPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint *params);
typedef void (*GL_GETMULTITEXENVFVPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETMULTITEXENVIVPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETMULTITEXGENDVPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble *params);
typedef void (*GL_GETMULTITEXGENFVPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat *params);
typedef void (*GL_GETMULTITEXGENIVPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint *params);
typedef void (*GL_MULTITEXPARAMETERIPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
typedef void (*GL_MULTITEXPARAMETERIVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_MULTITEXPARAMETERFPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
typedef void (*GL_MULTITEXPARAMETERFVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_MULTITEXIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_MULTITEXIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_MULTITEXSUBIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_MULTITEXSUBIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COPYMULTITEXIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
typedef void (*GL_COPYMULTITEXIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
typedef void (*GL_COPYMULTITEXSUBIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
typedef void (*GL_COPYMULTITEXSUBIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_GETMULTITEXIMAGEPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
typedef void (*GL_GETMULTITEXPARAMETERFVPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETMULTITEXPARAMETERIVPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETMULTITEXLEVELPARAMETERFVPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat *params);
typedef void (*GL_GETMULTITEXLEVELPARAMETERIVPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint *params);
typedef void (*GL_MULTITEXIMAGE3DPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_MULTITEXSUBIMAGE3DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_COPYMULTITEXSUBIMAGE3DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (*GL_ENABLECLIENTSTATEINDEXEDPROC) (GLenum array, GLuint index);
typedef void (*GL_DISABLECLIENTSTATEINDEXEDPROC) (GLenum array, GLuint index);
typedef void (*GL_GETFLOATINDEXEDVPROC) (GLenum target, GLuint index, GLfloat *data);
typedef void (*GL_GETDOUBLEINDEXEDVPROC) (GLenum target, GLuint index, GLdouble *data);
typedef void (*GL_GETPOINTERINDEXEDVPROC) (GLenum target, GLuint index, void **data);
typedef void (*GL_ENABLEINDEXEDPROC) (GLenum target, GLuint index);
typedef void (*GL_DISABLEINDEXEDPROC) (GLenum target, GLuint index);
typedef GLboolean (*GL_ISENABLEDINDEXEDPROC) (GLenum target, GLuint index);
typedef void (*GL_GETINTEGERINDEXEDVPROC) (GLenum target, GLuint index, GLint *data);
typedef void (*GL_GETBOOLEANINDEXEDVPROC) (GLenum target, GLuint index, GLboolean *data);
typedef void (*GL_COMPRESSEDTEXTUREIMAGE3DPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDTEXTUREIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDTEXTUREIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE3DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE2DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDTEXTURESUBIMAGE1DPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_GETCOMPRESSEDTEXTUREIMAGEPROC) (GLuint texture, GLenum target, GLint lod, void *img);
typedef void (*GL_COMPRESSEDMULTITEXIMAGE3DPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDMULTITEXIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDMULTITEXIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDMULTITEXSUBIMAGE3DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDMULTITEXSUBIMAGE2DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_COMPRESSEDMULTITEXSUBIMAGE1DPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *bits);
typedef void (*GL_GETCOMPRESSEDMULTITEXIMAGEPROC) (GLenum texunit, GLenum target, GLint lod, void *img);
typedef void (*GL_MATRIXLOADTRANSPOSEFPROC) (GLenum mode, const GLfloat *m);
typedef void (*GL_MATRIXLOADTRANSPOSEDPROC) (GLenum mode, const GLdouble *m);
typedef void (*GL_MATRIXMULTTRANSPOSEFPROC) (GLenum mode, const GLfloat *m);
typedef void (*GL_MATRIXMULTTRANSPOSEDPROC) (GLenum mode, const GLdouble *m);
typedef void (*GL_NAMEDBUFFERDATAPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage);
typedef void (*GL_NAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
typedef void *(*GL_MAPNAMEDBUFFERPROC) (GLuint buffer, GLenum access);
typedef GLboolean (*GL_UNMAPNAMEDBUFFERPROC) (GLuint buffer);
typedef void (*GL_GETNAMEDBUFFERPARAMETERIVPROC) (GLuint buffer, GLenum pname, GLint *params);
typedef void (*GL_GETNAMEDBUFFERPOINTERVPROC) (GLuint buffer, GLenum pname, void **params);
typedef void (*GL_GETNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data);
typedef void (*GL_PROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat v0);
typedef void (*GL_PROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
typedef void (*GL_PROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
typedef void (*GL_PROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
typedef void (*GL_PROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint v0);
typedef void (*GL_PROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint v0, GLint v1);
typedef void (*GL_PROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
typedef void (*GL_PROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
typedef void (*GL_PROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
typedef void (*GL_TEXTUREBUFFERPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
typedef void (*GL_MULTITEXBUFFERPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);
typedef void (*GL_TEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_TEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint *params);
typedef void (*GL_GETTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum target, GLenum pname, GLuint *params);
typedef void (*GL_MULTITEXPARAMETERIIVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_MULTITEXPARAMETERIUIVPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint *params);
typedef void (*GL_GETMULTITEXPARAMETERIIVPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETMULTITEXPARAMETERIUIVPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint *params);
typedef void (*GL_PROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint v0);
typedef void (*GL_PROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
typedef void (*GL_PROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
typedef void (*GL_PROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
typedef void (*GL_PROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_PROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERS4FVPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat *params);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERI4IPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERI4IVPROC) (GLuint program, GLenum target, GLuint index, const GLint *params);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERSI4IVPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint *params);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERI4UIPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERI4UIVPROC) (GLuint program, GLenum target, GLuint index, const GLuint *params);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETERSI4UIVPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint *params);
typedef void (*GL_GETNAMEDPROGRAMLOCALPARAMETERIIVPROC) (GLuint program, GLenum target, GLuint index, GLint *params);
typedef void (*GL_GETNAMEDPROGRAMLOCALPARAMETERIUIVPROC) (GLuint program, GLenum target, GLuint index, GLuint *params);
typedef void (*GL_ENABLECLIENTSTATEIPROC) (GLenum array, GLuint index);
typedef void (*GL_DISABLECLIENTSTATEIPROC) (GLenum array, GLuint index);
typedef void (*GL_GETFLOATI_VPROC) (GLenum pname, GLuint index, GLfloat *params);
typedef void (*GL_GETDOUBLEI_VPROC) (GLenum pname, GLuint index, GLdouble *params);
typedef void (*GL_GETPOINTERI_VPROC) (GLenum pname, GLuint index, void **params);
typedef void (*GL_NAMEDPROGRAMSTRINGPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const void *string);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETER4DPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETER4DVPROC) (GLuint program, GLenum target, GLuint index, const GLdouble *params);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETER4FPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
typedef void (*GL_NAMEDPROGRAMLOCALPARAMETER4FVPROC) (GLuint program, GLenum target, GLuint index, const GLfloat *params);
typedef void (*GL_GETNAMEDPROGRAMLOCALPARAMETERDVPROC) (GLuint program, GLenum target, GLuint index, GLdouble *params);
typedef void (*GL_GETNAMEDPROGRAMLOCALPARAMETERFVPROC) (GLuint program, GLenum target, GLuint index, GLfloat *params);
typedef void (*GL_GETNAMEDPROGRAMIVPROC) (GLuint program, GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETNAMEDPROGRAMSTRINGPROC) (GLuint program, GLenum target, GLenum pname, void *string);
typedef void (*GL_NAMEDRENDERBUFFERSTORAGEPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_GETNAMEDRENDERBUFFERPARAMETERIVPROC) (GLuint renderbuffer, GLenum pname, GLint *params);
typedef void (*GL_NAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_NAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
typedef GLenum (*GL_CHECKNAMEDFRAMEBUFFERSTATUSPROC) (GLuint framebuffer, GLenum target);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTURE1DPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTURE2DPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTURE3DPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
typedef void (*GL_NAMEDFRAMEBUFFERRENDERBUFFERPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
typedef void (*GL_GETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
typedef void (*GL_GENERATETEXTUREMIPMAPPROC) (GLuint texture, GLenum target);
typedef void (*GL_GENERATEMULTITEXMIPMAPPROC) (GLenum texunit, GLenum target);
typedef void (*GL_FRAMEBUFFERDRAWBUFFERPROC) (GLuint framebuffer, GLenum mode);
typedef void (*GL_FRAMEBUFFERDRAWBUFFERSPROC) (GLuint framebuffer, GLsizei n, const GLenum *bufs);
typedef void (*GL_FRAMEBUFFERREADBUFFERPROC) (GLuint framebuffer, GLenum mode);
typedef void (*GL_GETFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint *params);
typedef void (*GL_NAMEDCOPYBUFFERSUBDATAPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTUREPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTURELAYERPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
typedef void (*GL_NAMEDFRAMEBUFFERTEXTUREFACEPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);
typedef void (*GL_TEXTURERENDERBUFFERPROC) (GLuint texture, GLenum target, GLuint renderbuffer);
typedef void (*GL_MULTITEXRENDERBUFFERPROC) (GLenum texunit, GLenum target, GLuint renderbuffer);
typedef void (*GL_VERTEXARRAYVERTEXOFFSETPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYCOLOROFFSETPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYEDGEFLAGOFFSETPROC) (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYINDEXOFFSETPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYNORMALOFFSETPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYTEXCOORDOFFSETPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYMULTITEXCOORDOFFSETPROC) (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYFOGCOORDOFFSETPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYSECONDARYCOLOROFFSETPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBOFFSETPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBIOFFSETPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_ENABLEVERTEXARRAYPROC) (GLuint vaobj, GLenum array);
typedef void (*GL_DISABLEVERTEXARRAYPROC) (GLuint vaobj, GLenum array);
typedef void (*GL_ENABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
typedef void (*GL_DISABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
typedef void (*GL_GETVERTEXARRAYINTEGERVPROC) (GLuint vaobj, GLenum pname, GLint *param);
typedef void (*GL_GETVERTEXARRAYPOINTERVPROC) (GLuint vaobj, GLenum pname, void **param);
typedef void (*GL_GETVERTEXARRAYINTEGERI_VPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint *param);
typedef void (*GL_GETVERTEXARRAYPOINTERI_VPROC) (GLuint vaobj, GLuint index, GLenum pname, void **param);
typedef void *(*GL_MAPNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
typedef void (*GL_FLUSHMAPPEDNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
typedef void (*GL_NAMEDBUFFERSTORAGEPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags);
typedef void (*GL_CLEARNAMEDBUFFERDATAPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
typedef void (*GL_CLEARNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLenum internalformat, GLsizeiptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
typedef void (*GL_NAMEDFRAMEBUFFERPARAMETERIPROC) (GLuint framebuffer, GLenum pname, GLint param);
typedef void (*GL_GETNAMEDFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint *params);
typedef void (*GL_PROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble x);
typedef void (*GL_PROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y);
typedef void (*GL_PROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_PROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_PROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_PROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
typedef void (*GL_TEXTUREBUFFERRANGEPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_TEXTURESTORAGE1DPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
typedef void (*GL_TEXTURESTORAGE2DPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_TEXTURESTORAGE3DPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
typedef void (*GL_TEXTURESTORAGE2DMULTISAMPLEPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
typedef void (*GL_TEXTURESTORAGE3DMULTISAMPLEPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
typedef void (*GL_VERTEXARRAYBINDVERTEXBUFFERPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBIFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBLFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBBINDINGPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
typedef void (*GL_VERTEXARRAYVERTEXBINDINGDIVISORPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBLOFFSETPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
typedef void (*GL_TEXTUREPAGECOMMITMENTPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit);
typedef void (*GL_VERTEXARRAYVERTEXATTRIBDIVISORPROC) (GLuint vaobj, GLuint index, GLuint divisor);
typedef void (*GL_COLORMASKINDEXEDPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
typedef void (*GL_DRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
typedef void (*GL_DRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
typedef void (*GL_DRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
typedef void (*GL_BUFFERSTORAGEEXTERNALPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
typedef void (*GL_NAMEDBUFFERSTORAGEEXTERNALPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
typedef void (*GL_FOGCOORDFPROC) (GLfloat coord);
typedef void (*GL_FOGCOORDFVPROC) (const GLfloat *coord);
typedef void (*GL_FOGCOORDDPROC) (GLdouble coord);
typedef void (*GL_FOGCOORDDVPROC) (const GLdouble *coord);
typedef void (*GL_FOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_BLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
typedef void (*GL_RENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
typedef GLboolean (*GL_ISRENDERBUFFERPROC) (GLuint renderbuffer);
typedef void (*GL_BINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
typedef void (*GL_DELETERENDERBUFFERSPROC) (GLsizei n, const GLuint *renderbuffers);
typedef void (*GL_GENRENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
typedef void (*GL_RENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
typedef void (*GL_GETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef GLboolean (*GL_ISFRAMEBUFFERPROC) (GLuint framebuffer);
typedef void (*GL_BINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
typedef void (*GL_DELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint *framebuffers);
typedef void (*GL_GENFRAMEBUFFERSPROC) (GLsizei n, GLuint *framebuffers);
typedef GLenum (*GL_CHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
typedef void (*GL_FRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_FRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
typedef void (*GL_FRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
typedef void (*GL_FRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
typedef void (*GL_GETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
typedef void (*GL_GENERATEMIPMAPPROC) (GLenum target);
typedef void (*GL_PROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value);
typedef void (*GL_PROGRAMENVPARAMETERS4FVPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
typedef void (*GL_PROGRAMLOCALPARAMETERS4FVPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
typedef void (*GL_GETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint *params);
typedef void (*GL_BINDFRAGDATALOCATIONPROC) (GLuint program, GLuint color, const GLchar *name);
typedef GLint (*GL_GETFRAGDATALOCATIONPROC) (GLuint program, const GLchar *name);
typedef void (*GL_UNIFORM1UIPROC) (GLint location, GLuint v0);
typedef void (*GL_UNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1);
typedef void (*GL_UNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
typedef void (*GL_UNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
typedef void (*GL_UNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_UNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint *value);
typedef void (*GL_GETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values);
typedef void (*GL_GETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values);
typedef void (*GL_GETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_HISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
typedef void (*GL_MINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
typedef void (*GL_RESETHISTOGRAMPROC) (GLenum target);
typedef void (*GL_RESETMINMAXPROC) (GLenum target);
typedef void (*GL_INDEXFUNCPROC) (GLenum func, GLclampf ref);
typedef void (*GL_INDEXMATERIALPROC) (GLenum face, GLenum mode);
typedef void (*GL_APPLYTEXTUREPROC) (GLenum mode);
typedef void (*GL_TEXTURELIGHTPROC) (GLenum pname);
typedef void (*GL_TEXTUREMATERIALPROC) (GLenum face, GLenum mode);
typedef void (*GL_GETUNSIGNEDBYTEVPROC) (GLenum pname, GLubyte *data);
typedef void (*GL_GETUNSIGNEDBYTEI_VPROC) (GLenum target, GLuint index, GLubyte *data);
typedef void (*GL_DELETEMEMORYOBJECTSPROC) (GLsizei n, const GLuint *memoryObjects);
typedef GLboolean (*GL_ISMEMORYOBJECTPROC) (GLuint memoryObject);
typedef void (*GL_CREATEMEMORYOBJECTSPROC) (GLsizei n, GLuint *memoryObjects);
typedef void (*GL_MEMORYOBJECTPARAMETERIVPROC) (GLuint memoryObject, GLenum pname, const GLint *params);
typedef void (*GL_GETMEMORYOBJECTPARAMETERIVPROC) (GLuint memoryObject, GLenum pname, GLint *params);
typedef void (*GL_TEXSTORAGEMEM2DPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXSTORAGEMEM2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXSTORAGEMEM3DPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXSTORAGEMEM3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
typedef void (*GL_BUFFERSTORAGEMEMPROC) (GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXTURESTORAGEMEM2DPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXTURESTORAGEMEM2DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXTURESTORAGEMEM3DPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXTURESTORAGEMEM3DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
typedef void (*GL_NAMEDBUFFERSTORAGEMEMPROC) (GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXSTORAGEMEM1DPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset);
typedef void (*GL_TEXTURESTORAGEMEM1DPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset);
typedef void (*GL_IMPORTMEMORYFDPROC) (GLuint memory, GLuint64 size, GLenum handleType, GLint fd);
typedef void (*GL_IMPORTMEMORYWIN32HANDLEPROC) (GLuint memory, GLuint64 size, GLenum handleType, void *handle);
typedef void (*GL_IMPORTMEMORYWIN32NAMEPROC) (GLuint memory, GLuint64 size, GLenum handleType, const void *name);
typedef void (*GL_MULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
typedef void (*GL_MULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount);
typedef void (*GL_SAMPLEMASKPROC) (GLclampf value, GLboolean invert);
typedef void (*GL_SAMPLEPATTERNPROC) (GLenum pattern);
typedef void (*GL_COLORTABLEPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void *table);
typedef void (*GL_GETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, void *data);
typedef void (*GL_GETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_PIXELTRANSFORMPARAMETERIPROC) (GLenum target, GLenum pname, GLint param);
typedef void (*GL_PIXELTRANSFORMPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat param);
typedef void (*GL_PIXELTRANSFORMPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_PIXELTRANSFORMPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_GETPIXELTRANSFORMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETPIXELTRANSFORMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_POINTPARAMETERFPROC) (GLenum pname, GLfloat param);
typedef void (*GL_POINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
typedef void (*GL_POLYGONOFFSETPROC) (GLfloat factor, GLfloat bias);
typedef void (*GL_POLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp);
typedef void (*GL_PROVOKINGVERTEXPROC) (GLenum mode);
typedef void (*GL_RASTERSAMPLESPROC) (GLuint samples, GLboolean fixedsamplelocations);
typedef void (*GL_SECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);
typedef void (*GL_SECONDARYCOLOR3BVPROC) (const GLbyte *v);
typedef void (*GL_SECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);
typedef void (*GL_SECONDARYCOLOR3DVPROC) (const GLdouble *v);
typedef void (*GL_SECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);
typedef void (*GL_SECONDARYCOLOR3FVPROC) (const GLfloat *v);
typedef void (*GL_SECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);
typedef void (*GL_SECONDARYCOLOR3IVPROC) (const GLint *v);
typedef void (*GL_SECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);
typedef void (*GL_SECONDARYCOLOR3SVPROC) (const GLshort *v);
typedef void (*GL_SECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);
typedef void (*GL_SECONDARYCOLOR3UBVPROC) (const GLubyte *v);
typedef void (*GL_SECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);
typedef void (*GL_SECONDARYCOLOR3UIVPROC) (const GLuint *v);
typedef void (*GL_SECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);
typedef void (*GL_SECONDARYCOLOR3USVPROC) (const GLushort *v);
typedef void (*GL_SECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_GENSEMAPHORESPROC) (GLsizei n, GLuint *semaphores);
typedef void (*GL_DELETESEMAPHORESPROC) (GLsizei n, const GLuint *semaphores);
typedef GLboolean (*GL_ISSEMAPHOREPROC) (GLuint semaphore);
typedef void (*GL_SEMAPHOREPARAMETERUI64VPROC) (GLuint semaphore, GLenum pname, const GLuint64 *params);
typedef void (*GL_GETSEMAPHOREPARAMETERUI64VPROC) (GLuint semaphore, GLenum pname, GLuint64 *params);
typedef void (*GL_WAITSEMAPHOREPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts);
typedef void (*GL_SIGNALSEMAPHOREPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts);
typedef void (*GL_IMPORTSEMAPHOREFDPROC) (GLuint semaphore, GLenum handleType, GLint fd);
typedef void (*GL_IMPORTSEMAPHOREWIN32HANDLEPROC) (GLuint semaphore, GLenum handleType, void *handle);
typedef void (*GL_IMPORTSEMAPHOREWIN32NAMEPROC) (GLuint semaphore, GLenum handleType, const void *name);
typedef void (*GL_USESHADERPROGRAMPROC) (GLenum type, GLuint program);
typedef void (*GL_ACTIVEPROGRAMPROC) (GLuint program);
typedef GLuint (*GL_CREATESHADERPROGRAMPROC) (GLenum type, const GLchar *string);
typedef void (*GL_FRAMEBUFFERFETCHBARRIERPROC) (void);
typedef void (*GL_BINDIMAGETEXTUREPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);
typedef void (*GL_MEMORYBARRIERPROC) (GLbitfield barriers);
typedef void (*GL_STENCILCLEARTAGPROC) (GLsizei stencilTagBits, GLuint stencilClearTag);
typedef void (*GL_ACTIVESTENCILFACEPROC) (GLenum face);
typedef void (*GL_TEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_FRAMEBUFFERTEXTURELAYERPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
typedef void (*GL_TEXBUFFERPROC) (GLenum target, GLenum internalformat, GLuint buffer);
typedef void (*GL_TEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_TEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint *params);
typedef void (*GL_GETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint *params);
typedef void (*GL_CLEARCOLORIIPROC) (GLint red, GLint green, GLint blue, GLint alpha);
typedef void (*GL_CLEARCOLORIUIPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha);
typedef GLboolean (*GL_ARETEXTURESRESIDENTPROC) (GLsizei n, const GLuint *textures, GLboolean *residences);
typedef void (*GL_BINDTEXTUREPROC) (GLenum target, GLuint texture);
typedef void (*GL_DELETETEXTURESPROC) (GLsizei n, const GLuint *textures);
typedef void (*GL_GENTEXTURESPROC) (GLsizei n, GLuint *textures);
typedef GLboolean (*GL_ISTEXTUREPROC) (GLuint texture);
typedef void (*GL_PRIORITIZETEXTURESPROC) (GLsizei n, const GLuint *textures, const GLclampf *priorities);
typedef void (*GL_TEXTURENORMALPROC) (GLenum mode);
typedef void (*GL_GETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64 *params);
typedef void (*GL_GETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64 *params);
typedef void (*GL_BEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode);
typedef void (*GL_ENDTRANSFORMFEEDBACKPROC) (void);
typedef void (*GL_BINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
typedef void (*GL_BINDBUFFEROFFSETPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
typedef void (*GL_BINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
typedef void (*GL_TRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
typedef void (*GL_GETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
typedef void (*GL_ARRAYELEMENTPROC) (GLint i);
typedef void (*GL_COLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer);
typedef void (*GL_DRAWARRAYSPROC) (GLenum mode, GLint first, GLsizei count);
typedef void (*GL_EDGEFLAGPOINTERPROC) (GLsizei stride, GLsizei count, const GLboolean *pointer);
typedef void (*GL_GETPOINTERVPROC) (GLenum pname, void **params);
typedef void (*GL_INDEXPOINTERPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer);
typedef void (*GL_NORMALPOINTERPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer);
typedef void (*GL_TEXCOORDPOINTERPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer);
typedef void (*GL_VERTEXPOINTERPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer);
typedef void (*GL_VERTEXATTRIBL1DPROC) (GLuint index, GLdouble x);
typedef void (*GL_VERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y);
typedef void (*GL_VERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_VERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_VERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble *v);
typedef void (*GL_VERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_GETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble *params);
typedef void (*GL_BEGINVERTEXSHADERPROC) (void);
typedef void (*GL_ENDVERTEXSHADERPROC) (void);
typedef void (*GL_BINDVERTEXSHADERPROC) (GLuint id);
typedef GLuint (*GL_GENVERTEXSHADERSPROC) (GLuint range);
typedef void (*GL_DELETEVERTEXSHADERPROC) (GLuint id);
typedef void (*GL_SHADEROP1PROC) (GLenum op, GLuint res, GLuint arg1);
typedef void (*GL_SHADEROP2PROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
typedef void (*GL_SHADEROP3PROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
typedef void (*GL_SWIZZLEPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
typedef void (*GL_WRITEMASKPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
typedef void (*GL_INSERTCOMPONENTPROC) (GLuint res, GLuint src, GLuint num);
typedef void (*GL_EXTRACTCOMPONENTPROC) (GLuint res, GLuint src, GLuint num);
typedef GLuint (*GL_GENSYMBOLSPROC) (GLenum datatype, GLenum storagetype, GLenum range, GLuint components);
typedef void (*GL_SETINVARIANTPROC) (GLuint id, GLenum type, const void *addr);
typedef void (*GL_SETLOCALCONSTANTPROC) (GLuint id, GLenum type, const void *addr);
typedef void (*GL_VARIANTBVPROC) (GLuint id, const GLbyte *addr);
typedef void (*GL_VARIANTSVPROC) (GLuint id, const GLshort *addr);
typedef void (*GL_VARIANTIVPROC) (GLuint id, const GLint *addr);
typedef void (*GL_VARIANTFVPROC) (GLuint id, const GLfloat *addr);
typedef void (*GL_VARIANTDVPROC) (GLuint id, const GLdouble *addr);
typedef void (*GL_VARIANTUBVPROC) (GLuint id, const GLubyte *addr);
typedef void (*GL_VARIANTUSVPROC) (GLuint id, const GLushort *addr);
typedef void (*GL_VARIANTUIVPROC) (GLuint id, const GLuint *addr);
typedef void (*GL_VARIANTPOINTERPROC) (GLuint id, GLenum type, GLuint stride, const void *addr);
typedef void (*GL_ENABLEVARIANTCLIENTSTATEPROC) (GLuint id);
typedef void (*GL_DISABLEVARIANTCLIENTSTATEPROC) (GLuint id);
typedef GLuint (*GL_BINDLIGHTPARAMETERPROC) (GLenum light, GLenum value);
typedef GLuint (*GL_BINDMATERIALPARAMETERPROC) (GLenum face, GLenum value);
typedef GLuint (*GL_BINDTEXGENPARAMETERPROC) (GLenum unit, GLenum coord, GLenum value);
typedef GLuint (*GL_BINDTEXTUREUNITPARAMETERPROC) (GLenum unit, GLenum value);
typedef GLuint (*GL_BINDPARAMETERPROC) (GLenum value);
typedef GLboolean (*GL_ISVARIANTENABLEDPROC) (GLuint id, GLenum cap);
typedef void (*GL_GETVARIANTBOOLEANVPROC) (GLuint id, GLenum value, GLboolean *data);
typedef void (*GL_GETVARIANTINTEGERVPROC) (GLuint id, GLenum value, GLint *data);
typedef void (*GL_GETVARIANTFLOATVPROC) (GLuint id, GLenum value, GLfloat *data);
typedef void (*GL_GETVARIANTPOINTERVPROC) (GLuint id, GLenum value, void **data);
typedef void (*GL_GETINVARIANTBOOLEANVPROC) (GLuint id, GLenum value, GLboolean *data);
typedef void (*GL_GETINVARIANTINTEGERVPROC) (GLuint id, GLenum value, GLint *data);
typedef void (*GL_GETINVARIANTFLOATVPROC) (GLuint id, GLenum value, GLfloat *data);
typedef void (*GL_GETLOCALCONSTANTBOOLEANVPROC) (GLuint id, GLenum value, GLboolean *data);
typedef void (*GL_GETLOCALCONSTANTINTEGERVPROC) (GLuint id, GLenum value, GLint *data);
typedef void (*GL_GETLOCALCONSTANTFLOATVPROC) (GLuint id, GLenum value, GLfloat *data);
typedef void (*GL_VERTEXWEIGHTFPROC) (GLfloat weight);
typedef void (*GL_VERTEXWEIGHTFVPROC) (const GLfloat *weight);
typedef void (*GL_VERTEXWEIGHTPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef GLboolean (*GL_ACQUIREKEYEDMUTEXWIN32PROC) (GLuint memory, GLuint64 key, GLuint timeout);
typedef GLboolean (*GL_RELEASEKEYEDMUTEXWIN32PROC) (GLuint memory, GLuint64 key);
typedef void (*GL_WINDOWRECTANGLESPROC) (GLenum mode, GLsizei count, const GLint *box);
typedef GLsync (*GL_IMPORTSYNCPROC) (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags);
typedef void (*GL_FRAMETERMINATORGREMEDYPROC) (void);
typedef void (*GL_STRINGMARKERGREMEDYPROC) (GLsizei len, const void *string);
typedef void (*GL_IMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, GLint param);
typedef void (*GL_IMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, GLfloat param);
typedef void (*GL_IMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_IMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_GETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_GETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_MULTIMODEDRAWARRAYSIBMPROC) (const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
typedef void (*GL_MULTIMODEDRAWELEMENTSIBMPROC) (const GLenum *mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount, GLint modestride);
typedef void (*GL_FLUSHSTATICDATAIBMPROC) (GLenum target);
typedef void (*GL_COLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_SECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_EDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean **pointer, GLint ptrstride);
typedef void (*GL_FOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_INDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_NORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_TEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_VERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void **pointer, GLint ptrstride);
typedef void (*GL_BLENDFUNCSEPARATEINGRPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
typedef void (*GL_FRAMEBUFFERPARAMETERIMESAPROC) (GLenum target, GLenum pname, GLint param);
typedef void (*GL_GETFRAMEBUFFERPARAMETERIVMESAPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_RESIZEBUFFERSMESAPROC) (void);
typedef void (*GL_WINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);
typedef void (*GL_WINDOWPOS2DVMESAPROC) (const GLdouble *v);
typedef void (*GL_WINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);
typedef void (*GL_WINDOWPOS2FVMESAPROC) (const GLfloat *v);
typedef void (*GL_WINDOWPOS2IMESAPROC) (GLint x, GLint y);
typedef void (*GL_WINDOWPOS2IVMESAPROC) (const GLint *v);
typedef void (*GL_WINDOWPOS2SMESAPROC) (GLshort x, GLshort y);
typedef void (*GL_WINDOWPOS2SVMESAPROC) (const GLshort *v);
typedef void (*GL_WINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z);
typedef void (*GL_WINDOWPOS3DVMESAPROC) (const GLdouble *v);
typedef void (*GL_WINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z);
typedef void (*GL_WINDOWPOS3FVMESAPROC) (const GLfloat *v);
typedef void (*GL_WINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z);
typedef void (*GL_WINDOWPOS3IVMESAPROC) (const GLint *v);
typedef void (*GL_WINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z);
typedef void (*GL_WINDOWPOS3SVMESAPROC) (const GLshort *v);
typedef void (*GL_WINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (*GL_WINDOWPOS4DVMESAPROC) (const GLdouble *v);
typedef void (*GL_WINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
typedef void (*GL_WINDOWPOS4FVMESAPROC) (const GLfloat *v);
typedef void (*GL_WINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w);
typedef void (*GL_WINDOWPOS4IVMESAPROC) (const GLint *v);
typedef void (*GL_WINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w);
typedef void (*GL_WINDOWPOS4SVMESAPROC) (const GLshort *v);
typedef void (*GL_FRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
typedef void (*GL_FRAMEBUFFERTEXTUREFACEPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
typedef void (*GL_VERTEXATTRIBI1IPROC) (GLuint index, GLint x);
typedef void (*GL_VERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
typedef void (*GL_VERTEXATTRIBI3IPROC) (GLuint index, GLint x, GLint y, GLint z);
typedef void (*GL_VERTEXATTRIBI4IPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
typedef void (*GL_VERTEXATTRIBI1UIPROC) (GLuint index, GLuint x);
typedef void (*GL_VERTEXATTRIBI2UIPROC) (GLuint index, GLuint x, GLuint y);
typedef void (*GL_VERTEXATTRIBI3UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
typedef void (*GL_VERTEXATTRIBI4UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
typedef void (*GL_VERTEXATTRIBI1IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI2IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI3IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI4IVPROC) (GLuint index, const GLint *v);
typedef void (*GL_VERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint *v);
typedef void (*GL_VERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte *v);
typedef void (*GL_VERTEXATTRIBI4SVPROC) (GLuint index, const GLshort *v);
typedef void (*GL_VERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte *v);
typedef void (*GL_VERTEXATTRIBI4USVPROC) (GLuint index, const GLushort *v);
typedef void (*GL_VERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
typedef void (*GL_GETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint *params);
typedef void (*GL_GETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint *params);
typedef void (*GL_FRAMEBUFFERTEXTUREMULTIVIEWOVRPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews);
typedef void (*GL_HINTPGIPROC) (GLenum target, GLint mode);
typedef void (*GL_DETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
typedef void (*GL_GETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
typedef void (*GL_FOGFUNCSGISPROC) (GLsizei n, const GLfloat *points);
typedef void (*GL_GETFOGFUNCSGISPROC) (GLfloat *points);
typedef void (*GL_SAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert);
typedef void (*GL_SAMPLEPATTERNSGISPROC) (GLenum pattern);
typedef void (*GL_PIXELTEXGENPARAMETERISGISPROC) (GLenum pname, GLint param);
typedef void (*GL_PIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, const GLint *params);
typedef void (*GL_PIXELTEXGENPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
typedef void (*GL_PIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
typedef void (*GL_GETPIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, GLint *params);
typedef void (*GL_GETPIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, GLfloat *params);
typedef void (*GL_POINTPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
typedef void (*GL_POINTPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
typedef void (*GL_SHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
typedef void (*GL_GETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
typedef void (*GL_TEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, const void *pixels);
typedef void (*GL_TEXTURECOLORMASKSGISPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
typedef void (*GL_GETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat *weights);
typedef void (*GL_TEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat *weights);
typedef void (*GL_COLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table);
typedef void (*GL_COLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (*GL_COLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (*GL_COPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
typedef void (*GL_GETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, void *table);
typedef void (*GL_GETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat *params);
typedef void (*GL_GETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (*GL_FINISHTEXTURESUNXPROC) (void);