+ <enum name="PROGRAM_MATRIX_EXT" value="0x8E2D"/>
+ <enum name="TRANSPOSE_PROGRAM_MATRIX_EXT" value="0x8E2E"/>
+ <enum name="PROGRAM_MATRIX_STACK_DEPTH_EXT" value="0x8E2F"/>
+
+ <!-- GL1.0 extras -->
+
+ <function name="MatrixLoadfEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="m" type="const GLfloat *" />
+ </function>
+ <function name="MatrixLoaddEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="m" type="const GLdouble *" />
+ </function>
+ <function name="MatrixMultfEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="m" type="const GLfloat *" />
+ </function>
+ <function name="MatrixMultdEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="m" type="const GLdouble *" />
+ </function>
+ <function name="MatrixLoadIdentityEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ </function>
+ <function name="MatrixRotatefEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="angle" type="GLfloat" />
+ <param name="x" type="GLfloat" />
+ <param name="y" type="GLfloat" />
+ <param name="z" type="GLfloat" />
+ </function>
+ <function name="MatrixRotatedEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="angle" type="GLdouble" />
+ <param name="x" type="GLdouble" />
+ <param name="y" type="GLdouble" />
+ <param name="z" type="GLdouble" />
+ </function>
+ <function name="MatrixScalefEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="x" type="GLfloat" />
+ <param name="y" type="GLfloat" />
+ <param name="z" type="GLfloat" />
+ </function>
+ <function name="MatrixScaledEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="x" type="GLdouble" />
+ <param name="y" type="GLdouble" />
+ <param name="z" type="GLdouble" />
+ </function>
+ <function name="MatrixTranslatefEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="x" type="GLfloat" />
+ <param name="y" type="GLfloat" />
+ <param name="z" type="GLfloat" />
+ </function>
+ <function name="MatrixTranslatedEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="x" type="GLdouble" />
+ <param name="y" type="GLdouble" />
+ <param name="z" type="GLdouble" />
+ </function>
+ <function name="MatrixOrthoEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="l" type="GLdouble" />
+ <param name="r" type="GLdouble" />
+ <param name="b" type="GLdouble" />
+ <param name="t" type="GLdouble" />
+ <param name="n" type="GLdouble" />
+ <param name="f" type="GLdouble" />
+ </function>
+ <function name="MatrixFrustumEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ <param name="l" type="GLdouble" />
+ <param name="r" type="GLdouble" />
+ <param name="b" type="GLdouble" />
+ <param name="t" type="GLdouble" />
+ <param name="n" type="GLdouble" />
+ <param name="f" type="GLdouble" />
+ </function>
+ <function name="MatrixPushEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ </function>
+ <function name="MatrixPopEXT" offset="assign">
+ <param name="matrixMode" type="GLenum" />
+ </function>
+
+ <!-- OpenGL 1.1 -->
+
+ <function name="GetTextureParameterivEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="GLint *" />
+ </function>
+
+ <function name="GetTextureParameterfvEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="float *" />
+ </function>
+
+ <function name="GetTextureLevelParameterivEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="GLint *" />
+ </function>
+
+ <function name="GetTextureLevelParameterfvEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="float *" />
+ </function>
+
+ <function name="TextureParameteriEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="int" />
+ </function>
+
+ <function name="TextureParameterivEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="const GLint *" />
+ </function>
+
+ <function name="TextureParameterfEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="float" />
+ </function>
+
+ <function name="TextureParameterfvEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="const float *" />
+ </function>
+
+ <function name="TextureImage1DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalFormat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="TextureImage2DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalFormat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="TextureImage3DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalFormat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="depth" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="TextureSubImage1DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="TextureSubImage2DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="yoffset" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="TextureSubImage3DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="yoffset" type="GLint" />
+ <param name="zoffset" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="depth" type="GLsizei" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid *" />
+ </function>
+
+ <function name="CopyTextureImage1DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalFormat" type="GLenum" />
+ <param name="x" type="GLint" />
+ <param name="y" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="border" type="int" />
+ </function>
+
+ <function name="CopyTextureImage2DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalFormat" type="GLenum" />
+ <param name="x" type="GLint" />
+ <param name="y" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="border" type="int" />
+ </function>
+
+ <function name="CopyTextureSubImage1DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="x" type="GLint" />
+ <param name="y" type="GLint" />
+ <param name="width" type="GLsizei" />
+ </function>
+
+ <function name="CopyTextureSubImage2DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="yoffset" type="GLint" />
+ <param name="x" type="GLint" />
+ <param name="y" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ </function>
+
+ <function name="CopyTextureSubImage3DEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="yoffset" type="GLint" />
+ <param name="zoffset" type="GLint" />
+ <param name="x" type="GLint" />
+ <param name="y" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ </function>
+
+ <function name="GetTextureImageEXT">
+ <param name="texture" type="GLuint" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="GLvoid *" />
+ </function>
+
+ <!-- OpenGL 1.2.1 -->
+
+ <function name="BindMultiTextureEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="texture" type="GLuint" />
+ </function>
+
+ <function name="EnableClientStateIndexedEXT" alias="EnableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
+
+ <function name="DisableClientStateIndexedEXT" alias="DisableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
+
+ <function name="GetFloatIndexedvEXT" alias="GetFloati_v">
+ <param name="target" type="GLenum" />
+ <param name="index" type="GLuint" />
+ <param name="params" type="GLfloat*" />
+ </function>
+
+ <function name="GetDoubleIndexedvEXT" alias="GetDoublei_v">
+ <param name="target" type="GLenum" />
+ <param name="index" type="GLuint" />
+ <param name="params" type="GLdouble*" />
+ </function>
+
+ <function name="GetPointerIndexedvEXT">
+ <param name="target" type="GLenum" />
+ <param name="index" type="GLuint" />
+ <param name="params" type="GLvoid**" />
+ </function>
+
+ <function name="MultiTexEnviEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLint" />
+ </function>
+
+ <function name="MultiTexEnvivEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="const GLint *" />
+ </function>
+
+ <function name="MultiTexEnvfEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLfloat" />
+ </function>
+
+ <function name="MultiTexEnvfvEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="const GLfloat *" />
+ </function>
+
+ <function name="GetMultiTexEnvivEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLint *" />
+ </function>
+
+ <function name="GetMultiTexEnvfvEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLfloat *" />
+ </function>
+
+ <function name="MultiTexParameteriEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLint" />
+ </function>
+
+ <function name="MultiTexParameterivEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="const GLint*" />
+ </function>
+
+ <function name="MultiTexParameterfEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="GLfloat" />
+ </function>
+
+ <function name="MultiTexParameterfvEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="param" type="const GLfloat*" />
+ </function>
+
+ <function name="GetMultiTexParameterivEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="GLint*" />
+ </function>
+
+ <function name="GetMultiTexParameterfvEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="pname" type="GLenum" />
+ <param name="params" type="GLfloat*" />
+ </function>
+
+ <function name="GetMultiTexImageEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="GLvoid*" />
+ </function>
+
+ <function name="MultiTexImage1DEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalformat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid*" />
+ </function>
+
+ <function name="MultiTexImage2DEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalformat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid*" />
+ </function>
+
+ <function name="MultiTexImage3DEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="internalformat" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="height" type="GLsizei" />
+ <param name="depth" type="GLsizei" />
+ <param name="border" type="GLint" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid*" />
+ </function>
+
+ <function name="MultiTexSubImage1DEXT">
+ <param name="texunit" type="GLenum" />
+ <param name="target" type="GLenum" />
+ <param name="level" type="GLint" />
+ <param name="xoffset" type="GLint" />
+ <param name="width" type="GLsizei" />
+ <param name="format" type="GLenum" />
+ <param name="type" type="GLenum" />
+ <param name="pixels" type="const GLvoid*" />
+ </function>