' ########################################################################################
' Microsoft Windows
' File: CGLEXT.INC
' Contents: Wrapper class for OpenGL extensions.
' Copyright (c) 2011-2013 Jos? Roca
' Portions Copyright (c) The Khronos Group Inc.
' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
' EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
' MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
' ########################################################################################
#IF NOT %DEF(PBX_CGLEXT_PBI)
#DEFINE PBX_CGLEXT_PBI
%EQUATE `CGLEXT_INC = 1
#INCLUDE ONCE "Legacy/Graphics/glext.inc"
' // Note: &H8007007F& is the HRESULT equivalent to the system error code ERROR_PROC_NOT_FOUND:
' // The specified procedure could not be found. You can get a localized string message
' // calling OBJRESULT$.
CLASS CGLEXT
 INTERFACE IGLEXT : INHERIT IAutomation
 ' =====================================================================================
 ' Set the blend color.
 ' void glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
 ' =====================================================================================
 METHOD glBlendColor (BYVAL red AS SINGLE, BYVAL green AS SINGLE, BYVAL blue AS SINGLE, BYVAL alpha AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendColor")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendColor(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the blend equation
 ' void glBlendEquation (GLenum mode);
 ' =====================================================================================
 METHOD glBlendEquation (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquation(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Render primitives from array data.
 ' void glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
 ' =====================================================================================
 METHOD glDrawRangeElements (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL pIndices AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawRangeElements")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawRangeElements(dwMode, dwStart, dwEnd, nCount, dwType, pindices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a three-dimensional texture image.
 ' void glTexImage3D (GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
 ' typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat,
 ' GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexImage3D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL ppixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage3D(dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies a three-dimensional (3D) texture subimage.
 ' void glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexSubImage3D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL ppixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexSubImage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexSubImage3D(dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Copy a three-dimensional texture subimage.
 ' void glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyTexSubImage3D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexSubImage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexSubImage3D(dwTarget, nLevel, xoffset, yoffset, zoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Defines a color lookup table
 ' void glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
 ' =====================================================================================
 METHOD glColorTable (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTable")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTable(dwTarget, internalformat, nWidth, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set color lookup table parameters.
 ' void glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glColorTableParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set color lookup table parameters.
 ' void glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glColorTableParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Copy pixels into a color table.
 ' void glCopyColorTable (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyColorTable (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyColorTable")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyColorTable(dwTarget, internalformat, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Retrieve contents of a color lookup table.
 ' void glGetColorTable (GLenum target, GLenum format, GLenum type, GLvoid *table);
 ' =====================================================================================
 METHOD glGetColorTable (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTable")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTable(dwTarget, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get color lookup table parameters.
 ' void glGetColorTableParameterfv (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetColorTableParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get color lookup table parameters.
 ' void glGetColorTableParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetColorTableParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Respecify a portion of a color table.
 ' void glColorSubTable (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
 ' =====================================================================================
 METHOD glColorSubTable (BYVAL dwTarget AS DWORD, BYVAL nStart AS LONG, BYVAL nCount AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorSubTable")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorSubTable(dwTarget, nStart, nCount, dwFormat, dwType, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Respecify a portion of a color table.
 ' void glCopyColorSubTable (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyColorSubTable (BYVAL dwTarget AS DWORD, BYVAL nStart AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyColorSubTable")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyColorSubTable(dwTarget, nStart, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a one-dimensional convolution filter.
 ' void glConvolutionFilter1D (GLenum target, GLenum internalformat, GLsizei width,
 ' GLenum format, GLenum type, const GLvoid *image);
 ' =====================================================================================
 METHOD glConvolutionFilter1D (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pImage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionFilter1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionFilter1D(dwTarget, internalformat, nWidth, dwFormat, dwType, pImage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a two-dimensional convolution filter.
 ' void glConvolutionFilter2D (GLenum target, GLenum internalformat, GLsizei width,
 ' GLsizei height, GLenum format, GLenum type, const GLvoid *image);
 ' =====================================================================================
 METHOD glConvolutionFilter2D (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pImage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionFilter2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionFilter2D(dwTarget, internalformat, nWidth, nHeight, dwFormat, dwType, pImage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set convolution parameters.
 ' void glConvolutionParameterf (GLenum target, GLenum pname, GLfloat params);
 ' =====================================================================================
 METHOD glConvolutionParameterf (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterf(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set convolution parameters.
 ' void glConvolutionParameterfv (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glConvolutionParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set convolution parameters.
 ' void glConvolutionParameteri (GLenum target, GLenum pname, GLint params);
 ' =====================================================================================
 METHOD glConvolutionParameteri (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameteri(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set convolution parameters.
 ' void glConvolutionParameteriv (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glConvolutionParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Copy pixels into a one-dimensional convolution filter.
 ' void glCopyConvolutionFilter1D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyConvolutionFilter1D (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyConvolutionFilter1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyConvolutionFilter1D(dwTarget, internalformat, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Copy pixels into a two-dimensional convolution filter.
 ' void glCopyConvolutionFilter2D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyConvolutionFilter2D (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyConvolutionFilter2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyConvolutionFilter2D(dwTarget, internalformat, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get current 1D or 2D convolution filter kernel.
 ' void glGetConvolutionFilter (GLenum target, GLenum format, GLenum type, GLvoid *image);
 ' =====================================================================================
 METHOD glGetConvolutionFilter (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pImage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionFilter")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionFilter(dwTarget, dwFormat, dwType, pImage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get convolution parameters.
 ' void glGetConvolutionParameterfv (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetConvolutionParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get convolution parameters.
 ' void glGetConvolutionParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetConvolutionParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get separable convolution filter kernel images.
 ' void glGetSeparableFilter (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
 ' =====================================================================================
 METHOD glGetSeparableFilter (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pRow AS DWORD, BYVAL pColumn AS DWORD, BYVAL pSpan AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSeparableFilter")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSeparableFilter(dwTarget, dwFormat, dwType, pRow, pColumn, pSpan)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a separable two-dimensional convolution filter.
 ' void glSeparableFilter2D (GLenum target, GLenum internalformat, GLsizei width,
 ' GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
 ' =====================================================================================
 METHOD glSeparableFilter2D (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWIdth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pRow AS DWORD, BYVAL pColumn AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSeparableFilter2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSeparableFilter2D(dwTarget, internalformat, nWidth, nHeight, dwFormat, dwType, pRow, pColumn)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get histogram table.
 ' void glGetHistogram (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
 ' =====================================================================================
 METHOD glGetHistogram (BYVAL dwTarget AS DWORD, BYVAL bReset AS BYTE, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pValues AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogram(dwTarget, bReset, dwFormat, dwType, pValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get histogram parameters.
 ' void glGetHistogramParameterfv (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetHistogramParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get histogram parameters.
 ' void glGetHistogramParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetHistogramParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get minimum and maximum pixel values.
 ' void glGetMinmax (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
 ' =====================================================================================
 METHOD glGetMinmax (BYVAL dwTarget AS DWORD, BYVAL bReset AS BYTE, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL values AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmax")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmax(dwTarget, breset, dwFormat, dwType, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get minmax parameters.
 ' void glGetMinmaxParameterfv (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMinmaxParameterfv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmaxParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmaxParameterfv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get minmax parameters.
 ' void glGetMinmaxParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMinmaxParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmaxParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmaxParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define histogram table.
 ' void glHistogram (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
 ' =====================================================================================
 METHOD glHistogram (BYVAL dwTarget AS DWORD, BYVAL nWidth AS LONG, BYVAL internalformat AS DWORD, BYVAL bSink AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glHistogram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glHistogram(dwTarget, nWidth, internalformat, bSink)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define minmax table.
 ' void glMinmax (GLenum target, GLenum internalformat, GLboolean sink);
 ' =====================================================================================
 METHOD glMinmax (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL bSink AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMinmax")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMinmax(dwTarget, internalformat, bSink)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Reset histogram table entries to zero.
 ' void glResetHistogram (GLenum target);
 ' =====================================================================================
 METHOD glResetHistogram (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResetHistogram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResetHistogram(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Reset minmax table entries to initial values
 ' void glResetMinmax (GLenum target);
 ' =====================================================================================
 METHOD glResetMinmax (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResetMinmax")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResetMinmax(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Select server-side active texture unit.
 ' void glActiveTexture (GLenum texture);
 ' =====================================================================================
 METHOD glActiveTexture (BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveTexture")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveTexture(dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify mask to modify multisampled pixel fragments
 ' void glSampleCoverage (GLclampf value, GLboolean invert);
 ' =====================================================================================
 METHOD glSampleCoverage (BYVAL value AS SINGLE, BYVAL bInvert AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleCoverage")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleCoverage(value, bInvert)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a three-dimensional texture image in a compressed format.
 ' void glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage3D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage3D(dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a two-dimensional compressed texture image.
 ' void glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage2D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage2D(dwTarget, nLevel, internalformat, nWidth, nHeight, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a one-dimensional texture image in a compressed format.
 ' void glCompressedTexImage1D (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage1D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage1D(dwTarget, nLevel, internalformat, nWidth, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a three-dimensional texture subimage in a compressed format
 ' void glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage3D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage3D(dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a two-dimensional texture subimage in a compressed format
 ' void glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage2D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage2D(dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify a one-dimensional texture subimage in a compressed format.
 ' void glCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset,
 ' GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage1D (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage1D(dwTarget, nLevel, xoffset, nWidth, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return a compressed texture image.
 ' void glGetCompressedTexImage (GLenum target, GLint level, GLvoid *img);
 ' =====================================================================================
 METHOD glGetCompressedTexImage (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCompressedTexImage")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCompressedTexImage(dwTarget, nLevel, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Select client-side active texture unit.
 ' void glClientActiveTexture (GLenum texture);
 ' =====================================================================================
 METHOD glClientActiveTexture (BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClientActiveTexture")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClientActiveTexture(dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1d (GLenum target, GLdouble s);
 ' =====================================================================================
 METHOD glMultiTexCoord1d (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1d(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1dv (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1dv (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1dv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1f (GLenum target, GLfloat s);
 ' =====================================================================================
 METHOD glMultiTexCoord1f (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1f(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1fv (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1fv (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1fv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1i (GLenum target, GLint s);
 ' =====================================================================================
 METHOD glMultiTexCoord1i (BYVAL dwTarget AS DWORD, BYVAL s AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1i(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1iv (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1iv (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1iv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1s (GLenum target, GLshort s);
 ' =====================================================================================
 METHOD glMultiTexCoord1s (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1s(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord1sv (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1sv (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1sv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2d (GLenum target, GLdouble s, GLdouble t);
 ' =====================================================================================
 METHOD glMultiTexCoord2d (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2d(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2dv (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2dv (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2dv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2f (GLenum target, GLfloat s, GLfloat t);
 ' =====================================================================================
 METHOD glMultiTexCoord2f (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2f(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2fv (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2fv (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2fv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2i (GLenum target, GLint s, GLint t);
 ' =====================================================================================
 METHOD glMultiTexCoord2i (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2i(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2iv (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2iv (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2iv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2s (GLenum target, GLshort s, GLshort t);
 ' =====================================================================================
 METHOD glMultiTexCoord2s (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2s(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord2sv (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2sv (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2sv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3d (GLenum target, GLdouble s, GLdouble t, GLdouble r);
 ' =====================================================================================
 METHOD glMultiTexCoord3d (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE, BYVAL r AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3d(dwTarget, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3dv (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3dv (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3dv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3f (GLenum target, GLfloat s, GLfloat t, GLfloat r);
 ' =====================================================================================
 METHOD glMultiTexCoord3f (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL r AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3f(dwTarget, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3fv (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3fv (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3fv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3i (GLenum target, GLint s, GLint t, GLint r);
 ' =====================================================================================
 METHOD glMultiTexCoord3i (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3i(dwTarget, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3iv (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3iv (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3iv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3s (GLenum target, GLshort s, GLshort t, GLshort r);
 ' =====================================================================================
 METHOD glMultiTexCoord3s (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER, BYVAL r AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3s(dwTarget, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord3sv (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3sv (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3sv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4d (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
 ' =====================================================================================
 METHOD glMultiTexCoord4d (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE, BYVAL r AS DOUBLE, BYVAL q AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4d(dwTarget, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4dv (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4dv (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4dv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4f (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
 ' =====================================================================================
 METHOD glMultiTexCoord4f (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL r AS SINGLE, BYVAL q AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4f(dwTarget, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4fv (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4fv (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4fv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4i (GLenum target, GLint s, GLint t, GLint r, GLint q);
 ' =====================================================================================
 METHOD glMultiTexCoord4i (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG, BYVAL q AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4i(dwTarget, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4iv (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4iv (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4iv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4s (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
 ' =====================================================================================
 METHOD glMultiTexCoord4s (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER, BYVAL r AS INTEGER, BYVAL q AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4s(dwTarget, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current texture coordinates.
 ' void glMultiTexCoord4sv (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4sv (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4sv(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Replace the current matrix with the specified row-major ordered matrix
 ' void glLoadTransposeMatrixf (const GLfloat *m);
 ' =====================================================================================
 METHOD glLoadTransposeMatrixf (BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadTransposeMatrixf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadTransposeMatrixf(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Replace the current matrix with the specified row-major ordered matrix
 ' void glLoadTransposeMatrixd (const GLdouble *m);
 ' =====================================================================================
 METHOD glLoadTransposeMatrixd (BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadTransposeMatrixd")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadTransposeMatrixd(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Replace the current matrix with the specified row-major ordered matrix
 ' void glMultTransposeMatrixf (const GLfloat *m);
 ' =====================================================================================
 METHOD glMultTransposeMatrixf (BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultTransposeMatrixf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultTransposeMatrixf(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Replace the current matrix with the specified row-major ordered matrix
 ' void glMultTransposeMatrixd (const GLdouble *m);
 ' =====================================================================================
 METHOD glMultTransposeMatrixd (BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultTransposeMatrixd")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultTransposeMatrixd(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify pixel arithmetic for RGB and alpha components separately.
 ' void glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparate (BYVAL srcRGB AS DWORD, BYVAL dstRGB AS DWORD, BYVAL srcAlpha AS DWORD, BYVAL dstAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparate")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Render multiple sets of primitives from array data.
 ' void glMultiDrawArrays (GLenum mode, GLint *first, GLsizei *count, GLsizei drawcount);
 ' =====================================================================================
 METHOD glMultiDrawArrays (BYVAL dwMode AS DWORD, BYREF nFirst AS LONG, BYREF nCount AS LONG, BYVAL drawcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawArrays")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawArrays(dwMode, nFirst, nCount, drawcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Render multiple sets of primitives by specifying indices of array data elements.
 ' void glMultiDrawElements (GLenum mode, const GLsizei *count, GLenum type,
 ' const GLvoid* *indices, GLsizei primcount);
 ' =====================================================================================
 METHOD glMultiDrawElements (BYVAL dwMode AS DWORD, BYREF nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElements")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElements(dwMode, nCount, dwType, indices, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify parameters for point rasterization.
 ' void glPointParameterf (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPointParameterf (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterf(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify parameters for point rasterization.
 ' void glPointParameterfv (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPointParameterfv (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfv(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify parameters for point rasterization.
 ' void glPointParameteri (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glPointParameteri (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameteri(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify parameters for point rasterization.
 ' void glPointParameteriv (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glPointParameteriv (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameteriv(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current fog coordinates.
 ' void glFogCoordf (GLfloat coord);
 ' =====================================================================================
 METHOD glFogCoordf (BYVAL fCoord AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordf(fCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current fog coordinates.
 ' void glFogCoordfv (const GLfloat *coord);
 ' =====================================================================================
 METHOD glFogCoordfv (BYREF fCoord AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordfv(fCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current fog coordinates.
 ' void glFogCoordd (GLdouble coord);
 ' =====================================================================================
 METHOD glFogCoordd (BYVAL dCoord AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordd")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordd(dCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current fog coordinates.
 ' void glFogCoorddv (const GLdouble *coord);
 ' =====================================================================================
 METHOD glFogCoorddv (BYREF dCoord AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoorddv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoorddv(dCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of fog coordinates
 ' void glFogCoordPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glFogCoordPointer (BYVAL dwType AS DWORD, BYVAL stride AS LONG, BYVAL pCoordinates AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordPointer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordPointer(dwType, stride, pCoordinates)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3b (GLbyte red, GLbyte green, GLbyte blue);
 ' =====================================================================================
 METHOD glSecondaryColor3b (BYVAL red AS BYTE, BYVAL green AS BYTE, BYVAL blue AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3b")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3b(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3bv (const GLbyte *v);
 ' =====================================================================================
 METHOD glSecondaryColor3bv (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3bv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3bv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3d (GLdouble red, GLdouble green, GLdouble blue);
 ' =====================================================================================
 METHOD glSecondaryColor3d (BYVAL red AS DOUBLE, BYVAL green AS DOUBLE, BYVAL blue AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3d(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3dv (const GLdouble *v);
 ' =====================================================================================
 METHOD glSecondaryColor3dv (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3dv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3f (GLfloat red, GLfloat green, GLfloat blue);
 ' =====================================================================================
 METHOD glSecondaryColor3f (BYVAL red AS SINGLE, BYVAL green AS SINGLE, BYVAL blue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3f(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3fv (const GLfloat *v);
 ' =====================================================================================
 METHOD glSecondaryColor3fv (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3fv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3i (GLint red, GLint green, GLint blue);
 ' =====================================================================================
 METHOD glSecondaryColor3i (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3i(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3iv (const GLint *v);
 ' =====================================================================================
 METHOD glSecondaryColor3iv (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3iv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3s (GLshort red, GLshort green, GLshort blue);
 ' =====================================================================================
 METHOD glSecondaryColor3s (BYVAL red AS INTEGER, BYVAL green AS INTEGER, BYVAL blue AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3s(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3sv (const GLshort *v);
 ' =====================================================================================
 METHOD glSecondaryColor3sv (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3sv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3ub (GLubyte red, GLubyte green, GLubyte blue);
 ' =====================================================================================
 METHOD glSecondaryColor3ub (BYVAL red AS BYTE, BYVAL green AS BYTE, BYVAL blue AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ub")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ub(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3ubv (const GLubyte *v);
 ' =====================================================================================
 METHOD glSecondaryColor3ubv (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ubv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ubv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3ui (GLuint red, GLuint green, GLuint blue);
 ' =====================================================================================
 METHOD glSecondaryColor3ui (BYVAL red AS DWORD, BYVAL green AS DWORD, BYVAL blue AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ui(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3uiv (const GLuint *v);
 ' =====================================================================================
 METHOD glSecondaryColor3uiv (BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3uiv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3us (GLushort red, GLushort green, GLushort blue);
 ' =====================================================================================
 METHOD glSecondaryColor3us (BYVAL red AS WORD, BYVAL green AS WORD, BYVAL blue AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3us")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3us(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the current secondary color.
 ' void glSecondaryColor3usv (const GLushort *v);
 ' =====================================================================================
 METHOD glSecondaryColor3usv (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3usv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3usv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of secondary colors.
 ' void glSecondaryColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glSecondaryColorPointer (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorPointer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorPointer(nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2d (GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glWindowPos2d (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2d(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2dv (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos2dv (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2dv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2f (GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glWindowPos2f (BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2f(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2fv (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos2fv (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2fv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2i (GLint x, GLint y);
 ' =====================================================================================
 METHOD glWindowPos2i (BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2i(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2iv (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos2iv (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2iv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2s (GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glWindowPos2s (BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2s(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos2sv (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos2sv (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2sv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3d (GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glWindowPos3d (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3d(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3dv (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos3dv (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3dv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3f (GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glWindowPos3f (BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3f(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3fv (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos3fv (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3fv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3i (GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glWindowPos3i (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3i(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3iv (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos3iv (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3iv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3s (GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glWindowPos3s (BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3s(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the raster position in window coordinates for pixel operations.
 ' void glWindowPos3sv (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos3sv (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3sv(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Generate query object names
 ' void glGenQueries (GLsizei n, GLuint *ids);
 ' =====================================================================================
 METHOD glGenQueries (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenQueries")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenQueries(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Delete named query objects.
 ' void glDeleteQueries (GLsizei n, const GLuint *ids);
 ' =====================================================================================
 METHOD glDeleteQueries (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteQueries")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteQueries(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Determine if a name corresponds to a query object.
 ' GLboolean glIsQuery (GLuint id);
 ' =====================================================================================
 METHOD glIsQuery (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsQuery")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsQuery(dwId) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Delimit the boundaries of a query object.
 ' void glBeginQuery (GLenum target, GLuint id);
 ' =====================================================================================
 METHOD glBeginQuery (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginQuery")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginQuery(dwTarget, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Delimit the boundaries of a query object.
 ' void glEndQuery (GLenum target);
 ' =====================================================================================
 METHOD glEndQuery (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndQuery")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndQuery(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return parameters of a query object target.
 ' void glGetQueryiv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetQueryiv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryiv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return parameters of a query object.
 ' void glGetQueryObjectiv (GLuint id, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetQueryObjectiv (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectiv(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return parameters of a query object.
 ' void glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetQueryObjectuiv (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectuiv(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Bind a named buffer to a target.
 ' void glBindBuffer (GLenum target, GLuint buffer);
 ' =====================================================================================
 METHOD glBindBuffer (BYVAL dwTarget AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBuffer(dwTarget, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Delete named buffer objects.
 ' void glDeleteBuffers (GLsizei n, const GLuint *buffers);
 ' =====================================================================================
 METHOD glDeleteBuffers (BYVAL n AS LONG, BYREF buffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteBuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteBuffers(n, buffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Generate buffer object names.
 ' void glGenBuffers (GLsizei n, GLuint *buffers);
 ' =====================================================================================
 METHOD glGenBuffers (BYVAL n AS LONG, BYREF buffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenBuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenBuffers(n, buffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Determine if a name corresponds to a buffer object.
 ' GLboolean glIsBuffer (GLuint buffer);
 ' =====================================================================================
 METHOD glIsBuffer (BYVAL buffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsBuffer(buffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Creates and initializes the data store of a buffer object..
 ' void glBufferData (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
 ' =====================================================================================
 METHOD glBufferData (BYVAL dwTarget AS DWORD, BYVAL nSize AS DWORD, BYVAL pData AS DWORD, BYVAL dwUsage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferData(dwTarget, nSize, pData, dwUsage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Modifies some or all of the data contained in a buffer object's data store.
 ' void glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
 ' =====================================================================================
 METHOD glBufferSubData (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferSubData(dwTarget, dwOffset, dwSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns a subset of a buffer object's data store.
 ' void glGetBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
 ' =====================================================================================
 METHOD glGetBufferSubData (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL pSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferSubData(dwTarget, dwOffset, pSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Map a buffer object's data store.
 ' GLvoid* glMapBuffer (GLenum target, GLenum access);
 ' =====================================================================================
 METHOD glMapBuffer (BYVAL dwTarget AS DWORD, BYVAL dwAccess AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapBuffer(dwTarget, dwAccess) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Unmaps a buffer object's data store.
 ' GLboolean glUnmapBuffer (GLenum target);
 ' =====================================================================================
 METHOD glUnmapBuffer (BYVAL dwTarget AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glUnmapBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnmapBuffer(dwTarget) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return parameters of a buffer object.
 ' void glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetBufferParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return the pointer to a mapped buffer object's data store.
 ' void glGetBufferPointerv (GLenum target, GLenum pname, GLvoid* *params);
 ' =====================================================================================
 METHOD glGetBufferPointerv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferPointerv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferPointerv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the RGB blend equation and the alpha blend equation separately.
 ' void glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
 ' =====================================================================================
 METHOD glBlendEquationSeparate (BYVAL modeRGB AS DWORD, BYVAL modeAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationSeparate")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationSeparate(modeRGB, modeAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies a list of color buffers to be drawn into
 ' void glDrawBuffers (GLsizei n, const GLenum *bufs);
 ' =====================================================================================
 METHOD glDrawBuffers (BYVAL n AS LONG, BYREF bufs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawBuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawBuffers(n, bufs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set front and/or back stencil test actions.
 ' void glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
 ' =====================================================================================
 METHOD glStencilOpSeparate (BYVAL dwFace AS DWORD, BYVAL sfail AS DWORD, BYVAL dpfail AS DWORD, BYVAL dppass AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilOpSeparate")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilOpSeparate(dwFace, sfail, dpfail, dppass)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set front and/or back METHOD and reference value for stencil testing.
 ' void glStencilFuncSeparate (GLenum face, GLenum v, GLint ref, GLuint mask);
 ' =====================================================================================
 METHOD glStencilFuncSeparate (BYVAL dwFace AS DWORD, BYVAL dwFunc AS DWORD, BYVAL nRef AS LONG, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilFuncSeparate")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilFuncSeparate(dwFace, dwFunc, nRef, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Control the front and/or back writing of individual bits in the stencil planes.
 ' void glStencilMaskSeparate (GLenum face, GLuint mask);
 ' =====================================================================================
 METHOD glStencilMaskSeparate (BYVAL dwFace AS DWORD, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilMaskSeparate")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilMaskSeparate(dwFace, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Attaches a shader object to a program object
 ' void glAttachShader (GLuint program, GLuint shader);
 ' =====================================================================================
 METHOD glAttachShader (BYVAL dwProgram AS DWORD, BYVAL dwShader AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAttachShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAttachShader(dwProgram, dwShader)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Associates a generic vertex attribute index with a named attribute variable.
 ' void glBindAttribLocation (GLuint program, GLuint index, const GLchar *name);
 ' =====================================================================================
 METHOD glBindAttribLocation (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindAttribLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindAttribLocation(dwProgram, dwIndex, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Compiles a shader object.
 ' void glCompileShader (GLuint shader);
 ' =====================================================================================
 METHOD glCompileShader (BYVAL dwShader AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompileShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompileShader(dwShader)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Creates a program object.
 ' GLuint glCreateProgram (void);
 ' =====================================================================================
 METHOD glCreateProgram () AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCreateProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateProgram() TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Creates a shader object
 ' GLuint glCreateShader (GLenum);
 ' typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC) (GLenum type);
 ' =====================================================================================
 METHOD glCreateShader (BYVAL dwShadertype AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCreateShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateShader(dwShadertype) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Deletes a program object.
 ' void glDeleteProgram (GLuint program);
 ' =====================================================================================
 METHOD glDeleteProgram (BYVAL dwProgram AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteProgram(dwProgram)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Deletes a shader object.
 ' void glDeleteShader (GLuint);
 ' typedef void (APIENTRYP PFNGLDELETESHADERPROC) (GLuint shader);
 ' =====================================================================================
 METHOD glDeleteShader (BYVAL dwShader AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteShader(dwShader)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Detaches a shader object from a program object to which it is attached.
 ' void glDetachShader (GLuint program, GLuint shader);
 ' =====================================================================================
 METHOD glDetachShader (BYVAL dwProgram AS DWORD, BYVAL dwShader AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDetachShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDetachShader(dwProgram, dwShader)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Disable a generic vertex attribute array.
 ' void glDisableVertexAttribArray (GLuint index);
 ' =====================================================================================
 METHOD glDisableVertexAttribArray (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableVertexAttribArray")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableVertexAttribArray(dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Enable a generic vertex attribute array.
 ' void glEnableVertexAttribArray (GLuint index);
 ' =====================================================================================
 METHOD glEnableVertexAttribArray (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableVertexAttribArray")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableVertexAttribArray(dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns information about an active attribute variable for the specified program object.
 ' void glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length,
 ' GLint *size, GLenum *type, GLchar *name);
 ' =====================================================================================
 METHOD glGetActiveAttrib (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF nSize AS LONG, BYREF dwType AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveAttrib")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveAttrib(dwProgram, dwIndex, bufSize, nLength, nSize, dwType, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns information about an active uniform variable for the specified program object.
 ' void glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length,
 ' GLint *size, GLenum *type, GLchar *name);
 ' =====================================================================================
 METHOD glGetActiveUniform (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF nSize AS LONG, BYREF dwType AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniform")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniform(dwProgram, dwIndex, bufSize, nLength, nSize, dwType, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the handles of the shader objects attached to a program object.
 ' void glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
 ' =====================================================================================
 METHOD glGetAttachedShaders (BYVAL dwProgram AS DWORD, BYVAL maxCount AS LONG, BYREF nCount AS LONG, BYREF dwShaders AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetAttachedShaders")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetAttachedShaders(dwProgram, maxCount, nCount, dwShaders)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the location of an attribute variable.
 ' GLint glGetAttribLocation (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetAttribLocation (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetAttribLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetAttribLocation(dwProgram, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns a parameter from a program object.
 ' void glGetProgramiv (GLuint program, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramiv (BYVAL dwProgram AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramiv(dwProgram, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the information log for a program object.
 ' void glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
 ' =====================================================================================
 METHOD glGetProgramInfoLog (BYVAL dwProgram AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF infoLog AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramInfoLog")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramInfoLog(dwProgram, bufSize, nLength, infoLog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns a parameter from a shader object.
 ' void glGetShaderiv (GLuint shader, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetShaderiv (BYVAL dwShader AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetShaderiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetShaderiv(dwShader, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the information log for a shader object.
 ' void glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
 ' =====================================================================================
 METHOD glGetShaderInfoLog (BYVAL dwProgram AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF infoLog AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetShaderInfoLog")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetShaderInfoLog(dwProgram, bufSize, nLength, infoLog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the source code string from a shader object.
 ' void glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
 ' =====================================================================================
 METHOD glGetShaderSource (BYVAL dwShader AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF szSource AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetShaderSource")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetShaderSource(dwShader, bufSize, nLength, szSource)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the location of a uniform variable.
 ' GLint glGetUniformLocation (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetUniformLocation (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetUniformLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformLocation(dwProgram, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the value of a uniform variable.
 ' void glGetUniformfv (GLuint program, GLint location, GLfloat *params);
 ' =====================================================================================
 METHOD glGetUniformfv (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformfv(dwProgram, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Returns the value of a uniform variable.
 ' void glGetUniformiv (GLuint program, GLint location, GLint *params);
 ' =====================================================================================
 METHOD glGetUniformiv (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformiv(dwProgram, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return a generic vertex attribute parameter.
 ' void glGetVertexAttribdv (GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVertexAttribdv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribdv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribdv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return a generic vertex attribute parameter.
 ' void glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVertexAttribfv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribfv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return a generic vertex attribute parameter.
 ' void glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribiv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribiv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return a generic vertex attribute parameter.
 ' void glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid* *pointer);
 ' =====================================================================================
 METHOD glGetVertexAttribPointerv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribPointerv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribPointerv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Determines if a name corresponds to a program object.
 ' GLboolean glIsProgram (GLuint program);
 ' =====================================================================================
 METHOD glIsProgram (BYVAL dwProgram AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsProgram(dwProgram) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Determines if a name corresponds to a shader object.
 ' GLboolean glIsShader (GLuint);
 ' typedef GLboolean (APIENTRYP PFNGLISSHADERPROC) (GLuint shader);
 ' =====================================================================================
 METHOD glIsShader (BYVAL dwShader AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsShader")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsShader(dwShader) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Links a program object.
 ' void glLinkProgram (GLuint);
 ' typedef void (APIENTRYP PFNGLLINKPROGRAMPROC) (GLuint program);
 ' =====================================================================================
 METHOD glLinkProgram (BYVAL dwProgram AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLinkProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLinkProgram(dwProgram)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Replaces the source code in a shader object.
 ' void glShaderSource (GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
 ' =====================================================================================
 METHOD glShaderSource (BYVAL dwShader AS DWORD, BYVAL nCount AS LONG, BYREF strings AS STRING, BYREF nLength AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderSource")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderSource(dwShader, nCount, strings, nLength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Installs a program object as part of current rendering state.
 ' void glUseProgram (GLuint program);
 ' =====================================================================================
 METHOD glUseProgram (BYVAL program AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUseProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUseProgram(program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform1f (GLint location, GLfloat v0);
 ' =====================================================================================
 METHOD glUniform1f (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1f(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform2f (GLint location, GLfloat v0, GLfloat v1);
 ' =====================================================================================
 METHOD glUniform2f (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2f(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
 ' =====================================================================================
 METHOD glUniform3f (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3f(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
 ' =====================================================================================
 METHOD glUniform4f (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL v3 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4f(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform1i (GLint location, GLint v0);
 ' =====================================================================================
 METHOD glUniform1i (BYVAL nLocation AS LONG, BYVAL v0 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1i(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform2i (GLint location, GLint v0, GLint v1);
 ' =====================================================================================
 METHOD glUniform2i (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2i(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
 ' =====================================================================================
 METHOD glUniform3i (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3i(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
 ' =====================================================================================
 METHOD glUniform4i (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG, BYVAL v3 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4i(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform1fv (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform1fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1fv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform2fv (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform2fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2fv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform3fv (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform3fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3fv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform4fv (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform4fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4fv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform1iv (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform1iv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1iv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform2iv (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform2iv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF fvalue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2iv(nLocation, nCount, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform3iv (GLint, GLsizei, const GLint *);
 ' typedef void (APIENTRYP PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform3iv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3iv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specify the value of a uniform variable for the current program object.
 ' void glUniform4iv (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform4iv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4iv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix2fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2fv(nLocation, nCount, bTranspose, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix3fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3fv(nLocation, nCount, bTranspose, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix4fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4fv(nLocation, nCount, bTranspose, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Validates a program object.
 ' void glValidateProgram (GLuint program);
 ' =====================================================================================
 METHOD glValidateProgram (BYVAL dwProgram AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glValidateProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glValidateProgram(dwProgram)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1d (GLuint index, GLdouble x);
 ' =====================================================================================
 METHOD glVertexAttrib1d (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1d(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib1dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1f (GLuint index, GLfloat x);
 ' =====================================================================================
 METHOD glVertexAttrib1f (BYVAL dwIndex AS DWORD, BYVAL v0 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1f(dwIndex, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1fv (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib1fv (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1fv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1s (GLuint, GLshort);
 ' typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x);
 ' =====================================================================================
 METHOD glVertexAttrib1s (BYVAL dwIndex AS DWORD, BYVAL v0 AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1s(dwIndex, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib1sv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib1sv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1sv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2d (GLuint index, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexAttrib2d (BYVAL dwIndex AS DWORD, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2d(dwIndex, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib2dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glVertexAttrib2f (BYVAL dwIndex AS DWORD, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2f(dwIndex, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2fv (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib2fv (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2fv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2s (GLuint index, GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glVertexAttrib2s (BYVAL dwIndex AS DWORD, BYVAL v0 AS INTEGER, BYVAL v1 AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2s(dwIndex, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib2sv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib2sv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2sv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3d (GLuint index, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexAttrib3d (BYVAL dwIndex AS DWORD, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3d(dwIndex, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib3dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glVertexAttrib3f (BYVAL dwIndex AS DWORD, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3f(dwIndex, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3fv (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib3fv (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3fv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3s (GLuint index, GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glVertexAttrib3s (BYVAL dwIndex AS DWORD, BYVAL v0 AS INTEGER, BYVAL v1 AS INTEGER, BYVAL v2 AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3s(dwIndex, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib3sv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib3sv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3sv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nbv (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Nbv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nbv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nbv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Niv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Niv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Niv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Niv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nsv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Nsv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nsv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nsv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nub (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
 ' =====================================================================================
 METHOD glVertexAttrib4Nub (BYVAL dwIndex AS DWORD, BYVAL v0 AS BYTE, BYVAL v1 AS BYTE, BYVAL v2 AS BYTE, BYVAL v3 AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nub")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nub(dwIndex, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nubv (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Nubv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nubv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nubv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nuiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Nuiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nuiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4Nusv (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4Nusv (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4Nusv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4Nusv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4bv (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4bv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4bv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4bv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexAttrib4d (BYVAL dwIndex AS DWORD, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE, BYVAL v3 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4d(dwIndex, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib4dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glVertexAttrib4f (BYVAL dwIndex AS DWORD, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL v3 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4f(dwIndex, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4fv (GLuint, const GLfloat *);
 ' typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib4fv (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4fv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4iv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4iv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4iv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4s (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
 ' =====================================================================================
 METHOD glVertexAttrib4s (BYVAL dwIndex AS DWORD, BYVAL v0 AS INTEGER, BYVAL v1 AS INTEGER, BYVAL v2 AS INTEGER, BYVAL v3 AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4s")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4s(dwIndex, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4sv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4sv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4sv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4ubv (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4ubv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4ubv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4ubv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4uiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4uiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4uiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttrib4usv (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4usv (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4usv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4usv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Specifies the value of a generic vertex attribute.
 ' void glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized,
 ' GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribPointer (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL bNormalized AS BYTE, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribPointer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribPointer(dwIndex, nSize, dwType, bNormalized, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix2x3fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2x3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2x3fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix3x2fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3x2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3x2fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix2x4fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2x4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2x4fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix4x2fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4x2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4x2fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix3x4fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3x4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3x4fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix4x3fv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4x3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4x3fv(nLocation, nCount, bTranspose, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorMaski (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
 ' =====================================================================================
 METHOD glColorMaski (BYVAL dwIndex AS DWORD, BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorMaski")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorMaski(dwIndex, r, g, b, a)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBooleani_v (GLenum target, GLuint index, GLboolean *data);
 ' =====================================================================================
 METHOD glGetBooleani_v (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF bData AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBooleani_v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBooleani_v(dwTarget, dwIndex, bData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetIntegeri_v (GLenum target, GLuint index, GLint *data);
 ' =====================================================================================
 METHOD glGetIntegeri_v (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF nData AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetIntegeri_v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetIntegeri_v(dwTarget, dwIndex, nData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnablei (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glEnablei (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnablei")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnablei(dwTarget, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisablei (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glDisablei (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisablei")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisablei(dwTarget, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsEnabledi (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glIsEnabledi (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsEnabledi")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsEnabledi(dwTarget, dwIndex) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginTransformFeedback (GLenum primitiveMode);
 ' =====================================================================================
 METHOD glBeginTransformFeedback (BYVAL primitiveMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginTransformFeedback(primitiveMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndTransformFeedback (void);
 ' =====================================================================================
 METHOD glEndTransformFeedback
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndTransformFeedback
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glBindBufferRange (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL pSize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferRange")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferRange(dwTarget, dwIndex, buffer, dwOffset, pSize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferBase (GLenum target, GLuint index, GLuint buffer);
 ' =====================================================================================
 METHOD glBindBufferBase (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferBase")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferBase(dwTarget, dwIndex, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTransformFeedbackVaryings (GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
 ' =====================================================================================
 METHOD glTransformFeedbackVaryings (BYVAL dwProgram AS DWORD, BYVAL nCount AS LONG, BYREF varyings AS ASCIIZ, BYVAL bufferMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTransformFeedbackVaryings")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTransformFeedbackVaryings(dwProgram, nCount, varyings, bufferMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTransformFeedbackVarying (GLuint program, GLuint index, GLint *location);
 ' =====================================================================================
 METHOD glGetTransformFeedbackVarying (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYREF nLocation AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTransformFeedbackVarying")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTransformFeedbackVarying(dwProgram, dwIndex, nLocation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClampColor (GLenum target, GLenum clamp);
 ' =====================================================================================
 METHOD glClampColor (BYVAL dwTarget AS DWORD, BYVAL dwClamp AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClampColor")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClampColor(dwTarget, dwClamp)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginConditionalRender (GLuint id, GLenum mode);
 ' =====================================================================================
 METHOD glBeginConditionalRender (BYVAL dwId AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginConditionalRender")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginConditionalRender(dwId, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndConditionalRender (void);
 ' =====================================================================================
 METHOD glEndConditionalRender
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndConditionalRender")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndConditionalRender
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribIPointer (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribIPointer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribIPointer(dwIndex, nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribIiv (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribIiv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribIiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribIiv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribIuiv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribIuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribIuiv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1i (GLuint index, GLint x);
 ' =====================================================================================
 METHOD glVertexAttribI1i (BYVAL dwIndex AS DWORD, BYVAL x AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1i(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2i (GLuint, GLint, GLint);
 ' typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
 ' =====================================================================================
 METHOD glVertexAttribI2i (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2i(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3i (GLuint index, GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glVertexAttribI3i (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3i(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4i (GLuint index, GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glVertexAttribI4i (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4i(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1ui (GLuint index, GLuint x);
 ' =====================================================================================
 METHOD glVertexAttribI1ui (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1ui(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2ui (GLuint index, GLuint x, GLuint y);
 ' =====================================================================================
 METHOD glVertexAttribI2ui (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2ui(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3ui (GLuint index, GLuint x, GLuint y, GLuint z);
 ' =====================================================================================
 METHOD glVertexAttribI3ui (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3ui(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4ui (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
 ' =====================================================================================
 METHOD glVertexAttribI4ui (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD, BYVAL w AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4ui(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1iv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI1iv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1iv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2iv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI2iv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2iv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3iv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI3iv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3iv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4iv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI4iv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4iv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1uiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI1uiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1uiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2uiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI2uiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2uiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3uiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI3uiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3uiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4uiv (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI4uiv (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4uiv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4bv (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttribI4bv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4bv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4bv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4sv (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribI4sv (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4sv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4sv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4ubv (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttribI4ubv (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4ubv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4ubv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4usv (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttribI4usv (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4usv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4usv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformuiv (GLuint program, GLint location, GLuint *params);
 ' =====================================================================================
 METHOD glGetUniformuiv (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformuiv(dwProgram, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFragDataLocation (GLuint program, GLuint color, const GLchar *name);
 ' =====================================================================================
 METHOD glBindFragDataLocation (BYVAL dwProgram AS DWORD, BYVAL dwColor AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFragDataLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFragDataLocation(dwProgram, dwColor, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetFragDataLocation (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetFragDataLocation (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetFragDataLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragDataLocation(dwProgram, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1ui (GLint location, GLuint v0);
 ' =====================================================================================
 METHOD glUniform1ui (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1ui(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2ui (GLint location, GLuint v0, GLuint v1);
 ' =====================================================================================
 METHOD glUniform2ui (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2ui(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2);
 ' =====================================================================================
 METHOD glUniform3ui (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3ui(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
 ' =====================================================================================
 METHOD glUniform4ui (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD, BYVAL v3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4ui(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1uiv (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform1uiv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1uiv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2uiv (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform2uiv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2uiv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3uiv (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform3uiv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3uiv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4uiv (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform4uiv (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4uiv(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexParameterIiv (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glTexParameterIiv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterIiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterIiv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexParameterIuiv (GLenum target, GLenum pname, const GLuint *params);
 ' =====================================================================================
 METHOD glTexParameterIuiv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterIuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterIuiv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexParameterIiv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTexParameterIiv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterIiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterIiv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexParameterIuiv (GLenum target, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetTexParameterIuiv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterIuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterIuiv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearBufferiv (GLenum buffer, const GLint *value);
 ' =====================================================================================
 METHOD glClearBufferiv (BYVAL dwBuffer AS DWORD, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferiv(dwBuffer, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearBufferuiv (GLenum buffer, const GLuint *value);
 ' =====================================================================================
 METHOD glClearBufferuiv (BYVAL dwBuffer AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferuiv(dwBuffer, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearBufferfv (GLenum buffer, const GLfloat *value);
 ' =====================================================================================
 METHOD glClearBufferfv (BYVAL dwBuffer AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferfv(dwBuffer, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearBufferfi (GLenum buffer, GLfloat depth, GLint stencil);
 ' =====================================================================================
 METHOD glClearBufferfi (BYVAL dwBuffer AS DWORD, BYVAL fDepth AS SINGLE, BYVAL nStencil AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferfi")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferfi(dwBuffer, fDepth, nStencil)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' const GLubyte * glGetStringi (GLenum name, GLuint index);
 ' =====================================================================================
 METHOD glGetStringi (BYVAL dwName AS DWORD, BYVAL dwIndex AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetStringi")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetStringi(dwName, dwIndex)
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
 ' =====================================================================================
 METHOD glDrawArraysInstanced (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG, BYVAL instancecount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysInstanced")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysInstanced(dwMode, nFirst, nCount, instancecount)
 END METHOD
 ' =====================================================================================
 ' void glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
 ' =====================================================================================
 METHOD glDrawElementsInstanced (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL instancecount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstanced")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstanced(dwMode, nCount, dwType, indices, instancecount)
 END METHOD
 ' =====================================================================================
 ' void glTexBuffer (GLenum target, GLenum internalformat, GLuint buffer);
 ' =====================================================================================
 METHOD glTexBuffer (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwBuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBuffer(dwTarget, internalformat, dwBuffer)
 END METHOD
 ' =====================================================================================
 ' void glPrimitiveRestartIndex (GLuint index);
 ' =====================================================================================
 METHOD glPrimitiveRestartIndex (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPrimitiveRestartIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPrimitiveRestartIndex(dwIndex)
 END METHOD
 ' =====================================================================================
 ' void glGetInteger64i_v (GLenum target, GLuint index, GLint64 *data);
 ' =====================================================================================
 METHOD glGetInteger64i_v (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF qdata AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInteger64i_v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInteger64i_v(dwTarget, dwIndex, qdata)
 END METHOD
 ' =====================================================================================
 ' void glGetBufferParameteri64v (GLenum target, GLenum pname, GLint64 *params);
 ' =====================================================================================
 METHOD glGetBufferParameteri64v (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF qparams AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferParameteri64v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferParameteri64v(dwTarget, pname, qparams)
 END METHOD
 ' =====================================================================================
 ' void glFramebufferTexture (GLenum target, GLenum attachment, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTexture (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture(dwTarget, dwAttachment, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' void glVertexAttribDivisor (GLuint index, GLuint divisor);
 ' Note: Some 3.3 drivers expose glVertexAttribDivisor instead of glVertexAttribDivisorARB.
 ' =====================================================================================
 METHOD glVertexAttribDivisor (BYVAL dwIndex AS DWORD, BYVAL dwDivisor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribDivisor")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribDivisor(dwIndex, dwDivisor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMinSampleShading (GLclampf value);
 ' =====================================================================================
 METHOD glMinSampleShading (BYVAL value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMinSampleShading")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMinSampleShading(value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationi (GLuint buf, GLenum mode);
 ' =====================================================================================
 METHOD glBlendEquationi (BYVAL buf AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationi")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationi(buf, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationSeparatei (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
 ' =====================================================================================
 METHOD glBlendEquationSeparatei (BYVAL buf AS DWORD, BYVAL modeRGB AS DWORD, BYVAL modeAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationSeparatei")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationSeparatei(buf, modeRGB, modeAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFunci (GLuint buf, GLenum src, GLenum dst);
 ' =====================================================================================
 METHOD glBlendFunci (BYVAL buf AS DWORD, BYVAL src AS DWORD, BYVAL dst AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFunci")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFunci(buf, src, dst)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncSeparatei (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparatei (BYVAL buf AS DWORD, BYVAL srcRGB AS DWORD, BYVAL dstRGB AS DWORD, BYVAL srcAlpha AS DWORD, BYVAL dstAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparatei")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Select active texture unit.
 ' void glActiveTextureARB (GLenum texture);
 ' =====================================================================================
 METHOD glActiveTextureARB (BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveTextureARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveTextureARB(dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Select active texture unit.
 ' void glClientActiveTextureARB (GLenum texture);
 ' =====================================================================================
 METHOD glClientActiveTextureARB (BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClientActiveTextureARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClientActiveTextureARB(dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1dARB (GLenum target, GLdouble s);
 ' =====================================================================================
 METHOD glMultiTexCoord1dARB (BYVAL dwUnit AS DWORD, BYVAL s AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1dARB(dwUnit, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1dvARB (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1dvARB (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1dvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1fARB (GLenum target, GLfloat s);
 ' =====================================================================================
 METHOD glMultiTexCoord1fARB (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1fARB(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1fvARB (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1fvARB (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1fvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1iARB (GLenum target, GLint s);
 ' =====================================================================================
 METHOD glMultiTexCoord1iARB (BYVAL dwTarget AS DWORD, BYVAL s AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1iARB(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1ivARB (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1ivARB (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1ivARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1sARB (GLenum target, GLshort s);
 ' =====================================================================================
 METHOD glMultiTexCoord1sARB (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1sARB(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1svARB (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1svARB (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1svARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2dARB (GLenum target, GLdouble s, GLdouble t);
 ' =====================================================================================
 METHOD glMultiTexCoord2dARB (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2dARB(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2dvARB (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2dvARB (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2dvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2fARB (GLenum target, GLfloat s, GLfloat t);
 ' =====================================================================================
 METHOD glMultiTexCoord2fARB (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2fARB(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2fvARB (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2fvARB (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2fvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2iARB (GLenum target, GLint s, GLint t);
 ' =====================================================================================
 METHOD glMultiTexCoord2iARB (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2iARB(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2ivARB (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2ivARB (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2ivARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2sARB (GLenum target, GLshort s, GLshort t);
 ' =====================================================================================
 METHOD glMultiTexCoord2sARB (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2sARB(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2svARB (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2svARB (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2svARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r);
 ' =====================================================================================
 METHOD glMultiTexCoord3dARB (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE, BYVAL u AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3dARB(dwTarget, s, t, u)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3dvARB (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3dvARB (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3dvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r);
 ' =====================================================================================
 METHOD glMultiTexCoord3fARB (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL u AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3fARB(dwTarget, s, t, u)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3fvARB (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3fvARB (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3fvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3iARB (GLenum target, GLint s, GLint t, GLint r);
 ' =====================================================================================
 METHOD glMultiTexCoord3iARB (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL u AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3iARB(dwTarget, s, t, u)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3ivARB (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3ivARB (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3ivARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3sARB (GLenum target, GLshort s, GLshort t, GLshort r);
 ' =====================================================================================
 METHOD glMultiTexCoord3sARB (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER, BYVAL u AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3sARB(dwTarget, s, t, u)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3svARB (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3svARB (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3svARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4dARB (GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
 ' typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
 ' =====================================================================================
 METHOD glMultiTexCoord4dARB (BYVAL dwTarget AS DWORD, BYVAL s AS DOUBLE, BYVAL t AS DOUBLE, BYVAL u AS DOUBLE, BYVAL v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4dARB(dwTarget, s, t, u, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4dvARB (GLenum target, const GLdouble *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4dvARB (BYVAL dwTarget AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4dvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
 ' =====================================================================================
 METHOD glMultiTexCoord4fARB (BYVAL dwTarget AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL u AS SINGLE, BYVAL v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4fARB(dwTarget, s, t, u, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4fvARB (GLenum target, const GLfloat *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4fvARB (BYVAL dwTarget AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4fvARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4iARB (GLenum target, GLint s, GLint t, GLint r, GLint q);
 ' =====================================================================================
 METHOD glMultiTexCoord4iARB (BYVAL dwTarget AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL u AS LONG, BYVAL v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4iARB(dwTarget, s, t, u, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4ivARB (GLenum target, const GLint *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4ivARB (BYVAL dwTarget AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4ivARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4sARB (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
 ' =====================================================================================
 METHOD glMultiTexCoord4sARB (BYVAL dwTarget AS DWORD, BYVAL s AS INTEGER, BYVAL t AS INTEGER, BYVAL u AS INTEGER, BYVAL v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4sARB(dwTarget, s, t, u, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4svARB (GLenum target, const GLshort *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4svARB (BYVAL dwTarget AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4svARB(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLoadTransposeMatrixfARB (const GLfloat *m);
 ' =====================================================================================
 METHOD glLoadTransposeMatrixfARB (BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadTransposeMatrixfARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadTransposeMatrixfARB(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLoadTransposeMatrixdARB (const GLdouble *m);
 ' =====================================================================================
 METHOD glLoadTransposeMatrixdARB (BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadTransposeMatrixdARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadTransposeMatrixdARB(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultTransposeMatrixfARB (const GLfloat *m);
 ' =====================================================================================
 METHOD glMultTransposeMatrixfARB (BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultTransposeMatrixfARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultTransposeMatrixfARB(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultTransposeMatrixdARB (const GLdouble *m);
 ' =====================================================================================
 METHOD glMultTransposeMatrixdARB (BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultTransposeMatrixdARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultTransposeMatrixdARB(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleCoverageARB (GLclampf value, GLboolean invert);
 ' =====================================================================================
 METHOD glSampleCoverageARB (BYVAL fValue AS SINGLE, BYVAL bInvert AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleCoverageARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleCoverageARB(fValue, bInvert)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexImage3DARB (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage3DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage3DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage3DARB(dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexImage2DARB (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage2DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage2DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage2DARB(dwTarget, nLevel, internalformat, nWidth, nHeight, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexImage1DARB (GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *);
 ' void glCompressedTexImage1DARB (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexImage1DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexImage1DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexImage1DARB(dwTarget, nLevel, internalformat, nWidth, nBorder, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexSubImage3DARB (GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage3DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage3DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage3DARB(dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexSubImage2DARB (GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage2DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage2DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage2DARB(dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTexSubImage1DARB (GLenum target, GLint level, GLint xoffset,
 ' GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
 ' =====================================================================================
 METHOD glCompressedTexSubImage1DARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTexSubImage1DARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTexSubImage1DARB(dwTarget, nLevel, xoffset, nWidth, dwFormat, imageSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCompressedTexImageARB (GLenum target, GLint level, GLvoid *img);
 ' =====================================================================================
 METHOD glGetCompressedTexImageARB (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCompressedTexImageARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCompressedTexImageARB(dwTarget, nLevel, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfARB (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPointParameterfARB (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfARB(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfvARB (GLenum, const GLfloat *);
 ' typedef void (APIENTRYP PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPointParameterfvARB (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfvARB(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightbvARB (GLint size, const GLbyte *weights);
 ' =====================================================================================
 METHOD glWeightbvARB (BYVAL nSize AS LONG, BYREF weights AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightbvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightbvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightsvARB (GLint size, const GLshort *weights);
 ' =====================================================================================
 METHOD glWeightsvARB (BYVAL nSize AS LONG, BYREF weights AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightsvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightsvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightivARB (GLint, const GLint *);
 ' typedef void (APIENTRYP PFNGLWEIGHTIVARBPROC) (GLint size, const GLint *weights);
 ' =====================================================================================
 METHOD glWeightivARB (BYVAL nSize AS LONG, BYREF weights AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightivARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightfvARB (GLint, const GLfloat *);
 ' typedef void (APIENTRYP PFNGLWEIGHTFVARBPROC) (GLint size, const GLfloat *weights);
 ' =====================================================================================
 METHOD glWeightfvARB (BYVAL nSize AS LONG, BYREF weights AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightfvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightdvARB (GLint, const GLdouble *);
 ' typedef void (APIENTRYP PFNGLWEIGHTDVARBPROC) (GLint size, const GLdouble *weights);
 ' =====================================================================================
 METHOD glWeightdvARB (BYVAL nSize AS LONG, BYREF weights AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightdvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightubvARB (GLint size, const GLubyte *weights);
 ' =====================================================================================
 METHOD glWeightubvARB (BYVAL nSize AS LONG, BYREF weights AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightubvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightubvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightusvARB (GLint size, const GLushort *weights);
 ' =====================================================================================
 METHOD glWeightusvARB (BYVAL nSize AS LONG, BYREF weights AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightusvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightusvARB(nSize, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightuivARB (GLint size, const GLuint *weights);
 ' =====================================================================================
 METHOD glWeightuivARB (BYVAL n AS LONG, BYREF weights AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightuivARB(n, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightPointerARB (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glWeightPointerARB (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightPointerARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightPointerARB(nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexBlendARB (GLint count);
 ' =====================================================================================
 METHOD glVertexBlendARB (BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexBlendARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexBlendARB(nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCurrentPaletteMatrixARB (GLint index);
 ' =====================================================================================
 METHOD glCurrentPaletteMatrixARB (BYVAL index AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCurrentPaletteMatrixARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCurrentPaletteMatrixARB(index)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixIndexubvARB (GLint size, const GLubyte *indices);
 ' =====================================================================================
 METHOD glMatrixIndexubvARB (BYVAL nSize AS LONG, BYREF indices AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixIndexubvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixIndexubvARB(nSize, indices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixIndexusvARB (GLint size, const GLushort *indices);
 ' =====================================================================================
 METHOD glMatrixIndexusvARB (BYVAL nSize AS LONG, BYREF indices AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixIndexusvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixIndexusvARB(nSize, indices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixIndexuivARB (GLint size, const GLuint *indices);
 ' =====================================================================================
 METHOD glMatrixIndexuivARB (BYVAL nSize AS LONG, BYREF indices AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixIndexuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixIndexuivARB(nSize, indices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixIndexPointerARB (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glMatrixIndexPointerARB (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixIndexPointerARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixIndexPointerARB(nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2dARB (GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glWindowPos2dARB (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2dARB(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2dvARB (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos2dvARB (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2dvARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2fARB (GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glWindowPos2fARB (BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2fARB(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2fvARB (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos2fvARB (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2fvARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2iARB (GLint x, GLint y);
 ' =====================================================================================
 METHOD glWindowPos2iARB (BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2iARB(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2ivARB (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos2ivARB (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2ivARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2sARB (GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glWindowPos2sARB (BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2sARB(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2svARB (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos2svARB (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2svARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3dARB (GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glWindowPos3dARB (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3dARB(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3dvARB (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos3dvARB (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3dvARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3fARB (GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glWindowPos3fARB (BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3fARB(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3fvARB (const GLfloat *);
 ' typedef void (APIENTRYP PFNGLWINDOWPOS3FVARBPROC) (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos3fvARB (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3fvARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3iARB (GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glWindowPos3iARB (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3iARB(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3ivARB (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos3ivARB (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3ivARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3sARB (GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glWindowPos3sARB (BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3sARB(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3svARB (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos3svARB (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3svARB(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1dARB (GLuint index, GLdouble x);
 ' =====================================================================================
 METHOD glVertexAttrib1dARB (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1dARB(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1dvARB (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib1dvARB (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1dvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1fARB (GLuint index, GLfloat x);
 ' =====================================================================================
 METHOD glVertexAttrib1fARB (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1fARB(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1fvARB (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib1fvARB (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1fvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1sARB (GLuint index, GLshort x);
 ' =====================================================================================
 METHOD glVertexAttrib1sARB (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1sARB(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1svARB (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib1svARB (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1svARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2dARB (GLuint index, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexAttrib2dARB (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2dARB(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2dvARB (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib2dvARB (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2dvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2fARB (GLuint index, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glVertexAttrib2fARB (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2fARB(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2fvARB (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib2fvARB (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2fvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2sARB (GLuint index, GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glVertexAttrib2sARB (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2sARB(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2svARB (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib2svARB (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2svARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexAttrib3dARB (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3dARB(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3dvARB (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib3dvARB (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3dvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glVertexAttrib3fARB (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3fARB(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3fvARB (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib3fvARB (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3fvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3sARB (GLuint index, GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glVertexAttrib3sARB (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3sARB(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3svARB (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib3svARB (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3svARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NbvARB (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NbvARB (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NbvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NbvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NivARB (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NivARB (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NivARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NsvARB (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NsvARB (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NsvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NsvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NubARB (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
 ' =====================================================================================
 METHOD glVertexAttrib4NubARB (BYVAL dwIndex AS DWORD, BYVAL x AS BYTE, BYVAL y AS BYTE, BYVAL z AS BYTE, BYVAL w AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NubARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NubARB(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NubvARB (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NubvARB (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NubvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NubvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NuivARB (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NuivARB (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NuivARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4NusvARB (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4NusvARB (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4NusvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4NusvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4bvARB (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4bvARB (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4bvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4bvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexAttrib4dARB (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4dARB(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4dvARB (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib4dvARB (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4dvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glVertexAttrib4fARB (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4fARB(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4fvARB (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib4fvARB (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4fvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4ivARB (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4ivARB (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4ivARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4sARB (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
 ' =====================================================================================
 METHOD glVertexAttrib4sARB (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER, BYVAL w AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4sARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4sARB(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4svARB (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4svARB (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4svARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4svARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4ubvARB (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4ubvARB (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4ubvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4ubvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4uivARB (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttrib4uivARB (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4uivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4uivARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4usvARB (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4usvARB (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4usvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4usvARB(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribPointerARB (GLuint index, GLint size, GLenum type,
 ' GLboolean normalized, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribPointerARB (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL bNormalized AS BYTE, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribPointerARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribPointerARB(dwIndex, nSize, dwType, bNormalized, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnableVertexAttribArrayARB (GLuint index);
 ' =====================================================================================
 METHOD glEnableVertexAttribArrayARB (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableVertexAttribArrayARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableVertexAttribArrayARB(dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisableVertexAttribArrayARB (GLuint index);
 ' =====================================================================================
 METHOD glDisableVertexAttribArrayARB (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableVertexAttribArrayARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableVertexAttribArrayARB(dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramStringARB (GLenum target, GLenum format, GLsizei len, const GLvoid *string);
 ' =====================================================================================
 METHOD glProgramStringARB (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL nLen AS LONG, BYVAL pString AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramStringARB(dwTarget, dwFormat, nLen, pString)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindProgramARB (GLenum target, GLuint program);
 ' =====================================================================================
 METHOD glBindProgramARB (BYVAL dwTarget AS DWORD, BYVAL dwProgram AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindProgramARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindProgramARB(dwTarget, dwProgram)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteProgramsARB (GLsizei n, const GLuint *programs);
 ' =====================================================================================
 METHOD glDeleteProgramsARB (BYVAL n AS LONG, BYREF programs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteProgramsARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteProgramsARB(n, programs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenProgramsARB (GLsizei n, GLuint *programs);
 ' =====================================================================================
 METHOD glGenProgramsARB (BYVAL n AS LONG, BYREF programs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenProgramsARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenProgramsARB(n, programs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y,
 ' GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glProgramEnvParameter4dARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameter4dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameter4dARB(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameter4dvARB (GLenum target, GLuint index, const GLdouble *params);
 ' =====================================================================================
 METHOD glProgramEnvParameter4dvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameter4dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameter4dvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y,
 ' GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glProgramEnvParameter4fARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameter4fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameter4fARB(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameter4fvARB (GLenum target, GLuint index, const GLfloat *params);
 ' =====================================================================================
 METHOD glProgramEnvParameter4fvARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameter4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameter4fvARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y,
 ' GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glProgramLocalParameter4dARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameter4dARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameter4dARB(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameter4dvARB (GLenum target, GLuint index, const GLdouble *params);
 ' =====================================================================================
 METHOD glProgramLocalParameter4dvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameter4dvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameter4dvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y,
 ' GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glProgramLocalParameter4fARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameter4fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameter4fARB(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameter4fvARB (GLenum target, GLuint index, const GLfloat *params);
 ' =====================================================================================
 METHOD glProgramLocalParameter4fvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameter4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameter4fvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramEnvParameterdvARB (GLenum target, GLuint index, GLdouble *params);
 ' =====================================================================================
 METHOD glGetProgramEnvParameterdvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramEnvParameterdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramEnvParameterdvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramEnvParameterfvARB (GLenum target, GLuint index, GLfloat *params);
 ' =====================================================================================
 METHOD glGetProgramEnvParameterfvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramEnvParameterfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramEnvParameterfvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramLocalParameterdvARB (GLenum target, GLuint index, GLdouble *params);
 ' =====================================================================================
 METHOD glGetProgramLocalParameterdvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramLocalParameterdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramLocalParameterdvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramLocalParameterfvARB (GLenum target, GLuint index, GLfloat *params);
 ' =====================================================================================
 METHOD glGetProgramLocalParameterfvARB (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramLocalParameterfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramLocalParameterfvARB(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramivARB (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramivARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramivARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramStringARB (GLenum target, GLenum pname, GLvoid *string);
 ' =====================================================================================
 METHOD glGetProgramStringARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL pstring AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramStringARB(dwTarget, pname, pstring)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribdvARB (GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVertexAttribdvARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribdvARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribfvARB (GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVertexAttribfvARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribfvARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribivARB (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribivARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribivARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribPointervARB (GLuint index, GLenum pname, GLvoid* *pointer);
 ' =====================================================================================
 METHOD glGetVertexAttribPointervARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribPointervARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribPointervARB(dwTarget, pname, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsProgramARB (GLuint program);
 ' =====================================================================================
 METHOD glIsProgramARB (BYVAL dwProgram AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsProgramARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsProgramARB(dwProgram) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferARB (GLenum target, GLuint buffer);
 ' =====================================================================================
 METHOD glBindBufferARB (BYVAL dwTarget AS DWORD, BYVAL dwBuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferARB(dwTarget, dwBuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteBuffersARB (GLsizei n, const GLuint *buffers);
 ' =====================================================================================
 METHOD glDeleteBuffersARB (BYVAL n AS LONG, BYREF dwBuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteBuffersARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteBuffersARB(n, dwBuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenBuffersARB (GLsizei n, GLuint *buffers);
 ' =====================================================================================
 METHOD glGenBuffersARB (BYVAL n AS LONG, BYREF dwBuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenBuffersARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenBuffersARB(n, dwBuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsBufferARB (GLuint);
 ' typedef GLboolean (APIENTRYP PFNGLISBUFFERARBPROC) (GLuint buffer);
 ' =====================================================================================
 METHOD glIsBufferARB (BYVAL dwBuffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsBufferARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsBufferARB(dwBuffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBufferDataARB (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
 ' =====================================================================================
 METHOD glBufferDataARB (BYVAL dwTarget AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD, BYVAL dwUsage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferDataARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferDataARB(dwTarget, dwSize, pData, dwUsage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
 ' =====================================================================================
 METHOD glBufferSubDataARB (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferSubDataARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferSubDataARB(dwTarget, dwOffset, dwSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
 ' =====================================================================================
 METHOD glGetBufferSubDataARB (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferSubDataARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferSubDataARB(dwTarget, dwOffset, dwSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvoid* glMapBufferARB (GLenum target, GLenum access);
 ' =====================================================================================
 METHOD glMapBufferARB (BYVAL dwTarget AS DWORD, BYVAL dwAccess AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapBufferARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapBufferARB(dwTarget, dwAccess) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glUnmapBufferARB (GLenum target);
 ' =====================================================================================
 METHOD glUnmapBufferARB (BYVAL dwTarget AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glUnmapBufferARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnmapBufferARB(dwTarget) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBufferParameterivARB (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetBufferParameterivARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params aS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferParameterivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferParameterivARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBufferPointervARB (GLenum target, GLenum pname, GLvoid* *params);
 ' =====================================================================================
 METHOD glGetBufferPointervARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferPointervARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferPointervARB(dwTarget, pname, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenQueriesARB (GLsizei n, GLuint *ids);
 ' =====================================================================================
 METHOD glGenQueriesARB (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenQueriesARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenQueriesARB(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteQueriesARB (GLsizei n, const GLuint *ids);
 ' =====================================================================================
 METHOD glDeleteQueriesARB (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteQueriesARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteQueriesARB(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsQueryARB (GLuint id);
 ' =====================================================================================
 METHOD glIsQueryARB (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsQueryARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsQueryARB(dwId) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginQueryARB (GLenum target, GLuint id);
 ' =====================================================================================
 METHOD glBeginQueryARB (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginQueryARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginQueryARB(dwTarget, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndQueryARB (GLenum target);
 ' =====================================================================================
 METHOD glEndQueryARB (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndQueryARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndQueryARB(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryivARB (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetQueryivARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryivARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjectivARB (GLuint id, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetQueryObjectivARB (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectivARB(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjectuivARB (GLuint id, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetQueryObjectuivARB (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectuivARB(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteObjectARB (GLhandleARB obj);
 ' =====================================================================================
 METHOD glDeleteObjectARB (BYVAL dwObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteObjectARB(dwObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLhandleARB glGetHandleARB (GLenum pname);
 ' =====================================================================================
 METHOD glGetHandleARB (BYVAL pname AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetHandleARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHandleARB(pname) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDetachObjectARB (GLhandleARB containerObj, GLhandleARB attachedObj);
 ' =====================================================================================
 METHOD glDetachObjectARB (BYVAL containerObj AS DWORD, BYVAL attachedObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDetachObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDetachObjectARB(containerObj, attachedObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLhandleARB glCreateShaderObjectARB (GLenum shaderType);
 ' =====================================================================================
 METHOD glCreateShaderObjectARB (BYVAL shaderType AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCreateShaderObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateShaderObjectARB(shaderType) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glShaderSourceARB (GLhandleARB shaderObj, GLsizei count, const GLcharARB* *string, const GLint *length);
 ' =====================================================================================
 METHOD glShaderSourceARB (BYVAL shaderObj AS DWORD, BYVAL nCount AS LONG, BYREF strings AS STRING, BYREF nLength AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderSourceARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderSourceARB(shaderObj, nCount, strings, nLength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompileShaderARB (GLhandleARB shaderObj);
 ' =====================================================================================
 METHOD glCompileShaderARB (BYVAL shaderObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompileShaderARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompileShaderARB(shaderObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLhandleARB glCreateProgramObjectARB (void);
 ' =====================================================================================
 METHOD glCreateProgramObjectARB () AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCreateProgramObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateProgramObjectARB() TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glAttachObjectARB (GLhandleARB containerObj, GLhandleARB obj);
 ' =====================================================================================
 METHOD glAttachObjectARB (BYVAL dwContainerObj AS DWORD, BYVAL dwObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAttachObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAttachObjectARB(dwContainerObj, dwObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLinkProgramARB (GLhandleARB programObj);
 ' =====================================================================================
 METHOD glLinkProgramARB (BYVAL programObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLinkProgramARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLinkProgramARB(programObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUseProgramObjectARB (GLhandleARB programObj);
 ' =====================================================================================
 METHOD glUseProgramObjectARB (BYVAL programObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUseProgramObjectARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUseProgramObjectARB(programObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glValidateProgramARB (GLhandleARB programObj);
 ' =====================================================================================
 METHOD glValidateProgramARB (BYVAL programObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glValidateProgramARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glValidateProgramARB(programObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1fARB (GLint location, GLfloat v0);
 ' =====================================================================================
 METHOD glUniform1fARB (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1fARB(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2fARB (GLint location, GLfloat v0, GLfloat v1);
 ' =====================================================================================
 METHOD glUniform2fARB (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2fARB(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3fARB (GLint, GLfloat, GLfloat, GLfloat);
 ' typedef void (APIENTRYP PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
 ' =====================================================================================
 METHOD glUniform3fARB (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3fARB(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4fARB (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
 ' =====================================================================================
 METHOD glUniform4fARB (BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL v3 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4fARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4fARB(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1iARB (GLint location, GLint v0);
 ' =====================================================================================
 METHOD glUniform1iARB (BYVAL nLocation AS LONG, BYVAL v0 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1iARB(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2iARB (GLint location, GLint v0, GLint v1);
 ' =====================================================================================
 METHOD glUniform2iARB (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2iARB(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3iARB (GLint location, GLint v0, GLint v1, GLint v2);
 ' =====================================================================================
 METHOD glUniform3iARB (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3iARB(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4iARB (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
 ' =====================================================================================
 METHOD glUniform4iARB (BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG, BYVAL v3 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4iARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4iARB(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1fvARB (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform1fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1fvARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2fvARB (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform2fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2fvARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3fvARB (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform3fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3fvARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4fvARB (GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniform4fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4fvARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1ivARB (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform1ivARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1ivARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2ivARB (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform2ivARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2ivARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3ivARB (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform3ivARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3ivARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4ivARB (GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glUniform4ivARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4ivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4ivARB(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix2fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2fvARB(nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix3fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3fvARB(nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glUniformMatrix4fvARB (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4fvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4fvARB(nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetObjectParameterfvARB (GLhandleARB obj, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetObjectParameterfvARB (BYVAL dwObj AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectParameterfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectParameterfvARB(dwObj, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetObjectParameterivARB (GLhandleARB obj, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetObjectParameterivARB (BYVAL dwObj AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectParameterivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectParameterivARB(dwObj, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInfoLogARB (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
 ' =====================================================================================
 METHOD glGetInfoLogARB (BYVAL dwObj AS DWORD, BYVAL maxLength AS LONG, BYREF nLength AS LONG, BYREF infoLog AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInfoLogARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInfoLogARB(dwObj, maxLength, nLength, infoLog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetAttachedObjectsARB (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
 ' =====================================================================================
 METHOD glGetAttachedObjectsARB (BYVAL containerObj AS DWORD, BYVAL maxCount AS LONG, BYREF nCount AS LONG, BYREF dwObj AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetAttachedObjectsARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetAttachedObjectsARB(containerObj, maxCount, nCount, dwObj)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetUniformLocationARB (GLhandleARB programObj, const GLcharARB *name);
 ' =====================================================================================
 METHOD glGetUniformLocationARB (BYVAL programObj AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetUniformLocationARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformLocationARB(programObj, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveUniformARB (GLhandleARB programObj, GLuint index, GLsizei maxLength,
 ' GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
 ' =====================================================================================
 METHOD glGetActiveUniformARB (BYVAL programObj AS DWORD, BYVAL dwIndex AS DWORD, BYVAL maxLength AS LONG, BYREF nLength AS LONG, BYREF nSize AS LONG, BYREF dwType AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniformARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniformARB(programObj, dwIndex, maxLength, nLength, nSize, dwType, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformfvARB (GLhandleARB programObj, GLint location, GLfloat *params);
 ' =====================================================================================
 METHOD glGetUniformfvARB (BYVAL programObj AS DWORD, BYVAL nLocation AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformfvARB(programObj, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformivARB (GLhandleARB programObj, GLint location, GLint *params);
 ' =====================================================================================
 METHOD glGetUniformivARB (BYVAL programObj AS DWORD, BYVAL nLocation AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformivARB(programObj, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetShaderSourceARB (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source);
 ' =====================================================================================
 METHOD glGetShaderSourceARB (BYVAL dwObj AS DWORD, BYVAL maxLength AS LONG, BYREF nLength AS LONG, BYREF szSource AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetShaderSourceARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetShaderSourceARB(dwObj, maxLength, nLength, szSource)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindAttribLocationARB (GLhandleARB programObj, GLuint index, const GLcharARB *name);
 ' =====================================================================================
 METHOD glBindAttribLocationARB (BYVAL programObj AS DWORD, BYVAL dwIndex AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindAttribLocationARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindAttribLocationARB(programObj, dwIndex, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveAttribARB (GLhandleARB programObj, GLuint index, GLsizei maxLength,
 ' GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
 ' =====================================================================================
 METHOD glGetActiveAttribARB (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYVAL maxLength AS LONG, BYREF nLength AS LONG, BYREF nSize AS LONG, BYREF dwType AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveAttribARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveAttribARB(dwProgram, dwIndex, maxLength, nLength, nSize, dwType, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetAttribLocationARB (GLhandleARB programObj, const GLcharARB *name);
 ' =====================================================================================
 METHOD glGetAttribLocationARB (BYVAL programObj AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetAttribLocationARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetAttribLocationARB(programObj, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawBuffersARB (GLsizei n, const GLenum *bufs);
 ' =====================================================================================
 METHOD glDrawBuffersARB (BYVAL n AS LONG, BYREF bufs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawBuffersARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawBuffersARB(n, bufs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClampColorARB (GLenum, GLenum);
 ' typedef void (APIENTRYP PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
 ' =====================================================================================
 METHOD glClampColorARB (BYVAL dwTarget AS DWORD, BYVAL dwClamp AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClampColorARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClampColorARB(dwTarget, dwClamp)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawArraysInstancedARB (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawArraysInstancedARB (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysInstancedARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysInstancedARB(dwMode, nFirst, nCount, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsInstancedARB (GLenum mode, GLsizei count, GLenum type,
 ' const GLvoid *indices, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawElementsInstancedARB (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstancedARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstancedARB(dwMode, nCount, dwType, indices, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsRenderbuffer (GLuint renderbuffer);
 ' =====================================================================================
 METHOD glIsRenderbuffer (BYVAL dwrenderbuffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsRenderbuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsRenderbuffer(dwrenderbuffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindRenderbuffer (GLenum target, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glBindRenderbuffer (BYVAL dwTarget AS DWORD, BYVAL dwrenderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindRenderbuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindRenderbuffer(dwTarget, dwrenderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteRenderbuffers (GLsizei n, const GLuint *renderbuffers);
 ' =====================================================================================
 METHOD glDeleteRenderbuffers (BYVAL n AS LONG, BYREF dwrenderbuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteRenderbuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteRenderbuffers(n, dwrenderbuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenRenderbuffers (GLsizei, GLuint *);
 ' typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
 ' =====================================================================================
 METHOD glGenRenderbuffers (BYVAL n AS LONG, BYREF dwrenderbuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenRenderbuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenRenderbuffers(n, dwrenderbuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glRenderbufferStorage (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRenderbufferStorage")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRenderbufferStorage(dwTarget, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetRenderbufferParameteriv (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetRenderbufferParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetRenderbufferParameteriv(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsFramebuffer (GLuint framebuffer);
 ' =====================================================================================
 METHOD glIsFramebuffer (BYVAL dwframebuffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsFramebuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsFramebuffer(dwframebuffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFramebuffer (GLenum target, GLuint framebuffer);
 ' =====================================================================================
 METHOD glBindFramebuffer (BYVAL dwTarget AS DWORD, BYVAL dwframebuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFramebuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFramebuffer(dwTarget, dwframebuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteFramebuffers (GLsizei n, const GLuint *framebuffers);
 ' =====================================================================================
 METHOD glDeleteFramebuffers (BYVAL n AS LONG, BYREF dwframebuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteFramebuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteFramebuffers(n, dwframebuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenFramebuffers (GLsizei n, GLuint *framebuffers);
 ' =====================================================================================
 METHOD glGenFramebuffers (BYVAL n AS LONG, BYREF dwframebuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenFramebuffers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenFramebuffers(n, dwframebuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glCheckFramebufferStatus (GLenum target);
 ' =====================================================================================
 METHOD glCheckFramebufferStatus (BYVAL dwTarget AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCheckFramebufferStatus")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCheckFramebufferStatus(dwTarget) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture1D (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTexture1D (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwtexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture1D(dwTarget, dwAttachment, dwtexttarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTexture2D (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwtexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture2D(dwTarget, dwAttachment, dwtexttarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture3D (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level, GLint zoffset);
 ' =====================================================================================
 METHOD glFramebufferTexture3D (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwtexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL zoffset AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture3D(dwTarget, dwAttachment, dwtexttarget, dwTexture, nLevel, zoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferRenderbuffer (GLenum target, GLenum attachment,
 ' GLenum renderbuffertarget, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glFramebufferRenderbuffer (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwrenderbuffertarget AS DWORD, BYVAL dwrenderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferRenderbuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferRenderbuffer(dwTarget, dwAttachment, dwrenderbuffertarget, dwrenderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment,
 ' GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFramebufferAttachmentParameteriv (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFramebufferAttachmentParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFramebufferAttachmentParameteriv(dwTarget, dwAttachment, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenerateMipmap (GLenum target);
 ' =====================================================================================
 METHOD glGenerateMipmap (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenerateMipmap")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenerateMipmap(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
 ' GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
 ' =====================================================================================
 METHOD glBlitFramebuffer (BYVAL srcX0 AS LONG, BYVAL srcY0 AS LONG, BYVAL srcX1 AS LONG, BYVAL srcY1 AS LONG, BYVAL dstX0 AS LONG, BYVAL dstY0 AS LONG, BYVAL dstX1 AS LONG, BYVAL dstY1 AS LONG, BYVAL dwMask AS DWORD, BYVAL dwfilter AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlitFramebuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, dwMask, dwfilter)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRenderbufferStorageMultisample (GLenum target, GLsizei samples,
 ' GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glRenderbufferStorageMultisample (BYVAL dwTarget AS DWORD, BYVAL nSamples AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRenderbufferStorageMultisample")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRenderbufferStorageMultisample(dwTarget, nSamples, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture,
 ' GLint level, GLint layer);
 ' =====================================================================================
 METHOD glFramebufferTextureLayer (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL nLayer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureLayer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureLayer(dwTarget, dwAttachment, dwTexture, nLevel, nLayer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameteriARB (GLuint program, GLenum pname, GLint value);
 ' =====================================================================================
 METHOD glProgramParameteriARB (BYVAL dwProgram AS DWORD, BYVAL pname AS DWORD, BYVAL value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameteriARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameteriARB(dwProgram, pname, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureARB (GLenum target, GLenum attachment, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTextureARB (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureARB(dwTarget, dwAttachment, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureLayerARB (GLenum target, GLenum attachment, GLuint texture,
 ' GLint level, GLint layer);
 ' =====================================================================================
 METHOD glFramebufferTextureLayerARB (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL nLayer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureLayerARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureLayerARB(dwTarget, dwAttachment, dwTexture, nLevel, nLayer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureFaceARB (GLenum target, GLenum attachment, GLuint texture,
 ' GLint level, GLenum face);
 ' =====================================================================================
 METHOD glFramebufferTextureFaceARB (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL dwFace AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureFaceARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureFaceARB(dwTarget, dwAttachment, dwTexture, nLevel, dwFace)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribDivisorARB (GLuint index, GLuint divisor);
 ' =====================================================================================
 METHOD glVertexAttribDivisorARB (BYVAL dwIndex AS DWORD, BYVAL dwDivisor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribDivisorARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribDivisorARB(dwIndex, dwDivisor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
 ' =====================================================================================
 METHOD glMapBufferRange (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwLength AS DWORD, BYVAL dwAccess AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapBufferRange")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapBufferRange(dwTarget, dwOffset, dwlength, dwaccess)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length);
 ' =====================================================================================
 METHOD glFlushMappedBufferRange (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwLength AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushMappedBufferRange")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushMappedBufferRange(dwTarget, dwOffset, dwLength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexBufferARB (GLenum target, GLenum internalformat, GLuint buffer);
 ' =====================================================================================
 METHOD glTexBufferARB (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwBuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBufferARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBufferARB(dwTarget, internalformat, dwBuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindVertexArray (GLuint array);
 ' =====================================================================================
 METHOD glBindVertexArray (BYVAL dwArray AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVertexArray")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVertexArray(dwArray)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteVertexArrays (GLsizei n, const GLuint *arrays);
 ' =====================================================================================
 METHOD glDeleteVertexArrays (BYVAL n AS LONG, BYREF dwArrays AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteVertexArrays")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteVertexArrays(n, dwArrays)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenVertexArrays (GLsizei n, GLuint *arrays);
 ' =====================================================================================
 METHOD glGenVertexArrays (BYVAL n AS LONG, BYREF dwArrays AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenVertexArrays")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenVertexArrays(n, dwArrays)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsVertexArray (GLuint array);
 ' =====================================================================================
 METHOD glIsVertexArray (BYVAL dwArray AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsVertexArray")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsVertexArray(dwArray) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformIndices (GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
 ' =====================================================================================
 METHOD glGetUniformIndices (BYVAL program AS DWORD, BYVAL uniformCount AS LONG, BYREF uniformNames AS ASCIIZ, BYREF uniformIndices AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformIndices")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformIndices(program, uniformCount, uniformNames, uniformIndices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetActiveUniformsiv (BYVAL program AS DWORD, BYVAL uniformCount AS LONG, BYREF uniformIndices AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniformsiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveUniformName (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
 ' =====================================================================================
 METHOD glGetActiveUniformName (BYVAL program AS DWORD, BYVAL uniformIndex AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF uniformName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniformName")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniformName(program, uniformIndex, bufSize, nLength, uniformName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGetUniformBlockIndex (GLuint program, const GLchar *uniformBlockName);
 ' =====================================================================================
 METHOD glGetUniformBlockIndex (BYVAL program AS DWORD, BYREF uniformBlockName AS ASCIIZ) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetUniformBlockIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformBlockIndex(program, uniformBlockName) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetActiveUniformBlockiv (BYVAL program AS DWORD, BYVAL uniformBlockIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniformBlockiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
 ' =====================================================================================
 METHOD glGetActiveUniformBlockName (BYVAL program AS DWORD, BYVAL uniformBlockIndex AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF uniformBlockName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveUniformBlockName")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, nLength, uniformBlockName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
 ' =====================================================================================
 METHOD glUniformBlockBinding (BYVAL program AS DWORD, BYVAL uniformBlockIndex AS DWORD, BYVAL uniformBlockBinding AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformBlockBinding")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyBufferSubData (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glCopyBufferSubData (BYVAL readTarget AS DWORD, BYVAL writeTarget AS DWORD, BYVAL readOffset AS DWORD, BYVAL writeOffset AS DWORD, BYVAL dwSize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyBufferSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, dwSize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
 ' =====================================================================================
 METHOD glDrawElementsBaseVertex (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL basevertex AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsBaseVertex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsBaseVertex(dwMode, nCount, dwType, indices, basevertex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end,
 ' GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
 ' =====================================================================================
 METHOD glDrawRangeElementsBaseVertex (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL basevertex AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawRangeElementsBaseVertex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawRangeElementsBaseVertex(dwMode, dwStart, dwEnd, nCount, dwType, indices, basevertex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsInstancedBaseVertex (GLenum mode, GLsizei count, GLenum type,
 ' const GLvoid *indices, GLsizei instancecount, GLint basevertex);
 ' =====================================================================================
 METHOD glDrawElementsInstancedBaseVertex (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL instancecount AS LONG, BYVAL basevertex AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstancedBaseVertex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstancedBaseVertex(dwMode, nCount, dwType, indices, instancecount, basevertex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
 ' =====================================================================================
 METHOD glMultiDrawElementsBaseVertex (BYVAL dwMode AS DWORD, BYREF nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL drawcount AS LONG, BYREF basevertex AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElementsBaseVertex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElementsBaseVertex(dwMode, nCount, dwType, indices, drawcount, basevertex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProvokingVertex (GLenum mode);
 ' =====================================================================================
 METHOD glProvokingVertex (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProvokingVertex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProvokingVertex(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLsync glFenceSync (GLenum condition, GLbitfield flags);
 ' =====================================================================================
 METHOD glFenceSync (BYVAL dwCondition AS DWORD, BYVAL dwFlags AS DWORD) AS DWORD
 LOCAL pProc, pSync AS DWORD
 pProc = wglGetProcAddress("glFenceSync")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFenceSync(dwCondition, dwFlags) TO pSync
 METHOD = pSync
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsSync (GLsync sync);
 ' =====================================================================================
 METHOD glIsSync (BYVAL dwSync AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsSync")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsSync(dwSync) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteSync (GLsync sync);
 ' =====================================================================================
 METHOD glDeleteSync (BYVAL dwSync AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteSync")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteSync(dwSync)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glClientWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
 ' =====================================================================================
 METHOD glClientWaitSync (BYVAL dwSync AS DWORD, BYVAL dwFlags AS DWORD, BYVAL qTimeout AS QUAD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glClientWaitSync")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClientWaitSync(dwSync, dwFlags, qTimeout) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
 ' =====================================================================================
 METHOD glWaitSync (BYVAL dwSync AS DWORD, BYVAL dwFlags AS DWORD, BYVAL qTimeout AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWaitSync")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWaitSync(dwSync, dwFlags, qTimeout)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInteger64v (GLenum pname, GLint64 *params);
 ' =====================================================================================
 METHOD glGetInteger64v (BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInteger64v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInteger64v(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
 ' =====================================================================================
 METHOD glGetSynciv (BYVAL dwSync AS DWORD, BYVAL pname AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSynciv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSynciv(dwSync, pname, bufSize, nLength, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage2DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTexImage2DMultisample (BYVAL dwTarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage2DMultisample")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage2DMultisample(dwTarget, samples, internalformat, nWidth, nHeight, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage3DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTexImage3DMultisample (BYVAL dwTarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage3DMultisample")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage3DMultisample(dwTarget, samples, internalformat, nWidth, nHeight, nDepth, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultisamplefv (GLenum pname, GLuint index, GLfloat *val);
 ' =====================================================================================
 METHOD glGetMultisamplefv (BYVAL pname AS DWORD, BYVAL dwIndex AS DWORD, BYREF fVal AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultisamplefv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultisamplefv(pname, dwIndex, fVal)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleMaski (GLuint index, GLbitfield mask);
 ' =====================================================================================
 METHOD glSampleMaski (BYVAL dwIndex AS DWORD, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleMaski")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleMaski(dwIndex, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationiARB (GLuint buf, GLenum mode);
 ' =====================================================================================
 METHOD glBlendEquationiARB (BYVAL buf AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationiARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationiARB(buf, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationSeparatei (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
 ' =====================================================================================
 METHOD glBlendEquationSeparateiARB (BYVAL buf AS DWORD, BYVAL modeRGB AS DWORD, BYVAL modeAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationSeparateiARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationSeparateiARB(buf, modeRGB, modeAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFunci (GLuint buf, GLenum src, GLenum dst);
 ' =====================================================================================
 METHOD glBlendFunciARB (BYVAL buf AS DWORD, BYVAL src AS DWORD, BYVAL dst AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFunciARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFunciARB(buf, src, dst)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncSeparatei (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparateiARB (BYVAL buf AS DWORD, BYVAL srcRGB AS DWORD, BYVAL dstRGB AS DWORD, BYVAL srcAlpha AS DWORD, BYVAL dstAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparateiARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparateiARB(buf, srcRGB, dstRGB, srcAlpha, dstAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMinSampleShadingARB (GLclampf value);
 ' =====================================================================================
 METHOD glMinSampleShadingARB (BYVAL value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMinSampleShadingARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMinSampleShadingARB(value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedStringARB (GLenum type, GLint namelen, const GLchar *name, GLint stringlen, const GLchar *string);
 ' =====================================================================================
 METHOD glNamedStringARB (BYVAL dwType AS DWORD, BYVAL namelen AS LONG, BYREF szName AS ASCIIZ, BYVAL stringlen AS LONG, BYREF szstring AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedStringARB(dwType, namelen, szName, stringlen, szstring)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteNamedStringARB (GLint namelen, const GLchar *name);
 ' =====================================================================================
 METHOD glDeleteNamedStringARB (BYVAL namelen AS LONG, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteNamedStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteNamedStringARB(namelen, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompileShaderIncludeARB (GLuint shader, GLsizei count, const GLchar* *path, const GLint *length);
 ' =====================================================================================
 METHOD glCompileShaderIncludeARB (BYVAL shader AS DWORD, BYVAL nCount AS LONG, BYREF szPath AS ASCIIZ, BYREF nLength AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompileShaderIncludeARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompileShaderIncludeARB(shader, nCount, szPath, nLength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsNamedStringARB (GLint namelen, const GLchar *name);
 ' =====================================================================================
 METHOD glIsNamedStringARB (BYVAL namelen AS LONG, BYREF szName AS ASCIIZ) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsNamedStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsNamedStringARB(namelen, szName) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedStringARB (GLint namelen, const GLchar *name, GLsizei bufSize, GLint *stringlen, GLchar *string);
 ' =====================================================================================
 METHOD glGetNamedStringARB (BYVAL namelen AS LONG, BYREF szName AS ASCIIZ, BYVAL bufSize AS LONG, BYREF stringlen AS LONG, BYREF szstring AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedStringARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedStringARB(namelen, szName, bufSize, stringlen, szstring)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedStringivARB (GLint namelen, const GLchar *name, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedStringivARB (BYVAL namelen AS LONG, BYREF szName AS ASCIIZ, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedStringivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedStringivARB(namelen, szName, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFragDataLocationIndexed (GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
 ' =====================================================================================
 METHOD glBindFragDataLocationIndexed (BYVAL program AS DWORD, BYVAL colorNumber AS DWORD, BYVAL dwIndex AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFragDataLocationIndexed")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFragDataLocationIndexed(program, colorNumber, dwIndex, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetFragDataIndex (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetFragDataIndex (BYVAL namelen AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetFragDataIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragDataIndex(namelen, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenSamplers (GLsizei count, GLuint *samplers);
 ' =====================================================================================
 METHOD glGenSamplers (BYVAL nCount AS LONG, BYREF samplers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenSamplers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenSamplers(nCount, samplers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteSamplers (GLsizei count, const GLuint *samplers);
 ' =====================================================================================
 METHOD glDeleteSamplers (BYVAL nCount AS LONG, BYREF samplers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteSamplers")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteSamplers(nCount, samplers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsSampler (GLuint sampler);
 ' =====================================================================================
 METHOD glIsSampler (BYVAL sampler AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsSampler")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsSampler(sampler) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindSampler (GLuint unit, GLuint sampler);
 ' =====================================================================================
 METHOD glBindSampler (BYVAL dwUnit AS DWORD, BYVAL sampler AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindSampler")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindSampler(dwUnit, sampler)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameteri (GLuint sampler, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glSamplerParameteri (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameteri(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameteriv (GLuint sampler, GLenum pname, const GLint *param);
 ' =====================================================================================
 METHOD glSamplerParameteriv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameteriv(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glSamplerParameterf (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameterf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameterf(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameterfv (GLuint sampler, GLenum pname, const GLfloat *param);
 ' =====================================================================================
 METHOD glSamplerParameterfv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameterfv(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameterIiv (GLuint sampler, GLenum pname, const GLint *param);
 ' =====================================================================================
 METHOD glSamplerParameterIiv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameterIiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameterIiv(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplerParameterIuiv (GLuint sampler, GLenum pname, const GLuint *param);
 ' =====================================================================================
 METHOD glSamplerParameterIuiv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF param AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplerParameterIuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplerParameterIuiv(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetSamplerParameteriv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSamplerParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSamplerParameteriv(sampler, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSamplerParameterIiv (GLuint sampler, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetSamplerParameterIiv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSamplerParameterIiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSamplerParameterIiv(sampler, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetSamplerParameterfv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSamplerParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSamplerParameterfv(sampler, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSamplerParameterIuiv (GLuint sampler, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetSamplerParameterIuiv (BYVAL sampler AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSamplerParameterIuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSamplerParameterIuiv(sampler, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glQueryCounter (GLuint id, GLenum target);
 ' =====================================================================================
 METHOD glQueryCounter (BYVAL dwId AS DWORD, BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glQueryCounter")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glQueryCounter(dwId, dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjecti64v (GLuint id, GLenum pname, GLint64 *params);
 ' =====================================================================================
 METHOD glGetQueryObjecti64v (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjecti64v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjecti64v(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjectui64v (GLuint id, GLenum pname, GLuint64 *params);
 ' =====================================================================================
 METHOD glGetQueryObjectui64v (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectui64v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectui64v(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP2ui (GLenum type, GLuint value);
 ' =====================================================================================
 METHOD glVertexP2ui (BYVAL dwType AS DWORD, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP2ui(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP2uiv (GLenum type, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexP2uiv (BYVAL dwType AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP2uiv(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP3ui (GLenum type, GLuint value);
 ' =====================================================================================
 METHOD glVertexP3ui (BYVAL dwType AS DWORD, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP3ui(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP3uiv (GLenum type, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexP3uiv (BYVAL dwType AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP3uiv(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP4ui (GLenum type, GLuint value);
 ' =====================================================================================
 METHOD glVertexP4ui (BYVAL dwType AS DWORD, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP4ui(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexP4uiv (GLenum type, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexP4uiv (BYVAL dwType AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexP4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexP4uiv(dwType, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP1ui (GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glTexCoordP1ui (BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP1ui(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP1uiv (GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glTexCoordP1uiv (BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP1uiv(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP2ui (GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glTexCoordP2ui (BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP2ui(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP2uiv (GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glTexCoordP2uiv (BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP2uiv(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP3ui (GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glTexCoordP3ui (BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP3ui(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP3uiv (GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glTexCoordP3uiv (BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP3uiv(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP4ui (GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glTexCoordP4ui (BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP4ui(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordP4uiv (GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glTexCoordP4uiv (BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordP4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordP4uiv(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP1ui (GLenum texture, GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP1ui (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP1ui(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP1uiv (GLenum texture, GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP1uiv (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP1uiv(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP2ui (GLenum texture, GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP2ui (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP2ui(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP2uiv (GLenum texture, GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP2uiv (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP2uiv(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP3ui (GLenum texture, GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP3ui (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP3ui(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP3uiv (GLenum texture, GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP3uiv (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP3uiv(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP4ui (GLenum texture, GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP4ui (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP4ui(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordP4uiv (GLenum texture, GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glMultiTexCoordP4uiv (BYVAL dwTexture AS DWORD, BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordP4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordP4uiv(dwTexture, dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalP3ui (GLenum type, GLuint coords);
 ' =====================================================================================
 METHOD glNormalP3ui (BYVAL dwType AS DWORD, BYVAL dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalP3ui(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalP3uiv (GLenum type, const GLuint *coords);
 ' =====================================================================================
 METHOD glNormalP3uiv (BYVAL dwType AS DWORD, BYREF dwCoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalP3uiv(dwType, dwCoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorP3ui (GLenum type, GLuint color);
 ' =====================================================================================
 METHOD glColorP3ui (BYVAL dwType AS DWORD, BYVAL dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorP3ui(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorP3uiv (GLenum type, const GLuint *color);
 ' =====================================================================================
 METHOD glColorP3uiv (BYVAL dwType AS DWORD, BYREF dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorP3uiv(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorP4ui (GLenum type, GLuint color);
 ' =====================================================================================
 METHOD glColorP4ui (BYVAL dwType AS DWORD, BYVAL dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorP4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorP4ui(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorP4uiv (GLenum type, const GLuint *color);
 ' =====================================================================================
 METHOD glColorP4uiv (BYVAL dwType AS DWORD, BYREF dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorP4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorP4uiv(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColorP3ui (GLenum type, GLuint color);
 ' =====================================================================================
 METHOD glSecondaryColorP3ui (BYVAL dwType AS DWORD, BYVAL dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorP3ui(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColorP3uiv (GLenum type, const GLuint *color);
 ' =====================================================================================
 METHOD glSecondaryColorP3uiv (BYVAL dwType AS DWORD, BYREF dwColor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorP3uiv(dwType, dwColor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP1ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
 ' =====================================================================================
 METHOD glVertexAttribP1ui (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP1ui(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP1uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexAttribP1uiv (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP1uiv(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP2ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
 ' =====================================================================================
 METHOD glVertexAttribP2ui (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP2ui(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP2uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexAttribP2uiv (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP2uiv(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP3ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
 ' =====================================================================================
 METHOD glVertexAttribP3ui (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP3ui(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP3uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexAttribP3uiv (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP3uiv(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP4ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
 ' =====================================================================================
 METHOD glVertexAttribP4ui (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP4ui(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribP4uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
 ' =====================================================================================
 METHOD glVertexAttribP4uiv (BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribP4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribP4uiv(dwIndex, dwType, normalized, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawArraysIndirect (GLenum mode, const GLvoid *indirect);
 ' =====================================================================================
 METHOD glDrawArraysIndirect (BYVAL dwMode AS DWORD, BYVAL indirect AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysIndirect")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysIndirect(dwMode, indirect)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsIndirect (GLenum mode, GLenum type, const GLvoid *indirect);
 ' =====================================================================================
 METHOD glDrawElementsIndirect (BYVAL dwMode AS DWORD, BYVAL dwType AS DWORD, BYVAL indirect AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsIndirect")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsIndirect(dwMode, dwType, indirect)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1d (GLint location, GLdouble x);
 ' =====================================================================================
 METHOD glUniform1d (BYVAL location AS LONG, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1d(location, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2d (GLint location, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glUniform2d (BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2d(location, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3d (GLint location, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glUniform3d (BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3d(location, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4d (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glUniform4d (BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4d(location, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1dv (GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniform1dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1dv(location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2dv (GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniform2dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2dv(location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3dv (GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniform3dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3dv(location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4dv (GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniform4dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4dv(location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix2dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix3dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix4dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2x3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix2x3dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2x3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2x3dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix2x4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix2x4dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix2x4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix2x4dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3x2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix3x2dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3x2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3x2dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix3x4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix3x4dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix3x4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix3x4dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4x2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix4x2dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4x2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4x2dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformMatrix4x3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glUniformMatrix4x3dv (BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformMatrix4x3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformMatrix4x3dv(location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformdv (GLuint program, GLint location, GLdouble *params);
 ' =====================================================================================
 METHOD glGetUniformdv (BYVAL program AS DWORD, BYVAL location AS LONG, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformdv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformdv(program, location, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetSubroutineUniformLocation (GLuint program, GLenum shadertype, const GLchar *name);
 ' =====================================================================================
 METHOD glGetSubroutineUniformLocation (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetSubroutineUniformLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSubroutineUniformLocation(program, shadertype, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGetSubroutineIndex (GLuint program, GLenum shadertype, const GLchar *name);
 ' =====================================================================================
 METHOD glGetSubroutineIndex (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetSubroutineIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSubroutineIndex(program, shadertype, szName) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveSubroutineUniformiv (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
 ' =====================================================================================
 METHOD glGetActiveSubroutineUniformiv (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveSubroutineUniformiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveSubroutineUniformiv(program, shadertype, dwIndex, pname, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveSubroutineUniformName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
 ' =====================================================================================
 METHOD glGetActiveSubroutineUniformName (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYVAL dwIndex AS DWORD, BYVAL bufsize AS LONG, BYREF nLength AS LONG, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveSubroutineUniformName")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveSubroutineUniformName(program, shadertype, dwIndex, bufsize, nLength, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveSubroutineName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
 ' =====================================================================================
 METHOD glGetActiveSubroutineName (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYVAL dwIndex AS DWORD, BYVAL bufsize AS LONG, BYREF nLength AS LONG, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveSubroutineName")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveSubroutineName(program, shadertype, dwIndex, bufsize, nLength, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformSubroutinesuiv (GLenum shadertype, GLsizei count, const GLuint *indices);
 ' =====================================================================================
 METHOD glUniformSubroutinesuiv (BYVAL shadertype AS DWORD, BYVAL nCount AS LONG, BYREF dwIndices AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformSubroutinesuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformSubroutinesuiv(shadertype, nCount, dwIndices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformSubroutineuiv (GLenum shadertype, GLint location, GLuint *params);
 ' =====================================================================================
 METHOD glGetUniformSubroutineuiv (BYVAL shadertype AS DWORD, BYVAL location AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformSubroutineuiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformSubroutineuiv(shadertype, location, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramStageiv (GLuint program, GLenum shadertype, GLenum pname, GLint *values);
 ' =====================================================================================
 METHOD glGetProgramStageiv (BYVAL program AS DWORD, BYVAL shadertype AS DWORD, BYVAL pname AS DWORD, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramStageiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramStageiv(program, shadertype, pname, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPatchParameteri (GLenum pname, GLint value);
 ' =====================================================================================
 METHOD glPatchParameteri (BYVAL pname AS DWORD, BYVAL value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPatchParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPatchParameteri(pname, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPatchParameterfv (GLenum pname, const GLfloat *values);
 ' =====================================================================================
 METHOD glPatchParameterfv (BYVAL pname AS DWORD, BYREF values AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPatchParameterfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPatchParameterfv(pname, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindTransformFeedback (GLenum target, GLuint id);
 ' =====================================================================================
 METHOD glBindTransformFeedback (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindTransformFeedback(dwTarget, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteTransformFeedbacks (GLsizei n, const GLuint *ids);
 ' =====================================================================================
 METHOD glDeleteTransformFeedbacks (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteTransformFeedbacks")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteTransformFeedbacks(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenTransformFeedbacks (GLsizei n, GLuint *ids);
 ' =====================================================================================
 METHOD glGenTransformFeedbacks (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenTransformFeedbacks")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenTransformFeedbacks(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsTransformFeedback (GLuint id);
 ' =====================================================================================
 METHOD glIsTransformFeedback (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS DWORD
 pProc = wglGetProcAddress("glIsTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsTransformFeedback(dwId) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPauseTransformFeedback (void);
 ' =====================================================================================
 METHOD glPauseTransformFeedback
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPauseTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPauseTransformFeedback
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glResumeTransformFeedback (void);
 ' =====================================================================================
 METHOD glResumeTransformFeedback
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResumeTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResumeTransformFeedback
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawTransformFeedback (GLenum mode, GLuint id);
 ' =====================================================================================
 METHOD glDrawTransformFeedback (BYVAL dwMode AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTransformFeedback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTransformFeedback(dwMode, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawTransformFeedbackStream (GLenum mode, GLuint id, GLuint stream);
 ' =====================================================================================
 METHOD glDrawTransformFeedbackStream (BYVAL dwMode AS DWORD, BYVAL dwId AS DWORD, BYVAL dwStream AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTransformFeedbackStream")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTransformFeedbackStream(dwMode, dwId, dwStream)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginQueryIndexed (GLenum target, GLuint index, GLuint id);
 ' =====================================================================================
 METHOD glBeginQueryIndexed (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginQueryIndexed")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginQueryIndexed(dwTarget, dwIndex, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndQueryIndexed (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glEndQueryIndexed (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndQueryIndexed")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndQueryIndexed(dwTarget, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryIndexediv (GLenum target, GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetQueryIndexediv (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryIndexediv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryIndexediv(dwTarget, dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReleaseShaderCompiler (void);
 ' =====================================================================================
 METHOD glReleaseShaderCompiler
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReleaseShaderCompiler")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReleaseShaderCompiler
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glShaderBinary (GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
 ' =====================================================================================
 METHOD glShaderBinary (BYVAL dwCount AS DWORD, BYREF shaders AS DWORD, BYVAL binaryformat AS DWORD, BYVAL pbinary AS DWORD, BYVAL length AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderBinary")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderBinary(dwCount, shaders, binaryformat, pbinary, length)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
 ' =====================================================================================
 METHOD glGetShaderPrecisionFormat (BYVAL shadertype AS DWORD, BYVAL precisiontype AS DWORD, BYREF lrange AS LONG, BYREF precision AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetShaderPrecisionFormat")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetShaderPrecisionFormat(shadertype, precisiontype, lrange, precision)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthRangef (GLclampf n, GLclampf f);
 ' =====================================================================================
 METHOD glDepthRangef (BYVAL n AS SINGLE, BYVAL f AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangef")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangef(n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearDepthf (GLclampf d);
 ' =====================================================================================
 METHOD glClearDepthf (BYVAL d AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearDepthf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearDepthf(d)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramBinary (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
 ' =====================================================================================
 METHOD glGetProgramBinary (BYVAL program AS DWORD, BYVAL bufSize AS DWORD, BYREF length AS DWORD, BYREF binaryFormat AS DWORD, BYVAL pbinary AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramBinary")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramBinary(program, bufSize, length, binaryFormat, pbinary)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramBinary (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
 ' =====================================================================================
 METHOD glProgramBinary (BYVAL program AS DWORD, BYVAL binaryFormat AS DWORD, BYVAL pbinary AS DWORD, BYVAL length AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramBinary")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramBinary(program, binaryFormat, pbinary, length)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameteri (GLuint program, GLenum pname, GLint value);
 ' =====================================================================================
 METHOD glProgramParameteri (BYVAL program AS DWORD, BYVAL pname AS DWORD, BYVAL value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameteri(program, pname, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUseProgramStages (GLuint pipeline, GLbitfield stages, GLuint program);
 ' =====================================================================================
 METHOD glUseProgramStages (BYVAL pipeline AS DWORD, BYVAL stages AS DWORD, BYVAL program AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUseProgramStages")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUseProgramStages(pipeline, stages, program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glActiveShaderProgram (GLuint pipeline, GLuint program);
 ' =====================================================================================
 METHOD glActiveShaderProgram (BYVAL pipeline AS DWORD, BYVAL program AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveShaderProgram")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveShaderProgram(pipeline, program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glCreateShaderProgramv (GLenum type, GLsizei count, const GLchar* const *strings);
 ' =====================================================================================
 METHOD glCreateShaderProgramv (BYVAL dwType AS DWORD, BYVAL dwCount AS DWORD, BYREF strings AS STRING) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCreateShaderProgramv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateShaderProgramv(dwType, dwCount, strings) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindProgramPipeline (GLuint pipeline);
 ' =====================================================================================
 METHOD glBindProgramPipeline (BYVAL pipeline AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindProgramPipeline")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindProgramPipeline(pipeline)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteProgramPipelines (GLsizei n, const GLuint *pipelines);
 ' =====================================================================================
 METHOD glDeleteProgramPipelines (BYVAL n AS DWORD, BYREF pipelines AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteProgramPipelines")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteProgramPipelines(n, pipelines)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenProgramPipelines (GLsizei n, GLuint *pipelines);
 ' =====================================================================================
 METHOD glGenProgramPipelines (BYVAL n AS DWORD, BYREF pipelines AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenProgramPipelines")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenProgramPipelines(n, pipelines)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsProgramPipeline (GLuint pipeline);
 ' =====================================================================================
 METHOD glIsProgramPipeline (BYVAL pipeline AS DWORD) AS LONG
 LOCAL bRes AS LONG
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIsProgramPipeline")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsProgramPipeline(pipeline) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramPipelineiv (GLuint pipeline, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramPipelineiv (BYVAL pipeline AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramPipelineiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramPipelineiv(pipeline, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1i (GLuint program, GLint location, GLint v0);
 ' =====================================================================================
 METHOD glProgramUniform1i (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1i(program, location, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1iv (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform1iv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1iv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1f (GLuint program, GLint location, GLfloat v0);
 ' =====================================================================================
 METHOD glProgramUniform1f (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1f(program, location, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform1fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1fv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1d (GLuint program, GLint location, GLdouble v0);
 ' =====================================================================================
 METHOD glProgramUniform1d (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1d(program, location, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform1dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1dv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1ui (GLuint program, GLint location, GLuint v0);
 ' =====================================================================================
 METHOD glProgramUniform1ui (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1ui(program, location, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform1uiv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1uiv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2i (GLuint program, GLint location, GLint v0, GLint v1);
 ' =====================================================================================
 METHOD glProgramUniform2i (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2i(program, location, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2iv (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform2iv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2iv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2f (GLuint program, GLint location, GLfloat v0, GLfloat v1);
 ' =====================================================================================
 METHOD glProgramUniform2f (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2f(program, location, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform2fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2fv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2d (GLuint program, GLint location, GLdouble v0, GLdouble v1);
 ' =====================================================================================
 METHOD glProgramUniform2d (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2d(program, location, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform2dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2dv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2ui (GLuint program, GLint location, GLuint v0, GLuint v1);
 ' =====================================================================================
 METHOD glProgramUniform2ui (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2ui(program, location, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform2uiv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2uiv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
 ' =====================================================================================
 METHOD glProgramUniform3i (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3i(program, location, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3iv (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform3iv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3iv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
 ' =====================================================================================
 METHOD glProgramUniform3f (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3f(program, location, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform3fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3fv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3d (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
 ' =====================================================================================
 METHOD glProgramUniform3d (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3d(program, location, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform3dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3dv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
 ' =====================================================================================
 METHOD glProgramUniform3ui (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3ui(program, location, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform3uiv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3uiv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
 ' =====================================================================================
 METHOD glProgramUniform4i (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG, BYVAL v3 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4i")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4i(program, location, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4iv (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform4iv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4iv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4iv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
 ' =====================================================================================
 METHOD glProgramUniform4f (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL v3 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4f")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4f(program, location, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform4fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4fv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4d (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
 ' =====================================================================================
 METHOD glProgramUniform4d (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DOUBLE, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE, BYVAL v3 AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4d(program, location, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform4dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4dv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
 ' =====================================================================================
 METHOD glProgramUniform4ui (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD, BYVAL v3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4ui")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4ui(program, location, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform4uiv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4uiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4uiv(program, location, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x3fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x3fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x2fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x2fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x4fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x4fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x2fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x2fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x2fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x4fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x4fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x4fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x3fv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x3fv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x3fv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x3dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x3dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x2dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x2dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x4dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x4dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x2dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x2dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x4dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x4dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x3dv (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL dwCount AS DWORD, BYVAL transpose AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x3dv(program, location, dwCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glValidateProgramPipeline (GLuint pipeline);
 ' =====================================================================================
 METHOD glValidateProgramPipeline (BYVAL pipeline AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glValidateProgramPipeline")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glValidateProgramPipeline(pipeline)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramPipelineInfoLog (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
 ' =====================================================================================
 METHOD glGetProgramPipelineInfoLog (BYVAL pipeline AS DWORD, BYVAL bufSize AS DWORD, BYREF length AS DWORD, BYREF infoLog AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramPipelineInfoLog")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1d (GLuint index, GLdouble x);
 ' =====================================================================================
 METHOD glVertexAttribL1d (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1d(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2d (GLuint index, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexAttribL2d (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2d(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3d (GLuint index, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexAttribL3d (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3d(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexAttribL4d (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4d")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4d(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL1dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL2dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL3dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4dv (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL4dv (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4dv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4dv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribLPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribLPointer (BYVAL dwIndex AS DWORD, BYREF nsize AS LONG, BYVAL dwStride AS DWORD, BYVAL p AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribLPointer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribLPointer(dwIndex, nsize, dwStride, p)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribLdv (GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVertexAttribLdv (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribLdv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribLdv(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glViewportArrayv (GLuint first, GLsizei count, const GLfloat *v);
 ' =====================================================================================
 METHOD glViewportArrayv (BYVAL dwFirst AS DWORD, BYVAL dwCount AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glViewportArrayv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glViewportArrayv(dwFirst, dwCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glViewportIndexedf (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
 ' =====================================================================================
 METHOD glViewportIndexedf (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL w AS SINGLE, BYVAL h AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glViewportIndexedf")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glViewportIndexedf(dwIndex, x, y, w, h)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glViewportIndexedfv (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glViewportIndexedfv (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glViewportIndexedfv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glViewportIndexedfv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glScissorArrayv (GLuint first, GLsizei count, const GLint *v);
 ' =====================================================================================
 METHOD glScissorArrayv (BYVAL dwFirst AS DWORD, BYVAL dwCount AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glScissorArrayv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glScissorArrayv(dwFirst, dwCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glScissorIndexed (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glScissorIndexed (BYVAL dwIndex AS DWORD, BYVAL nLeft AS LONG, BYVAL nBottom AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glScissorIndexed")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glScissorIndexed(dwIndex, nLeft, nBottom, dwWidth, dwHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glScissorIndexedv (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glScissorIndexedv (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glScissorIndexedv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glScissorIndexedv(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthRangeArrayv (GLuint first, GLsizei count, const GLclampd *v);
 ' =====================================================================================
 METHOD glDepthRangeArrayv (BYVAL dwFirst AS DWORD, BYVAL dwCount AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangeArrayv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangeArrayv(dwFirst, dwCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthRangeIndexed (GLuint index, GLclampd n, GLclampd f);
 ' =====================================================================================
 METHOD glDepthRangeIndexed (BYVAL dwIndex AS DWORD, BYVAL n AS DOUBLE, BYVAL f AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangeIndexed")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangeIndexed(dwIndex, n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFloati_v (GLenum target, GLuint index, GLfloat *data);
 ' =====================================================================================
 METHOD glGetFloati_v (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF fltdata AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFloati_v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFloati_v(dwTarget, dwIndex, fltdata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetDoublei_v (GLenum target, GLuint index, GLdouble *data);
 ' =====================================================================================
 METHOD glGetDoublei_v (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF dbldata AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetDoublei_v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDoublei_v(dwTarget, dwIndex, dbldata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLsync glCreateSyncFromCLeventARB (struct _cl_context * context, struct _cl_event * event, GLbitfield flags);
 ' =====================================================================================
 METHOD glCreateSyncFromCLeventARB (BYVAL pContext AS DWORD, BYVAL pEvent AS DWORD, BYVAL flags AS DWORD) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCreateSyncFromCLeventARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateSyncFromCLeventARB(pContext, pEvent, flags) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageControlARB (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
 ' =====================================================================================
 METHOD glDebugMessageControlARB (BYVAL dwSource AS DWORD, BYVAL dwType AS DWORD, BYVAL severity AS DWORD, BYVAL dwCount AS DWORD, BYREF ids AS DWORD, BYVAL enabled AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageControlARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageControlARB(dwSource, dwType, severity, dwCount, ids, enabled)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageInsertARB (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
 ' =====================================================================================
 METHOD glDebugMessageInsertARB (BYVAL dwSource AS DWORD, BYVAL dwType AS DWORD, BYVAL dwId AS DWORD, BYVAL severity AS DWORD, BYVAL length AS DWORD, BYREF nuf AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageInsertARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageInsertARB(dwSource, dwType, dwId, severity, length, nuf)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageCallbackARB (GLDEBUGPROCARB callback, const GLvoid *userParam);
 ' =====================================================================================
 METHOD glDebugMessageCallbackARB (BYVAL dwCallback AS DWORD, BYVAL userParam AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageCallbackARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageCallbackARB(dwCallback, userParam)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGetDebugMessageLogARB (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
 ' =====================================================================================
 METHOD glGetDebugMessageLogARB (BYVAL dwCount AS DWORD, BYVAL bufsize AS DWORD, BYREF sources AS DWORD, BYREF types AS DWORD, BYREF ids AS DWORD, BYREF severities AS DWORD, BYREF lengths AS DWORD, BYREF messageLog AS ASCIIZ) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetDebugMessageLogARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDebugMessageLogARB(dwCount, bufsize, sources, types, ids, severities, lengths, messageLog) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGetGraphicsResetStatusARB (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
 ' =====================================================================================
 METHOD glGetGraphicsResetStatusARB () AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetGraphicsResetStatusARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetGraphicsResetStatusARB() TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnMapdvARB (GLenum target, GLenum query, GLsizei bufSize, GLdouble *v);
 ' =====================================================================================
 METHOD glGetnMapdvARB (BYVAL dwTarget AS DWORD, BYVAL dwQuery AS DWORD, BYVAL bufSize AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnMapdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnMapdvARB(dwTarget, dwQuery, bufSize, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnMapfvARB (GLenum target, GLenum query, GLsizei bufSize, GLfloat *v);
 ' =====================================================================================
 METHOD glGetnMapfvARB (BYVAL dwTarget AS DWORD, BYVAL dwQuery AS DWORD, BYVAL bufSize AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnMapfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnMapfvARB(dwTarget, dwQuery, bufSize, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnMapivARB (GLenum target, GLenum query, GLsizei bufSize, GLint *v);
 ' =====================================================================================
 METHOD glGetnMapivARB (BYVAL dwTarget AS DWORD, BYVAL dwQuery AS DWORD, BYVAL bufSize AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnMapivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnMapivARB(dwTarget, dwQuery, bufSize, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnPixelMapfvARB (GLenum map, GLsizei bufSize, GLfloat *values);
 ' =====================================================================================
 METHOD glGetnPixelMapfvARB (BYVAL dwMap AS DWORD, BYVAL bufSize AS DWORD, BYREF values AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnPixelMapfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnPixelMapfvARB(dwMap, bufSize, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnPixelMapuivARB (GLenum map, GLsizei bufSize, GLuint *values);
 ' =====================================================================================
 METHOD glGetnPixelMapuivARB (BYVAL dwMap AS DWORD, BYVAL bufSize AS DWORD, BYREF values AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnPixelMapuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnPixelMapuivARB(dwMap, bufSize, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnPixelMapusvARB (GLenum map, GLsizei bufSize, GLushort *values);
 ' =====================================================================================
 METHOD glGetnPixelMapusvARB (BYVAL dwMap AS DWORD, BYVAL bufSize AS DWORD, BYREF values AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnPixelMapusvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnPixelMapusvARB(dwMap, bufSize, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnPolygonStippleARB (GLsizei bufSize, GLubyte *pattern);
 ' =====================================================================================
 METHOD glGetnPolygonStippleARB (BYVAL bufSize AS DWORD, BYREF pattern AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnPolygonStippleARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnPolygonStippleARB(bufSize, pattern)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnColorTableARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table);
 ' =====================================================================================
 METHOD glGetnColorTableARB (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnColorTableARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnColorTableARB(dwTarget, dwFormat, dwType, bufSize, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnConvolutionFilterARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image);
 ' =====================================================================================
 METHOD glGetnConvolutionFilterARB (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pImage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnConvolutionFilterARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnConvolutionFilterARB(dwTarget, dwFormat, dwType, bufSize, pImage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnSeparableFilterARB (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span);
 ' =====================================================================================
 METHOD glGetnSeparableFilterARB (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL rowBufSize AS DWORD, BYVAL pRow AS DWORD, BYVAL columnBufSize AS DWORD, BYVAL pColumn AS DWORD, BYVAL pSpan AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnSeparableFilterARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnSeparableFilterARB(dwTarget, dwFormat, dwType, rowBufSize, pRow, columnBufSize, pColumn, pSpan)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnHistogramARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
 ' =====================================================================================
 METHOD glGetnHistogramARB (BYVAL dwTarget AS DWORD, BYVAL bReset AS LONG, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pvalues AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnHistogramARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnHistogramARB(dwTarget, bReset, dwType, bufSize, pvalues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnMinmaxARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
 ' =====================================================================================
 METHOD glGetnMinmaxARB (BYVAL dwTarget AS DWORD, BYVAL bReset AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pvalues AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnMinmaxARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnMinmaxARB(dwTarget, bReset, dwFormat, dwType, bufSize, pvalues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnTexImageARB (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img);
 ' =====================================================================================
 METHOD glGetnTexImageARB (BYVAL dwTarget AS DWORD, BYVAL nlevel AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnTexImageARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnTexImageARB(dwTarget, nlevel, dwFormat, dwType, bufSize, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReadnPixelsARB (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
 ' =====================================================================================
 METHOD glReadnPixelsARB (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL bufSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReadnPixelsARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReadnPixelsARB(x, y, dwWidth, dwHeight, dwFormat, dwType, bufSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnCompressedTexImageARB (GLenum target, GLint lod, GLsizei bufSize, GLvoid *img);
 ' =====================================================================================
 METHOD glGetnCompressedTexImageARB (BYVAL dwTarget AS DWORD, BYVAL lod AS LONG, BYVAL bufSize AS DWORD, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnCompressedTexImageARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnCompressedTexImageARB(dwTarget, lod, bufSize, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnUniformfvARB (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
 ' =====================================================================================
 METHOD glGetnUniformfvARB (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL bufSize AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnUniformfvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnUniformfvARB(program, location, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnUniformivARB (GLuint program, GLint location, GLsizei bufSize, GLint *params);
 ' =====================================================================================
 METHOD glGetnUniformivARB (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL bufSize AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnUniformivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnUniformivARB(program, location, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnUniformuivARB (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
 ' =====================================================================================
 METHOD glGetnUniformuivARB (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL bufSize AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnUniformuivARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnUniformuivARB(program, location, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetnUniformdvARB (GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
 ' =====================================================================================
 METHOD glGetnUniformdvARB (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL bufSize AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetnUniformdvARB")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetnUniformdvARB(program, location, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendColorEXT (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
 ' =====================================================================================
 METHOD glBlendColorEXT (BYVAL fred AS SINGLE, BYVAL fgreen AS SINGLE, BYVAL fblue AS SINGLE, BYVAL falpha AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendColorEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendColorEXT(fred, fgreen, fblue, falpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPolygonOffsetEXT (GLfloat factor, GLfloat bias);
 ' =====================================================================================
 METHOD glPolygonOffsetEXT (BYVAL factor AS SINGLE, BYVAL bias AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPolygonOffsetEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPolygonOffsetEXT(factor, bias)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage3DEXT (GLenum target, GLint level, GLenum internalformat,
 ' GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexImage3DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage3DEXT(dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexSubImage3DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexSubImage3DEXT(dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexFilterFuncSGIS (GLenum target, GLenum filter, GLfloat *weights);
 ' =====================================================================================
 METHOD glGetTexFilterFuncSGIS (BYVAL dwTarget AS DWORD, BYVAL dwFilter AS DWORD, BYREF weights AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexFilterFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexFilterFuncSGIS(dwTarget, dwFilter, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexFilterFuncSGIS (GLenum target, GLenum filter, GLsizei n, const GLfloat *weights);
 ' =====================================================================================
 METHOD glTexFilterFuncSGIS (BYVAL dwTarget AS DWORD, BYVAL dwFilter AS DWORD, BYVAL n AS LONG, BYREF weights AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexFilterFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexFilterFuncSGIS(dwTarget, dwFilter, n, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLsizei width,
 ' GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexSubImage1DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexSubImage1DEXT(dwTarget, nLevel, xoffset, nWidth, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexSubImage2DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexSubImage2DEXT(dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTexImage1DEXT (GLenum target, GLint level, GLenum internalformat,
 ' GLint x, GLint y, GLsizei width, GLint border);
 ' =====================================================================================
 METHOD glCopyTexImage1DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexImage1DEXT(dwTarget, nLevel, internalformat, x, y, nWidth, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTexImage2DEXT (GLenum target, GLint level, GLenum internalformat,
 ' GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 ' =====================================================================================
 METHOD glCopyTexImage2DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexImage2DEXT(dwTarget, nLevel, internalformat, x, y, nWidth, nHeight, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyTexSubImage1DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexSubImage1DEXT(dwTarget, nLevel, xoffset, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyTexSubImage2DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexSubImage2DEXT(dwTarget, nLevel, xoffset, yoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset,
 ' GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyTexSubImage3DEXT (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTexSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTexSubImage3DEXT(dwTarget, nLevel, xoffset, yoffset, zoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetHistogramEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
 ' =====================================================================================
 METHOD glGetHistogramEXT (BYVAL dwTarget AS DWORD, BYVAL bReset AS BYTE, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL values AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramEXT(dwTarget, bReset, dwFormat, dwType, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetHistogramParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetHistogramParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetHistogramParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetHistogramParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMinmaxEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
 ' =====================================================================================
 METHOD glGetMinmaxEXT (BYVAL dwTarget AS DWORD, BYVAL bReset AS BYTE, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL values AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmaxEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmaxEXT(dwTarget, bReset, dwFormat, dwType, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMinmaxParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMinmaxParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmaxParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmaxParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMinmaxParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMinmaxParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMinmaxParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMinmaxParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glHistogramEXT (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
 ' =====================================================================================
 METHOD glHistogramEXT (BYVAL dwTarget AS DWORD, BYVAL nWidth AS LONG, BYVAL internalformat AS DWORD, BYVAL bSink AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glHistogramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glHistogramEXT(dwTarget, nWidth, internalformat, bSink)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMinmaxEXT (GLenum target, GLenum internalformat, GLboolean sink);
 ' =====================================================================================
 METHOD glMinmaxEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL bSink AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMinmaxEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMinmaxEXT(dwTarget, internalformat, bSink)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glResetHistogramEXT (GLenum target);
 ' =====================================================================================
 METHOD glResetHistogramEXT (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResetHistogramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResetHistogramEXT(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glResetMinmaxEXT (GLenum target);
 ' =====================================================================================
 METHOD glResetMinmaxEXT (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResetMinmaxEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResetMinmaxEXT(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionFilter1DEXT (GLenum target, GLenum internalformat, GLsizei width,
 ' GLenum format, GLenum type, const GLvoid *image);
 ' =====================================================================================
 METHOD glConvolutionFilter1DEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionFilter1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionFilter1DEXT(dwTarget, internalformat, nWidth, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width,
 ' GLsizei height, GLenum format, GLenum type, const GLvoid *image);
 ' =====================================================================================
 METHOD glConvolutionFilter2DEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pImage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionFilter2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionFilter2DEXT(dwTarget, internalformat, nWidth, nHeight, dwFormat, dwType, pImage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionParameterfEXT (GLenum target, GLenum pname, GLfloat params);
 ' =====================================================================================
 METHOD glConvolutionParameterfEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterfEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionParameterfvEXT (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glConvolutionParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionParameteriEXT (GLenum target, GLenum pname, GLint params);
 ' =====================================================================================
 METHOD glConvolutionParameteriEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameteriEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glConvolutionParameterivEXT (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glConvolutionParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyConvolutionFilter1DEXT (GLenum target, GLenum internalformat,
 ' GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyConvolutionFilter1DEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyConvolutionFilter1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyConvolutionFilter1DEXT(dwTarget, internalformat, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyConvolutionFilter2DEXT (GLenum target, GLenum internalformat,
 ' GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyConvolutionFilter2DEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyConvolutionFilter2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyConvolutionFilter2DEXT(dwTarget, internalformat, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetConvolutionFilterEXT (GLenum target, GLenum format, GLenum type, GLvoid *image);
 ' =====================================================================================
 METHOD glGetConvolutionFilterEXT (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionFilterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionFilterEXT(dwTarget, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetConvolutionParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetConvolutionParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetConvolutionParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetConvolutionParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSeparableFilterEXT (GLenum target, GLenum format, GLenum type, GLvoid *row,
 ' GLvoid *column, GLvoid *span);
 ' =====================================================================================
 METHOD glGetSeparableFilterEXT (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pRow AS DWORD, BYVAL pColumn AS DWORD, BYVAL pSpan AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSeparableFilterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSeparableFilterEXT(dwTarget, dwFormat, dwType, pRow, pColumn, pSpan)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSeparableFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width,
 ' GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
 ' =====================================================================================
 METHOD glSeparableFilter2DEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pRow AS DWORD, BYVAL pColumn AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSeparableFilter2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSeparableFilter2DEXT(dwTarget, internalformat, nWidth, nHeight, dwFormat, dwType, pRow, pColumn)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorTableSGI (GLenum target, GLenum internalformat, GLsizei width, GLenum format,
 ' GLenum type, const GLvoid *table);
 ' =====================================================================================
 METHOD glColorTableSGI (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableSGI(dwTarget, internalformat, nWidth, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorTableParameterfvSGI (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glColorTableParameterfvSGI (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableParameterfvSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableParameterfvSGI(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorTableParameterivSGI (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glColorTableParameterivSGI (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableParameterivSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableParameterivSGI(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyColorTableSGI (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyColorTableSGI (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyColorTableSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyColorTableSGI(dwTarget, internalformat, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetColorTableSGI (GLenum target, GLenum format, GLenum type, GLvoid *table);
 ' =====================================================================================
 METHOD glGetColorTableSGI (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableSGI(dwTarget, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetColorTableParameterfvSGI (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetColorTableParameterfvSGI (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameterfvSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameterfvSGI(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetColorTableParameterivSGI (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetColorTableParameterivSGI (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameterivSGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameterivSGI(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTexGenSGIX (GLenum mode);
 ' =====================================================================================
 METHOD glPixelTexGenSGIX (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTexGenSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTexGenSGIX(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTexGenParameteriSGIS (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glPixelTexGenParameteriSGIS (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTexGenParameteriSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTexGenParameteriSGIS(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTexGenParameterivSGIS (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glPixelTexGenParameterivSGIS (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTexGenParameterivSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTexGenParameterivSGIS(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTexGenParameterfSGIS (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPixelTexGenParameterfSGIS (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTexGenParameterfSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTexGenParameterfSGIS(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTexGenParameterfvSGIS (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPixelTexGenParameterfvSGIS (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTexGenParameterfvSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTexGenParameterfvSGIS(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPixelTexGenParameterivSGIS (GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetPixelTexGenParameterivSGIS (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPixelTexGenParameterivSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPixelTexGenParameterivSGIS(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPixelTexGenParameterfvSGIS (GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetPixelTexGenParameterfvSGIS (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPixelTexGenParameterfvSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPixelTexGenParameterfvSGIS(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage4DSGIS (GLenum target, GLint level, GLenum internalformat, GLsizei width,
 ' GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexImage4DSGIS (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, nDepth AS LONG, BYVAL nSize4d AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS LONG, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage4DSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage4DSGIS(dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nSize4d, nBorder, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexSubImage4DSGIS (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 GLvoid *pixels);
 ' =====================================================================================
 METHOD glTexSubImage4DSGIS (BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL woffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nSize4d AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexSubImage4DSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexSubImage4DSGIS(dwTarget, nLevel, xoffset, yoffset, zoffset, woffset, nWidth, nHeight, nDepth, nSize4d, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glAreTexturesResidentEXT (GLsizei n, const GLuint *textures, GLboolean *residences);
 ' =====================================================================================
 METHOD glAreTexturesResidentEXT (BYVAL n AS LONG, BYREF textures AS DWORD, BYREF residences AS BYTE) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glAreTexturesResidentEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAreTexturesResidentEXT(n, textures, residences) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindTextureEXT (GLenum target, GLuint texture);
 ' =====================================================================================
 METHOD glBindTextureEXT (BYVAL dwTarget AS DWORD, BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindTextureEXT(dwTarget, dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteTexturesEXT (GLsizei n, const GLuint *textures);
 ' =====================================================================================
 METHOD glDeleteTexturesEXT (BYVAL n AS LONG, BYREF textures AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteTexturesEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteTexturesEXT(n, textures)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenTexturesEXT (GLsizei n, GLuint *textures);
 ' =====================================================================================
 METHOD glGenTexturesEXT (BYVAL n AS LONG, BYREF textures AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenTexturesEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenTexturesEXT(n, textures)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsTextureEXT (GLuint texture);
 ' =====================================================================================
 METHOD glIsTextureEXT (BYVAL dwTexture AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsTextureEXT(dwTexture) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPrioritizeTexturesEXT (GLsizei n, const GLuint *textures, const GLclampf *priorities);
 ' =====================================================================================
 METHOD glPrioritizeTexturesEXT (BYVAL n AS LONG, BYREF textures AS DWORD, BYREF priorities AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPrioritizeTexturesEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPrioritizeTexturesEXT(n, textures, priorities)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDetailTexFuncSGIS (GLenum target, GLsizei n, const GLfloat *points);
 ' =====================================================================================
 METHOD glDetailTexFuncSGIS (BYVAL dwTarget AS DWORD, BYVAL n AS LONG, BYREF pPoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDetailTexFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDetailTexFuncSGIS(dwTarget, n, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetDetailTexFuncSGIS (GLenum target, GLfloat *points);
 ' =====================================================================================
 METHOD glGetDetailTexFuncSGIS (BYVAL dwTarget AS DWORD, BYREF pPoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetDetailTexFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDetailTexFuncSGIS(dwTarget, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSharpenTexFuncSGIS (GLenum target, GLsizei n, const GLfloat *points);
 ' =====================================================================================
 METHOD glSharpenTexFuncSGIS (BYVAL dwTarget AS DWORD, BYVAL n AS LONG, BYREF pPoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSharpenTexFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSharpenTexFuncSGIS(dwTarget, n, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetSharpenTexFuncSGIS (GLenum target, GLfloat *points);
 ' =====================================================================================
 METHOD glGetSharpenTexFuncSGIS (BYVAL dwTarget AS DWORD, BYREF pPoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetSharpenTexFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetSharpenTexFuncSGIS(dwTarget, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleMaskSGIS (GLclampf value, GLboolean invert);
 ' =====================================================================================
 METHOD glSampleMaskSGIS (BYVAL value AS SINGLE, BYVAL invert AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleMaskSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleMaskSGIS(value, invert)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplePatternSGIS (GLenum pattern);
 ' =====================================================================================
 METHOD glSamplePatternSGIS (BYVAL dwpattern AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplePatternSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplePatternSGIS(dwpattern)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Render a vertex using the specified vertex array element.
 ' void glArrayElementEXT (GLint i);
 ' =====================================================================================
 METHOD glArrayElementEXT (BYVAL i AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glArrayElementEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glArrayElementEXT(i)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glColorPointerEXT (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorPointerEXT(nSize, dwType, nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a array of colors.
 ' void glDrawArraysEXT (GLenum mode, GLint first, GLsizei count);
 ' =====================================================================================
 METHOD glDrawArraysEXT (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysEXT(dwMode, nFirst, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of edge flags
 ' void glEdgeFlagPointerEXT (GLsizei stride, GLsizei count, const GLboolean *pointer);
 ' =====================================================================================
 METHOD glEdgeFlagPointerEXT (BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYREF pPointer AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEdgeFlagPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEdgeFlagPointerEXT(nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Return the address of a vertex data array.
 ' void glGetPointervEXT (GLenum pname, GLvoid* *params);
 ' =====================================================================================
 METHOD glGetPointervEXT (BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPointervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPointervEXT(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of color indexes.
 ' void glIndexPointerEXT (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glIndexPointerEXT (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexPointerEXT(dwType, nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a array of normals.
 ' void glNormalPointerEXT (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glNormalPointerEXT (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalPointerEXT(dwType, nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of texture coordinates.
 ' void glTexCoordPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glTexCoordPointerEXT (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordPointerEXT(nSize, dwType, nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define an array of vertex data.
 ' void glVertexPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexPointerEXT (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL nCount AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexPointerEXT(nSize, dwType, nStride, nCount, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Set the blend equation.
 ' void glBlendEquationEXT (GLenum mode);
 ' =====================================================================================
 METHOD glBlendEquationEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSpriteParameterfSGIX (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glSpriteParameterfSGIX (BYVAL pname AS DWORD, BYVAL params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSpriteParameterfSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSpriteParameterfSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSpriteParameterfvSGIX (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glSpriteParameterfvSGIX (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSpriteParameterfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSpriteParameterfvSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSpriteParameteriSGIX (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glSpriteParameteriSGIX (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSpriteParameteriSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSpriteParameteriSGIX(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSpriteParameterivSGIX (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glSpriteParameterivSGIX (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSpriteParameterivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSpriteParameterivSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfEXT (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPointParameterfEXT (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfEXT(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfvEXT (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPointParameterfvEXT (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfvEXT(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfSGIS (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPointParameterfSGIS (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfSGIS(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterfvSGIS (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPointParameterfvSGIS (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterfvSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterfvSGIS(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetInstrumentsSGIX (void);
 ' =====================================================================================
 METHOD glGetInstrumentsSGIX () AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetInstrumentsSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInstrumentsSGIX() TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glInstrumentsBufferSGIX (GLsizei size, GLint *buffer);
 ' =====================================================================================
 METHOD glInstrumentsBufferSGIX (BYVAL nSize AS LONG, BYREF buffer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInstrumentsBufferSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInstrumentsBufferSGIX(nSize, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glPollInstrumentsSGIX (GLint *marker_p);
 ' =====================================================================================
 METHOD glPollInstrumentsSGIX (BYREF marker_p AS LONG) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glPollInstrumentsSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPollInstrumentsSGIX(marker_p) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReadInstrumentsSGIX (GLint marker);
 ' =====================================================================================
 METHOD glReadInstrumentsSGIX (BYVAL imarker AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReadInstrumentsSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReadInstrumentsSGIX(imarker)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStartInstrumentsSGIX (void);
 ' =====================================================================================
 METHOD glStartInstrumentsSGIX
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStartInstrumentsSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStartInstrumentsSGIX
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStopInstrumentsSGIX (GLint marker);
 ' =====================================================================================
 METHOD glStopInstrumentsSGIX (BYVAL marker AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStopInstrumentsSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStopInstrumentsSGIX(marker)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFrameZoomSGIX (GLint factor);
 ' =====================================================================================
 METHOD glFrameZoomSGIX (BYVAL factor AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFrameZoomSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFrameZoomSGIX(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTagSampleBufferSGIX (void);
 ' =====================================================================================
 METHOD glTagSampleBufferSGIX
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTagSampleBufferSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTagSampleBufferSGIX
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeformationMap3dSGIX (GLenum target, GLdouble u1, GLdouble u2, GLint ustride,
 ' GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1,
 ' GLdouble w2, GLint wstride, GLint worder, const GLdouble *points);
 ' =====================================================================================
 METHOD glDeformationMap3dSGIX (BYVAL dwTarget AS DWORD, BYVAL u1 AS DOUBLE, BYVAL u2 AS DOUBLE, BYVAL ustride AS LONG, BYVAL uorder AS LONG, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE, BYVAL vstride AS LONG, BYVAL vorder AS LONG, BYVAL w1 AS DOUBLE, BYVAL w2 AS DOUBLE, BYVAL wstride AS LONG, BYVAL worder AS LONG, BYREF pPoints AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeformationMap3dSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeformationMap3dSGIX(dwTarget, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeformationMap3fSGIX (GLenum target, GLfloat u1, GLfloat u2, GLint ustride,
 ' GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1,
 ' GLfloat w2, GLint wstride, GLint worder, const GLfloat *points);
 ' =====================================================================================
 METHOD glDeformationMap3fSGIX (BYVAL dwTarget AS DWORD, BYVAL u1 AS SINGLE, BYVAL u2 AS SINGLE, BYVAL ustride AS LONG, BYVAL uorder AS LONG, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL vstride AS LONG, BYVAL vorder AS LONG, BYVAL w1 AS SINGLE, BYVAL w2 AS SINGLE, BYVAL wstride AS LONG, BYVAL worder AS LONG, BYREF fpoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeformationMap3fSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeformationMap3fSGIX(dwTarget, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, fpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeformSGIX (GLbitfield mask);
 ' =====================================================================================
 METHOD glDeformSGIX (BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeformSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeformSGIX(dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLoadIdentityDeformationMapSGIX (GLbitfield mask);
 ' =====================================================================================
 METHOD glLoadIdentityDeformationMapSGIX (BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadIdentityDeformationMapSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadIdentityDeformationMapSGIX(dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReferencePlaneSGIX (const GLdouble *equation);
 ' =====================================================================================
 METHOD glReferencePlaneSGIX (BYREF equation AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReferencePlaneSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReferencePlaneSGIX(equation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushRasterSGIX (void);
 ' =====================================================================================
 METHOD glFlushRasterSGIX
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushRasterSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushRasterSGIX
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogFuncSGIS (GLsizei n, const GLfloat *points);
 ' =====================================================================================
 METHOD glFogFuncSGIS (BYVAL n AS LONG, BYREF fpoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogFuncSGIS(n, fpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFogFuncSGIS (GLfloat *points);
 ' =====================================================================================
 METHOD glGetFogFuncSGIS (BYREF fpoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFogFuncSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFogFuncSGIS(fpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glImageTransformParameteriHP (GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glImageTransformParameteriHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glImageTransformParameteriHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glImageTransformParameteriHP(dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glImageTransformParameterfHP (GLenum target, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glImageTransformParameterfHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glImageTransformParameterfHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glImageTransformParameterfHP(dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glImageTransformParameterivHP (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glImageTransformParameterivHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glImageTransformParameterivHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glImageTransformParameterivHP(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glImageTransformParameterfvHP (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glImageTransformParameterfvHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glImageTransformParameterfvHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glImageTransformParameterfvHP(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetImageTransformParameterivHP (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetImageTransformParameterivHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetImageTransformParameterivHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetImageTransformParameterivHP(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetImageTransformParameterfvHP (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetImageTransformParameterfvHP (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetImageTransformParameterfvHP")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetImageTransformParameterfvHP(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorSubTableEXT (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
 ' =====================================================================================
 METHOD glColorSubTableEXT (BYVAL dwTarget AS DWORD, BYVAL nStart AS LONG, BYVAL nCount AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorSubTableEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorSubTableEXT(dwTarget, nStart, nCount, dwFormat, dwType, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyColorSubTableEXT (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyColorSubTableEXT (BYVAL dwTarget AS DWORD, BYVAL nStart AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyColorSubTableEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyColorSubTableEXT(dwTarget, nStart, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glHintPGI (GLenum target, GLint mode);
 ' =====================================================================================
 METHOD glHintPGI (BYVAL dwTarget AS DWORD, BYVAL nMode AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glHintPGI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glHintPGI(dwTarget, nMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Define a color lookup table.
 ' void glColorTableEXT (GLenum target, GLenum internalFormat, GLsizei width, GLenum format,
 ' GLenum type, const GLvoid *table);
 ' =====================================================================================
 METHOD glColorTableEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorTableEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorTableEXT(dwTarget, internalformat, nWidth, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get color table contents.
 ' void glGetColorTableEXT (GLenum target, GLenum format, GLenum type, GLvoid *data);
 ' =====================================================================================
 METHOD glGetColorTableEXT (BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pTable AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableEXT(dwTarget, dwFormat, dwType, pTable)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' Get palette parameters from color tables.
 ' void glGetColorTableParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetColorTableParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetColorTableParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetColorTableParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetColorTableParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetColorTableParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetListParameterfvSGIX (GLuint list, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetListParameterfvSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetListParameterfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetListParameterfvSGIX(dwList, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetListParameterivSGIX (GLuint list, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetListParameterivSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetListParameterivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetListParameterivSGIX(dwList, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glListParameterfSGIX (GLuint list, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glListParameterfSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glListParameterfSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glListParameterfSGIX(dwList, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glListParameterfvSGIX (GLuint list, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glListParameterfvSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glListParameterfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glListParameterfvSGIX(dwList, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glListParameteriSGIX (GLuint list, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glListParameteriSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glListParameteriSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glListParameteriSGIX(dwList, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glListParameterivSGIX (GLuint list, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glListParameterivSGIX (BYVAL dwList AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glListParameterivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glListParameterivSGIX(dwList, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glIndexMaterialEXT (GLenum face, GLenum mode);
 ' =====================================================================================
 METHOD glIndexMaterialEXT (BYVAL dwFace AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexMaterialEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexMaterialEXT(dwFace, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glIndexFuncEXT (GLenum func, GLclampf ref);
 ' =====================================================================================
 METHOD glIndexFuncEXT (BYVAL dwFunc AS DWORD, BYVAL ref AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexFuncEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexFuncEXT(dwFunc, ref)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLockArraysEXT (GLint first, GLsizei count);
 ' =====================================================================================
 METHOD glLockArraysEXT (BYVAL nFirst AS LONG, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLockArraysEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLockArraysEXT(nFirst, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUnlockArraysEXT (void);
 ' =====================================================================================
 METHOD glUnlockArraysEXT
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUnlockArraysEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnlockArraysEXT
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCullParameterdvEXT (GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glCullParameterdvEXT (BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCullParameterdvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCullParameterdvEXT(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCullParameterfvEXT (GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glCullParameterfvEXT (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCullParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCullParameterfvEXT(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentColorMaterialSGIX (GLenum face, GLenum mode);
 ' =====================================================================================
 METHOD glFragmentColorMaterialSGIX (BYVAL dwFace AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentColorMaterialSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentColorMaterialSGIX(dwFace, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightfSGIX (GLenum light, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glFragmentLightfSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightfSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightfSGIX(dwLight, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightfvSGIX (GLenum light, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glFragmentLightfvSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightfvSGIX(dwLight, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightiSGIX (GLenum light, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glFragmentLightiSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightiSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightiSGIX(dwLight, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightivSGIX (GLenum light, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glFragmentLightivSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightivSGIX(dwLight, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightModelfSGIX (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glFragmentLightModelfSGIX (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightModelfSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightModelfSGIX(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightModelfvSGIX (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glFragmentLightModelfvSGIX (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightModelfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightModelfvSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightModeliSGIX (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glFragmentLightModeliSGIX (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightModeliSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightModeliSGIX(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentLightModelivSGIX (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glFragmentLightModelivSGIX (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentLightModelivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentLightModelivSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentMaterialfSGIX (GLenum face, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glFragmentMaterialfSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentMaterialfSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentMaterialfSGIX(dwFace, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentMaterialfvSGIX (GLenum face, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glFragmentMaterialfvSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentMaterialfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentMaterialfvSGIX(dwFace, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentMaterialiSGIX (GLenum face, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glFragmentMaterialiSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentMaterialiSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentMaterialiSGIX(dwFace, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFragmentMaterialivSGIX (GLenum face, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glFragmentMaterialivSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFragmentMaterialivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFragmentMaterialivSGIX(dwFace, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFragmentLightfvSGIX (GLenum light, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetFragmentLightfvSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFragmentLightfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragmentLightfvSGIX(dwLight, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFragmentLightivSGIX (GLenum light, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFragmentLightivSGIX (BYVAL dwLight AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFragmentLightivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragmentLightivSGIX(dwLight, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFragmentMaterialfvSGIX (GLenum face, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetFragmentMaterialfvSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFragmentMaterialfvSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragmentMaterialfvSGIX(dwFace, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFragmentMaterialivSGIX (GLenum face, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFragmentMaterialivSGIX (BYVAL dwFace AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFragmentMaterialivSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragmentMaterialivSGIX(dwFace, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLightEnviSGIX (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glLightEnviSGIX (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLightEnviSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLightEnviSGIX(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint end, GLsizei count,
 ' GLenum type, const GLvoid *indices);
 ' =====================================================================================
 METHOD glDrawRangeElementsEXT (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawRangeElementsEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawRangeElementsEXT(dwMode, dwStart, dwEnd, nCount, dwType, indices)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glApplyTextureEXT (GLenum mode);
 ' =====================================================================================
 METHOD glApplyTextureEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glApplyTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glApplyTextureEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureLightEXT (GLenum pname);
 ' =====================================================================================
 METHOD glTextureLightEXT (BYVAL pname AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureLightEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureLightEXT(pname)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureMaterialEXT (GLenum face, GLenum mode);
 ' =====================================================================================
 METHOD glTextureMaterialEXT (BYVAL dwFace AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureMaterialEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureMaterialEXT(dwFace, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glAsyncMarkerSGIX (GLuint marker);
 ' =====================================================================================
 METHOD glAsyncMarkerSGIX (BYVAL marker AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAsyncMarkerSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAsyncMarkerSGIX(marker)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glFinishAsyncSGIX (GLuint *markerp);
 ' =====================================================================================
 METHOD glFinishAsyncSGIX (BYREF markerp AS DWORD) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glFinishAsyncSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinishAsyncSGIX(markerp) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glPollAsyncSGIX (GLuint *markerp);
 ' =====================================================================================
 METHOD glPollAsyncSGIX (BYREF markerp AS DWORD) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glPollAsyncSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPollAsyncSGIX(markerp) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGenAsyncMarkersSGIX (GLsizei range);
 ' =====================================================================================
 METHOD glGenAsyncMarkersSGIX (BYVAL nRange AS LONG) AS DWORD
 LOCAL pProc AS DWORD, dwRes AS DWORD
 pProc = wglGetProcAddress("glGenAsyncMarkersSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenAsyncMarkersSGIX(nRange) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteAsyncMarkersSGIX (GLuint marker, GLsizei range);
 ' =====================================================================================
 METHOD glDeleteAsyncMarkersSGIX (BYVAL marker AS DWORD, BYVAL nRange AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteAsyncMarkersSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteAsyncMarkersSGIX(marker, nRange)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsAsyncMarkerSGIX (GLuint marker);
 ' =====================================================================================
 METHOD glIsAsyncMarkerSGIX (BYVAL marker AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsAsyncMarkerSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsAsyncMarkerSGIX(marker) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
 ' =====================================================================================
 METHOD glVertexPointervINTEL (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexPointervINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexPointervINTEL(nSize, dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalPointervINTEL (GLenum type, const GLvoid* *pointer);
 ' =====================================================================================
 METHOD glNormalPointervINTEL (BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalPointervINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalPointervINTEL(dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
 ' =====================================================================================
 METHOD glColorPointervINTEL (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorPointervINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorPointervINTEL(nSize, dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
 ' =====================================================================================
 METHOD glTexCoordPointervINTEL (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordPointervINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordPointervINTEL(nSize, dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTransformParameteriEXT (GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glPixelTransformParameteriEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTransformParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTransformParameteriEXT(dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTransformParameterfEXT (GLenum target, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPixelTransformParameterfEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTransformParameterfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTransformParameterfEXT(dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTransformParameterivEXT (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glPixelTransformParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTransformParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTransformParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelTransformParameterfvEXT (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glPixelTransformParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTransformParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTransformParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetPixelTransformParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetPixelTransformParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPixelTransformParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPixelTransformParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetPixelTransformParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetPixelTransformParameterfvEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPixelTransformParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPixelTransformParameterfvEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3bEXT (GLbyte red, GLbyte green, GLbyte blue);
 ' =====================================================================================
 METHOD glSecondaryColor3bEXT (BYVAL red AS BYTE, BYVAL green AS BYTE, BYVAL blue AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3bEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3bEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3bvEXT (const GLbyte *v);
 ' =====================================================================================
 METHOD glSecondaryColor3bvEXT (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3bvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3bvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3dEXT (GLdouble red, GLdouble green, GLdouble blue);
 ' =====================================================================================
 METHOD glSecondaryColor3dEXT (BYVAL red AS DOUBLE, BYVAL green AS DOUBLE, BYVAL blue AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3dEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3dvEXT (const GLdouble *v);
 ' =====================================================================================
 METHOD glSecondaryColor3dvEXT (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3dvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3fEXT (GLfloat red, GLfloat green, GLfloat blue);
 ' =====================================================================================
 METHOD glSecondaryColor3fEXT (BYVAL red AS SINGLE, BYVAL green AS SINGLE, BYVAL blue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3fEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3fvEXT (const GLfloat *v);
 ' =====================================================================================
 METHOD glSecondaryColor3fvEXT (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3fvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3iEXT (GLint red, GLint green, GLint blue);
 ' =====================================================================================
 METHOD glSecondaryColor3iEXT (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3iEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3ivEXT (const GLint *v);
 ' =====================================================================================
 METHOD glSecondaryColor3ivEXT (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ivEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3sEXT (GLshort red, GLshort green, GLshort blue);
 ' =====================================================================================
 METHOD glSecondaryColor3sEXT (BYVAL red AS INTEGER, BYVAL green AS INTEGER, BYVAL blue AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3sEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3sEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3svEXT (const GLshort *v);
 ' =====================================================================================
 METHOD glSecondaryColor3svEXT (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3svEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3svEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3ubEXT (GLubyte red, GLubyte green, GLubyte blue);
 ' =====================================================================================
 METHOD glSecondaryColor3ubEXT (BYVAL red AS BYTE, BYVAL green AS BYTE, BYVAL blue AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ubEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ubEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3ubvEXT (const GLubyte *v);
 ' =====================================================================================
 METHOD glSecondaryColor3ubvEXT (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3ubvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3ubvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3uiEXT (GLuint red, GLuint green, GLuint blue);
 ' =====================================================================================
 METHOD glSecondaryColor3uiEXT (BYVAL red AS DWORD, BYVAL green AS DWORD, BYVAL blue AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3uiEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3uivEXT (const GLuint *v);
 ' =====================================================================================
 METHOD glSecondaryColor3uivEXT (BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3uivEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3usEXT (GLushort red, GLushort green, GLushort blue);
 ' =====================================================================================
 METHOD glSecondaryColor3usEXT (BYVAL red AS WORD, BYVAL green AS WORD, BYVAL blue AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3usEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3usEXT(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3usvEXT (const GLushort *v);
 ' =====================================================================================
 METHOD glSecondaryColor3usvEXT (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3usvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3usvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColorPointerEXT (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glSecondaryColorPointerEXT (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorPointerEXT(nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureNormalEXT (GLenum mode);
 ' =====================================================================================
 METHOD glTextureNormalEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureNormalEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureNormalEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawArraysEXT (GLenum mode, GLint *first, GLsizei *count, GLsizei );
 ' =====================================================================================
 METHOD glMultiDrawArraysEXT (BYVAL dwMode AS DWORD, BYREF nFirst AS LONG, BYREF nCount AS LONG, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawArraysEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawArraysEXT(dwMode, nFirst, nCount, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type,
 ' const GLvoid* *indices, GLsizei primcount);
 ' =====================================================================================
 METHOD glMultiDrawElementsEXT (BYVAL dwMode AS DWORD, BYREF nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElementsEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElementsEXT(dwMode, nCount, dwType, indices, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordfEXT (GLfloat coord);
 ' =====================================================================================
 METHOD glFogCoordfEXT (BYVAL fCoord AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordfEXT(fCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordfvEXT (const GLfloat *coord);
 ' =====================================================================================
 METHOD glFogCoordfvEXT (BYREF fCoord AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordfvEXT(fCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoorddEXT (GLdouble coord);
 ' =====================================================================================
 METHOD glFogCoorddEXT (BYVAL dCoord AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoorddEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoorddEXT(dCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoorddvEXT (const GLdouble *coord);
 ' =====================================================================================
 METHOD glFogCoorddvEXT (BYREF dCoord AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoorddvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoorddvEXT(dCoord)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glFogCoordPointerEXT (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordPointerEXT(dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3bEXT (GLbyte tx, GLbyte ty, GLbyte tz);
 ' =====================================================================================
 METHOD glTangent3bEXT (BYVAL tx AS BYTE, BYVAL ty AS BYTE, BYVAL tz AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3bEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3bEXT(tx, ty, tz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3bvEXT (const GLbyte *v);
 ' =====================================================================================
 METHOD glTangent3bvEXT (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3bvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3bvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3dEXT (GLdouble tx, GLdouble ty, GLdouble tz);
 ' =====================================================================================
 METHOD glTangent3dEXT (BYVAL tx AS DOUBLE, BYVAL ty AS DOUBLE, BYVAL tz AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3dEXT(tx, ty, tz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3dvEXT (const GLdouble *v);
 ' =====================================================================================
 METHOD glTangent3dvEXT (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3dvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3fEXT (GLfloat tx, GLfloat ty, GLfloat tz);
 ' =====================================================================================
 METHOD glTangent3fEXT (BYVAL tx AS SINGLE, BYVAL ty AS SINGLE, BYVAL tz AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3fEXT(tx, ty, tz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3fvEXT (const GLfloat *v);
 ' =====================================================================================
 METHOD glTangent3fvEXT (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3fvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3iEXT (GLint tx, GLint ty, GLint tz);
 ' =====================================================================================
 METHOD glTangent3iEXT (BYVAL tx AS LONG, BYVAL ty AS LONG, BYVAL tz AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3iEXT(tx, ty, tz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3ivEXT (const GLint *v);
 ' =====================================================================================
 METHOD glTangent3ivEXT (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3ivEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3sEXT (GLshort tx, GLshort ty, GLshort tz);
 ' =====================================================================================
 METHOD glTangent3sEXT (BYVAL tx AS INTEGER, BYVAL ty AS INTEGER, BYVAL tz AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3sEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3sEXT(tx, ty, tz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangent3svEXT (const GLshort *v);
 ' =====================================================================================
 METHOD glTangent3svEXT (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangent3svEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangent3svEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3bEXT (GLbyte bx, GLbyte by, GLbyte bz);
 ' =====================================================================================
 METHOD glBinormal3bEXT (BYVAL bx AS BYTE, BYVAL by AS BYTE, BYVAL bz AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3bEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3bEXT(bx, by, bz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3bvEXT (const GLbyte *v);
 ' =====================================================================================
 METHOD glBinormal3bvEXT (BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3bvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3bvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3dEXT (GLdouble bx, GLdouble by, GLdouble bz);
 ' =====================================================================================
 METHOD glBinormal3dEXT (BYVAL bx AS DOUBLE, BYVAL by AS DOUBLE, BYVAL bz AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3dEXT(bx, by, bz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3dvEXT (const GLdouble *v);
 ' =====================================================================================
 METHOD glBinormal3dvEXT (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3dvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3fEXT (GLfloat bx, GLfloat by, GLfloat bz);
 ' =====================================================================================
 METHOD glBinormal3fEXT (BYVAL bx AS SINGLE, BYVAL by AS SINGLE, BYVAL bz AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3fEXT(bx, by, bz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3fvEXT (const GLfloat *v);
 ' =====================================================================================
 METHOD glBinormal3fvEXT (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3fvEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3iEXT (GLint bx, GLint by, GLint bz);
 ' =====================================================================================
 METHOD glBinormal3iEXT (BYVAL bx AS LONG, BYVAL by AS LONG, BYVAL bz AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3iEXT(bx, by, bz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3ivEXT (const GLint *v);
 ' =====================================================================================
 METHOD glBinormal3ivEXT (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3ivEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3sEXT (GLshort bx, GLshort by, GLshort bz);
 ' =====================================================================================
 METHOD glBinormal3sEXT (BYVAL bx AS INTEGER, BYVAL by AS INTEGER, BYVAL bz AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3sEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3sEXT(bx, by, bz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormal3svEXT (const GLshort *v);
 ' =====================================================================================
 METHOD glBinormal3svEXT (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormal3svEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormal3svEXT(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTangentPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glTangentPointerEXT (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTangentPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTangentPointerEXT(dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBinormalPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glBinormalPointerEXT (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBinormalPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBinormalPointerEXT(dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFinishTextureSUNX (void);
 ' =====================================================================================
 METHOD glFinishTextureSUNX
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFinishTextureSUNX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinishTextureSUNX
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactorbSUN (GLbyte factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactorbSUN (BYVAL factor AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactorbSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactorbSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactorsSUN (GLshort factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactorsSUN (BYVAL factor AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactorsSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactorsSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactoriSUN (GLint factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactoriSUN (BYVAL factor AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactoriSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactoriSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactorfSUN (GLfloat factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactorfSUN (BYVAL factor AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactorfSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactorfSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactordSUN (GLdouble factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactordSUN (BYVAL factor AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactordSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactordSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactorubSUN (GLubyte factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactorubSUN (BYVAL factor AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactorubSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactorubSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactorusSUN (GLushort factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactorusSUN (BYVAL factor AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactorusSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactorubSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGlobalAlphaFactoruiSUN (GLuint factor);
 ' =====================================================================================
 METHOD glGlobalAlphaFactoruiSUN (BYVAL factor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGlobalAlphaFactoruiSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGlobalAlphaFactoruiSUN(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiSUN (GLuint code);
 ' =====================================================================================
 METHOD glReplacementCodeuiSUN (BYVAL dwCode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiSUN(dwCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeusSUN (GLushort code);
 ' =====================================================================================
 METHOD glReplacementCodeusSUN (BYVAL wCode AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeusSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeusSUN(wCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeubSUN (GLubyte code);
 ' =====================================================================================
 METHOD glReplacementCodeubSUN (BYVAL bCode AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeubSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeubSUN(bCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuivSUN (const GLuint *code);
 ' =====================================================================================
 METHOD glReplacementCodeuivSUN (BYREF dwCode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuivSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuivSUN(dwCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeusvSUN (const GLushort *code);
 ' =====================================================================================
 METHOD glReplacementCodeusvSUN (BYREF wCode AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeusvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeusvSUN(wCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeubvSUN (const GLubyte *code);
 ' =====================================================================================
 METHOD glReplacementCodeubvSUN (BYREF bCode AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeubvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeubvSUN(bCode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodePointerSUN (GLenum type, GLsizei stride, const GLvoid* *pointer);
 ' =====================================================================================
 METHOD glReplacementCodePointerSUN (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodePointerSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodePointerSUN(dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4ubVertex2fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glColor4ubVertex2fSUN (BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE, BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4ubVertex2fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4ubVertex2fSUN(r, g, b, a, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4ubVertex2fvSUN (const GLubyte *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glColor4ubVertex2fvSUN (BYREF c AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4ubVertex2fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4ubVertex2fvSUN(c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4ubVertex3fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glColor4ubVertex3fSUN (BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4ubVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4ubVertex3fSUN(r, g, b, a, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glColor4ubVertex3fvSUN (const GLubyte *, const GLfloat *);
 ' typedef void (APIENTRYP PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glColor4ubVertex3fvSUN (BYREF c AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4ubVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4ubVertex3fvSUN(c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glColor3fVertex3fSUN (BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3fVertex3fSUN(r, g, b, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor3fVertex3fvSUN (const GLfloat *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glColor3fVertex3fvSUN (BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3fVertex3fvSUN(c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormal3fVertex3fSUN (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glNormal3fVertex3fSUN (BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3fVertex3fSUN(nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormal3fVertex3fvSUN (const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glNormal3fVertex3fvSUN (BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3fVertex3fvSUN(c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4fNormal3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat a,
 ' GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glColor4fNormal3fVertex3fSUN (BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL a AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4fNormal3fVertex3fSUN(r, g, b, a, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4fNormal3fVertex3fvSUN (const GLfloat *c, const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glColor4fNormal3fVertex3fvSUN (BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4fNormal3fVertex3fvSUN(c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fVertex3fSUN (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glTexCoord2fVertex3fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fVertex3fSUN(s, t, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fVertex3fvSUN (const GLfloat *tc, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord2fVertex3fvSUN (BYREF tc AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fVertex3fvSUN(tc, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x,
 ' GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glTexCoord4fVertex4fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL p AS SINGLE, BYVAL q AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4fVertex4fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4fVertex4fSUN(s, t, p, q, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4fVertex4fvSUN (const GLfloat *tc, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord4fVertex4fvSUN (BYREF tc AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4fVertex4fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4fVertex4fvSUN(tc, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor4ubVertex3fSUN (GLfloat s, GLfloat t, GLubyte r, GLubyte g,
 ' GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glTexCoord2fColor4ubVertex3fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor4ubVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor4ubVertex3fSUN(s, t, r, g, b, a, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor4ubVertex3fvSUN (const GLfloat *tc, const GLubyte *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord2fColor4ubVertex3fvSUN (BYREF tc AS SINGLE, BYREF c AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor4ubVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor4ubVertex3fvSUN(tc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g,
 ' GLfloat b, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glTexCoord2fColor3fVertex3fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL p AS SINGLE, BYVAL q AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor3fVertex3fSUN(s, t, p, q, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor3fVertex3fvSUN (const GLfloat *tc, const GLfloat *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord2fColor3fVertex3fvSUN (BYREF tc AS SINGLE, BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor3fVertex3fvSUN(tc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny,
 ' GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glTexCoord2fNormal3fVertex3fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fNormal3fVertex3fSUN(s, t, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fNormal3fVertex3fvSUN (const GLfloat *tc, const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord2fNormal3fVertex3fvSUN (BYREF tc AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fNormal3fVertex3fvSUN(tc, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor4fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g,
 ' GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glTexCoord2fColor4fNormal3fVertex3fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL a AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor4fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor4fNormal3fVertex3fSUN(s, t, r, g, b, a, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2fColor4fNormal3fVertex3fvSUN (const GLfloat *tc, const GLfloat *c,
 ' const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord2fColor4fNormal3fVertex3fvSUN (BYREF tc AS SINGLE, BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2fColor4fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2fColor4fNormal3fVertex3fvSUN(tc, c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4fColor4fNormal3fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q,
 ' GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz,
 ' GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glTexCoord4fColor4fNormal3fVertex4fSUN (BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL p AS SINGLE, BYVAL q AS SINGLE, BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL a AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4fColor4fNormal3fVertex4fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4fColor4fNormal3fVertex4fSUN(s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4fColor4fNormal3fVertex4fvSUN (const GLfloat *tc, const GLfloat *c,
 ' const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glTexCoord4fColor4fNormal3fVertex4fvSUN (BYREF tc AS SINGLE, BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4fColor4fNormal3fVertex4fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4fColor4fNormal3fVertex4fvSUN(tc, c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiVertex3fSUN (GLuint rc, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiVertex3fSUN (BYVAL rc AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiVertex3fSUN(rc, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiVertex3fvSUN (const GLuint *rc, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiVertex3fvSUN (BYREF rc AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiVertex3fvSUN(rc, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor4ubVertex3fSUN (GLuint rc, GLubyte r, GLubyte g, GLubyte b,
 ' GLubyte a, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor4ubVertex3fSUN (BYVAL rc AS DWORD, BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor4ubVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor4ubVertex3fSUN(rc, r, g, b, a, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor4ubVertex3fvSUN (const GLuint *rc, const GLubyte *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor4ubVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor4ubVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor4ubVertex3fvSUN(rc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g, GLfloat b,
 ' GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor3fVertex3fSUN (BYVAL rc AS DWORD, BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor3fVertex3fSUN(rc, r, g, b, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor3fVertex3fvSUN (const GLuint *rc, const GLfloat *c, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor3fVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor3fVertex3fvSUN(rc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiNormal3fVertex3fSUN (GLuint rc, GLfloat nx, GLfloat ny,
 ' GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiNormal3fVertex3fSUN (BYVAL rc AS DWORD, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiNormal3fVertex3fSUN(rc, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiNormal3fVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiNormal3fVertex3fvSUN(rc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g,
 ' GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor4fNormal3fVertex3fSUN (BYVAL rc AS DWORD, BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL a AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor4fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor4fNormal3fVertex3fSUN(rc, r, g, b, a, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiColor4fNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *c,
 ' const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiColor4fNormal3fVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiColor4fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiColor4fNormal3fVertex3fvSUN(rc, c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t,
 ' GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fVertex3fSUN (BYVAL rc AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fVertex3fSUN(rc, s, t, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fVertex3fvSUN (const GLuint *rc, const GLfloat *tc, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fVertex3fvSUN(rc, c, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t,
 ' GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (BYVAL rc AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(rc, s, t, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (const GLuint *rc,
 ' const GLfloat *tc, const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (BYREF rc AS DWORD, BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(rc, c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat s,
 ' GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny,
 ' GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (BYVAL rc AS DWORD, BYVAL s AS SINGLE, BYVAL t AS SINGLE, BYVAL r AS SINGLE, BYVAL g AS SINGLE, BYVAL b AS SINGLE, BYVAL a AS SINGLE, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(rc, s, t, r, g, b, a, nx, ny, nz, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (const GLuint *rc,
 ' const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
 ' =====================================================================================
 METHOD glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (BYREF rc AS DWORD, BYREF tc AS SINGLE, BYREF c AS SINGLE, BYREF n AS SINGLE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(rc, tc, c, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncSeparateEXT (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparateEXT (BYVAL sfactorRGB AS DWORD, BYVAL dfactorRGB AS DWORD, BYVAL sfactorAlpha AS DWORD, BYVAL dfactorAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparateEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparateEXT(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncSeparateINGR (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparateINGR (BYVAL sfactorRGB AS DWORD, BYVAL dfactorRGB AS DWORD, BYVAL sfactorAlpha AS DWORD, BYVAL dfactorAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparateINGR")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparateINGR(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexWeightfEXT (GLfloat weight);
 ' =====================================================================================
 METHOD glVertexWeightfEXT (BYVAL weight AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexWeightfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexWeightfEXT(weight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexWeightfvEXT (const GLfloat *weight);
 ' =====================================================================================
 METHOD glVertexWeightfvEXT (BYREF weight AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexWeightfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexWeightfvEXT(weight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexWeightPointerEXT (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexWeightPointerEXT (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexWeightPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexWeightPointerEXT(nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushVertexArrayRangeNV (void);
 ' =====================================================================================
 METHOD glFlushVertexArrayRangeNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushVertexArrayRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushVertexArrayRangeNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexArrayRangeNV (GLsizei length, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexArrayRangeNV (BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayRangeNV(nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerParameterfvNV (GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glCombinerParameterfvNV (BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerParameterfvNV(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerParameterfNV (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glCombinerParameterfNV (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerParameterfNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerParameterfNV(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerParameterivNV (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glCombinerParameterivNV (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerParameterivNV(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerParameteriNV (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glCombinerParameteriNV (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerParameteriNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerParameteriNV(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerInputNV (GLenum stage, GLenum portion, GLenum variable, GLenum input,
 ' GLenum mapping, GLenum componentUsage);
 ' =====================================================================================
 METHOD glCombinerInputNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL dwVariable AS DWORD, BYVAL dwInput AS DWORD, BYVAL dwMapping AS DWORD, BYVAL dwComponentUsage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerInputNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerInputNV(dwStage, dwPortion, dwVariable, dwInput, dwMapping, dwComponentUsage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerOutputNV (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput,
 ' GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct,
 ' GLboolean cdDotProduct, GLboolean muxSum);
 ' =====================================================================================
 METHOD glCombinerOutputNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL abOutput AS DWORD, BYVAL cdOutput AS DWORD, BYVAL sumOutput AS DWORD, BYVAL dwScale AS DWORD, BYVAL dwBias AS DWORD, BYVAL abDotProduct AS BYTE, BYVAL cdDotProduct AS BYTE, BYVAL muxSum AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerOutputNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerOutputNV(dwStage, dwPortion, abOutput, cdOutput, sumOutput, dwScale, dwBias, abDotProduct, cdDotProduct, muxSum)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFinalCombinerInputNV (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
 ' =====================================================================================
 METHOD glFinalCombinerInputNV (BYVAL dwVariable AS DWORD, BYVAL dwInput AS DWORD, BYVAL dwMapping AS DWORD, BYVAL dwComponentUsage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFinalCombinerInputNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinalCombinerInputNV(dwVariable, dwInput, dwMapping, dwComponentUsage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCombinerInputParameterfvNV (GLenum stage, GLenum portion, GLenum variable,
 ' GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetCombinerInputParameterfvNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL dwVariable AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCombinerInputParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCombinerInputParameterfvNV(dwStage, dwPortion, dwVariable, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCombinerInputParameterivNV (GLenum stage, GLenum portion, GLenum variable,
 ' GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetCombinerInputParameterivNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL dwVariable AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCombinerInputParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCombinerInputParameterivNV(dwStage, dwPortion, dwVariable, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCombinerOutputParameterfvNV (GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetCombinerOutputParameterfvNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCombinerOutputParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCombinerOutputParameterfvNV(dwStage, dwPortion, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCombinerOutputParameterivNV (GLenum stage, GLenum portion, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetCombinerOutputParameterivNV (BYVAL dwStage AS DWORD, BYVAL dwPortion AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCombinerOutputParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCombinerOutputParameterivNV(dwstage, dwportion, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFinalCombinerInputParameterfvNV (GLenum variable, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetFinalCombinerInputParameterfvNV (BYVAL dwStage AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFinalCombinerInputParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFinalCombinerInputParameterfvNV(dwStage, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFinalCombinerInputParameterivNV (GLenum variable, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFinalCombinerInputParameterivNV (BYVAL dwStage AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFinalCombinerInputParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFinalCombinerInputParameterivNV(dwStage, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glResizeBuffersMESA (void);
 ' typedef void (APIENTRYP PFNGLRESIZEBUFFERSMESAPROC) (void);
 ' =====================================================================================
 METHOD glResizeBuffersMESA
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResizeBuffersMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResizeBuffersMESA
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2dMESA (GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glWindowPos2dMESA (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2dMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2dMESA(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2dvMESA (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos2dvMESA (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2dvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2dvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glWindowPos2fMESA (GLfloat, GLfloat);
 ' typedef void (APIENTRYP PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glWindowPos2fMESA (BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2fMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2fMESA(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glWindowPos2fvMESA (const GLfloat *);
 ' typedef void (APIENTRYP PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos2fvMESA (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2fvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2fvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2iMESA (GLint x, GLint y);
 ' =====================================================================================
 METHOD glWindowPos2iMESA (BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2iMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2iMESA(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2ivMESA (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos2ivMESA (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2ivMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2ivMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2sMESA (GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glWindowPos2sMESA (BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2sMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2sMESA(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos2svMESA (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos2svMESA (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos2svMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos2svMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3dMESA (GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glWindowPos3dMESA (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3dMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3dMESA(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3dvMESA (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos3dvMESA (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3dvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3dvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3fMESA (GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glWindowPos3fMESA (BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3fMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3fMESA(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3fvMESA (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos3fvMESA (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3fvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3fvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3iMESA (GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glWindowPos3iMESA (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3iMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3iMESA(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3ivMESA (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos3ivMESA (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3ivMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3ivMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3sMESA (GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glWindowPos3sMESA (BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3sMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3sMESA(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos3svMESA (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos3svMESA (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos3svMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos3svMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4dMESA (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glWindowPos4dMESA (BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4dMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4dMESA(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4dvMESA (const GLdouble *v);
 ' =====================================================================================
 METHOD glWindowPos4dvMESA (BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4dvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4dvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4fMESA (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glWindowPos4fMESA (BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4fMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4fMESA(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4fvMESA (const GLfloat *v);
 ' =====================================================================================
 METHOD glWindowPos4fvMESA (BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4fvMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4fvMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4iMESA (GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glWindowPos4iMESA (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4iMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4iMESA(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4ivMESA (const GLint *v);
 ' =====================================================================================
 METHOD glWindowPos4ivMESA (BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4ivMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4ivMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4sMESA (GLshort x, GLshort y, GLshort z, GLshort w);
 ' =====================================================================================
 METHOD glWindowPos4sMESA (BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER, BYVAL w AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4sMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4sMESA(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWindowPos4svMESA (const GLshort *v);
 ' =====================================================================================
 METHOD glWindowPos4svMESA (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWindowPos4svMESA")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWindowPos4svMESA(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiModeDrawArraysIBM (const GLenum *mode, const GLint *first,
 ' const GLsizei *count, GLsizei primcount, GLint modestride);
 ' =====================================================================================
 METHOD glMultiModeDrawArraysIBM (BYREF dwMode AS DWORD, BYREF nFirst AS LONG, BYREF nCount AS LONG, BYVAL primcount AS LONG, BYVAL modestride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiModeDrawArraysIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiModeDrawArraysIBM(dwMode, nFirst, nCount, primcount, modestride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiModeDrawElementsIBM (const GLenum *mode, const GLsizei *count, GLenum type,
 ' const GLvoid* const *indices, GLsizei primcount, GLint modestride);
 ' =====================================================================================
 METHOD glMultiModeDrawElementsIBM (BYREF dwMode AS DWORD, BYREF nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL primcount AS LONG, BYVAL modestride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiModeDrawElementsIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiModeDrawElementsIBM(dwMode, nCount, dwType, indices, primcount, modestride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorPointerListIBM (GLint size, GLenum type, GLint stride,
 ' const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glColorPointerListIBM (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorPointerListIBM(nSize, dwType, nStride, ppointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColorPointerListIBM (GLint size, GLenum type, GLint stride,
 ' const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glSecondaryColorPointerListIBM (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorPointerListIBM(nSize, dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEdgeFlagPointerListIBM (GLint stride, const GLboolean* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glEdgeFlagPointerListIBM (BYVAL nStride AS LONG, BYREF pPointer AS BYTE, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEdgeFlagPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEdgeFlagPointerListIBM(nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glFogCoordPointerListIBM (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordPointerListIBM(dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glIndexPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glIndexPointerListIBM (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexPointerListIBM(dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glNormalPointerListIBM (BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalPointerListIBM(dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordPointerListIBM (GLint size, GLenum type, GLint stride,
 ' const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glTexCoordPointerListIBM (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordPointerListIBM(nSize, dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
 ' =====================================================================================
 METHOD glVertexPointerListIBM (BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD, BYVAL ptrstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexPointerListIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexPointerListIBM(nSize, dwType, nStride, pPointer, ptrstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTbufferMask3DFX (GLuint mask);
 ' =====================================================================================
 METHOD glTbufferMask3DFX (BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTbufferMask3DFX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTbufferMask3DFX(dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleMaskEXT (GLclampf value, GLboolean invert);
 ' =====================================================================================
 METHOD glSampleMaskEXT (BYVAL value AS SINGLE, BYVAL invert AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleMaskEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleMaskEXT(value, invert)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSamplePatternEXT (GLenum pattern);
 ' =====================================================================================
 METHOD glSamplePatternEXT (BYVAL pattern AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSamplePatternEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSamplePatternEXT(pattern)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureColorMaskSGIS (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
 ' =====================================================================================
 METHOD glTextureColorMaskSGIS (BYVAL red AS BYTE, BYVAL green AS BYTE, BYVAL blue AS BYTE, BYVAL alpha AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureColorMaskSGIS")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureColorMaskSGIS(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glIglooInterfaceSGIX (GLenum pname, const GLvoid *params);
 ' =====================================================================================
 METHOD glIglooInterfaceSGIX (BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIglooInterfaceSGIX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIglooInterfaceSGIX(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteFencesNV (GLsizei n, const GLuint *fences);
 ' =====================================================================================
 METHOD glDeleteFencesNV (BYVAL n AS LONG, BYREF fences AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteFencesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteFencesNV(n, fences)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glGenFencesNV (GLsizei, GLuint *);
 ' typedef void (APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
 ' =====================================================================================
 METHOD glGenFencesNV (BYVAL n AS LONG, BYREF fences AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenFencesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenFencesNV(n, fences)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsFenceNV (GLuint fence);
 ' =====================================================================================
 METHOD glIsFenceNV (BYVAL fence AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsFenceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsFenceNV(fence) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glTestFenceNV (GLuint fence);
 ' =====================================================================================
 METHOD glTestFenceNV (BYVAL fence AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glTestFenceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTestFenceNV(fence) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFenceivNV (BYVAL fence AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFenceivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFenceivNV(fence, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFinishFenceNV (GLuint fence);
 ' =====================================================================================
 METHOD glFinishFenceNV (BYVAL fence AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFinishFenceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinishFenceNV(fence)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetFenceNV (GLuint fence, GLenum condition);
 ' =====================================================================================
 METHOD glSetFenceNV (BYVAL fence AS DWORD, BYVAL dwcondition AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetFenceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetFenceNV(fence, dwcondition)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFlushStaticDataIBM (GLenum target);
 ' =====================================================================================
 METHOD glFlushStaticDataIBM (BYVAL dwtarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushStaticDataIBM")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushStaticDataIBM(dwtarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride,
 ' GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points);
 ' =====================================================================================
 METHOD glMapControlPointsNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL ustride AS LONG, BYVAL vstride AS LONG, BYVAL uorder AS LONG, BYVAL vorder AS LONG, BYVAL bPacked AS BYTE, BYVAL pPoints AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapControlPointsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapControlPointsNV(dwTarget, dwIndex, dwType, ustride, vstride, uorder, vorder, bPacked, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapParameterivNV (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glMapParameterivNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapParameterivNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapParameterfvNV (GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glMapParameterfvNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapParameterfvNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride,
 ' GLsizei vstride, GLboolean packed, GLvoid *points);
 ' =====================================================================================
 METHOD glGetMapControlPointsNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL dwType AS DWORD, BYVAL ustride AS LONG, BYVAL vstride AS LONG, BYVAL bPacked AS BYTE, BYVAL pPoints AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapControlPointsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapControlPointsNV(dwTarget, dwIndex, dwType, ustride, vstride, bPacked, pPoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMapParameterivNV (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMapParameterivNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapParameterivNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMapParameterfvNV (GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMapParameterfvNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapParameterfvNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMapAttribParameterivNV (GLenum target, GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMapAttribParameterivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapAttribParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapAttribParameterivNV(dwTarget, dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMapAttribParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMapAttribParameterfvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapAttribParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapAttribParameterfvNV(dwTarget, dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glEvalMapsNV (GLenum, GLenum);
 ' typedef void (APIENTRYP PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode);
 ' =====================================================================================
 METHOD glEvalMapsNV (BYVAL dwTarget AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEvalMapsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEvalMapsNV(dwTarget, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCombinerStageParameterfvNV (GLenum stage, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glCombinerStageParameterfvNV (BYVAL dwStage AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCombinerStageParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCombinerStageParameterfvNV(dwStage, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCombinerStageParameterfvNV (GLenum stage, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetCombinerStageParameterfvNV (BYVAL dwStage AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCombinerStageParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCombinerStageParameterfvNV(dwStage, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glAreProgramsResidentNV (GLsizei n, const GLuint *programs, GLboolean *residences);
 ' =====================================================================================
 METHOD glAreProgramsResidentNV (BYVAL n AS LONG, BYREF programs AS DWORD, BYREF residences AS BYTE) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glAreProgramsResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAreProgramsResidentNV(n, programs, residences) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindProgramNV (GLenum target, GLuint id);
 ' =====================================================================================
 METHOD glBindProgramNV (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindProgramNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindProgramNV(dwTarget, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteProgramsNV (GLsizei n, const GLuint *programs);
 ' =====================================================================================
 METHOD glDeleteProgramsNV (BYVAL n AS LONG, BYREF programs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteProgramsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteProgramsNV(n, programs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glExecuteProgramNV (GLenum target, GLuint id, const GLfloat *params);
 ' =====================================================================================
 METHOD glExecuteProgramNV (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glExecuteProgramNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glExecuteProgramNV(dwTarget, dwId, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenProgramsNV (GLsizei n, GLuint *programs);
 ' =====================================================================================
 METHOD glGenProgramsNV (BYVAL n AS LONG, BYREF programs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenProgramsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenProgramsNV(n, programs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramParameterdvNV (GLenum target, GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetProgramParameterdvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramParameterdvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramParameterdvNV(dwTarget, dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetProgramParameterfvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramParameterfvNV(dwTarget, dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramivNV (GLuint id, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramivNV (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramivNV(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramStringNV (GLuint id, GLenum pname, GLubyte *program);
 ' =====================================================================================
 METHOD glGetProgramStringNV (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF program AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramStringNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramStringNV(dwId, pname, program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTrackMatrixivNV (GLenum target, GLuint address, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTrackMatrixivNV (BYVAL dwTarget AS DWORD, BYVAL dwAddress AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTrackMatrixivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTrackMatrixivNV(dwTarget, dwAddress, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribdvNV (GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVertexAttribdvNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribdvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribdvNV(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribfvNV (GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVertexAttribfvNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribfvNV(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribivNV (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribivNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribivNV(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribPointervNV (GLuint index, GLenum pname, GLvoid* *pointer);
 ' =====================================================================================
 METHOD glGetVertexAttribPointervNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribPointervNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribPointervNV(dwIndex, pname, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsProgramNV (GLuint id);
 ' =====================================================================================
 METHOD glIsProgramNV (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsProgramNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsProgramNV(dwId) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glLoadProgramNV (GLenum target, GLuint id, GLsizei len, const GLubyte *program);
 ' =====================================================================================
 METHOD glLoadProgramNV (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF program AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadProgramNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadProgramNV(dwTarget, dwId, nLen, program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameter4fNV (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glProgramParameter4fNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameter4fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameter4fNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameter4fvNV (GLenum target, GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glProgramParameter4fvNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameter4fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameter4fvNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameter4dNV (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glProgramParameter4dNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameter4dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameter4dNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameter4dvNV (GLenum target, GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glProgramParameter4dvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameter4dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameter4dvNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameters4dvNV (GLenum target, GLuint index, GLuint count, const GLdouble *v);
 ' =====================================================================================
 METHOD glProgramParameters4dvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL dwCount AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameters4dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameters4dvNV(dwTarget, dwIndex, dwCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameters4fvNV (GLenum target, GLuint index, GLuint count, const GLfloat *v);
 ' =====================================================================================
 METHOD glProgramParameters4fvNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL dwCount AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameters4fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameters4fvNV(dwTarget, dwIndex, dwCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRequestResidentProgramsNV (GLsizei n, const GLuint *programs);
 ' =====================================================================================
 METHOD glRequestResidentProgramsNV (BYVAL n AS LONG, BYREF programs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRequestResidentProgramsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRequestResidentProgramsNV(n, programs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTrackMatrixNV (GLenum target, GLuint address, GLenum matrix, GLenum transform);
 ' =====================================================================================
 METHOD glTrackMatrixNV (BYVAL dwTarget AS DWORD, BYVAL dwAddress AS DWORD, BYVAL dwMatrix AS DWORD, BYVAL dwTransform AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTrackMatrixNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTrackMatrixNV(dwTarget, dwAddress, dwMatrix, dwTransform)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribPointerNV (GLuint index, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribPointerNV (BYVAL dwIndex AS DWORD, BYVAL fsize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribPointerNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribPointerNV(dwIndex, fsize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1dNV (GLuint index, GLdouble x);
 ' =====================================================================================
 METHOD glVertexAttrib1dNV (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1dNV(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1dvNV (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib1dvNV (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1dvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1fNV (GLuint index, GLfloat x);
 ' =====================================================================================
 METHOD glVertexAttrib1fNV (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1fNV(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1fvNV (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib1fvNV (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1fvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1sNV (GLuint index, GLshort x);
 ' =====================================================================================
 METHOD glVertexAttrib1sNV (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1sNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1sNV(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1svNV (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib1svNV (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1svNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2dNV (GLuint index, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexAttrib2dNV (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2dNV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2dvNV (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib2dvNV (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2dvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2fNV (GLuint index, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glVertexAttrib2fNV (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2fNV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2fvNV (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib2fvNV (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2fvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2sNV (GLuint index, GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glVertexAttrib2sNV (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2sNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2sNV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2svNV (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib2svNV (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2svNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexAttrib3dNV (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3dNV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3dvNV (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib3dvNV (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3dvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glVertexAttrib3fNV (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3fNV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3fvNV (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib3fvNV (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3fvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3sNV (GLuint index, GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glVertexAttrib3sNV (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3sNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3sNV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3svNV (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib3svNV (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3svNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexAttrib4dNV (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4dNV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4dvNV (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttrib4dvNV (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4dvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glVertexAttrib4fNV (BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4fNV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4fvNV (GLuint index, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttrib4fvNV (BYVAL dwIndex AS DWORD, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4fvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4sNV (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
 ' =====================================================================================
 METHOD glVertexAttrib4sNV (BYVAL dwIndex AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER, BYVAL w AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4sNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4sNV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4svNV (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttrib4svNV (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4svNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4ubNV (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
 ' =====================================================================================
 METHOD glVertexAttrib4ubNV (BYVAL dwIndex AS DWORD, BYVAL x AS BYTE, BYVAL y AS BYTE, BYVAL z AS BYTE, BYVAL w AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4ubNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4ubNV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4ubvNV (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttrib4ubvNV (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4ubvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4ubvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs1dvNV (GLuint index, GLsizei count, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribs1dvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs1dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs1dvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs1fvNV (GLuint index, GLsizei count, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttribs1fvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs1fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs1fvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs1svNV (GLuint index, GLsizei count, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribs1svNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs1svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs1svNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs2dvNV (GLuint index, GLsizei count, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribs2dvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs2dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs2dvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs2fvNV (GLuint index, GLsizei count, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttribs2fvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs2fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs2fvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs2svNV (GLuint index, GLsizei count, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribs2svNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs2svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs2svNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs3dvNV (GLuint index, GLsizei count, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribs3dvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs3dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs3dvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs3fvNV (GLuint index, GLsizei count, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttribs3fvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs3fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs3fvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs3svNV (GLuint index, GLsizei count, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribs3svNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs3svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs3svNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs4dvNV (GLuint index, GLsizei count, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribs4dvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs4dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs4dvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs4fvNV (GLuint index, GLsizei count, const GLfloat *v);
 ' =====================================================================================
 METHOD glVertexAttribs4fvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs4fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs4fvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs4svNV (GLuint index, GLsizei count, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribs4svNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs4svNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs4svNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs4ubvNV (GLuint index, GLsizei count, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttribs4ubvNV (BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs4ubvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs4ubvNV(dwIndex, nCount, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexBumpParameterivATI (GLenum pname, const GLint *param);
 ' =====================================================================================
 METHOD glTexBumpParameterivATI (BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBumpParameterivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBumpParameterivATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexBumpParameterfvATI (GLenum pname, const GLfloat *param);
 ' =====================================================================================
 METHOD glTexBumpParameterfvATI (BYVAL pname AS DWORD, BYREF param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBumpParameterfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBumpParameterfvATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexBumpParameterivATI (GLenum pname, GLint *param);
 ' =====================================================================================
 METHOD glGetTexBumpParameterivATI (BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexBumpParameterivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexBumpParameterivATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexBumpParameterfvATI (GLenum pname, GLfloat *param);
 ' =====================================================================================
 METHOD glGetTexBumpParameterfvATI (BYVAL pname AS DWORD, BYREF param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexBumpParameterfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexBumpParameterfvATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGenFragmentShadersATI (GLuint range);
 ' =====================================================================================
 METHOD glGenFragmentShadersATI (BYVAL dwRange AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGenFragmentShadersATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenFragmentShadersATI(dwRange) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFragmentShaderATI (GLuint id);
 ' =====================================================================================
 METHOD glBindFragmentShaderATI (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFragmentShaderATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFragmentShaderATI(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteFragmentShaderATI (GLuint id);
 ' =====================================================================================
 METHOD glDeleteFragmentShaderATI (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteFragmentShaderATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteFragmentShaderATI(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glBeginFragmentShaderATI (void);
 ' typedef void (APIENTRYP PFNGLBEGINFRAGMENTSHADERATIPROC) (void);
 ' =====================================================================================
 METHOD glBeginFragmentShaderATI
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginFragmentShaderATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginFragmentShaderATI
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndFragmentShaderATI (void);
 ' =====================================================================================
 METHOD glEndFragmentShaderATI
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndFragmentShaderATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndFragmentShaderATI
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPassTexCoordATI (GLuint dst, GLuint coord, GLenum swizzle);
 ' =====================================================================================
 METHOD glPassTexCoordATI (BYVAL dst AS DWORD, BYVAL dwCoord AS DWORD, BYVAL swizzle AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPassTexCoordATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPassTexCoordATI(dst, dwCoord, swizzle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleMapATI (GLuint dst, GLuint interp, GLenum swizzle);
 ' =====================================================================================
 METHOD glSampleMapATI (BYVAL dst AS DWORD, BYVAL interp AS DWORD, BYVAL swizzle AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleMapATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleMapATI(dst, interp, swizzle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod,
 ' GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
 ' =====================================================================================
 METHOD glColorFragmentOp1ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMask AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorFragmentOp1ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorFragmentOp1ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod,
 ' GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
 ' =====================================================================================
 METHOD glColorFragmentOp2ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMask AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD, BYVAL arg2 AS DWORD, BYVAL arg2Rep AS DWORD, BYVAL arg2Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorFragmentOp2ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorFragmentOp2ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorFragmentOp3ATI (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);
 ' =====================================================================================
 METHOD glColorFragmentOp3ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMask AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD, BYVAL arg2 AS DWORD, BYVAL arg2Rep AS DWORD, BYVAL arg2Mod AS DWORD, BYVAL arg3 AS DWORD, BYVAL arg3Rep AS DWORD, BYVAL arg3Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorFragmentOp3ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorFragmentOp3ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glAlphaFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
 ' GLuint arg1Rep, GLuint arg1Mod);
 ' =====================================================================================
 METHOD glAlphaFragmentOp1ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAlphaFragmentOp1ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAlphaFragmentOp1ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glAlphaFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
 ' GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
 ' =====================================================================================
 METHOD glAlphaFragmentOp2ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD, BYVAL arg2 AS DWORD, BYVAL arg2Rep AS DWORD, BYVAL arg2Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAlphaFragmentOp2ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAlphaFragmentOp2ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glAlphaFragmentOp3ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
 ' GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod,
 ' GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
 ' =====================================================================================
 METHOD glAlphaFragmentOp3ATI (BYVAL op AS DWORD, BYVAL dst AS DWORD, BYVAL dstMod AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg1Rep AS DWORD, BYVAL arg1Mod AS DWORD, BYVAL arg2 AS DWORD, BYVAL arg2Rep AS DWORD, BYVAL arg2Mod AS DWORD, BYVAL arg3 AS DWORD, BYVAL arg3Rep AS DWORD, BYVAL arg3Mod AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAlphaFragmentOp3ATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAlphaFragmentOp3ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetFragmentShaderConstantATI (GLuint dst, const GLfloat *value);
 ' =====================================================================================
 METHOD glSetFragmentShaderConstantATI (BYVAL dst AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetFragmentShaderConstantATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetFragmentShaderConstantATI(dst, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPNTrianglesiATI (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glPNTrianglesiATI (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPNTrianglesiATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPNTrianglesiATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPNTrianglesfATI (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glPNTrianglesfATI (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPNTrianglesfATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPNTrianglesfATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glNewObjectBufferATI (GLsizei size, const GLvoid *pointer, GLenum usage);
 ' =====================================================================================
 METHOD glNewObjectBufferATI (BYVAL nSize AS LONG, BYVAL pPointer AS DWORD, BYVAL dwUsage AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glNewObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNewObjectBufferATI(nSize, pPointer, dwUsage) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsObjectBufferATI (GLuint buffer);
 ' =====================================================================================
 METHOD glIsObjectBufferATI (BYVAL buffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsObjectBufferATI(buffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUpdateObjectBufferATI (GLuint buffer, GLuint offset, GLsizei size,
 ' const GLvoid *pointer, GLenum preserve);
 ' =====================================================================================
 METHOD glUpdateObjectBufferATI (BYVAL dwBuffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL nSize AS LONG, BYVAL pPointer AS DWORD, BYVAL dwPreserve AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUpdateObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUpdateObjectBufferATI(dwbuffer, dwOffset, nSize, pPointer, dwPreserve)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetObjectBufferfvATI (GLuint buffer, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetObjectBufferfvATI (BYVAL dwBuffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectBufferfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectBufferfvATI(dwBuffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetObjectBufferivATI (GLuint buffer, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetObjectBufferivATI (BYVAL dwBuffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectBufferivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectBufferivATI(dwBuffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFreeObjectBufferATI (GLuint buffer);
 ' =====================================================================================
 METHOD glFreeObjectBufferATI (BYVAL dwBuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFreeObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFreeObjectBufferATI(dwBuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glArrayObjectATI (GLenum array, GLint size, GLenum type, GLsizei stride,
 ' GLuint buffer, GLuint offset);
 ' =====================================================================================
 METHOD glArrayObjectATI (BYVAL dwArray AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL dwBuffer AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glArrayObjectATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glArrayObjectATI(dwArray, nSize, dwType, nStride, dwBuffer, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetArrayObjectfvATI (GLenum array, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetArrayObjectfvATI (BYVAL dwArray AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetArrayObjectfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetArrayObjectfvATI(dwArray, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetArrayObjectivATI (GLenum array, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetArrayObjectivATI (BYVAL dwArray AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetArrayObjectivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetArrayObjectivATI(dwArray, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantArrayObjectATI (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
 ' =====================================================================================
 METHOD glVariantArrayObjectATI (BYVAL dwId AS DWORD, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL dwBuffer AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantArrayObjectATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantArrayObjectATI(dwId, dwType, nStride, dwBuffer, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantArrayObjectfvATI (GLuint id, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVariantArrayObjectfvATI (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantArrayObjectfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantArrayObjectfvATI(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantArrayObjectivATI (GLuint id, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVariantArrayObjectivATI (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantArrayObjectivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantArrayObjectivATI(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginVertexShaderEXT (void);
 ' =====================================================================================
 METHOD glBeginVertexShaderEXT
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginVertexShaderEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginVertexShaderEXT
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndVertexShaderEXT (void);
 ' =====================================================================================
 METHOD glEndVertexShaderEXT
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndVertexShaderEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndVertexShaderEXT
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindVertexShaderEXT (GLuint id);
 ' =====================================================================================
 METHOD glBindVertexShaderEXT (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVertexShaderEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVertexShaderEXT(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGenVertexShadersEXT (GLuint range);
 ' =====================================================================================
 METHOD glGenVertexShadersEXT (BYVAL dwRange AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGenVertexShadersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenVertexShadersEXT(dwRange) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteVertexShaderEXT (GLuint id);
 ' =====================================================================================
 METHOD glDeleteVertexShaderEXT (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteVertexShaderEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteVertexShaderEXT(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glShaderOp1EXT (GLenum op, GLuint res, GLuint arg1);
 ' =====================================================================================
 METHOD glShaderOp1EXT (BYVAL op AS DWORD, BYVAL dwRes AS DWORD, BYVAL arg1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderOp1EXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderOp1EXT(op, dwRes, arg1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glShaderOp2EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
 ' =====================================================================================
 METHOD glShaderOp2EXT (BYVAL op AS DWORD, BYVAL dwRes AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg2 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderOp2EXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderOp2EXT(op, dwRes, arg1, arg2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glShaderOp3EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
 ' =====================================================================================
 METHOD glShaderOp3EXT (BYVAL op AS DWORD, BYVAL dwRes AS DWORD, BYVAL arg1 AS DWORD, BYVAL arg2 AS DWORD, BYVAL arg3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderOp3EXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderOp3EXT(op, dwRes, arg1, arg2, arg3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSwizzleEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
 ' =====================================================================================
 METHOD glSwizzleEXT (BYVAL dwRes AS DWORD, BYVAL dwIn AS DWORD, BYVAL outX AS DWORD, BYVAL outY AS DWORD, BYVAL outZ AS DWORD, BYVAL outW AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSwizzleEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSwizzleEXT(dwRes, dwIn, outX, outY, outZ, outW)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWriteMaskEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
 ' =====================================================================================
 METHOD glWriteMaskEXT (BYVAL dwRes AS DWORD, BYVAL dwIn AS DWORD, BYVAL outX AS DWORD, BYVAL outY AS DWORD, BYVAL outZ AS DWORD, BYVAL outW AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWriteMaskEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWriteMaskEXT(dwRes, dwIn, outX, outY, outZ, outW)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glInsertComponentEXT (GLuint res, GLuint src, GLuint num);
 ' =====================================================================================
 METHOD glInsertComponentEXT (BYVAL dwRes AS DWORD, BYVAL dwSrc AS DWORD, BYVAL dwNum AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInsertComponentEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInsertComponentEXT(dwRes, dwSrc, dwNum)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glExtractComponentEXT (GLuint res, GLuint src, GLuint num);
 ' =====================================================================================
 METHOD glExtractComponentEXT (BYVAL dwRes AS DWORD, BYVAL dwSrc AS DWORD, BYVAL dwNum AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glExtractComponentEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glExtractComponentEXT(dwRes, dwSrc, dwNum)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGenSymbolsEXT (GLenum datatype, GLenum storagetype, GLenum range, GLuint components);
 ' =====================================================================================
 METHOD glGenSymbolsEXT (BYVAL dwDatatype AS DWORD, BYVAL dwStoragetype AS DWORD, BYVAL dwRange AS DWORD, BYVAL dwComponents AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGenSymbolsEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenSymbolsEXT(dwDatatype, dwStoragetype, dwRange, dwComponents) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetInvariantEXT (GLuint id, GLenum type, const GLvoid *addr);
 ' =====================================================================================
 METHOD glSetInvariantEXT (BYVAL dwId AS DWORD, BYVAL dwType AS DWORD, BYVAL paddr AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetInvariantEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetInvariantEXT(dwId, dwType, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetLocalConstantEXT (GLuint id, GLenum type, const GLvoid *addr);
 ' =====================================================================================
 METHOD glSetLocalConstantEXT (BYVAL dwId AS DWORD, BYVAL dwType AS DWORD, BYVAL paddr AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetLocalConstantEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetLocalConstantEXT(dwId, dwType, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantbvEXT (GLuint id, const GLbyte *addr);
 ' =====================================================================================
 METHOD glVariantbvEXT (BYVAL dwIndex AS DWORD, BYREF paddr AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantbvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantbvEXT(dwIndex, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantsvEXT (GLuint id, const GLshort *addr);
 ' =====================================================================================
 METHOD glVariantsvEXT (BYVAL dwId AS DWORD, BYREF paddr AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantsvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantsvEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantivEXT (GLuint id, const GLint *addr);
 ' =====================================================================================
 METHOD glVariantivEXT (BYVAL dwId AS DWORD, BYREF paddr AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantivEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantfvEXT (GLuint id, const GLfloat *addr);
 ' =====================================================================================
 METHOD glVariantfvEXT (BYVAL dwId AS DWORD, BYREF paddr AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantfvEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantdvEXT (GLuint id, const GLdouble *addr);
 ' =====================================================================================
 METHOD glVariantdvEXT (BYVAL dwId AS DWORD, BYREF paddr AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantdvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantdvEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantubvEXT (GLuint id, const GLubyte *addr);
 ' =====================================================================================
 METHOD glVariantubvEXT (BYVAL dwId AS DWORD, BYREF paddr AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantubvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantubvEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantusvEXT (GLuint id, const GLushort *addr);
 ' =====================================================================================
 METHOD glVariantusvEXT (BYVAL dwId AS DWORD, BYREF paddr AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantusvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantusvEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantuivEXT (GLuint id, const GLuint *addr);
 ' =====================================================================================
 METHOD glVariantuivEXT (BYVAL dwId AS DWORD, BYREF paddr AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantuivEXT(dwId, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVariantPointerEXT (GLuint id, GLenum type, GLuint stride, const GLvoid *addr);
 ' =====================================================================================
 METHOD glVariantPointerEXT (BYVAL dwId AS DWORD, BYVAL dwType AS DWORD, BYVAL nStride AS DWORD, BYVAL paddr AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVariantPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVariantPointerEXT(dwId, dwType, nStride, paddr)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnableVariantClientStateEXT (GLuint id);
 ' =====================================================================================
 METHOD glEnableVariantClientStateEXT (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableVariantClientStateEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableVariantClientStateEXT(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisableVariantClientStateEXT (GLuint id);
 ' =====================================================================================
 METHOD glDisableVariantClientStateEXT (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableVariantClientStateEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableVariantClientStateEXT(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glBindLightParameterEXT (GLenum light, GLenum value);
 ' =====================================================================================
 METHOD glBindLightParameterEXT (BYVAL dwLight AS DWORD, BYVAL dwValue AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glBindLightParameterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindLightParameterEXT(dwLight, dwValue) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glBindMaterialParameterEXT (GLenum face, GLenum value);
 ' =====================================================================================
 METHOD glBindMaterialParameterEXT (BYVAL dwFace AS DWORD, BYVAL dwValue AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glBindMaterialParameterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindMaterialParameterEXT(dwFace, dwValue) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glBindTexGenParameterEXT (GLenum unit, GLenum coord, GLenum value);
 ' =====================================================================================
 METHOD glBindTexGenParameterEXT (BYVAL dwUnit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL dwValue AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glBindTexGenParameterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindTexGenParameterEXT(dwUnit, dwCoord, dwValue) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glBindTextureUnitParameterEXT (GLenum unit, GLenum value);
 ' =====================================================================================
 METHOD glBindTextureUnitParameterEXT (BYVAL dwUnit AS DWORD, BYVAL dwValue AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glBindTextureUnitParameterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindTextureUnitParameterEXT(dwUnit, dwValue) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glBindParameterEXT (GLenum value);
 ' =====================================================================================
 METHOD glBindParameterEXT (BYVAL dwValue AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glBindParameterEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindParameterEXT(dwValue) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsVariantEnabledEXT (GLuint id, GLenum cap);
 ' =====================================================================================
 METHOD glIsVariantEnabledEXT (BYVAL dwId AS DWORD, BYVAL dwCap AS DWORD) AS BYTE
 LOCAL pProc, bRes AS DWORD
 pProc = wglGetProcAddress("glIsVariantEnabledEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsVariantEnabledEXT(dwId, dwCap) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
 ' =====================================================================================
 METHOD glGetVariantBooleanvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantBooleanvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantBooleanvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantIntegervEXT (GLuint id, GLenum value, GLint *data);
 ' =====================================================================================
 METHOD glGetVariantIntegervEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantIntegervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantIntegervEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
 ' =====================================================================================
 METHOD glGetVariantFloatvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantFloatvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantFloatvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVariantPointervEXT (GLuint id, GLenum value, GLvoid* *data);
 ' =====================================================================================
 METHOD glGetVariantPointervEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVariantPointervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVariantPointervEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInvariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
 ' =====================================================================================
 METHOD glGetInvariantBooleanvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInvariantBooleanvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInvariantBooleanvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInvariantIntegervEXT (GLuint id, GLenum value, GLint *data);
 ' =====================================================================================
 METHOD glGetInvariantIntegervEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInvariantIntegervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInvariantIntegervEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInvariantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
 ' =====================================================================================
 METHOD glGetInvariantFloatvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInvariantFloatvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInvariantFloatvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetLocalConstantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
 ' =====================================================================================
 METHOD glGetLocalConstantBooleanvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetLocalConstantBooleanvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetLocalConstantBooleanvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetLocalConstantIntegervEXT (GLuint id, GLenum value, GLint *data);
 ' =====================================================================================
 METHOD glGetLocalConstantIntegervEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetLocalConstantIntegervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetLocalConstantIntegervEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetLocalConstantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
 ' =====================================================================================
 METHOD glGetLocalConstantFloatvEXT (BYVAL dwId AS DWORD, BYVAL dwValue AS DWORD, BYREF pData AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetLocalConstantFloatvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetLocalConstantFloatvEXT(dwId, dwValue, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1sATI (GLenum stream, GLshort x);
 ' =====================================================================================
 METHOD glVertexStream1sATI (BYVAL dwStream AS DWORD, BYVAL x AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1sATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1sATI(dwStream, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1svATI (GLenum stream, const GLshort *coords);
 ' =====================================================================================
 METHOD glVertexStream1svATI (BYVAL dwStream AS DWORD, BYREF coords AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1svATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1svATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1iATI (GLenum stream, GLint x);
 ' =====================================================================================
 METHOD glVertexStream1iATI (BYVAL dwStream AS DWORD, BYVAL x AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1iATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1iATI(dwStream, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1ivATI (GLenum stream, const GLint *coords);
 ' =====================================================================================
 METHOD glVertexStream1ivATI (BYVAL dwStream AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1ivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1ivATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1fATI (GLenum stream, GLfloat x);
 ' =====================================================================================
 METHOD glVertexStream1fATI (BYVAL dwStream AS DWORD, BYVAL x AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1fATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1fATI(dwStream, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1fvATI (GLenum stream, const GLfloat *coords);
 ' =====================================================================================
 METHOD glVertexStream1fvATI (BYVAL dwStream AS DWORD, BYREF coords AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1fvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1fvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1dATI (GLenum stream, GLdouble x);
 ' =====================================================================================
 METHOD glVertexStream1dATI (BYVAL dwStream AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1dATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1dATI(dwStream, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream1dvATI (GLenum stream, const GLdouble *coords);
 ' =====================================================================================
 METHOD glVertexStream1dvATI (BYVAL dwStream AS DWORD, BYREF coords AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream1dvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream1dvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2sATI (GLenum stream, GLshort x, GLshort y);
 ' =====================================================================================
 METHOD glVertexStream2sATI (BYVAL dwStream AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2sATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2sATI(dwStream, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2svATI (GLenum stream, const GLshort *coords);
 ' =====================================================================================
 METHOD glVertexStream2svATI (BYVAL dwStream AS DWORD, BYREF coords AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2svATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2svATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2iATI (GLenum stream, GLint x, GLint y);
 ' =====================================================================================
 METHOD glVertexStream2iATI (BYVAL dwStream AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2iATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2iATI(dwStream, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2ivATI (GLenum stream, const GLint *coords);
 ' =====================================================================================
 METHOD glVertexStream2ivATI (BYVAL dwStream AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2ivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2ivATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2fATI (GLenum stream, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glVertexStream2fATI (BYVAL dwStream AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2fATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2fATI(dwStream, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2fvATI (GLenum stream, const GLfloat *coords);
 ' =====================================================================================
 METHOD glVertexStream2fvATI (BYVAL dwStream AS DWORD, BYREF coords AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2fvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2fvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2dATI (GLenum stream, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexStream2dATI (BYVAL dwStream AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2dATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2dATI(dwStream, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream2dvATI (GLenum stream, const GLdouble *coords);
 ' =====================================================================================
 METHOD glVertexStream2dvATI (BYVAL dwStream AS DWORD, BYREF coords AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream2dvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream2dvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z);
 ' =====================================================================================
 METHOD glVertexStream3sATI (BYVAL dwStream AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3sATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3sATI(dwStream, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3svATI (GLenum stream, const GLshort *coords);
 ' =====================================================================================
 METHOD glVertexStream3svATI (BYVAL dwStream AS DWORD, BYREF coords AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3svATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3svATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3iATI (GLenum stream, GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glVertexStream3iATI (BYVAL dwStream AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3iATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3iATI(dwStream, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3ivATI (GLenum stream, const GLint *coords);
 ' =====================================================================================
 METHOD glVertexStream3ivATI (BYVAL dwStream AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3ivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3ivATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glVertexStream3fATI (BYVAL dwStream AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3fATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3fATI(dwStream, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3fvATI (GLenum stream, const GLfloat *coords);
 ' =====================================================================================
 METHOD glVertexStream3fvATI (BYVAL dwStream AS DWORD, BYREF coords AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3fvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3fvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexStream3dATI (BYVAL dwStream AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3dATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3dATI(dwStream, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream3dvATI (GLenum stream, const GLdouble *coords);
 ' =====================================================================================
 METHOD glVertexStream3dvATI (BYVAL dwStream AS DWORD, BYREF coords AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream3dvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream3dvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4sATI (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
 ' =====================================================================================
 METHOD glVertexStream4sATI (BYVAL dwStream AS DWORD, BYVAL x AS INTEGER, BYVAL y AS INTEGER, BYVAL z AS INTEGER, BYVAL w AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4sATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4sATI(dwStream, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4svATI (GLenum stream, const GLshort *coords);
 ' =====================================================================================
 METHOD glVertexStream4svATI (BYVAL dwStream AS DWORD, BYREF coords AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4svATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4svATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4iATI (GLenum stream, GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glVertexStream4iATI (BYVAL dwStream AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4iATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4iATI(dwStream, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4ivATI (GLenum stream, const GLint *coords);
 ' =====================================================================================
 METHOD glVertexStream4ivATI (BYVAL dwStream AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4ivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4ivATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glVertexStream4fATI (BYVAL dwStream AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4fATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4fATI(dwStream, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4fvATI (GLenum stream, const GLfloat *coords);
 ' =====================================================================================
 METHOD glVertexStream4fvATI (BYVAL dwStream AS DWORD, BYREF coords AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4fvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4fvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexStream4dATI (BYVAL dwStream AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4dATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4dATI(dwStream, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexStream4dvATI (GLenum stream, const GLdouble *coords);
 ' =====================================================================================
 METHOD glVertexStream4dvATI (BYVAL dwStream AS DWORD, BYREF coords AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexStream4dvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexStream4dvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3bATI (GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz);
 ' =====================================================================================
 METHOD glNormalStream3bATI (BYVAL dwStream AS DWORD, BYVAL nx AS BYTE, BYVAL ny AS BYTE, BYVAL nz AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3bATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3bATI(dwStream, nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3bvATI (GLenum stream, const GLbyte *coords);
 ' =====================================================================================
 METHOD glNormalStream3bvATI (BYVAL dwStream AS DWORD, BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3bvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3bvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3sATI (GLenum stream, GLshort nx, GLshort ny, GLshort nz);
 ' =====================================================================================
 METHOD glNormalStream3sATI (BYVAL dwStream AS DWORD, BYVAL nx AS INTEGER, BYVAL ny AS INTEGER, BYVAL nz AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3sATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3sATI(dwStream, nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3svATI (GLenum stream, const GLshort *coords);
 ' =====================================================================================
 METHOD glNormalStream3svATI (BYVAL dwStream AS DWORD, BYREF coords AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3svATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3svATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3iATI (GLenum stream, GLint nx, GLint ny, GLint nz);
 ' =====================================================================================
 METHOD glNormalStream3iATI (BYVAL dwStream AS DWORD, BYVAL nx AS LONG, BYVAL ny AS LONG, BYVAL nz AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3iATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3iATI(dwStream, nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3ivATI (GLenum stream, const GLint *coords);
 ' =====================================================================================
 METHOD glNormalStream3ivATI (BYVAL dwStream AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3ivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3ivATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3fATI (GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz);
 ' =====================================================================================
 METHOD glNormalStream3fATI (BYVAL dwStream AS DWORD, BYVAL nx AS SINGLE, BYVAL ny AS SINGLE, BYVAL nz AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3fATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3fATI(dwStream, nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3fvATI (GLenum stream, const GLfloat *coords);
 ' =====================================================================================
 METHOD glNormalStream3fvATI (BYVAL dwStream AS DWORD, BYREF coords AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3fvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3fvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3dATI (GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz);
 ' =====================================================================================
 METHOD glNormalStream3dATI (BYVAL dwStream AS DWORD, BYVAL nx AS DOUBLE, BYVAL ny AS DOUBLE, BYVAL nz AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3dATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3dATI(dwStream, nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalStream3dvATI (GLenum stream, const GLdouble *coords);
 ' =====================================================================================
 METHOD glNormalStream3dvATI (BYVAL dwStream AS DWORD, BYREF coords AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalStream3dvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalStream3dvATI(dwStream, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClientActiveVertexStreamATI (GLenum stream);
 ' =====================================================================================
 METHOD glClientActiveVertexStreamATI (BYVAL dwStream AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClientActiveVertexStreamATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClientActiveVertexStreamATI(dwStream)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexBlendEnviATI (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glVertexBlendEnviATI (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexBlendEnviATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexBlendEnviATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexBlendEnvfATI (GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glVertexBlendEnvfATI (BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexBlendEnvfATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexBlendEnvfATI(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glElementPointerATI (GLenum type, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glElementPointerATI (BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glElementPointerATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glElementPointerATI(dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementArrayATI (GLenum mode, GLsizei count);
 ' =====================================================================================
 METHOD glDrawElementArrayATI (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementArrayATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementArrayATI(dwMode, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawRangeElementArrayATI (GLenum mode, GLuint start, GLuint end, GLsizei count);
 ' =====================================================================================
 METHOD glDrawRangeElementArrayATI (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawRangeElementArrayATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawRangeElementArrayATI(dwMode, dwStart, dwEnd, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawMeshArraysSUN (GLenum mode, GLint first, GLsizei count, GLsizei width);
 ' =====================================================================================
 METHOD glDrawMeshArraysSUN (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawMeshArraysSUN")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawMeshArraysSUN(dwMode, nFirst, nCount, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenOcclusionQueriesNV (GLsizei n, GLuint *ids);
 ' =====================================================================================
 METHOD glGenOcclusionQueriesNV (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenOcclusionQueriesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenOcclusionQueriesNV(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteOcclusionQueriesNV (GLsizei n, const GLuint *ids);
 ' =====================================================================================
 METHOD glDeleteOcclusionQueriesNV (BYVAL n AS LONG, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteOcclusionQueriesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteOcclusionQueriesNV(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsOcclusionQueryNV (GLuint id);
 ' =====================================================================================
 METHOD glIsOcclusionQueryNV (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsOcclusionQueryNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsOcclusionQueryNV(dwId) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginOcclusionQueryNV (GLuint id)
 ' =====================================================================================
 METHOD glBeginOcclusionQueryNV (BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginOcclusionQueryNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginOcclusionQueryNV(dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndOcclusionQueryNV (void);
 ' =====================================================================================
 METHOD glEndOcclusionQueryNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndOcclusionQueryNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndOcclusionQueryNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetOcclusionQueryivNV (GLuint id, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetOcclusionQueryivNV (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetOcclusionQueryivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetOcclusionQueryivNV(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetOcclusionQueryuivNV (GLuint id, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetOcclusionQueryuivNV (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetOcclusionQueryuivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetOcclusionQueryuivNV(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameteriNV (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glPointParameteriNV (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameteriNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameteriNV(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPointParameterivNV (GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glPointParameterivNV (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterivNV(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glActiveStencilFaceEXT (GLenum);
 ' typedef void (APIENTRYP PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face);
 ' =====================================================================================
 METHOD glActiveStencilFaceEXT (BYVAL dwFace AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveStencilFaceEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveStencilFaceEXT(dwFace)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glElementPointerAPPLE (GLenum type, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glElementPointerAPPLE (BYVAL dwType AS DWORD, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glElementPointerAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glElementPointerAPPLE(dwType, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementArrayAPPLE (GLenum mode, GLint first, GLsizei count);
 ' =====================================================================================
 METHOD glDrawElementArrayAPPLE (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementArrayAPPLE(dwMode, nFirst, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
 ' =====================================================================================
 METHOD glDrawRangeElementArrayAPPLE (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawRangeElementArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawRangeElementArrayAPPLE(dwMode, dwStart, dwEnd, nFirst, nCount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawElementArrayAPPLE (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
 ' =====================================================================================
 METHOD glMultiDrawElementArrayAPPLE (BYVAL dwMode AS DWORD, BYREF nFirst AS LONG, BYREF nCount AS LONG, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElementArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElementArrayAPPLE(dwMode, nFirst, nCount, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end,
 ' const GLint *first, const GLsizei *count, GLsizei primcount);
 ' =====================================================================================
 METHOD glMultiDrawRangeElementArrayAPPLE (BYVAL dwMode AS DWORD, BYVAL dwStart AS DWORD, BYVAL dwEnd AS DWORD, BYREF nFirst AS LONG, BYREF nCount AS LONG, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawRangeElementArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawRangeElementArrayAPPLE(dwMode, dwStart, dwEnd, nFirst, nCount, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenFencesAPPLE (GLsizei n, GLuint *fences);
 ' =====================================================================================
 METHOD glGenFencesAPPLE (BYVAL n AS LONG, BYREF fences AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenFencesAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenFencesAPPLE(n, fences)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteFencesAPPLE (GLsizei n, const GLuint *fences);
 ' =====================================================================================
 METHOD glDeleteFencesAPPLE (BYVAL n AS LONG, BYREF fences AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteFencesAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteFencesAPPLE(n, fences)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetFenceAPPLE (GLuint fence);
 ' =====================================================================================
 METHOD glSetFenceAPPLE (BYVAL fence AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetFenceAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetFenceAPPLE(fence)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLboolean glIsFenceAPPLE (GLuint);
 ' typedef GLboolean (APIENTRYP PFNGLISFENCEAPPLEPROC) (GLuint fence);
 ' =====================================================================================
 METHOD glIsFenceAPPLE (BYVAL fence AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsFenceAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsFenceAPPLE(fence) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glTestFenceAPPLE (GLuint fence);
 ' =====================================================================================
 METHOD glTestFenceAPPLE (BYVAL fence AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glTestFenceAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTestFenceAPPLE(fence) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFinishFenceAPPLE (GLuint fence);
 ' =====================================================================================
 METHOD glFinishFenceAPPLE (BYVAL fence AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFinishFenceAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinishFenceAPPLE(fence)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glTestObjectAPPLE (GLenum object, GLuint name);
 ' =====================================================================================
 METHOD glTestObjectAPPLE (BYVAL dwObject AS DWORD, BYVAL dwName AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glTestObjectAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTestObjectAPPLE(dwObject, dwName) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFinishObjectAPPLE (GLenum object, GLint name);
 ' =====================================================================================
 METHOD glFinishObjectAPPLE (BYVAL dwObject AS DWORD, BYVAL nName AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFinishObjectAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFinishObjectAPPLE(dwObject, nName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindVertexArrayAPPLE (GLuint array);
 ' =====================================================================================
 METHOD glBindVertexArrayAPPLE (BYVAL dwArray AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVertexArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVertexArrayAPPLE(dwArray)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteVertexArraysAPPLE (GLsizei n, const GLuint *arrays);
 ' =====================================================================================
 METHOD glDeleteVertexArraysAPPLE (BYVAL n AS LONG, BYREF arrays AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteVertexArraysAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteVertexArraysAPPLE(n, arrays)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenVertexArraysAPPLE (GLsizei n, GLuint *arrays);
 ' =====================================================================================
 METHOD glGenVertexArraysAPPLE (BYVAL n AS LONG, BYREF arrays AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenVertexArraysAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenVertexArraysAPPLE(n, arrays)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLboolean glIsVertexArrayAPPLE (GLuint);
 ' typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array);
 ' =====================================================================================
 METHOD glIsVertexArrayAPPLE (BYVAL dwArray AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsVertexArrayAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsVertexArrayAPPLE(dwArray) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexArrayRangeAPPLE (GLsizei length, GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexArrayRangeAPPLE (BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayRangeAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayRangeAPPLE(nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushVertexArrayRangeAPPLE (GLsizei length, GLvoid *pointer);
 ' =====================================================================================
 METHOD glFlushVertexArrayRangeAPPLE (BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushVertexArrayRangeAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushVertexArrayRangeAPPLE(nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexArrayParameteriAPPLE (GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glVertexArrayParameteriAPPLE (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayParameteriAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayParameteriAPPLE(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawBuffersATI (GLsizei n, const GLenum *bufs);
 ' =====================================================================================
 METHOD glDrawBuffersATI (BYVAL n AS LONG, BYREF bufs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawBuffersATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawBuffersATI(n, bufs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramNamedParameter4fNV (GLuint id, GLsizei len, const GLubyte *name,
 ' GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glProgramNamedParameter4fNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramNamedParameter4fNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramNamedParameter4fNV(dwId, nLen, pname, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramNamedParameter4dNV (GLuint id, GLsizei len, const GLubyte *name,
 ' GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glProgramNamedParameter4dNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramNamedParameter4dNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramNamedParameter4dNV(dwId, nLen, pname, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramNamedParameter4fvNV (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
 ' =====================================================================================
 METHOD glProgramNamedParameter4fvNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYREF v AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramNamedParameter4fvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramNamedParameter4fvNV(dwId, nLen, pname, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramNamedParameter4dvNV (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
 ' =====================================================================================
 METHOD glProgramNamedParameter4dvNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramNamedParameter4dvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramNamedParameter4dvNV(dwId, nLen, pname, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramNamedParameterfvNV (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
 ' =====================================================================================
 METHOD glGetProgramNamedParameterfvNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramNamedParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramNamedParameterfvNV(dwId, nLen, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramNamedParameterdvNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
 ' =====================================================================================
 METHOD glGetProgramNamedParameterdvNV (BYVAL dwId AS DWORD, BYVAL nLen AS LONG, BYREF pname AS BYTE, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramNamedParameterdvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramNamedParameterdvNV(dwId, nLen, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex2hNV (GLhalfNV x, GLhalfNV y);
 ' =====================================================================================
 METHOD glVertex2hNV (BYVAL x AS WORD, BYVAL y AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2hNV(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex2hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertex2hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex3hNV (GLhalfNV x, GLhalfNV y, GLhalfNV z);
 ' =====================================================================================
 METHOD glVertex3hNV (BYVAL x AS WORD, BYVAL y AS WORD, BYVAL z AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3hNV(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex3hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertex3hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex4hNV (GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
 ' =====================================================================================
 METHOD glVertex4hNV (BYVAL x AS WORD, BYVAL y AS WORD, BYVAL z AS WORD, BYVAL w AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4hNV(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertex4hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertex4hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormal3hNV (GLhalfNV nx, GLhalfNV ny, GLhalfNV nz);
 ' =====================================================================================
 METHOD glNormal3hNV (BYVAL nx AS WORD, BYVAL ny AS WORD, BYVAL nz AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3hNV(nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormal3hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glNormal3hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor3hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
 ' =====================================================================================
 METHOD glColor3hNV (BYVAL red AS WORD, BYVAL green AS WORD, BYVAL blue AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3hNV(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor3hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glColor3hvNV (BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha);
 ' =====================================================================================
 METHOD glColor4hNV (BYVAL red AS WORD, BYVAL green AS WORD, BYVAL blue AS WORD, BYVAL alpha AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4hNV(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColor4hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glColor4hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord1hNV (GLhalfNV s);
 ' =====================================================================================
 METHOD glTexCoord1hNV (BYVAL s AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1hNV(s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord1hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glTexCoord1hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2hNV (GLhalfNV s, GLhalfNV t);
 ' =====================================================================================
 METHOD glTexCoord2hNV (BYVAL s AS WORD, BYVAL t AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2hNV(s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord2hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glTexCoord2hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord3hNV (GLhalfNV s, GLhalfNV t, GLhalfNV r);
 ' =====================================================================================
 METHOD glTexCoord3hNV (BYVAL s AS WORD, BYVAL t AS WORD, BYVAL r AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3hNV(s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord3hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glTexCoord3hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4hNV (GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
 ' =====================================================================================
 METHOD glTexCoord4hNV (BYVAL s AS WORD, BYVAL t AS WORD, BYVAL r AS WORD, BYVAL q AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4hNV(s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoord4hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glTexCoord4hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4hvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1hNV (GLenum target, GLhalfNV s);
 ' =====================================================================================
 METHOD glMultiTexCoord1hNV (BYVAL dwTarget AS DWORD, BYVAL s AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1hNV(dwTarget, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord1hvNV (GLenum target, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glMultiTexCoord1hvNV (BYVAL dwTarget AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1hvNV(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2hNV (GLenum target, GLhalfNV s, GLhalfNV t);
 ' =====================================================================================
 METHOD glMultiTexCoord2hNV (BYVAL dwTarget AS DWORD, BYVAL s AS WORD, BYVAL t AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2hNV(dwTarget, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord2hvNV (GLenum target, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glMultiTexCoord2hvNV (BYVAL dwTarget AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2hvNV(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3hNV (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r);
 ' =====================================================================================
 METHOD glMultiTexCoord3hNV (BYVAL dwTarget AS DWORD, BYVAL s AS WORD, BYVAL t AS WORD, BYVAL r AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3hNV(dwTarget, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord3hvNV (GLenum target, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glMultiTexCoord3hvNV (BYVAL dwTarget AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3hvNV(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4hNV (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
 ' =====================================================================================
 METHOD glMultiTexCoord4hNV (BYVAL dwTarget AS DWORD, BYVAL s AS WORD, BYVAL t AS WORD, BYVAL r AS WORD, BYVAL q AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4hNV(dwTarget, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoord4hvNV (GLenum target, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glMultiTexCoord4hvNV (BYVAL dwTarget AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4hvNV(dwTarget, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordhNV (GLhalfNV fog);
 ' =====================================================================================
 METHOD glFogCoordhNV (BYVAL fog AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordhNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordhNV(fog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordhvNV (const GLhalfNV *fog);
 ' =====================================================================================
 METHOD glFogCoordhvNV (BYREF fog AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordhvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordhvNV(fog)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
 ' =====================================================================================
 METHOD glSecondaryColor3hNV (BYVAL red AS WORD, BYVAL green AS WORD, BYVAL blue AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColor3hNV(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColor3hvNV (const GLhalfNV *v);
 ' =====================================================================================
 METHOD glSecondaryColor3hvNV (BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColor3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordhvNV(v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexWeighthNV (GLhalfNV weight);
 ' =====================================================================================
 METHOD glVertexWeighthNV (BYVAL weight AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexWeighthNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexWeighthNV(weight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexWeighthvNV (const GLhalfNV *weight);
 ' =====================================================================================
 METHOD glVertexWeighthvNV (BYREF weight AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexWeighthvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexWeighthvNV(weight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1hNV (GLuint index, GLhalfNV x);
 ' =====================================================================================
 METHOD glVertexAttrib1hNV (BYVAL dwIndex AS DWORD, BYVAL x AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1hNV(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib1hvNV (GLuint index, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttrib1hvNV (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib1hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib1hvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2hNV (GLuint index, GLhalfNV x, GLhalfNV y);
 ' =====================================================================================
 METHOD glVertexAttrib2hNV (BYVAL dwIndex AS DWORD, BYVAL x AS WORD, BYVAL y AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2hNV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib2hvNV (GLuint index, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttrib2hvNV (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib2hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib2hvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3hNV (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z);
 ' =====================================================================================
 METHOD glVertexAttrib3hNV (BYVAL dwIndex AS DWORD, BYVAL x AS WORD, BYVAL y AS WORD, BYVAL z AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3hNV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib3hvNV (GLuint index, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttrib3hvNV (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib3hvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4hNV (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
 ' =====================================================================================
 METHOD glVertexAttrib4hNV (BYVAL dwIndex AS DWORD, BYVAL x AS WORD, BYVAL y AS WORD, BYVAL z AS WORD, BYVAL w AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4hNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4hNV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttrib4hvNV (GLuint index, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttrib4hvNV (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttrib4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttrib4hvNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs1hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttribs1hvNV (BYVAL dwIndex AS DWORD, BYVAL n AS LONG, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs1hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs1hvNV(dwIndex, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs2hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttribs2hvNV (BYVAL dwIndex AS DWORD, BYVAL n AS LONG, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs2hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs2hvNV(dwIndex, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs3hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttribs3hvNV (BYVAL dwIndex AS DWORD, BYVAL n AS LONG, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs3hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs3hvNV(dwIndex, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribs4hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
 ' =====================================================================================
 METHOD glVertexAttribs4hvNV (BYVAL dwIndex AS DWORD, BYVAL n AS LONG, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribs4hvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribs4hvNV(dwIndex, n, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPixelDataRangeNV (GLenum target, GLsizei length, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glPixelDataRangeNV (BYVAL dwTarget AS DWORD, BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelDataRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelDataRangeNV(dwTarget, nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushPixelDataRangeNV (GLenum target);
 ' =====================================================================================
 METHOD glFlushPixelDataRangeNV (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushPixelDataRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushPixelDataRangeNV(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPrimitiveRestartNV (void);
 ' =====================================================================================
 METHOD glPrimitiveRestartNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPrimitiveRestartNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPrimitiveRestartNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPrimitiveRestartIndexNV (GLuint index);
 ' =====================================================================================
 METHOD glPrimitiveRestartIndexNV (BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPrimitiveRestartIndexNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPrimitiveRestartIndexNV(dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvoid* glMapObjectBufferATI (GLuint buffer);
 ' =====================================================================================
 METHOD glMapObjectBufferATI (BYVAL buffer AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapObjectBufferATI(buffer) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUnmapObjectBufferATI (GLuint buffer);
 ' =====================================================================================
 METHOD glUnmapObjectBufferATI (BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUnmapObjectBufferATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnmapObjectBufferATI(buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilOpSeparateATI (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
 ' =====================================================================================
 METHOD glStencilOpSeparateATI (BYVAL dwFace AS DWORD, BYVAL sfail AS DWORD, BYVAL dpfail AS DWORD, BYVAL dppass AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilOpSeparateATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilOpSeparateATI(dwFace, sfail, dpfail, dppass)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilFuncSeparateATI (GLenum , GLenum , GLint ref, GLuint mask);
 ' =====================================================================================
 METHOD glStencilFuncSeparateATI (BYVAL frontfunc AS DWORD, BYVAL backfunc AS DWORD, BYVAL nRef AS LONG, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilFuncSeparateATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilFuncSeparateATI(frontfunc, backfunc, nRef, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribArrayObjectATI (GLuint index, GLint size, GLenum type,
 ' GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
 ' =====================================================================================
 METHOD glVertexAttribArrayObjectATI (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL nStride AS LONG, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribArrayObjectATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribArrayObjectATI(dwIndex, nSize, dwType, normalized, nStride, buffer, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribArrayObjectfvATI (GLuint index, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVertexAttribArrayObjectfvATI (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribArrayObjectfvATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribArrayObjectfvATI(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribArrayObjectivATI (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribArrayObjectivATI (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribArrayObjectivATI")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribArrayObjectivATI(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord1bOES (GLenum texture, GLbyte s);
 ' =====================================================================================
 METHOD glMultiTexCoord1bOES (BYVAL dwtexture AS DWORD, BYVAL s AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1bOES(dwtexture, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord1bvOES (GLenum texture, const GLbyte *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord1bvOES (BYVAL dwtexture AS DWORD, BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1bvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord2bOES (GLenum texture, GLbyte s, GLbyte t);
 ' =====================================================================================
 METHOD glMultiTexCoord2bOES (BYVAL dwtexture AS DWORD, BYVAL s AS BYTE, BYVAL t AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2bOES(dwtexture, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord2bvOES (GLenum texture, const GLbyte *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord2bvOES (BYVAL dwtexture AS DWORD, BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2bvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord3bOES (GLenum texture, GLbyte s, GLbyte t, GLbyte r);
 ' =====================================================================================
 METHOD glMultiTexCoord3bOES (BYVAL dwtexture AS DWORD, BYVAL s AS BYTE, BYVAL t AS BYTE, BYVAL r AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3bOES(dwtexture, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord3bvOES (GLenum texture, const GLbyte *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord3bvOES (BYVAL dwtexture AS DWORD, BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3bvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord4bOES (GLenum texture, GLbyte s, GLbyte t, GLbyte r, GLbyte q);
 ' =====================================================================================
 METHOD glMultiTexCoord4bOES (BYVAL dwtexture AS DWORD, BYVAL s AS BYTE, BYVAL t AS BYTE, BYVAL r AS BYTE, BYVAL q AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4bOES(dwtexture, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord4bvOES (GLenum texture, const GLbyte *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord4bvOES (BYVAL dwtexture AS DWORD, BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4bvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord1bOES (GLbyte s);
 ' =====================================================================================
 METHOD glTexCoord1bOES (BYVAL s AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1bOES(s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord1bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glTexCoord1bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord2bOES (GLbyte s, GLbyte t);
 ' =====================================================================================
 METHOD glTexCoord2bOES (BYVAL s AS BYTE, BYVAL t AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2bOES(s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord2bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glTexCoord2bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord3bOES (GLbyte s, GLbyte t, GLbyte r);
 ' =====================================================================================
 METHOD glTexCoord3bOES (BYVAL s AS BYTE, BYVAL t AS BYTE, BYVAL r AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3bOES(s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord3bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glTexCoord3bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord4bOES (GLbyte s, GLbyte t, GLbyte r, GLbyte q);
 ' =====================================================================================
 METHOD glTexCoord4bOES (BYVAL s AS BYTE, BYVAL t AS BYTE, BYVAL r AS BYTE, BYVAL q AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4bOES(s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord4bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glTexCoord4bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex2bOES (GLbyte x);
 ' =====================================================================================
 METHOD glVertex2bOES (BYVAL s AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2bOES(s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex2bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glVertex2bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex3bOES (GLbyte x, GLbyte y);
 ' =====================================================================================
 METHOD glVertex3bOES (BYVAL x AS BYTE, BYVAL y AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3bOES(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex3bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glVertex3bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex4bOES (GLbyte x, GLbyte y, GLbyte z);
 ' =====================================================================================
 METHOD glVertex4bOES (BYVAL x AS BYTE, BYVAL y AS BYTE, BYVAL z AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4bOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4bOES(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex4bvOES (const GLbyte *coords);
 ' =====================================================================================
 METHOD glVertex4bvOES (BYREF coords AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4bvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4bvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glAccumxOES (GLenum op, GLfixed value);
 ' =====================================================================================
 METHOD glAccumxOES (BYVAL op AS DWORD, BYVAL value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAccumxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAccumxOES(op, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glAlphaFuncxOES (GLenum func, GLfixed ref);
 ' =====================================================================================
 METHOD glAlphaFuncxOES (BYVAL func AS DWORD, BYVAL ref AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glAlphaFuncxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glAlphaFuncxOES(func, ref)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glBitmapxOES (GLsizei width, GLsizei height, GLfixed xorig, GLfixed yorig, GLfixed xmove, GLfixed ymove, const GLubyte *bitmap);
 ' =====================================================================================
 METHOD glBitmapxOES (BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL xorig AS LONG, BYVAL yorig AS LONG, BYVAL xmove AS LONG, BYVAL ymove AS LONG, BYREF bitmap_ AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBitmapxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBitmapxOES(nwidth, nheight, xorig, yorig, xmove, ymove, bitmap_)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glBlendColorxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
 ' =====================================================================================
 METHOD glBlendColorxOES (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG, BYVAL alpha AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendColorxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendColorxOES(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearAccumxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
 ' =====================================================================================
 METHOD glClearAccumxOES (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG, BYVAL alpha AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearAccumxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearAccumxOES(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearColorxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
 ' =====================================================================================
 METHOD glClearColorxOES (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG, BYVAL alpha AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearColorxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearColorxOES(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearDepthxOES (GLfixed depth);
 ' =====================================================================================
 METHOD glClearDepthxOES (BYVAL depth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearDepthxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearDepthxOES(depth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
 ' =====================================================================================
 METHOD glClipPlanexOES (BYVAL plane AS DWORD, BYREF equation AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClipPlanexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClipPlanexOES(plane, equation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glColor3xOES (GLfixed red, GLfixed green, GLfixed blue);
 ' =====================================================================================
 METHOD glColor3xOES (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3xOES(red, green, blue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
 ' =====================================================================================
 METHOD glColor4xOES (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG, BYVAL alpha AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4xOES(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glColor3xvOES (const GLfixed *components);
 ' =====================================================================================
 METHOD glColor3xvOES (BYREF components AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor3xvOES(components)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glColor4xvOES (const GLfixed *components);
 ' =====================================================================================
 METHOD glColor4xvOES (BYREF components AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColor4xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColor4xvOES(components)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glConvolutionParameterxOES (GLenum target, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glConvolutionParameterxOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterxOES(dwtarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glConvolutionParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glConvolutionParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glConvolutionParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glConvolutionParameterxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDepthRangexOES (GLfixed n, GLfixed f);
 ' =====================================================================================
 METHOD glDepthRangexOES (BYVAL n AS LONG, BYVAL f AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangexOES(n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glEvalCoord1xOES (GLfixed u);
 ' =====================================================================================
 METHOD glEvalCoord1xOES (BYVAL u AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEvalCoord1xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEvalCoord1xOES(u)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glEvalCoord2xOES (GLfixed u, GLfixed v);
 ' =====================================================================================
 METHOD glEvalCoord2xOES (BYVAL u AS LONG, BYVAL v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEvalCoord2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEvalCoord2xOES(u, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glEvalCoord1xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glEvalCoord1xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEvalCoord1xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEvalCoord1xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glEvalCoord2xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOd glEvalCoord2xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEvalCoord2xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEvalCoord2xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFeedbackBufferxOES (GLsizei n, GLenum type, const GLfixed *buffer);
 ' =====================================================================================
 METHOD glFeedbackBufferxOES (BYVAL n AS LONG, BYVAL dwtype AS DWORD, BYREF buffer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFeedbackBufferxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFeedbackBufferxOES(n, dwtype, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFogxOES (GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glFogxOES (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogxOES(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFogxvOES (GLenum pname, const GLfixed *param);
 ' =====================================================================================
 METHOD glFogxvOES (BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogxvOES(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFrustumxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
 ' =====================================================================================
 METHOD glFrustumxOES (BYVAL l AS LONG, BYVAL r AS LONG, BYVAL b AS LONG, BYVAL t AS LONG, BYVAL n AS LONG, BYVAL f AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFrustumxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFrustumxOES(l, r, b, t, n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetClipPlanexOES (GLenum plane, GLfixed *equation);
 ' =====================================================================================
 METHOD glGetClipPlanexOES (BYVAL plane AS DWORD, BYREF equation AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetClipPlanexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetClipPlanexOES(plane, equation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetConvolutionParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetConvolutionParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetConvolutionParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetConvolutionParameterxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetFixedvOES (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFixedvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFixedvOES(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetHistogramParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetHistogramParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetHistogramParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetHistogramParameterxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetLightxOES (GLenum light, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetLightxOES (BYVAL light AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetLightxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetLightxOES(light, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetMapxvOES (GLenum target, GLenum query, GLfixed *v);
 ' =====================================================================================
 METHOD glGetMapxvOES (BYVAL dwtarget AS DWORD, BYVAL query AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMapxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMapxvOES(dwtarget, query, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetMaterialxOES (GLenum face, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glGetMaterialxOES (BYVAL face AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMaterialxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMaterialxOES(face, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetPixelMapxv (GLenum map, GLint size, GLfixed *values);
 ' =====================================================================================
 METHOD glGetPixelMapxv (BYVAL map AS DWORD, BYVAL nsize AS LONG, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPixelMapxv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPixelMapxv(map, nsize, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetTexEnvxvOES (GLenum target, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetTexEnvxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexEnvxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexEnvxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetTexGenxvOES (BYVAL dwcoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexGenxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexGenxvOES(dwcoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetTexLevelParameterxvOES (GLenum target, GLint level, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetTexLevelParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL nlevel AS LONG, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexLevelParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexLevelParameterxvOES(dwtarget, nlevel, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
 ' =====================================================================================
 METHOD glGetTexParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glIndexxOES (GLfixed component);
 ' =====================================================================================
 METHOD glIndexxOES (BYVAL component AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexxOES(component)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glIndexxvOES (const GLfixed *component);
 ' =====================================================================================
 METHOD glIndexxvOES (BYREF component AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexxvOES(component)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glLightModelxOES (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLightModelxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLightModelxOES(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *param);
 ' =====================================================================================
 METHOD glLightModelxvOES (BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLightModelxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLightModelxvOES(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glLightxOES (BYVAL light AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLightxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLightxOES(light, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glLightxvOES (BYVAL light AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLightxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLightxvOES(light, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLineWidthxOES (GLfixed width);
 ' =====================================================================================
 METHOD glLineWidthxOES (BYVAL nwidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLineWidthxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLineWidthxOES(nwidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLoadMatrixxOES (const GLfixed *m);
 ' =====================================================================================
 METHOD glLoadMatrixxOES (BYREF m AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadMatrixxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadMatrixxOES(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glLoadTransposeMatrixxOES (const GLfixed *m);
 ' =====================================================================================
 METHOD glLoadTransposeMatrixxOES (BYREF m AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glLoadTransposeMatrixxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glLoadTransposeMatrixxOES(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMap1xOES (GLenum target, GLfixed u1, GLfixed u2, GLint stride, GLint order, GLfixed points);
 ' =====================================================================================
 METHOD glMap1xOES (BYVAL dwtarget AS DWORD, BYVAL u1 AS LONG, BYVAL u2 AS LONG, BYVAL stride AS LONG, BYVAL order AS LONG, BYVAL pts AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMap1xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMap1xOES(dwtarget, u1, u2, stride, order, pts)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMap2xOES (GLenum target, GLfixed u1, GLfixed u2, GLint ustride, GLint uorder, GLfixed v1, GLfixed v2, GLint vstride, GLint vorder, GLfixed points);
 ' =====================================================================================
 METHOD glMap2xOES (BYVAL dwtarget AS DWORD, BYVAL u1 AS LONG, BYVAL u2 AS LONG, BYVAL ustride AS LONG, BYVAL uorder AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG, BYVAL vstride AS LONG, BYVAL vorder AS LONG, BYVAL pts AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMap2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMap2xOES(dwtarget, u1, u2, ustride, uorder, v1, v2, vstride, vorder, pts)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMapGrid1xOES (GLint n, GLfixed u1, GLfixed u2);
 ' =====================================================================================
 METHOD glMapGrid1xOES (BYVAL n AS LONG, BYVAL u1 AS LONG, BYVAL u2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapGrid1xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapGrid1xOES(n, u1, u2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMapGrid2xOES (GLint n, GLfixed u1, GLfixed u2, GLfixed v1, GLfixed v2);
 ' =====================================================================================
 METHOD glMapGrid2xOES (BYVAL n AS LONG, BYVAL u1 AS LONG, BYVAL u2 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapGrid2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapGrid2xOES(n, u1, u2, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glMaterialxOES (BYVAL face AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMaterialxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMaterialxOES(face, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *param);
 ' =====================================================================================
 METHOD glMaterialxvOES (BYVAL face AS DWORD, BYVAL pname AS DWORD, BYREF param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMaterialxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMaterialxvOES(face, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultMatrixxOES (const GLfixed *m);
 ' =====================================================================================
 METHOD glMultMatrixxOES (BYREF m AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultMatrixxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultMatrixxOES(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultTransposeMatrixxOES (const GLfixed *m);
 ' =====================================================================================
 METHOD glMultTransposeMatrixxOES (BYREF m AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultTransposeMatrixxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultTransposeMatrixxOES(m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord1xOES (GLenum texture, GLfixed s);
 ' =====================================================================================
 METHOD glMultiTexCoord1xOES (BYVAL dwtexture AS DWORD, BYVAL s AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1xOES(dwtexture, s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord2xOES (GLenum texture, GLfixed s, GLfixed t);
 ' =====================================================================================
 METHOD glMultiTexCoord2xOES (BYVAL dwtexture AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2xOES(dwtexture, s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord3xOES (GLenum texture, GLfixed s, GLfixed t, GLfixed r);
 ' =====================================================================================
 METHOD glMultiTexCoord3xOES (BYVAL dwtexture AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3xOES(dwtexture, s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord4xOES (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
 ' =====================================================================================
 METHOD glMultiTexCoord4xOES (BYVAL dwtexture AS DWORD, BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG, BYVAL q AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4xOES(dwtexture, s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord1xvOES (GLenum texture, const GLfixed *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord1xvOES (BYVAL dwtexture AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord1xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord1xvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord2xvOES (GLenum texture, const GLfixed *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord2xvOES (BYVAL dwtexture AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord2xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord2xvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord3xvOES (GLenum texture, const GLfixed *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord3xvOES (BYVAL dwtexture AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord3xvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiTexCoord4xvOES (GLenum texture, const GLfixed *coords);
 ' =====================================================================================
 METHOD glMultiTexCoord4xvOES (BYVAL dwtexture AS DWORD, BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoord4xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoord4xvOES(dwtexture, coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
 ' =====================================================================================
 METHOD glNormal3xOES (BYVAL nx AS LONG, BYVAL ny AS LONG, BYVAL nz AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3xOES(nx, ny, nz)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glNormal3xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glNormal3xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormal3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormal3xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glOrthoxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
 ' =====================================================================================
 METHOD glOrthoxOES (BYVAL l AS LONG, BYVAL r AS LONG, BYVAL b AS LONG, BYVAL t AS LONG, BYVAL n AS LONG, BYVAL f AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glOrthoxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glOrthoxOES(l, r, b, t, n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPassThroughxOES (GLfixed token);
 ' =====================================================================================
 METHOD glPassThroughxOES (BYVAL token AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPassThroughxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPassThroughxOES(token)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPixelMapx (GLenum map, GLint size, const GLfixed *values);
 ' =====================================================================================
 METHOD glPixelMapx (BYVAL map AS DWORD, BYVAL nsize AS LONG, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelMapx")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelMapx(map, nsize, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPixelStorex (GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glPixelStorex (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelStorex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelStorex(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPixelTransferxOES (GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glPixelTransferxOES (BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelTransferxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelTransferxOES(pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPixelZoomxOES (GLfixed xfactor, GLfixed yfactor);
 ' =====================================================================================
 METHOD glPixelZoomxOES (BYVAL xfactor AS LONG, BYVAL yfactor AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPixelZoomxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPixelZoomxOES(xfactor, yfactor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glPointParameterxvOES (BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointParameterxvOES(pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPointSizexOES (GLfixed size);
 ' =====================================================================================
 METHOD glPointSizexOES (BYVAL nsize AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPointSizexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointSizexOES(nsize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
 ' =====================================================================================
 METHOD glPolygonOffsetxOES (BYVAL factor AS LONG, BYVAL nunits AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPolygonOffsetxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPolygonOffsetxOES(factor, nunits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPrioritizeTexturesxOES (GLsizei n, const GLuint *textures, const GLfixed *priorities);
 ' =====================================================================================
 METHOD glPrioritizeTexturesxOES (BYVAL n AS LONG, BYREF textures AS DWORD, BYREF priorities AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPrioritizeTexturesxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPrioritizeTexturesxOES(n, textures, priorities)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos2xOES (GLfixed x, GLfixed y);
 ' =====================================================================================
 METHOD glRasterPos2xOES (BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos2xOES(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos3xOES (GLfixed x, GLfixed y, GLfixed z);
 ' =====================================================================================
 METHOD glRasterPos3xOES (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos3xOES(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos4xOES (GLfixed x, GLfixed y, GLfixed z, GLfixed w);
 ' =====================================================================================
 METHOD glRasterPos4xOES (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos4xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos4xOES(x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos2xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glRasterPos2xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos2xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos2xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos3xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glRasterPos3xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos3xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRasterPos4xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glRasterPos4xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRasterPos4xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRasterPos4xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRectxOES (GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2);
 ' =====================================================================================
 METHOD glRectxOES (BYVAL x1 AS LONG, BYVAL y1 AS LONG, BYVAL x2 AS LONG, BYVAL y2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRectxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRectxOES(x1, y1, x2, y2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRectxvOES (const GLfixed *v1, const GLfixed *v2);
 ' =====================================================================================
 METHOD glRectxvOES (BYREF v1 AS LONG, BYREF v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRectxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRectxvOES(v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
 ' =====================================================================================
 METHOD glRotatexOES (BYVAL angle AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRotatexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRotatexOES(angle, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glSampleCoverageOES (GLfixed value, GLboolean invert);
 ' =====================================================================================
 METHOD glSampleCoverageOES (BYVAL value AS LONG, BYVAL invert AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleCoverageOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleCoverageOES(value, invert)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
 ' =====================================================================================
 METHOD glScalexOES (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glScalexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glScalexOES(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord1xOES (GLfixed s);
 ' =====================================================================================
 METHOD glTexCoord1xOES (BYVAL s AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1xOES(s)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord2xOES (GLfixed s, GLfixed t);
 ' =====================================================================================
 METHOD glTexCoord2xOES (BYVAL s AS LONG, BYVAL t AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2xOES(s, t)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord3xOES (GLfixed s, GLfixed t, GLfixed r);
 ' =====================================================================================
 METHOD glTexCoord3xOES (BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3xOES(s, t, r)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord4xOES (GLfixed s, GLfixed t, GLfixed r, GLfixed q);
 ' =====================================================================================
 METHOD glTexCoord4xOES (BYVAL s AS LONG, BYVAL t AS LONG, BYVAL r AS LONG, BYVAL q AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4xOES(s, t, r, q)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord1xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glTexCoord1xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord1xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord1xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord2xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glTexCoord2xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord2xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord2xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord3xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glTexCoord3xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord3xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexCoord4xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glTexCoord4xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoord4xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoord4xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glTexEnvxOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexEnvxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexEnvxOES(dwtarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glTexEnvxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexEnvxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexEnvxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glTexGenxOES (BYVAL dwcoord AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexGenxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexGenxOES(dwcoord, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glTexGenxvOES (BYVAL dwcoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexGenxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexGenxvOES(dwcoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
 ' =====================================================================================
 METHOD glTexParameterxOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterxOES(dwtarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
 ' =====================================================================================
 METHOD glTexParameterxvOES (BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterxvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterxvOES(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
 ' =====================================================================================
 METHOD glTranslatexOES (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTranslatexOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTranslatexOES(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex2xOES (GLfixed x);
 ' =====================================================================================
 METHOD glVertex2xOES (BYVAL x AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2xOES(x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex3xOES (GLfixed x, GLfixed y);
 ' =====================================================================================
 METHOD glVertex3xOES (BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3xOES(x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex4xOES (GLfixed x, GLfixed y, GLfixed z);
 ' =====================================================================================
 METHOD glVertex4xOES (BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4xOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4xOES(x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex2xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glVertex2xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex2xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex2xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex3xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glVertex3xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex3xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex3xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertex4xvOES (const GLfixed *coords);
 ' =====================================================================================
 METHOD glVertex4xvOES (BYREF coords AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertex4xvOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertex4xvOES(coords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDepthRangefOES (GLclampf n, GLclampf f);
 ' =====================================================================================
 METHOD glDepthRangefOES (BYVAL n AS SINGLE, BYVAL f AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangefOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangefOES(n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFrustumfOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
 ' =====================================================================================
 METHOD glFrustumfOES (BYVAL l AS SINGLE, BYVAL r AS SINGLE, BYVAL b AS SINGLE, BYVAL t AS SINGLE, BYVAL n AS SINGLE, BYVAL f AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFrustumfOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFrustumfOES(l, r, b, t, n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glOrthofOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
 ' =====================================================================================
 METHOD glOrthofOES (BYVAL l AS SINGLE, BYVAL r AS SINGLE, BYVAL b AS SINGLE, BYVAL t AS SINGLE, BYVAL n AS SINGLE, BYVAL f AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glOrthofOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glOrthofOES(l, r, b, t, n, f)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
 ' =====================================================================================
 METHOD glClipPlanefOES (BYVAL plane AS DWORD, BYREF equation AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClipPlanefOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClipPlanefOES(plane, equation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearDepthfOES (GLclampf depth);
 ' =====================================================================================
 METHOD glClearDepthfOES (BYVAL depth AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearDepthfOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearDepthfOES(depth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetClipPlanefOES (GLenum plane, GLfloat *equation);
 ' =====================================================================================
 METHOD glGetClipPlanefOES (BYVAL plane AS DWORD, BYREF equation AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetClipPlanefOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetClipPlanefOES(plane, equation)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLbitfield APIENTRY glQueryMatrixxOES (GLfixed *mantissa, GLint *exponent);
 ' =====================================================================================
 METHOD glQueryMatrixxOES (BYREF mantissa AS LONG, BYREF exponent AS LONG) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glQueryMatrixxOES")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glQueryMatrixxOES(mantissa, exponent) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthBoundsEXT (GLclampd zmin, GLclampd zmax);
 ' =====================================================================================
 METHOD glDepthBoundsEXT (BYVAL zmin AS DOUBLE, BYVAL zmax AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthBoundsEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthBoundsEXT(zmin, zmax)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationSeparateEXT (GLenum modeRGB, GLenum modeAlpha);
 ' =====================================================================================
 METHOD glBlendEquationSeparateEXT (BYVAL modeRGB AS DWORD, BYVAL modeAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationSeparateEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationSeparateEXT(modeRGB, modeAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsRenderbufferEXT (GLuint );
 ' =====================================================================================
 METHOD glIsRenderbufferEXT (BYVAL renderbuffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsRenderbufferEXT(renderbuffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindRenderbufferEXT (GLenum target, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glBindRenderbufferEXT (BYVAL dwTarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindRenderbufferEXT(dwTarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteRenderbuffersEXT (GLsizei n, const GLuint *renderbuffers);
 ' =====================================================================================
 METHOD glDeleteRenderbuffersEXT (BYVAL n AS LONG, BYREF renderbuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteRenderbuffersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteRenderbuffersEXT(n, renderbuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenRenderbuffersEXT (GLsizei n, GLuint *renderbuffers);
 ' =====================================================================================
 METHOD glGenRenderbuffersEXT (BYVAL n AS LONG, BYREF renderbuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenRenderbuffersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenRenderbuffersEXT(n, renderbuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRenderbufferStorageEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glRenderbufferStorageEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRenderbufferStorageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRenderbufferStorageEXT(dwTarget, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetRenderbufferParameterivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetRenderbufferParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetRenderbufferParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetRenderbufferParameterivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLboolean glIsFramebufferEXT (GLuint);
 ' typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);
 ' =====================================================================================
 METHOD glIsFramebufferEXT (BYVAL framebuffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsFramebufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsFramebufferEXT(framebuffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFramebufferEXT (GLenum target, GLuint framebuffer);
 ' =====================================================================================
 METHOD glBindFramebufferEXT (BYVAL dwTarget AS DWORD, BYVAL framebuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFramebufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFramebufferEXT(dwTarget, framebuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteFramebuffersEXT (GLsizei n, const GLuint *framebuffers);
 ' =====================================================================================
 METHOD glDeleteFramebuffersEXT (BYVAL n AS LONG, BYREF framebuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteFramebuffersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteFramebuffersEXT(n, framebuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenFramebuffersEXT (GLsizei n, GLuint *framebuffers);
 ' =====================================================================================
 METHOD glGenFramebuffersEXT (BYVAL n AS LONG, BYREF framebuffers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenFramebuffersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenFramebuffersEXT(n, framebuffers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glCheckFramebufferStatusEXT (GLenum target);
 ' =====================================================================================
 METHOD glCheckFramebufferStatusEXT (BYVAL dwTarget AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCheckFramebufferStatusEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCheckFramebufferStatusEXT(dwTarget) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture1DEXT (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTexture1DEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture1DEXT(dwTarget, dwAttachment, dwTexttarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture2DEXT (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTexture2DEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture2DEXT(dwTarget, dwAttachment, dwTexttarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTexture3DEXT (GLenum target, GLenum attachment, GLenum textarget,
 ' GLuint texture, GLint level, GLint zoffset);
 ' =====================================================================================
 METHOD glFramebufferTexture3DEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexttarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL zoffset AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTexture3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTexture3DEXT(dwTarget, dwAttachment, dwTexttarget, dwTexture, nLevel, zoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferRenderbufferEXT (GLenum target, GLenum attachment,
 ' GLenum renderbuffertarget, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glFramebufferRenderbufferEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL renderbuffertarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferRenderbufferEXT(dwTarget, dwAttachment, renderbuffertarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFramebufferAttachmentParameterivEXT (GLenum target, GLenum attachment,
 ' GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFramebufferAttachmentParameterivEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFramebufferAttachmentParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFramebufferAttachmentParameterivEXT(dwTarget, dwAttachment, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenerateMipmapEXT (GLenum target);
 ' =====================================================================================
 METHOD glGenerateMipmapEXT (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenerateMipmapEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenerateMipmapEXT(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStringMarkerGREMEDY (GLsizei len, const GLvoid *string);
 ' =====================================================================================
 METHOD glStringMarkerGREMEDY (BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStringMarkerGREMEDY")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStringMarkerGREMEDY(nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilClearTagEXT (GLsizei stencilTagBits, GLuint stencilClearTag);
 ' =====================================================================================
 METHOD glStencilClearTagEXT (BYVAL stencilTagBits AS LONG, BYVAL stencilClearTag AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilClearTagEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilClearTagEXT(stencilTagBits, stencilClearTag)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlitFramebufferEXT (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
 ' GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
 ' =====================================================================================
 METHOD glBlitFramebufferEXT (BYVAL srcX0 AS LONG, BYVAL srcY0 AS LONG, BYVAL srcX1 AS LONG, BYVAL srcY1 AS LONG, BYVAL dstX0 AS LONG, BYVAL dstY0 AS LONG, BYVAL dstX1 AS LONG, BYVAL dstY1 AS LONG, BYVAL dwMask AS DWORD, BYVAL dwFilter AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlitFramebufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, dwMask, dwFilter)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples,
 ' GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glRenderbufferStorageMultisampleEXT (BYVAL dwTarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRenderbufferStorageMultisampleEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRenderbufferStorageMultisampleEXT(dwTarget, samples, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64EXT *params);
 ' =====================================================================================
 METHOD glGetQueryObjecti64vEXT (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjecti64vEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjecti64vEXT(dwId, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetQueryObjectui64vEXT (BYVAL dwId AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetQueryObjectui64vEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetQueryObjectui64vEXT(dwid, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
 ' =====================================================================================
 METHOD glProgramEnvParameters4fvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameters4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameters4fvEXT(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
 ' =====================================================================================
 METHOD glProgramLocalParameters4fvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameters4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameters4fvEXT(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBufferParameteriAPPLE (GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glBufferParameteriAPPLE (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferParameteriAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferParameteriAPPLE(dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushMappedBufferRangeAPPLE (GLenum target, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glFlushMappedBufferRangeAPPLE (BYVAL dwTarget AS DWORD, BYVAL dwOffset AS DWORD, BYVAL nSize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushMappedBufferRangeAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushMappedBufferRangeAPPLE(dwTarget, dwOffset, nSize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glProgramLocalParameterI4iNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameterI4iNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameterI4iNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameterI4ivNV (GLenum target, GLuint index, const GLint *params);
 ' =====================================================================================
 METHOD glProgramLocalParameterI4ivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameterI4ivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameterI4ivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params);
 ' =====================================================================================
 METHOD glProgramLocalParametersI4ivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParametersI4ivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParametersI4ivNV(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
 ' =====================================================================================
 METHOD glProgramLocalParameterI4uiNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD, BYVAL w AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameterI4uiNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameterI4uiNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParameterI4uivNV (GLenum target, GLuint index, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramLocalParameterI4uivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParameterI4uivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParameterI4uivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramLocalParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramLocalParametersI4uivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramLocalParametersI4uivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramLocalParametersI4uivNV(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glProgramEnvParameterI4iNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameterI4iNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameterI4iNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameterI4ivNV (GLenum target, GLuint index, const GLint *params);
 ' =====================================================================================
 METHOD glProgramEnvParameterI4ivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameterI4ivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameterI4ivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params);
 ' =====================================================================================
 METHOD glProgramEnvParametersI4ivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParametersI4ivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParametersI4ivNV(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
 ' =====================================================================================
 METHOD glProgramEnvParameterI4uiNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD, BYVAL w AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameterI4uiNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameterI4uiNV(dwTarget, dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParameterI4uivNV (GLenum target, GLuint index, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramEnvParameterI4uivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParameterI4uivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParameterI4uivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramEnvParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramEnvParametersI4uivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramEnvParametersI4uivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramEnvParametersI4uivNV(dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramLocalParameterIivNV (GLenum target, GLuint index, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramLocalParameterIivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramLocalParameterIivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramLocalParameterIivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramLocalParameterIuivNV (GLenum target, GLuint index, GLuint *params);
 ' =====================================================================================
 METHOD glGetProgramLocalParameterIuivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramLocalParameterIuivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramLocalParameterIuivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramEnvParameterIivNV (GLenum target, GLuint index, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramEnvParameterIivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramEnvParameterIivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramEnvParameterIivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramEnvParameterIuivNV (GLenum target, GLuint index, GLuint *params);
 ' =====================================================================================
 METHOD glGetProgramEnvParameterIuivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramEnvParameterIuivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramEnvParameterIuivNV(dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramVertexLimitNV (GLenum target, GLint limit);
 ' =====================================================================================
 METHOD glProgramVertexLimitNV (BYVAL dwTarget AS DWORD, BYVAL nLimit AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramVertexLimitNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramVertexLimitNV(dwTarget, nLimit)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureEXT (GLenum target, GLenum attachment, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glFramebufferTextureEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureEXT(dwTarget, dwAttachment, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureLayerEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
 ' =====================================================================================
 METHOD glFramebufferTextureLayerEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL nLayer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureLayerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureLayerEXT(dwTarget, dwAttachment, dwTexture, nLevel, nLayer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferTextureFaceEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
 ' =====================================================================================
 METHOD glFramebufferTextureFaceEXT (BYVAL dwTarget AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL dwFace AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferTextureFaceEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferTextureFaceEXT(dwTarget, dwAttachment, dwTexture, nLevel, dwFace)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
 ' =====================================================================================
 METHOD glProgramParameteriEXT (BYVAL dwProgram AS DWORD, BYVAL pname AS DWORD, BYVAL value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramParameteriEXT(dwProgram, pname, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1iEXT (GLuint index, GLint x);
 ' =====================================================================================
 METHOD glVertexAttribI1iEXT (BYVAL dwIndex AS DWORD, BYVAL x AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1iEXT(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2iEXT (GLuint index, GLint x, GLint y);
 ' =====================================================================================
 METHOD glVertexAttribI2iEXT (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2iEXT(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3iEXT (GLuint index, GLint x, GLint y, GLint z);
 ' =====================================================================================
 METHOD glVertexAttribI3iEXT (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3iEXT(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4iEXT (GLuint index, GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glVertexAttribI4iEXT (BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4iEXT(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1uiEXT (GLuint index, GLuint x);
 ' =====================================================================================
 METHOD glVertexAttribI1uiEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1uiEXT(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2uiEXT (GLuint index, GLuint x, GLuint y);
 ' =====================================================================================
 METHOD glVertexAttribI2uiEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2uiEXT(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3uiEXT (GLuint index, GLuint x, GLuint y, GLuint z);
 ' =====================================================================================
 METHOD glVertexAttribI3uiEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3uiEXT(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4uiEXT (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
 ' =====================================================================================
 METHOD glVertexAttribI4uiEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD, BYVAL w AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4uiEXT(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1ivEXT (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI1ivEXT (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1ivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2ivEXT (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI2ivEXT (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2ivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3ivEXT (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI3ivEXT (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3ivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4ivEXT (GLuint index, const GLint *v);
 ' =====================================================================================
 METHOD glVertexAttribI4ivEXT (BYVAL dwIndex AS DWORD, BYREF v AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4ivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI1uivEXT (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI1uivEXT (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI1uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI1uivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI2uivEXT (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI2uivEXT (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI2uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI2uivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI3uivEXT (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI3uivEXT (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI3uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI3uivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4uivEXT (GLuint index, const GLuint *v);
 ' =====================================================================================
 METHOD glVertexAttribI4uivEXT (BYVAL dwIndex AS DWORD, BYREF v AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4uivEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glVertexAttribI4bvEXT (GLuint, const GLbyte *);
 ' typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v);
 ' =====================================================================================
 METHOD glVertexAttribI4bvEXT (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4bvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4bvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4svEXT (GLuint index, const GLshort *v);
 ' =====================================================================================
 METHOD glVertexAttribI4svEXT (BYVAL dwIndex AS DWORD, BYREF v AS INTEGER)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4svEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4svEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4ubvEXT (GLuint index, const GLubyte *v);
 ' =====================================================================================
 METHOD glVertexAttribI4ubvEXT (BYVAL dwIndex AS DWORD, BYREF v AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4ubvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4ubvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribI4usvEXT (GLuint index, const GLushort *v);
 ' =====================================================================================
 METHOD glVertexAttribI4usvEXT (BYVAL dwIndex AS DWORD, BYREF v AS WORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribI4usvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribI4usvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribIPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribIPointerEXT (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribIPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribIPointerEXT(dwIndex, nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribIivEXT (GLuint index, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribIivEXT (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribIivEXT(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribIuivEXT (GLuint index, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetVertexAttribIuivEXT (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribIuivEXT(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformuivEXT (GLuint program, GLint location, GLuint *params);
 ' =====================================================================================
 METHOD glGetUniformuivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformuivEXT(dwProgram, nLocation, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindFragDataLocationEXT (GLuint program, GLuint color, const GLchar *name);
 ' =====================================================================================
 METHOD glBindFragDataLocationEXT (BYVAL dwProgram AS DWORD, BYVAL dwColor AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindFragDataLocationEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindFragDataLocationEXT(dwProgram, dwColor, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetFragDataLocationEXT (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetFragDataLocationEXT (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetFragDataLocationEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFragDataLocationEXT(dwProgram, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glUniform1uiEXT (GLint, GLuint);
 ' typedef void (APIENTRYP PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0);
 ' =====================================================================================
 METHOD glUniform1uiEXT (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1uiEXT(nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2uiEXT (GLint location, GLuint v0, GLuint v1);
 ' =====================================================================================
 METHOD glUniform2uiEXT (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2uiEXT(nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2);
 ' =====================================================================================
 METHOD glUniform3uiEXT (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3uiEXT(nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
 ' =====================================================================================
 METHOD glUniform4uiEXT (BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD, BYVAL v3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4uiEXT(nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1uivEXT (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform1uivEXT (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1uivEXT(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2uivEXT (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform2uivEXT (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2uivEXT(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3uivEXT (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform3uivEXT (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3uivEXT(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4uivEXT (GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glUniform4uivEXT (BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4uivEXT(nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawArraysInstancedEXT (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawArraysInstancedEXT (BYVAL dwMode AS DWORD, BYVAL nStart AS LONG, BYVAL nCount AS LONG, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysInstancedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysInstancedEXT(dwMode, nStart, nCount, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsInstancedEXT (GLenum mode, GLsizei count, GLenum type,
 ' const GLvoid *indices, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawElementsInstancedEXT (BYVAL dwMode AS DWORD, BYVAL nCount AS LONG, BYVAL dwType AS DWORD, BYVAL indices AS DWORD, BYVAL primcount AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstancedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstancedEXT(dwMode, nCount, dwType, indices, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexBufferEXT (GLenum target, GLenum internalformat, GLuint buffer);
 ' =====================================================================================
 METHOD glTexBufferEXT (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBufferEXT(dwTarget, internalformat, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthRangedNV (GLdouble zNear, GLdouble zFar);
 ' =====================================================================================
 METHOD glDepthRangedNV (BYVAL zNear AS DOUBLE, BYVAL zFar AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthRangedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthRangedNV(zNear, zFar)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearDepthdNV (GLdouble depth);
 ' =====================================================================================
 METHOD glClearDepthdNV (BYVAL depth AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearDepthdNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearDepthdNV(depth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDepthBoundsdNV (GLdouble zmin, GLdouble zmax);
 ' =====================================================================================
 METHOD glDepthBoundsdNV (BYVAL zmin AS DOUBLE, BYVAL zmax AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDepthBoundsdNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDepthBoundsdNV(zmin, zmax)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glRenderbufferStorageMultisampleCoverageNV (GLenum target, GLsizei coverageSamples,
 ' GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glRenderbufferStorageMultisampleCoverageNV (BYVAL dwTarget AS DWORD, BYVAL coverageSamples AS LONG, BYVAL colorSamples AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glRenderbufferStorageMultisampleCoverageNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glRenderbufferStorageMultisampleCoverageNV(dwTarget, coverageSamples, colorSamples, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramBufferParametersfvNV (GLenum target, GLuint bindingIndex, GLuint wordIndex,
 ' GLsizei count, const GLfloat *params);
 ' =====================================================================================
 METHOD glProgramBufferParametersfvNV (BYVAL dwTarget AS DWORD, BYVAL bindingIndex AS DWORD, BYVAL wordIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramBufferParametersfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramBufferParametersfvNV(dwTarget, bindingIndex, wordIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramBufferParametersIivNV (GLenum target, GLuint bindingIndex, GLuint wordIndex,
 ' GLsizei count, const GLint *params);
 ' =====================================================================================
 METHOD glProgramBufferParametersIivNV (BYVAL dwTarget AS DWORD, BYVAL bindingIndex AS DWORD, BYVAL wordIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramBufferParametersIivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramBufferParametersIivNV(dwTarget, bindingIndex, wordIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramBufferParametersIuivNV (GLenum target, GLuint bindingIndex, GLuint wordIndex,
 ' GLsizei count, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramBufferParametersIuivNV (BYVAL dwTarget AS DWORD, BYVAL bindingIndex AS DWORD, BYVAL wordIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramBufferParametersIuivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramBufferParametersIuivNV(dwTarget, bindingIndex, wordIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorMaskIndexedEXT (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
 ' =====================================================================================
 METHOD glColorMaskIndexedEXT (BYVAL dwIndex AS DWORD, BYVAL r AS BYTE, BYVAL g AS BYTE, BYVAL b AS BYTE, BYVAL a AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorMaskIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorMaskIndexedEXT(dwIndex, r, g, b, a)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBooleanIndexedvEXT (GLenum target, GLuint index, GLboolean *data);
 ' =====================================================================================
 METHOD glGetBooleanIndexedvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF pData AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBooleanIndexedvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBooleanIndexedvEXT(dwTarget, dwIndex, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetIntegerIndexedvEXT (GLenum target, GLuint index, GLint *data);
 ' =====================================================================================
 METHOD glGetIntegerIndexedvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF pData AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetIntegerIndexedvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetIntegerIndexedvEXT(dwTarget, dwIndex, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnableIndexedEXT (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glEnableIndexedEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableIndexedEXT(dwTarget, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisableIndexedEXT (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glDisableIndexedEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableIndexedEXT(dwTarget, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsEnabledIndexedEXT (GLenum target, GLuint index);
 ' =====================================================================================
 METHOD glIsEnabledIndexedEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsEnabledIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsEnabledIndexedEXT(dwTarget, dwIndex) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginTransformFeedbackNV (GLenum primitiveMode);
 ' =====================================================================================
 METHOD glBeginTransformFeedbackNV (BYVAL primitiveMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginTransformFeedbackNV(primitiveMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glEndTransformFeedbackNV (void);
 ' typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKNVPROC) (void);
 ' =====================================================================================
 METHOD glEndTransformFeedbackNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndTransformFeedbackNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTransformFeedbackAttribsNV (GLuint count, const GLint *attribs, GLenum bufferMode);
 ' =====================================================================================
 METHOD glTransformFeedbackAttribsNV (BYVAL dwcount AS DWORD, BYREF attribs AS LONG, BYVAL bufferMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTransformFeedbackAttribsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTransformFeedbackAttribsNV(dwcount, attribs, bufferMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferRangeNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glBindBufferRangeNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL nSize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferRangeNV(dwTarget, dwIndex, buffer, dwOffset, nSize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferOffsetNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
 ' =====================================================================================
 METHOD glBindBufferOffsetNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferOffsetNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferOffsetNV(dwTarget, dwIndex, buffer, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferBaseNV (GLenum target, GLuint index, GLuint buffer);
 ' =====================================================================================
 METHOD glBindBufferBaseNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferBaseNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferBaseNV(dwTarget, dwIndex, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTransformFeedbackVaryingsNV (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
 ' =====================================================================================
 METHOD glTransformFeedbackVaryingsNV (BYVAL dwProgram AS DWORD, BYVAL nCount AS LONG, BYREF locations AS LONG, BYVAL bufferMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTransformFeedbackVaryingsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTransformFeedbackVaryingsNV(dwProgram, nCount, locations, bufferMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glActiveVaryingNV (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glActiveVaryingNV (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveVaryingNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveVaryingNV(dwProgram, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetVaryingLocationNV (GLuint program, const GLchar *name);
 ' =====================================================================================
 METHOD glGetVaryingLocationNV (BYVAL dwProgram AS DWORD, BYREF szName AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetVaryingLocationNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVaryingLocationNV(dwProgram, szName) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveVaryingNV (GLuint program, GLuint index, GLsizei bufSize,
 ' GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
 ' =====================================================================================
 METHOD glGetActiveVaryingNV (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF nSize AS LONG, BYREF dwType AS DWORD, BYREF szName AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveVaryingNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveVaryingNV(dwProgram, dwIndex, bufSize, nLength, nSize, dwType, szName)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glGetTransformFeedbackVaryingNV (GLuint, GLuint, GLint *);
 ' typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location);
 ' =====================================================================================
 METHOD glGetTransformFeedbackVaryingNV (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYREF location AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTransformFeedbackVaryingNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTransformFeedbackVaryingNV(dwProgram, dwIndex, location)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformBufferEXT (GLuint program, GLint location, GLuint buffer);
 ' =====================================================================================
 METHOD glUniformBufferEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformBufferEXT(dwProgram, nLocation, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLint glGetUniformBufferSizeEXT (GLuint program, GLint location);
 ' =====================================================================================
 METHOD glGetUniformBufferSizeEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetUniformBufferSizeEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformBufferSizeEXT(dwProgram, nLocation) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLintptr glGetUniformOffsetEXT (GLuint program, GLint location);
 ' =====================================================================================
 METHOD glGetUniformOffsetEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetUniformOffsetEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformOffsetEXT(dwProgram, nLocation) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexParameterIivEXT (GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glTexParameterIivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterIivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexParameterIuivEXT (GLenum target, GLenum pname, const GLuint *params);
 ' =====================================================================================
 METHOD glTexParameterIuivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexParameterIuivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexParameterIivEXT (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTexParameterIivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterIivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexParameterIuivEXT (GLenum target, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetTexParameterIuivEXT (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterIuivEXT(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearColorIiEXT (GLint red, GLint green, GLint blue, GLint alpha);
 ' =====================================================================================
 METHOD glClearColorIiEXT (BYVAL red AS LONG, BYVAL green AS LONG, BYVAL blue AS LONG, BYVAL alpha AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearColorIiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearColorIiEXT(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClearColorIuiEXT (GLuint red, GLuint green, GLuint blue, GLuint alpha);
 ' =====================================================================================
 METHOD glClearColorIuiEXT (BYVAL red AS DWORD, BYVAL green AS DWORD, BYVAL blue AS DWORD, BYVAL alpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearColorIuiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearColorIuiEXT(red, green, blue, alpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glFrameTerminatorGREMEDY (void);
 ' typedef void (APIENTRYP PFNGLFRAMETERMINATORGREMEDYPROC) (void);
 ' =====================================================================================
 METHOD glFrameTerminatorGREMEDY
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFrameTerminatorGREMEDY")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFrameTerminatorGREMEDY
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginConditionalRenderNV (GLuint id, GLenum mode);
 ' =====================================================================================
 METHOD glBeginConditionalRenderNV (BYVAL dwId AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginConditionalRenderNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginConditionalRenderNV(dwId, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndConditionalRenderNV (void);
 ' =====================================================================================
 METHOD glEndConditionalRenderNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndConditionalRenderNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndConditionalRenderNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPresentFrameKeyedNV (GLuint video_slot, GLuint64EXT minPresentTime,
 ' GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0,
 ' GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1);
 ' =====================================================================================
 METHOD glPresentFrameKeyedNV (BYVAL video_slot AS DWORD, BYVAL minPresentTime AS QUAD, BYVAL beginPresentTimeId AS DWORD, BYVAL presentDurationId AS DWORD, BYVAL dwType AS DWORD, BYVAL target0 AS DWORD, BYVAL fill0 AS DWORD, BYVAL key0 AS DWORD, BYVAL target1 AS DWORD, BYVAL fill1 AS DWORD, BYVAL key1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPresentFrameKeyedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPresentFrameKeyedNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, dwType, target0, fill0, key0, target1, fill1, key1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPresentFrameDualFillNV (GLuint video_slot, GLuint64EXT minPresentTime,
 ' GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0,
 ' GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3);
 ' =====================================================================================
 METHOD glPresentFrameDualFillNV (BYVAL video_slot AS DWORD, BYVAL minPresentTime AS QUAD, BYVAL beginPresentTimeId AS DWORD, BYVAL presentDurationId AS DWORD, BYVAL dwType AS DWORD, BYVAL target0 AS DWORD, BYVAL fill0 AS DWORD, BYVAL target1 AS DWORD, BYVAL fill1 AS DWORD, BYVAL target2 AS DWORD, BYVAL fill2 AS DWORD, BYVAL target3 AS DWORD, BYVAL fill3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPresentFrameDualFillNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPresentFrameDualFillNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, dwType, target0, fill0, target1, fill1, target2, fill2, target3, fill3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoivNV (GLuint video_slot, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVideoivNV (BYVAL video_slot AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoivNV(video_slot, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideouivNV (GLuint video_slot, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetVideouivNV (BYVAL video_slot AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideouivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideouivNV(video_slot, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoi64vNV (GLuint video_slot, GLenum pname, GLint64EXT *params);
 ' =====================================================================================
 METHOD glGetVideoi64vNV (BYVAL video_slot AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoi64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoi64vNV(video_slot, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoui64vNV (GLuint video_slot, GLenum pname, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetVideoui64vNV (BYVAL video_slot AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoui64vNV(video_slot, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginTransformFeedbackEXT (GLenum primitiveMode);
 ' =====================================================================================
 METHOD glBeginTransformFeedbackEXT (BYVAL primitiveMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginTransformFeedbackEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginTransformFeedbackEXT(primitiveMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndTransformFeedbackEXT (void);
 ' =====================================================================================
 METHOD glEndTransformFeedbackEXT
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndTransformFeedbackEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndTransformFeedbackEXT
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferRangeEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glBindBufferRangeEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL nSize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferRangeEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferRangeEXT(dwTarget, dwIndex, buffer, dwOffset, nSize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferOffsetEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
 ' =====================================================================================
 METHOD glBindBufferOffsetEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferOffsetEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferOffsetEXT(dwTarget, dwIndex, buffer, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindBufferBaseEXT (GLenum target, GLuint index, GLuint buffer);
 ' =====================================================================================
 METHOD glBindBufferBaseEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindBufferBaseEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindBufferBaseEXT(dwTarget, dwIndex, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTransformFeedbackVaryingsEXT (GLuint program, GLsizei count,
 ' const GLint *, GLenum bufferMode);
 ' =====================================================================================
 METHOD glTransformFeedbackVaryingsEXT (BYVAL dwProgram AS DWORD, BYVAL nCount AS LONG, BYREF locations AS LONG, BYVAL bufferMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTransformFeedbackVaryingsEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTransformFeedbackVaryingsEXT(dwProgram, nCount, locations, bufferMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTransformFeedbackVaryingEXT (GLuint program, GLuint index, GLint *location);
 ' =====================================================================================
 METHOD glGetTransformFeedbackVaryingEXT (BYVAL dwProgram AS DWORD, BYVAL dwIndex AS DWORD, BYREF location AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTransformFeedbackVaryingEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTransformFeedbackVaryingEXT(dwProgram, dwIndex, location)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glClientAttribDefaultEXT (GLbitfield mask);
 ' =====================================================================================
 METHOD glClientAttribDefaultEXT (BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClientAttribDefaultEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClientAttribDefaultEXT(dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPushClientAttribDefaultEXT (GLbitfield mask);
 ' =====================================================================================
 METHOD glPushClientAttribDefaultEXT (BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPushClientAttribDefaultEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPushClientAttribDefaultEXT(dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixLoadfEXT (GLenum mode, const GLfloat *m);
 ' =====================================================================================
 METHOD glMatrixLoadfEXT (BYVAL dwMode AS DWORD, BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixLoadfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixLoadfEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixLoaddEXT (GLenum mode, const GLdouble *m);
 ' =====================================================================================
 METHOD glMatrixLoaddEXT (BYVAL dwMode AS DWORD, BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixLoaddEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixLoaddEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixMultfEXT (GLenum mode, const GLfloat *m);
 ' =====================================================================================
 METHOD glMatrixMultfEXT (BYVAL dwMode AS DWORD, BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixMultfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixMultfEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixMultdEXT (GLenum mode, const GLdouble *m);
 ' =====================================================================================
 METHOD glMatrixMultdEXT (BYVAL dwMode AS DWORD, BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixMultdEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixMultdEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixLoadIdentityEXT (GLenum mode);
 ' =====================================================================================
 METHOD glMatrixLoadIdentityEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixLoadIdentityEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixLoadIdentityEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixRotatefEXT (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glMatrixRotatefEXT (BYVAL dwMode AS DWORD, BYVAL angle AS SINGLE, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixRotatefEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixRotatefEXT(dwMode, angle, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixRotatedEXT (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glMatrixRotatedEXT (BYVAL dwMode AS DWORD, BYVAL angle AS DOUBLE, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixRotatedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixRotatedEXT(dwMode, angle, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixScalefEXT (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glMatrixScalefEXT (BYVAL dwMode AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixScalefEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixScalefEXT(dwMode, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixScaledEXT (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glMatrixScaledEXT (BYVAL dwMode AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixScaledEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixScaledEXT(dwMode, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixTranslatefEXT (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
 ' =====================================================================================
 METHOD glMatrixTranslatefEXT (BYVAL dwMode AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixTranslatefEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixTranslatefEXT(dwMode, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixTranslatedEXT (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glMatrixTranslatedEXT (BYVAL dwMode AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixTranslatedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixTranslatedEXT(dwMode, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixFrustumEXT (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom,
 ' GLdouble top, GLdouble zNear, GLdouble zFar);
 ' =====================================================================================
 METHOD glMatrixFrustumEXT (BYVAL dwMode AS DWORD, BYVAL nLeft AS DOUBLE, BYVAL nRight AS DOUBLE, BYVAL nBottom AS DOUBLE, BYVAL nTop AS DOUBLE, BYVAL zNear AS DOUBLE, BYVAL zFar AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixFrustumEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixFrustumEXT(dwMode, nLeft, nRight, nBottom, nTop, zNear, zFar)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixOrthoEXT (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom,
 ' GLdouble top, GLdouble zNear, GLdouble zFar);
 ' =====================================================================================
 METHOD glMatrixOrthoEXT (BYVAL dwMode AS DWORD, BYVAL nLeft AS DOUBLE, BYVAL nRight AS DOUBLE, BYVAL nBottom AS DOUBLE, BYVAL nTop AS DOUBLE, BYVAL zNear AS DOUBLE, BYVAL zFar AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixOrthoEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixOrthoEXT(dwMode, nLeft, nRight, nBottom, nTop, zNear, zFar)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glMatrixPopEXT (GLenum);
 ' typedef void (APIENTRYP PFNGLMATRIXPOPEXTPROC) (GLenum mode);
 ' =====================================================================================
 METHOD glMatrixPopEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixPopEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixPopEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixPushEXT (GLenum mode);
 ' =====================================================================================
 METHOD glMatrixPushEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixPushEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixPushEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixLoadTransposefEXT (GLenum mode, const GLfloat *m);
 ' =====================================================================================
 METHOD glMatrixLoadTransposefEXT (BYVAL dwMode AS DWORD, BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixLoadTransposefEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixLoadTransposefEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixLoadTransposedEXT (GLenum mode, const GLdouble *m);
 ' =====================================================================================
 METHOD glMatrixLoadTransposedEXT (BYVAL dwMode AS DWORD, BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixLoadTransposedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixLoadTransposedEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixMultTransposefEXT (GLenum mode, const GLfloat *m);
 ' =====================================================================================
 METHOD glMatrixMultTransposefEXT (BYVAL dwMode AS DWORD, BYREF m AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixMultTransposefEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixMultTransposefEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMatrixMultTransposedEXT (GLenum mode, const GLdouble *m);
 ' =====================================================================================
 METHOD glMatrixMultTransposedEXT (BYVAL dwMode AS DWORD, BYREF m AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMatrixMultTransposedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMatrixMultTransposedEXT(dwMode, m)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameterfEXT (GLuint texture, GLenum target, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glTextureParameterfEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameterfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameterfEXT(dwTexture, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glTextureParameterfvEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameterfvEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameteriEXT (GLuint texture, GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glTextureParameteriEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameteriEXT(dwTexture, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glTextureParameterivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameterivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage1DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type,
 ' const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage1DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nBorder, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage2DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLint border,
 ' GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage2DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nBorder, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset,
 ' GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureSubImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureSubImage1DEXT(dwTexture, dwTarget, nLevel, xoffset, nWidth, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureSubImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureSubImage2DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTextureImage1DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
 ' =====================================================================================
 METHOD glCopyTextureImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTextureImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTextureImage1DEXT(dwTexture, dwTarget, nLevel, internalformat, x, y, nWidth, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTextureImage2DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 ' =====================================================================================
 METHOD glCopyTextureImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTextureImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTextureImage2DEXT(dwTexture, dwTarget, nLevel, internalformat, x, y, nWidth, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyTextureSubImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTextureSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTextureSubImage1DEXT(dwTexture, dwTarget, nLevel, xoffset, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyTextureSubImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTextureSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTextureSubImage2DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureImageEXT (GLuint texture, GLenum target, GLint level, GLenum format,
 ' GLenum type, GLvoid *pixels);
 ' =====================================================================================
 METHOD glGetTextureImageEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureImageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureImageEXT(dwTexture, dwTarget, nLevel, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetTextureParameterfvEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureParameterfvEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTextureParameterivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureParameterivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureLevelParameterfvEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetTextureLevelParameterfvEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureLevelParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureLevelParameterfvEXT(dwTexture, dwTarget, nLevel, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureLevelParameterivEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTextureLevelParameterivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureLevelParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureLevelParameterivEXT(dwTexture, dwTarget, nLevel, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage3DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth,
 ' GLint border, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureImage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage3DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset,
 ' GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth,
 ' GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glTextureSubImage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureSubImage3DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyTextureSubImage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyTextureSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyTextureSubImage3DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, zoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameterfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glMultiTexParameterfEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameterfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameterfEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glMultiTexParameterfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameterfvEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameteriEXT (GLenum texunit, GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glMultiTexParameteriEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameteriEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glMultiTexParameterivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameterivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLint border, GLenum format,
 ' GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexImage1DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nBorder, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLint border,
 ' GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexImage2DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nHeight, nBorder, dwFormat, dwType, ppixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset,
 ' GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexSubImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexSubImage1DEXT(dwTexunit, dwTarget, nLevel, xoffset, nWidth, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
 ' GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexSubImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexSubImage2DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
 ' =====================================================================================
 METHOD glCopyMultiTexImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyMultiTexImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyMultiTexImage1DEXT(dwTexunit, dwTarget, nLevel, internalformat, x, y, nWidth, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 ' =====================================================================================
 METHOD glCopyMultiTexImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyMultiTexImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyMultiTexImage2DEXT(dwTexunit, dwTarget, nLevel, internalformat, x, y, nWidth, nHeight, nBorder)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint x, GLint y, GLsizei width);
 ' =====================================================================================
 METHOD glCopyMultiTexSubImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyMultiTexSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyMultiTexSubImage1DEXT(dwTexunit, dwTarget, nLevel, xoffset, x, y, nWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyMultiTexSubImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyMultiTexSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyMultiTexSubImage2DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexImageEXT (GLenum texunit, GLenum target, GLint level, GLenum format,
 ' GLenum type, GLvoid *pixels);
 ' =====================================================================================
 METHOD glGetMultiTexImageEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexImageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexImageEXT(dwTexunit, dwTarget, nLevel, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMultiTexParameterfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexParameterfvEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMultiTexParameterivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexParameterivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexLevelParameterfvEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMultiTexLevelParameterfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexLevelParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexLevelParameterfvEXT(dwTexunit, dwTarget, nLevel, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexLevelParameterivEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMultiTexLevelParameterivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexLevelParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexLevelParameterivEXT(dwTexunit, dwTarget, nLevel, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth,
 ' GLint border, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexImage3DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexImage3DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height,
 ' GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
 ' =====================================================================================
 METHOD glMultiTexSubImage3DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL dwType AS DWORD, BYVAL pPixels AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexSubImage3DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, dwType, pPixels)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glCopyMultiTexSubImage3DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyMultiTexSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyMultiTexSubImage3DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, zoffset, x, y, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glBindMultiTextureEXT (GLenum, GLenum, GLuint);
 ' typedef void (APIENTRYP PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture);
 ' =====================================================================================
 METHOD glBindMultiTextureEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindMultiTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindMultiTextureEXT(dwTexunit, dwTarget, dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnableClientStateIndexedEXT (GLenum array, GLuint index);
 ' =====================================================================================
 METHOD glEnableClientStateIndexedEXT (BYVAL dwArray AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableClientStateIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableClientStateIndexedEXT(dwArray, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisableClientStateIndexedEXT (GLenum array, GLuint index);
 ' =====================================================================================
 METHOD glDisableClientStateIndexedEXT (BYVAL dwArray AS DWORD, BYVAL dwIndex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableClientStateIndexedEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableClientStateIndexedEXT(dwArray, dwIndex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexCoordPointerEXT (GLenum texunit, GLint size, GLenum type, GLsizei stride,
 ' const GLvoid *pointer);
 ' =====================================================================================
 METHOD glMultiTexCoordPointerEXT (BYVAL dwTexunit AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL nStride AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexCoordPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexCoordPointerEXT(dwTexunit, nSize, dwType, nStride, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexEnvfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glMultiTexEnvfEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexEnvfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexEnvfEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glMultiTexEnvfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexEnvfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexEnvfvEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexEnviEXT (GLenum texunit, GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glMultiTexEnviEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexEnviEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexEnviEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glMultiTexEnvivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexEnvivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexEnvivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGendEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
 ' =====================================================================================
 METHOD glMultiTexGendEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGendEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGendEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLdouble *params);
 ' =====================================================================================
 METHOD glMultiTexGendvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF param AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGendvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGendvEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGenfEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
 ' =====================================================================================
 METHOD glMultiTexGenfEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGenfEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGenfEXT(dwTexunit, dwTarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glMultiTexGenfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGenfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGenfvEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGeniEXT (GLenum texunit, GLenum coord, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glMultiTexGeniEXT (BYVAL dwTexunit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGeniEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGeniEXT(dwTexunit, dwCoord, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glMultiTexGenivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexGenivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexGenivEXT(dwTexunit, dwCoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMultiTexEnvfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexEnvfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexEnvfvEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMultiTexEnvivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexEnvivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexEnvivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetMultiTexGendvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexGendvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexGendvEXT(dwTexunit, dwCoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetMultiTexGenfvEXT (BYVAL dwTexunit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexGenfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexGenfvEXT(dwTexunit, dwCoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMultiTexGenivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwCoord AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexGenivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexGenivEXT(dwTexunit, dwCoord, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFloatIndexedvEXT (GLenum target, GLuint index, GLfloat *data);
 ' =====================================================================================
 METHOD glGetFloatIndexedvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF pData AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFloatIndexedvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFloatIndexedvEXT(dwTarget, dwIndex, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetDoubleIndexedvEXT (GLenum target, GLuint index, GLdouble *data);
 ' =====================================================================================
 METHOD glGetDoubleIndexedvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF pData AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetDoubleIndexedvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDoubleIndexedvEXT(dwTarget, dwIndex, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPointerIndexedvEXT (GLenum target, GLuint index, GLvoid* *data);
 ' =====================================================================================
 METHOD glGetPointerIndexedvEXT (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPointerIndexedvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPointerIndexedvEXT(dwTarget, dwIndex, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureImage3DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border,
 ' GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureImage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureImage3DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureImage2DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize,
 ' const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureImage2DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nHeight, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureImage1DEXT (GLuint texture, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureImage1DEXT(dwTexture, dwTarget, nLevel, internalformat, nWidth, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height,
 ' GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureSubImage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureSubImage3DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
 ' GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureSubImage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureSubImage2DEXT(dwTexture, dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level,
 ' GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedTextureSubImage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedTextureSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedTextureSubImage1DEXT(dwTexture, dwTarget, nLevel, xoffset, nWidth, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCompressedTextureImageEXT (GLuint texture, GLenum target, GLint lod, GLvoid *img);
 ' =====================================================================================
 METHOD glGetCompressedTextureImageEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL lod AS LONG, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCompressedTextureImageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCompressedTextureImageEXT(dwTexture, dwTarget, lod, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border,
 ' GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexImage3DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexImage3DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nHeight, nDepth, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize,
 ' const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexImage2DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nHeight, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nBorder AS LONG, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexImage1DEXT(dwTexunit, dwTarget, nLevel, internalformat, nWidth, nBorder, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void (glCompressedMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height,
 ' GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexSubImage3DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexSubImage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexSubImage3DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, zoffset, nWidth, nHeight, nDepth, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
 ' GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexSubImage2DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexSubImage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexSubImage2DEXT(dwTexunit, dwTarget, nLevel, xoffset, yoffset, nWidth, nHeight, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCompressedMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level,
 ' GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
 ' =====================================================================================
 METHOD glCompressedMultiTexSubImage1DEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL nLevel AS LONG, BYVAL xoffset AS LONG, BYVAL nWidth AS LONG, BYVAL dwFormat AS DWORD, BYVAL imageSize AS LONG, BYVAL pbits AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCompressedMultiTexSubImage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCompressedMultiTexSubImage1DEXT(dwTexunit, dwTarget, nLevel, xoffset, nWidth, dwFormat, imageSize, pbits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetCompressedMultiTexImageEXT (GLenum texunit, GLenum target, GLint lod, GLvoid *img);
 ' =====================================================================================
 METHOD glGetCompressedMultiTexImageEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL lod AS LONG, BYVAL pImg AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetCompressedMultiTexImageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetCompressedMultiTexImageEXT(dwTexunit, dwTarget, lod, pImg)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramStringEXT (GLuint program, GLenum target, GLenum format,
 ' GLsizei len, const GLvoid *string);
 ' =====================================================================================
 METHOD glNamedProgramStringEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwFormat AS DWORD, BYVAL nLen AS LONG, BYVAL pstring AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramStringEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramStringEXT(dwProgram, dwTarget, dwFormat, nLen, pstring)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameter4dEXT (GLuint program, GLenum target, GLuint index,
 ' GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameter4dEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameter4dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameter4dEXT(dwProgram, dwTarget, dwIndex, x, y, x, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameter4dvEXT (GLuint program, GLenum target, GLuint index,
 ' const GLdouble *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameter4dvEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameter4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameter4dvEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameter4fEXT (GLuint program, GLenum target, GLuint index,
 ' GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameter4fEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE, BYVAL z AS SINGLE, BYVAL w AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameter4fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameter4fEXT(dwProgram, dwTarget, dwIndex, x, y, x, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameter4fvEXT (GLuint program, GLenum target, GLuint index,
 ' const GLfloat *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameter4fvEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameter4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameter4fvEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramLocalParameterdvEXT (GLuint program, GLenum target, GLuint index, GLdouble *params);
 ' =====================================================================================
 METHOD glGetNamedProgramLocalParameterdvEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramLocalParameterdvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramLocalParameterdvEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramLocalParameterfvEXT (GLuint program, GLenum target, GLuint index, GLfloat *params);
 ' =====================================================================================
 METHOD glGetNamedProgramLocalParameterfvEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramLocalParameterfvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramLocalParameterfvEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramivEXT (GLuint program, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedProgramivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramivEXT(dwProgram, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramStringEXT (GLuint program, GLenum target, GLenum pname, GLvoid *string);
 ' =====================================================================================
 METHOD glGetNamedProgramStringEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL pstring AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramStringEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramStringEXT(dwProgram, dwTarget, pname, pstring)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameters4fvEXT (GLuint program, GLenum target, GLuint index,
 ' GLsizei count, const GLfloat *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameters4fvEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameters4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameters4fvEXT(dwProgram, dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameterI4iEXT (GLuint program, GLenum target, GLuint index,
 ' GLint x, GLint y, GLint z, GLint w);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameterI4iEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL z AS LONG, BYVAL w AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameterI4iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameterI4iEXT(dwProgram, dwTarget, dwIndex, x, y, x, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameterI4ivEXT (GLuint program, GLenum target, GLuint index, const GLint *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameterI4ivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameterI4ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameterI4ivEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParametersI4ivEXT (GLuint program, GLenum target, GLuint index,
 ' GLsizei count, const GLint *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParametersI4ivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParametersI4ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParametersI4ivEXT(dwProgram, dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameterI4uiEXT (GLuint program, GLenum target, GLuint index,
 ' GLuint x, GLuint y, GLuint z, GLuint w);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameterI4uiEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL x AS DWORD, BYVAL y AS DWORD, BYVAL z AS DWORD, BYVAL w AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameterI4uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameterI4uiEXT(dwProgram, dwTarget, dwIndex, x, y, x, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParameterI4uivEXT (GLuint program, GLenum target, GLuint index, const GLuint *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParameterI4uivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParameterI4uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParameterI4uivEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedProgramLocalParametersI4uivEXT (GLuint program, GLenum target, GLuint index,
 ' GLsizei count, const GLuint *params);
 ' =====================================================================================
 METHOD glNamedProgramLocalParametersI4uivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nCount AS LONG, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedProgramLocalParametersI4uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedProgramLocalParametersI4uivEXT(dwProgram, dwTarget, dwIndex, nCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramLocalParameterIivEXT (GLuint program, GLenum target, GLuint index, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedProgramLocalParameterIivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramLocalParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramLocalParameterIivEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedProgramLocalParameterIuivEXT (GLuint program, GLenum target, GLuint index, GLuint *params);
 ' =====================================================================================
 METHOD glGetNamedProgramLocalParameterIuivEXT (BYVAL dwProgram AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedProgramLocalParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedProgramLocalParameterIuivEXT(dwProgram, dwTarget, dwIndex, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glTextureParameterIivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameterIivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, const GLuint *params);
 ' =====================================================================================
 METHOD glTextureParameterIuivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureParameterIuivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetTextureParameterIivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureParameterIivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetTextureParameterIuivEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTextureParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureParameterIuivEXT(dwTexture, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glMultiTexParameterIivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameterIivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, const GLuint *params);
 ' =====================================================================================
 METHOD glMultiTexParameterIuivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexParameterIuivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetMultiTexParameterIivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexParameterIivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexParameterIivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, GLuint *params);
 ' =====================================================================================
 METHOD glGetMultiTexParameterIuivEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultiTexParameterIuivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultiTexParameterIuivEXT(dwTexunit, dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1fEXT (GLuint program, GLint location, GLfloat v0);
 ' =====================================================================================
 METHOD glProgramUniform1fEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1fEXT(dwProgram, nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1);
 ' =====================================================================================
 METHOD glProgramUniform2fEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2fEXT(dwProgram, nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
 ' =====================================================================================
 METHOD glProgramUniform3fEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3fEXT(dwProgram, nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
 ' =====================================================================================
 METHOD glProgramUniform4fEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS SINGLE, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL v3 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4fEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4fEXT(dwProgram, nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1iEXT (GLuint program, GLint location, GLint v0);
 ' =====================================================================================
 METHOD glProgramUniform1iEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1iEXT(dwProgram, nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glProgramUniform2iEXT (GLuint, GLint, GLint, GLint);
 ' typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location,
 ' GLint v0, GLint v1);
 ' =====================================================================================
 METHOD glProgramUniform2iEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2iEXT(dwProgram, nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
 ' =====================================================================================
 METHOD glProgramUniform3iEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3iEXT(dwProgram, nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
 ' =====================================================================================
 METHOD glProgramUniform4iEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS LONG, BYVAL v1 AS LONG, BYVAL v2 AS LONG, BYVAL v3 AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4iEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4iEXT(dwProgram, nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform1fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1fvEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform2fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2fvEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform3fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3fvEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniform4fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4fvEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform1ivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1ivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform2ivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2ivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform3ivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3ivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
 ' =====================================================================================
 METHOD glProgramUniform4ivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4ivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4ivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x3fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x3fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x3fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x2fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x2fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x2fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x2fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x4fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x4fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x4fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x2fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x2fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x2fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x2fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x4fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x4fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x4fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x4fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x3fvEXT (GLuint program, GLint location, GLsizei count,
 ' GLboolean transpose, const GLfloat *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x3fvEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYVAL bTranspose AS BYTE, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x3fvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x3fvEXT(dwProgram, nLocation, nCount, bTranspose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1uiEXT (GLuint program, GLint location, GLuint v0);
 ' =====================================================================================
 METHOD glProgramUniform1uiEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1uiEXT(dwProgram, nLocation, v0)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1);
 ' =====================================================================================
 METHOD glProgramUniform2uiEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2uiEXT(dwProgram, nLocation, v0, v1)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
 ' =====================================================================================
 METHOD glProgramUniform3uiEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3uiEXT(dwProgram, nLocation, v0, v1, v2)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
 ' =====================================================================================
 METHOD glProgramUniform4uiEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL v0 AS DWORD, BYVAL v1 AS DWORD, BYVAL v2 AS DWORD, BYVAL v3 AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4uiEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4uiEXT(dwProgram, nLocation, v0, v1, v2, v3)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform1uivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1uivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform2uivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2uivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform3uivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3uivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
 ' =====================================================================================
 METHOD glProgramUniform4uivEXT (BYVAL dwProgram AS DWORD, BYVAL nLocation AS LONG, BYVAL nCount AS LONG, BYREF value AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4uivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4uivEXT(dwProgram, nLocation, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedBufferDataEXT (GLuint buffer, GLsizeiptr size, const GLvoid *data, GLenum usage);
 ' =====================================================================================
 METHOD glNamedBufferDataEXT (BYVAL buffer AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD, BYVAL dwUsage AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedBufferDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedBufferDataEXT(buffer, dwSize, pData, dwUsage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid *data);
 ' =====================================================================================
 METHOD glNamedBufferSubDataEXT (BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedBufferSubDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedBufferSubDataEXT(buffer, dwOffset, dwSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvoid* glMapNamedBufferEXT (GLuint buffer, GLenum access);
 ' =====================================================================================
 METHOD glMapNamedBufferEXT (BYVAL buffer AS DWORD, BYVAL dwAccess AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapNamedBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapNamedBufferEXT(buffer, dwAccess) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glUnmapNamedBufferEXT (GLuint buffer);
 ' =====================================================================================
 METHOD glUnmapNamedBufferEXT (BYVAL buffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glUnmapNamedBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnmapNamedBufferEXT(buffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvoid* glMapNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
 ' =====================================================================================
 METHOD glMapNamedBufferRangeEXT (BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwLength AS DWORD, BYVAL dwAccess AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapNamedBufferRangeEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapNamedBufferRangeEXT(buffer, dwOffset, dwLength, dwAccess) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFlushMappedNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length);
 ' =====================================================================================
 METHOD glFlushMappedNamedBufferRangeEXT (BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwLength AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFlushMappedNamedBufferRangeEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFlushMappedNamedBufferRangeEXT(buffer, dwOffset, dwLength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedCopyBufferSubDataEXT (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glNamedCopyBufferSubDataEXT (BYVAL readBuffer AS DWORD, BYVAL writeBuffer AS DWORD, BYVAL readOffset AS DWORD, BYVAL writeOffset AS DWORD, BYVAL psize AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedCopyBufferSubDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedCopyBufferSubDataEXT(readBuffer, writeBuffer, readOffset, writeOffset, psize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedBufferParameterivEXT (GLuint buffer, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedBufferParameterivEXT (BYVAL buffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedBufferParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedBufferParameterivEXT(buffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedBufferPointervEXT (GLuint buffer, GLenum pname, GLvoid* *params);
 ' =====================================================================================
 METHOD glGetNamedBufferPointervEXT (BYVAL buffer AS DWORD, BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedBufferPointervEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedBufferPointervEXT(buffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, GLvoid *data);
 ' =====================================================================================
 METHOD glGetNamedBufferSubDataEXT (BYVAL buffer AS DWORD, BYVAL dwOffset AS DWORD, BYVAL dwSize AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedBufferSubDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedBufferSubDataEXT(buffer, dwOffset, dwSize, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureBufferEXT (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
 ' =====================================================================================
 METHOD glTextureBufferEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureBufferEXT(dwTexture, dwTarget, internalformat, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glMultiTexBufferEXT (GLenum, GLenum, GLenum, GLuint);
 ' typedef void (APIENTRYP PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target,
 ' GLenum internalformat, GLuint buffer);
 ' =====================================================================================
 METHOD glMultiTexBufferEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexBufferEXT(dwTexunit, dwTarget, internalformat, buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedRenderbufferStorageEXT (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glNamedRenderbufferStorageEXT (BYVAL renderbuffer AS DWORD, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedRenderbufferStorageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedRenderbufferStorageEXT(renderbuffer, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedRenderbufferParameterivEXT (GLuint renderbuffer, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedRenderbufferParameterivEXT (BYVAL renderbuffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedRenderbufferParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedRenderbufferParameterivEXT(renderbuffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glCheckNamedFramebufferStatusEXT (GLuint framebuffer, GLenum target);
 ' =====================================================================================
 METHOD glCheckNamedFramebufferStatusEXT (BYVAL framebuffer AS DWORD, BYVAL dwTarget AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCheckNamedFramebufferStatusEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCheckNamedFramebufferStatusEXT(framebuffer, dwTarget) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTexture1DEXT (GLuint framebuffer, GLenum attachment,
 ' GLenum textarget, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glNamedFramebufferTexture1DEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTextarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTexture1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTexture1DEXT(framebuffer, dwAttachment, dwTextarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTexture2DEXT (GLuint framebuffer, GLenum attachment,
 ' GLenum textarget, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glNamedFramebufferTexture2DEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTextarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTexture2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTexture2DEXT(framebuffer, dwAttachment, dwTextarget, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTexture3DEXT (GLuint framebuffer, GLenum attachment,
 ' GLenum textarget, GLuint texture, GLint level, GLint zoffset);
 ' =====================================================================================
 METHOD glNamedFramebufferTexture3DEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTextarget AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL zoffset AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTexture3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTexture3DEXT(framebuffer, dwAttachment, dwTextarget, dwTexture, nLevel, zoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferRenderbufferEXT (GLuint framebuffer, GLenum attachment,
 ' GLenum renderbuffertarget, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glNamedFramebufferRenderbufferEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL renderbuffertarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferRenderbufferEXT(framebuffer, dwAttachment, renderbuffertarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedFramebufferAttachmentParameterivEXT (GLuint framebuffer,
 ' GLenum attachment, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedFramebufferAttachmentParameterivEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedFramebufferAttachmentParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedFramebufferAttachmentParameterivEXT(framebuffer, dwAttachment, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenerateTextureMipmapEXT (GLuint texture, GLenum target);
 ' =====================================================================================
 METHOD glGenerateTextureMipmapEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenerateTextureMipmapEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenerateTextureMipmapEXT(dwTexture, dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenerateMultiTexMipmapEXT (GLenum texunit, GLenum target);
 ' =====================================================================================
 METHOD glGenerateMultiTexMipmapEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenerateMultiTexMipmapEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenerateMultiTexMipmapEXT(dwTexunit, dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferDrawBufferEXT (GLuint framebuffer, GLenum mode);
 ' =====================================================================================
 METHOD glFramebufferDrawBufferEXT (BYVAL framebuffer AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferDrawBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferDrawBufferEXT(framebuffer, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferDrawBuffersEXT (GLuint framebuffer, GLsizei n, const GLenum *bufs);
 ' =====================================================================================
 METHOD glFramebufferDrawBuffersEXT (BYVAL framebuffer AS DWORD, BYVAL n AS LONG, BYREF bufs AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferDrawBuffersEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferDrawBuffersEXT(framebuffer, n, bufs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFramebufferReadBufferEXT (GLuint framebuffer, GLenum mode);
 ' =====================================================================================
 METHOD glFramebufferReadBufferEXT (BYVAL framebuffer AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferReadBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferReadBufferEXT(framebuffer, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetFramebufferParameterivEXT (GLuint framebuffer, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFramebufferParameterivEXT (BYVAL framebuffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFramebufferParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFramebufferParameterivEXT(framebuffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedRenderbufferStorageMultisampleEXT (GLuint renderbuffer, GLsizei samples,
 ' GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glNamedRenderbufferStorageMultisampleEXT (BYVAL renderbuffer AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedRenderbufferStorageMultisampleEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedRenderbufferStorageMultisampleEXT(renderbuffer, samples, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedRenderbufferStorageMultisampleCoverageEXT (GLuint renderbuffer,
 ' GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glNamedRenderbufferStorageMultisampleCoverageEXT (BYVAL renderbuffer AS DWORD, BYVAL coverageSamples AS LONG, BYVAL colorSamples AS LONG, BYVAL internalformat AS DWORD, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedRenderbufferStorageMultisampleCoverageEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedRenderbufferStorageMultisampleCoverageEXT(renderbuffer, coverageSamples, colorSamples, internalformat, nWidth, nHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTextureEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glNamedFramebufferTextureEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTextureEXT(framebuffer, dwAttachment, dwTexture, nLevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTextureLayerEXT (GLuint framebuffer, GLenum attachment,
 ' GLuint texture, GLint level, GLint layer);
 ' =====================================================================================
 METHOD glNamedFramebufferTextureLayerEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL nLayer AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTextureLayerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTextureLayerEXT(framebuffer, dwAttachment, dwTexture, nLevel, nLayer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNamedFramebufferTextureFaceEXT (GLuint framebuffer, GLenum attachment,
 ' GLuint texture, GLint level, GLenum face);
 ' =====================================================================================
 METHOD glNamedFramebufferTextureFaceEXT (BYVAL framebuffer AS DWORD, BYVAL dwAttachment AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL dwFace AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferTextureFaceEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferTextureFaceEXT(framebuffer, dwAttachment, dwTexture, nLevel, dwFace)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureRenderbufferEXT (GLuint texture, GLenum target, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glTextureRenderbufferEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureRenderbufferEXT(dwTexture, dwTarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiTexRenderbufferEXT (GLenum texunit, GLenum target, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glMultiTexRenderbufferEXT (BYVAL dwTexunit AS DWORD, BYVAL dwTarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiTexRenderbufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiTexRenderbufferEXT(dwTexunit, dwTarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1dEXT (GLuint program, GLint location, GLdouble x);
 ' =====================================================================================
 METHOD glProgramUniform1dEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1dEXT(program, location, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2dEXT (GLuint program, GLint location, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glProgramUniform2dEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2dEXT(program, location, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3dEXT (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glProgramUniform3dEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3dEXT(program, location, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4dEXT (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glProgramUniform4dEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4dEXT(program, location, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform1dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1dvEXT(program, location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform2dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2dvEXT(program, location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform3dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3dvEXT(program, location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniform4dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4dvEXT(program, location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x3dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x3dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix2x4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix2x4dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix2x4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix2x4dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x2dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x2dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x2dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix3x4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix3x4dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix3x4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix3x4dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x2dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x2dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x2dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformMatrix4x3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
 ' =====================================================================================
 METHOD glProgramUniformMatrix4x3dvEXT (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYVAL transpose AS BYTE, BYREF value AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformMatrix4x3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformMatrix4x3dvEXT(program, location, nCount, transpose, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetMultisamplefvNV (GLenum pname, GLuint index, GLfloat *val);
 ' =====================================================================================
 METHOD glGetMultisamplefvNV (BYVAL pname AS DWORD, BYVAL dwIndex AS DWORD, BYREF value AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetMultisamplefvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetMultisamplefvNV(pname, dwIndex, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSampleMaskIndexedNV (GLuint index, GLbitfield mask);
 ' =====================================================================================
 METHOD glSampleMaskIndexedNV (BYVAL dwIndex AS DWORD, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSampleMaskIndexedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSampleMaskIndexedNV(dwIndex, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexRenderbufferNV (GLenum target, GLuint renderbuffer);
 ' =====================================================================================
 METHOD glTexRenderbufferNV (BYVAL dwTarget AS DWORD, BYVAL renderbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexRenderbufferNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexRenderbufferNV(dwTarget, renderbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindTransformFeedbackNV (GLenum target, GLuint id);
 ' =====================================================================================
 METHOD glBindTransformFeedbackNV (BYVAL dwTarget AS DWORD, BYVAL dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindTransformFeedbackNV(dwTarget, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteTransformFeedbacksNV (GLsizei n, const GLuint *ids);
 ' =====================================================================================
 METHOD glDeleteTransformFeedbacksNV (BYVAL n AS DWORD, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteTransformFeedbacksNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteTransformFeedbacksNV(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenTransformFeedbacksNV (GLsizei n, GLuint *ids);
 ' =====================================================================================
 METHOD glGenTransformFeedbacksNV (BYVAL n AS DWORD, BYREF ids AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenTransformFeedbacksNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenTransformFeedbacksNV(n, ids)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsTransformFeedbackNV (GLuint id);
 ' =====================================================================================
 METHOD glIsTransformFeedbackNV (BYVAL dwId AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsTransformFeedbackNV(dwid) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPauseTransformFeedbackNV (void);
 ' =====================================================================================
 METHOD glPauseTransformFeedbackNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPauseTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPauseTransformFeedbackNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glResumeTransformFeedbackNV (void);
 ' =====================================================================================
 METHOD glResumeTransformFeedbackNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glResumeTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glResumeTransformFeedbackNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawTransformFeedbackNV (GLenum mode, GLuint id);
 ' =====================================================================================
 METHOD glDrawTransformFeedbackNV (BYVAL dwMode AS DWORD, BYREF dwId AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTransformFeedbackNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTransformFeedbackNV(dwMode, dwId)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
 ' =====================================================================================
 METHOD glGetPerfMonitorGroupsAMD (BYREF numGroups AS LONG, BYVAL groupsSize AS LONG, BYREF groups AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorGroupsAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorGroupsAMD(numGroups, groupsSize, groups)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
 ' =====================================================================================
 METHOD glGetPerfMonitorCountersAMD (BYVAL group AS DWORD, BYREF numCounters AS LONG, BYREF maxActiveCounters AS LONG, BYVAL counterSize AS LONG, BYREF counters AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorCountersAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorCountersAMD(group, numCounters, maxActiveCounters, counterSize, counters)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
 ' =====================================================================================
 METHOD glGetPerfMonitorGroupStringAMD (BYVAL group AS DWORD, BYREF bufSize AS LONG, BYREF nLength AS LONG, BYREF groupString AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorGroupStringAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorGroupStringAMD(group, bufSize, nLength, groupString)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
 ' =====================================================================================
 METHOD glGetPerfMonitorCounterStringAMD (BYVAL group AS DWORD, BYVAL dwCounter AS DWORD, BYVAL bufSize AS LONG, BYREF nLength AS LONG, BYREF counterString AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorCounterStringAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorCounterStringAMD(group, dwCounter, bufSize, nLength, counterString)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
 ' =====================================================================================
 METHOD glGetPerfMonitorCounterInfoAMD (BYVAL group AS DWORD, BYVAL dwCounter AS DWORD, BYVAL pname AS DWORD, BYVAL pData AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorCounterInfoAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorCounterInfoAMD(group, dwCounter, pname, pData)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
 ' =====================================================================================
 METHOD glGenPerfMonitorsAMD (BYVAL n AS LONG, BYREF monitors AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenPerfMonitorsAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenPerfMonitorsAMD(n, monitors)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
 ' =====================================================================================
 METHOD glDeletePerfMonitorsAMD (BYVAL n AS LONG, BYREF monitors AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeletePerfMonitorsAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeletePerfMonitorsAMD(n, monitors)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *counterList);
 ' =====================================================================================
 METHOD glSelectPerfMonitorCountersAMD (BYVAL dwMonitor AS DWORD, BYVAL bEnable AS BYTE, BYVAL group AS DWORD, BYVAL numCounters AS LONG, BYREF counterList AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSelectPerfMonitorCountersAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSelectPerfMonitorCountersAMD(dwMonitor, bEnable, group, numCounters, counterList)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginPerfMonitorAMD (GLuint monitor);
 ' =====================================================================================
 METHOD glBeginPerfMonitorAMD (BYVAL dwMonitor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginPerfMonitorAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginPerfMonitorAMD(dwMonitor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndPerfMonitorAMD (GLuint monitor);
 ' =====================================================================================
 METHOD glEndPerfMonitorAMD (BYVAL dwMonitor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndPerfMonitorAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndPerfMonitorAMD(dwMonitor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
 ' =====================================================================================
 METHOD glGetPerfMonitorCounterDataAMD (BYVAL dwMonitor AS DWORD, BYVAL pname AS DWORD, BYVAL dataSize AS LONG, BYREF pData AS DWORD, BYREF bytesWritten AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPerfMonitorCounterDataAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPerfMonitorCounterDataAMD(dwMonitor, pname, dataSize, pData, bytesWritten)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTessellationFactorAMD (GLfloat factor);
 ' =====================================================================================
 METHOD glTessellationFactorAMD (BYVAL factor AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTessellationFactorAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTessellationFactorAMD(factor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTessellationModeAMD (GLenum mode);
 ' =====================================================================================
 METHOD glTessellationModeAMD (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTessellationModeAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTessellationModeAMD(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProvokingVertexEXT (GLenum mode);
 ' =====================================================================================
 METHOD glProvokingVertexEXT (BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProvokingVertexEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProvokingVertexEXT(dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncIndexedAMD (GLuint buf, GLenum src, GLenum dst);
 ' =====================================================================================
 METHOD glBlendFuncIndexedAMD (BYVAL buf AS DWORD, BYVAL src AS DWORD, BYVAL dst AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncIndexedAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncIndexedAMD(buf, src, dst)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendFuncSeparateIndexedAMD (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
 ' =====================================================================================
 METHOD glBlendFuncSeparateIndexedAMD (BYVAL buf AS DWORD, BYVAL srcRGB AS DWORD, BYVAL dstRGB AS DWORD, BYVAL srcAlpha AS DWORD, BYVAL dstAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendFuncSeparateIndexedAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendFuncSeparateIndexedAMD(buf, srcRGB, dstRGB, srcAlpha, dstAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationIndexedAMD (GLuint buf, GLenum mode);
 ' =====================================================================================
 METHOD glBlendEquationIndexedAMD (BYVAL buf AS DWORD, BYVAL dwMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationIndexedAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationIndexedAMD(buf, dwMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBlendEquationSeparateIndexedAMD (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
 ' =====================================================================================
 METHOD glBlendEquationSeparateIndexedAMD (BYVAL buf AS DWORD, BYVAL modeRGB AS DWORD, BYVAL modeAlpha AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBlendEquationSeparateIndexedAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBlendEquationSeparateIndexedAMD(buf, modeRGB, modeAlpha)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureRangeAPPLE (GLenum target, GLsizei length, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glTextureRangeAPPLE (BYVAL dwTarget AS DWORD, BYVAL nLength AS LONG, BYVAL pPointer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureRangeAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureRangeAPPLE(dwTarget, nLength, pPointer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, GLvoid* *params);
 ' =====================================================================================
 METHOD glGetTexParameterPointervAPPLE (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYVAL params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetTexParameterPointervAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTexParameterPointervAPPLE(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEnableVertexAttribAPPLE (GLuint index, GLenum pname);
 ' =====================================================================================
 METHOD glEnableVertexAttribAPPLE (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEnableVertexAttribAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEnableVertexAttribAPPLE(dwIndex, pname)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDisableVertexAttribAPPLE (GLuint index, GLenum pname);
 ' =====================================================================================
 METHOD glDisableVertexAttribAPPLE (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDisableVertexAttribAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDisableVertexAttribAPPLE(dwIndex, pname)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsVertexAttribEnabledAPPLE (GLuint index, GLenum pname);
 ' =====================================================================================
 METHOD glIsVertexAttribEnabledAPPLE (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsVertexAttribEnabledAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsVertexAttribEnabledAPPLE(dwIndex, pname) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapVertexAttrib1dAPPLE (GLuint index, GLuint size, GLdouble u1,
 ' GLdouble u2, GLint stride, GLint order, const GLdouble *points);
 ' =====================================================================================
 METHOD glMapVertexAttrib1dAPPLE (BYVAL dwIndex AS DWORD, BYVAL dwSize AS DWORD, BYVAL u1 AS DOUBLE, BYVAL u2 AS DOUBLE, BYVAL stride AS LONG, BYVAL order AS LONG, BYREF dpoints AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapVertexAttrib1dAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapVertexAttrib1dAPPLE(dwIndex, dwSize, u1, u2, stride, order, dpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapVertexAttrib1fAPPLE (GLuint index, GLuint size, GLfloat u1,
 ' GLfloat u2, GLint stride, GLint order, const GLfloat *points);
 ' =====================================================================================
 METHOD glMapVertexAttrib1fAPPLE (BYVAL dwIndex AS DWORD, BYVAL dwSize AS DWORD, BYVAL u1 AS SINGLE,_
 BYVAL u2 AS SINGLE, BYVAL stride AS LONG, BYVAL order AS LONG, BYREF fpoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapVertexAttrib1fAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapVertexAttrib1fAPPLE(dwIndex, dwSize, u1, u2, stride, order, fpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapVertexAttrib2dAPPLE (GLuint index, GLuint size, GLdouble u1,
 ' GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride,
 ' GLint vorder, const GLdouble *points);
 ' =====================================================================================
 METHOD glMapVertexAttrib2dAPPLE (BYVAL dwIndex AS DWORD, BYVAL dwSize AS DWORD, BYVAL u1 AS DOUBLE, BYVAL u2 AS DOUBLE, BYVAL ustride AS LONG, BYVAL uorder AS LONG, BYVAL v1 AS DOUBLE, BYVAL v2 AS DOUBLE, BYVAL vstride AS LONG, BYVAL vorder AS LONG, BYREF dpoints AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapVertexAttrib2dAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapVertexAttrib2dAPPLE(dwIndex, dwSize, u1, u2, ustride, uorder, v1, v2, vstride, vorder, dpoints)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMapVertexAttrib2fAPPLE (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
 ' =====================================================================================
 METHOD glMapVertexAttrib2fAPPLE (BYVAL dwIndex AS DWORD, BYVAL dwSize AS DWORD, BYVAL u1 AS SINGLE, BYVAL u2 AS SINGLE, BYVAL ustride AS LONG, BYVAL uorder AS LONG, BYVAL v1 AS SINGLE, BYVAL v2 AS SINGLE, BYVAL vstride AS LONG, BYVAL vorder AS LONG, BYREF fpoints AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMapVertexAttrib2fAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapVertexAttrib2fAPPLE(dwIndex, dwSize, u1, u2, ustride, uorder, v1, v2, vstride, vorder, fpoints)
 END METHOD
 ' =====================================================================================
 ' GLenum glObjectPurgeableAPPLE (GLenum objectType, GLuint name, GLenum option);
 ' =====================================================================================
 METHOD glObjectPurgeableAPPLE (BYVAL objectType AS DWORD, BYVAL dwName AS DWORD, BYVAL dwOption AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glObjectPurgeableAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glObjectPurgeableAPPLE(objectType, dwName, dwOption) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glObjectUnpurgeableAPPLE (GLenum objectType, GLuint name, GLenum option);
 ' =====================================================================================
 METHOD glObjectUnpurgeableAPPLE (BYVAL objectType AS DWORD, BYVAL dwName AS DWORD, BYVAL dwOption AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glObjectUnpurgeableAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glObjectUnpurgeableAPPLE(objectType, dwName, dwOption) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetObjectParameterivAPPLE (GLenum objectType, GLuint name, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetObjectParameterivAPPLE (BYVAL objectType AS DWORD, BYVAL dwName AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectParameterivAPPLE")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectParameterivAPPLE(objectType, dwName, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBeginVideoCaptureNV (GLuint video_capture_slot);
 ' =====================================================================================
 METHOD glBeginVideoCaptureNV (BYVAL video_capture_slot AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginVideoCaptureNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginVideoCaptureNV(video_capture_slot)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindVideoCaptureStreamBufferNV (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset);
 ' =====================================================================================
 METHOD glBindVideoCaptureStreamBufferNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL frame_region AS DWORD, BYVAL dwOffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVideoCaptureStreamBufferNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVideoCaptureStreamBufferNV(video_capture_slot, dwStream, frame_region, dwOffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindVideoCaptureStreamTextureNV (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture);
 ' =====================================================================================
 METHOD glBindVideoCaptureStreamTextureNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL frame_region AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwTexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVideoCaptureStreamTextureNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVideoCaptureStreamTextureNV(video_capture_slot, dwStream, frame_region, dwTarget, dwTexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEndVideoCaptureNV (GLuint video_capture_slot);
 ' =====================================================================================
 METHOD glEndVideoCaptureNV (BYVAL video_capture_slot AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndVideoCaptureNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndVideoCaptureNV(video_capture_slot)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoCaptureivNV (GLuint video_capture_slot, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVideoCaptureivNV (BYVAL video_capture_slot AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoCaptureivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoCaptureivNV(video_capture_slot, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoCaptureStreamivNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetVideoCaptureStreamivNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoCaptureStreamivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoCaptureStreamivNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoCaptureStreamfvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat *params);
 ' =====================================================================================
 METHOD glGetVideoCaptureStreamfvNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoCaptureStreamfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoCaptureStreamfvNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVideoCaptureStreamdvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVideoCaptureStreamdvNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVideoCaptureStreamdvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVideoCaptureStreamdvNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLenum glVideoCaptureNV (GLuint video_capture_slot, GLuint *sequence_num, GLuint64EXT *capture_time);
 ' =====================================================================================
 METHOD glVideoCaptureNV (BYVAL video_capture_slot AS DWORD, BYREF sequence_num AS DWORD, BYREF capture_time AS QUAD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glVideoCaptureNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVideoCaptureNV(video_capture_slot, sequence_num, capture_time) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVideoCaptureStreamParameterivNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint *params);
 ' =====================================================================================
 METHOD glVideoCaptureStreamParameterivNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVideoCaptureStreamParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVideoCaptureStreamParameterivNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVideoCaptureStreamParameterfvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat *params);
 ' =====================================================================================
 METHOD glVideoCaptureStreamParameterfvNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVideoCaptureStreamParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVideoCaptureStreamParameterfvNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVideoCaptureStreamParameterdvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble *params);
 ' =====================================================================================
 METHOD glVideoCaptureStreamParameterdvNV (BYVAL video_capture_slot AS DWORD, BYVAL dwStream AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVideoCaptureStreamParameterdvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVideoCaptureStreamParameterdvNV(video_capture_slot, dwStream, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyImageSubDataNV (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 width, GLsizei height, GLsizei depth);
 ' =====================================================================================
 METHOD glCopyImageSubDataNV (BYVAL srcName AS DWORD, BYVAL srcTarget AS DWORD, BYVAL srcLevel AS LONG, BYVAL srcX AS LONG, BYVAL srcY AS LONG, BYVAL srcZ AS LONG, BYVAL dstName AS DWORD, BYVAL dstTarget AS DWORD, BYVAL dstLevel AS LONG, BYVAL dstX AS LONG, BYVAL dstY AS LONG, BYVAL dstZ AS LONG, BYVAL nWidth AS LONG, BYVAL nHeight AS LONG, BYVAL nDepth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyImageSubDataNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyImageSubDataNV(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, nWidth, nHeight, nDepth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUseShaderProgramEXT (GLenum type, GLuint program);
 ' =====================================================================================
 METHOD glUseShaderProgramEXT (BYVAL dwType AS DWORD, BYVAL program AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUseShaderProgramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUseShaderProgramEXT(dwType, program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glActiveProgramEXT (GLuint program);
 ' =====================================================================================
 METHOD glActiveProgramEXT (BYVAL program AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glActiveProgramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glActiveProgramEXT(program)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glCreateShaderProgramEXT (GLenum type, const GLchar *string);
 ' =====================================================================================
 METHOD glCreateShaderProgramEXT (BYVAL dwType AS DWORD, BYREF szString AS ASCIIZ) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glCreateShaderProgramEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCreateShaderProgramEXT(dwType, szString) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMakeBufferResidentNV (GLenum target, GLenum access);
 ' =====================================================================================
 METHOD glMakeBufferResidentNV (BYVAL dwTarget AS DWORD, BYVAL dwAccess AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeBufferResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeBufferResidentNV(dwTarget, dwAccess)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMakeBufferNonResidentNV (GLenum target);
 ' =====================================================================================
 METHOD glMakeBufferNonResidentNV (BYVAL dwTarget AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeBufferNonResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeBufferNonResidentNV(dwTarget)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsBufferResidentNV (GLenum target);
 ' =====================================================================================
 METHOD glIsBufferResidentNV (BYVAL dwTarget AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsBufferResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsBufferResidentNV(dwTarget) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMakeNamedBufferResidentNV (GLuint buffer, GLenum access);
 ' =====================================================================================
 METHOD glMakeNamedBufferResidentNV (BYVAL buffer AS DWORD, BYVAL dwAccess AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeNamedBufferResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeNamedBufferResidentNV(buffer, dwAccess)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMakeNamedBufferNonResidentNV (GLuint buffer);
 ' =====================================================================================
 METHOD glMakeNamedBufferNonResidentNV (BYVAL buffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeNamedBufferNonResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeNamedBufferNonResidentNV(buffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsNamedBufferResidentNV (GLuint buffer);
 ' =====================================================================================
 METHOD glIsNamedBufferResidentNV (BYVAL buffer AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsNamedBufferResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsNamedBufferResidentNV(buffer) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetBufferParameterui64vNV (GLenum target, GLenum pname, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetBufferParameterui64vNV (BYVAL dwTarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetBufferParameterui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetBufferParameterui64vNV(dwTarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetNamedBufferParameterui64vNV (GLuint buffer, GLenum pname, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetNamedBufferParameterui64vNV (BYVAL buffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedBufferParameterui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedBufferParameterui64vNV(buffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetIntegerui64vNV (GLenum value, GLuint64EXT *result);
 ' =====================================================================================
 METHOD glGetIntegerui64vNV (BYVAL value AS DWORD, BYREF result AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetIntegerui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetIntegerui64vNV(value, result)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformui64NV (GLint location, GLuint64EXT value);
 ' =====================================================================================
 METHOD glUniformui64NV (BYVAL location AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformui64NV(location, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniformui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glUniformui64vNV (BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformui64vNV(location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformui64vNV (GLuint program, GLint location, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetUniformui64vNV (BYVAL program AS DWORD, BYVAL location AS LONG, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformui64vNV(program, location, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformui64NV (GLuint program, GLint location, GLuint64EXT value);
 ' =====================================================================================
 METHOD glProgramUniformui64NV (BYVAL program AS DWORD, BYVAL location AS LONG, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformui64NV(program, location, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniformui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniformui64vNV (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL nCount AS LONG, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformui64vNV(program, location, nCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBufferAddressRangeNV (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);
 ' =====================================================================================
 METHOD glBufferAddressRangeNV (BYVAL pname AS DWORD, BYVAL dwIndex AS DWORD, BYVAL address AS QUAD, BYVAL length AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBufferAddressRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBufferAddressRangeNV(pname, dwIndex, address, length)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexFormatNV (GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glVertexFormatNV (BYVAL nsize AS LONG, BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexFormatNV(nsize, dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glNormalFormatNV (GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glNormalFormatNV (BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNormalFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNormalFormatNV(dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glColorFormatNV (GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glColorFormatNV (BYVAL nsize AS LONG, BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glColorFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glColorFormatNV(nsize, dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glIndexFormatNV (GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glIndexFormatNV (BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIndexFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIndexFormatNV(dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexCoordFormatNV (GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glTexCoordFormatNV (BYVAL nsize AS LONG, BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexCoordFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexCoordFormatNV(nsize, dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glEdgeFlagFormatNV (GLsizei stride);
 ' =====================================================================================
 METHOD glEdgeFlagFormatNV (BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEdgeFlagFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEdgeFlagFormatNV(stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSecondaryColorFormatNV (GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glSecondaryColorFormatNV (BYVAL nsize AS LONG, BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSecondaryColorFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSecondaryColorFormatNV(nsize, dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glFogCoordFormatNV (GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glFogCoordFormatNV (BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFogCoordFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFogCoordFormatNV(dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribFormatNV (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);
 ' =====================================================================================
 METHOD glVertexAttribFormatNV (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL normalized AS BYTE, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribFormatNV(dwIndex, nSize, dwType, normalized, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribIFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glVertexAttribIFormatNV (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribIFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribIFormatNV(dwIndex, nSize, dwType, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetIntegerui64i_vNV (GLenum value, GLuint index, GLuint64EXT *result);
 ' =====================================================================================
 METHOD glGetIntegerui64i_vNV (BYVAL value AS DWORD, BYVAL dwIndex AS DWORD, BYREF result AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetIntegerui64i_vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetIntegerui64i_vNV(value, dwIndex, result)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureBarrierNV (void);
 ' =====================================================================================
 METHOD glTextureBarrierNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureBarrierNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureBarrierNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindImageTextureEXT (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);
 ' =====================================================================================
 METHOD glBindImageTextureEXT (BYVAL dwIndex AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nlevel AS LONG, BYVAL bLayered AS LONG, BYVAL nLayer AS LONG, BYVAL dwAccess AS DWORD, BYVAL nFormat AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindImageTextureEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindImageTextureEXT(dwIndex, dwTexture, nlevel, bLayered, nLayer, dwAccess, nFormat)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMemoryBarrierEXT (GLbitfield barriers);
 ' =====================================================================================
 METHOD glMemoryBarrierEXT (BYVAL barriers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMemoryBarrierEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMemoryBarrierEXT(barriers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1dEXT (GLuint index, GLdouble x);
 ' =====================================================================================
 METHOD glVertexAttribL1dEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1dEXT(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2dEXT (GLuint index, GLdouble x, GLdouble y);
 ' =====================================================================================
 METHOD glVertexAttribL2dEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2dEXT(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z);
 ' =====================================================================================
 METHOD glVertexAttribL3dEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3dEXT(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
 ' =====================================================================================
 METHOD glVertexAttribL4dEXT (BYVAL dwIndex AS DWORD, BYVAL x AS DOUBLE, BYVAL y AS DOUBLE, BYVAL z AS DOUBLE, BYVAL w AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4dEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4dEXT(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1dvEXT (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL1dvEXT (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1dvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2dvEXT (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL2dvEXT (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2dvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3dvEXT (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL3dvEXT (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3dvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4dvEXT (GLuint index, const GLdouble *v);
 ' =====================================================================================
 METHOD glVertexAttribL4dvEXT (BYVAL dwIndex AS DWORD, BYREF v AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4dvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4dvEXT(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribLPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 ' =====================================================================================
 METHOD glVertexAttribLPointerEXT (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL dwStride AS DWORD, BYVAL p AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribLPointerEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribLPointerEXT(dwIndex, nSize, dwType, dwStride, p)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribLdvEXT (GLuint index, GLenum pname, GLdouble *params);
 ' =====================================================================================
 METHOD glGetVertexAttribLdvEXT (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS DOUBLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribLdvEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribLdvEXT(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexArrayVertexAttribLOffsetEXT (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
 ' =====================================================================================
 METHOD glVertexArrayVertexAttribLOffsetEXT (BYVAL vaobj AS DWORD, BYVAL dwBuffer AS DWORD, BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL dwStride AS DWORD, BYVAL offset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexAttribLOffsetEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexAttribLOffsetEXT(vaobj, dwBuffer, dwIndex, nSize, dwType, dwStride, offset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramSubroutineParametersuivNV (GLenum target, GLsizei count, const GLuint *params);
 ' =====================================================================================
 METHOD glProgramSubroutineParametersuivNV (BYVAL dwTarget AS DWORD, BYVAL dwCount AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramSubroutineParametersuivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramSubroutineParametersuivNV(dwTarget, dwCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetProgramSubroutineParameteruivNV (GLenum target, GLuint index, GLuint *param);
 ' =====================================================================================
 METHOD glGetProgramSubroutineParameteruivNV (BYVAL dwTarget AS DWORD, BYVAL dwIndex AS DWORD, BYREF param AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramSubroutineParameteruivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramSubroutineParameteruivNV(dwTarget, dwIndex, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1i64NV (GLint location, GLint64EXT x);
 ' =====================================================================================
 METHOD glUniform1i64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1i64NV(nLocation, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2i64NV (GLint location, GLint64EXT x, GLint64EXT y);
 ' =====================================================================================
 METHOD glUniform2i64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2i64NV(nLocation, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
 ' =====================================================================================
 METHOD glUniform3i64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3i64NV(nLocation, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
 ' =====================================================================================
 METHOD glUniform4i64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4i64NV(nLocation, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glUniform1i64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1i64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glUniform2i64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2i64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glUniform3i64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3i64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glUniform4i64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4i64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1ui64NV (GLint location, GLuint64EXT x);
 ' =====================================================================================
 METHOD glUniform1ui64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1ui64NV(nLocation, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y);
 ' =====================================================================================
 METHOD glUniform2ui64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2ui64NV(nLocation, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
 ' =====================================================================================
 METHOD glUniform3ui64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3ui64NV(nLocation, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
 ' =====================================================================================
 METHOD glUniform4ui64NV (BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4ui64NV(nLocation, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform1ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glUniform1ui64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform1ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform1ui64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform2ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glUniform2ui64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform2ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform2ui64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform3ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glUniform3ui64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform3ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform3ui64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glUniform4ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glUniform4ui64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniform4ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniform4ui64vNV(nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetUniformi64vNV (GLuint program, GLint location, GLint64EXT *params);
 ' =====================================================================================
 METHOD glGetUniformi64vNV (BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetUniformi64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetUniformi64vNV(nLocation, dwCount, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1i64NV (GLuint program, GLint location, GLint64EXT x);
 ' =====================================================================================
 METHOD glProgramUniform1i64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1i64NV(program, nLocation, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);
 ' =====================================================================================
 METHOD glProgramUniform2i64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2i64NV(program, nLocation, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
 ' =====================================================================================
 METHOD glProgramUniform3i64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z aS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3i64NV(program, nLocation, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
 ' =====================================================================================
 METHOD glProgramUniform4i64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z aS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4i64NV(program, nLocation, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform1i64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1i64vNV(program, nLocation, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform2i64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2i64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform3i64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3i64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform4i64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4i64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1ui64NV (GLuint program, GLint location, GLuint64EXT x);
 ' =====================================================================================
 METHOD glProgramUniform1ui64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1ui64NV(program, nLocation, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);
 ' =====================================================================================
 METHOD glProgramUniform2ui64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2ui64NV(program, nLocation, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
 ' =====================================================================================
 METHOD glProgramUniform3ui64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3ui64NV(program, nLocation, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
 ' =====================================================================================
 METHOD glProgramUniform4ui64NV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4ui64NV(program, nLocation, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform1ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform1ui64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform1ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform1ui64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform2ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform2ui64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform2ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform2ui64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform3ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform3ui64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform3ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform3ui64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glProgramUniform4ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
 ' =====================================================================================
 METHOD glProgramUniform4ui64vNV (BYVAL program AS DWORD, BYVAL nLocation AS LONG, BYVAL dwCount AS DWORD, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniform4ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniform4ui64vNV(program, nLocation, dwCount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1i64NV (GLuint index, GLint64EXT x);
 ' =====================================================================================
 METHOD glVertexAttribL1i64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1i64NV(dwIndex, x)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2i64NV (GLuint index, GLint64EXT x, GLint64EXT y);
 ' =====================================================================================
 METHOD glVertexAttribL2i64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2i64NV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z);
 ' =====================================================================================
 METHOD glVertexAttribL3i64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3i64NV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
 ' =====================================================================================
 METHOD glVertexAttribL4i64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4i64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4i64NV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1i64vNV (GLuint index, const GLint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL1i64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1i64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2i64vNV (GLuint index, const GLint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL2i64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2i64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3i64vNV (GLuint index, const GLint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL3i64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3i64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4i64vNV (GLuint index, const GLint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL4i64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4i64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4i64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1ui64NV (GLuint index, GLuint64EXT x);
 ' =====================================================================================
 METHOD glVertexAttribL1ui64NV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1ui64NV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL2ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y);
 ' =====================================================================================
 METHOD glVertexAttribL2ui64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2ui64NV(dwIndex, x, y)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
 ' =====================================================================================
 METHOD glVertexAttribL3ui64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3ui64NV(dwIndex, x, y, z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
 ' =====================================================================================
 METHOD glVertexAttribL4ui64NV (BYVAL dwIndex AS DWORD, BYVAL x AS QUAD, BYVAL y AS QUAD, BYVAL z AS QUAD, BYVAL w AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4ui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4ui64NV(dwIndex, x, y, z, w)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL1ui64vNV (GLuint index, const GLuint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL1ui64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL1ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL1ui64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void glVertexAttribL2ui64vNV (GLuint index, const GLuint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL2ui64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL2ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL2ui64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL3ui64vNV (GLuint index, const GLuint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL3ui64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL3ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL3ui64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribL4ui64vNV (GLuint index, const GLuint64EXT *v);
 ' =====================================================================================
 METHOD glVertexAttribL4ui64vNV (BYVAL dwIndex AS DWORD, BYREF v AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribL4ui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribL4ui64vNV(dwIndex, v)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribLi64vNV (GLuint index, GLenum pname, GLint64EXT *params);
 ' =====================================================================================
 METHOD glGetVertexAttribLi64vNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribLi64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribLi64vNV(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetVertexAttribLui64vNV (GLuint index, GLenum pname, GLuint64EXT *params);
 ' =====================================================================================
 METHOD glGetVertexAttribLui64vNV (BYVAL dwIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetVertexAttribLui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetVertexAttribLui64vNV(dwIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVertexAttribLFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride);
 ' =====================================================================================
 METHOD glVertexAttribLFormatNV (BYVAL dwIndex AS DWORD, BYVAL nSize AS LONG, BYVAL dwType AS DWORD, BYVAL dwStride AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribLFormatNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribLFormatNV(dwIndex, nSize, dwType, dwStride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGenNamesAMD (GLenum identifier, GLuint num, GLuint *names);
 ' =====================================================================================
 METHOD glGenNamesAMD (BYVAL dwIdentifier AS DWORD, BYVAL dwNum AS DWORD, BYREF names AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGenNamesAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenNamesAMD(dwIdentifier, dwNum, names)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeleteNamesAMD (GLenum identifier, GLuint num, const GLuint *names);
 ' =====================================================================================
 METHOD glDeleteNamesAMD (BYVAL dwIdentifier AS DWORD, BYVAL dwNum AS DWORD, BYREF names AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeleteNamesAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeleteNamesAMD(dwIdentifier, dwNum, names)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsNameAMD (GLenum identifier, GLuint name);
 ' =====================================================================================
 METHOD glIsNameAMD (BYVAL dwIdentifier AS DWORD, BYVAL dwName AS DWORD) AS LONG
 LOCAL bRes AS LONG
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glIsNameAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsNameAMD(dwIdentifier, dwName) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageEnableAMD (GLenum category, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
 ' =====================================================================================
 METHOD glDebugMessageEnableAMD (BYVAL dwCategory AS DWORD, BYVAL dwSeverity AS DWORD, BYVAL dwCount AS DWORD, BYREF ids AS DWORD, BYVAL bEnabled AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageEnableAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageEnableAMD(dwCategory, dwSeverity, dwCount, ids, bEnabled)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageInsertAMD (GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar *buf);
 ' =====================================================================================
 METHOD glDebugMessageInsertAMD (BYVAL dwCategory AS DWORD, BYVAL dwSeverity AS DWORD, BYVAL dwId AS DWORD, BYVAL length AS DWORD, BYREF buf AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageInsertAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageInsertAMD(dwCategory, dwSeverity, dwId, length, buf)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDebugMessageCallbackAMD (GLDEBUGPROCAMD callback, GLvoid *userParam);
 ' =====================================================================================
 METHOD glDebugMessageCallbackAMD (BYVAL pCallback AS DWORD, BYVAL userParam AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageCallbackAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageCallbackAMD(pCallback, userParam)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGetDebugMessageLogAMD (GLuint count, GLsizei bufsize, GLenum *categories, GLuint *severities, GLuint *ids, GLsizei *lengths, GLchar *message);
 ' =====================================================================================
 METHOD glGetDebugMessageLogAMD (BYVAL dwCount AS DWORD, BYVAL bufsize AS DWORD, BYREF categories AS DWORD, BYREF severities AS DWORD, BYREF ids AS DWORD, BYREF lengths AS DWORD, BYREF message AS ASCIIZ) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetDebugMessageLogAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDebugMessageLogAMD(dwCount, bufsize, categories, severities, ids, lengths, message) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUInitNV (const GLvoid *vdpDevice, const GLvoid *getProcAddress);
 ' =====================================================================================
 METHOD glVDPAUInitNV (BYVAL vdpDevice AS DWORD, BYVAL pGetProcAddress AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUInitNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUInitNV(vdpDevice, pGetProcAddress)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUFiniNV (void);
 ' =====================================================================================
 METHOD glVDPAUFiniNV
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUFiniNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUFiniNV
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceNV (const GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
 ' =====================================================================================
 METHOD glVDPAURegisterVideoSurfaceNV (BYVAL vdpSurface AS DWORD, BYVAL dwTarget AS DWORD, BYVAL numTextureNames AS DWORD, BYREF textureNames AS DWORD) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAURegisterVideoSurfaceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAURegisterVideoSurfaceNV(vdpSurface, dwTarget, numTextureNames, textureNames) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLvdpauSurfaceNV glVDPAURegisterOutputSurfaceNV (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
 ' =====================================================================================
 METHOD glVDPAURegisterOutputSurfaceNV (BYVAL vdpSurface AS DWORD, BYVAL dwTarget AS DWORD, BYVAL numTextureNames AS DWORD, BYREF textureNames AS DWORD) AS DWORD
 LOCAL dwRes AS DWORD
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAURegisterOutputSurfaceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAURegisterOutputSurfaceNV(vdpSurface, dwTarget, numTextureNames, textureNames) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUIsSurfaceNV (GLvdpauSurfaceNV surface);
 ' =====================================================================================
 METHOD glVDPAUIsSurfaceNV (BYVAL surface AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUIsSurfaceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUIsSurfaceNV(surface)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUUnregisterSurfaceNV (GLvdpauSurfaceNV surface);
 ' =====================================================================================
 METHOD glVDPAUUnregisterSurfaceNV (BYVAL surface AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUUnregisterSurfaceNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUUnregisterSurfaceNV(surface)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUGetSurfaceivNV (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
 ' =====================================================================================
 METHOD glVDPAUGetSurfaceivNV (BYVAL surface AS DWORD, BYVAL pname AS DWORD, BYVAL bufSize AS DWORD, BYREF length AS DWORD, BYREF values AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUGetSurfaceivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUGetSurfaceivNV(surface, pname, bufSize, length, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUSurfaceAccessNV (GLvdpauSurfaceNV surface, GLenum access);
 ' =====================================================================================
 METHOD glVDPAUSurfaceAccessNV (BYVAL surface AS DWORD, BYVAL dwAccess AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUSurfaceAccessNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUSurfaceAccessNV(surface, dwAccess)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUMapSurfacesNV (GLsizei numSurfaces, const GLvdpauSurfaceNV *surfaces);
 ' =====================================================================================
 METHOD glVDPAUMapSurfacesNV (BYVAL numSurfaces AS DWORD, BYREF surfaces AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUMapSurfacesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUMapSurfacesNV(numSurfaces, surfaces)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glVDPAUUnmapSurfacesNV (GLsizei numSurface, const GLvdpauSurfaceNV *surfaces);
 ' =====================================================================================
 METHOD glVDPAUUnmapSurfacesNV (BYVAL numSurface AS DWORD, BYREF surfaces AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVDPAUUnmapSurfacesNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVDPAUUnmapSurfacesNV(numSurface, surfaces)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage2DMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTexImage2DMultisampleCoverageNV (BYVAL dwTarget AS DWORD, BYVAL coverageSamples AS DWORD, BYVAL colorSamples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage2DMultisampleCoverageNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage2DMultisampleCoverageNV(dwTarget, coverageSamples, colorSamples, internalFormat, dwWidth, dwHeight, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexImage3DMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTexImage3DMultisampleCoverageNV (BYVAL dwTarget AS DWORD, BYVAL coverageSamples AS DWORD, BYVAL colorSamples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwDepth AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexImage3DMultisampleCoverageNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexImage3DMultisampleCoverageNV(dwTarget, coverageSamples, colorSamples, internalFormat, dwWidth, dwHeight, dwDepth, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage2DMultisampleNV (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTextureImage2DMultisampleNV (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL samples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage2DMultisampleNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage2DMultisampleNV(dwTexture, dwTarget, samples, internalFormat, dwWidth, dwHeight, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage3DMultisampleNV (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTextureImage3DMultisampleNV (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL samples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwDepth AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage3DMultisampleNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage3DMultisampleNV(dwTexture, dwTarget, samples, internalFormat, dwWidth, dwHeight, dwDepth, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage2DMultisampleCoverageNV (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTextureImage2DMultisampleCoverageNV (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL coverageSamples AS DWORD, BYVAL colorSamples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage2DMultisampleCoverageNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage2DMultisampleCoverageNV(dwTexture, dwTarget, coverageSamples, colorSamples, internalFormat, dwWidth, dwHeight, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureImage3DMultisampleCoverageNV (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
 ' =====================================================================================
 METHOD glTextureImage3DMultisampleCoverageNV (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL coverageSamples AS DWORD, BYVAL colorSamples AS DWORD, BYVAL internalFormat AS LONG, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwDepth AS DWORD, BYVAL fixedSampleLocations AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureImage3DMultisampleCoverageNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureImage3DMultisampleCoverageNV(dwTexture, dwTarget, coverageSamples, colorSamples, internalFormat, dwWidth, dwHeight, dwDepth, fixedSampleLocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawArraysInstancedBaseInstance (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
 ' =====================================================================================
 METHOD glDrawArraysInstancedBaseInstance (BYVAL dwMode AS DWORD, BYVAL nFirst AS LONG, BYVAL nCount AS DWORD, BYVAL instancecount AS DWORD, BYVAL baseinstance AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawArraysInstancedBaseInstance")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawArraysInstancedBaseInstance(dwMode, nFirst, nCount, instancecount, baseinstance)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsInstancedBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
 ' =====================================================================================
 METHOD glDrawElementsInstancedBaseInstance (BYVAL dwMode AS DWORD, BYVAL nCount AS DWORD, BYVAL dwType AS DWORD, BYVAL pindices AS DWORD, BYVAL instancecount AS DWORD, BYVAL baseinstance AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstancedBaseInstance")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstancedBaseInstance(dwMode, nCount, dwType, pindices, instancecount, baseinstance)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawElementsInstancedBaseVertexBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
 ' =====================================================================================
 METHOD glDrawElementsInstancedBaseVertexBaseInstance (BYVAL dwMode AS DWORD, BYVAL nCount AS DWORD, BYVAL dwType AS DWORD, BYVAL pindices AS DWORD, BYVAL instancecount AS DWORD, BYVAL basevertex AS LONG, BYVAL baseinstance AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawElementsInstancedBaseVertexBaseInstance")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawElementsInstancedBaseVertexBaseInstance(dwMode, nCount, dwType, pindices, instancecount, basevertex, baseinstance)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawTransformFeedbackInstanced (GLenum mode, GLuint id, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawTransformFeedbackInstanced (BYVAL dwMode AS DWORD, BYVAL dwId AS DWORD, BYVAL primcount AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTransformFeedbackInstanced")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTransformFeedbackInstanced(dwMode, dwId, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDrawTransformFeedbackInstanced (GLenum mode, GLuint id, GLsizei primcount);
 ' =====================================================================================
 METHOD glDrawTransformFeedbackStreamInstanced (BYVAL dwMode AS DWORD, BYVAL dwId AS DWORD, BYVAL dwStream AS DWORD, BYVAL primcount AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTransformFeedbackStreamInstanced")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTransformFeedbackStreamInstanced(dwMode, dwId, dwStream, primcount)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetInternalformativ (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
 ' =====================================================================================
 METHOD glGetInternalformativ (BYVAL dwTarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL pname AS DWORD, BYVAL bufSize AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInternalformativ")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInternalformativ(dwTarget, internalformat, pname, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetActiveAtomicCounterBufferiv (GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetActiveAtomicCounterBufferiv (BYVAL dwProgram AS DWORD, BYVAL bufferIndex AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetActiveAtomicCounterBufferiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetActiveAtomicCounterBufferiv(dwProgram, bufferIndex, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glBindImageTexture (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
 ' =====================================================================================
 METHOD glBindImageTexture (BYVAL dwUnit AS DWORD, BYVAL dwTexture AS DWORD, BYVAL nLevel AS LONG, BYVAL bLayered AS BYTE, BYVAL nLayer AS LONG, BYVAL dwAccess AS DWORD, BYVAL dwFormat AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindImageTexture")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindImageTexture(dwUnit, dwTexture, nLevel, bLayered, nLayer, dwAccess, dwFormat)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMemoryBarrier (GLbitfield barriers);
 ' =====================================================================================
 METHOD glMemoryBarrier (BYVAL barriers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMemoryBarrier")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMemoryBarrier(barriers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexStorage1D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
 ' =====================================================================================
 METHOD glTexStorage1D (BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorage1D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorage1D(dwTarget, dwLevels, internalformat, dwWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexStorage2D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glTexStorage2D(BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorage2D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorage2D(dwTarget, dwLevels, internalformat, dwWidth, dwHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTexStorage3D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
 ' =====================================================================================
 METHOD glTexStorage3D(BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwDepth AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorage3D")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorage3D(dwTarget, dwLevels, internalformat, dwWidth, dwHeight, dwDepth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
 ' =====================================================================================
 METHOD glTextureStorage1DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorage1DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorage1DEXT(dwTexture, dwTarget, dwLevels, internalformat, dwWidth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glTextureStorage2DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorage2DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorage2DEXT(dwTexture, dwTarget, dwLevels, internalformat, dwWidth, dwHeight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
 ' =====================================================================================
 METHOD glTextureStorage3DEXT (BYVAL dwTexture AS DWORD, BYVAL dwTarget AS DWORD, BYVAL dwLevels AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwWidth AS DWORD, BYVAL dwHeight AS DWORD, BYVAL dwDepth AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorage3DEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorage3DEXT(dwTexture, dwTarget, dwLevels, internalformat, dwWidth, dwHeight, dwDepth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
 ' =====================================================================================
 METHOD glDebugMessageControl(BYVAL dwsource AS DWORD, BYVAL dwtype AS DWORD, BYVAL dwseverity AS DWORD, BYVAL ncount AS LONG, BYREF ids AS DWORD, BYVAL enabled AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageControl")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageControl(dwsource, dwtype, dwseverity, ncount, ids, enabled)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
 ' =====================================================================================
 METHOD glDebugMessageInsert(BYVAL dwsource AS DWORD, BYVAL dwtype AS DWORD, BYVAL dwid AS DWORD, BYVAL dwseverity AS DWORD, BYVAL nlength AS LONG, BYREF buf AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageInsert")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageInsert(dwsource, dwtype, dwid, dwseverity, nlength, buf)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
 ' =====================================================================================
 METHOD glDebugMessageCallback(BYVAL pcallback AS DWORD, BYVAL userParam AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDebugMessageCallback")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDebugMessageCallback(pcallback, userParam)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLuint APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
 ' =====================================================================================
 METHOD glGetDebugMessageLog(BYVAL dwcount AS DWORD, BYVAL bufsize AS LONG, BYREF sources AS DWORD, BYREF types AS DWORD, BYREF ids AS DWORD, BYREF severities AS DWORD, BYREF lengths AS LONG, BYREF messageLog AS BYTE) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetDebugMessageLog")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetDebugMessageLog(dwcount, bufsize, sources, types, ids, severities, lengths, messageLog) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
 ' =====================================================================================
 METHOD glPushDebugGroup(BYVAL dwsource AS DWORD, BYVAL dwid AS DWORD, BYVAL nlength AS LONG, BYREF szmessage AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPushDebugGroup")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPushDebugGroup(dwsource, dwid, nlength, szmessage)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glPopDebugGroup (void);
 ' =====================================================================================
 METHOD glPopDebugGroup()
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPopDebugGroup")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPopDebugGroup()
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
 ' =====================================================================================
 METHOD glObjectLabel(BYVAL dwidentifier AS DWORD, BYVAL dwname AS DWORD, BYVAL nlength AS LONG, BYREF szlabel AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glObjectLabel")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glObjectLabel(dwidentifier, dwname, nlength, szlabel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
 ' =====================================================================================
 METHOD glGetObjectLabel(BYVAL dwidentifier AS DWORD, BYVAL dwname AS DWORD, BYVAL bufSize AS LONG, BYREF nlength AS LONG, BYREF szlabel AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectLabel")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectLabel(dwidentifier, dwname, bufSize, nlength, szlabel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
 ' =====================================================================================
 METHOD glObjectPtrLabel(BYVAL ptr_ AS DWORD, BYVAL nlength AS LONG, BYREF szlabel AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glObjectPtrLabel")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glObjectPtrLabel(ptr_, nlength, szlabel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
 ' =====================================================================================
 METHOD glGetObjectPtrLabel(BYVAL ptr_ AS DWORD, BYVAL bufSize AS LONG, BYREF nlength AS LONG, BYREF szlabel AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetObjectPtrLabel")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetObjectPtrLabel(ptr_, bufSize, nlength, szlabel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearBufferData (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
 ' =====================================================================================
 METHOD glClearBufferData(BYVAL dwtarget AS DWORD, BYVAL dwinternalformat AS DWORD, BYVAL dwformat AS DWORD, BYVAL dwtype AS DWORD, BYVAL pdata AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferData(dwtarget, dwinternalformat, dwformat, dwtype, pdata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearBufferSubData (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
 ' =====================================================================================
 METHOD glClearBufferSubData(BYVAL dwtarget AS DWORD, BYVAL dwinternalformat AS DWORD, BYVAL poffset AS LONG, BYVAL psize AS LONG, BYVAL dwformat AS DWORD, BYVAL dwtype AS DWORD, BYVAL pdata AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearBufferSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearBufferSubData(dwtarget, dwinternalformat, poffset, psize, dwformat, dwtype, pdata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearNamedBufferDataEXT (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
 ' =====================================================================================
 METHOD glClearNamedBufferDataEXT(BYVAL dwbuffer AS DWORD, BYVAL dwinternalformat AS DWORD, BYVAL dwformat AS DWORD, BYVAL dwtype AS DWORD, BYVAL pdata AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearNamedBufferDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearNamedBufferDataEXT(dwbuffer, dwinternalformat, dwformat, dwtype, pdata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glClearNamedBufferSubDataEXT (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, GLsizeiptr offset, GLsizeiptr size, const void *data);
 ' =====================================================================================
 METHOD glClearNamedBufferSubDataEXT(BYVAL dwbuffer AS DWORD, BYVAL dwinternalformat AS DWORD, BYVAL dwformat AS DWORD, BYVAL dwtype AS DWORD, BYVAL dwoffset AS DWORD, BYVAL dwsize AS DWORD, BYVAL pdata AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glClearNamedBufferSubDataEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glClearNamedBufferSubDataEXT(dwbuffer, dwinternalformat, dwformat, dwtype, dwoffset, dwsize, pdata)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDispatchCompute (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
 ' =====================================================================================
 METHOD glDispatchCompute(BYVAL num_groups_x AS DWORD, BYVAL num_groups_y AS DWORD, BYVAL num_groups_z AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDispatchCompute")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDispatchCompute(num_groups_x, num_groups_y, num_groups_z)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDispatchComputeIndirect (GLintptr indirect);
 ' =====================================================================================
 METHOD glDispatchComputeIndirect(BYVAL pindirect AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDispatchComputeIndirect")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDispatchComputeIndirect(pindirect)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glCopyImageSubData (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);
 ' =====================================================================================
 METHOD glCopyImageSubData(BYVAL dwsrcName AS DWORD, BYVAL dwsrcTarget AS DWORD, BYVAL srcLevel AS LONG, BYVAL srcX AS LONG, BYVAL srcY AS LONG, BYVAL srcZ AS LONG, BYVAL dstName AS DWORD, BYVAL dstTarget AS DWORD, BYVAL dstLevel AS LONG, BYVAL dstX AS LONG, BYVAL dstY AS LONG, BYVAL dstZ AS LONG, BYVAL srcWidth AS LONG, BYVAL srcHeight AS LONG, BYVAL srcDepth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyImageSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyImageSubData(dwsrcName, dwsrcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTextureView (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
 ' =====================================================================================
 METHOD glTextureView(BYVAL dwtexture AS DWORD, BYVAL dwtarget AS DWORD, BYVAL dworigtexture AS DWORD, BYVAL dwinternalformat AS DWORD, BYVAL minlevel AS DWORD, BYVAL numlevels AS DWORD, BYVAL minlayer AS DWORD, BYVAL numlayers AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureView")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureView(dwtexture, dwtarget, dworigtexture, dwinternalformat, minlevel, numlevels, minlayer, numlayers)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glBindVertexBuffer (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
 ' =====================================================================================
 METHOD glBindVertexBuffer(BYVAL dwbindingindex AS DWORD, BYVAL dwbuffer AS DWORD, BYVAL poffset AS LONG, BYVAL nstride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBindVertexBuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBindVertexBuffer(dwbindingindex, dwbuffer, poffset, nstride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexAttribFormat (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexAttribFormat(BYVAL dwattribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL bnormalized AS BYTE, BYVAL dwrelativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribFormat")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribFormat(dwattribindex, nsize, dwtype, bnormalized, dwrelativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexAttribIFormat (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexAttribIFormat(BYVAL dwattribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL dwrelativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribIFormat")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribIFormat(dwattribindex, nsize, dwtype, dwrelativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexAttribLFormat (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexAttribLFormat(BYVAL dwattribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL dwrelativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribLFormat")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribLFormat(dwattribindex, nsize, dwtype, dwrelativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexAttribBinding (GLuint attribindex, GLuint bindingindex);
 ' =====================================================================================
 METHOD glVertexAttribBinding(BYVAL dwattribindex AS DWORD, BYVAL bindingindex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexAttribBinding")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexAttribBinding(dwattribindex, bindingindex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexBindingDivisor (GLuint bindingindex, GLuint divisor);
 ' =====================================================================================
 METHOD glVertexBindingDivisor(BYVAL bindingindex AS DWORD, BYVAL divisor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexBindingDivisor")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexBindingDivisor(bindingindex, divisor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayBindVertexBufferEXT (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
 ' =====================================================================================
 METHOD glVertexArrayBindVertexBufferEXT(BYVAL vaobj AS DWORD, BYVAL bindingindex AS DWORD, BYVAL dwbuffer AS DWORD, BYVAL poffset AS LONG, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayBindVertexBufferEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayBindVertexBufferEXT(vaobj, bindingindex, dwbuffer, poffset, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayVertexAttribFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexArrayVertexAttribFormatEXT(BYVAL vaobj AS DWORD, BYVAL attribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL normalized AS BYTE, BYVAL relativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexAttribFormatEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexAttribFormatEXT(vaobj, attribindex, nsize, dwtype, normalized, relativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayVertexAttribIFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexArrayVertexAttribIFormatEXT(BYVAL vaobj AS DWORD, BYVAL attribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL relativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexAttribIFormatEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexAttribIFormatEXT(vaobj, attribindex, nsize, dwtype, relativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayVertexAttribLFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
 ' =====================================================================================
 METHOD glVertexArrayVertexAttribLFormatEXT(BYVAL vaobj AS DWORD, BYVAL attribindex AS DWORD, BYVAL nsize AS LONG, BYVAL dwtype AS DWORD, BYVAL relativeoffset AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexAttribLFormatEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexAttribLFormatEXT(vaobj, attribindex, nsize, dwtype, relativeoffset)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayVertexAttribBindingEXT (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
 ' =====================================================================================
 METHOD glVertexArrayVertexAttribBindingEXT(BYVAL vaobj AS DWORD, BYVAL attribindex AS DWORD, BYVAL bindingindex AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexAttribBindingEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexAttribBindingEXT(vaobj, attribindex, bindingindex)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glVertexArrayVertexBindingDivisorEXT (GLuint vaobj, GLuint bindingindex, GLuint divisor);
 ' =====================================================================================
 METHOD glVertexArrayVertexBindingDivisorEXT(BYVAL vaobj AS DWORD, BYVAL bindingindex AS DWORD, BYVAL divisor AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glVertexArrayVertexBindingDivisorEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glVertexArrayVertexBindingDivisorEXT(vaobj, bindingindex, divisor)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glFramebufferParameteri (GLenum target, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glFramebufferParameteri(BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glFramebufferParameteri")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glFramebufferParameteri(dwtarget, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetFramebufferParameteriv (GLenum target, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetFramebufferParameteriv(BYVAL dwtarget AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetFramebufferParameteriv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetFramebufferParameteriv(dwtarget, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glNamedFramebufferParameteriEXT (GLuint framebuffer, GLenum pname, GLint param);
 ' =====================================================================================
 METHOD glNamedFramebufferParameteriEXT(BYVAL framebuffer AS DWORD, BYVAL pname AS DWORD, BYVAL param AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glNamedFramebufferParameteriEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glNamedFramebufferParameteriEXT(framebuffer, pname, param)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetNamedFramebufferParameterivEXT (GLuint framebuffer, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetNamedFramebufferParameterivEXT(BYVAL framebuffer AS DWORD, BYVAL pname AS DWORD, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetNamedFramebufferParameterivEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetNamedFramebufferParameterivEXT(framebuffer, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetInternalformati64v (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
 ' =====================================================================================
 METHOD glGetInternalformati64v(BYVAL dwtarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL pname AS DWORD, BYVAL bufSize AS LONG, BYREF params AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetInternalformati64v")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetInternalformati64v(dwtarget, internalformat, pname, bufSize, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateTexSubImage (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
 ' =====================================================================================
 METHOD glInvalidateTexSubImage(BYVAL dwtexture AS DWORD, BYVAL nlevel AS LONG, BYVAL xoffset AS LONG, BYVAL yoffset AS LONG, BYVAL zoffset AS LONG, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL ndepth AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateTexSubImage")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateTexSubImage(dwtexture, nlevel, xoffset, yoffset, zoffset, nwidth, nheight, ndepth)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateTexImage (GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glInvalidateTexImage(BYVAL dwtexture AS DWORD, BYVAL nlevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateTexImage")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateTexImage(dwtexture, nlevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateBufferSubData (GLuint buffer, GLintptr offset, GLsizeiptr length);
 ' =====================================================================================
 METHOD glInvalidateBufferSubData(BYVAL dwbuffer AS DWORD, BYVAL poffset AS LONG, BYVAL plength AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateBufferSubData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateBufferSubData(dwbuffer, poffset, plength)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateBufferData (GLuint buffer);
 ' =====================================================================================
 METHOD glInvalidateBufferData(BYVAL dwbuffer AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateBufferData")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateBufferData(dwbuffer)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments);
 ' =====================================================================================
 METHOD glInvalidateFramebuffer(BYVAL dwtarget AS DWORD, BYVAL numAttachments AS LONG, BYREF attachments AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateFramebuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateFramebuffer(dwtarget, numAttachments, attachments)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glInvalidateSubFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
 ' =====================================================================================
 METHOD glInvalidateSubFramebuffer(BYVAL dwtarget AS DWORD, BYVAL numAttachments AS LONG, BYREF attachments AS DWORD, BYVAL x AS LONG, BYVAL y AS LONG, BYVAL nwidth AS LONG, BYVAL nheight AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInvalidateSubFramebuffer")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInvalidateSubFramebuffer(dwtarget, numAttachments, attachments, x, y, nwidth, nheight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiDrawArraysIndirect (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
 ' =====================================================================================
 METHOD glMultiDrawArraysIndirect(BYVAL dwmode AS DWORD, BYREF indirect AS DWORD, BYVAL drawcount AS LONG, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawArraysIndirect")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawArraysIndirect(dwmode, indirect, drawcount, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMultiDrawElementsIndirect (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
 ' =====================================================================================
 METHOD glMultiDrawElementsIndirect(BYVAL dwmode AS DWORD, BYVAL dwtype AS DWORD, BYREF indirect AS DWORD, BYVAL drawcount AS LONG, BYVAL stride AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElementsIndirect")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElementsIndirect(dwmode, dwtype, indirect, drawcount, stride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetProgramInterfaceiv (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramInterfaceiv(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYVAL pname AS DWORD, BYREF params AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramInterfaceiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramInterfaceiv(program, programInterface, pname, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLuint APIENTRY glGetProgramResourceIndex (GLuint program, GLenum programInterface, const GLchar *name);
 ' =====================================================================================
 METHOD glGetProgramResourceIndex(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYREF szname AS ASCIIZ) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGetProgramResourceIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramResourceIndex(program, programInterface, szname) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetProgramResourceName (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
 ' =====================================================================================
 METHOD glGetProgramResourceName(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYVAL dwindex AS DWORD, BYVAL bufSize AS LONG, BYREF nlength AS LONG, BYREF szname AS ASCIIZ)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramResourceName")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramResourceName(program, programInterface, dwindex, bufSize, nlength, szname)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glGetProgramResourceiv (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
 ' =====================================================================================
 METHOD glGetProgramResourceiv(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYVAL dwindex AS DWORD, BYVAL propCount AS LONG, BYREF props AS DWORD, BYVAL bufSize AS LONG, BYREF nlength AS LONG, BYREF params AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetProgramResourceiv")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramResourceiv(program, programInterface, dwindex, propCount, props, bufSize, nlength, params)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLint APIENTRY glGetProgramResourceLocation (GLuint program, GLenum programInterface, const GLchar *name);
 ' =====================================================================================
 METHOD glGetProgramResourceLocation(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYREF szname AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetProgramResourceLocation")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramResourceLocation(program, programInterface, szname) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLint APIENTRY glGetProgramResourceLocationIndex (GLuint program, GLenum programInterface, const GLchar *name);
 ' =====================================================================================
 METHOD glGetProgramResourceLocationIndex(BYVAL program AS DWORD, BYVAL programInterface AS DWORD, BYREF szname AS ASCIIZ) AS LONG
 LOCAL pProc AS DWORD, lRes AS LONG
 pProc = wglGetProcAddress("glGetProgramResourceLocationIndex")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetProgramResourceLocationIndex(program, programInterface, szname) TO lRes
 METHOD = lRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glShaderStorageBlockBinding (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
 ' =====================================================================================
 METHOD glShaderStorageBlockBinding(BYVAL program AS DWORD, BYVAL storageBlockIndex AS DWORD, BYVAL storageBlockBinding AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glShaderStorageBlockBinding")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexBufferRange (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glTexBufferRange(BYVAL dwtarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwbuffer AS DWORD, BYVAL poffset AS LONG, BYVAL psize AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexBufferRange")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexBufferRange(dwtarget, internalformat, dwbuffer, poffset, psize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTextureBufferRangeEXT (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
 ' =====================================================================================
 METHOD glTextureBufferRangeEXT(BYVAL dwtexture AS DWORD, BYVAL dwtarget AS DWORD, BYVAL internalformat AS DWORD, BYVAL dwbuffer AS DWORD, BYVAL poffset AS LONG, BYVAL psize AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureBufferRangeEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureBufferRangeEXT(dwtexture, dwtarget, internalformat, dwbuffer, poffset, psize)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexStorage2DMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTexStorage2DMultisample(BYVAL dwtarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorage2DMultisample")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorage2DMultisample(dwtarget, samples, internalformat, nwidth, nheight, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexStorage3DMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTexStorage3DMultisample(BYVAL dwtarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL ndepth AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorage3DMultisample")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorage3DMultisample(dwtarget, samples, internalformat, nwidth, nheight, ndepth, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTextureStorage2DMultisampleEXT (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTextureStorage2DMultisampleEXT(BYVAL dwtexture AS DWORD, BYVAL dwtarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorage2DMultisampleEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorage2DMultisampleEXT(dwtexture, dwtarget, samples, internalformat, nwidth, nheight, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTextureStorage3DMultisampleEXT (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
 ' =====================================================================================
 METHOD glTextureStorage3DMultisampleEXT(BYVAL dwtexture AS DWORD, BYVAL dwtarget AS DWORD, BYVAL samples AS LONG, BYVAL internalformat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL fixedsamplelocations AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorage3DMultisampleEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorage3DMultisampleEXT(dwtexture, dwtarget, samples, internalformat, nwidth, nheight, fixedsamplelocations)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glSetMultisamplefvAMD (GLenum pname, GLuint index, const GLfloat *val);
 ' =====================================================================================
 METHOD glSetMultisamplefvAMD (BYVAL pname AS DWORD, BYVAL dwIndex AS DWORD, BYREF rgVal AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSetMultisamplefvAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSetMultisamplefvAMD(pname, dwIndex, rgVal)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLsync glImportSyncEXT (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags);
 ' =====================================================================================
 METHOD glImportSyncEXT (BYVAL pname AS DWORD, BYVAL dwIndex AS DWORD, BYREF rgVal AS SINGLE) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glImportSyncEXT")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glImportSyncEXT(pname, dwIndex, rgVal) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawArraysIndirectAMD (GLenum mode, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
 ' =====================================================================================
 METHOD glMultiDrawArraysIndirectAMD (BYVAL dwMode AS DWORD, BYVAL pindirect AS DWORD, BYVAL primcount AS DWORD, BYVAL dwStride AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawArraysIndirectAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawArraysIndirectAMD(dwMode, pindirect, primcount, dwStride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glMultiDrawElementsIndirectAMD (GLenum mode, GLenum type, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
 ' =====================================================================================
 METHOD glMultiDrawElementsIndirectAMD (BYVAL dwMode AS DWORD, BYVAL dwType AS DWORD, BYVAL pindirect AS DWORD, BYVAL primcount AS DWORD, BYVAL dwStride AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMultiDrawElementsIndirectAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMultiDrawElementsIndirectAMD(dwMode, dwType, pindirect, primcount, dwStride)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLuint glGenPathsNV (GLsizei range);
 ' =====================================================================================
 METHOD glGenPathsNV (BYVAL dwRange AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glGenPathsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGenPathsNV(dwRange) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glDeletePathsNV (GLuint path, GLsizei range);
 ' =====================================================================================
 METHOD glDeletePathsNV (BYVAL dwPath AS DWORD, BYVAL dwRange AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDeletePathsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDeletePathsNV(dwPath, dwRange)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsPathNV (GLuint path);
 ' =====================================================================================
 METHOD glIsPathNV (BYVAL dwPath AS DWORD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsPathNV(dwPath) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathCommandsNV (GLuint path, GLsizei numCommands, const GLubyte *commands, GLsizei numCoords, GLenum coordType, const GLvoid *coords);
 ' =====================================================================================
 METHOD glPathCommandsNV (BYVAL dwPath AS DWORD, BYVAL numCommands AS DWORD, BYREF commands AS BYTE, BYVAL numCoords AS DWORD, BYVAL coordType AS DWORD, BYVAL pcoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathCommandsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathCommandsNV(dwPath, numCommands, commands, numCoords, coordType, pcoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathCoordsNV (GLuint path, GLsizei numCoords, GLenum coordType, const GLvoid *coords);
 ' =====================================================================================
 METHOD glPathCoordsNV (BYVAL dwPath AS DWORD, BYVAL numCoords AS DWORD, BYVAL coordType AS DWORD, BYVAL pcoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathCoordsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathCoordsNV(dwPath, numCoords, coordType, pcoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathSubCommandsNV (GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte *commands, GLsizei numCoords, GLenum coordType, const GLvoid *coords);
 ' =====================================================================================
 METHOD glPathSubCommandsNV (BYVAL dwPath AS DWORD, BYVAL commandStart AS DWORD, BYVAL commandsToDelete AS DWORD, BYVAL numCommands AS DWORD, BYREF commands AS BYTE, BYVAL numCoords AS DWORD, BYVAL coordType AS DWORD, BYVAL pcoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathSubCommandsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathSubCommandsNV(dwPath, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, pcoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathSubCoordsNV (GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const GLvoid *coords);
 ' =====================================================================================
 METHOD glPathSubCoordsNV (BYVAL dwPath AS DWORD, BYVAL coordStart AS DWORD, BYVAL numCoords AS DWORD, BYVAL coordType AS DWORD, BYVAL pcoords AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathSubCoordsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathSubCoordsNV(dwPath, coordStart, numCoords, coordType, pcoords)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathStringNV (GLuint path, GLenum format, GLsizei length, const GLvoid *pathString);
 ' =====================================================================================
 METHOD glPathStringNV (BYVAL dwPath AS DWORD, BYVAL dwFormat AS DWORD, BYVAL dwLength AS DWORD, BYVAL pathString AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathStringNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathStringNV(dwPath, dwFormat, dwLength, pathString)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathGlyphsNV (GLuint firstPathName, GLenum fontTarget, const GLvoid *fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const GLvoid *charcodes,
 ' GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
 ' =====================================================================================
 METHOD glPathGlyphsNV (BYVAL firstPathName AS DWORD, BYVAL fontTarget AS DWORD, BYVAL fontName AS DWORD, BYVAL fontStyle AS DWORD, BYVAL numGlyphs AS DWORD, BYVAL dwType AS DWORD, BYVAL charcodes AS DWORD, BYVAL handleMissingGlyphs AS DWORD, BYVAL pathParameterTemplate AS DWORD, BYVAL emScale AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathGlyphsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathGlyphsNV(firstPathName, fontTarget, fontName, fontStyle, numGlyphs, dwType, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathGlyphRangeNV (GLuint firstPathName, GLenum fontTarget, const GLvoid *fontName, GLbitfield fontStyle,
 ' GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
 ' =====================================================================================
 METHOD glPathGlyphRangeNV (BYVAL firstPathName AS DWORD, BYVAL fontTarget AS DWORD, BYVAL fontName AS DWORD, BYVAL fontStyle AS DWORD, BYVAL firstGlyph AS DWORD, BYVAL numGlyphs AS DWORD, BYVAL handleMissingGlyphs AS DWORD, BYVAL pathParameterTemplate AS DWORD, BYVAL emScale AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathGlyphRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathGlyphRangeNV(firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glWeightPathsNV (GLuint resultPath, GLsizei numPaths, const GLuint *paths, const GLfloat *weights);
 ' =====================================================================================
 METHOD glWeightPathsNV (BYVAL resultPath AS DWORD, BYVAL numPaths AS DWORD, BYVAL paths AS DWORD, BYREF weights AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glWeightPathsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glWeightPathsNV(resultPath, numPaths, paths, weights)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCopyPathNV (GLuint resultPath, GLuint srcPath);
 ' =====================================================================================
 METHOD glCopyPathNV (BYVAL resultPath AS DWORD, BYVAL srcPath AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCopyPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCopyPathNV(resultPath, srcPath)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glInterpolatePathsNV (GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight);
 ' =====================================================================================
 METHOD glInterpolatePathsNV (BYVAL resultPath AS DWORD, BYVAL pathA AS DWORD, BYVAL pathB AS DWORD, BYVAL fweight AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glInterpolatePathsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glInterpolatePathsNV(resultPath, pathA, pathB, fweight)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glTransformPathNV (GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat *transformValues);
 ' =====================================================================================
 METHOD glTransformPathNV (BYVAL resultPath AS DWORD, BYVAL srcPath AS DWORD, BYVAL transformType AS DWORD, BYREF transformValues AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTransformPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTransformPathNV(resultPath, srcPath, transformType, transformValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathParameterivNV (GLuint path, GLenum pname, const GLint *value);
 ' =====================================================================================
 METHOD glPathParameterivNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathParameterivNV(dwPath, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathParameteriNV (GLuint path, GLenum pname, const GLint *value);
 ' =====================================================================================
 METHOD glPathParameteriNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYVAL nValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathParameteriNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathParameteriNV(dwPath, pname, nValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathParameterfvNV (GLuint path, GLenum pname, const GLfloat *value);
 ' =====================================================================================
 METHOD glPathParameterfvNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathParameterfvNV(dwPath, pname, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathParameterfNV (GLuint path, GLenum pname, GLfloat value);
 ' =====================================================================================
 METHOD glPathParameterfNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathParameterfNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathParameterfvNV(dwPath, pname, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathDashArrayNV (GLuint path, GLsizei dashCount, const GLfloat *dashArray);
 ' =====================================================================================
 METHOD glPathDashArrayNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF fvalue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathDashArrayNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathDashArrayNV(dwPath, pname, fvalue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathStencilFuncNV (GLenum func, GLint ref, GLuint mask);
 ' =====================================================================================
 METHOD glPathStencilFuncNV (BYVAL dwFunc AS DWORD, BYVAL nRef AS LONG, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathStencilFuncNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathStencilFuncNV(dwFunc, nRef, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathStencilDepthOffsetNV (GLfloat factor, GLfloat units);
 ' =====================================================================================
 METHOD glPathStencilDepthOffsetNV (BYVAL factor AS SINGLE, BYVAL funits AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathStencilDepthOffsetNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathStencilDepthOffsetNV(factor, funits)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilFillPathNV (GLuint path, GLenum fillMode, GLuint mask);
 ' =====================================================================================
 METHOD glStencilFillPathNV (BYVAL dwPath AS DWORD, BYVAL fillMode AS DWORD, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilFillPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilFillPathNV(dwPath, fillMode, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilStrokePathNV (GLuint path, GLint reference, GLuint mask);
 ' =====================================================================================
 METHOD glStencilStrokePathNV (BYVAL dwPath AS DWORD, BYVAL reference AS LONG, BYVAL dwMask AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilStrokePathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilStrokePathNV(dwPath, reference, dwMask)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilFillPathInstancedNV (GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat *transformValues);
 ' =====================================================================================
 METHOD glStencilFillPathInstancedNV (BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL fillMode AS DWORD, BYVAL dwMask AS DWORD, BYVAL transformType AS DWORD, BYREF transformValues AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilFillPathInstancedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, fillMode, dwMask, transformType, transformValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilStrokePathInstancedNV (GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat *transformValues);
 ' =====================================================================================
 METHOD glStencilStrokePathInstancedNV (BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL reference AS LONG, BYVAL dwMask AS DWORD, BYVAL transformType AS DWORD, BYREF transformValues AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilStrokePathInstancedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, reference, dwMask, transformType, transformValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathCoverDepthFuncNV (GLenum func);
 ' =====================================================================================
 METHOD glPathCoverDepthFuncNV (BYVAL dwFunc AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathCoverDepthFuncNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathCoverDepthFuncNV(dwFunc)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathColorGenNV (GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat *coeffs);
 ' =====================================================================================
 METHOD glPathColorGenNV (BYVAL dwColor AS DWORD, BYVAL genMode AS DWORD, BYVAL colorFormat AS DWORD, BYREF coeffs AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathColorGenNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathColorGenNV(dwColor, genMode, colorFormat, coeffs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathTexGenNV (GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat *coeffs);
 ' =====================================================================================
 METHOD glPathTexGenNV (BYVAL texCoordSet AS DWORD, BYVAL genMode AS DWORD, BYVAL components AS LONG, BYREF coeffs AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathTexGenNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathTexGenNV(texCoordSet, genMode, components, coeffs)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glPathFogGenNV (GLenum genMode);
 ' =====================================================================================
 METHOD glPathFogGenNV (BYVAL genMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glPathFogGenNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPathFogGenNV(genMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCoverFillPathNV (GLuint path, GLenum coverMode);
 ' =====================================================================================
 METHOD glCoverFillPathNV (BYVAL dwPath AS DWORD, BYVAL coverMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCoverFillPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCoverFillPathNV(dwPath, coverMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void APIENTRY glCoverFillPathNV (GLuint path, GLenum coverMode);
 ' =====================================================================================
 METHOD glCoverStrokePathNV (BYVAL dwPath AS DWORD, BYVAL coverMode AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCoverStrokePathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCoverStrokePathNV(dwPath, coverMode)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCoverFillPathInstancedNV (GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
 ' =====================================================================================
 METHOD glCoverFillPathInstancedNV (BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL coverMode AS DWORD, BYVAL transformType AS DWORD, BYREF transformValues AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCoverFillPathInstancedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCoverFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glCoverStrokePathInstancedNV (GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
 ' =====================================================================================
 METHOD glCoverStrokePathInstancedNV (BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL coverMode AS DWORD, BYVAL transformType AS DWORD, BYREF transformValues AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glCoverStrokePathInstancedNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glCoverStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathParameterivNV (GLuint path, GLenum pname, GLint *value);
 ' =====================================================================================
 METHOD glGetPathParameterivNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathParameterivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathParameterivNV(dwPath, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathParameterfvNV (GLuint path, GLenum pname, GLfloat *value);
 ' =====================================================================================
 METHOD glGetPathParameterfvNV (BYVAL dwPath AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathParameterfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathParameterfvNV(dwPath, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathCommandsNV (GLuint path, GLubyte *commands);
 ' =====================================================================================
 METHOD glGetPathCommandsNV (BYVAL dwPath AS DWORD, BYREF commands AS BYTE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathCommandsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathCommandsNV(dwPath, commands)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathCoordsNV (GLuint path, GLfloat *coords);
 ' =====================================================================================
 METHOD glGetPathCoordsNV (BYVAL dwPath AS DWORD, BYREF commands AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathCoordsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathCoordsNV(dwPath, commands)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathDashArrayNV (GLuint path, GLfloat *dashArray);
 ' =====================================================================================
 METHOD glGetPathDashArrayNV (BYVAL dwPath AS DWORD, BYREF dashArray AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathDashArrayNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathDashArrayNV(dwPath, dashArray)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathMetricsNV (GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLsizei stride, GLfloat *metrics);
 ' =====================================================================================
 METHOD glGetPathMetricsNV (BYVAL metricQueryMask AS DWORD, BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL stride AS DWORD, BYREF fmetrics AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathMetricsNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathMetricsNV(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, fmetrics)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathMetricRangeNV (GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat *metrics);
 ' =====================================================================================
 METHOD glGetPathMetricRangeNV (BYVAL metricQueryMask AS DWORD, BYVAL firstPathName AS DWORD, BYVAL numPaths AS DWORD, BYVAL stride AS DWORD, BYREF fmetrics AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathMetricRangeNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathMetricRangeNV(metricQueryMask, firstPathName, numPaths, stride, fmetrics)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathSpacingNV (GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const GLvoid *paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing);
 ' =====================================================================================
 METHOD glGetPathSpacingNV (BYVAL pathListMode AS DWORD, BYVAL numPaths AS DWORD, BYVAL pathNameType AS DWORD, BYVAL paths AS DWORD, BYVAL pathBase AS DWORD, BYVAL advanceScale AS SINGLE, BYVAL kerningScale AS SINGLE, BYVAL transformType AS DWORD, BYREF returnedSpacing AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathSpacingNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathSpacingNV(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathColorGenivNV (GLenum color, GLenum pname, GLint *value);
 ' =====================================================================================
 METHOD glGetPathColorGenivNV (BYVAL dwColor AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathColorGenivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathColorGenivNV(dwColor, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathColorGenfvNV (GLenum color, GLenum pname, GLfloat *value);
 ' =====================================================================================
 METHOD glGetPathColorGenfvNV (BYVAL dwColor AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathColorGenfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathColorGenfvNV(dwColor, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathTexGenivNV (GLenum texCoordSet, GLenum pname, GLint *value);
 ' =====================================================================================
 METHOD glGetPathTexGenivNV (BYVAL texCoordSet AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathTexGenivNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathTexGenivNV(texCoordSet, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glGetPathTexGenfvNV (GLenum texCoordSet, GLenum pname, GLfloat *value);
 ' =====================================================================================
 METHOD glGetPathTexGenfvNV (BYVAL texCoordSet AS DWORD, BYVAL pname AS DWORD, BYREF rgValue AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glGetPathTexGenfvNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathTexGenfvNV(texCoordSet, pname, rgValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsPointInFillPathNV (GLuint path, GLuint mask, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glIsPointInFillPathNV (BYVAL dwPath AS DWORD, BYVAL dwMask AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsPointInFillPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsPointInFillPathNV(dwPath, dwMask, x, y) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glIsPointInStrokePathNV (GLuint path, GLfloat x, GLfloat y);
 ' =====================================================================================
 METHOD glIsPointInStrokePathNV (BYVAL dwPath AS DWORD, BYVAL x AS SINGLE, BYVAL y AS SINGLE) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsPointInStrokePathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsPointInStrokePathNV(dwPath, x, y) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLfloat glGetPathLengthNV (GLuint path, GLsizei startSegment, GLsizei numSegments);
 ' =====================================================================================
 METHOD glGetPathLengthNV (BYVAL dwPath AS DWORD, BYVAL startSegment AS DWORD, BYVAL numSegments AS DWORD) AS SINGLE
 LOCAL pProc AS DWORD, fRes AS SINGLE
 pProc = wglGetProcAddress("glGetPathLengthNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetPathLengthNV(dwPath, startSegment, numSegments) TO fRes
 METHOD = fRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLboolean glPointAlongPathNV (GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat *x, GLfloat *y, GLfloat *tangentX, GLfloat *tangentY);
 ' =====================================================================================
 METHOD glPointAlongPathNV (BYVAL dwPath AS DWORD, BYVAL startSegment AS DWORD, BYVAL numSegments AS DWORD, BYVAL distance AS SINGLE, BYREF x AS SINGLE, BYREF y AS SINGLE, BYREF tangentX AS SINGLE, BYREF tangentY AS SINGLE) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glPointAlongPathNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glPointAlongPathNV(dwPath, startSegment, numSegments, distance, x, y, tangentX, tangentY) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' void glStencilOpValueAMD (GLenum face, GLuint value);
 ' =====================================================================================
 METHOD glStencilOpValueAMD (BYVAL dwFace AS DWORD, BYVAL dwValue AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glStencilOpValueAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glStencilOpValueAMD(dwFace, dwValue)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLuint64 APIENTRY glGetTextureHandleNV (GLuint texture);
 ' =====================================================================================
 METHOD glGetTextureHandleNV (BYVAL dwtexture AS DWORD) AS QUAD
 LOCAL pProc AS DWORD, qRes AS QUAD
 pProc = wglGetProcAddress("glGetTextureHandleNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureHandleNV(dwtexture) TO qRes
 METHOD = qRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLuint64 APIENTRY glGetTextureSamplerHandleNV (GLuint texture, GLuint sampler);
 ' =====================================================================================
 METHOD glGetTextureSamplerHandleNV (BYVAL dwtexture AS DWORD, BYVAL sampler AS DWORD) AS QUAD
 LOCAL pProc AS DWORD, qRes AS QUAD
 pProc = wglGetProcAddress("glGetTextureSamplerHandleNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetTextureSamplerHandleNV(dwtexture, sampler) TO qRes
 METHOD = qRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMakeTextureHandleResidentNV (GLuint64 handle);
 ' =====================================================================================
 METHOD glMakeTextureHandleResidentNV (BYVAL qhandle AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeTextureHandleResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeTextureHandleResidentNV(qhandle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMakeTextureHandleNonResidentNV (GLuint64 handle);
 ' =====================================================================================
 METHOD glMakeTextureHandleNonResidentNV (BYVAL qhandle AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeTextureHandleNonResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeTextureHandleNonResidentNV(qhandle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLuint64 APIENTRY glGetImageHandleNV (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format);
 ' =====================================================================================
 METHOD glGetImageHandleNV (BYVAL dwtexture AS DWORD, BYVAL nlevel AS LONG, BYVAL layered AS BYTE, BYVAL layer AS LONG, BYVAL dwformat AS DWORD) AS QUAD
 LOCAL pProc AS DWORD, qRes AS QUAD
 pProc = wglGetProcAddress("glGetImageHandleNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glGetImageHandleNV(dwtexture, nlevel, layered, layer, dwformat) TO qRes
 METHOD = qRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMakeImageHandleResidentNV (GLuint64 handle, GLenum access);
 ' =====================================================================================
 METHOD glMakeImageHandleResidentNV (BYVAL qhandle AS QUAD, BYVAL dwaccess AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeImageHandleResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeImageHandleResidentNV(qhandle, dwaccess)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glMakeImageHandleNonResidentNV (GLuint64 handle);
 ' =====================================================================================
 METHOD glMakeImageHandleNonResidentNV (BYVAL qhandle AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glMakeImageHandleNonResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMakeImageHandleNonResidentNV(qhandle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glUniformHandleui64NV (GLint location, GLuint64 value);
 ' =====================================================================================
 METHOD glUniformHandleui64NV (BYVAL location AS LONG, BYVAL qhandle AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformHandleui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformHandleui64NV(location, qhandle)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glUniformHandleui64vNV (GLint location, GLsizei count, const GLuint64 *value);
 ' =====================================================================================
 METHOD glUniformHandleui64vNV (BYVAL location AS LONG, BYVAL ncount AS LONG, BYREF value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUniformHandleui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUniformHandleui64vNV(location, ncount, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glProgramUniformHandleui64NV (GLuint program, GLint location, GLuint64 value);
 ' =====================================================================================
 METHOD glProgramUniformHandleui64NV (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL value AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformHandleui64NV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformHandleui64NV(program, location, value)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glProgramUniformHandleui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64 *values);
 ' =====================================================================================
 METHOD glProgramUniformHandleui64vNV (BYVAL program AS DWORD, BYVAL location AS LONG, BYVAL ncount AS LONG, BYREF values AS QUAD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glProgramUniformHandleui64vNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glProgramUniformHandleui64vNV(program, location, ncount, values)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLboolean APIENTRY glIsTextureHandleResidentNV (GLuint64 handle);
 ' =====================================================================================
 METHOD glIsTextureHandleResidentNV (BYVAL qhandle AS QUAD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsTextureHandleResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsTextureHandleResidentNV(qhandle) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLboolean APIENTRY glIsImageHandleResidentNV (GLuint64 handle);
 ' =====================================================================================
 METHOD glIsImageHandleResidentNV (BYVAL qhandle AS QUAD) AS BYTE
 LOCAL pProc AS DWORD, bRes AS BYTE
 pProc = wglGetProcAddress("glIsImageHandleResidentNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glIsImageHandleResidentNV(qhandle) TO bRes
 METHOD = bRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glBeginConditionalRenderNVX (GLuint id);
 ' =====================================================================================
 METHOD glBeginConditionalRenderNVX (BYVAL dwid AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glBeginConditionalRenderNVX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glBeginConditionalRenderNVX(dwid)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glEndConditionalRenderNVX (void);
 ' =====================================================================================
 METHOD glEndConditionalRenderNVX ()
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glEndConditionalRenderNVX")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glEndConditionalRenderNVX()
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTexStorageSparseAMD (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
 ' =====================================================================================
 METHOD glTexStorageSparseAMD (BYVAL dwtarget AS DWORD, BYVAL internalFormat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL depth AS LONG, BYVAL layers AS LONG, BYVAL flags AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTexStorageSparseAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTexStorageSparseAMD(dwtarget, internalFormat, nwidth, nheight, depth, layers, flags)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glTextureStorageSparseAMD (GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
 ' =====================================================================================
 METHOD glTextureStorageSparseAMD (BYVAL dwtexture AS DWORD, BYVAL dwtarget AS DWORD, BYVAL internalFormat AS DWORD, BYVAL nwidth AS LONG, BYVAL nheight AS LONG, BYVAL depth AS LONG, BYVAL layers AS LONG, BYVAL flags AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glTextureStorageSparseAMD")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glTextureStorageSparseAMD(dwtexture, dwtarget, internalFormat, nwidth, nheight, depth, layers, flags)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glSyncTextureINTEL (GLuint texture);
 ' =====================================================================================
 METHOD glSyncTextureINTEL (BYVAL dwtexture AS DWORD)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glSyncTextureINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glSyncTextureINTEL(dwtexture)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glUnmapTexture2DINTEL (GLuint texture, GLint level);
 ' =====================================================================================
 METHOD glUnmapTexture2DINTEL (BYVAL dwtexture AS DWORD, BYVAL nlevel AS LONG)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glUnmapTexture2DINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glUnmapTexture2DINTEL(dwtexture, nlevel)
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI GLvoid* APIENTRY glMapTexture2DINTEL (GLuint texture, GLint level, GLbitfield access, const GLint *stride, const GLenum *layout);
 ' =====================================================================================
 METHOD glMapTexture2DINTEL (BYVAL dwtexture AS DWORD, BYVAL nlevel AS LONG, BYVAL dwaccess AS DWORD, BYREF stride AS LONG, BYREF layout AS DWORD) AS DWORD
 LOCAL pProc, dwRes AS DWORD
 pProc = wglGetProcAddress("glMapTexture2DINTEL")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glMapTexture2DINTEL(dwtexture, nlevel, dwaccess, stride, layout) TO dwRes
 METHOD = dwRes
 END METHOD
 ' =====================================================================================
 ' =====================================================================================
 ' GLAPI void APIENTRY glDrawTextureNV (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1);
 ' =====================================================================================
 METHOD glDrawTextureNV (BYVAL dwtexture AS DWORD, BYVAL sampler AS DWORD, BYVAL x0 AS SINGLE, BYVAL y0 AS SINGLE, BYVAL x1 AS SINGLE, BYVAL y1 AS SINGLE, BYVAL z AS SINGLE, BYVAL s0 AS SINGLE, BYVAL t0 AS SINGLE, BYVAL s1 AS SINGLE, BYVAL t1 AS SINGLE)
 LOCAL pProc AS DWORD
 pProc = wglGetProcAddress("glDrawTextureNV")
 IF pProc = 0 THEN METHOD OBJRESULT = &H8007007F& : EXIT METHOD
 CALL DWORD pProc USING glDrawTextureNV(dwtexture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1)
 END METHOD
 ' =====================================================================================
 END INTERFACE
END CLASS
#ENDIF
