glh_genext.h
上传用户:king477883
上传日期:2021-03-01
资源大小:9553k
文件大小:95k
源码类别:

游戏引擎

开发平台:

C++ Builder

  1. /*
  2.  * @file glh_genext.h
  3.  * @brief Borrowed from: "NVParse Library with Source (.zip) (2390 KB)" from NVIDIA Corporation
  4.  *
  5.  * $LicenseInfo:firstyear=none&license=NVParse$
  6.  *
  7.  * Copyright (c) 2001-2009, NVIDIA
  8.  *
  9.  *  License (original in license_info.txt in http://developer.nvidia.com/attach/8196 downloaded on 2006-12-18):
  10.  *  The files bison.exe, bison.simple, and flex.exe are covered by
  11.  *  the GPL.  All other files in this distribution can be used however
  12.  *  you want.
  13.  * $/LicenseInfo$
  14.  */
  15. /* File generated by extgen.cpp -- do not modify */
  16. #ifndef GLH_GENEXT_H
  17. #define GLH_GENEXT_H
  18. // MBW -- None of this is necessary on Mac OS.
  19. #ifndef __APPLE__
  20. #include <GL/gl.h>
  21. #include <GL/glext.h>
  22. #ifdef _WIN32 /* supports windows, x -- need to generalize */
  23. #  include <GL/wglext.h>
  24. #  define GLH_EXT_GET_PROC_ADDRESS(p)   wglGetProcAddress(p) 
  25. #else if GLX_VERSION_1_3
  26. #  include <GL/glxext.h>
  27. #  define GLH_EXT_GET_PROC_ADDRESS(p)   glXGetProcAddressARB(p) 
  28. #endif
  29. #ifdef GLH_EXT_SINGLE_FILE
  30. #define GLH_EXTERN
  31.  #define GLH_INITIALIZER = 0
  32. #else
  33. #define GLH_EXTERN extern
  34.  #define GLH_INITIALIZER
  35. #endif
  36. #define GLH__PREPROCESSOR_GYMNASTICS2(a,b) a##b
  37. #define GLH__PREPROCESSOR_GYMNASTICS(a,b) GLH__PREPROCESSOR_GYMNASTICS2(a,b)
  38. #ifndef GLH_EXT_PREFIX
  39. # define GLH_EXT_NAME(a) a
  40. #else
  41. # define GLH_EXT_NAME(a) GLH__PREPROCESSOR_GYMNASTICS(GLH_EXT_PREFIX,a)
  42. #endif
  43. #ifndef _WIN32
  44. # ifndef GLH_CORE_1_2_PREFIX
  45. #  define GLH_CORE_1_2_PREFIX _
  46. # endif
  47. #endif
  48. #ifndef GLH_CORE_1_2_PREFIX
  49. # define GLH_CORE_1_2_NAME(a) a
  50. #else
  51. # define GLH_CORE_1_2_NAME(a) GLH__PREPROCESSOR_GYMNASTICS(GLH_CORE_1_2_PREFIX,a)
  52. #endif
  53. #ifdef GL_ARB_multitexture
  54.     GLH_EXTERN PFNGLMULTITEXCOORD1DARBPROC GLH_EXT_NAME(glMultiTexCoord1dARB) GLH_INITIALIZER;
  55.     GLH_EXTERN PFNGLMULTITEXCOORD1DVARBPROC GLH_EXT_NAME(glMultiTexCoord1dvARB) GLH_INITIALIZER;
  56.     GLH_EXTERN PFNGLMULTITEXCOORD1FARBPROC GLH_EXT_NAME(glMultiTexCoord1fARB) GLH_INITIALIZER;
  57.     GLH_EXTERN PFNGLMULTITEXCOORD1FVARBPROC GLH_EXT_NAME(glMultiTexCoord1fvARB) GLH_INITIALIZER;
  58.     GLH_EXTERN PFNGLMULTITEXCOORD1IARBPROC GLH_EXT_NAME(glMultiTexCoord1iARB) GLH_INITIALIZER;
  59.     GLH_EXTERN PFNGLMULTITEXCOORD1IVARBPROC GLH_EXT_NAME(glMultiTexCoord1ivARB) GLH_INITIALIZER;
  60.     GLH_EXTERN PFNGLMULTITEXCOORD1SARBPROC GLH_EXT_NAME(glMultiTexCoord1sARB) GLH_INITIALIZER;
  61.     GLH_EXTERN PFNGLMULTITEXCOORD1SVARBPROC GLH_EXT_NAME(glMultiTexCoord1svARB) GLH_INITIALIZER;
  62.     GLH_EXTERN PFNGLMULTITEXCOORD2DARBPROC GLH_EXT_NAME(glMultiTexCoord2dARB) GLH_INITIALIZER;
  63.     GLH_EXTERN PFNGLMULTITEXCOORD2DVARBPROC GLH_EXT_NAME(glMultiTexCoord2dvARB) GLH_INITIALIZER;
  64.     GLH_EXTERN PFNGLMULTITEXCOORD2FARBPROC GLH_EXT_NAME(glMultiTexCoord2fARB) GLH_INITIALIZER;
  65.     GLH_EXTERN PFNGLMULTITEXCOORD2FVARBPROC GLH_EXT_NAME(glMultiTexCoord2fvARB) GLH_INITIALIZER;
  66.     GLH_EXTERN PFNGLMULTITEXCOORD2IARBPROC GLH_EXT_NAME(glMultiTexCoord2iARB) GLH_INITIALIZER;
  67.     GLH_EXTERN PFNGLMULTITEXCOORD2IVARBPROC GLH_EXT_NAME(glMultiTexCoord2ivARB) GLH_INITIALIZER;
  68.     GLH_EXTERN PFNGLMULTITEXCOORD2SARBPROC GLH_EXT_NAME(glMultiTexCoord2sARB) GLH_INITIALIZER;
  69.     GLH_EXTERN PFNGLMULTITEXCOORD2SVARBPROC GLH_EXT_NAME(glMultiTexCoord2svARB) GLH_INITIALIZER;
  70.     GLH_EXTERN PFNGLMULTITEXCOORD3DARBPROC GLH_EXT_NAME(glMultiTexCoord3dARB) GLH_INITIALIZER;
  71.     GLH_EXTERN PFNGLMULTITEXCOORD3DVARBPROC GLH_EXT_NAME(glMultiTexCoord3dvARB) GLH_INITIALIZER;
  72.     GLH_EXTERN PFNGLMULTITEXCOORD3FARBPROC GLH_EXT_NAME(glMultiTexCoord3fARB) GLH_INITIALIZER;
  73.     GLH_EXTERN PFNGLMULTITEXCOORD3FVARBPROC GLH_EXT_NAME(glMultiTexCoord3fvARB) GLH_INITIALIZER;
  74.     GLH_EXTERN PFNGLMULTITEXCOORD3IARBPROC GLH_EXT_NAME(glMultiTexCoord3iARB) GLH_INITIALIZER;
  75.     GLH_EXTERN PFNGLMULTITEXCOORD3IVARBPROC GLH_EXT_NAME(glMultiTexCoord3ivARB) GLH_INITIALIZER;
  76.     GLH_EXTERN PFNGLMULTITEXCOORD3SARBPROC GLH_EXT_NAME(glMultiTexCoord3sARB) GLH_INITIALIZER;
  77.     GLH_EXTERN PFNGLMULTITEXCOORD3SVARBPROC GLH_EXT_NAME(glMultiTexCoord3svARB) GLH_INITIALIZER;
  78.     GLH_EXTERN PFNGLMULTITEXCOORD4DARBPROC GLH_EXT_NAME(glMultiTexCoord4dARB) GLH_INITIALIZER;
  79.     GLH_EXTERN PFNGLMULTITEXCOORD4DVARBPROC GLH_EXT_NAME(glMultiTexCoord4dvARB) GLH_INITIALIZER;
  80.     GLH_EXTERN PFNGLMULTITEXCOORD4FARBPROC GLH_EXT_NAME(glMultiTexCoord4fARB) GLH_INITIALIZER;
  81.     GLH_EXTERN PFNGLMULTITEXCOORD4FVARBPROC GLH_EXT_NAME(glMultiTexCoord4fvARB) GLH_INITIALIZER;
  82.     GLH_EXTERN PFNGLMULTITEXCOORD4IARBPROC GLH_EXT_NAME(glMultiTexCoord4iARB) GLH_INITIALIZER;
  83.     GLH_EXTERN PFNGLMULTITEXCOORD4IVARBPROC GLH_EXT_NAME(glMultiTexCoord4ivARB) GLH_INITIALIZER;
  84.     GLH_EXTERN PFNGLMULTITEXCOORD4SARBPROC GLH_EXT_NAME(glMultiTexCoord4sARB) GLH_INITIALIZER;
  85.     GLH_EXTERN PFNGLMULTITEXCOORD4SVARBPROC GLH_EXT_NAME(glMultiTexCoord4svARB) GLH_INITIALIZER;
  86.     GLH_EXTERN PFNGLACTIVETEXTUREARBPROC GLH_EXT_NAME(glActiveTextureARB) GLH_INITIALIZER;
  87.     GLH_EXTERN PFNGLCLIENTACTIVETEXTUREARBPROC GLH_EXT_NAME(glClientActiveTextureARB) GLH_INITIALIZER;
  88. #endif
  89. #ifdef GL_ARB_texture_border_clamp
  90. #endif
  91. #ifdef GL_ARB_texture_compression
  92.     GLH_EXTERN PFNGLCOMPRESSEDTEXIMAGE3DARBPROC GLH_EXT_NAME(glCompressedTexImage3DARB) GLH_INITIALIZER;
  93.     GLH_EXTERN PFNGLCOMPRESSEDTEXIMAGE2DARBPROC GLH_EXT_NAME(glCompressedTexImage2DARB) GLH_INITIALIZER;
  94.     GLH_EXTERN PFNGLCOMPRESSEDTEXIMAGE1DARBPROC GLH_EXT_NAME(glCompressedTexImage1DARB) GLH_INITIALIZER;
  95.     GLH_EXTERN PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC GLH_EXT_NAME(glCompressedTexSubImage3DARB) GLH_INITIALIZER;
  96.     GLH_EXTERN PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC GLH_EXT_NAME(glCompressedTexSubImage2DARB) GLH_INITIALIZER;
  97.     GLH_EXTERN PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC GLH_EXT_NAME(glCompressedTexSubImage1DARB) GLH_INITIALIZER;
  98.     GLH_EXTERN PFNGLGETCOMPRESSEDTEXIMAGEARBPROC GLH_EXT_NAME(glGetCompressedTexImageARB) GLH_INITIALIZER;
  99. #endif
  100. #ifdef GL_ARB_texture_cube_map
  101. #endif
  102. #ifdef GL_ARB_transpose_matrix
  103.     GLH_EXTERN PFNGLLOADTRANSPOSEMATRIXFARBPROC GLH_EXT_NAME(glLoadTransposeMatrixfARB) GLH_INITIALIZER;
  104.     GLH_EXTERN PFNGLLOADTRANSPOSEMATRIXDARBPROC GLH_EXT_NAME(glLoadTransposeMatrixdARB) GLH_INITIALIZER;
  105.     GLH_EXTERN PFNGLMULTTRANSPOSEMATRIXFARBPROC GLH_EXT_NAME(glMultTransposeMatrixfARB) GLH_INITIALIZER;
  106.     GLH_EXTERN PFNGLMULTTRANSPOSEMATRIXDARBPROC GLH_EXT_NAME(glMultTransposeMatrixdARB) GLH_INITIALIZER;
  107. #endif
  108. #ifdef GL_ARB_vertex_program
  109.     GLH_EXTERN PFNGLVERTEXATTRIB1SARBPROC GLH_EXT_NAME(glVertexAttrib1sARB) GLH_INITIALIZER;
  110.     GLH_EXTERN PFNGLVERTEXATTRIB1FARBPROC GLH_EXT_NAME(glVertexAttrib1fARB) GLH_INITIALIZER;
  111.     GLH_EXTERN PFNGLVERTEXATTRIB1DARBPROC GLH_EXT_NAME(glVertexAttrib1dARB) GLH_INITIALIZER;
  112.     GLH_EXTERN PFNGLVERTEXATTRIB2SARBPROC GLH_EXT_NAME(glVertexAttrib2sARB) GLH_INITIALIZER;
  113.     GLH_EXTERN PFNGLVERTEXATTRIB2FARBPROC GLH_EXT_NAME(glVertexAttrib2fARB) GLH_INITIALIZER;
  114.     GLH_EXTERN PFNGLVERTEXATTRIB2DARBPROC GLH_EXT_NAME(glVertexAttrib2dARB) GLH_INITIALIZER;
  115.     GLH_EXTERN PFNGLVERTEXATTRIB3SARBPROC GLH_EXT_NAME(glVertexAttrib3sARB) GLH_INITIALIZER;
  116.     GLH_EXTERN PFNGLVERTEXATTRIB3FARBPROC GLH_EXT_NAME(glVertexAttrib3fARB) GLH_INITIALIZER;
  117.     GLH_EXTERN PFNGLVERTEXATTRIB3DARBPROC GLH_EXT_NAME(glVertexAttrib3dARB) GLH_INITIALIZER;
  118.     GLH_EXTERN PFNGLVERTEXATTRIB4SARBPROC GLH_EXT_NAME(glVertexAttrib4sARB) GLH_INITIALIZER;
  119.     GLH_EXTERN PFNGLVERTEXATTRIB4FARBPROC GLH_EXT_NAME(glVertexAttrib4fARB) GLH_INITIALIZER;
  120.     GLH_EXTERN PFNGLVERTEXATTRIB4DARBPROC GLH_EXT_NAME(glVertexAttrib4dARB) GLH_INITIALIZER;
  121.     GLH_EXTERN PFNGLVERTEXATTRIB4NUBARBPROC GLH_EXT_NAME(glVertexAttrib4NubARB) GLH_INITIALIZER;
  122.     GLH_EXTERN PFNGLVERTEXATTRIB1SVARBPROC GLH_EXT_NAME(glVertexAttrib1svARB) GLH_INITIALIZER;
  123.     GLH_EXTERN PFNGLVERTEXATTRIB1FVARBPROC GLH_EXT_NAME(glVertexAttrib1fvARB) GLH_INITIALIZER;
  124.     GLH_EXTERN PFNGLVERTEXATTRIB1DVARBPROC GLH_EXT_NAME(glVertexAttrib1dvARB) GLH_INITIALIZER;
  125.     GLH_EXTERN PFNGLVERTEXATTRIB2SVARBPROC GLH_EXT_NAME(glVertexAttrib2svARB) GLH_INITIALIZER;
  126.     GLH_EXTERN PFNGLVERTEXATTRIB2FVARBPROC GLH_EXT_NAME(glVertexAttrib2fvARB) GLH_INITIALIZER;
  127.     GLH_EXTERN PFNGLVERTEXATTRIB2DVARBPROC GLH_EXT_NAME(glVertexAttrib2dvARB) GLH_INITIALIZER;
  128.     GLH_EXTERN PFNGLVERTEXATTRIB3SVARBPROC GLH_EXT_NAME(glVertexAttrib3svARB) GLH_INITIALIZER;
  129.     GLH_EXTERN PFNGLVERTEXATTRIB3FVARBPROC GLH_EXT_NAME(glVertexAttrib3fvARB) GLH_INITIALIZER;
  130.     GLH_EXTERN PFNGLVERTEXATTRIB3DVARBPROC GLH_EXT_NAME(glVertexAttrib3dvARB) GLH_INITIALIZER;
  131.     GLH_EXTERN PFNGLVERTEXATTRIB4BVARBPROC GLH_EXT_NAME(glVertexAttrib4bvARB) GLH_INITIALIZER;
  132.     GLH_EXTERN PFNGLVERTEXATTRIB4SVARBPROC GLH_EXT_NAME(glVertexAttrib4svARB) GLH_INITIALIZER;
  133.     GLH_EXTERN PFNGLVERTEXATTRIB4IVARBPROC GLH_EXT_NAME(glVertexAttrib4ivARB) GLH_INITIALIZER;
  134.     GLH_EXTERN PFNGLVERTEXATTRIB4UBVARBPROC GLH_EXT_NAME(glVertexAttrib4ubvARB) GLH_INITIALIZER;
  135.     GLH_EXTERN PFNGLVERTEXATTRIB4USVARBPROC GLH_EXT_NAME(glVertexAttrib4usvARB) GLH_INITIALIZER;
  136.     GLH_EXTERN PFNGLVERTEXATTRIB4UIVARBPROC GLH_EXT_NAME(glVertexAttrib4uivARB) GLH_INITIALIZER;
  137.     GLH_EXTERN PFNGLVERTEXATTRIB4FVARBPROC GLH_EXT_NAME(glVertexAttrib4fvARB) GLH_INITIALIZER;
  138.     GLH_EXTERN PFNGLVERTEXATTRIB4DVARBPROC GLH_EXT_NAME(glVertexAttrib4dvARB) GLH_INITIALIZER;
  139.     GLH_EXTERN PFNGLVERTEXATTRIB4NBVARBPROC GLH_EXT_NAME(glVertexAttrib4NbvARB) GLH_INITIALIZER;
  140.     GLH_EXTERN PFNGLVERTEXATTRIB4NSVARBPROC GLH_EXT_NAME(glVertexAttrib4NsvARB) GLH_INITIALIZER;
  141.     GLH_EXTERN PFNGLVERTEXATTRIB4NIVARBPROC GLH_EXT_NAME(glVertexAttrib4NivARB) GLH_INITIALIZER;
  142.     GLH_EXTERN PFNGLVERTEXATTRIB4NUBVARBPROC GLH_EXT_NAME(glVertexAttrib4NubvARB) GLH_INITIALIZER;
  143.     GLH_EXTERN PFNGLVERTEXATTRIB4NUSVARBPROC GLH_EXT_NAME(glVertexAttrib4NusvARB) GLH_INITIALIZER;
  144.     GLH_EXTERN PFNGLVERTEXATTRIB4NUIVARBPROC GLH_EXT_NAME(glVertexAttrib4NuivARB) GLH_INITIALIZER;
  145.     GLH_EXTERN PFNGLVERTEXATTRIBPOINTERARBPROC GLH_EXT_NAME(glVertexAttribPointerARB) GLH_INITIALIZER;
  146.     GLH_EXTERN PFNGLENABLEVERTEXATTRIBARRAYARBPROC GLH_EXT_NAME(glEnableVertexAttribArrayARB) GLH_INITIALIZER;
  147.     GLH_EXTERN PFNGLDISABLEVERTEXATTRIBARRAYARBPROC GLH_EXT_NAME(glDisableVertexAttribArrayARB) GLH_INITIALIZER;
  148.     GLH_EXTERN PFNGLPROGRAMSTRINGARBPROC GLH_EXT_NAME(glProgramStringARB) GLH_INITIALIZER;
  149.     GLH_EXTERN PFNGLBINDPROGRAMARBPROC GLH_EXT_NAME(glBindProgramARB) GLH_INITIALIZER;
  150.     GLH_EXTERN PFNGLDELETEPROGRAMSARBPROC GLH_EXT_NAME(glDeleteProgramsARB) GLH_INITIALIZER;
  151.     GLH_EXTERN PFNGLGENPROGRAMSARBPROC GLH_EXT_NAME(glGenProgramsARB) GLH_INITIALIZER;
  152.     GLH_EXTERN PFNGLPROGRAMENVPARAMETER4DARBPROC GLH_EXT_NAME(glProgramEnvParameter4dARB) GLH_INITIALIZER;
  153.     GLH_EXTERN PFNGLPROGRAMENVPARAMETER4DVARBPROC GLH_EXT_NAME(glProgramEnvParameter4dvARB) GLH_INITIALIZER;
  154.     GLH_EXTERN PFNGLPROGRAMENVPARAMETER4FARBPROC GLH_EXT_NAME(glProgramEnvParameter4fARB) GLH_INITIALIZER;
  155.     GLH_EXTERN PFNGLPROGRAMENVPARAMETER4FVARBPROC GLH_EXT_NAME(glProgramEnvParameter4fvARB) GLH_INITIALIZER;
  156.     GLH_EXTERN PFNGLPROGRAMLOCALPARAMETER4DARBPROC GLH_EXT_NAME(glProgramLocalParameter4dARB) GLH_INITIALIZER;
  157.     GLH_EXTERN PFNGLPROGRAMLOCALPARAMETER4DVARBPROC GLH_EXT_NAME(glProgramLocalParameter4dvARB) GLH_INITIALIZER;
  158.     GLH_EXTERN PFNGLPROGRAMLOCALPARAMETER4FARBPROC GLH_EXT_NAME(glProgramLocalParameter4fARB) GLH_INITIALIZER;
  159.     GLH_EXTERN PFNGLPROGRAMLOCALPARAMETER4FVARBPROC GLH_EXT_NAME(glProgramLocalParameter4fvARB) GLH_INITIALIZER;
  160.     GLH_EXTERN PFNGLGETPROGRAMENVPARAMETERDVARBPROC GLH_EXT_NAME(glGetProgramEnvParameterdvARB) GLH_INITIALIZER;
  161.     GLH_EXTERN PFNGLGETPROGRAMENVPARAMETERFVARBPROC GLH_EXT_NAME(glGetProgramEnvParameterfvARB) GLH_INITIALIZER;
  162.     GLH_EXTERN PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC GLH_EXT_NAME(glGetProgramLocalParameterdvARB) GLH_INITIALIZER;
  163.     GLH_EXTERN PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC GLH_EXT_NAME(glGetProgramLocalParameterfvARB) GLH_INITIALIZER;
  164.     GLH_EXTERN PFNGLGETPROGRAMIVARBPROC GLH_EXT_NAME(glGetProgramivARB) GLH_INITIALIZER;
  165.     GLH_EXTERN PFNGLGETPROGRAMSTRINGARBPROC GLH_EXT_NAME(glGetProgramStringARB) GLH_INITIALIZER;
  166.     GLH_EXTERN PFNGLGETVERTEXATTRIBDVARBPROC GLH_EXT_NAME(glGetVertexAttribdvARB) GLH_INITIALIZER;
  167.     GLH_EXTERN PFNGLGETVERTEXATTRIBFVARBPROC GLH_EXT_NAME(glGetVertexAttribfvARB) GLH_INITIALIZER;
  168.     GLH_EXTERN PFNGLGETVERTEXATTRIBIVARBPROC GLH_EXT_NAME(glGetVertexAttribivARB) GLH_INITIALIZER;
  169.     GLH_EXTERN PFNGLGETVERTEXATTRIBPOINTERVARBPROC GLH_EXT_NAME(glGetVertexAttribPointervARB) GLH_INITIALIZER;
  170.     GLH_EXTERN PFNGLISPROGRAMARBPROC GLH_EXT_NAME(glIsProgramARB) GLH_INITIALIZER;
  171. #endif
  172. #ifdef GL_EXT_abgr
  173. #endif
  174. #ifdef GL_EXT_bgra
  175. #endif
  176. #ifdef GL_EXT_blend_color
  177.     GLH_EXTERN PFNGLBLENDCOLOREXTPROC GLH_EXT_NAME(glBlendColorEXT) GLH_INITIALIZER;
  178. #endif
  179. #ifdef GL_EXT_blend_minmax
  180.     GLH_EXTERN PFNGLBLENDEQUATIONEXTPROC GLH_EXT_NAME(glBlendEquationEXT) GLH_INITIALIZER;
  181. #endif
  182. #ifdef GL_EXT_blend_subtract
  183. #endif
  184. #ifdef GL_EXT_compiled_vertex_array
  185.     GLH_EXTERN PFNGLLOCKARRAYSEXTPROC GLH_EXT_NAME(glLockArraysEXT) GLH_INITIALIZER;
  186.     GLH_EXTERN PFNGLUNLOCKARRAYSEXTPROC GLH_EXT_NAME(glUnlockArraysEXT) GLH_INITIALIZER;
  187. #endif
  188. #ifdef GL_EXT_fog_coord
  189.     GLH_EXTERN PFNGLFOGCOORDDEXTPROC GLH_EXT_NAME(glFogCoorddEXT) GLH_INITIALIZER;
  190.     GLH_EXTERN PFNGLFOGCOORDDVEXTPROC GLH_EXT_NAME(glFogCoorddvEXT) GLH_INITIALIZER;
  191.     GLH_EXTERN PFNGLFOGCOORDFEXTPROC GLH_EXT_NAME(glFogCoordfEXT) GLH_INITIALIZER;
  192.     GLH_EXTERN PFNGLFOGCOORDFVEXTPROC GLH_EXT_NAME(glFogCoordfvEXT) GLH_INITIALIZER;
  193.     GLH_EXTERN PFNGLFOGCOORDPOINTEREXTPROC GLH_EXT_NAME(glFogCoordPointerEXT) GLH_INITIALIZER;
  194. #endif
  195. #ifdef GL_EXT_light_max_exponent
  196. #endif
  197. #ifdef GL_EXT_packed_pixels
  198. #endif
  199. #ifdef GL_EXT_paletted_texture
  200.     GLH_EXTERN PFNGLCOLORSUBTABLEEXTPROC GLH_EXT_NAME(glColorSubTableEXT) GLH_INITIALIZER;
  201.     GLH_EXTERN PFNGLCOLORTABLEEXTPROC GLH_EXT_NAME(glColorTableEXT) GLH_INITIALIZER;
  202.     GLH_EXTERN PFNGLGETCOLORTABLEEXTPROC GLH_EXT_NAME(glGetColorTableEXT) GLH_INITIALIZER;
  203.     GLH_EXTERN PFNGLGETCOLORTABLEPARAMETERFVEXTPROC GLH_EXT_NAME(glGetColorTableParameterfvEXT) GLH_INITIALIZER;
  204.     GLH_EXTERN PFNGLGETCOLORTABLEPARAMETERIVEXTPROC GLH_EXT_NAME(glGetColorTableParameterivEXT) GLH_INITIALIZER;
  205. #endif
  206. #ifdef GL_EXT_point_parameters
  207.     GLH_EXTERN PFNGLPOINTPARAMETERFEXTPROC GLH_EXT_NAME(glPointParameterfEXT) GLH_INITIALIZER;
  208.     GLH_EXTERN PFNGLPOINTPARAMETERFVEXTPROC GLH_EXT_NAME(glPointParameterfvEXT) GLH_INITIALIZER;
  209. #endif
  210. #ifdef GL_EXT_rescale_normal
  211. #endif
  212. #ifdef GL_EXT_secondary_color
  213.     GLH_EXTERN PFNGLSECONDARYCOLOR3BEXTPROC GLH_EXT_NAME(glSecondaryColor3bEXT) GLH_INITIALIZER;
  214.     GLH_EXTERN PFNGLSECONDARYCOLOR3BVEXTPROC GLH_EXT_NAME(glSecondaryColor3bvEXT) GLH_INITIALIZER;
  215.     GLH_EXTERN PFNGLSECONDARYCOLOR3DEXTPROC GLH_EXT_NAME(glSecondaryColor3dEXT) GLH_INITIALIZER;
  216.     GLH_EXTERN PFNGLSECONDARYCOLOR3DVEXTPROC GLH_EXT_NAME(glSecondaryColor3dvEXT) GLH_INITIALIZER;
  217.     GLH_EXTERN PFNGLSECONDARYCOLOR3FEXTPROC GLH_EXT_NAME(glSecondaryColor3fEXT) GLH_INITIALIZER;
  218.     GLH_EXTERN PFNGLSECONDARYCOLOR3FVEXTPROC GLH_EXT_NAME(glSecondaryColor3fvEXT) GLH_INITIALIZER;
  219.     GLH_EXTERN PFNGLSECONDARYCOLOR3IEXTPROC GLH_EXT_NAME(glSecondaryColor3iEXT) GLH_INITIALIZER;
  220.     GLH_EXTERN PFNGLSECONDARYCOLOR3IVEXTPROC GLH_EXT_NAME(glSecondaryColor3ivEXT) GLH_INITIALIZER;
  221.     GLH_EXTERN PFNGLSECONDARYCOLOR3SEXTPROC GLH_EXT_NAME(glSecondaryColor3sEXT) GLH_INITIALIZER;
  222.     GLH_EXTERN PFNGLSECONDARYCOLOR3SVEXTPROC GLH_EXT_NAME(glSecondaryColor3svEXT) GLH_INITIALIZER;
  223.     GLH_EXTERN PFNGLSECONDARYCOLOR3UBEXTPROC GLH_EXT_NAME(glSecondaryColor3ubEXT) GLH_INITIALIZER;
  224.     GLH_EXTERN PFNGLSECONDARYCOLOR3UBVEXTPROC GLH_EXT_NAME(glSecondaryColor3ubvEXT) GLH_INITIALIZER;
  225.     GLH_EXTERN PFNGLSECONDARYCOLOR3UIEXTPROC GLH_EXT_NAME(glSecondaryColor3uiEXT) GLH_INITIALIZER;
  226.     GLH_EXTERN PFNGLSECONDARYCOLOR3UIVEXTPROC GLH_EXT_NAME(glSecondaryColor3uivEXT) GLH_INITIALIZER;
  227.     GLH_EXTERN PFNGLSECONDARYCOLOR3USEXTPROC GLH_EXT_NAME(glSecondaryColor3usEXT) GLH_INITIALIZER;
  228.     GLH_EXTERN PFNGLSECONDARYCOLOR3USVEXTPROC GLH_EXT_NAME(glSecondaryColor3usvEXT) GLH_INITIALIZER;
  229.     GLH_EXTERN PFNGLSECONDARYCOLORPOINTEREXTPROC GLH_EXT_NAME(glSecondaryColorPointerEXT) GLH_INITIALIZER;
  230. #endif
  231. #ifdef GL_EXT_separate_specular_color
  232. #endif
  233. #ifdef GL_EXT_shared_texture_palette
  234. #endif
  235. #ifdef GL_EXT_stencil_wrap
  236. #endif
  237. #ifdef GL_EXT_texture_compression_s3tc
  238. #endif
  239. #ifdef GL_EXT_texture_cube_map
  240. #endif
  241. #ifdef GL_EXT_texture_edge_clamp
  242. #endif
  243. #ifdef GL_EXT_texture_env_add
  244. #endif
  245. #ifdef GL_EXT_texture_env_combine
  246. #endif
  247. #ifdef GL_EXT_texture_filter_anisotropic
  248. #endif
  249. #ifdef GL_EXT_texture_lod_bias
  250. #endif
  251. #ifdef GL_EXT_texture_object
  252.     GLH_EXTERN PFNGLARETEXTURESRESIDENTEXTPROC GLH_EXT_NAME(glAreTexturesResidentEXT) GLH_INITIALIZER;
  253.     GLH_EXTERN PFNGLBINDTEXTUREEXTPROC GLH_EXT_NAME(glBindTextureEXT) GLH_INITIALIZER;
  254.     GLH_EXTERN PFNGLDELETETEXTURESEXTPROC GLH_EXT_NAME(glDeleteTexturesEXT) GLH_INITIALIZER;
  255.     GLH_EXTERN PFNGLGENTEXTURESEXTPROC GLH_EXT_NAME(glGenTexturesEXT) GLH_INITIALIZER;
  256.     GLH_EXTERN PFNGLISTEXTUREEXTPROC GLH_EXT_NAME(glIsTextureEXT) GLH_INITIALIZER;
  257.     GLH_EXTERN PFNGLPRIORITIZETEXTURESEXTPROC GLH_EXT_NAME(glPrioritizeTexturesEXT) GLH_INITIALIZER;
  258. #endif
  259. #ifdef GL_EXT_texture3D
  260.     GLH_EXTERN PFNGLTEXIMAGE3DEXTPROC GLH_EXT_NAME(glTexImage3DEXT) GLH_INITIALIZER;
  261. #endif
  262. #ifdef GL_EXT_vertex_array
  263.     GLH_EXTERN PFNGLARRAYELEMENTEXTPROC GLH_EXT_NAME(glArrayElementEXT) GLH_INITIALIZER;
  264.     GLH_EXTERN PFNGLCOLORPOINTEREXTPROC GLH_EXT_NAME(glColorPointerEXT) GLH_INITIALIZER;
  265.     GLH_EXTERN PFNGLEDGEFLAGPOINTEREXTPROC GLH_EXT_NAME(glEdgeFlagPointerEXT) GLH_INITIALIZER;
  266.     GLH_EXTERN PFNGLGETPOINTERVEXTPROC GLH_EXT_NAME(glGetPointervEXT) GLH_INITIALIZER;
  267.     GLH_EXTERN PFNGLINDEXPOINTEREXTPROC GLH_EXT_NAME(glIndexPointerEXT) GLH_INITIALIZER;
  268.     GLH_EXTERN PFNGLNORMALPOINTEREXTPROC GLH_EXT_NAME(glNormalPointerEXT) GLH_INITIALIZER;
  269.     GLH_EXTERN PFNGLTEXCOORDPOINTEREXTPROC GLH_EXT_NAME(glTexCoordPointerEXT) GLH_INITIALIZER;
  270.     GLH_EXTERN PFNGLVERTEXPOINTEREXTPROC GLH_EXT_NAME(glVertexPointerEXT) GLH_INITIALIZER;
  271.     GLH_EXTERN PFNGLDRAWARRAYSEXTPROC GLH_EXT_NAME(glDrawArraysEXT) GLH_INITIALIZER;
  272. #endif
  273. #ifdef GL_EXT_vertex_weighting
  274.     GLH_EXTERN PFNGLVERTEXWEIGHTFEXTPROC GLH_EXT_NAME(glVertexWeightfEXT) GLH_INITIALIZER;
  275.     GLH_EXTERN PFNGLVERTEXWEIGHTFVEXTPROC GLH_EXT_NAME(glVertexWeightfvEXT) GLH_INITIALIZER;
  276.     GLH_EXTERN PFNGLVERTEXWEIGHTPOINTEREXTPROC GLH_EXT_NAME(glVertexWeightPointerEXT) GLH_INITIALIZER;
  277. #endif
  278. #ifdef GL_NV_blend_square
  279. #endif
  280. #ifdef GL_NV_evaluators
  281.     GLH_EXTERN PFNGLMAPCONTROLPOINTSNVPROC GLH_EXT_NAME(glMapControlPointsNV) GLH_INITIALIZER;
  282.     GLH_EXTERN PFNGLMAPPARAMETERIVNVPROC GLH_EXT_NAME(glMapParameterivNV) GLH_INITIALIZER;
  283.     GLH_EXTERN PFNGLMAPPARAMETERFVNVPROC GLH_EXT_NAME(glMapParameterfvNV) GLH_INITIALIZER;
  284.     GLH_EXTERN PFNGLGETMAPCONTROLPOINTSNVPROC GLH_EXT_NAME(glGetMapControlPointsNV) GLH_INITIALIZER;
  285.     GLH_EXTERN PFNGLGETMAPPARAMETERIVNVPROC GLH_EXT_NAME(glGetMapParameterivNV) GLH_INITIALIZER;
  286.     GLH_EXTERN PFNGLGETMAPPARAMETERFVNVPROC GLH_EXT_NAME(glGetMapParameterfvNV) GLH_INITIALIZER;
  287.     GLH_EXTERN PFNGLGETMAPATTRIBPARAMETERIVNVPROC GLH_EXT_NAME(glGetMapAttribParameterivNV) GLH_INITIALIZER;
  288.     GLH_EXTERN PFNGLGETMAPATTRIBPARAMETERFVNVPROC GLH_EXT_NAME(glGetMapAttribParameterfvNV) GLH_INITIALIZER;
  289.     GLH_EXTERN PFNGLEVALMAPSNVPROC GLH_EXT_NAME(glEvalMapsNV) GLH_INITIALIZER;
  290. #endif
  291. #ifdef GL_NV_fence
  292.     GLH_EXTERN PFNGLGENFENCESNVPROC GLH_EXT_NAME(glGenFencesNV) GLH_INITIALIZER;
  293.     GLH_EXTERN PFNGLDELETEFENCESNVPROC GLH_EXT_NAME(glDeleteFencesNV) GLH_INITIALIZER;
  294.     GLH_EXTERN PFNGLSETFENCENVPROC GLH_EXT_NAME(glSetFenceNV) GLH_INITIALIZER;
  295.     GLH_EXTERN PFNGLTESTFENCENVPROC GLH_EXT_NAME(glTestFenceNV) GLH_INITIALIZER;
  296.     GLH_EXTERN PFNGLFINISHFENCENVPROC GLH_EXT_NAME(glFinishFenceNV) GLH_INITIALIZER;
  297.     GLH_EXTERN PFNGLISFENCENVPROC GLH_EXT_NAME(glIsFenceNV) GLH_INITIALIZER;
  298.     GLH_EXTERN PFNGLGETFENCEIVNVPROC GLH_EXT_NAME(glGetFenceivNV) GLH_INITIALIZER;
  299. #endif
  300. #ifdef GL_NV_fog_distance
  301. #endif
  302. #ifdef GL_NV_packed_depth_stencil
  303. #endif
  304. #ifdef GL_NV_register_combiners
  305.     GLH_EXTERN PFNGLCOMBINERPARAMETERFVNVPROC GLH_EXT_NAME(glCombinerParameterfvNV) GLH_INITIALIZER;
  306.     GLH_EXTERN PFNGLCOMBINERPARAMETERFNVPROC GLH_EXT_NAME(glCombinerParameterfNV) GLH_INITIALIZER;
  307.     GLH_EXTERN PFNGLCOMBINERPARAMETERIVNVPROC GLH_EXT_NAME(glCombinerParameterivNV) GLH_INITIALIZER;
  308.     GLH_EXTERN PFNGLCOMBINERPARAMETERINVPROC GLH_EXT_NAME(glCombinerParameteriNV) GLH_INITIALIZER;
  309.     GLH_EXTERN PFNGLCOMBINERINPUTNVPROC GLH_EXT_NAME(glCombinerInputNV) GLH_INITIALIZER;
  310.     GLH_EXTERN PFNGLCOMBINEROUTPUTNVPROC GLH_EXT_NAME(glCombinerOutputNV) GLH_INITIALIZER;
  311.     GLH_EXTERN PFNGLFINALCOMBINERINPUTNVPROC GLH_EXT_NAME(glFinalCombinerInputNV) GLH_INITIALIZER;
  312.     GLH_EXTERN PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC GLH_EXT_NAME(glGetCombinerInputParameterfvNV) GLH_INITIALIZER;
  313.     GLH_EXTERN PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC GLH_EXT_NAME(glGetCombinerInputParameterivNV) GLH_INITIALIZER;
  314.     GLH_EXTERN PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC GLH_EXT_NAME(glGetCombinerOutputParameterfvNV) GLH_INITIALIZER;
  315.     GLH_EXTERN PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC GLH_EXT_NAME(glGetCombinerOutputParameterivNV) GLH_INITIALIZER;
  316.     GLH_EXTERN PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC GLH_EXT_NAME(glGetFinalCombinerInputParameterfvNV) GLH_INITIALIZER;
  317.     GLH_EXTERN PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC GLH_EXT_NAME(glGetFinalCombinerInputParameterivNV) GLH_INITIALIZER;
  318. #endif
  319. #ifdef GL_NV_register_combiners2
  320.     GLH_EXTERN PFNGLCOMBINERSTAGEPARAMETERFVNVPROC GLH_EXT_NAME(glCombinerStageParameterfvNV) GLH_INITIALIZER;
  321.     GLH_EXTERN PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC GLH_EXT_NAME(glGetCombinerStageParameterfvNV) GLH_INITIALIZER;
  322. #endif
  323. #ifdef GL_NV_texgen_reflection
  324. #endif
  325. #ifdef GL_NV_texture_env_combine4
  326. #endif
  327. #ifdef GL_NV_texture_rectangle
  328. #endif
  329. #ifdef GL_NV_texture_shader
  330. #endif
  331. #ifdef GL_NV_vertex_array_range
  332.     GLH_EXTERN PFNGLFLUSHVERTEXARRAYRANGENVPROC GLH_EXT_NAME(glFlushVertexArrayRangeNV) GLH_INITIALIZER;
  333.     GLH_EXTERN PFNGLVERTEXARRAYRANGENVPROC GLH_EXT_NAME(glVertexArrayRangeNV) GLH_INITIALIZER;
  334. # ifdef _WIN32
  335.     GLH_EXTERN PFNWGLALLOCATEMEMORYNVPROC GLH_EXT_NAME(wglAllocateMemoryNV) GLH_INITIALIZER;
  336. # endif
  337. # ifdef GLX_VERSION_1_3
  338.     GLH_EXTERN PFNGLXALLOCATEMEMORYNVPROC GLH_EXT_NAME(glXAllocateMemoryNV) GLH_INITIALIZER;
  339. # endif
  340. # ifdef _WIN32
  341.     GLH_EXTERN PFNWGLFREEMEMORYNVPROC GLH_EXT_NAME(wglFreeMemoryNV) GLH_INITIALIZER;
  342. # endif
  343. # ifdef GLX_VERSION_1_3
  344.     GLH_EXTERN PFNGLXFREEMEMORYNVPROC GLH_EXT_NAME(glXFreeMemoryNV) GLH_INITIALIZER;
  345. # endif
  346. #endif
  347. #ifdef GL_NV_vertex_program
  348.     GLH_EXTERN PFNGLAREPROGRAMSRESIDENTNVPROC GLH_EXT_NAME(glAreProgramsResidentNV) GLH_INITIALIZER;
  349.     GLH_EXTERN PFNGLBINDPROGRAMNVPROC GLH_EXT_NAME(glBindProgramNV) GLH_INITIALIZER;
  350.     GLH_EXTERN PFNGLDELETEPROGRAMSNVPROC GLH_EXT_NAME(glDeleteProgramsNV) GLH_INITIALIZER;
  351.     GLH_EXTERN PFNGLEXECUTEPROGRAMNVPROC GLH_EXT_NAME(glExecuteProgramNV) GLH_INITIALIZER;
  352.     GLH_EXTERN PFNGLGENPROGRAMSNVPROC GLH_EXT_NAME(glGenProgramsNV) GLH_INITIALIZER;
  353.     GLH_EXTERN PFNGLGETPROGRAMPARAMETERDVNVPROC GLH_EXT_NAME(glGetProgramParameterdvNV) GLH_INITIALIZER;
  354.     GLH_EXTERN PFNGLGETPROGRAMPARAMETERFVNVPROC GLH_EXT_NAME(glGetProgramParameterfvNV) GLH_INITIALIZER;
  355.     GLH_EXTERN PFNGLGETPROGRAMIVNVPROC GLH_EXT_NAME(glGetProgramivNV) GLH_INITIALIZER;
  356.     GLH_EXTERN PFNGLGETPROGRAMSTRINGNVPROC GLH_EXT_NAME(glGetProgramStringNV) GLH_INITIALIZER;
  357.     GLH_EXTERN PFNGLGETTRACKMATRIXIVNVPROC GLH_EXT_NAME(glGetTrackMatrixivNV) GLH_INITIALIZER;
  358.     GLH_EXTERN PFNGLGETVERTEXATTRIBDVNVPROC GLH_EXT_NAME(glGetVertexAttribdvNV) GLH_INITIALIZER;
  359.     GLH_EXTERN PFNGLGETVERTEXATTRIBFVNVPROC GLH_EXT_NAME(glGetVertexAttribfvNV) GLH_INITIALIZER;
  360.     GLH_EXTERN PFNGLGETVERTEXATTRIBIVNVPROC GLH_EXT_NAME(glGetVertexAttribivNV) GLH_INITIALIZER;
  361.     GLH_EXTERN PFNGLGETVERTEXATTRIBPOINTERVNVPROC GLH_EXT_NAME(glGetVertexAttribPointervNV) GLH_INITIALIZER;
  362.     GLH_EXTERN PFNGLISPROGRAMNVPROC GLH_EXT_NAME(glIsProgramNV) GLH_INITIALIZER;
  363.     GLH_EXTERN PFNGLLOADPROGRAMNVPROC GLH_EXT_NAME(glLoadProgramNV) GLH_INITIALIZER;
  364.     GLH_EXTERN PFNGLPROGRAMPARAMETER4DNVPROC GLH_EXT_NAME(glProgramParameter4dNV) GLH_INITIALIZER;
  365.     GLH_EXTERN PFNGLPROGRAMPARAMETER4DVNVPROC GLH_EXT_NAME(glProgramParameter4dvNV) GLH_INITIALIZER;
  366.     GLH_EXTERN PFNGLPROGRAMPARAMETER4FNVPROC GLH_EXT_NAME(glProgramParameter4fNV) GLH_INITIALIZER;
  367.     GLH_EXTERN PFNGLPROGRAMPARAMETER4FVNVPROC GLH_EXT_NAME(glProgramParameter4fvNV) GLH_INITIALIZER;
  368.     GLH_EXTERN PFNGLPROGRAMPARAMETERS4DVNVPROC GLH_EXT_NAME(glProgramParameters4dvNV) GLH_INITIALIZER;
  369.     GLH_EXTERN PFNGLPROGRAMPARAMETERS4FVNVPROC GLH_EXT_NAME(glProgramParameters4fvNV) GLH_INITIALIZER;
  370.     GLH_EXTERN PFNGLREQUESTRESIDENTPROGRAMSNVPROC GLH_EXT_NAME(glRequestResidentProgramsNV) GLH_INITIALIZER;
  371.     GLH_EXTERN PFNGLTRACKMATRIXNVPROC GLH_EXT_NAME(glTrackMatrixNV) GLH_INITIALIZER;
  372.     GLH_EXTERN PFNGLVERTEXATTRIBPOINTERNVPROC GLH_EXT_NAME(glVertexAttribPointerNV) GLH_INITIALIZER;
  373.     GLH_EXTERN PFNGLVERTEXATTRIB1DNVPROC GLH_EXT_NAME(glVertexAttrib1dNV) GLH_INITIALIZER;
  374.     GLH_EXTERN PFNGLVERTEXATTRIB1DVNVPROC GLH_EXT_NAME(glVertexAttrib1dvNV) GLH_INITIALIZER;
  375.     GLH_EXTERN PFNGLVERTEXATTRIB1FNVPROC GLH_EXT_NAME(glVertexAttrib1fNV) GLH_INITIALIZER;
  376.     GLH_EXTERN PFNGLVERTEXATTRIB1FVNVPROC GLH_EXT_NAME(glVertexAttrib1fvNV) GLH_INITIALIZER;
  377.     GLH_EXTERN PFNGLVERTEXATTRIB1SNVPROC GLH_EXT_NAME(glVertexAttrib1sNV) GLH_INITIALIZER;
  378.     GLH_EXTERN PFNGLVERTEXATTRIB1SVNVPROC GLH_EXT_NAME(glVertexAttrib1svNV) GLH_INITIALIZER;
  379.     GLH_EXTERN PFNGLVERTEXATTRIB2DNVPROC GLH_EXT_NAME(glVertexAttrib2dNV) GLH_INITIALIZER;
  380.     GLH_EXTERN PFNGLVERTEXATTRIB2DVNVPROC GLH_EXT_NAME(glVertexAttrib2dvNV) GLH_INITIALIZER;
  381.     GLH_EXTERN PFNGLVERTEXATTRIB2FNVPROC GLH_EXT_NAME(glVertexAttrib2fNV) GLH_INITIALIZER;
  382.     GLH_EXTERN PFNGLVERTEXATTRIB2FVNVPROC GLH_EXT_NAME(glVertexAttrib2fvNV) GLH_INITIALIZER;
  383.     GLH_EXTERN PFNGLVERTEXATTRIB2SNVPROC GLH_EXT_NAME(glVertexAttrib2sNV) GLH_INITIALIZER;
  384.     GLH_EXTERN PFNGLVERTEXATTRIB2SVNVPROC GLH_EXT_NAME(glVertexAttrib2svNV) GLH_INITIALIZER;
  385.     GLH_EXTERN PFNGLVERTEXATTRIB3DNVPROC GLH_EXT_NAME(glVertexAttrib3dNV) GLH_INITIALIZER;
  386.     GLH_EXTERN PFNGLVERTEXATTRIB3DVNVPROC GLH_EXT_NAME(glVertexAttrib3dvNV) GLH_INITIALIZER;
  387.     GLH_EXTERN PFNGLVERTEXATTRIB3FNVPROC GLH_EXT_NAME(glVertexAttrib3fNV) GLH_INITIALIZER;
  388.     GLH_EXTERN PFNGLVERTEXATTRIB3FVNVPROC GLH_EXT_NAME(glVertexAttrib3fvNV) GLH_INITIALIZER;
  389.     GLH_EXTERN PFNGLVERTEXATTRIB3SNVPROC GLH_EXT_NAME(glVertexAttrib3sNV) GLH_INITIALIZER;
  390.     GLH_EXTERN PFNGLVERTEXATTRIB3SVNVPROC GLH_EXT_NAME(glVertexAttrib3svNV) GLH_INITIALIZER;
  391.     GLH_EXTERN PFNGLVERTEXATTRIB4DNVPROC GLH_EXT_NAME(glVertexAttrib4dNV) GLH_INITIALIZER;
  392.     GLH_EXTERN PFNGLVERTEXATTRIB4DVNVPROC GLH_EXT_NAME(glVertexAttrib4dvNV) GLH_INITIALIZER;
  393.     GLH_EXTERN PFNGLVERTEXATTRIB4FNVPROC GLH_EXT_NAME(glVertexAttrib4fNV) GLH_INITIALIZER;
  394.     GLH_EXTERN PFNGLVERTEXATTRIB4FVNVPROC GLH_EXT_NAME(glVertexAttrib4fvNV) GLH_INITIALIZER;
  395.     GLH_EXTERN PFNGLVERTEXATTRIB4SNVPROC GLH_EXT_NAME(glVertexAttrib4sNV) GLH_INITIALIZER;
  396.     GLH_EXTERN PFNGLVERTEXATTRIB4SVNVPROC GLH_EXT_NAME(glVertexAttrib4svNV) GLH_INITIALIZER;
  397.     GLH_EXTERN PFNGLVERTEXATTRIB4UBVNVPROC GLH_EXT_NAME(glVertexAttrib4ubvNV) GLH_INITIALIZER;
  398.     GLH_EXTERN PFNGLVERTEXATTRIBS1DVNVPROC GLH_EXT_NAME(glVertexAttribs1dvNV) GLH_INITIALIZER;
  399.     GLH_EXTERN PFNGLVERTEXATTRIBS1FVNVPROC GLH_EXT_NAME(glVertexAttribs1fvNV) GLH_INITIALIZER;
  400.     GLH_EXTERN PFNGLVERTEXATTRIBS1SVNVPROC GLH_EXT_NAME(glVertexAttribs1svNV) GLH_INITIALIZER;
  401.     GLH_EXTERN PFNGLVERTEXATTRIBS2DVNVPROC GLH_EXT_NAME(glVertexAttribs2dvNV) GLH_INITIALIZER;
  402.     GLH_EXTERN PFNGLVERTEXATTRIBS2FVNVPROC GLH_EXT_NAME(glVertexAttribs2fvNV) GLH_INITIALIZER;
  403.     GLH_EXTERN PFNGLVERTEXATTRIBS2SVNVPROC GLH_EXT_NAME(glVertexAttribs2svNV) GLH_INITIALIZER;
  404.     GLH_EXTERN PFNGLVERTEXATTRIBS3DVNVPROC GLH_EXT_NAME(glVertexAttribs3dvNV) GLH_INITIALIZER;
  405.     GLH_EXTERN PFNGLVERTEXATTRIBS3FVNVPROC GLH_EXT_NAME(glVertexAttribs3fvNV) GLH_INITIALIZER;
  406.     GLH_EXTERN PFNGLVERTEXATTRIBS3SVNVPROC GLH_EXT_NAME(glVertexAttribs3svNV) GLH_INITIALIZER;
  407.     GLH_EXTERN PFNGLVERTEXATTRIBS4DVNVPROC GLH_EXT_NAME(glVertexAttribs4dvNV) GLH_INITIALIZER;
  408.     GLH_EXTERN PFNGLVERTEXATTRIBS4FVNVPROC GLH_EXT_NAME(glVertexAttribs4fvNV) GLH_INITIALIZER;
  409.     GLH_EXTERN PFNGLVERTEXATTRIBS4SVNVPROC GLH_EXT_NAME(glVertexAttribs4svNV) GLH_INITIALIZER;
  410.     GLH_EXTERN PFNGLVERTEXATTRIBS4UBVNVPROC GLH_EXT_NAME(glVertexAttribs4ubvNV) GLH_INITIALIZER;
  411. #endif
  412. #ifdef GL_SGIS_generate_mipmap
  413. #endif
  414. #ifdef GL_SGIS_texture_lod
  415. #endif
  416. #ifdef GL_SGIX_depth_texture
  417. #endif
  418. #ifdef GL_SGIX_shadow
  419. #endif
  420. #ifdef GL_VERSION_1_2
  421.     /* These routines are prefixed by the preprocessor constant
  422.        GLH_CORE_1_2_PREFIX to avoid colliding with the OpenGL 1.2 namespace. */
  423.     GLH_EXTERN PFNGLBLENDCOLORPROC GLH_CORE_1_2_NAME(glBlendColor) GLH_INITIALIZER;
  424.     GLH_EXTERN PFNGLBLENDEQUATIONPROC GLH_CORE_1_2_NAME(glBlendEquation) GLH_INITIALIZER;
  425.     GLH_EXTERN PFNGLDRAWRANGEELEMENTSPROC GLH_CORE_1_2_NAME(glDrawRangeElements) GLH_INITIALIZER;
  426.     GLH_EXTERN PFNGLCOLORTABLEPROC GLH_CORE_1_2_NAME(glColorTable) GLH_INITIALIZER;
  427.     GLH_EXTERN PFNGLCOLORTABLEPARAMETERFVPROC GLH_CORE_1_2_NAME(glColorTableParameterfv) GLH_INITIALIZER;
  428.     GLH_EXTERN PFNGLCOLORTABLEPARAMETERIVPROC GLH_CORE_1_2_NAME(glColorTableParameteriv) GLH_INITIALIZER;
  429.     GLH_EXTERN PFNGLCOPYCOLORTABLEPROC GLH_CORE_1_2_NAME(glCopyColorTable) GLH_INITIALIZER;
  430.     GLH_EXTERN PFNGLGETCOLORTABLEPROC GLH_CORE_1_2_NAME(glGetColorTable) GLH_INITIALIZER;
  431.     GLH_EXTERN PFNGLGETCOLORTABLEPARAMETERFVPROC GLH_CORE_1_2_NAME(glGetColorTableParameterfv) GLH_INITIALIZER;
  432.     GLH_EXTERN PFNGLGETCOLORTABLEPARAMETERIVPROC GLH_CORE_1_2_NAME(glGetColorTableParameteriv) GLH_INITIALIZER;
  433.     GLH_EXTERN PFNGLTEXIMAGE3DPROC GLH_CORE_1_2_NAME(glTexImage3D) GLH_INITIALIZER;
  434.     GLH_EXTERN PFNGLTEXSUBIMAGE3DPROC GLH_CORE_1_2_NAME(glTexSubImage3D) GLH_INITIALIZER;
  435.     GLH_EXTERN PFNGLCOPYTEXSUBIMAGE3DPROC GLH_CORE_1_2_NAME(glCopyTexSubImage3D) GLH_INITIALIZER;
  436. #endif
  437. #ifdef GL_WIN_swap_hint
  438.     GLH_EXTERN PFNGLADDSWAPHINTRECTWINPROC GLH_EXT_NAME(glAddSwapHintRectWIN) GLH_INITIALIZER;
  439. #endif
  440. #ifdef WGL_ARB_pbuffer
  441. # ifdef _WIN32
  442.     GLH_EXTERN PFNWGLCREATEPBUFFERARBPROC GLH_EXT_NAME(wglCreatePbufferARB) GLH_INITIALIZER;
  443. # endif
  444. # ifdef _WIN32
  445.     GLH_EXTERN PFNWGLGETPBUFFERDCARBPROC GLH_EXT_NAME(wglGetPbufferDCARB) GLH_INITIALIZER;
  446. # endif
  447. # ifdef _WIN32
  448.     GLH_EXTERN PFNWGLRELEASEPBUFFERDCARBPROC GLH_EXT_NAME(wglReleasePbufferDCARB) GLH_INITIALIZER;
  449. # endif
  450. # ifdef _WIN32
  451.     GLH_EXTERN PFNWGLDESTROYPBUFFERARBPROC GLH_EXT_NAME(wglDestroyPbufferARB) GLH_INITIALIZER;
  452. # endif
  453. # ifdef _WIN32
  454.     GLH_EXTERN PFNWGLQUERYPBUFFERARBPROC GLH_EXT_NAME(wglQueryPbufferARB) GLH_INITIALIZER;
  455. # endif
  456. #endif
  457. #ifdef WGL_ARB_render_texture
  458. # ifdef _WIN32
  459.     GLH_EXTERN PFNWGLBINDTEXIMAGEARBPROC GLH_EXT_NAME(wglBindTexImageARB) GLH_INITIALIZER;
  460. # endif
  461. # ifdef _WIN32
  462.     GLH_EXTERN PFNWGLRELEASETEXIMAGEARBPROC GLH_EXT_NAME(wglReleaseTexImageARB) GLH_INITIALIZER;
  463. # endif
  464. # ifdef _WIN32
  465.     GLH_EXTERN PFNWGLSETPBUFFERATTRIBARBPROC GLH_EXT_NAME(wglSetPbufferAttribARB) GLH_INITIALIZER;
  466. # endif
  467. #endif
  468. #ifdef WGL_ARB_pixel_format
  469. # ifdef _WIN32
  470.     GLH_EXTERN PFNWGLGETPIXELFORMATATTRIBIVARBPROC GLH_EXT_NAME(wglGetPixelFormatAttribivARB) GLH_INITIALIZER;
  471. # endif
  472. # ifdef _WIN32
  473.     GLH_EXTERN PFNWGLGETPIXELFORMATATTRIBFVARBPROC GLH_EXT_NAME(wglGetPixelFormatAttribfvARB) GLH_INITIALIZER;
  474. # endif
  475. # ifdef _WIN32
  476.     GLH_EXTERN PFNWGLCHOOSEPIXELFORMATARBPROC GLH_EXT_NAME(wglChoosePixelFormatARB) GLH_INITIALIZER;
  477. # endif
  478. #endif
  479. #ifdef GLH_EXT_SINGLE_FILE
  480. int glh_init_extension(const char* extension)
  481. {
  482.     if (NULL == extension) {
  483.         return FALSE;
  484. #ifdef GL_ARB_multitexture
  485.     } else if (0 == strcmp(extension, "GL_ARB_multitexture")) {
  486.         GLH_EXT_NAME(glMultiTexCoord1dARB) = (PFNGLMULTITEXCOORD1DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1dARB");
  487.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1dARB))
  488.             return FALSE;
  489.         GLH_EXT_NAME(glMultiTexCoord1dvARB) = (PFNGLMULTITEXCOORD1DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1dvARB");
  490.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1dvARB))
  491.             return FALSE;
  492.         GLH_EXT_NAME(glMultiTexCoord1fARB) = (PFNGLMULTITEXCOORD1FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1fARB");
  493.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1fARB))
  494.             return FALSE;
  495.         GLH_EXT_NAME(glMultiTexCoord1fvARB) = (PFNGLMULTITEXCOORD1FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1fvARB");
  496.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1fvARB))
  497.             return FALSE;
  498.         GLH_EXT_NAME(glMultiTexCoord1iARB) = (PFNGLMULTITEXCOORD1IARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1iARB");
  499.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1iARB))
  500.             return FALSE;
  501.         GLH_EXT_NAME(glMultiTexCoord1ivARB) = (PFNGLMULTITEXCOORD1IVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1ivARB");
  502.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1ivARB))
  503.             return FALSE;
  504.         GLH_EXT_NAME(glMultiTexCoord1sARB) = (PFNGLMULTITEXCOORD1SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1sARB");
  505.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1sARB))
  506.             return FALSE;
  507.         GLH_EXT_NAME(glMultiTexCoord1svARB) = (PFNGLMULTITEXCOORD1SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord1svARB");
  508.         if (NULL == GLH_EXT_NAME(glMultiTexCoord1svARB))
  509.             return FALSE;
  510.         GLH_EXT_NAME(glMultiTexCoord2dARB) = (PFNGLMULTITEXCOORD2DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2dARB");
  511.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2dARB))
  512.             return FALSE;
  513.         GLH_EXT_NAME(glMultiTexCoord2dvARB) = (PFNGLMULTITEXCOORD2DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2dvARB");
  514.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2dvARB))
  515.             return FALSE;
  516.         GLH_EXT_NAME(glMultiTexCoord2fARB) = (PFNGLMULTITEXCOORD2FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2fARB");
  517.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2fARB))
  518.             return FALSE;
  519.         GLH_EXT_NAME(glMultiTexCoord2fvARB) = (PFNGLMULTITEXCOORD2FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2fvARB");
  520.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2fvARB))
  521.             return FALSE;
  522.         GLH_EXT_NAME(glMultiTexCoord2iARB) = (PFNGLMULTITEXCOORD2IARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2iARB");
  523.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2iARB))
  524.             return FALSE;
  525.         GLH_EXT_NAME(glMultiTexCoord2ivARB) = (PFNGLMULTITEXCOORD2IVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2ivARB");
  526.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2ivARB))
  527.             return FALSE;
  528.         GLH_EXT_NAME(glMultiTexCoord2sARB) = (PFNGLMULTITEXCOORD2SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2sARB");
  529.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2sARB))
  530.             return FALSE;
  531.         GLH_EXT_NAME(glMultiTexCoord2svARB) = (PFNGLMULTITEXCOORD2SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord2svARB");
  532.         if (NULL == GLH_EXT_NAME(glMultiTexCoord2svARB))
  533.             return FALSE;
  534.         GLH_EXT_NAME(glMultiTexCoord3dARB) = (PFNGLMULTITEXCOORD3DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3dARB");
  535.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3dARB))
  536.             return FALSE;
  537.         GLH_EXT_NAME(glMultiTexCoord3dvARB) = (PFNGLMULTITEXCOORD3DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3dvARB");
  538.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3dvARB))
  539.             return FALSE;
  540.         GLH_EXT_NAME(glMultiTexCoord3fARB) = (PFNGLMULTITEXCOORD3FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3fARB");
  541.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3fARB))
  542.             return FALSE;
  543.         GLH_EXT_NAME(glMultiTexCoord3fvARB) = (PFNGLMULTITEXCOORD3FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3fvARB");
  544.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3fvARB))
  545.             return FALSE;
  546.         GLH_EXT_NAME(glMultiTexCoord3iARB) = (PFNGLMULTITEXCOORD3IARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3iARB");
  547.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3iARB))
  548.             return FALSE;
  549.         GLH_EXT_NAME(glMultiTexCoord3ivARB) = (PFNGLMULTITEXCOORD3IVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3ivARB");
  550.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3ivARB))
  551.             return FALSE;
  552.         GLH_EXT_NAME(glMultiTexCoord3sARB) = (PFNGLMULTITEXCOORD3SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3sARB");
  553.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3sARB))
  554.             return FALSE;
  555.         GLH_EXT_NAME(glMultiTexCoord3svARB) = (PFNGLMULTITEXCOORD3SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord3svARB");
  556.         if (NULL == GLH_EXT_NAME(glMultiTexCoord3svARB))
  557.             return FALSE;
  558.         GLH_EXT_NAME(glMultiTexCoord4dARB) = (PFNGLMULTITEXCOORD4DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4dARB");
  559.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4dARB))
  560.             return FALSE;
  561.         GLH_EXT_NAME(glMultiTexCoord4dvARB) = (PFNGLMULTITEXCOORD4DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4dvARB");
  562.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4dvARB))
  563.             return FALSE;
  564.         GLH_EXT_NAME(glMultiTexCoord4fARB) = (PFNGLMULTITEXCOORD4FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4fARB");
  565.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4fARB))
  566.             return FALSE;
  567.         GLH_EXT_NAME(glMultiTexCoord4fvARB) = (PFNGLMULTITEXCOORD4FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4fvARB");
  568.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4fvARB))
  569.             return FALSE;
  570.         GLH_EXT_NAME(glMultiTexCoord4iARB) = (PFNGLMULTITEXCOORD4IARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4iARB");
  571.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4iARB))
  572.             return FALSE;
  573.         GLH_EXT_NAME(glMultiTexCoord4ivARB) = (PFNGLMULTITEXCOORD4IVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4ivARB");
  574.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4ivARB))
  575.             return FALSE;
  576.         GLH_EXT_NAME(glMultiTexCoord4sARB) = (PFNGLMULTITEXCOORD4SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4sARB");
  577.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4sARB))
  578.             return FALSE;
  579.         GLH_EXT_NAME(glMultiTexCoord4svARB) = (PFNGLMULTITEXCOORD4SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultiTexCoord4svARB");
  580.         if (NULL == GLH_EXT_NAME(glMultiTexCoord4svARB))
  581.             return FALSE;
  582.         GLH_EXT_NAME(glActiveTextureARB) = (PFNGLACTIVETEXTUREARBPROC)GLH_EXT_GET_PROC_ADDRESS("glActiveTextureARB");
  583.         if (NULL == GLH_EXT_NAME(glActiveTextureARB))
  584.             return FALSE;
  585.         GLH_EXT_NAME(glClientActiveTextureARB) = (PFNGLCLIENTACTIVETEXTUREARBPROC)GLH_EXT_GET_PROC_ADDRESS("glClientActiveTextureARB");
  586.         if (NULL == GLH_EXT_NAME(glClientActiveTextureARB))
  587.             return FALSE;
  588. #endif
  589. #ifdef GL_ARB_texture_border_clamp
  590.     } else if (0 == strcmp(extension, "GL_ARB_texture_border_clamp")) {
  591. #endif
  592. #ifdef GL_ARB_texture_compression
  593.     } else if (0 == strcmp(extension, "GL_ARB_texture_compression")) {
  594.         GLH_EXT_NAME(glCompressedTexImage3DARB) = (PFNGLCOMPRESSEDTEXIMAGE3DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexImage3DARB");
  595.         if (NULL == GLH_EXT_NAME(glCompressedTexImage3DARB))
  596.             return FALSE;
  597.         GLH_EXT_NAME(glCompressedTexImage2DARB) = (PFNGLCOMPRESSEDTEXIMAGE2DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexImage2DARB");
  598.         if (NULL == GLH_EXT_NAME(glCompressedTexImage2DARB))
  599.             return FALSE;
  600.         GLH_EXT_NAME(glCompressedTexImage1DARB) = (PFNGLCOMPRESSEDTEXIMAGE1DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexImage1DARB");
  601.         if (NULL == GLH_EXT_NAME(glCompressedTexImage1DARB))
  602.             return FALSE;
  603.         GLH_EXT_NAME(glCompressedTexSubImage3DARB) = (PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexSubImage3DARB");
  604.         if (NULL == GLH_EXT_NAME(glCompressedTexSubImage3DARB))
  605.             return FALSE;
  606.         GLH_EXT_NAME(glCompressedTexSubImage2DARB) = (PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexSubImage2DARB");
  607.         if (NULL == GLH_EXT_NAME(glCompressedTexSubImage2DARB))
  608.             return FALSE;
  609.         GLH_EXT_NAME(glCompressedTexSubImage1DARB) = (PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glCompressedTexSubImage1DARB");
  610.         if (NULL == GLH_EXT_NAME(glCompressedTexSubImage1DARB))
  611.             return FALSE;
  612.         GLH_EXT_NAME(glGetCompressedTexImageARB) = (PFNGLGETCOMPRESSEDTEXIMAGEARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCompressedTexImageARB");
  613.         if (NULL == GLH_EXT_NAME(glGetCompressedTexImageARB))
  614.             return FALSE;
  615. #endif
  616. #ifdef GL_ARB_texture_cube_map
  617.     } else if (0 == strcmp(extension, "GL_ARB_texture_cube_map")) {
  618. #endif
  619. #ifdef GL_ARB_transpose_matrix
  620.     } else if (0 == strcmp(extension, "GL_ARB_transpose_matrix")) {
  621.         GLH_EXT_NAME(glLoadTransposeMatrixfARB) = (PFNGLLOADTRANSPOSEMATRIXFARBPROC)GLH_EXT_GET_PROC_ADDRESS("glLoadTransposeMatrixfARB");
  622.         if (NULL == GLH_EXT_NAME(glLoadTransposeMatrixfARB))
  623.             return FALSE;
  624.         GLH_EXT_NAME(glLoadTransposeMatrixdARB) = (PFNGLLOADTRANSPOSEMATRIXDARBPROC)GLH_EXT_GET_PROC_ADDRESS("glLoadTransposeMatrixdARB");
  625.         if (NULL == GLH_EXT_NAME(glLoadTransposeMatrixdARB))
  626.             return FALSE;
  627.         GLH_EXT_NAME(glMultTransposeMatrixfARB) = (PFNGLMULTTRANSPOSEMATRIXFARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultTransposeMatrixfARB");
  628.         if (NULL == GLH_EXT_NAME(glMultTransposeMatrixfARB))
  629.             return FALSE;
  630.         GLH_EXT_NAME(glMultTransposeMatrixdARB) = (PFNGLMULTTRANSPOSEMATRIXDARBPROC)GLH_EXT_GET_PROC_ADDRESS("glMultTransposeMatrixdARB");
  631.         if (NULL == GLH_EXT_NAME(glMultTransposeMatrixdARB))
  632.             return FALSE;
  633. #endif
  634. #ifdef GL_ARB_vertex_program
  635.     } else if (0 == strcmp(extension, "GL_ARB_vertex_program")) {
  636.         GLH_EXT_NAME(glVertexAttrib1sARB) = (PFNGLVERTEXATTRIB1SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1sARB");
  637.         if (NULL == GLH_EXT_NAME(glVertexAttrib1sARB))
  638.             return GL_FALSE;
  639.         GLH_EXT_NAME(glVertexAttrib1fARB) = (PFNGLVERTEXATTRIB1FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1fARB");
  640.         if (NULL == GLH_EXT_NAME(glVertexAttrib1fARB))
  641.             return GL_FALSE;
  642.         GLH_EXT_NAME(glVertexAttrib1dARB) = (PFNGLVERTEXATTRIB1DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1dARB");
  643.         if (NULL == GLH_EXT_NAME(glVertexAttrib1dARB))
  644.             return GL_FALSE;
  645.         GLH_EXT_NAME(glVertexAttrib2sARB) = (PFNGLVERTEXATTRIB2SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2sARB");
  646.         if (NULL == GLH_EXT_NAME(glVertexAttrib2sARB))
  647.             return GL_FALSE;
  648.         GLH_EXT_NAME(glVertexAttrib2fARB) = (PFNGLVERTEXATTRIB2FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2fARB");
  649.         if (NULL == GLH_EXT_NAME(glVertexAttrib2fARB))
  650.             return GL_FALSE;
  651.         GLH_EXT_NAME(glVertexAttrib2dARB) = (PFNGLVERTEXATTRIB2DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2dARB");
  652.         if (NULL == GLH_EXT_NAME(glVertexAttrib2dARB))
  653.             return GL_FALSE;
  654.         GLH_EXT_NAME(glVertexAttrib3sARB) = (PFNGLVERTEXATTRIB3SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3sARB");
  655.         if (NULL == GLH_EXT_NAME(glVertexAttrib3sARB))
  656.             return GL_FALSE;
  657.         GLH_EXT_NAME(glVertexAttrib3fARB) = (PFNGLVERTEXATTRIB3FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3fARB");
  658.         if (NULL == GLH_EXT_NAME(glVertexAttrib3fARB))
  659.             return GL_FALSE;
  660.         GLH_EXT_NAME(glVertexAttrib3dARB) = (PFNGLVERTEXATTRIB3DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3dARB");
  661.         if (NULL == GLH_EXT_NAME(glVertexAttrib3dARB))
  662.             return GL_FALSE;
  663.         GLH_EXT_NAME(glVertexAttrib4sARB) = (PFNGLVERTEXATTRIB4SARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4sARB");
  664.         if (NULL == GLH_EXT_NAME(glVertexAttrib4sARB))
  665.             return GL_FALSE;
  666.         GLH_EXT_NAME(glVertexAttrib4fARB) = (PFNGLVERTEXATTRIB4FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4fARB");
  667.         if (NULL == GLH_EXT_NAME(glVertexAttrib4fARB))
  668.             return GL_FALSE;
  669.         GLH_EXT_NAME(glVertexAttrib4dARB) = (PFNGLVERTEXATTRIB4DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4dARB");
  670.         if (NULL == GLH_EXT_NAME(glVertexAttrib4dARB))
  671.             return GL_FALSE;
  672.         GLH_EXT_NAME(glVertexAttrib4NubARB) = (PFNGLVERTEXATTRIB4NUBARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NubARB");
  673.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NubARB))
  674.             return GL_FALSE;
  675.         GLH_EXT_NAME(glVertexAttrib1svARB) = (PFNGLVERTEXATTRIB1SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1svARB");
  676.         if (NULL == GLH_EXT_NAME(glVertexAttrib1svARB))
  677.             return GL_FALSE;
  678.         GLH_EXT_NAME(glVertexAttrib1fvARB) = (PFNGLVERTEXATTRIB1FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1fvARB");
  679.         if (NULL == GLH_EXT_NAME(glVertexAttrib1fvARB))
  680.             return GL_FALSE;
  681.         GLH_EXT_NAME(glVertexAttrib1dvARB) = (PFNGLVERTEXATTRIB1DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1dvARB");
  682.         if (NULL == GLH_EXT_NAME(glVertexAttrib1dvARB))
  683.             return GL_FALSE;
  684.         GLH_EXT_NAME(glVertexAttrib2svARB) = (PFNGLVERTEXATTRIB2SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2svARB");
  685.         if (NULL == GLH_EXT_NAME(glVertexAttrib2svARB))
  686.             return GL_FALSE;
  687.         GLH_EXT_NAME(glVertexAttrib2fvARB) = (PFNGLVERTEXATTRIB2FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2fvARB");
  688.         if (NULL == GLH_EXT_NAME(glVertexAttrib2fvARB))
  689.             return GL_FALSE;
  690.         GLH_EXT_NAME(glVertexAttrib2dvARB) = (PFNGLVERTEXATTRIB2DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2dvARB");
  691.         if (NULL == GLH_EXT_NAME(glVertexAttrib2dvARB))
  692.             return GL_FALSE;
  693.         GLH_EXT_NAME(glVertexAttrib3svARB) = (PFNGLVERTEXATTRIB3SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3svARB");
  694.         if (NULL == GLH_EXT_NAME(glVertexAttrib3svARB))
  695.             return GL_FALSE;
  696.         GLH_EXT_NAME(glVertexAttrib3fvARB) = (PFNGLVERTEXATTRIB3FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3fvARB");
  697.         if (NULL == GLH_EXT_NAME(glVertexAttrib3fvARB))
  698.             return GL_FALSE;
  699.         GLH_EXT_NAME(glVertexAttrib3dvARB) = (PFNGLVERTEXATTRIB3DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3dvARB");
  700.         if (NULL == GLH_EXT_NAME(glVertexAttrib3dvARB))
  701.             return GL_FALSE;
  702.         GLH_EXT_NAME(glVertexAttrib4bvARB) = (PFNGLVERTEXATTRIB4BVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4bvARB");
  703.         if (NULL == GLH_EXT_NAME(glVertexAttrib4bvARB))
  704.             return GL_FALSE;
  705.         GLH_EXT_NAME(glVertexAttrib4svARB) = (PFNGLVERTEXATTRIB4SVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4svARB");
  706.         if (NULL == GLH_EXT_NAME(glVertexAttrib4svARB))
  707.             return GL_FALSE;
  708.         GLH_EXT_NAME(glVertexAttrib4ivARB) = (PFNGLVERTEXATTRIB4IVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4ivARB");
  709.         if (NULL == GLH_EXT_NAME(glVertexAttrib4ivARB))
  710.             return GL_FALSE;
  711.         GLH_EXT_NAME(glVertexAttrib4ubvARB) = (PFNGLVERTEXATTRIB4UBVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4ubvARB");
  712.         if (NULL == GLH_EXT_NAME(glVertexAttrib4ubvARB))
  713.             return GL_FALSE;
  714.         GLH_EXT_NAME(glVertexAttrib4usvARB) = (PFNGLVERTEXATTRIB4USVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4usvARB");
  715.         if (NULL == GLH_EXT_NAME(glVertexAttrib4usvARB))
  716.             return GL_FALSE;
  717.         GLH_EXT_NAME(glVertexAttrib4uivARB) = (PFNGLVERTEXATTRIB4UIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4uivARB");
  718.         if (NULL == GLH_EXT_NAME(glVertexAttrib4uivARB))
  719.             return GL_FALSE;
  720.         GLH_EXT_NAME(glVertexAttrib4fvARB) = (PFNGLVERTEXATTRIB4FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4fvARB");
  721.         if (NULL == GLH_EXT_NAME(glVertexAttrib4fvARB))
  722.             return GL_FALSE;
  723.         GLH_EXT_NAME(glVertexAttrib4dvARB) = (PFNGLVERTEXATTRIB4DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4dvARB");
  724.         if (NULL == GLH_EXT_NAME(glVertexAttrib4dvARB))
  725.             return GL_FALSE;
  726.         GLH_EXT_NAME(glVertexAttrib4NbvARB) = (PFNGLVERTEXATTRIB4NBVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NbvARB");
  727.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NbvARB))
  728.             return GL_FALSE;
  729.         GLH_EXT_NAME(glVertexAttrib4NsvARB) = (PFNGLVERTEXATTRIB4NSVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NsvARB");
  730.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NsvARB))
  731.             return GL_FALSE;
  732.         GLH_EXT_NAME(glVertexAttrib4NivARB) = (PFNGLVERTEXATTRIB4NIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NivARB");
  733.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NivARB))
  734.             return GL_FALSE;
  735.         GLH_EXT_NAME(glVertexAttrib4NubvARB) = (PFNGLVERTEXATTRIB4NUBVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NubvARB");
  736.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NubvARB))
  737.             return GL_FALSE;
  738.         GLH_EXT_NAME(glVertexAttrib4NusvARB) = (PFNGLVERTEXATTRIB4NUSVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NusvARB");
  739.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NusvARB))
  740.             return GL_FALSE;
  741.         GLH_EXT_NAME(glVertexAttrib4NuivARB) = (PFNGLVERTEXATTRIB4NUIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4NuivARB");
  742.         if (NULL == GLH_EXT_NAME(glVertexAttrib4NuivARB))
  743.             return GL_FALSE;
  744.         GLH_EXT_NAME(glVertexAttribPointerARB) = (PFNGLVERTEXATTRIBPOINTERARBPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribPointerARB");
  745.         if (NULL == GLH_EXT_NAME(glVertexAttribPointerARB))
  746.             return GL_FALSE;
  747.         GLH_EXT_NAME(glEnableVertexAttribArrayARB) = (PFNGLENABLEVERTEXATTRIBARRAYARBPROC)GLH_EXT_GET_PROC_ADDRESS("glEnableVertexAttribArrayARB");
  748.         if (NULL == GLH_EXT_NAME(glEnableVertexAttribArrayARB))
  749.             return GL_FALSE;
  750.         GLH_EXT_NAME(glDisableVertexAttribArrayARB) = (PFNGLDISABLEVERTEXATTRIBARRAYARBPROC)GLH_EXT_GET_PROC_ADDRESS("glDisableVertexAttribArrayARB");
  751.         if (NULL == GLH_EXT_NAME(glDisableVertexAttribArrayARB))
  752.             return GL_FALSE;
  753.         GLH_EXT_NAME(glProgramStringARB) = (PFNGLPROGRAMSTRINGARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramStringARB");
  754.         if (NULL == GLH_EXT_NAME(glProgramStringARB))
  755.             return GL_FALSE;
  756.         GLH_EXT_NAME(glBindProgramARB) = (PFNGLBINDPROGRAMARBPROC)GLH_EXT_GET_PROC_ADDRESS("glBindProgramARB");
  757.         if (NULL == GLH_EXT_NAME(glBindProgramARB))
  758.             return GL_FALSE;
  759.         GLH_EXT_NAME(glDeleteProgramsARB) = (PFNGLDELETEPROGRAMSARBPROC)GLH_EXT_GET_PROC_ADDRESS("glDeleteProgramsARB");
  760.         if (NULL == GLH_EXT_NAME(glDeleteProgramsARB))
  761.             return GL_FALSE;
  762.         GLH_EXT_NAME(glGenProgramsARB) = (PFNGLGENPROGRAMSARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGenProgramsARB");
  763.         if (NULL == GLH_EXT_NAME(glGenProgramsARB))
  764.             return GL_FALSE;
  765.         GLH_EXT_NAME(glProgramEnvParameter4dARB) = (PFNGLPROGRAMENVPARAMETER4DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramEnvParameter4dARB");
  766.         if (NULL == GLH_EXT_NAME(glProgramEnvParameter4dARB))
  767.             return GL_FALSE;
  768.         GLH_EXT_NAME(glProgramEnvParameter4dvARB) = (PFNGLPROGRAMENVPARAMETER4DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramEnvParameter4dvARB");
  769.         if (NULL == GLH_EXT_NAME(glProgramEnvParameter4dvARB))
  770.             return GL_FALSE;
  771.         GLH_EXT_NAME(glProgramEnvParameter4fARB) = (PFNGLPROGRAMENVPARAMETER4FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramEnvParameter4fARB");
  772.         if (NULL == GLH_EXT_NAME(glProgramEnvParameter4fARB))
  773.             return GL_FALSE;
  774.         GLH_EXT_NAME(glProgramEnvParameter4fvARB) = (PFNGLPROGRAMENVPARAMETER4FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramEnvParameter4fvARB");
  775.         if (NULL == GLH_EXT_NAME(glProgramEnvParameter4fvARB))
  776.             return GL_FALSE;
  777.         GLH_EXT_NAME(glProgramLocalParameter4dARB) = (PFNGLPROGRAMLOCALPARAMETER4DARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramLocalParameter4dARB");
  778.         if (NULL == GLH_EXT_NAME(glProgramLocalParameter4dARB))
  779.             return GL_FALSE;
  780.         GLH_EXT_NAME(glProgramLocalParameter4dvARB) = (PFNGLPROGRAMLOCALPARAMETER4DVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramLocalParameter4dvARB");
  781.         if (NULL == GLH_EXT_NAME(glProgramLocalParameter4dvARB))
  782.             return GL_FALSE;
  783.         GLH_EXT_NAME(glProgramLocalParameter4fARB) = (PFNGLPROGRAMLOCALPARAMETER4FARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramLocalParameter4fARB");
  784.         if (NULL == GLH_EXT_NAME(glProgramLocalParameter4fARB))
  785.             return GL_FALSE;
  786.         GLH_EXT_NAME(glProgramLocalParameter4fvARB) = (PFNGLPROGRAMLOCALPARAMETER4FVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramLocalParameter4fvARB");
  787.         if (NULL == GLH_EXT_NAME(glProgramLocalParameter4fvARB))
  788.             return GL_FALSE;
  789.         GLH_EXT_NAME(glGetProgramEnvParameterdvARB) = (PFNGLGETPROGRAMENVPARAMETERDVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramEnvParameterdvARB");
  790.         if (NULL == GLH_EXT_NAME(glGetProgramEnvParameterdvARB))
  791.             return GL_FALSE;
  792.         GLH_EXT_NAME(glGetProgramEnvParameterfvARB) = (PFNGLGETPROGRAMENVPARAMETERFVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramEnvParameterfvARB");
  793.         if (NULL == GLH_EXT_NAME(glGetProgramEnvParameterfvARB))
  794.             return GL_FALSE;
  795.         GLH_EXT_NAME(glGetProgramLocalParameterdvARB) = (PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramLocalParameterdvARB");
  796.         if (NULL == GLH_EXT_NAME(glGetProgramLocalParameterdvARB))
  797.             return GL_FALSE;
  798.         GLH_EXT_NAME(glGetProgramLocalParameterfvARB) = (PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramLocalParameterfvARB");
  799.         if (NULL == GLH_EXT_NAME(glGetProgramLocalParameterfvARB))
  800.             return GL_FALSE;
  801.         GLH_EXT_NAME(glGetProgramivARB) = (PFNGLGETPROGRAMIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramivARB");
  802.         if (NULL == GLH_EXT_NAME(glGetProgramivARB))
  803.             return GL_FALSE;
  804.         GLH_EXT_NAME(glGetProgramStringARB) = (PFNGLGETPROGRAMSTRINGARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramStringARB");
  805.         if (NULL == GLH_EXT_NAME(glGetProgramStringARB))
  806.             return GL_FALSE;
  807.         GLH_EXT_NAME(glGetVertexAttribdvARB) = (PFNGLGETVERTEXATTRIBDVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribdvARB");
  808.         if (NULL == GLH_EXT_NAME(glGetVertexAttribdvARB))
  809.             return GL_FALSE;
  810.         GLH_EXT_NAME(glGetVertexAttribfvARB) = (PFNGLGETVERTEXATTRIBFVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribfvARB");
  811.         if (NULL == GLH_EXT_NAME(glGetVertexAttribfvARB))
  812.             return GL_FALSE;
  813.         GLH_EXT_NAME(glGetVertexAttribivARB) = (PFNGLGETVERTEXATTRIBIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribivARB");
  814.         if (NULL == GLH_EXT_NAME(glGetVertexAttribivARB))
  815.             return GL_FALSE;
  816.         GLH_EXT_NAME(glGetVertexAttribPointervARB) = (PFNGLGETVERTEXATTRIBPOINTERVARBPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribPointervARB");
  817.         if (NULL == GLH_EXT_NAME(glGetVertexAttribPointervARB))
  818.             return GL_FALSE;
  819.         GLH_EXT_NAME(glIsProgramARB) = (PFNGLISPROGRAMARBPROC)GLH_EXT_GET_PROC_ADDRESS("glIsProgramARB");
  820.         if (NULL == GLH_EXT_NAME(glIsProgramARB))
  821.             return GL_FALSE;
  822. #endif
  823. #ifdef GL_EXT_abgr
  824.     } else if (0 == strcmp(extension, "GL_EXT_abgr")) {
  825. #endif
  826. #ifdef GL_EXT_bgra
  827.     } else if (0 == strcmp(extension, "GL_EXT_bgra")) {
  828. #endif
  829. #ifdef GL_EXT_blend_color
  830.     } else if (0 == strcmp(extension, "GL_EXT_blend_color")) {
  831.         GLH_EXT_NAME(glBlendColorEXT) = (PFNGLBLENDCOLOREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glBlendColorEXT");
  832.         if (NULL == GLH_EXT_NAME(glBlendColorEXT))
  833.             return FALSE;
  834. #endif
  835. #ifdef GL_EXT_blend_minmax
  836.     } else if (0 == strcmp(extension, "GL_EXT_blend_minmax")) {
  837.         GLH_EXT_NAME(glBlendEquationEXT) = (PFNGLBLENDEQUATIONEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glBlendEquationEXT");
  838.         if (NULL == GLH_EXT_NAME(glBlendEquationEXT))
  839.             return FALSE;
  840. #endif
  841. #ifdef GL_EXT_blend_subtract
  842.     } else if (0 == strcmp(extension, "GL_EXT_blend_subtract")) {
  843. #endif
  844. #ifdef GL_EXT_compiled_vertex_array
  845.     } else if (0 == strcmp(extension, "GL_EXT_compiled_vertex_array")) {
  846.         GLH_EXT_NAME(glLockArraysEXT) = (PFNGLLOCKARRAYSEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glLockArraysEXT");
  847.         if (NULL == GLH_EXT_NAME(glLockArraysEXT))
  848.             return FALSE;
  849.         GLH_EXT_NAME(glUnlockArraysEXT) = (PFNGLUNLOCKARRAYSEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glUnlockArraysEXT");
  850.         if (NULL == GLH_EXT_NAME(glUnlockArraysEXT))
  851.             return FALSE;
  852. #endif
  853. #ifdef GL_EXT_fog_coord
  854.     } else if (0 == strcmp(extension, "GL_EXT_fog_coord")) {
  855.         GLH_EXT_NAME(glFogCoorddEXT) = (PFNGLFOGCOORDDEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glFogCoorddEXT");
  856.         if (NULL == GLH_EXT_NAME(glFogCoorddEXT))
  857.             return FALSE;
  858.         GLH_EXT_NAME(glFogCoorddvEXT) = (PFNGLFOGCOORDDVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glFogCoorddvEXT");
  859.         if (NULL == GLH_EXT_NAME(glFogCoorddvEXT))
  860.             return FALSE;
  861.         GLH_EXT_NAME(glFogCoordfEXT) = (PFNGLFOGCOORDFEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glFogCoordfEXT");
  862.         if (NULL == GLH_EXT_NAME(glFogCoordfEXT))
  863.             return FALSE;
  864.         GLH_EXT_NAME(glFogCoordfvEXT) = (PFNGLFOGCOORDFVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glFogCoordfvEXT");
  865.         if (NULL == GLH_EXT_NAME(glFogCoordfvEXT))
  866.             return FALSE;
  867.         GLH_EXT_NAME(glFogCoordPointerEXT) = (PFNGLFOGCOORDPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glFogCoordPointerEXT");
  868.         if (NULL == GLH_EXT_NAME(glFogCoordPointerEXT))
  869.             return FALSE;
  870. #endif
  871. #ifdef GL_EXT_light_max_exponent
  872.     } else if (0 == strcmp(extension, "GL_EXT_light_max_exponent")) {
  873. #endif
  874. #ifdef GL_EXT_packed_pixels
  875.     } else if (0 == strcmp(extension, "GL_EXT_packed_pixels")) {
  876. #endif
  877. #ifdef GL_EXT_paletted_texture
  878.     } else if (0 == strcmp(extension, "GL_EXT_paletted_texture")) {
  879.         GLH_EXT_NAME(glColorSubTableEXT) = (PFNGLCOLORSUBTABLEEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glColorSubTableEXT");
  880.         if (NULL == GLH_EXT_NAME(glColorSubTableEXT))
  881.             return FALSE;
  882.         GLH_EXT_NAME(glColorTableEXT) = (PFNGLCOLORTABLEEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glColorTableEXT");
  883.         if (NULL == GLH_EXT_NAME(glColorTableEXT))
  884.             return FALSE;
  885.         GLH_EXT_NAME(glGetColorTableEXT) = (PFNGLGETCOLORTABLEEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTableEXT");
  886.         if (NULL == GLH_EXT_NAME(glGetColorTableEXT))
  887.             return FALSE;
  888.         GLH_EXT_NAME(glGetColorTableParameterfvEXT) = (PFNGLGETCOLORTABLEPARAMETERFVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTableParameterfvEXT");
  889.         if (NULL == GLH_EXT_NAME(glGetColorTableParameterfvEXT))
  890.             return FALSE;
  891.         GLH_EXT_NAME(glGetColorTableParameterivEXT) = (PFNGLGETCOLORTABLEPARAMETERIVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTableParameterivEXT");
  892.         if (NULL == GLH_EXT_NAME(glGetColorTableParameterivEXT))
  893.             return FALSE;
  894. #endif
  895. #ifdef GL_EXT_point_parameters
  896.     } else if (0 == strcmp(extension, "GL_EXT_point_parameters")) {
  897.         GLH_EXT_NAME(glPointParameterfEXT) = (PFNGLPOINTPARAMETERFEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glPointParameterfEXT");
  898.         if (NULL == GLH_EXT_NAME(glPointParameterfEXT))
  899.             return FALSE;
  900.         GLH_EXT_NAME(glPointParameterfvEXT) = (PFNGLPOINTPARAMETERFVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glPointParameterfvEXT");
  901.         if (NULL == GLH_EXT_NAME(glPointParameterfvEXT))
  902.             return FALSE;
  903. #endif
  904. #ifdef GL_EXT_rescale_normal
  905.     } else if (0 == strcmp(extension, "GL_EXT_rescale_normal")) {
  906. #endif
  907. #ifdef GL_EXT_secondary_color
  908.     } else if (0 == strcmp(extension, "GL_EXT_secondary_color")) {
  909.         GLH_EXT_NAME(glSecondaryColor3bEXT) = (PFNGLSECONDARYCOLOR3BEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3bEXT");
  910.         if (NULL == GLH_EXT_NAME(glSecondaryColor3bEXT))
  911.             return FALSE;
  912.         GLH_EXT_NAME(glSecondaryColor3bvEXT) = (PFNGLSECONDARYCOLOR3BVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3bvEXT");
  913.         if (NULL == GLH_EXT_NAME(glSecondaryColor3bvEXT))
  914.             return FALSE;
  915.         GLH_EXT_NAME(glSecondaryColor3dEXT) = (PFNGLSECONDARYCOLOR3DEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3dEXT");
  916.         if (NULL == GLH_EXT_NAME(glSecondaryColor3dEXT))
  917.             return FALSE;
  918.         GLH_EXT_NAME(glSecondaryColor3dvEXT) = (PFNGLSECONDARYCOLOR3DVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3dvEXT");
  919.         if (NULL == GLH_EXT_NAME(glSecondaryColor3dvEXT))
  920.             return FALSE;
  921.         GLH_EXT_NAME(glSecondaryColor3fEXT) = (PFNGLSECONDARYCOLOR3FEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3fEXT");
  922.         if (NULL == GLH_EXT_NAME(glSecondaryColor3fEXT))
  923.             return FALSE;
  924.         GLH_EXT_NAME(glSecondaryColor3fvEXT) = (PFNGLSECONDARYCOLOR3FVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3fvEXT");
  925.         if (NULL == GLH_EXT_NAME(glSecondaryColor3fvEXT))
  926.             return FALSE;
  927.         GLH_EXT_NAME(glSecondaryColor3iEXT) = (PFNGLSECONDARYCOLOR3IEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3iEXT");
  928.         if (NULL == GLH_EXT_NAME(glSecondaryColor3iEXT))
  929.             return FALSE;
  930.         GLH_EXT_NAME(glSecondaryColor3ivEXT) = (PFNGLSECONDARYCOLOR3IVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3ivEXT");
  931.         if (NULL == GLH_EXT_NAME(glSecondaryColor3ivEXT))
  932.             return FALSE;
  933.         GLH_EXT_NAME(glSecondaryColor3sEXT) = (PFNGLSECONDARYCOLOR3SEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3sEXT");
  934.         if (NULL == GLH_EXT_NAME(glSecondaryColor3sEXT))
  935.             return FALSE;
  936.         GLH_EXT_NAME(glSecondaryColor3svEXT) = (PFNGLSECONDARYCOLOR3SVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3svEXT");
  937.         if (NULL == GLH_EXT_NAME(glSecondaryColor3svEXT))
  938.             return FALSE;
  939.         GLH_EXT_NAME(glSecondaryColor3ubEXT) = (PFNGLSECONDARYCOLOR3UBEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3ubEXT");
  940.         if (NULL == GLH_EXT_NAME(glSecondaryColor3ubEXT))
  941.             return FALSE;
  942.         GLH_EXT_NAME(glSecondaryColor3ubvEXT) = (PFNGLSECONDARYCOLOR3UBVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3ubvEXT");
  943.         if (NULL == GLH_EXT_NAME(glSecondaryColor3ubvEXT))
  944.             return FALSE;
  945.         GLH_EXT_NAME(glSecondaryColor3uiEXT) = (PFNGLSECONDARYCOLOR3UIEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3uiEXT");
  946.         if (NULL == GLH_EXT_NAME(glSecondaryColor3uiEXT))
  947.             return FALSE;
  948.         GLH_EXT_NAME(glSecondaryColor3uivEXT) = (PFNGLSECONDARYCOLOR3UIVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3uivEXT");
  949.         if (NULL == GLH_EXT_NAME(glSecondaryColor3uivEXT))
  950.             return FALSE;
  951.         GLH_EXT_NAME(glSecondaryColor3usEXT) = (PFNGLSECONDARYCOLOR3USEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3usEXT");
  952.         if (NULL == GLH_EXT_NAME(glSecondaryColor3usEXT))
  953.             return FALSE;
  954.         GLH_EXT_NAME(glSecondaryColor3usvEXT) = (PFNGLSECONDARYCOLOR3USVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColor3usvEXT");
  955.         if (NULL == GLH_EXT_NAME(glSecondaryColor3usvEXT))
  956.             return FALSE;
  957.         GLH_EXT_NAME(glSecondaryColorPointerEXT) = (PFNGLSECONDARYCOLORPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glSecondaryColorPointerEXT");
  958.         if (NULL == GLH_EXT_NAME(glSecondaryColorPointerEXT))
  959.             return FALSE;
  960. #endif
  961. #ifdef GL_EXT_separate_specular_color
  962.     } else if (0 == strcmp(extension, "GL_EXT_separate_specular_color")) {
  963. #endif
  964. #ifdef GL_EXT_shared_texture_palette
  965.     } else if (0 == strcmp(extension, "GL_EXT_shared_texture_palette")) {
  966. #endif
  967. #ifdef GL_EXT_stencil_wrap
  968.     } else if (0 == strcmp(extension, "GL_EXT_stencil_wrap")) {
  969. #endif
  970. #ifdef GL_EXT_texture_compression_s3tc
  971.     } else if (0 == strcmp(extension, "GL_EXT_texture_compression_s3tc")) {
  972. #endif
  973. #ifdef GL_EXT_texture_cube_map
  974.     } else if (0 == strcmp(extension, "GL_EXT_texture_cube_map")) {
  975. #endif
  976. #ifdef GL_EXT_texture_edge_clamp
  977.     } else if (0 == strcmp(extension, "GL_EXT_texture_edge_clamp")) {
  978. #endif
  979. #ifdef GL_EXT_texture_env_add
  980.     } else if (0 == strcmp(extension, "GL_EXT_texture_env_add")) {
  981. #endif
  982. #ifdef GL_EXT_texture_env_combine
  983.     } else if (0 == strcmp(extension, "GL_EXT_texture_env_combine")) {
  984. #endif
  985. #ifdef GL_EXT_texture_filter_anisotropic
  986.     } else if (0 == strcmp(extension, "GL_EXT_texture_filter_anisotropic")) {
  987. #endif
  988. #ifdef GL_EXT_texture_lod_bias
  989.     } else if (0 == strcmp(extension, "GL_EXT_texture_lod_bias")) {
  990. #endif
  991. #ifdef GL_EXT_texture_object
  992.     } else if (0 == strcmp(extension, "GL_EXT_texture_object")) {
  993.         GLH_EXT_NAME(glAreTexturesResidentEXT) = (PFNGLARETEXTURESRESIDENTEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glAreTexturesResidentEXT");
  994.         if (NULL == GLH_EXT_NAME(glAreTexturesResidentEXT))
  995.             return FALSE;
  996.         GLH_EXT_NAME(glBindTextureEXT) = (PFNGLBINDTEXTUREEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glBindTextureEXT");
  997.         if (NULL == GLH_EXT_NAME(glBindTextureEXT))
  998.             return FALSE;
  999.         GLH_EXT_NAME(glDeleteTexturesEXT) = (PFNGLDELETETEXTURESEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glDeleteTexturesEXT");
  1000.         if (NULL == GLH_EXT_NAME(glDeleteTexturesEXT))
  1001.             return FALSE;
  1002.         GLH_EXT_NAME(glGenTexturesEXT) = (PFNGLGENTEXTURESEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glGenTexturesEXT");
  1003.         if (NULL == GLH_EXT_NAME(glGenTexturesEXT))
  1004.             return FALSE;
  1005.         GLH_EXT_NAME(glIsTextureEXT) = (PFNGLISTEXTUREEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glIsTextureEXT");
  1006.         if (NULL == GLH_EXT_NAME(glIsTextureEXT))
  1007.             return FALSE;
  1008.         GLH_EXT_NAME(glPrioritizeTexturesEXT) = (PFNGLPRIORITIZETEXTURESEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glPrioritizeTexturesEXT");
  1009.         if (NULL == GLH_EXT_NAME(glPrioritizeTexturesEXT))
  1010.             return FALSE;
  1011. #endif
  1012. #ifdef GL_EXT_texture3D
  1013.     } else if (0 == strcmp(extension, "GL_EXT_texture3D")) {
  1014.         GLH_EXT_NAME(glTexImage3DEXT) = (PFNGLTEXIMAGE3DEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glTexImage3DEXT");
  1015.         if (NULL == GLH_EXT_NAME(glTexImage3DEXT))
  1016.             return FALSE;
  1017. #endif
  1018. #ifdef GL_EXT_vertex_array
  1019.     } else if (0 == strcmp(extension, "GL_EXT_vertex_array")) {
  1020.         GLH_EXT_NAME(glArrayElementEXT) = (PFNGLARRAYELEMENTEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glArrayElementEXT");
  1021.         if (NULL == GLH_EXT_NAME(glArrayElementEXT))
  1022.             return FALSE;
  1023.         GLH_EXT_NAME(glColorPointerEXT) = (PFNGLCOLORPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glColorPointerEXT");
  1024.         if (NULL == GLH_EXT_NAME(glColorPointerEXT))
  1025.             return FALSE;
  1026.         GLH_EXT_NAME(glEdgeFlagPointerEXT) = (PFNGLEDGEFLAGPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glEdgeFlagPointerEXT");
  1027.         if (NULL == GLH_EXT_NAME(glEdgeFlagPointerEXT))
  1028.             return FALSE;
  1029.         GLH_EXT_NAME(glGetPointervEXT) = (PFNGLGETPOINTERVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glGetPointervEXT");
  1030.         if (NULL == GLH_EXT_NAME(glGetPointervEXT))
  1031.             return FALSE;
  1032.         GLH_EXT_NAME(glIndexPointerEXT) = (PFNGLINDEXPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glIndexPointerEXT");
  1033.         if (NULL == GLH_EXT_NAME(glIndexPointerEXT))
  1034.             return FALSE;
  1035.         GLH_EXT_NAME(glNormalPointerEXT) = (PFNGLNORMALPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glNormalPointerEXT");
  1036.         if (NULL == GLH_EXT_NAME(glNormalPointerEXT))
  1037.             return FALSE;
  1038.         GLH_EXT_NAME(glTexCoordPointerEXT) = (PFNGLTEXCOORDPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glTexCoordPointerEXT");
  1039.         if (NULL == GLH_EXT_NAME(glTexCoordPointerEXT))
  1040.             return FALSE;
  1041.         GLH_EXT_NAME(glVertexPointerEXT) = (PFNGLVERTEXPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexPointerEXT");
  1042.         if (NULL == GLH_EXT_NAME(glVertexPointerEXT))
  1043.             return FALSE;
  1044.         GLH_EXT_NAME(glDrawArraysEXT) = (PFNGLDRAWARRAYSEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glDrawArraysEXT");
  1045.         if (NULL == GLH_EXT_NAME(glDrawArraysEXT))
  1046.             return FALSE;
  1047. #endif
  1048. #ifdef GL_EXT_vertex_weighting
  1049.     } else if (0 == strcmp(extension, "GL_EXT_vertex_weighting")) {
  1050.         GLH_EXT_NAME(glVertexWeightfEXT) = (PFNGLVERTEXWEIGHTFEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexWeightfEXT");
  1051.         if (NULL == GLH_EXT_NAME(glVertexWeightfEXT))
  1052.             return FALSE;
  1053.         GLH_EXT_NAME(glVertexWeightfvEXT) = (PFNGLVERTEXWEIGHTFVEXTPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexWeightfvEXT");
  1054.         if (NULL == GLH_EXT_NAME(glVertexWeightfvEXT))
  1055.             return FALSE;
  1056.         GLH_EXT_NAME(glVertexWeightPointerEXT) = (PFNGLVERTEXWEIGHTPOINTEREXTPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexWeightPointerEXT");
  1057.         if (NULL == GLH_EXT_NAME(glVertexWeightPointerEXT))
  1058.             return FALSE;
  1059. #endif
  1060. #ifdef GL_NV_blend_square
  1061.     } else if (0 == strcmp(extension, "GL_NV_blend_square")) {
  1062. #endif
  1063. #ifdef GL_NV_evaluators
  1064.     } else if (0 == strcmp(extension, "GL_NV_evaluators")) {
  1065.         GLH_EXT_NAME(glMapControlPointsNV) = (PFNGLMAPCONTROLPOINTSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glMapControlPointsNV");
  1066.         if (NULL == GLH_EXT_NAME(glMapControlPointsNV))
  1067.             return FALSE;
  1068.         GLH_EXT_NAME(glMapParameterivNV) = (PFNGLMAPPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glMapParameterivNV");
  1069.         if (NULL == GLH_EXT_NAME(glMapParameterivNV))
  1070.             return FALSE;
  1071.         GLH_EXT_NAME(glMapParameterfvNV) = (PFNGLMAPPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glMapParameterfvNV");
  1072.         if (NULL == GLH_EXT_NAME(glMapParameterfvNV))
  1073.             return FALSE;
  1074.         GLH_EXT_NAME(glGetMapControlPointsNV) = (PFNGLGETMAPCONTROLPOINTSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetMapControlPointsNV");
  1075.         if (NULL == GLH_EXT_NAME(glGetMapControlPointsNV))
  1076.             return FALSE;
  1077.         GLH_EXT_NAME(glGetMapParameterivNV) = (PFNGLGETMAPPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetMapParameterivNV");
  1078.         if (NULL == GLH_EXT_NAME(glGetMapParameterivNV))
  1079.             return FALSE;
  1080.         GLH_EXT_NAME(glGetMapParameterfvNV) = (PFNGLGETMAPPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetMapParameterfvNV");
  1081.         if (NULL == GLH_EXT_NAME(glGetMapParameterfvNV))
  1082.             return FALSE;
  1083.         GLH_EXT_NAME(glGetMapAttribParameterivNV) = (PFNGLGETMAPATTRIBPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetMapAttribParameterivNV");
  1084.         if (NULL == GLH_EXT_NAME(glGetMapAttribParameterivNV))
  1085.             return FALSE;
  1086.         GLH_EXT_NAME(glGetMapAttribParameterfvNV) = (PFNGLGETMAPATTRIBPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetMapAttribParameterfvNV");
  1087.         if (NULL == GLH_EXT_NAME(glGetMapAttribParameterfvNV))
  1088.             return FALSE;
  1089.         GLH_EXT_NAME(glEvalMapsNV) = (PFNGLEVALMAPSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glEvalMapsNV");
  1090.         if (NULL == GLH_EXT_NAME(glEvalMapsNV))
  1091.             return FALSE;
  1092. #endif
  1093. #ifdef GL_NV_fence
  1094.     } else if (0 == strcmp(extension, "GL_NV_fence")) {
  1095.         GLH_EXT_NAME(glGenFencesNV) = (PFNGLGENFENCESNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGenFencesNV");
  1096.         if (NULL == GLH_EXT_NAME(glGenFencesNV))
  1097.             return FALSE;
  1098.         GLH_EXT_NAME(glDeleteFencesNV) = (PFNGLDELETEFENCESNVPROC)GLH_EXT_GET_PROC_ADDRESS("glDeleteFencesNV");
  1099.         if (NULL == GLH_EXT_NAME(glDeleteFencesNV))
  1100.             return FALSE;
  1101.         GLH_EXT_NAME(glSetFenceNV) = (PFNGLSETFENCENVPROC)GLH_EXT_GET_PROC_ADDRESS("glSetFenceNV");
  1102.         if (NULL == GLH_EXT_NAME(glSetFenceNV))
  1103.             return FALSE;
  1104.         GLH_EXT_NAME(glTestFenceNV) = (PFNGLTESTFENCENVPROC)GLH_EXT_GET_PROC_ADDRESS("glTestFenceNV");
  1105.         if (NULL == GLH_EXT_NAME(glTestFenceNV))
  1106.             return FALSE;
  1107.         GLH_EXT_NAME(glFinishFenceNV) = (PFNGLFINISHFENCENVPROC)GLH_EXT_GET_PROC_ADDRESS("glFinishFenceNV");
  1108.         if (NULL == GLH_EXT_NAME(glFinishFenceNV))
  1109.             return FALSE;
  1110.         GLH_EXT_NAME(glIsFenceNV) = (PFNGLISFENCENVPROC)GLH_EXT_GET_PROC_ADDRESS("glIsFenceNV");
  1111.         if (NULL == GLH_EXT_NAME(glIsFenceNV))
  1112.             return FALSE;
  1113.         GLH_EXT_NAME(glGetFenceivNV) = (PFNGLGETFENCEIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetFenceivNV");
  1114.         if (NULL == GLH_EXT_NAME(glGetFenceivNV))
  1115.             return FALSE;
  1116. #endif
  1117. #ifdef GL_NV_fog_distance
  1118.     } else if (0 == strcmp(extension, "GL_NV_fog_distance")) {
  1119. #endif
  1120. #ifdef GL_NV_packed_depth_stencil
  1121.     } else if (0 == strcmp(extension, "GL_NV_packed_depth_stencil")) {
  1122. #endif
  1123. #ifdef GL_NV_register_combiners
  1124.     } else if (0 == strcmp(extension, "GL_NV_register_combiners")) {
  1125.         GLH_EXT_NAME(glCombinerParameterfvNV) = (PFNGLCOMBINERPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerParameterfvNV");
  1126.         if (NULL == GLH_EXT_NAME(glCombinerParameterfvNV))
  1127.             return FALSE;
  1128.         GLH_EXT_NAME(glCombinerParameterfNV) = (PFNGLCOMBINERPARAMETERFNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerParameterfNV");
  1129.         if (NULL == GLH_EXT_NAME(glCombinerParameterfNV))
  1130.             return FALSE;
  1131.         GLH_EXT_NAME(glCombinerParameterivNV) = (PFNGLCOMBINERPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerParameterivNV");
  1132.         if (NULL == GLH_EXT_NAME(glCombinerParameterivNV))
  1133.             return FALSE;
  1134.         GLH_EXT_NAME(glCombinerParameteriNV) = (PFNGLCOMBINERPARAMETERINVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerParameteriNV");
  1135.         if (NULL == GLH_EXT_NAME(glCombinerParameteriNV))
  1136.             return FALSE;
  1137.         GLH_EXT_NAME(glCombinerInputNV) = (PFNGLCOMBINERINPUTNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerInputNV");
  1138.         if (NULL == GLH_EXT_NAME(glCombinerInputNV))
  1139.             return FALSE;
  1140.         GLH_EXT_NAME(glCombinerOutputNV) = (PFNGLCOMBINEROUTPUTNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerOutputNV");
  1141.         if (NULL == GLH_EXT_NAME(glCombinerOutputNV))
  1142.             return FALSE;
  1143.         GLH_EXT_NAME(glFinalCombinerInputNV) = (PFNGLFINALCOMBINERINPUTNVPROC)GLH_EXT_GET_PROC_ADDRESS("glFinalCombinerInputNV");
  1144.         if (NULL == GLH_EXT_NAME(glFinalCombinerInputNV))
  1145.             return FALSE;
  1146.         GLH_EXT_NAME(glGetCombinerInputParameterfvNV) = (PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCombinerInputParameterfvNV");
  1147.         if (NULL == GLH_EXT_NAME(glGetCombinerInputParameterfvNV))
  1148.             return FALSE;
  1149.         GLH_EXT_NAME(glGetCombinerInputParameterivNV) = (PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCombinerInputParameterivNV");
  1150.         if (NULL == GLH_EXT_NAME(glGetCombinerInputParameterivNV))
  1151.             return FALSE;
  1152.         GLH_EXT_NAME(glGetCombinerOutputParameterfvNV) = (PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCombinerOutputParameterfvNV");
  1153.         if (NULL == GLH_EXT_NAME(glGetCombinerOutputParameterfvNV))
  1154.             return FALSE;
  1155.         GLH_EXT_NAME(glGetCombinerOutputParameterivNV) = (PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCombinerOutputParameterivNV");
  1156.         if (NULL == GLH_EXT_NAME(glGetCombinerOutputParameterivNV))
  1157.             return FALSE;
  1158.         GLH_EXT_NAME(glGetFinalCombinerInputParameterfvNV) = (PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetFinalCombinerInputParameterfvNV");
  1159.         if (NULL == GLH_EXT_NAME(glGetFinalCombinerInputParameterfvNV))
  1160.             return FALSE;
  1161.         GLH_EXT_NAME(glGetFinalCombinerInputParameterivNV) = (PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetFinalCombinerInputParameterivNV");
  1162.         if (NULL == GLH_EXT_NAME(glGetFinalCombinerInputParameterivNV))
  1163.             return FALSE;
  1164. #endif
  1165. #ifdef GL_NV_register_combiners2
  1166.     } else if (0 == strcmp(extension, "GL_NV_register_combiners2")) {
  1167.         GLH_EXT_NAME(glCombinerStageParameterfvNV) = (PFNGLCOMBINERSTAGEPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glCombinerStageParameterfvNV");
  1168.         if (NULL == GLH_EXT_NAME(glCombinerStageParameterfvNV))
  1169.             return FALSE;
  1170.         GLH_EXT_NAME(glGetCombinerStageParameterfvNV) = (PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetCombinerStageParameterfvNV");
  1171.         if (NULL == GLH_EXT_NAME(glGetCombinerStageParameterfvNV))
  1172.             return FALSE;
  1173. #endif
  1174. #ifdef GL_NV_texgen_reflection
  1175.     } else if (0 == strcmp(extension, "GL_NV_texgen_reflection")) {
  1176. #endif
  1177. #ifdef GL_NV_texture_env_combine4
  1178.     } else if (0 == strcmp(extension, "GL_NV_texture_env_combine4")) {
  1179. #endif
  1180. #ifdef GL_NV_texture_rectangle
  1181.     } else if (0 == strcmp(extension, "GL_NV_texture_rectangle")) {
  1182. #endif
  1183. #ifdef GL_NV_texture_shader
  1184.     } else if (0 == strcmp(extension, "GL_NV_texture_shader")) {
  1185. #endif
  1186. #ifdef GL_NV_vertex_array_range
  1187.     } else if (0 == strcmp(extension, "GL_NV_vertex_array_range")) {
  1188.         GLH_EXT_NAME(glFlushVertexArrayRangeNV) = (PFNGLFLUSHVERTEXARRAYRANGENVPROC)GLH_EXT_GET_PROC_ADDRESS("glFlushVertexArrayRangeNV");
  1189.         if (NULL == GLH_EXT_NAME(glFlushVertexArrayRangeNV))
  1190.             return FALSE;
  1191.         GLH_EXT_NAME(glVertexArrayRangeNV) = (PFNGLVERTEXARRAYRANGENVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexArrayRangeNV");
  1192.         if (NULL == GLH_EXT_NAME(glVertexArrayRangeNV))
  1193.             return FALSE;
  1194. # ifdef _WIN32
  1195.         GLH_EXT_NAME(wglAllocateMemoryNV) = (PFNWGLALLOCATEMEMORYNVPROC)GLH_EXT_GET_PROC_ADDRESS("wglAllocateMemoryNV");
  1196.         if (NULL == GLH_EXT_NAME(wglAllocateMemoryNV))
  1197.             return FALSE;
  1198. # endif
  1199. # ifdef GLX_VERSION_1_3
  1200.         GLH_EXT_NAME(glXAllocateMemoryNV) = (PFNGLXALLOCATEMEMORYNVPROC)GLH_EXT_GET_PROC_ADDRESS("glXAllocateMemoryNV");
  1201.         if (NULL == GLH_EXT_NAME(glXAllocateMemoryNV))
  1202.             return FALSE;
  1203. # endif
  1204. # ifdef _WIN32
  1205.         GLH_EXT_NAME(wglFreeMemoryNV) = (PFNWGLFREEMEMORYNVPROC)GLH_EXT_GET_PROC_ADDRESS("wglFreeMemoryNV");
  1206.         if (NULL == GLH_EXT_NAME(wglFreeMemoryNV))
  1207.             return FALSE;
  1208. # endif
  1209. # ifdef GLX_VERSION_1_3
  1210.         GLH_EXT_NAME(glXFreeMemoryNV) = (PFNGLXFREEMEMORYNVPROC)GLH_EXT_GET_PROC_ADDRESS("glXFreeMemoryNV");
  1211.         if (NULL == GLH_EXT_NAME(glXFreeMemoryNV))
  1212.             return FALSE;
  1213. # endif
  1214. #endif
  1215. #ifdef GL_NV_vertex_program
  1216.     } else if (0 == strcmp(extension, "GL_NV_vertex_program")) {
  1217.         GLH_EXT_NAME(glAreProgramsResidentNV) = (PFNGLAREPROGRAMSRESIDENTNVPROC)GLH_EXT_GET_PROC_ADDRESS("glAreProgramsResidentNV");
  1218.         if (NULL == GLH_EXT_NAME(glAreProgramsResidentNV))
  1219.             return FALSE;
  1220.         GLH_EXT_NAME(glBindProgramNV) = (PFNGLBINDPROGRAMNVPROC)GLH_EXT_GET_PROC_ADDRESS("glBindProgramNV");
  1221.         if (NULL == GLH_EXT_NAME(glBindProgramNV))
  1222.             return FALSE;
  1223.         GLH_EXT_NAME(glDeleteProgramsNV) = (PFNGLDELETEPROGRAMSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glDeleteProgramsNV");
  1224.         if (NULL == GLH_EXT_NAME(glDeleteProgramsNV))
  1225.             return FALSE;
  1226.         GLH_EXT_NAME(glExecuteProgramNV) = (PFNGLEXECUTEPROGRAMNVPROC)GLH_EXT_GET_PROC_ADDRESS("glExecuteProgramNV");
  1227.         if (NULL == GLH_EXT_NAME(glExecuteProgramNV))
  1228.             return FALSE;
  1229.         GLH_EXT_NAME(glGenProgramsNV) = (PFNGLGENPROGRAMSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGenProgramsNV");
  1230.         if (NULL == GLH_EXT_NAME(glGenProgramsNV))
  1231.             return FALSE;
  1232.         GLH_EXT_NAME(glGetProgramParameterdvNV) = (PFNGLGETPROGRAMPARAMETERDVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramParameterdvNV");
  1233.         if (NULL == GLH_EXT_NAME(glGetProgramParameterdvNV))
  1234.             return FALSE;
  1235.         GLH_EXT_NAME(glGetProgramParameterfvNV) = (PFNGLGETPROGRAMPARAMETERFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramParameterfvNV");
  1236.         if (NULL == GLH_EXT_NAME(glGetProgramParameterfvNV))
  1237.             return FALSE;
  1238.         GLH_EXT_NAME(glGetProgramivNV) = (PFNGLGETPROGRAMIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramivNV");
  1239.         if (NULL == GLH_EXT_NAME(glGetProgramivNV))
  1240.             return FALSE;
  1241.         GLH_EXT_NAME(glGetProgramStringNV) = (PFNGLGETPROGRAMSTRINGNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetProgramStringNV");
  1242.         if (NULL == GLH_EXT_NAME(glGetProgramStringNV))
  1243.             return FALSE;
  1244.         GLH_EXT_NAME(glGetTrackMatrixivNV) = (PFNGLGETTRACKMATRIXIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetTrackMatrixivNV");
  1245.         if (NULL == GLH_EXT_NAME(glGetTrackMatrixivNV))
  1246.             return FALSE;
  1247.         GLH_EXT_NAME(glGetVertexAttribdvNV) = (PFNGLGETVERTEXATTRIBDVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribdvNV");
  1248.         if (NULL == GLH_EXT_NAME(glGetVertexAttribdvNV))
  1249.             return FALSE;
  1250.         GLH_EXT_NAME(glGetVertexAttribfvNV) = (PFNGLGETVERTEXATTRIBFVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribfvNV");
  1251.         if (NULL == GLH_EXT_NAME(glGetVertexAttribfvNV))
  1252.             return FALSE;
  1253.         GLH_EXT_NAME(glGetVertexAttribivNV) = (PFNGLGETVERTEXATTRIBIVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribivNV");
  1254.         if (NULL == GLH_EXT_NAME(glGetVertexAttribivNV))
  1255.             return FALSE;
  1256.         GLH_EXT_NAME(glGetVertexAttribPointervNV) = (PFNGLGETVERTEXATTRIBPOINTERVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetVertexAttribPointervNV");
  1257.         if (NULL == GLH_EXT_NAME(glGetVertexAttribPointervNV))
  1258.             return FALSE;
  1259.         GLH_EXT_NAME(glIsProgramNV) = (PFNGLISPROGRAMNVPROC)GLH_EXT_GET_PROC_ADDRESS("glIsProgramNV");
  1260.         if (NULL == GLH_EXT_NAME(glIsProgramNV))
  1261.             return FALSE;
  1262.         GLH_EXT_NAME(glLoadProgramNV) = (PFNGLLOADPROGRAMNVPROC)GLH_EXT_GET_PROC_ADDRESS("glLoadProgramNV");
  1263.         if (NULL == GLH_EXT_NAME(glLoadProgramNV))
  1264.             return FALSE;
  1265.         GLH_EXT_NAME(glProgramParameter4dNV) = (PFNGLPROGRAMPARAMETER4DNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameter4dNV");
  1266.         if (NULL == GLH_EXT_NAME(glProgramParameter4dNV))
  1267.             return FALSE;
  1268.         GLH_EXT_NAME(glProgramParameter4dvNV) = (PFNGLPROGRAMPARAMETER4DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameter4dvNV");
  1269.         if (NULL == GLH_EXT_NAME(glProgramParameter4dvNV))
  1270.             return FALSE;
  1271.         GLH_EXT_NAME(glProgramParameter4fNV) = (PFNGLPROGRAMPARAMETER4FNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameter4fNV");
  1272.         if (NULL == GLH_EXT_NAME(glProgramParameter4fNV))
  1273.             return FALSE;
  1274.         GLH_EXT_NAME(glProgramParameter4fvNV) = (PFNGLPROGRAMPARAMETER4FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameter4fvNV");
  1275.         if (NULL == GLH_EXT_NAME(glProgramParameter4fvNV))
  1276.             return FALSE;
  1277.         GLH_EXT_NAME(glProgramParameters4dvNV) = (PFNGLPROGRAMPARAMETERS4DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameters4dvNV");
  1278.         if (NULL == GLH_EXT_NAME(glProgramParameters4dvNV))
  1279.             return FALSE;
  1280.         GLH_EXT_NAME(glProgramParameters4fvNV) = (PFNGLPROGRAMPARAMETERS4FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glProgramParameters4fvNV");
  1281.         if (NULL == GLH_EXT_NAME(glProgramParameters4fvNV))
  1282.             return FALSE;
  1283.         GLH_EXT_NAME(glRequestResidentProgramsNV) = (PFNGLREQUESTRESIDENTPROGRAMSNVPROC)GLH_EXT_GET_PROC_ADDRESS("glRequestResidentProgramsNV");
  1284.         if (NULL == GLH_EXT_NAME(glRequestResidentProgramsNV))
  1285.             return FALSE;
  1286.         GLH_EXT_NAME(glTrackMatrixNV) = (PFNGLTRACKMATRIXNVPROC)GLH_EXT_GET_PROC_ADDRESS("glTrackMatrixNV");
  1287.         if (NULL == GLH_EXT_NAME(glTrackMatrixNV))
  1288.             return FALSE;
  1289.         GLH_EXT_NAME(glVertexAttribPointerNV) = (PFNGLVERTEXATTRIBPOINTERNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribPointerNV");
  1290.         if (NULL == GLH_EXT_NAME(glVertexAttribPointerNV))
  1291.             return FALSE;
  1292.         GLH_EXT_NAME(glVertexAttrib1dNV) = (PFNGLVERTEXATTRIB1DNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1dNV");
  1293.         if (NULL == GLH_EXT_NAME(glVertexAttrib1dNV))
  1294.             return FALSE;
  1295.         GLH_EXT_NAME(glVertexAttrib1dvNV) = (PFNGLVERTEXATTRIB1DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1dvNV");
  1296.         if (NULL == GLH_EXT_NAME(glVertexAttrib1dvNV))
  1297.             return FALSE;
  1298.         GLH_EXT_NAME(glVertexAttrib1fNV) = (PFNGLVERTEXATTRIB1FNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1fNV");
  1299.         if (NULL == GLH_EXT_NAME(glVertexAttrib1fNV))
  1300.             return FALSE;
  1301.         GLH_EXT_NAME(glVertexAttrib1fvNV) = (PFNGLVERTEXATTRIB1FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1fvNV");
  1302.         if (NULL == GLH_EXT_NAME(glVertexAttrib1fvNV))
  1303.             return FALSE;
  1304.         GLH_EXT_NAME(glVertexAttrib1sNV) = (PFNGLVERTEXATTRIB1SNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1sNV");
  1305.         if (NULL == GLH_EXT_NAME(glVertexAttrib1sNV))
  1306.             return FALSE;
  1307.         GLH_EXT_NAME(glVertexAttrib1svNV) = (PFNGLVERTEXATTRIB1SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib1svNV");
  1308.         if (NULL == GLH_EXT_NAME(glVertexAttrib1svNV))
  1309.             return FALSE;
  1310.         GLH_EXT_NAME(glVertexAttrib2dNV) = (PFNGLVERTEXATTRIB2DNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2dNV");
  1311.         if (NULL == GLH_EXT_NAME(glVertexAttrib2dNV))
  1312.             return FALSE;
  1313.         GLH_EXT_NAME(glVertexAttrib2dvNV) = (PFNGLVERTEXATTRIB2DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2dvNV");
  1314.         if (NULL == GLH_EXT_NAME(glVertexAttrib2dvNV))
  1315.             return FALSE;
  1316.         GLH_EXT_NAME(glVertexAttrib2fNV) = (PFNGLVERTEXATTRIB2FNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2fNV");
  1317.         if (NULL == GLH_EXT_NAME(glVertexAttrib2fNV))
  1318.             return FALSE;
  1319.         GLH_EXT_NAME(glVertexAttrib2fvNV) = (PFNGLVERTEXATTRIB2FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2fvNV");
  1320.         if (NULL == GLH_EXT_NAME(glVertexAttrib2fvNV))
  1321.             return FALSE;
  1322.         GLH_EXT_NAME(glVertexAttrib2sNV) = (PFNGLVERTEXATTRIB2SNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2sNV");
  1323.         if (NULL == GLH_EXT_NAME(glVertexAttrib2sNV))
  1324.             return FALSE;
  1325.         GLH_EXT_NAME(glVertexAttrib2svNV) = (PFNGLVERTEXATTRIB2SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib2svNV");
  1326.         if (NULL == GLH_EXT_NAME(glVertexAttrib2svNV))
  1327.             return FALSE;
  1328.         GLH_EXT_NAME(glVertexAttrib3dNV) = (PFNGLVERTEXATTRIB3DNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3dNV");
  1329.         if (NULL == GLH_EXT_NAME(glVertexAttrib3dNV))
  1330.             return FALSE;
  1331.         GLH_EXT_NAME(glVertexAttrib3dvNV) = (PFNGLVERTEXATTRIB3DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3dvNV");
  1332.         if (NULL == GLH_EXT_NAME(glVertexAttrib3dvNV))
  1333.             return FALSE;
  1334.         GLH_EXT_NAME(glVertexAttrib3fNV) = (PFNGLVERTEXATTRIB3FNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3fNV");
  1335.         if (NULL == GLH_EXT_NAME(glVertexAttrib3fNV))
  1336.             return FALSE;
  1337.         GLH_EXT_NAME(glVertexAttrib3fvNV) = (PFNGLVERTEXATTRIB3FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3fvNV");
  1338.         if (NULL == GLH_EXT_NAME(glVertexAttrib3fvNV))
  1339.             return FALSE;
  1340.         GLH_EXT_NAME(glVertexAttrib3sNV) = (PFNGLVERTEXATTRIB3SNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3sNV");
  1341.         if (NULL == GLH_EXT_NAME(glVertexAttrib3sNV))
  1342.             return FALSE;
  1343.         GLH_EXT_NAME(glVertexAttrib3svNV) = (PFNGLVERTEXATTRIB3SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib3svNV");
  1344.         if (NULL == GLH_EXT_NAME(glVertexAttrib3svNV))
  1345.             return FALSE;
  1346.         GLH_EXT_NAME(glVertexAttrib4dNV) = (PFNGLVERTEXATTRIB4DNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4dNV");
  1347.         if (NULL == GLH_EXT_NAME(glVertexAttrib4dNV))
  1348.             return FALSE;
  1349.         GLH_EXT_NAME(glVertexAttrib4dvNV) = (PFNGLVERTEXATTRIB4DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4dvNV");
  1350.         if (NULL == GLH_EXT_NAME(glVertexAttrib4dvNV))
  1351.             return FALSE;
  1352.         GLH_EXT_NAME(glVertexAttrib4fNV) = (PFNGLVERTEXATTRIB4FNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4fNV");
  1353.         if (NULL == GLH_EXT_NAME(glVertexAttrib4fNV))
  1354.             return FALSE;
  1355.         GLH_EXT_NAME(glVertexAttrib4fvNV) = (PFNGLVERTEXATTRIB4FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4fvNV");
  1356.         if (NULL == GLH_EXT_NAME(glVertexAttrib4fvNV))
  1357.             return FALSE;
  1358.         GLH_EXT_NAME(glVertexAttrib4sNV) = (PFNGLVERTEXATTRIB4SNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4sNV");
  1359.         if (NULL == GLH_EXT_NAME(glVertexAttrib4sNV))
  1360.             return FALSE;
  1361.         GLH_EXT_NAME(glVertexAttrib4svNV) = (PFNGLVERTEXATTRIB4SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4svNV");
  1362.         if (NULL == GLH_EXT_NAME(glVertexAttrib4svNV))
  1363.             return FALSE;
  1364.         GLH_EXT_NAME(glVertexAttrib4ubvNV) = (PFNGLVERTEXATTRIB4UBVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4ubvNV");
  1365.         if (NULL == GLH_EXT_NAME(glVertexAttrib4ubvNV))
  1366.             return FALSE;
  1367.         GLH_EXT_NAME(glVertexAttribs1dvNV) = (PFNGLVERTEXATTRIBS1DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs1dvNV");
  1368.         if (NULL == GLH_EXT_NAME(glVertexAttribs1dvNV))
  1369.             return FALSE;
  1370.         GLH_EXT_NAME(glVertexAttribs1fvNV) = (PFNGLVERTEXATTRIBS1FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs1fvNV");
  1371.         if (NULL == GLH_EXT_NAME(glVertexAttribs1fvNV))
  1372.             return FALSE;
  1373.         GLH_EXT_NAME(glVertexAttribs1svNV) = (PFNGLVERTEXATTRIBS1SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs1svNV");
  1374.         if (NULL == GLH_EXT_NAME(glVertexAttribs1svNV))
  1375.             return FALSE;
  1376.         GLH_EXT_NAME(glVertexAttribs2dvNV) = (PFNGLVERTEXATTRIBS2DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs2dvNV");
  1377.         if (NULL == GLH_EXT_NAME(glVertexAttribs2dvNV))
  1378.             return FALSE;
  1379.         GLH_EXT_NAME(glVertexAttribs2fvNV) = (PFNGLVERTEXATTRIBS2FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs2fvNV");
  1380.         if (NULL == GLH_EXT_NAME(glVertexAttribs2fvNV))
  1381.             return FALSE;
  1382.         GLH_EXT_NAME(glVertexAttribs2svNV) = (PFNGLVERTEXATTRIBS2SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs2svNV");
  1383.         if (NULL == GLH_EXT_NAME(glVertexAttribs2svNV))
  1384.             return FALSE;
  1385.         GLH_EXT_NAME(glVertexAttribs3dvNV) = (PFNGLVERTEXATTRIBS3DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs3dvNV");
  1386.         if (NULL == GLH_EXT_NAME(glVertexAttribs3dvNV))
  1387.             return FALSE;
  1388.         GLH_EXT_NAME(glVertexAttribs3fvNV) = (PFNGLVERTEXATTRIBS3FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs3fvNV");
  1389.         if (NULL == GLH_EXT_NAME(glVertexAttribs3fvNV))
  1390.             return FALSE;
  1391.         GLH_EXT_NAME(glVertexAttribs3svNV) = (PFNGLVERTEXATTRIBS3SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs3svNV");
  1392.         if (NULL == GLH_EXT_NAME(glVertexAttribs3svNV))
  1393.             return FALSE;
  1394.         GLH_EXT_NAME(glVertexAttribs4dvNV) = (PFNGLVERTEXATTRIBS4DVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs4dvNV");
  1395.         if (NULL == GLH_EXT_NAME(glVertexAttribs4dvNV))
  1396.             return FALSE;
  1397.         GLH_EXT_NAME(glVertexAttribs4fvNV) = (PFNGLVERTEXATTRIBS4FVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs4fvNV");
  1398.         if (NULL == GLH_EXT_NAME(glVertexAttribs4fvNV))
  1399.             return FALSE;
  1400.         GLH_EXT_NAME(glVertexAttribs4svNV) = (PFNGLVERTEXATTRIBS4SVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs4svNV");
  1401.         if (NULL == GLH_EXT_NAME(glVertexAttribs4svNV))
  1402.             return FALSE;
  1403.         GLH_EXT_NAME(glVertexAttribs4ubvNV) = (PFNGLVERTEXATTRIBS4UBVNVPROC)GLH_EXT_GET_PROC_ADDRESS("glVertexAttribs4ubvNV");
  1404.         if (NULL == GLH_EXT_NAME(glVertexAttribs4ubvNV))
  1405.             return FALSE;
  1406. #endif
  1407. #ifdef GL_SGIS_generate_mipmap
  1408.     } else if (0 == strcmp(extension, "GL_SGIS_generate_mipmap")) {
  1409. #endif
  1410. #ifdef GL_SGIS_texture_lod
  1411.     } else if (0 == strcmp(extension, "GL_SGIS_texture_lod")) {
  1412. #endif
  1413. #ifdef GL_SGIX_depth_texture
  1414.     } else if (0 == strcmp(extension, "GL_SGIX_depth_texture")) {
  1415. #endif
  1416. #ifdef GL_SGIX_shadow
  1417.     } else if (0 == strcmp(extension, "GL_SGIX_shadow")) {
  1418. #endif
  1419. #ifdef GL_VERSION_1_2
  1420.     } else if (0 == strcmp(extension, "GL_VERSION_1_2")) {
  1421.         GLH_CORE_1_2_NAME(glBlendColor) = (PFNGLBLENDCOLORPROC)GLH_EXT_GET_PROC_ADDRESS("glBlendColor");
  1422.         if (NULL == GLH_CORE_1_2_NAME(glBlendColor))
  1423.             return FALSE;
  1424.         GLH_CORE_1_2_NAME(glBlendEquation) = (PFNGLBLENDEQUATIONPROC)GLH_EXT_GET_PROC_ADDRESS("glBlendEquation");
  1425.         if (NULL == GLH_CORE_1_2_NAME(glBlendEquation))
  1426.             return FALSE;
  1427.         GLH_CORE_1_2_NAME(glDrawRangeElements) = (PFNGLDRAWRANGEELEMENTSPROC)GLH_EXT_GET_PROC_ADDRESS("glDrawRangeElements");
  1428.         if (NULL == GLH_CORE_1_2_NAME(glDrawRangeElements))
  1429.             return FALSE;
  1430.         GLH_CORE_1_2_NAME(glColorTable) = (PFNGLCOLORTABLEPROC)GLH_EXT_GET_PROC_ADDRESS("glColorTable");
  1431.         if (NULL == GLH_CORE_1_2_NAME(glColorTable))
  1432.             return FALSE;
  1433.         GLH_CORE_1_2_NAME(glColorTableParameterfv) = (PFNGLCOLORTABLEPARAMETERFVPROC)GLH_EXT_GET_PROC_ADDRESS("glColorTableParameterfv");
  1434.         if (NULL == GLH_CORE_1_2_NAME(glColorTableParameterfv))
  1435.             return FALSE;
  1436.         GLH_CORE_1_2_NAME(glColorTableParameteriv) = (PFNGLCOLORTABLEPARAMETERIVPROC)GLH_EXT_GET_PROC_ADDRESS("glColorTableParameteriv");
  1437.         if (NULL == GLH_CORE_1_2_NAME(glColorTableParameteriv))
  1438.             return FALSE;
  1439.         GLH_CORE_1_2_NAME(glCopyColorTable) = (PFNGLCOPYCOLORTABLEPROC)GLH_EXT_GET_PROC_ADDRESS("glCopyColorTable");
  1440.         if (NULL == GLH_CORE_1_2_NAME(glCopyColorTable))
  1441.             return FALSE;
  1442.         GLH_CORE_1_2_NAME(glGetColorTable) = (PFNGLGETCOLORTABLEPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTable");
  1443.         if (NULL == GLH_CORE_1_2_NAME(glGetColorTable))
  1444.             return FALSE;
  1445.         GLH_CORE_1_2_NAME(glGetColorTableParameterfv) = (PFNGLGETCOLORTABLEPARAMETERFVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTableParameterfv");
  1446.         if (NULL == GLH_CORE_1_2_NAME(glGetColorTableParameterfv))
  1447.             return FALSE;
  1448.         GLH_CORE_1_2_NAME(glGetColorTableParameteriv) = (PFNGLGETCOLORTABLEPARAMETERIVPROC)GLH_EXT_GET_PROC_ADDRESS("glGetColorTableParameteriv");
  1449.         if (NULL == GLH_CORE_1_2_NAME(glGetColorTableParameteriv))
  1450.             return FALSE;
  1451.         GLH_CORE_1_2_NAME(glTexImage3D) = (PFNGLTEXIMAGE3DPROC)GLH_EXT_GET_PROC_ADDRESS("glTexImage3D");
  1452.         if (NULL == GLH_CORE_1_2_NAME(glTexImage3D))
  1453.             return FALSE;
  1454.         GLH_CORE_1_2_NAME(glTexSubImage3D) = (PFNGLTEXSUBIMAGE3DPROC)GLH_EXT_GET_PROC_ADDRESS("glTexSubImage3D");
  1455.         if (NULL == GLH_CORE_1_2_NAME(glTexSubImage3D))
  1456.             return FALSE;
  1457.         GLH_CORE_1_2_NAME(glCopyTexSubImage3D) = (PFNGLCOPYTEXSUBIMAGE3DPROC)GLH_EXT_GET_PROC_ADDRESS("glCopyTexSubImage3D");
  1458.         if (NULL == GLH_CORE_1_2_NAME(glCopyTexSubImage3D))
  1459.             return FALSE;
  1460. #endif
  1461. #ifdef GL_WIN_swap_hint
  1462.     } else if (0 == strcmp(extension, "GL_WIN_swap_hint")) {
  1463.         GLH_EXT_NAME(glAddSwapHintRectWIN) = (PFNGLADDSWAPHINTRECTWINPROC)GLH_EXT_GET_PROC_ADDRESS("glAddSwapHintRectWIN");
  1464.         if (NULL == GLH_EXT_NAME(glAddSwapHintRectWIN))
  1465.             return FALSE;
  1466. #endif
  1467. #ifdef WGL_ARB_pbuffer
  1468.     } else if (0 == strcmp(extension, "WGL_ARB_pbuffer")) {
  1469. # ifdef _WIN32
  1470.         GLH_EXT_NAME(wglCreatePbufferARB) = (PFNWGLCREATEPBUFFERARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglCreatePbufferARB");
  1471.         if (NULL == GLH_EXT_NAME(wglCreatePbufferARB))
  1472.             return FALSE;
  1473. # endif
  1474. # ifdef _WIN32
  1475.         GLH_EXT_NAME(wglGetPbufferDCARB) = (PFNWGLGETPBUFFERDCARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglGetPbufferDCARB");
  1476.         if (NULL == GLH_EXT_NAME(wglGetPbufferDCARB))
  1477.             return FALSE;
  1478. # endif
  1479. # ifdef _WIN32
  1480.         GLH_EXT_NAME(wglReleasePbufferDCARB) = (PFNWGLRELEASEPBUFFERDCARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglReleasePbufferDCARB");
  1481.         if (NULL == GLH_EXT_NAME(wglReleasePbufferDCARB))
  1482.             return FALSE;
  1483. # endif
  1484. # ifdef _WIN32
  1485.         GLH_EXT_NAME(wglDestroyPbufferARB) = (PFNWGLDESTROYPBUFFERARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglDestroyPbufferARB");
  1486.         if (NULL == GLH_EXT_NAME(wglDestroyPbufferARB))
  1487.             return FALSE;
  1488. # endif
  1489. # ifdef _WIN32
  1490.         GLH_EXT_NAME(wglQueryPbufferARB) = (PFNWGLQUERYPBUFFERARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglQueryPbufferARB");
  1491.         if (NULL == GLH_EXT_NAME(wglQueryPbufferARB))
  1492.             return FALSE;
  1493. # endif
  1494. #endif
  1495. #ifdef WGL_ARB_render_texture
  1496. # ifdef _WIN32
  1497. GLH_EXT_NAME(wglBindTexImageARB) = (PFNWGLBINDTEXIMAGEARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglBindTexImageARB");
  1498. if (NULL == GLH_EXT_NAME(wglBindTexImageARB))
  1499. return FALSE;
  1500. # endif
  1501. # ifdef _WIN32
  1502. GLH_EXT_NAME(wglReleaseTexImageARB) = (PFNWGLRELEASETEXIMAGEARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglReleaseTexImageARB");
  1503. if (NULL == GLH_EXT_NAME(wglReleaseTexImageARB))
  1504. return FALSE;
  1505. # endif
  1506. # ifdef _WIN32
  1507. GLH_EXT_NAME(wglSetPbufferAttribARB) = (PFNWGLSETPBUFFERATTRIBARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglSetPbufferAttribARB");
  1508. if (NULL == GLH_EXT_NAME(wglSetPbufferAttribARB))
  1509. return FALSE;
  1510. # endif
  1511. #endif
  1512. #ifdef WGL_ARB_pixel_format
  1513.     } else if (0 == strcmp(extension, "WGL_ARB_pixel_format")) {
  1514. # ifdef _WIN32
  1515.         GLH_EXT_NAME(wglGetPixelFormatAttribivARB) = (PFNWGLGETPIXELFORMATATTRIBIVARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglGetPixelFormatAttribivARB");
  1516.         if (NULL == GLH_EXT_NAME(wglGetPixelFormatAttribivARB))
  1517.             return FALSE;
  1518. # endif
  1519. # ifdef _WIN32
  1520.         GLH_EXT_NAME(wglGetPixelFormatAttribfvARB) = (PFNWGLGETPIXELFORMATATTRIBFVARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglGetPixelFormatAttribfvARB");
  1521.         if (NULL == GLH_EXT_NAME(wglGetPixelFormatAttribfvARB))
  1522.             return FALSE;
  1523. # endif
  1524. # ifdef _WIN32
  1525.         GLH_EXT_NAME(wglChoosePixelFormatARB) = (PFNWGLCHOOSEPIXELFORMATARBPROC)GLH_EXT_GET_PROC_ADDRESS("wglChoosePixelFormatARB");
  1526.         if (NULL == GLH_EXT_NAME(wglChoosePixelFormatARB))
  1527.             return FALSE;
  1528. # endif
  1529. #endif
  1530.     } else {
  1531.         return FALSE;
  1532.     }
  1533.     return TRUE;
  1534. }
  1535. #endif
  1536. #else // defined(__APPLE__)
  1537. #ifdef GLH_EXT_SINGLE_FILE
  1538. int glh_init_extension(const char* extension)
  1539. {
  1540. // MBW -- XXX -- Should this check for extension availability?
  1541. return TRUE;
  1542. }
  1543. #endif // GLH_EXT_SINGLE_FILE
  1544. #endif // defined(__APPLE__)
  1545. #undef GLH_EXT_SINGLE_FILE
  1546. #endif /* GLH_GENEXT_H */