Home | nevrax.com |
|
driver_opengl_extension.hGo to the documentation of this file.00001 00007 /* Copyright, 2000 Nevrax Ltd. 00008 * 00009 * This file is part of NEVRAX NEL. 00010 * NEVRAX NEL is free software; you can redistribute it and/or modify 00011 * it under the terms of the GNU General Public License as published by 00012 * the Free Software Foundation; either version 2, or (at your option) 00013 * any later version. 00014 00015 * NEVRAX NEL is distributed in the hope that it will be useful, but 00016 * WITHOUT ANY WARRANTY; without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 * General Public License for more details. 00019 00020 * You should have received a copy of the GNU General Public License 00021 * along with NEVRAX NEL; see the file COPYING. If not, write to the 00022 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, 00023 * MA 02111-1307, USA. 00024 */ 00025 00026 #ifndef NL_OPENGL_EXTENSION_H 00027 #define NL_OPENGL_EXTENSION_H 00028 00029 00030 #include "nel/misc/types_nl.h" 00031 00032 #ifdef NL_OS_WINDOWS 00033 00034 #define WIN32_LEAN_AND_MEAN 00035 #include <windows.h> 00036 00037 #else // NL_OS_UNIX 00038 00039 #include <GL/glx.h> 00040 00041 #endif // NL_OS_UNIX 00042 00043 00044 #include <GL/gl.h> 00045 #include <GL/glext.h> // Please download it from http://oss.sgi.com/projects/ogl-sample/ABI/" 00046 00047 #ifndef GL_GLEXT_VERSION 00048 #error "I need a newer <GL/glext.h>. Please download it from http://oss.sgi.com/projects/ogl-sample/ABI/" 00049 #endif // GL_GLEXT_VERSION 00050 00051 #if GL_GLEXT_VERSION < 7 00052 #error "I need a newer <GL/glext.h>. Please download it from http://oss.sgi.com/projects/ogl-sample/ABI/" 00053 #endif // GL_GLEXT_VERSION < 7 00054 00055 #include "driver_opengl_extension_def.h" 00056 00057 namespace NL3D 00058 { 00059 00060 00061 // *************************************************************************** 00063 struct CGlExtensions 00064 { 00065 // Is this driver a correct OpenGL 1.2 driver? 00066 bool Version1_2; 00067 00068 // Required Extensions. 00069 bool ARBMultiTexture; 00070 sint NbTextureStages; 00071 bool EXTTextureEnvCombine; 00072 00073 // Optionnal Extensions. 00074 bool ARBTextureCompression; 00075 // NB: Fence extension is not here, because NVVertexArrayRange is false if GL_NV_fence is not here. 00076 bool NVVertexArrayRange; 00077 uint NVVertexArrayRangeMaxVertex; 00078 bool EXTTextureCompressionS3TC; 00079 bool EXTVertexWeighting; 00080 bool EXTSeparateSpecularColor; 00081 bool NVTextureEnvCombine4; 00082 bool ARBTextureCubeMap; 00083 bool NVVertexProgram; 00084 bool NVTextureShader; 00085 // true if NVVertexProgram and if we know that VP is emulated 00086 bool NVVertexProgramEmulated; 00087 bool EXTSecondaryColor; 00088 bool EXTBlendColor; 00089 // NVVertexArrayRange2. 00090 bool NVVertexArrayRange2; 00091 // equal to GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV if possible, or GL_VERTEX_ARRAY_RANGE_NV 00092 uint NVStateVARWithoutFlush; 00093 00094 // WGL ARB extensions, true if supported 00095 bool WGLARBPBuffer; 00096 bool WGLARBPixelFormat; 00097 00098 // ATI Extensions. 00099 bool ATIVertexArrayObject; 00100 00101 public: 00102 00104 // @{ 00105 bool DisableHardwareVertexProgram; 00106 bool DisableHardwareVertexArrayAGP; 00107 bool DisableHardwareTextureShader; 00108 // @} 00109 00110 00111 public: 00112 CGlExtensions() 00113 { 00114 // Fill all false by default. 00115 Version1_2= false; 00116 ARBMultiTexture= false; 00117 NbTextureStages= 1; 00118 EXTTextureEnvCombine= false; 00119 ARBTextureCompression= false; 00120 NVVertexArrayRange= false; 00121 NVVertexArrayRangeMaxVertex= 0; 00122 EXTTextureCompressionS3TC= false; 00123 EXTVertexWeighting= false; 00124 EXTSeparateSpecularColor= false; 00125 NVTextureEnvCombine4= false; 00126 ARBTextureCubeMap= false; 00127 NVTextureShader= false; 00128 NVVertexProgram= false; 00129 NVVertexProgramEmulated= false; 00130 EXTSecondaryColor= false; 00131 WGLARBPBuffer= false; 00132 WGLARBPixelFormat= false; 00133 EXTBlendColor= false; 00134 ATIVertexArrayObject= false; 00135 00137 DisableHardwareVertexProgram= false; 00138 DisableHardwareVertexArrayAGP= false; 00139 DisableHardwareTextureShader= false; 00140 }; 00141 }; 00142 00143 00144 // *************************************************************************** 00145 00146 #ifdef NL_OS_WINDOWS 00147 00148 void registerWGlExtensions(CGlExtensions &ext, HDC hDC); 00149 #endif // NL_OS_WINDOWS 00150 00152 void registerGlExtensions(CGlExtensions &ext); 00153 00154 00155 } 00156 00157 00158 00159 // *************************************************************************** 00160 // The exported function names 00161 /* NB: We named all like nglActiveTextureARB (n for NEL :) ) 00162 to avoid compilation conflict with future version of gl.h 00163 eg: gl.h Version 1.2 define glActiveTextureARB so we can't use it. 00164 00165 NB: we do it for all (EXT, NV, ARB extension) even it should be usefull only for ARB ones. 00166 */ 00167 00168 00169 // ARB_multitexture 00170 //================= 00171 extern NEL_PFNGLACTIVETEXTUREARBPROC nglActiveTextureARB; 00172 extern NEL_PFNGLCLIENTACTIVETEXTUREARBPROC nglClientActiveTextureARB; 00173 00174 extern NEL_PFNGLMULTITEXCOORD1SARBPROC nglMultiTexCoord1sARB; 00175 extern NEL_PFNGLMULTITEXCOORD1IARBPROC nglMultiTexCoord1iARB; 00176 extern NEL_PFNGLMULTITEXCOORD1FARBPROC nglMultiTexCoord1fARB; 00177 extern NEL_PFNGLMULTITEXCOORD1FARBPROC nglMultiTexCoord1fARB; 00178 extern NEL_PFNGLMULTITEXCOORD1DARBPROC nglMultiTexCoord1dARB; 00179 extern NEL_PFNGLMULTITEXCOORD2SARBPROC nglMultiTexCoord2sARB; 00180 extern NEL_PFNGLMULTITEXCOORD2IARBPROC nglMultiTexCoord2iARB; 00181 extern NEL_PFNGLMULTITEXCOORD2FARBPROC nglMultiTexCoord2fARB; 00182 extern NEL_PFNGLMULTITEXCOORD2DARBPROC nglMultiTexCoord2dARB; 00183 extern NEL_PFNGLMULTITEXCOORD3SARBPROC nglMultiTexCoord3sARB; 00184 extern NEL_PFNGLMULTITEXCOORD3IARBPROC nglMultiTexCoord3iARB; 00185 extern NEL_PFNGLMULTITEXCOORD3FARBPROC nglMultiTexCoord3fARB; 00186 extern NEL_PFNGLMULTITEXCOORD3DARBPROC nglMultiTexCoord3dARB; 00187 extern NEL_PFNGLMULTITEXCOORD4SARBPROC nglMultiTexCoord4sARB; 00188 extern NEL_PFNGLMULTITEXCOORD4IARBPROC nglMultiTexCoord4iARB; 00189 extern NEL_PFNGLMULTITEXCOORD4FARBPROC nglMultiTexCoord4fARB; 00190 extern NEL_PFNGLMULTITEXCOORD4DARBPROC nglMultiTexCoord4dARB; 00191 00192 extern NEL_PFNGLMULTITEXCOORD1SVARBPROC nglMultiTexCoord1svARB; 00193 extern NEL_PFNGLMULTITEXCOORD1IVARBPROC nglMultiTexCoord1ivARB; 00194 extern NEL_PFNGLMULTITEXCOORD1FVARBPROC nglMultiTexCoord1fvARB; 00195 extern NEL_PFNGLMULTITEXCOORD1DVARBPROC nglMultiTexCoord1dvARB; 00196 extern NEL_PFNGLMULTITEXCOORD2SVARBPROC nglMultiTexCoord2svARB; 00197 extern NEL_PFNGLMULTITEXCOORD2IVARBPROC nglMultiTexCoord2ivARB; 00198 extern NEL_PFNGLMULTITEXCOORD2FVARBPROC nglMultiTexCoord2fvARB; 00199 extern NEL_PFNGLMULTITEXCOORD2DVARBPROC nglMultiTexCoord2dvARB; 00200 extern NEL_PFNGLMULTITEXCOORD3SVARBPROC nglMultiTexCoord3svARB; 00201 extern NEL_PFNGLMULTITEXCOORD3IVARBPROC nglMultiTexCoord3ivARB; 00202 extern NEL_PFNGLMULTITEXCOORD3FVARBPROC nglMultiTexCoord3fvARB; 00203 extern NEL_PFNGLMULTITEXCOORD3DVARBPROC nglMultiTexCoord3dvARB; 00204 extern NEL_PFNGLMULTITEXCOORD4SVARBPROC nglMultiTexCoord4svARB; 00205 extern NEL_PFNGLMULTITEXCOORD4IVARBPROC nglMultiTexCoord4ivARB; 00206 extern NEL_PFNGLMULTITEXCOORD4FVARBPROC nglMultiTexCoord4fvARB; 00207 extern NEL_PFNGLMULTITEXCOORD4DVARBPROC nglMultiTexCoord4dvARB; 00208 00209 00210 // ARB_TextureCompression. 00211 //======================== 00212 extern NEL_PFNGLCOMPRESSEDTEXIMAGE3DARBPROC nglCompressedTexImage3DARB; 00213 extern NEL_PFNGLCOMPRESSEDTEXIMAGE2DARBPROC nglCompressedTexImage2DARB; 00214 extern NEL_PFNGLCOMPRESSEDTEXIMAGE1DARBPROC nglCompressedTexImage1DARB; 00215 extern NEL_PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC nglCompressedTexSubImage3DARB; 00216 extern NEL_PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC nglCompressedTexSubImage2DARB; 00217 extern NEL_PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC nglCompressedTexSubImage1DARB; 00218 extern NEL_PFNGLGETCOMPRESSEDTEXIMAGEARBPROC nglGetCompressedTexImageARB; 00219 00220 00221 // VertexArrayRangeNV. 00222 //==================== 00223 extern NEL_PFNGLFLUSHVERTEXARRAYRANGENVPROC nglFlushVertexArrayRangeNV; 00224 extern NEL_PFNGLVERTEXARRAYRANGENVPROC nglVertexArrayRangeNV; 00225 #ifdef NL_OS_WINDOWS 00226 extern PFNWGLALLOCATEMEMORYNVPROC wglAllocateMemoryNV; 00227 extern PFNWGLFREEMEMORYNVPROC wglFreeMemoryNV; 00228 #endif 00229 00230 00231 // FenceNV. 00232 //==================== 00233 extern NEL_PFNGLDELETEFENCESNVPROC nglDeleteFencesNV; 00234 extern NEL_PFNGLGENFENCESNVPROC nglGenFencesNV; 00235 extern NEL_PFNGLISFENCENVPROC nglIsFenceNV; 00236 extern NEL_PFNGLTESTFENCENVPROC nglTestFenceNV; 00237 extern NEL_PFNGLGETFENCEIVNVPROC nglGetFenceivNV; 00238 extern NEL_PFNGLFINISHFENCENVPROC nglFinishFenceNV; 00239 extern NEL_PFNGLSETFENCENVPROC nglSetFenceNV; 00240 00241 00242 // VertexWeighting. 00243 //================== 00244 extern NEL_PFNGLVERTEXWEIGHTFEXTPROC nglVertexWeightfEXT; 00245 extern NEL_PFNGLVERTEXWEIGHTFVEXTPROC nglVertexWeightfvEXT; 00246 extern NEL_PFNGLVERTEXWEIGHTPOINTEREXTPROC nglVertexWeightPointerEXT; 00247 00248 00249 // VertexProgramExtension. 00250 //======================== 00251 extern NEL_PFNGLAREPROGRAMSRESIDENTNVPROC nglAreProgramsResidentNV; 00252 extern NEL_PFNGLBINDPROGRAMNVPROC nglBindProgramNV; 00253 extern NEL_PFNGLDELETEPROGRAMSNVPROC nglDeleteProgramsNV; 00254 extern NEL_PFNGLEXECUTEPROGRAMNVPROC nglExecuteProgramNV; 00255 extern NEL_PFNGLGENPROGRAMSNVPROC nglGenProgramsNV; 00256 extern NEL_PFNGLGETPROGRAMPARAMETERDVNVPROC nglGetProgramParameterdvNV; 00257 extern NEL_PFNGLGETPROGRAMPARAMETERFVNVPROC nglGetProgramParameterfvNV; 00258 extern NEL_PFNGLGETPROGRAMIVNVPROC nglGetProgramivNV; 00259 extern NEL_PFNGLGETPROGRAMSTRINGNVPROC nglGetProgramStringNV; 00260 extern NEL_PFNGLGETTRACKMATRIXIVNVPROC nglGetTrackMatrixivNV; 00261 extern NEL_PFNGLGETVERTEXATTRIBDVNVPROC nglGetVertexAttribdvNV; 00262 extern NEL_PFNGLGETVERTEXATTRIBFVNVPROC nglGetVertexAttribfvNV; 00263 extern NEL_PFNGLGETVERTEXATTRIBIVNVPROC nglGetVertexAttribivNV; 00264 extern NEL_PFNGLGETVERTEXATTRIBPOINTERVNVPROC nglGetVertexAttribPointervNV; 00265 extern NEL_PFNGLISPROGRAMNVPROC nglIsProgramNV; 00266 extern NEL_PFNGLLOADPROGRAMNVPROC nglLoadProgramNV; 00267 extern NEL_PFNGLPROGRAMPARAMETER4DNVPROC nglProgramParameter4dNV; 00268 extern NEL_PFNGLPROGRAMPARAMETER4DVNVPROC nglProgramParameter4dvNV; 00269 extern NEL_PFNGLPROGRAMPARAMETER4FNVPROC nglProgramParameter4fNV; 00270 extern NEL_PFNGLPROGRAMPARAMETER4FVNVPROC nglProgramParameter4fvNV; 00271 extern NEL_PFNGLPROGRAMPARAMETERS4DVNVPROC nglProgramParameters4dvNV; 00272 extern NEL_PFNGLPROGRAMPARAMETERS4FVNVPROC nglProgramParameters4fvNV; 00273 extern NEL_PFNGLREQUESTRESIDENTPROGRAMSNVPROC nglRequestResidentProgramsNV; 00274 extern NEL_PFNGLTRACKMATRIXNVPROC nglTrackMatrixNV; 00275 extern NEL_PFNGLVERTEXATTRIBPOINTERNVPROC nglVertexAttribPointerNV; 00276 extern NEL_PFNGLVERTEXATTRIB1DNVPROC nglVertexAttrib1dNV; 00277 extern NEL_PFNGLVERTEXATTRIB1DVNVPROC nglVertexAttrib1dvNV; 00278 extern NEL_PFNGLVERTEXATTRIB1FNVPROC nglVertexAttrib1fNV; 00279 extern NEL_PFNGLVERTEXATTRIB1FVNVPROC nglVertexAttrib1fvNV; 00280 extern NEL_PFNGLVERTEXATTRIB1SNVPROC nglVertexAttrib1sNV; 00281 extern NEL_PFNGLVERTEXATTRIB1SVNVPROC nglVertexAttrib1svNV; 00282 extern NEL_PFNGLVERTEXATTRIB2DNVPROC nglVertexAttrib2dNV; 00283 extern NEL_PFNGLVERTEXATTRIB2DVNVPROC nglVertexAttrib2dvNV; 00284 extern NEL_PFNGLVERTEXATTRIB2FNVPROC nglVertexAttrib2fNV; 00285 extern NEL_PFNGLVERTEXATTRIB2FVNVPROC nglVertexAttrib2fvNV; 00286 extern NEL_PFNGLVERTEXATTRIB2SNVPROC nglVertexAttrib2sNV; 00287 extern NEL_PFNGLVERTEXATTRIB2SVNVPROC nglVertexAttrib2svNV; 00288 extern NEL_PFNGLVERTEXATTRIB3DNVPROC nglVertexAttrib3dNV; 00289 extern NEL_PFNGLVERTEXATTRIB3DVNVPROC nglVertexAttrib3dvNV; 00290 extern NEL_PFNGLVERTEXATTRIB3FNVPROC nglVertexAttrib3fNV; 00291 extern NEL_PFNGLVERTEXATTRIB3FVNVPROC nglVertexAttrib3fvNV; 00292 extern NEL_PFNGLVERTEXATTRIB3SNVPROC nglVertexAttrib3sNV; 00293 extern NEL_PFNGLVERTEXATTRIB3SVNVPROC nglVertexAttrib3svNV; 00294 extern NEL_PFNGLVERTEXATTRIB4DNVPROC nglVertexAttrib4dNV; 00295 extern NEL_PFNGLVERTEXATTRIB4DVNVPROC nglVertexAttrib4dvNV; 00296 extern NEL_PFNGLVERTEXATTRIB4FNVPROC nglVertexAttrib4fNV; 00297 extern NEL_PFNGLVERTEXATTRIB4FVNVPROC nglVertexAttrib4fvNV; 00298 extern NEL_PFNGLVERTEXATTRIB4SNVPROC nglVertexAttrib4sNV; 00299 extern NEL_PFNGLVERTEXATTRIB4SVNVPROC nglVertexAttrib4svNV; 00300 extern NEL_PFNGLVERTEXATTRIB4UBVNVPROC nglVertexAttrib4ubvNV; 00301 extern NEL_PFNGLVERTEXATTRIBS1DVNVPROC nglVertexAttribs1dvNV; 00302 extern NEL_PFNGLVERTEXATTRIBS1FVNVPROC nglVertexAttribs1fvNV; 00303 extern NEL_PFNGLVERTEXATTRIBS1SVNVPROC nglVertexAttribs1svNV; 00304 extern NEL_PFNGLVERTEXATTRIBS2DVNVPROC nglVertexAttribs2dvNV; 00305 extern NEL_PFNGLVERTEXATTRIBS2FVNVPROC nglVertexAttribs2fvNV; 00306 extern NEL_PFNGLVERTEXATTRIBS2SVNVPROC nglVertexAttribs2svNV; 00307 extern NEL_PFNGLVERTEXATTRIBS3DVNVPROC nglVertexAttribs3dvNV; 00308 extern NEL_PFNGLVERTEXATTRIBS3FVNVPROC nglVertexAttribs3fvNV; 00309 extern NEL_PFNGLVERTEXATTRIBS3SVNVPROC nglVertexAttribs3svNV; 00310 extern NEL_PFNGLVERTEXATTRIBS4DVNVPROC nglVertexAttribs4dvNV; 00311 extern NEL_PFNGLVERTEXATTRIBS4FVNVPROC nglVertexAttribs4fvNV; 00312 extern NEL_PFNGLVERTEXATTRIBS4SVNVPROC nglVertexAttribs4svNV; 00313 extern NEL_PFNGLVERTEXATTRIBS4UBVNVPROC nglVertexAttribs4ubvNV; 00314 00315 00316 // SecondaryColor extension 00317 //======================== 00318 extern NEL_PFNGLSECONDARYCOLOR3BEXTPROC nglSecondaryColor3bEXT; 00319 extern NEL_PFNGLSECONDARYCOLOR3BVEXTPROC nglSecondaryColor3bvEXT; 00320 extern NEL_PFNGLSECONDARYCOLOR3DEXTPROC nglSecondaryColor3dEXT; 00321 extern NEL_PFNGLSECONDARYCOLOR3DVEXTPROC nglSecondaryColor3dvEXT; 00322 extern NEL_PFNGLSECONDARYCOLOR3FEXTPROC nglSecondaryColor3fEXT; 00323 extern NEL_PFNGLSECONDARYCOLOR3FVEXTPROC nglSecondaryColor3fvEXT; 00324 extern NEL_PFNGLSECONDARYCOLOR3IEXTPROC nglSecondaryColor3iEXT; 00325 extern NEL_PFNGLSECONDARYCOLOR3IVEXTPROC nglSecondaryColor3ivEXT; 00326 extern NEL_PFNGLSECONDARYCOLOR3SEXTPROC nglSecondaryColor3sEXT; 00327 extern NEL_PFNGLSECONDARYCOLOR3SVEXTPROC nglSecondaryColor3svEXT; 00328 extern NEL_PFNGLSECONDARYCOLOR3UBEXTPROC nglSecondaryColor3ubEXT; 00329 extern NEL_PFNGLSECONDARYCOLOR3UBVEXTPROC nglSecondaryColor3ubvEXT; 00330 extern NEL_PFNGLSECONDARYCOLOR3UIEXTPROC nglSecondaryColor3uiEXT; 00331 extern NEL_PFNGLSECONDARYCOLOR3UIVEXTPROC nglSecondaryColor3uivEXT; 00332 extern NEL_PFNGLSECONDARYCOLOR3USEXTPROC nglSecondaryColor3usEXT; 00333 extern NEL_PFNGLSECONDARYCOLOR3USVEXTPROC nglSecondaryColor3usvEXT; 00334 extern NEL_PFNGLSECONDARYCOLORPOINTEREXTPROC nglSecondaryColorPointerEXT; 00335 00336 00337 // BlendColor extension 00338 //======================== 00339 extern NEL_PFNGLBLENDCOLOREXTPROC nglBlendColorEXT; 00340 00341 00342 // GL_ATI_vertex_array_object extension 00343 //======================== 00344 extern NEL_PFNGLNEWOBJECTBUFFERATIPROC nglNewObjectBufferATI; 00345 extern NEL_PFNGLISOBJECTBUFFERATIPROC nglIsObjectBufferATI; 00346 extern NEL_PFNGLUPDATEOBJECTBUFFERATIPROC nglUpdateObjectBufferATI; 00347 extern NEL_PFNGLGETOBJECTBUFFERFVATIPROC nglGetObjectBufferfvATI; 00348 extern NEL_PFNGLGETOBJECTBUFFERIVATIPROC nglGetObjectBufferivATI; 00349 extern NEL_PFNGLDELETEOBJECTBUFFERATIPROC nglDeleteObjectBufferATI; 00350 extern NEL_PFNGLARRAYOBJECTATIPROC nglArrayObjectATI; 00351 extern NEL_PFNGLGETARRAYOBJECTFVATIPROC nglGetArrayObjectfvATI; 00352 extern NEL_PFNGLGETARRAYOBJECTIVATIPROC nglGetArrayObjectivATI; 00353 extern NEL_PFNGLVARIANTARRAYOBJECTATIPROC nglVariantArrayObjectATI; 00354 extern NEL_PFNGLGETVARIANTARRAYOBJECTFVATIPROC nglGetVariantArrayObjectfvATI; 00355 extern NEL_PFNGLGETVARIANTARRAYOBJECTIVATIPROC nglGetVariantArrayObjectivATI; 00356 00357 00358 00359 #ifdef NL_OS_WINDOWS 00360 00361 // Pbuffer extension 00362 //================== 00363 extern PFNWGLCREATEPBUFFERARBPROC wglCreatePbufferARB; 00364 extern PFNWGLGETPUFFERDCARBPROC wglGetPbufferDCARB; 00365 extern PFNWGLRELEASEPUFFERDCARBPROC wglReleasePbufferDCARB; 00366 extern PFNWGLDESTROYPUFFERARBPROC wglDestroyPbufferARB; 00367 extern PFNWGLQUERYPBUFFERARBPROC wglQueryPbufferARB; 00368 00369 00370 // Get Pixel format extension 00371 //=========================== 00372 extern PFNWGLGETPIXELFORMATATTRIBIVARBPROC wglGetPixelFormatAttribivARB; 00373 extern PFNWGLGETPIXELFORMATATTRIBFVARBPROC wglGetPixelFormatAttribfvARB; 00374 extern PFNWGLCHOOSEPIXELFORMATARBPROC wglChoosePixelFormatARB; 00375 00376 00377 // WGL_ARB_extensions_string 00378 extern PFNWGFGETEXTENSIONSSTRINGARB wglGetExtensionsStringARB; 00379 00380 #endif 00381 00382 00383 #endif // NL_OPENGL_EXTENSION_H 00384 |