doom3-gpl
Doom 3 GPL source release
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
win_qgl.cpp
Go to the documentation of this file.
1 /*
2 ===========================================================================
3 
4 Doom 3 GPL Source Code
5 Copyright (C) 1999-2011 id Software LLC, a ZeniMax Media company.
6 
7 This file is part of the Doom 3 GPL Source Code (?Doom 3 Source Code?).
8 
9 Doom 3 Source Code is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
13 
14 Doom 3 Source Code is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with Doom 3 Source Code. If not, see <http://www.gnu.org/licenses/>.
21 
22 In addition, the Doom 3 Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 Source Code. If not, please request a copy in writing from id Software at the address below.
23 
24 If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
25 
26 ===========================================================================
27 */
28 /*
29 ** QGL_WIN.C
30 **
31 ** This file implements the operating system binding of GL to QGL function
32 ** pointers. When doing a port of Doom you must implement the following
33 ** two functions:
34 **
35 ** QGL_Init() - loads libraries, assigns function pointers, etc.
36 ** QGL_Shutdown() - unloads libraries, NULLs function pointers
37 */
38 #include "../../idlib/precompiled.h"
39 #pragma hdrstop
40 
41 #include <float.h>
42 #include "win_local.h"
43 #include "../../renderer/tr_local.h"
44 
45 
46 int ( WINAPI * qwglChoosePixelFormat )(HDC, CONST PIXELFORMATDESCRIPTOR *);
47 int ( WINAPI * qwglDescribePixelFormat) (HDC, int, UINT, LPPIXELFORMATDESCRIPTOR);
48 int ( WINAPI * qwglGetPixelFormat)(HDC);
49 BOOL ( WINAPI * qwglSetPixelFormat)(HDC, int, CONST PIXELFORMATDESCRIPTOR *);
50 BOOL ( WINAPI * qwglSwapBuffers)(HDC);
51 
52 BOOL ( WINAPI * qwglCopyContext)(HGLRC, HGLRC, UINT);
53 HGLRC ( WINAPI * qwglCreateContext)(HDC);
54 HGLRC ( WINAPI * qwglCreateLayerContext)(HDC, int);
55 BOOL ( WINAPI * qwglDeleteContext)(HGLRC);
56 HGLRC ( WINAPI * qwglGetCurrentContext)(VOID);
57 HDC ( WINAPI * qwglGetCurrentDC)(VOID);
58 PROC ( WINAPI * qwglGetProcAddress)(LPCSTR);
59 BOOL ( WINAPI * qwglMakeCurrent)(HDC, HGLRC);
60 BOOL ( WINAPI * qwglShareLists)(HGLRC, HGLRC);
61 BOOL ( WINAPI * qwglUseFontBitmaps)(HDC, DWORD, DWORD, DWORD);
62 
63 BOOL ( WINAPI * qwglUseFontOutlines)(HDC, DWORD, DWORD, DWORD, FLOAT,
65 
66 BOOL ( WINAPI * qwglDescribeLayerPlane)(HDC, int, int, UINT,
68 int ( WINAPI * qwglSetLayerPaletteEntries)(HDC, int, int, int,
69  CONST COLORREF *);
70 int ( WINAPI * qwglGetLayerPaletteEntries)(HDC, int, int, int,
71  COLORREF *);
72 BOOL ( WINAPI * qwglRealizeLayerPalette)(HDC, int, BOOL);
73 BOOL ( WINAPI * qwglSwapLayerBuffers)(HDC, UINT);
74 
75 void ( APIENTRY * qglAccum )(GLenum op, GLfloat value);
76 void ( APIENTRY * qglAlphaFunc )(GLenum func, GLclampf ref);
81 void ( APIENTRY * qglBitmap )(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
83 void ( APIENTRY * qglCallList )(GLuint list);
85 void ( APIENTRY * qglClear )(GLbitfield mask);
86 void ( APIENTRY * qglClearAccum )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
87 void ( APIENTRY * qglClearColor )(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
88 void ( APIENTRY * qglClearDepth )(GLclampd depth);
89 void ( APIENTRY * qglClearIndex )(GLfloat c);
91 void ( APIENTRY * qglClipPlane )(GLenum plane, const GLdouble *equation);
92 void ( APIENTRY * qglColor3b )(GLbyte red, GLbyte green, GLbyte blue);
93 void ( APIENTRY * qglColor3bv )(const GLbyte *v);
94 void ( APIENTRY * qglColor3d )(GLdouble red, GLdouble green, GLdouble blue);
95 void ( APIENTRY * qglColor3dv )(const GLdouble *v);
96 void ( APIENTRY * qglColor3f )(GLfloat red, GLfloat green, GLfloat blue);
97 void ( APIENTRY * qglColor3fv )(const GLfloat *v);
99 void ( APIENTRY * qglColor3iv )(const GLint *v);
100 void ( APIENTRY * qglColor3s )(GLshort red, GLshort green, GLshort blue);
101 void ( APIENTRY * qglColor3sv )(const GLshort *v);
102 void ( APIENTRY * qglColor3ub )(GLubyte red, GLubyte green, GLubyte blue);
103 void ( APIENTRY * qglColor3ubv )(const GLubyte *v);
105 void ( APIENTRY * qglColor3uiv )(const GLuint *v);
106 void ( APIENTRY * qglColor3us )(GLushort red, GLushort green, GLushort blue);
107 void ( APIENTRY * qglColor3usv )(const GLushort *v);
108 void ( APIENTRY * qglColor4b )(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
109 void ( APIENTRY * qglColor4bv )(const GLbyte *v);
110 void ( APIENTRY * qglColor4d )(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
111 void ( APIENTRY * qglColor4dv )(const GLdouble *v);
112 void ( APIENTRY * qglColor4f )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
113 void ( APIENTRY * qglColor4fv )(const GLfloat *v);
115 void ( APIENTRY * qglColor4iv )(const GLint *v);
116 void ( APIENTRY * qglColor4s )(GLshort red, GLshort green, GLshort blue, GLshort alpha);
117 void ( APIENTRY * qglColor4sv )(const GLshort *v);
118 void ( APIENTRY * qglColor4ub )(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
119 void ( APIENTRY * qglColor4ubv )(const GLubyte *v);
121 void ( APIENTRY * qglColor4uiv )(const GLuint *v);
122 void ( APIENTRY * qglColor4us )(GLushort red, GLushort green, GLushort blue, GLushort alpha);
123 void ( APIENTRY * qglColor4usv )(const GLushort *v);
135 void ( APIENTRY * qglDepthFunc )(GLenum func);
136 void ( APIENTRY * qglDepthMask )(GLboolean flag);
137 void ( APIENTRY * qglDepthRange )(GLclampd zNear, GLclampd zFar);
144 void ( APIENTRY * qglEdgeFlag )(GLboolean flag);
145 void ( APIENTRY * qglEdgeFlagPointer )(GLsizei stride, const GLvoid *pointer);
146 void ( APIENTRY * qglEdgeFlagv )(const GLboolean *flag);
149 void ( APIENTRY * qglEnd )(void);
151 void ( APIENTRY * qglEvalCoord1d )(GLdouble u);
152 void ( APIENTRY * qglEvalCoord1dv )(const GLdouble *u);
153 void ( APIENTRY * qglEvalCoord1f )(GLfloat u);
154 void ( APIENTRY * qglEvalCoord1fv )(const GLfloat *u);
155 void ( APIENTRY * qglEvalCoord2d )(GLdouble u, GLdouble v);
156 void ( APIENTRY * qglEvalCoord2dv )(const GLdouble *u);
157 void ( APIENTRY * qglEvalCoord2f )(GLfloat u, GLfloat v);
158 void ( APIENTRY * qglEvalCoord2fv )(const GLfloat *u);
164 void ( APIENTRY * qglFinish )(void);
165 void ( APIENTRY * qglFlush )(void);
167 void ( APIENTRY * qglFogfv )(GLenum pname, const GLfloat *params);
169 void ( APIENTRY * qglFogiv )(GLenum pname, const GLint *params);
171 void ( APIENTRY * qglFrustum )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
175 void ( APIENTRY * qglGetClipPlane )(GLenum plane, GLdouble *equation);
176 void ( APIENTRY * qglGetDoublev )(GLenum pname, GLdouble *params);
178 void ( APIENTRY * qglGetFloatv )(GLenum pname, GLfloat *params);
182 void ( APIENTRY * qglGetMapdv )(GLenum target, GLenum query, GLdouble *v);
183 void ( APIENTRY * qglGetMapfv )(GLenum target, GLenum query, GLfloat *v);
184 void ( APIENTRY * qglGetMapiv )(GLenum target, GLenum query, GLint *v);
185 void ( APIENTRY * qglGetMaterialfv )(GLenum face, GLenum pname, GLfloat *params);
189 void ( APIENTRY * qglGetPixelMapusv )(GLenum map, GLushort *values);
190 void ( APIENTRY * qglGetPointerv )(GLenum pname, GLvoid* *params);
191 void ( APIENTRY * qglGetPolygonStipple )(GLubyte *mask);
192 const GLubyte * ( APIENTRY * qglGetString )(GLenum name);
193 void ( APIENTRY * qglGetTexEnvfv )(GLenum target, GLenum pname, GLfloat *params);
201 void ( APIENTRY * qglGetTexParameterfv )(GLenum target, GLenum pname, GLfloat *params);
203 void ( APIENTRY * qglHint )(GLenum target, GLenum mode);
206 void ( APIENTRY * qglIndexd )(GLdouble c);
207 void ( APIENTRY * qglIndexdv )(const GLdouble *c);
208 void ( APIENTRY * qglIndexf )(GLfloat c);
209 void ( APIENTRY * qglIndexfv )(const GLfloat *c);
210 void ( APIENTRY * qglIndexi )(GLint c);
211 void ( APIENTRY * qglIndexiv )(const GLint *c);
212 void ( APIENTRY * qglIndexs )(GLshort c);
213 void ( APIENTRY * qglIndexsv )(const GLshort *c);
214 void ( APIENTRY * qglIndexub )(GLubyte c);
215 void ( APIENTRY * qglIndexubv )(const GLubyte *c);
219 GLboolean ( APIENTRY * qglIsList )(GLuint list);
221 void ( APIENTRY * qglLightModelf )(GLenum pname, GLfloat param);
222 void ( APIENTRY * qglLightModelfv )(GLenum pname, const GLfloat *params);
225 void ( APIENTRY * qglLightf )(GLenum light, GLenum pname, GLfloat param);
226 void ( APIENTRY * qglLightfv )(GLenum light, GLenum pname, const GLfloat *params);
228 void ( APIENTRY * qglLightiv )(GLenum light, GLenum pname, const GLint *params);
229 void ( APIENTRY * qglLineStipple )(GLint factor, GLushort pattern);
230 void ( APIENTRY * qglLineWidth )(GLfloat width);
231 void ( APIENTRY * qglListBase )(GLuint base);
233 void ( APIENTRY * qglLoadMatrixd )(const GLdouble *m);
234 void ( APIENTRY * qglLoadMatrixf )(const GLfloat *m);
236 void ( APIENTRY * qglLogicOp )(GLenum opcode);
237 void ( APIENTRY * qglMap1d )(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
238 void ( APIENTRY * qglMap1f )(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
239 void ( APIENTRY * qglMap2d )(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
240 void ( APIENTRY * qglMap2f )(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
241 void ( APIENTRY * qglMapGrid1d )(GLint un, GLdouble u1, GLdouble u2);
242 void ( APIENTRY * qglMapGrid1f )(GLint un, GLfloat u1, GLfloat u2);
243 void ( APIENTRY * qglMapGrid2d )(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
244 void ( APIENTRY * qglMapGrid2f )(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
245 void ( APIENTRY * qglMaterialf )(GLenum face, GLenum pname, GLfloat param);
246 void ( APIENTRY * qglMaterialfv )(GLenum face, GLenum pname, const GLfloat *params);
250 void ( APIENTRY * qglMultMatrixd )(const GLdouble *m);
251 void ( APIENTRY * qglMultMatrixf )(const GLfloat *m);
253 void ( APIENTRY * qglNormal3b )(GLbyte nx, GLbyte ny, GLbyte nz);
254 void ( APIENTRY * qglNormal3bv )(const GLbyte *v);
255 void ( APIENTRY * qglNormal3d )(GLdouble nx, GLdouble ny, GLdouble nz);
256 void ( APIENTRY * qglNormal3dv )(const GLdouble *v);
257 void ( APIENTRY * qglNormal3f )(GLfloat nx, GLfloat ny, GLfloat nz);
258 void ( APIENTRY * qglNormal3fv )(const GLfloat *v);
260 void ( APIENTRY * qglNormal3iv )(const GLint *v);
261 void ( APIENTRY * qglNormal3s )(GLshort nx, GLshort ny, GLshort nz);
262 void ( APIENTRY * qglNormal3sv )(const GLshort *v);
264 void ( APIENTRY * qglOrtho )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
265 void ( APIENTRY * qglPassThrough )(GLfloat token);
266 void ( APIENTRY * qglPixelMapfv )(GLenum map, GLsizei mapsize, const GLfloat *values);
268 void ( APIENTRY * qglPixelMapusv )(GLenum map, GLsizei mapsize, const GLushort *values);
269 void ( APIENTRY * qglPixelStoref )(GLenum pname, GLfloat param);
273 void ( APIENTRY * qglPixelZoom )(GLfloat xfactor, GLfloat yfactor);
274 void ( APIENTRY * qglPointSize )(GLfloat size);
276 void ( APIENTRY * qglPolygonOffset )(GLfloat factor, GLfloat units);
277 void ( APIENTRY * qglPolygonStipple )(const GLubyte *mask);
283 void ( APIENTRY * qglPushAttrib )(GLbitfield mask);
284 void ( APIENTRY * qglPushClientAttrib )(GLbitfield mask);
287 void ( APIENTRY * qglRasterPos2d )(GLdouble x, GLdouble y);
288 void ( APIENTRY * qglRasterPos2dv )(const GLdouble *v);
289 void ( APIENTRY * qglRasterPos2f )(GLfloat x, GLfloat y);
290 void ( APIENTRY * qglRasterPos2fv )(const GLfloat *v);
292 void ( APIENTRY * qglRasterPos2iv )(const GLint *v);
293 void ( APIENTRY * qglRasterPos2s )(GLshort x, GLshort y);
294 void ( APIENTRY * qglRasterPos2sv )(const GLshort *v);
295 void ( APIENTRY * qglRasterPos3d )(GLdouble x, GLdouble y, GLdouble z);
296 void ( APIENTRY * qglRasterPos3dv )(const GLdouble *v);
297 void ( APIENTRY * qglRasterPos3f )(GLfloat x, GLfloat y, GLfloat z);
298 void ( APIENTRY * qglRasterPos3fv )(const GLfloat *v);
300 void ( APIENTRY * qglRasterPos3iv )(const GLint *v);
301 void ( APIENTRY * qglRasterPos3s )(GLshort x, GLshort y, GLshort z);
302 void ( APIENTRY * qglRasterPos3sv )(const GLshort *v);
303 void ( APIENTRY * qglRasterPos4d )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
304 void ( APIENTRY * qglRasterPos4dv )(const GLdouble *v);
305 void ( APIENTRY * qglRasterPos4f )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
306 void ( APIENTRY * qglRasterPos4fv )(const GLfloat *v);
308 void ( APIENTRY * qglRasterPos4iv )(const GLint *v);
309 void ( APIENTRY * qglRasterPos4s )(GLshort x, GLshort y, GLshort z, GLshort w);
310 void ( APIENTRY * qglRasterPos4sv )(const GLshort *v);
313 void ( APIENTRY * qglRectd )(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
314 void ( APIENTRY * qglRectdv )(const GLdouble *v1, const GLdouble *v2);
315 void ( APIENTRY * qglRectf )(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
316 void ( APIENTRY * qglRectfv )(const GLfloat *v1, const GLfloat *v2);
318 void ( APIENTRY * qglRectiv )(const GLint *v1, const GLint *v2);
319 void ( APIENTRY * qglRects )(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
320 void ( APIENTRY * qglRectsv )(const GLshort *v1, const GLshort *v2);
322 void ( APIENTRY * qglRotated )(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
323 void ( APIENTRY * qglRotatef )(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
324 void ( APIENTRY * qglScaled )(GLdouble x, GLdouble y, GLdouble z);
325 void ( APIENTRY * qglScalef )(GLfloat x, GLfloat y, GLfloat z);
332 void ( APIENTRY * qglTexCoord1d )(GLdouble s);
333 void ( APIENTRY * qglTexCoord1dv )(const GLdouble *v);
334 void ( APIENTRY * qglTexCoord1f )(GLfloat s);
335 void ( APIENTRY * qglTexCoord1fv )(const GLfloat *v);
337 void ( APIENTRY * qglTexCoord1iv )(const GLint *v);
338 void ( APIENTRY * qglTexCoord1s )(GLshort s);
339 void ( APIENTRY * qglTexCoord1sv )(const GLshort *v);
340 void ( APIENTRY * qglTexCoord2d )(GLdouble s, GLdouble t);
341 void ( APIENTRY * qglTexCoord2dv )(const GLdouble *v);
342 void ( APIENTRY * qglTexCoord2f )(GLfloat s, GLfloat t);
343 void ( APIENTRY * qglTexCoord2fv )(const GLfloat *v);
345 void ( APIENTRY * qglTexCoord2iv )(const GLint *v);
346 void ( APIENTRY * qglTexCoord2s )(GLshort s, GLshort t);
347 void ( APIENTRY * qglTexCoord2sv )(const GLshort *v);
348 void ( APIENTRY * qglTexCoord3d )(GLdouble s, GLdouble t, GLdouble r);
349 void ( APIENTRY * qglTexCoord3dv )(const GLdouble *v);
350 void ( APIENTRY * qglTexCoord3f )(GLfloat s, GLfloat t, GLfloat r);
351 void ( APIENTRY * qglTexCoord3fv )(const GLfloat *v);
353 void ( APIENTRY * qglTexCoord3iv )(const GLint *v);
354 void ( APIENTRY * qglTexCoord3s )(GLshort s, GLshort t, GLshort r);
355 void ( APIENTRY * qglTexCoord3sv )(const GLshort *v);
356 void ( APIENTRY * qglTexCoord4d )(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
357 void ( APIENTRY * qglTexCoord4dv )(const GLdouble *v);
358 void ( APIENTRY * qglTexCoord4f )(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
359 void ( APIENTRY * qglTexCoord4fv )(const GLfloat *v);
361 void ( APIENTRY * qglTexCoord4iv )(const GLint *v);
362 void ( APIENTRY * qglTexCoord4s )(GLshort s, GLshort t, GLshort r, GLshort q);
363 void ( APIENTRY * qglTexCoord4sv )(const GLshort *v);
365 void ( APIENTRY * qglTexEnvf )(GLenum target, GLenum pname, GLfloat param);
366 void ( APIENTRY * qglTexEnvfv )(GLenum target, GLenum pname, const GLfloat *params);
368 void ( APIENTRY * qglTexEnviv )(GLenum target, GLenum pname, const GLint *params);
370 void ( APIENTRY * qglTexGendv )(GLenum coord, GLenum pname, const GLdouble *params);
372 void ( APIENTRY * qglTexGenfv )(GLenum coord, GLenum pname, const GLfloat *params);
377 void ( APIENTRY * qglTexParameterf )(GLenum target, GLenum pname, GLfloat param);
378 void ( APIENTRY * qglTexParameterfv )(GLenum target, GLenum pname, const GLfloat *params);
383 void ( APIENTRY * qglTranslated )(GLdouble x, GLdouble y, GLdouble z);
384 void ( APIENTRY * qglTranslatef )(GLfloat x, GLfloat y, GLfloat z);
385 void ( APIENTRY * qglVertex2d )(GLdouble x, GLdouble y);
386 void ( APIENTRY * qglVertex2dv )(const GLdouble *v);
387 void ( APIENTRY * qglVertex2f )(GLfloat x, GLfloat y);
388 void ( APIENTRY * qglVertex2fv )(const GLfloat *v);
390 void ( APIENTRY * qglVertex2iv )(const GLint *v);
391 void ( APIENTRY * qglVertex2s )(GLshort x, GLshort y);
392 void ( APIENTRY * qglVertex2sv )(const GLshort *v);
393 void ( APIENTRY * qglVertex3d )(GLdouble x, GLdouble y, GLdouble z);
394 void ( APIENTRY * qglVertex3dv )(const GLdouble *v);
395 void ( APIENTRY * qglVertex3f )(GLfloat x, GLfloat y, GLfloat z);
396 void ( APIENTRY * qglVertex3fv )(const GLfloat *v);
398 void ( APIENTRY * qglVertex3iv )(const GLint *v);
399 void ( APIENTRY * qglVertex3s )(GLshort x, GLshort y, GLshort z);
400 void ( APIENTRY * qglVertex3sv )(const GLshort *v);
401 void ( APIENTRY * qglVertex4d )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
402 void ( APIENTRY * qglVertex4dv )(const GLdouble *v);
403 void ( APIENTRY * qglVertex4f )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
404 void ( APIENTRY * qglVertex4fv )(const GLfloat *v);
406 void ( APIENTRY * qglVertex4iv )(const GLint *v);
407 void ( APIENTRY * qglVertex4s )(GLshort x, GLshort y, GLshort z, GLshort w);
408 void ( APIENTRY * qglVertex4sv )(const GLshort *v);
411 
412 
413 
414 static void ( APIENTRY * dllAccum )(GLenum op, GLfloat value);
415 static void ( APIENTRY * dllAlphaFunc )(GLenum func, GLclampf ref);
416 GLboolean ( APIENTRY * dllAreTexturesResident )(GLsizei n, const GLuint *textures, GLboolean *residences);
417 static void ( APIENTRY * dllArrayElement )(GLint i);
418 static void ( APIENTRY * dllBegin )(GLenum mode);
419 static void ( APIENTRY * dllBindTexture )(GLenum target, GLuint texture);
420 static void ( APIENTRY * dllBitmap )(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
421 static void ( APIENTRY * dllBlendFunc )(GLenum sfactor, GLenum dfactor);
422 static void ( APIENTRY * dllCallList )(GLuint list);
423 static void ( APIENTRY * dllCallLists )(GLsizei n, GLenum type, const GLvoid *lists);
424 static void ( APIENTRY * dllClear )(GLbitfield mask);
425 static void ( APIENTRY * dllClearAccum )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
426 static void ( APIENTRY * dllClearColor )(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
427 static void ( APIENTRY * dllClearDepth )(GLclampd depth);
428 static void ( APIENTRY * dllClearIndex )(GLfloat c);
429 static void ( APIENTRY * dllClearStencil )(GLint s);
430 static void ( APIENTRY * dllClipPlane )(GLenum plane, const GLdouble *equation);
431 static void ( APIENTRY * dllColor3b )(GLbyte red, GLbyte green, GLbyte blue);
432 static void ( APIENTRY * dllColor3bv )(const GLbyte *v);
433 static void ( APIENTRY * dllColor3d )(GLdouble red, GLdouble green, GLdouble blue);
434 static void ( APIENTRY * dllColor3dv )(const GLdouble *v);
435 static void ( APIENTRY * dllColor3f )(GLfloat red, GLfloat green, GLfloat blue);
436 static void ( APIENTRY * dllColor3fv )(const GLfloat *v);
437 static void ( APIENTRY * dllColor3i )(GLint red, GLint green, GLint blue);
438 static void ( APIENTRY * dllColor3iv )(const GLint *v);
439 static void ( APIENTRY * dllColor3s )(GLshort red, GLshort green, GLshort blue);
440 static void ( APIENTRY * dllColor3sv )(const GLshort *v);
441 static void ( APIENTRY * dllColor3ub )(GLubyte red, GLubyte green, GLubyte blue);
442 static void ( APIENTRY * dllColor3ubv )(const GLubyte *v);
443 static void ( APIENTRY * dllColor3ui )(GLuint red, GLuint green, GLuint blue);
444 static void ( APIENTRY * dllColor3uiv )(const GLuint *v);
445 static void ( APIENTRY * dllColor3us )(GLushort red, GLushort green, GLushort blue);
446 static void ( APIENTRY * dllColor3usv )(const GLushort *v);
447 static void ( APIENTRY * dllColor4b )(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
448 static void ( APIENTRY * dllColor4bv )(const GLbyte *v);
449 static void ( APIENTRY * dllColor4d )(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
450 static void ( APIENTRY * dllColor4dv )(const GLdouble *v);
451 static void ( APIENTRY * dllColor4f )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
452 static void ( APIENTRY * dllColor4fv )(const GLfloat *v);
453 static void ( APIENTRY * dllColor4i )(GLint red, GLint green, GLint blue, GLint alpha);
454 static void ( APIENTRY * dllColor4iv )(const GLint *v);
455 static void ( APIENTRY * dllColor4s )(GLshort red, GLshort green, GLshort blue, GLshort alpha);
456 static void ( APIENTRY * dllColor4sv )(const GLshort *v);
457 static void ( APIENTRY * dllColor4ub )(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
458 static void ( APIENTRY * dllColor4ubv )(const GLubyte *v);
459 static void ( APIENTRY * dllColor4ui )(GLuint red, GLuint green, GLuint blue, GLuint alpha);
460 static void ( APIENTRY * dllColor4uiv )(const GLuint *v);
461 static void ( APIENTRY * dllColor4us )(GLushort red, GLushort green, GLushort blue, GLushort alpha);
462 static void ( APIENTRY * dllColor4usv )(const GLushort *v);
463 static void ( APIENTRY * dllColorMask )(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
464 static void ( APIENTRY * dllColorMaterial )(GLenum face, GLenum mode);
465 static void ( APIENTRY * dllColorPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
466 static void ( APIENTRY * dllCopyPixels )(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
467 static void ( APIENTRY * dllCopyTexImage1D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
468 static void ( APIENTRY * dllCopyTexImage2D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
469 static void ( APIENTRY * dllCopyTexSubImage1D )(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
470 static void ( APIENTRY * dllCopyTexSubImage2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
471 static void ( APIENTRY * dllCullFace )(GLenum mode);
472 static void ( APIENTRY * dllDeleteLists )(GLuint list, GLsizei range);
473 static void ( APIENTRY * dllDeleteTextures )(GLsizei n, const GLuint *textures);
474 static void ( APIENTRY * dllDepthFunc )(GLenum func);
475 static void ( APIENTRY * dllDepthMask )(GLboolean flag);
476 static void ( APIENTRY * dllDepthRange )(GLclampd zNear, GLclampd zFar);
477 static void ( APIENTRY * dllDisable )(GLenum cap);
478 static void ( APIENTRY * dllDisableClientState )(GLenum array);
479 static void ( APIENTRY * dllDrawArrays )(GLenum mode, GLint first, GLsizei count);
480 static void ( APIENTRY * dllDrawBuffer )(GLenum mode);
481 static void ( APIENTRY * dllDrawElements )(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
482 static void ( APIENTRY * dllDrawPixels )(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
483 static void ( APIENTRY * dllEdgeFlag )(GLboolean flag);
484 static void ( APIENTRY * dllEdgeFlagPointer )(GLsizei stride, const GLvoid *pointer);
485 static void ( APIENTRY * dllEdgeFlagv )(const GLboolean *flag);
486 static void ( APIENTRY * dllEnable )(GLenum cap);
487 static void ( APIENTRY * dllEnableClientState )(GLenum array);
488 static void ( APIENTRY * dllEnd )(void);
489 static void ( APIENTRY * dllEndList )(void);
490 static void ( APIENTRY * dllEvalCoord1d )(GLdouble u);
491 static void ( APIENTRY * dllEvalCoord1dv )(const GLdouble *u);
492 static void ( APIENTRY * dllEvalCoord1f )(GLfloat u);
493 static void ( APIENTRY * dllEvalCoord1fv )(const GLfloat *u);
494 static void ( APIENTRY * dllEvalCoord2d )(GLdouble u, GLdouble v);
495 static void ( APIENTRY * dllEvalCoord2dv )(const GLdouble *u);
496 static void ( APIENTRY * dllEvalCoord2f )(GLfloat u, GLfloat v);
497 static void ( APIENTRY * dllEvalCoord2fv )(const GLfloat *u);
498 static void ( APIENTRY * dllEvalMesh1 )(GLenum mode, GLint i1, GLint i2);
499 static void ( APIENTRY * dllEvalMesh2 )(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
500 static void ( APIENTRY * dllEvalPoint1 )(GLint i);
501 static void ( APIENTRY * dllEvalPoint2 )(GLint i, GLint j);
502 static void ( APIENTRY * dllFeedbackBuffer )(GLsizei size, GLenum type, GLfloat *buffer);
503 static void ( APIENTRY * dllFinish )(void);
504 static void ( APIENTRY * dllFlush )(void);
505 static void ( APIENTRY * dllFogf )(GLenum pname, GLfloat param);
506 static void ( APIENTRY * dllFogfv )(GLenum pname, const GLfloat *params);
507 static void ( APIENTRY * dllFogi )(GLenum pname, GLint param);
508 static void ( APIENTRY * dllFogiv )(GLenum pname, const GLint *params);
509 static void ( APIENTRY * dllFrontFace )(GLenum mode);
510 static void ( APIENTRY * dllFrustum )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
511 GLuint ( APIENTRY * dllGenLists )(GLsizei range);
512 static void ( APIENTRY * dllGenTextures )(GLsizei n, GLuint *textures);
513 static void ( APIENTRY * dllGetBooleanv )(GLenum pname, GLboolean *params);
514 static void ( APIENTRY * dllGetClipPlane )(GLenum plane, GLdouble *equation);
515 static void ( APIENTRY * dllGetDoublev )(GLenum pname, GLdouble *params);
516 GLenum ( APIENTRY * dllGetError )(void);
517 static void ( APIENTRY * dllGetFloatv )(GLenum pname, GLfloat *params);
518 static void ( APIENTRY * dllGetIntegerv )(GLenum pname, GLint *params);
519 static void ( APIENTRY * dllGetLightfv )(GLenum light, GLenum pname, GLfloat *params);
520 static void ( APIENTRY * dllGetLightiv )(GLenum light, GLenum pname, GLint *params);
521 static void ( APIENTRY * dllGetMapdv )(GLenum target, GLenum query, GLdouble *v);
522 static void ( APIENTRY * dllGetMapfv )(GLenum target, GLenum query, GLfloat *v);
523 static void ( APIENTRY * dllGetMapiv )(GLenum target, GLenum query, GLint *v);
524 static void ( APIENTRY * dllGetMaterialfv )(GLenum face, GLenum pname, GLfloat *params);
525 static void ( APIENTRY * dllGetMaterialiv )(GLenum face, GLenum pname, GLint *params);
526 static void ( APIENTRY * dllGetPixelMapfv )(GLenum map, GLfloat *values);
527 static void ( APIENTRY * dllGetPixelMapuiv )(GLenum map, GLuint *values);
528 static void ( APIENTRY * dllGetPixelMapusv )(GLenum map, GLushort *values);
529 static void ( APIENTRY * dllGetPointerv )(GLenum pname, GLvoid* *params);
530 static void ( APIENTRY * dllGetPolygonStipple )(GLubyte *mask);
531 const GLubyte * ( APIENTRY * dllGetString )(GLenum name);
532 static void ( APIENTRY * dllGetTexEnvfv )(GLenum target, GLenum pname, GLfloat *params);
533 static void ( APIENTRY * dllGetTexEnviv )(GLenum target, GLenum pname, GLint *params);
534 static void ( APIENTRY * dllGetTexGendv )(GLenum coord, GLenum pname, GLdouble *params);
535 static void ( APIENTRY * dllGetTexGenfv )(GLenum coord, GLenum pname, GLfloat *params);
536 static void ( APIENTRY * dllGetTexGeniv )(GLenum coord, GLenum pname, GLint *params);
537 static void ( APIENTRY * dllGetTexImage )(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
538 static void ( APIENTRY * dllGetTexLevelParameterfv )(GLenum target, GLint level, GLenum pname, GLfloat *params);
539 static void ( APIENTRY * dllGetTexLevelParameteriv )(GLenum target, GLint level, GLenum pname, GLint *params);
540 static void ( APIENTRY * dllGetTexParameterfv )(GLenum target, GLenum pname, GLfloat *params);
541 static void ( APIENTRY * dllGetTexParameteriv )(GLenum target, GLenum pname, GLint *params);
542 static void ( APIENTRY * dllHint )(GLenum target, GLenum mode);
543 static void ( APIENTRY * dllIndexMask )(GLuint mask);
544 static void ( APIENTRY * dllIndexPointer )(GLenum type, GLsizei stride, const GLvoid *pointer);
545 static void ( APIENTRY * dllIndexd )(GLdouble c);
546 static void ( APIENTRY * dllIndexdv )(const GLdouble *c);
547 static void ( APIENTRY * dllIndexf )(GLfloat c);
548 static void ( APIENTRY * dllIndexfv )(const GLfloat *c);
549 static void ( APIENTRY * dllIndexi )(GLint c);
550 static void ( APIENTRY * dllIndexiv )(const GLint *c);
551 static void ( APIENTRY * dllIndexs )(GLshort c);
552 static void ( APIENTRY * dllIndexsv )(const GLshort *c);
553 static void ( APIENTRY * dllIndexub )(GLubyte c);
554 static void ( APIENTRY * dllIndexubv )(const GLubyte *c);
555 static void ( APIENTRY * dllInitNames )(void);
556 static void ( APIENTRY * dllInterleavedArrays )(GLenum format, GLsizei stride, const GLvoid *pointer);
557 GLboolean ( APIENTRY * dllIsEnabled )(GLenum cap);
558 GLboolean ( APIENTRY * dllIsList )(GLuint list);
559 GLboolean ( APIENTRY * dllIsTexture )(GLuint texture);
560 static void ( APIENTRY * dllLightModelf )(GLenum pname, GLfloat param);
561 static void ( APIENTRY * dllLightModelfv )(GLenum pname, const GLfloat *params);
562 static void ( APIENTRY * dllLightModeli )(GLenum pname, GLint param);
563 static void ( APIENTRY * dllLightModeliv )(GLenum pname, const GLint *params);
564 static void ( APIENTRY * dllLightf )(GLenum light, GLenum pname, GLfloat param);
565 static void ( APIENTRY * dllLightfv )(GLenum light, GLenum pname, const GLfloat *params);
566 static void ( APIENTRY * dllLighti )(GLenum light, GLenum pname, GLint param);
567 static void ( APIENTRY * dllLightiv )(GLenum light, GLenum pname, const GLint *params);
568 static void ( APIENTRY * dllLineStipple )(GLint factor, GLushort pattern);
569 static void ( APIENTRY * dllLineWidth )(GLfloat width);
570 static void ( APIENTRY * dllListBase )(GLuint base);
571 static void ( APIENTRY * dllLoadIdentity )(void);
572 static void ( APIENTRY * dllLoadMatrixd )(const GLdouble *m);
573 static void ( APIENTRY * dllLoadMatrixf )(const GLfloat *m);
574 static void ( APIENTRY * dllLoadName )(GLuint name);
575 static void ( APIENTRY * dllLogicOp )(GLenum opcode);
576 static void ( APIENTRY * dllMap1d )(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
577 static void ( APIENTRY * dllMap1f )(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
578 static void ( APIENTRY * dllMap2d )(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
579 static void ( APIENTRY * dllMap2f )(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
580 static void ( APIENTRY * dllMapGrid1d )(GLint un, GLdouble u1, GLdouble u2);
581 static void ( APIENTRY * dllMapGrid1f )(GLint un, GLfloat u1, GLfloat u2);
582 static void ( APIENTRY * dllMapGrid2d )(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
583 static void ( APIENTRY * dllMapGrid2f )(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
584 static void ( APIENTRY * dllMaterialf )(GLenum face, GLenum pname, GLfloat param);
585 static void ( APIENTRY * dllMaterialfv )(GLenum face, GLenum pname, const GLfloat *params);
586 static void ( APIENTRY * dllMateriali )(GLenum face, GLenum pname, GLint param);
587 static void ( APIENTRY * dllMaterialiv )(GLenum face, GLenum pname, const GLint *params);
588 static void ( APIENTRY * dllMatrixMode )(GLenum mode);
589 static void ( APIENTRY * dllMultMatrixd )(const GLdouble *m);
590 static void ( APIENTRY * dllMultMatrixf )(const GLfloat *m);
591 static void ( APIENTRY * dllNewList )(GLuint list, GLenum mode);
592 static void ( APIENTRY * dllNormal3b )(GLbyte nx, GLbyte ny, GLbyte nz);
593 static void ( APIENTRY * dllNormal3bv )(const GLbyte *v);
594 static void ( APIENTRY * dllNormal3d )(GLdouble nx, GLdouble ny, GLdouble nz);
595 static void ( APIENTRY * dllNormal3dv )(const GLdouble *v);
596 static void ( APIENTRY * dllNormal3f )(GLfloat nx, GLfloat ny, GLfloat nz);
597 static void ( APIENTRY * dllNormal3fv )(const GLfloat *v);
598 static void ( APIENTRY * dllNormal3i )(GLint nx, GLint ny, GLint nz);
599 static void ( APIENTRY * dllNormal3iv )(const GLint *v);
600 static void ( APIENTRY * dllNormal3s )(GLshort nx, GLshort ny, GLshort nz);
601 static void ( APIENTRY * dllNormal3sv )(const GLshort *v);
602 static void ( APIENTRY * dllNormalPointer )(GLenum type, GLsizei stride, const GLvoid *pointer);
603 static void ( APIENTRY * dllOrtho )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
604 static void ( APIENTRY * dllPassThrough )(GLfloat token);
605 static void ( APIENTRY * dllPixelMapfv )(GLenum map, GLsizei mapsize, const GLfloat *values);
606 static void ( APIENTRY * dllPixelMapuiv )(GLenum map, GLsizei mapsize, const GLuint *values);
607 static void ( APIENTRY * dllPixelMapusv )(GLenum map, GLsizei mapsize, const GLushort *values);
608 static void ( APIENTRY * dllPixelStoref )(GLenum pname, GLfloat param);
609 static void ( APIENTRY * dllPixelStorei )(GLenum pname, GLint param);
610 static void ( APIENTRY * dllPixelTransferf )(GLenum pname, GLfloat param);
611 static void ( APIENTRY * dllPixelTransferi )(GLenum pname, GLint param);
612 static void ( APIENTRY * dllPixelZoom )(GLfloat xfactor, GLfloat yfactor);
613 static void ( APIENTRY * dllPointSize )(GLfloat size);
614 static void ( APIENTRY * dllPolygonMode )(GLenum face, GLenum mode);
615 static void ( APIENTRY * dllPolygonOffset )(GLfloat factor, GLfloat units);
616 static void ( APIENTRY * dllPolygonStipple )(const GLubyte *mask);
617 static void ( APIENTRY * dllPopAttrib )(void);
618 static void ( APIENTRY * dllPopClientAttrib )(void);
619 static void ( APIENTRY * dllPopMatrix )(void);
620 static void ( APIENTRY * dllPopName )(void);
621 static void ( APIENTRY * dllPrioritizeTextures )(GLsizei n, const GLuint *textures, const GLclampf *priorities);
622 static void ( APIENTRY * dllPushAttrib )(GLbitfield mask);
623 static void ( APIENTRY * dllPushClientAttrib )(GLbitfield mask);
624 static void ( APIENTRY * dllPushMatrix )(void);
625 static void ( APIENTRY * dllPushName )(GLuint name);
626 static void ( APIENTRY * dllRasterPos2d )(GLdouble x, GLdouble y);
627 static void ( APIENTRY * dllRasterPos2dv )(const GLdouble *v);
628 static void ( APIENTRY * dllRasterPos2f )(GLfloat x, GLfloat y);
629 static void ( APIENTRY * dllRasterPos2fv )(const GLfloat *v);
630 static void ( APIENTRY * dllRasterPos2i )(GLint x, GLint y);
631 static void ( APIENTRY * dllRasterPos2iv )(const GLint *v);
632 static void ( APIENTRY * dllRasterPos2s )(GLshort x, GLshort y);
633 static void ( APIENTRY * dllRasterPos2sv )(const GLshort *v);
634 static void ( APIENTRY * dllRasterPos3d )(GLdouble x, GLdouble y, GLdouble z);
635 static void ( APIENTRY * dllRasterPos3dv )(const GLdouble *v);
636 static void ( APIENTRY * dllRasterPos3f )(GLfloat x, GLfloat y, GLfloat z);
637 static void ( APIENTRY * dllRasterPos3fv )(const GLfloat *v);
638 static void ( APIENTRY * dllRasterPos3i )(GLint x, GLint y, GLint z);
639 static void ( APIENTRY * dllRasterPos3iv )(const GLint *v);
640 static void ( APIENTRY * dllRasterPos3s )(GLshort x, GLshort y, GLshort z);
641 static void ( APIENTRY * dllRasterPos3sv )(const GLshort *v);
642 static void ( APIENTRY * dllRasterPos4d )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
643 static void ( APIENTRY * dllRasterPos4dv )(const GLdouble *v);
644 static void ( APIENTRY * dllRasterPos4f )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
645 static void ( APIENTRY * dllRasterPos4fv )(const GLfloat *v);
646 static void ( APIENTRY * dllRasterPos4i )(GLint x, GLint y, GLint z, GLint w);
647 static void ( APIENTRY * dllRasterPos4iv )(const GLint *v);
648 static void ( APIENTRY * dllRasterPos4s )(GLshort x, GLshort y, GLshort z, GLshort w);
649 static void ( APIENTRY * dllRasterPos4sv )(const GLshort *v);
650 static void ( APIENTRY * dllReadBuffer )(GLenum mode);
651 static void ( APIENTRY * dllReadPixels )(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
652 static void ( APIENTRY * dllRectd )(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
653 static void ( APIENTRY * dllRectdv )(const GLdouble *v1, const GLdouble *v2);
654 static void ( APIENTRY * dllRectf )(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
655 static void ( APIENTRY * dllRectfv )(const GLfloat *v1, const GLfloat *v2);
656 static void ( APIENTRY * dllRecti )(GLint x1, GLint y1, GLint x2, GLint y2);
657 static void ( APIENTRY * dllRectiv )(const GLint *v1, const GLint *v2);
658 static void ( APIENTRY * dllRects )(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
659 static void ( APIENTRY * dllRectsv )(const GLshort *v1, const GLshort *v2);
660 GLint ( APIENTRY * dllRenderMode )(GLenum mode);
661 static void ( APIENTRY * dllRotated )(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
662 static void ( APIENTRY * dllRotatef )(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
663 static void ( APIENTRY * dllScaled )(GLdouble x, GLdouble y, GLdouble z);
664 static void ( APIENTRY * dllScalef )(GLfloat x, GLfloat y, GLfloat z);
665 static void ( APIENTRY * dllScissor )(GLint x, GLint y, GLsizei width, GLsizei height);
666 static void ( APIENTRY * dllSelectBuffer )(GLsizei size, GLuint *buffer);
667 static void ( APIENTRY * dllShadeModel )(GLenum mode);
668 static void ( APIENTRY * dllStencilFunc )(GLenum func, GLint ref, GLuint mask);
669 static void ( APIENTRY * dllStencilMask )(GLuint mask);
670 static void ( APIENTRY * dllStencilOp )(GLenum fail, GLenum zfail, GLenum zpass);
671 static void ( APIENTRY * dllTexCoord1d )(GLdouble s);
672 static void ( APIENTRY * dllTexCoord1dv )(const GLdouble *v);
673 static void ( APIENTRY * dllTexCoord1f )(GLfloat s);
674 static void ( APIENTRY * dllTexCoord1fv )(const GLfloat *v);
675 static void ( APIENTRY * dllTexCoord1i )(GLint s);
676 static void ( APIENTRY * dllTexCoord1iv )(const GLint *v);
677 static void ( APIENTRY * dllTexCoord1s )(GLshort s);
678 static void ( APIENTRY * dllTexCoord1sv )(const GLshort *v);
679 static void ( APIENTRY * dllTexCoord2d )(GLdouble s, GLdouble t);
680 static void ( APIENTRY * dllTexCoord2dv )(const GLdouble *v);
681 static void ( APIENTRY * dllTexCoord2f )(GLfloat s, GLfloat t);
682 static void ( APIENTRY * dllTexCoord2fv )(const GLfloat *v);
683 static void ( APIENTRY * dllTexCoord2i )(GLint s, GLint t);
684 static void ( APIENTRY * dllTexCoord2iv )(const GLint *v);
685 static void ( APIENTRY * dllTexCoord2s )(GLshort s, GLshort t);
686 static void ( APIENTRY * dllTexCoord2sv )(const GLshort *v);
687 static void ( APIENTRY * dllTexCoord3d )(GLdouble s, GLdouble t, GLdouble r);
688 static void ( APIENTRY * dllTexCoord3dv )(const GLdouble *v);
689 static void ( APIENTRY * dllTexCoord3f )(GLfloat s, GLfloat t, GLfloat r);
690 static void ( APIENTRY * dllTexCoord3fv )(const GLfloat *v);
691 static void ( APIENTRY * dllTexCoord3i )(GLint s, GLint t, GLint r);
692 static void ( APIENTRY * dllTexCoord3iv )(const GLint *v);
693 static void ( APIENTRY * dllTexCoord3s )(GLshort s, GLshort t, GLshort r);
694 static void ( APIENTRY * dllTexCoord3sv )(const GLshort *v);
695 static void ( APIENTRY * dllTexCoord4d )(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
696 static void ( APIENTRY * dllTexCoord4dv )(const GLdouble *v);
697 static void ( APIENTRY * dllTexCoord4f )(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
698 static void ( APIENTRY * dllTexCoord4fv )(const GLfloat *v);
699 static void ( APIENTRY * dllTexCoord4i )(GLint s, GLint t, GLint r, GLint q);
700 static void ( APIENTRY * dllTexCoord4iv )(const GLint *v);
701 static void ( APIENTRY * dllTexCoord4s )(GLshort s, GLshort t, GLshort r, GLshort q);
702 static void ( APIENTRY * dllTexCoord4sv )(const GLshort *v);
703 static void ( APIENTRY * dllTexCoordPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
704 static void ( APIENTRY * dllTexEnvf )(GLenum target, GLenum pname, GLfloat param);
705 static void ( APIENTRY * dllTexEnvfv )(GLenum target, GLenum pname, const GLfloat *params);
706 static void ( APIENTRY * dllTexEnvi )(GLenum target, GLenum pname, GLint param);
707 static void ( APIENTRY * dllTexEnviv )(GLenum target, GLenum pname, const GLint *params);
708 static void ( APIENTRY * dllTexGend )(GLenum coord, GLenum pname, GLdouble param);
709 static void ( APIENTRY * dllTexGendv )(GLenum coord, GLenum pname, const GLdouble *params);
710 static void ( APIENTRY * dllTexGenf )(GLenum coord, GLenum pname, GLfloat param);
711 static void ( APIENTRY * dllTexGenfv )(GLenum coord, GLenum pname, const GLfloat *params);
712 static void ( APIENTRY * dllTexGeni )(GLenum coord, GLenum pname, GLint param);
713 static void ( APIENTRY * dllTexGeniv )(GLenum coord, GLenum pname, const GLint *params);
714 static void ( APIENTRY * dllTexImage1D )(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
715 static void ( APIENTRY * dllTexImage2D )(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
716 static void ( APIENTRY * dllTexParameterf )(GLenum target, GLenum pname, GLfloat param);
717 static void ( APIENTRY * dllTexParameterfv )(GLenum target, GLenum pname, const GLfloat *params);
718 static void ( APIENTRY * dllTexParameteri )(GLenum target, GLenum pname, GLint param);
719 static void ( APIENTRY * dllTexParameteriv )(GLenum target, GLenum pname, const GLint *params);
720 static void ( APIENTRY * dllTexSubImage1D )(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
721 static void ( APIENTRY * dllTexSubImage2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
722 static void ( APIENTRY * dllTranslated )(GLdouble x, GLdouble y, GLdouble z);
723 static void ( APIENTRY * dllTranslatef )(GLfloat x, GLfloat y, GLfloat z);
724 static void ( APIENTRY * dllVertex2d )(GLdouble x, GLdouble y);
725 static void ( APIENTRY * dllVertex2dv )(const GLdouble *v);
726 static void ( APIENTRY * dllVertex2f )(GLfloat x, GLfloat y);
727 static void ( APIENTRY * dllVertex2fv )(const GLfloat *v);
728 static void ( APIENTRY * dllVertex2i )(GLint x, GLint y);
729 static void ( APIENTRY * dllVertex2iv )(const GLint *v);
730 static void ( APIENTRY * dllVertex2s )(GLshort x, GLshort y);
731 static void ( APIENTRY * dllVertex2sv )(const GLshort *v);
732 static void ( APIENTRY * dllVertex3d )(GLdouble x, GLdouble y, GLdouble z);
733 static void ( APIENTRY * dllVertex3dv )(const GLdouble *v);
734 static void ( APIENTRY * dllVertex3f )(GLfloat x, GLfloat y, GLfloat z);
735 static void ( APIENTRY * dllVertex3fv )(const GLfloat *v);
736 static void ( APIENTRY * dllVertex3i )(GLint x, GLint y, GLint z);
737 static void ( APIENTRY * dllVertex3iv )(const GLint *v);
738 static void ( APIENTRY * dllVertex3s )(GLshort x, GLshort y, GLshort z);
739 static void ( APIENTRY * dllVertex3sv )(const GLshort *v);
740 static void ( APIENTRY * dllVertex4d )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
741 static void ( APIENTRY * dllVertex4dv )(const GLdouble *v);
742 static void ( APIENTRY * dllVertex4f )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
743 static void ( APIENTRY * dllVertex4fv )(const GLfloat *v);
744 static void ( APIENTRY * dllVertex4i )(GLint x, GLint y, GLint z, GLint w);
745 static void ( APIENTRY * dllVertex4iv )(const GLint *v);
746 static void ( APIENTRY * dllVertex4s )(GLshort x, GLshort y, GLshort z, GLshort w);
747 static void ( APIENTRY * dllVertex4sv )(const GLshort *v);
748 static void ( APIENTRY * dllVertexPointer )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
749 static void ( APIENTRY * dllViewport )(GLint x, GLint y, GLsizei width, GLsizei height);
750 
751 typedef struct {
753  const char *name;
754 } glEnumName_t;
755 
756 #define DEF(x) { x, #x },
757 
759 DEF(GL_FALSE)
760 DEF(GL_TRUE)
761 
762  { GL_BYTE, "GL_BYTE" },
763  { GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE" },
764  { GL_SHORT, "GL_SHORT" },
765  { GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT" },
766  { GL_INT, "GL_INT" },
767  { GL_UNSIGNED_INT, "GL_UNSIGNED_INT" },
768  { GL_FLOAT, "GL_FLOAT" },
769  { GL_DOUBLE, "GL_DOUBLE" },
770 
771  { GL_TEXTURE_CUBE_MAP_EXT, "GL_TEXTURE_CUBE_MAP_EXT" },
772  { GL_TEXTURE_3D, "GL_TEXTURE_3D" },
773  { GL_TEXTURE_2D, "GL_TEXTURE_2D" },
774  { GL_BLEND, "GL_BLEND" },
775  { GL_DEPTH_TEST, "GL_DEPTH_TEST" },
776  { GL_CULL_FACE, "GL_CULL_FACE" },
777  { GL_CLIP_PLANE0, "GL_CLIP_PLANE0" },
778  { GL_COLOR_ARRAY, "GL_COLOR_ARRAY" },
779  { GL_TEXTURE_COORD_ARRAY, "GL_TEXTURE_COORD_ARRAY" },
780  { GL_VERTEX_ARRAY, "GL_VERTEX_ARRAY" },
781  { GL_ALPHA_TEST, "GL_ALPHA_TEST" },
782  { GL_TEXTURE_GEN_S, "GL_TEXTURE_GEN_S" },
783  { GL_TEXTURE_GEN_T, "GL_TEXTURE_GEN_T" },
784  { GL_TEXTURE_GEN_R, "GL_TEXTURE_GEN_R" },
785  { GL_TEXTURE_GEN_Q, "GL_TEXTURE_GEN_Q" },
786  { GL_STENCIL_TEST, "GL_STENCIL_TEST" },
787  { GL_POLYGON_OFFSET_FILL, "GL_POLYGON_OFFSET_FILL" },
788 
789  { GL_TRIANGLES, "GL_TRIANGLES" },
790  { GL_TRIANGLE_STRIP, "GL_TRIANGLE_STRIP" },
791  { GL_TRIANGLE_FAN, "GL_TRIANGLE_FAN" },
792  { GL_QUADS, "GL_QUADS" },
793  { GL_QUAD_STRIP, "GL_QUAD_STRIP" },
794  { GL_POLYGON, "GL_POLYGON" },
795  { GL_POINTS, "GL_POINTS" },
796  { GL_LINES, "GL_LINES" },
797  { GL_LINE_STRIP, "GL_LINE_STRIP" },
798  { GL_LINE_LOOP, "GL_LINE_LOOP" },
799 
800  { GL_ALWAYS, "GL_ALWAYS" },
801  { GL_NEVER, "GL_NEVER" },
802  { GL_LEQUAL, "GL_LEQUAL" },
803  { GL_LESS, "GL_LESS" },
804  { GL_EQUAL, "GL_EQUAL" },
805  { GL_GREATER, "GL_GREATER" },
806  { GL_GEQUAL, "GL_GEQUAL" },
807  { GL_NOTEQUAL, "GL_NOTEQUAL" },
808 
809  { GL_ONE, "GL_ONE" },
810  { GL_ZERO, "GL_ZERO" },
811  { GL_SRC_ALPHA, "GL_SRC_ALPHA" },
812  { GL_ONE_MINUS_SRC_ALPHA, "GL_ONE_MINUS_SRC_ALPHA" },
813  { GL_DST_COLOR, "GL_DST_COLOR" },
814  { GL_ONE_MINUS_DST_COLOR, "GL_ONE_MINUS_DST_COLOR" },
815  { GL_DST_ALPHA, "GL_DST_ALPHA" },
816 
817  { GL_MODELVIEW, "GL_MODELVIEW" },
818  { GL_PROJECTION, "GL_PROJECTION" },
819  { GL_TEXTURE, "GL_TEXTURE" },
820 
821 /* DrawBufferMode */
822 DEF(GL_NONE)
823 DEF(GL_FRONT_LEFT)
824 DEF(GL_FRONT_RIGHT)
825 DEF(GL_BACK_LEFT)
826 DEF(GL_BACK_RIGHT)
827 DEF(GL_FRONT)
828 DEF(GL_BACK)
829 DEF(GL_LEFT)
830 DEF(GL_RIGHT)
831 DEF(GL_FRONT_AND_BACK)
832 DEF(GL_AUX0)
833 DEF(GL_AUX1)
834 DEF(GL_AUX2)
835 DEF(GL_AUX3)
836 
837 /* GetTarget */
838 DEF(GL_CURRENT_COLOR)
839 DEF(GL_CURRENT_INDEX)
840 DEF(GL_CURRENT_NORMAL)
841 DEF(GL_CURRENT_TEXTURE_COORDS)
842 DEF(GL_CURRENT_RASTER_COLOR)
843 DEF(GL_CURRENT_RASTER_INDEX)
844 DEF(GL_CURRENT_RASTER_TEXTURE_COORDS)
845 DEF(GL_CURRENT_RASTER_POSITION)
846 DEF(GL_CURRENT_RASTER_POSITION_VALID)
847 DEF(GL_CURRENT_RASTER_DISTANCE)
848 DEF(GL_POINT_SMOOTH)
849 DEF(GL_POINT_SIZE)
850 DEF(GL_POINT_SIZE_RANGE)
851 DEF(GL_POINT_SIZE_GRANULARITY)
852 DEF(GL_LINE_SMOOTH)
853 DEF(GL_LINE_WIDTH)
854 DEF(GL_LINE_WIDTH_RANGE)
855 DEF(GL_LINE_WIDTH_GRANULARITY)
856 DEF(GL_LINE_STIPPLE)
857 DEF(GL_LINE_STIPPLE_PATTERN)
858 DEF(GL_LINE_STIPPLE_REPEAT)
859 DEF(GL_LIST_MODE)
860 DEF(GL_MAX_LIST_NESTING)
861 DEF(GL_LIST_BASE)
862 DEF(GL_LIST_INDEX)
863 DEF(GL_POLYGON_MODE)
864 DEF(GL_POLYGON_SMOOTH)
865 DEF(GL_POLYGON_STIPPLE)
866 DEF(GL_EDGE_FLAG)
867 DEF(GL_CULL_FACE)
868 DEF(GL_CULL_FACE_MODE)
869 DEF(GL_FRONT_FACE)
870 DEF(GL_LIGHTING)
871 DEF(GL_LIGHT_MODEL_LOCAL_VIEWER)
872 DEF(GL_LIGHT_MODEL_TWO_SIDE)
873 DEF(GL_LIGHT_MODEL_AMBIENT)
874 DEF(GL_SHADE_MODEL)
875 DEF(GL_COLOR_MATERIAL_FACE)
876 DEF(GL_COLOR_MATERIAL_PARAMETER)
877 DEF(GL_COLOR_MATERIAL)
878 DEF(GL_FOG)
879 DEF(GL_FOG_INDEX)
880 DEF(GL_FOG_DENSITY)
881 DEF(GL_FOG_START)
882 DEF(GL_FOG_END)
883 DEF(GL_FOG_MODE)
884 DEF(GL_FOG_COLOR)
885 DEF(GL_DEPTH_RANGE)
886 DEF(GL_DEPTH_TEST)
887 DEF(GL_DEPTH_WRITEMASK)
888 DEF(GL_DEPTH_CLEAR_VALUE)
889 DEF(GL_DEPTH_FUNC)
890 DEF(GL_ACCUM_CLEAR_VALUE)
891 DEF(GL_STENCIL_TEST)
892 DEF(GL_STENCIL_CLEAR_VALUE)
893 DEF(GL_STENCIL_FUNC)
894 DEF(GL_STENCIL_VALUE_MASK)
895 DEF(GL_STENCIL_FAIL)
896 DEF(GL_STENCIL_PASS_DEPTH_FAIL)
897 DEF(GL_STENCIL_PASS_DEPTH_PASS)
898 DEF(GL_STENCIL_REF)
899 DEF(GL_STENCIL_WRITEMASK)
900 DEF(GL_MATRIX_MODE)
901 DEF(GL_NORMALIZE)
902 DEF(GL_VIEWPORT)
903 DEF(GL_MODELVIEW_STACK_DEPTH)
904 DEF(GL_PROJECTION_STACK_DEPTH)
905 DEF(GL_TEXTURE_STACK_DEPTH)
906 DEF(GL_MODELVIEW_MATRIX)
907 DEF(GL_PROJECTION_MATRIX)
908 DEF(GL_TEXTURE_MATRIX)
909 DEF(GL_ATTRIB_STACK_DEPTH)
910 DEF(GL_CLIENT_ATTRIB_STACK_DEPTH)
911 DEF(GL_ALPHA_TEST)
912 DEF(GL_ALPHA_TEST_FUNC)
913 DEF(GL_ALPHA_TEST_REF)
914 DEF(GL_DITHER)
915 DEF(GL_BLEND_DST)
916 DEF(GL_BLEND_SRC)
917 DEF(GL_BLEND)
918 DEF(GL_LOGIC_OP_MODE)
919 DEF(GL_INDEX_LOGIC_OP)
920 DEF(GL_COLOR_LOGIC_OP)
921 DEF(GL_AUX_BUFFERS)
922 DEF(GL_DRAW_BUFFER)
923 DEF(GL_READ_BUFFER)
924 DEF(GL_SCISSOR_BOX)
925 DEF(GL_SCISSOR_TEST)
926 DEF(GL_INDEX_CLEAR_VALUE)
927 DEF(GL_INDEX_WRITEMASK)
928 DEF(GL_COLOR_CLEAR_VALUE)
929 DEF(GL_COLOR_WRITEMASK)
930 DEF(GL_INDEX_MODE)
931 DEF(GL_RGBA_MODE)
932 DEF(GL_DOUBLEBUFFER)
933 DEF(GL_STEREO)
934 DEF(GL_RENDER_MODE)
935 DEF(GL_PERSPECTIVE_CORRECTION_HINT)
936 DEF(GL_POINT_SMOOTH_HINT)
937 DEF(GL_LINE_SMOOTH_HINT)
938 DEF(GL_POLYGON_SMOOTH_HINT)
939 DEF(GL_FOG_HINT)
940 DEF(GL_TEXTURE_GEN_S)
941 DEF(GL_TEXTURE_GEN_T)
942 DEF(GL_TEXTURE_GEN_R)
943 DEF(GL_TEXTURE_GEN_Q)
944 DEF(GL_PIXEL_MAP_I_TO_I)
945 DEF(GL_PIXEL_MAP_S_TO_S)
946 DEF(GL_PIXEL_MAP_I_TO_R)
947 DEF(GL_PIXEL_MAP_I_TO_G)
948 DEF(GL_PIXEL_MAP_I_TO_B)
949 DEF(GL_PIXEL_MAP_I_TO_A)
950 DEF(GL_PIXEL_MAP_R_TO_R)
951 DEF(GL_PIXEL_MAP_G_TO_G)
952 DEF(GL_PIXEL_MAP_B_TO_B)
953 DEF(GL_PIXEL_MAP_A_TO_A)
954 DEF(GL_PIXEL_MAP_I_TO_I_SIZE)
955 DEF(GL_PIXEL_MAP_S_TO_S_SIZE)
956 DEF(GL_PIXEL_MAP_I_TO_R_SIZE)
957 DEF(GL_PIXEL_MAP_I_TO_G_SIZE)
958 DEF(GL_PIXEL_MAP_I_TO_B_SIZE)
959 DEF(GL_PIXEL_MAP_I_TO_A_SIZE)
960 DEF(GL_PIXEL_MAP_R_TO_R_SIZE)
961 DEF(GL_PIXEL_MAP_G_TO_G_SIZE)
962 DEF(GL_PIXEL_MAP_B_TO_B_SIZE)
963 DEF(GL_PIXEL_MAP_A_TO_A_SIZE)
964 DEF(GL_UNPACK_SWAP_BYTES)
965 DEF(GL_UNPACK_LSB_FIRST)
966 DEF(GL_UNPACK_ROW_LENGTH)
967 DEF(GL_UNPACK_SKIP_ROWS)
968 DEF(GL_UNPACK_SKIP_PIXELS)
969 DEF(GL_UNPACK_ALIGNMENT)
970 DEF(GL_PACK_SWAP_BYTES)
971 DEF(GL_PACK_LSB_FIRST)
972 DEF(GL_PACK_ROW_LENGTH)
973 DEF(GL_PACK_SKIP_ROWS)
974 DEF(GL_PACK_SKIP_PIXELS)
975 DEF(GL_PACK_ALIGNMENT)
976 DEF(GL_MAP_COLOR)
977 DEF(GL_MAP_STENCIL)
978 DEF(GL_INDEX_SHIFT)
979 DEF(GL_INDEX_OFFSET)
980 DEF(GL_RED_SCALE)
981 DEF(GL_RED_BIAS)
982 DEF(GL_ZOOM_X)
983 DEF(GL_ZOOM_Y)
984 DEF(GL_GREEN_SCALE)
985 DEF(GL_GREEN_BIAS)
986 DEF(GL_BLUE_SCALE)
987 DEF(GL_BLUE_BIAS)
988 DEF(GL_ALPHA_SCALE)
989 DEF(GL_ALPHA_BIAS)
990 DEF(GL_DEPTH_SCALE)
991 DEF(GL_DEPTH_BIAS)
992 DEF(GL_MAX_EVAL_ORDER)
993 DEF(GL_MAX_LIGHTS)
994 DEF(GL_MAX_CLIP_PLANES)
995 DEF(GL_MAX_TEXTURE_SIZE)
996 DEF(GL_MAX_PIXEL_MAP_TABLE)
997 DEF(GL_MAX_ATTRIB_STACK_DEPTH)
998 DEF(GL_MAX_MODELVIEW_STACK_DEPTH)
999 DEF(GL_MAX_NAME_STACK_DEPTH)
1000 DEF(GL_MAX_PROJECTION_STACK_DEPTH)
1001 DEF(GL_MAX_TEXTURE_STACK_DEPTH)
1002 DEF(GL_MAX_VIEWPORT_DIMS)
1003 DEF(GL_MAX_CLIENT_ATTRIB_STACK_DEPTH)
1004 DEF(GL_SUBPIXEL_BITS)
1005 DEF(GL_INDEX_BITS)
1006 DEF(GL_RED_BITS)
1007 DEF(GL_GREEN_BITS)
1008 DEF(GL_BLUE_BITS)
1009 DEF(GL_ALPHA_BITS)
1010 DEF(GL_DEPTH_BITS)
1011 DEF(GL_STENCIL_BITS)
1012 DEF(GL_ACCUM_RED_BITS)
1013 DEF(GL_ACCUM_GREEN_BITS)
1014 DEF(GL_ACCUM_BLUE_BITS)
1015 DEF(GL_ACCUM_ALPHA_BITS)
1016 DEF(GL_NAME_STACK_DEPTH)
1017 DEF(GL_AUTO_NORMAL)
1018 DEF(GL_MAP1_COLOR_4)
1019 DEF(GL_MAP1_INDEX)
1020 DEF(GL_MAP1_NORMAL)
1021 DEF(GL_MAP1_TEXTURE_COORD_1)
1022 DEF(GL_MAP1_TEXTURE_COORD_2)
1023 DEF(GL_MAP1_TEXTURE_COORD_3)
1024 DEF(GL_MAP1_TEXTURE_COORD_4)
1025 DEF(GL_MAP1_VERTEX_3)
1026 DEF(GL_MAP1_VERTEX_4)
1027 DEF(GL_MAP2_COLOR_4)
1028 DEF(GL_MAP2_INDEX)
1029 DEF(GL_MAP2_NORMAL)
1030 DEF(GL_MAP2_TEXTURE_COORD_1)
1031 DEF(GL_MAP2_TEXTURE_COORD_2)
1032 DEF(GL_MAP2_TEXTURE_COORD_3)
1033 DEF(GL_MAP2_TEXTURE_COORD_4)
1034 DEF(GL_MAP2_VERTEX_3)
1035 DEF(GL_MAP2_VERTEX_4)
1036 DEF(GL_MAP1_GRID_DOMAIN)
1037 DEF(GL_MAP1_GRID_SEGMENTS)
1038 DEF(GL_MAP2_GRID_DOMAIN)
1039 DEF(GL_MAP2_GRID_SEGMENTS)
1040 DEF(GL_TEXTURE_1D)
1041 DEF(GL_TEXTURE_2D)
1042 DEF(GL_FEEDBACK_BUFFER_POINTER)
1043 DEF(GL_FEEDBACK_BUFFER_SIZE)
1044 DEF(GL_FEEDBACK_BUFFER_TYPE)
1045 DEF(GL_SELECTION_BUFFER_POINTER)
1046 DEF(GL_SELECTION_BUFFER_SIZE)
1047 
1048 /* PixelCopyType */
1049 DEF(GL_COLOR)
1050 DEF(GL_DEPTH)
1051 DEF(GL_STENCIL)
1052 
1053 /* PixelFormat */
1054 DEF(GL_COLOR_INDEX)
1055 DEF(GL_STENCIL_INDEX)
1056 DEF(GL_DEPTH_COMPONENT)
1057 DEF(GL_RED)
1058 DEF(GL_GREEN)
1059 DEF(GL_BLUE)
1060 DEF(GL_ALPHA)
1061 DEF(GL_RGB)
1062 DEF(GL_RGBA)
1063 DEF(GL_LUMINANCE)
1064 DEF(GL_LUMINANCE_ALPHA)
1065 
1066 /* PixelMap */
1067 /* GL_PIXEL_MAP_I_TO_I */
1068 /* GL_PIXEL_MAP_S_TO_S */
1069 /* GL_PIXEL_MAP_I_TO_R */
1070 /* GL_PIXEL_MAP_I_TO_G */
1071 /* GL_PIXEL_MAP_I_TO_B */
1072 /* GL_PIXEL_MAP_I_TO_A */
1073 /* GL_PIXEL_MAP_R_TO_R */
1074 /* GL_PIXEL_MAP_G_TO_G */
1075 /* GL_PIXEL_MAP_B_TO_B */
1076 /* GL_PIXEL_MAP_A_TO_A */
1077 
1078 /* PixelStore */
1079 /* GL_UNPACK_SWAP_BYTES */
1080 /* GL_UNPACK_LSB_FIRST */
1081 /* GL_UNPACK_ROW_LENGTH */
1082 /* GL_UNPACK_SKIP_ROWS */
1083 /* GL_UNPACK_SKIP_PIXELS */
1084 /* GL_UNPACK_ALIGNMENT */
1085 /* GL_PACK_SWAP_BYTES */
1086 /* GL_PACK_LSB_FIRST */
1087 /* GL_PACK_ROW_LENGTH */
1088 /* GL_PACK_SKIP_ROWS */
1089 /* GL_PACK_SKIP_PIXELS */
1090 /* GL_PACK_ALIGNMENT */
1091 
1092 /* PixelTransfer */
1093 /* GL_MAP_COLOR */
1094 /* GL_MAP_STENCIL */
1095 /* GL_INDEX_SHIFT */
1096 /* GL_INDEX_OFFSET */
1097 /* GL_RED_SCALE */
1098 /* GL_RED_BIAS */
1099 /* GL_GREEN_SCALE */
1100 /* GL_GREEN_BIAS */
1101 /* GL_BLUE_SCALE */
1102 /* GL_BLUE_BIAS */
1103 /* GL_ALPHA_SCALE */
1104 /* GL_ALPHA_BIAS */
1105 /* GL_DEPTH_SCALE */
1106 /* GL_DEPTH_BIAS */
1107 
1108 /* PixelType */
1109 DEF(GL_BITMAP)
1110 /* GL_BYTE */
1111 /* GL_UNSIGNED_BYTE */
1112 /* GL_SHORT */
1113 /* GL_UNSIGNED_SHORT */
1114 /* GL_INT */
1115 /* GL_UNSIGNED_INT */
1116 /* GL_FLOAT */
1117 
1118 /* PolygonMode */
1119 DEF(GL_POINT)
1120 DEF(GL_LINE)
1121 DEF(GL_FILL)
1122 
1123 /* RenderingMode */
1124 DEF(GL_RENDER)
1125 DEF(GL_FEEDBACK)
1126 DEF(GL_SELECT)
1127 
1128 /* ShadingModel */
1129 DEF(GL_FLAT)
1130 DEF(GL_SMOOTH)
1131 
1132 /* StencilOp */
1133 /* GL_ZERO */
1134 DEF(GL_KEEP)
1135 DEF(GL_REPLACE)
1136 DEF(GL_INCR)
1137 DEF(GL_DECR)
1138 /* GL_INVERT */
1139 
1140 /* StringName */
1141 DEF(GL_VENDOR)
1142 DEF(GL_RENDERER)
1143 DEF(GL_VERSION)
1144 DEF(GL_EXTENSIONS)
1145 
1146 /* TextureCoordName */
1147 DEF(GL_S)
1148 DEF(GL_T)
1149 DEF(GL_R)
1150 DEF(GL_Q)
1151 
1152 /* TexCoordPointerType */
1153 /* GL_SHORT */
1154 /* GL_INT */
1155 /* GL_FLOAT */
1156 /* GL_DOUBLE */
1157 
1158 /* TextureEnvMode */
1159 DEF(GL_MODULATE)
1160 DEF(GL_DECAL)
1161 /* GL_BLEND */
1162 /* GL_REPLACE */
1163 
1164 /* TextureEnvParameter */
1165 DEF(GL_TEXTURE_ENV_MODE)
1166 DEF(GL_TEXTURE_ENV_COLOR)
1167 
1168 /* TextureEnvTarget */
1169 DEF(GL_TEXTURE_ENV)
1170 
1171 /* TextureGenMode */
1172 DEF(GL_EYE_LINEAR)
1173 DEF(GL_OBJECT_LINEAR)
1174 DEF(GL_SPHERE_MAP)
1175 
1176 /* TextureGenParameter */
1177 DEF(GL_TEXTURE_GEN_MODE)
1178 DEF(GL_OBJECT_PLANE)
1179 DEF(GL_EYE_PLANE)
1180 
1181 /* TextureMagFilter */
1182 DEF(GL_NEAREST)
1183 DEF(GL_LINEAR)
1184 
1185 /* TextureMinFilter */
1186 /* GL_NEAREST */
1187 /* GL_LINEAR */
1188 DEF(GL_NEAREST_MIPMAP_NEAREST)
1189 DEF(GL_LINEAR_MIPMAP_NEAREST)
1190 DEF(GL_NEAREST_MIPMAP_LINEAR)
1191 DEF(GL_LINEAR_MIPMAP_LINEAR)
1192 
1193 /* TextureParameterName */
1194 DEF(GL_TEXTURE_MAG_FILTER)
1195 DEF(GL_TEXTURE_MIN_FILTER)
1196 DEF(GL_TEXTURE_WRAP_S)
1197 DEF(GL_TEXTURE_WRAP_T)
1198 /* GL_TEXTURE_BORDER_COLOR */
1199 /* GL_TEXTURE_PRIORITY */
1200 
1201 /* TextureTarget */
1202 /* GL_TEXTURE_1D */
1203 /* GL_TEXTURE_2D */
1204 /* GL_PROXY_TEXTURE_1D */
1205 /* GL_PROXY_TEXTURE_2D */
1206 
1207 /* TextureWrapMode */
1208 DEF(GL_CLAMP)
1209 DEF(GL_REPEAT)
1210 
1211 /* VertexPointerType */
1212 /* GL_SHORT */
1213 /* GL_INT */
1214 /* GL_FLOAT */
1215 /* GL_DOUBLE */
1216 
1217 /* ClientAttribMask */
1218 DEF(GL_CLIENT_PIXEL_STORE_BIT)
1219 DEF(GL_CLIENT_VERTEX_ARRAY_BIT)
1220 DEF(GL_CLIENT_ALL_ATTRIB_BITS)
1221 
1222 /* polygon_offset */
1223 DEF(GL_POLYGON_OFFSET_FACTOR)
1224 DEF(GL_POLYGON_OFFSET_UNITS)
1225 DEF(GL_POLYGON_OFFSET_POINT)
1226 DEF(GL_POLYGON_OFFSET_LINE)
1227 DEF(GL_POLYGON_OFFSET_FILL)
1228 
1229  { 0, NULL }
1230 };
1231 
1232 static const char *EnumString( GLenum t )
1233 {
1234  static char buffer[8][1024];
1235  static int index = 0;
1236 
1237  for ( glEnumName_t *n = glEnumNames ; n->name ; n++ ) {
1238  if ( t == n->e ) {
1239  return n->name;
1240  }
1241  }
1242 
1243  int oldIndex = index;
1244  index = ( index + 1 ) & 7;
1245  sprintf( buffer[oldIndex], "0x%x", t );
1246 
1247  return buffer[oldIndex];
1248 }
1249 
1250 static const char *FloatData( const GLfloat *v, int count ) {
1251  static char buffer[8][1024];
1252  static int index = 0;
1253  char *name;
1254 
1255  name = buffer[index&7];
1256  sprintf( name, "f%i", index );
1257  index++;
1258 
1259  fprintf( tr.logFile, "static float %s[%i] = {", name, count );
1260  for( int i = 0 ; i < count ; i++ ) {
1261  if ( i < count - 1 ) {
1262  fprintf( tr.logFile, "%f,", v[i] );
1263  } else {
1264  fprintf( tr.logFile, "%f};\n", v[i] );
1265  }
1266  }
1267 
1268  return name;
1269 }
1270 
1271 #if 0
1272 
1273 // TODO: support GLbitfield
1274 
1275 static void APIENTRY logClear(GLbitfield mask)
1276 {
1277  fprintf( tr.logFile, "glClear( 0 " );
1278 
1279  if ( mask & GL_COLOR_BUFFER_BIT )
1280  fprintf( tr.logFile, "| GL_COLOR_BUFFER_BIT " );
1281  if ( mask & GL_DEPTH_BUFFER_BIT )
1282  fprintf( tr.logFile, "| GL_DEPTH_BUFFER_BIT " );
1283  if ( mask & GL_STENCIL_BUFFER_BIT )
1284  fprintf( tr.logFile, "| GL_STENCIL_BUFFER_BIT " );
1285  if ( mask & GL_ACCUM_BUFFER_BIT )
1286  fprintf( tr.logFile, "| GL_ACCUM_BUFFER_BIT " );
1287 
1288  fprintf( tr.logFile, ");\n" );
1289  dllClear( mask );
1290 }
1291 
1292 #endif
1293 
1294 #include "gl_logfuncs.cpp"
1295 
1296 /*
1297 ** QGL_Shutdown
1298 **
1299 ** Unloads the specified DLL then nulls out all the proc pointers. This
1300 ** is only called during a hard shutdown of the OGL subsystem (e.g. vid_restart).
1301 */
1302 void QGL_Shutdown( void )
1303 {
1304  common->Printf( "...shutting down QGL\n" );
1305 
1306  if ( win32.hinstOpenGL )
1307  {
1308  common->Printf( "...unloading OpenGL DLL\n" );
1309  FreeLibrary( win32.hinstOpenGL );
1310  }
1311 
1313 
1314  qglAccum = NULL;
1315  qglAlphaFunc = NULL;
1318  qglBegin = NULL;
1319  qglBindTexture = NULL;
1320  qglBitmap = NULL;
1321  qglBlendFunc = NULL;
1322  qglCallList = NULL;
1323  qglCallLists = NULL;
1324  qglClear = NULL;
1325  qglClearAccum = NULL;
1326  qglClearColor = NULL;
1327  qglClearDepth = NULL;
1328  qglClearIndex = NULL;
1330  qglClipPlane = NULL;
1331  qglColor3b = NULL;
1332  qglColor3bv = NULL;
1333  qglColor3d = NULL;
1334  qglColor3dv = NULL;
1335  qglColor3f = NULL;
1336  qglColor3fv = NULL;
1337  qglColor3i = NULL;
1338  qglColor3iv = NULL;
1339  qglColor3s = NULL;
1340  qglColor3sv = NULL;
1341  qglColor3ub = NULL;
1342  qglColor3ubv = NULL;
1343  qglColor3ui = NULL;
1344  qglColor3uiv = NULL;
1345  qglColor3us = NULL;
1346  qglColor3usv = NULL;
1347  qglColor4b = NULL;
1348  qglColor4bv = NULL;
1349  qglColor4d = NULL;
1350  qglColor4dv = NULL;
1351  qglColor4f = NULL;
1352  qglColor4fv = NULL;
1353  qglColor4i = NULL;
1354  qglColor4iv = NULL;
1355  qglColor4s = NULL;
1356  qglColor4sv = NULL;
1357  qglColor4ub = NULL;
1358  qglColor4ubv = NULL;
1359  qglColor4ui = NULL;
1360  qglColor4uiv = NULL;
1361  qglColor4us = NULL;
1362  qglColor4usv = NULL;
1363  qglColorMask = NULL;
1366  qglCopyPixels = NULL;
1371  qglCullFace = NULL;
1372  qglDeleteLists = NULL;
1374  qglDepthFunc = NULL;
1375  qglDepthMask = NULL;
1376  qglDepthRange = NULL;
1377  qglDisable = NULL;
1379  qglDrawArrays = NULL;
1380  qglDrawBuffer = NULL;
1382  qglDrawPixels = NULL;
1383  qglEdgeFlag = NULL;
1385  qglEdgeFlagv = NULL;
1386  qglEnable = NULL;
1388  qglEnd = NULL;
1389  qglEndList = NULL;
1390  qglEvalCoord1d = NULL;
1392  qglEvalCoord1f = NULL;
1394  qglEvalCoord2d = NULL;
1396  qglEvalCoord2f = NULL;
1398  qglEvalMesh1 = NULL;
1399  qglEvalMesh2 = NULL;
1400  qglEvalPoint1 = NULL;
1401  qglEvalPoint2 = NULL;
1403  qglFinish = NULL;
1404  qglFlush = NULL;
1405  qglFogf = NULL;
1406  qglFogfv = NULL;
1407  qglFogi = NULL;
1408  qglFogiv = NULL;
1409  qglFrontFace = NULL;
1410  qglFrustum = NULL;
1411  qglGenLists = NULL;
1412  qglGenTextures = NULL;
1413  qglGetBooleanv = NULL;
1415  qglGetDoublev = NULL;
1416  qglGetError = NULL;
1417  qglGetFloatv = NULL;
1418  qglGetIntegerv = NULL;
1419  qglGetLightfv = NULL;
1420  qglGetLightiv = NULL;
1421  qglGetMapdv = NULL;
1422  qglGetMapfv = NULL;
1423  qglGetMapiv = NULL;
1429  qglGetPointerv = NULL;
1431  qglGetString = NULL;
1432  qglGetTexEnvfv = NULL;
1433  qglGetTexEnviv = NULL;
1434  qglGetTexGendv = NULL;
1435  qglGetTexGenfv = NULL;
1436  qglGetTexGeniv = NULL;
1437  qglGetTexImage = NULL;
1442  qglHint = NULL;
1443  qglIndexMask = NULL;
1445  qglIndexd = NULL;
1446  qglIndexdv = NULL;
1447  qglIndexf = NULL;
1448  qglIndexfv = NULL;
1449  qglIndexi = NULL;
1450  qglIndexiv = NULL;
1451  qglIndexs = NULL;
1452  qglIndexsv = NULL;
1453  qglIndexub = NULL;
1454  qglIndexubv = NULL;
1455  qglInitNames = NULL;
1457  qglIsEnabled = NULL;
1458  qglIsList = NULL;
1459  qglIsTexture = NULL;
1460  qglLightModelf = NULL;
1462  qglLightModeli = NULL;
1464  qglLightf = NULL;
1465  qglLightfv = NULL;
1466  qglLighti = NULL;
1467  qglLightiv = NULL;
1468  qglLineStipple = NULL;
1469  qglLineWidth = NULL;
1470  qglListBase = NULL;
1472  qglLoadMatrixd = NULL;
1473  qglLoadMatrixf = NULL;
1474  qglLoadName = NULL;
1475  qglLogicOp = NULL;
1476  qglMap1d = NULL;
1477  qglMap1f = NULL;
1478  qglMap2d = NULL;
1479  qglMap2f = NULL;
1480  qglMapGrid1d = NULL;
1481  qglMapGrid1f = NULL;
1482  qglMapGrid2d = NULL;
1483  qglMapGrid2f = NULL;
1484  qglMaterialf = NULL;
1485  qglMaterialfv = NULL;
1486  qglMateriali = NULL;
1487  qglMaterialiv = NULL;
1488  qglMatrixMode = NULL;
1489  qglMultMatrixd = NULL;
1490  qglMultMatrixf = NULL;
1491  qglNewList = NULL;
1492  qglNormal3b = NULL;
1493  qglNormal3bv = NULL;
1494  qglNormal3d = NULL;
1495  qglNormal3dv = NULL;
1496  qglNormal3f = NULL;
1497  qglNormal3fv = NULL;
1498  qglNormal3i = NULL;
1499  qglNormal3iv = NULL;
1500  qglNormal3s = NULL;
1501  qglNormal3sv = NULL;
1503  qglOrtho = NULL;
1504  qglPassThrough = NULL;
1505  qglPixelMapfv = NULL;
1506  qglPixelMapuiv = NULL;
1507  qglPixelMapusv = NULL;
1508  qglPixelStoref = NULL;
1509  qglPixelStorei = NULL;
1512  qglPixelZoom = NULL;
1513  qglPointSize = NULL;
1514  qglPolygonMode = NULL;
1517  qglPopAttrib = NULL;
1519  qglPopMatrix = NULL;
1520  qglPopName = NULL;
1522  qglPushAttrib = NULL;
1524  qglPushMatrix = NULL;
1525  qglPushName = NULL;
1526  qglRasterPos2d = NULL;
1528  qglRasterPos2f = NULL;
1530  qglRasterPos2i = NULL;
1532  qglRasterPos2s = NULL;
1534  qglRasterPos3d = NULL;
1536  qglRasterPos3f = NULL;
1538  qglRasterPos3i = NULL;
1540  qglRasterPos3s = NULL;
1542  qglRasterPos4d = NULL;
1544  qglRasterPos4f = NULL;
1546  qglRasterPos4i = NULL;
1548  qglRasterPos4s = NULL;
1550  qglReadBuffer = NULL;
1551  qglReadPixels = NULL;
1552  qglRectd = NULL;
1553  qglRectdv = NULL;
1554  qglRectf = NULL;
1555  qglRectfv = NULL;
1556  qglRecti = NULL;
1557  qglRectiv = NULL;
1558  qglRects = NULL;
1559  qglRectsv = NULL;
1560  qglRenderMode = NULL;
1561  qglRotated = NULL;
1562  qglRotatef = NULL;
1563  qglScaled = NULL;
1564  qglScalef = NULL;
1565  qglScissor = NULL;
1567  qglShadeModel = NULL;
1568  qglStencilFunc = NULL;
1569  qglStencilMask = NULL;
1570  qglStencilOp = NULL;
1571  qglTexCoord1d = NULL;
1572  qglTexCoord1dv = NULL;
1573  qglTexCoord1f = NULL;
1574  qglTexCoord1fv = NULL;
1575  qglTexCoord1i = NULL;
1576  qglTexCoord1iv = NULL;
1577  qglTexCoord1s = NULL;
1578  qglTexCoord1sv = NULL;
1579  qglTexCoord2d = NULL;
1580  qglTexCoord2dv = NULL;
1581  qglTexCoord2f = NULL;
1582  qglTexCoord2fv = NULL;
1583  qglTexCoord2i = NULL;
1584  qglTexCoord2iv = NULL;
1585  qglTexCoord2s = NULL;
1586  qglTexCoord2sv = NULL;
1587  qglTexCoord3d = NULL;
1588  qglTexCoord3dv = NULL;
1589  qglTexCoord3f = NULL;
1590  qglTexCoord3fv = NULL;
1591  qglTexCoord3i = NULL;
1592  qglTexCoord3iv = NULL;
1593  qglTexCoord3s = NULL;
1594  qglTexCoord3sv = NULL;
1595  qglTexCoord4d = NULL;
1596  qglTexCoord4dv = NULL;
1597  qglTexCoord4f = NULL;
1598  qglTexCoord4fv = NULL;
1599  qglTexCoord4i = NULL;
1600  qglTexCoord4iv = NULL;
1601  qglTexCoord4s = NULL;
1602  qglTexCoord4sv = NULL;
1604  qglTexEnvf = NULL;
1605  qglTexEnvfv = NULL;
1606  qglTexEnvi = NULL;
1607  qglTexEnviv = NULL;
1608  qglTexGend = NULL;
1609  qglTexGendv = NULL;
1610  qglTexGenf = NULL;
1611  qglTexGenfv = NULL;
1612  qglTexGeni = NULL;
1613  qglTexGeniv = NULL;
1614  qglTexImage1D = NULL;
1615  qglTexImage2D = NULL;
1622  qglTranslated = NULL;
1623  qglTranslatef = NULL;
1624  qglVertex2d = NULL;
1625  qglVertex2dv = NULL;
1626  qglVertex2f = NULL;
1627  qglVertex2fv = NULL;
1628  qglVertex2i = NULL;
1629  qglVertex2iv = NULL;
1630  qglVertex2s = NULL;
1631  qglVertex2sv = NULL;
1632  qglVertex3d = NULL;
1633  qglVertex3dv = NULL;
1634  qglVertex3f = NULL;
1635  qglVertex3fv = NULL;
1636  qglVertex3i = NULL;
1637  qglVertex3iv = NULL;
1638  qglVertex3s = NULL;
1639  qglVertex3sv = NULL;
1640  qglVertex4d = NULL;
1641  qglVertex4dv = NULL;
1642  qglVertex4f = NULL;
1643  qglVertex4fv = NULL;
1644  qglVertex4i = NULL;
1645  qglVertex4iv = NULL;
1646  qglVertex4s = NULL;
1647  qglVertex4sv = NULL;
1649  qglViewport = NULL;
1650 
1651  qwglCopyContext = NULL;
1652  qwglCreateContext = NULL;
1653  qwglCreateLayerContext = NULL;
1654  qwglDeleteContext = NULL;
1655  qwglDescribeLayerPlane = NULL;
1656  qwglGetCurrentContext = NULL;
1657  qwglGetCurrentDC = NULL;
1658  qwglGetLayerPaletteEntries = NULL;
1659  qwglGetProcAddress = NULL;
1660  qwglMakeCurrent = NULL;
1661  qwglRealizeLayerPalette = NULL;
1662  qwglSetLayerPaletteEntries = NULL;
1663  qwglShareLists = NULL;
1664  qwglSwapLayerBuffers = NULL;
1665  qwglUseFontBitmaps = NULL;
1666  qwglUseFontOutlines = NULL;
1667 
1668  qwglChoosePixelFormat = NULL;
1669  qwglDescribePixelFormat = NULL;
1670  qwglGetPixelFormat = NULL;
1671  qwglSetPixelFormat = NULL;
1672  qwglSwapBuffers = NULL;
1673 }
1674 
1675 #define GR_NUM_BOARDS 0x0f
1676 
1677 
1678 #pragma warning (disable : 4113 4133 4047 )
1679 #define GPA( a ) GetProcAddress( win32.hinstOpenGL, a )
1680 
1681 /*
1682 ** QGL_Init
1683 **
1684 ** This is responsible for binding our qgl function pointers to
1685 ** the appropriate GL stuff. In Windows this means doing a
1686 ** LoadLibrary and a bunch of calls to GetProcAddress. On other
1687 ** operating systems we need to do the right thing, whatever that
1688 ** might be.
1689 */
1690 bool QGL_Init( const char *dllname )
1691 {
1692  assert( win32.hinstOpenGL == 0 );
1693 
1694  common->Printf( "...initializing QGL\n" );
1695 
1696  common->Printf( "...calling LoadLibrary( '%s' ): ", dllname );
1697 
1698  if ( ( win32.hinstOpenGL = LoadLibrary( dllname ) ) == 0 )
1699  {
1700  common->Printf( "failed\n" );
1701  return false;
1702  }
1703  common->Printf( "succeeded\n" );
1704 
1705  qglAccum = dllAccum = glAccum;
1706  qglAlphaFunc = dllAlphaFunc = glAlphaFunc;
1707  qglAreTexturesResident = dllAreTexturesResident = glAreTexturesResident;
1708  qglArrayElement = dllArrayElement = glArrayElement;
1709  qglBegin = dllBegin = glBegin;
1710  qglBindTexture = dllBindTexture = glBindTexture;
1711  qglBitmap = dllBitmap = glBitmap;
1712  qglBlendFunc = dllBlendFunc = glBlendFunc;
1713  qglCallList = dllCallList = glCallList;
1714  qglCallLists = dllCallLists = glCallLists;
1715  qglClear = dllClear = glClear;
1716  qglClearAccum = dllClearAccum = glClearAccum;
1717  qglClearColor = dllClearColor = glClearColor;
1718  qglClearDepth = dllClearDepth = glClearDepth;
1719  qglClearIndex = dllClearIndex = glClearIndex;
1720  qglClearStencil = dllClearStencil = glClearStencil;
1721  qglClipPlane = dllClipPlane = glClipPlane;
1722  qglColor3b = dllColor3b = glColor3b;
1723  qglColor3bv = dllColor3bv = glColor3bv;
1724  qglColor3d = dllColor3d = glColor3d;
1725  qglColor3dv = dllColor3dv = glColor3dv;
1726  qglColor3f = dllColor3f = glColor3f;
1727  qglColor3fv = dllColor3fv = glColor3fv;
1728  qglColor3i = dllColor3i = glColor3i;
1729  qglColor3iv = dllColor3iv = glColor3iv;
1730  qglColor3s = dllColor3s = glColor3s;
1731  qglColor3sv = dllColor3sv = glColor3sv;
1732  qglColor3ub = dllColor3ub = glColor3ub;
1733  qglColor3ubv = dllColor3ubv = glColor3ubv;
1734  qglColor3ui = dllColor3ui = glColor3ui;
1735  qglColor3uiv = dllColor3uiv = glColor3uiv;
1736  qglColor3us = dllColor3us = glColor3us;
1737  qglColor3usv = dllColor3usv = glColor3usv;
1738  qglColor4b = dllColor4b = glColor4b;
1739  qglColor4bv = dllColor4bv = glColor4bv;
1740  qglColor4d = dllColor4d = glColor4d;
1741  qglColor4dv = dllColor4dv = glColor4dv;
1742  qglColor4f = dllColor4f = glColor4f;
1743  qglColor4fv = dllColor4fv = glColor4fv;
1744  qglColor4i = dllColor4i = glColor4i;
1745  qglColor4iv = dllColor4iv = glColor4iv;
1746  qglColor4s = dllColor4s = glColor4s;
1747  qglColor4sv = dllColor4sv = glColor4sv;
1748  qglColor4ub = dllColor4ub = glColor4ub;
1749  qglColor4ubv = dllColor4ubv = glColor4ubv;
1750  qglColor4ui = dllColor4ui = glColor4ui;
1751  qglColor4uiv = dllColor4uiv = glColor4uiv;
1752  qglColor4us = dllColor4us = glColor4us;
1753  qglColor4usv = dllColor4usv = glColor4usv;
1754  qglColorMask = dllColorMask = glColorMask;
1755  qglColorMaterial = dllColorMaterial = glColorMaterial;
1756  qglColorPointer = dllColorPointer = glColorPointer;
1757  qglCopyPixels = dllCopyPixels = glCopyPixels;
1758  qglCopyTexImage1D = dllCopyTexImage1D = glCopyTexImage1D;
1759  qglCopyTexImage2D = dllCopyTexImage2D = glCopyTexImage2D;
1760  qglCopyTexSubImage1D = dllCopyTexSubImage1D = glCopyTexSubImage1D;
1761  qglCopyTexSubImage2D = dllCopyTexSubImage2D = glCopyTexSubImage2D;
1762  qglCullFace = dllCullFace = glCullFace;
1763  qglDeleteLists = dllDeleteLists = glDeleteLists;
1764  qglDeleteTextures = dllDeleteTextures = glDeleteTextures;
1765  qglDepthFunc = dllDepthFunc = glDepthFunc;
1766  qglDepthMask = dllDepthMask = glDepthMask;
1767  qglDepthRange = dllDepthRange = glDepthRange;
1768  qglDisable = dllDisable = glDisable;
1769  qglDisableClientState = dllDisableClientState = glDisableClientState;
1770  qglDrawArrays = dllDrawArrays = glDrawArrays;
1771  qglDrawBuffer = dllDrawBuffer = glDrawBuffer;
1772  qglDrawElements = dllDrawElements = glDrawElements;
1773  qglDrawPixels = dllDrawPixels = glDrawPixels;
1774  qglEdgeFlag = dllEdgeFlag = glEdgeFlag;
1775  qglEdgeFlagPointer = dllEdgeFlagPointer = glEdgeFlagPointer;
1776  qglEdgeFlagv = dllEdgeFlagv = glEdgeFlagv;
1777  qglEnable = dllEnable = glEnable;
1778  qglEnableClientState = dllEnableClientState = glEnableClientState;
1779  qglEnd = dllEnd = glEnd;
1780  qglEndList = dllEndList = glEndList;
1781  qglEvalCoord1d = dllEvalCoord1d = glEvalCoord1d;
1782  qglEvalCoord1dv = dllEvalCoord1dv = glEvalCoord1dv;
1783  qglEvalCoord1f = dllEvalCoord1f = glEvalCoord1f;
1784  qglEvalCoord1fv = dllEvalCoord1fv = glEvalCoord1fv;
1785  qglEvalCoord2d = dllEvalCoord2d = glEvalCoord2d;
1786  qglEvalCoord2dv = dllEvalCoord2dv = glEvalCoord2dv;
1787  qglEvalCoord2f = dllEvalCoord2f = glEvalCoord2f;
1788  qglEvalCoord2fv = dllEvalCoord2fv = glEvalCoord2fv;
1789  qglEvalMesh1 = dllEvalMesh1 = glEvalMesh1;
1790  qglEvalMesh2 = dllEvalMesh2 = glEvalMesh2;
1791  qglEvalPoint1 = dllEvalPoint1 = glEvalPoint1;
1792  qglEvalPoint2 = dllEvalPoint2 = glEvalPoint2;
1793  qglFeedbackBuffer = dllFeedbackBuffer = glFeedbackBuffer;
1794  qglFinish = dllFinish = glFinish;
1795  qglFlush = dllFlush = glFlush;
1796  qglFogf = dllFogf = glFogf;
1797  qglFogfv = dllFogfv = glFogfv;
1798  qglFogi = dllFogi = glFogi;
1799  qglFogiv = dllFogiv = glFogiv;
1800  qglFrontFace = dllFrontFace = glFrontFace;
1801  qglFrustum = dllFrustum = glFrustum;
1802  qglGenLists = dllGenLists = ( GLuint (__stdcall * )(int) ) glGenLists;
1803  qglGenTextures = dllGenTextures = glGenTextures;
1804  qglGetBooleanv = dllGetBooleanv = glGetBooleanv;
1805  qglGetClipPlane = dllGetClipPlane = glGetClipPlane;
1806  qglGetDoublev = dllGetDoublev = glGetDoublev;
1807  qglGetError = dllGetError = ( GLenum (__stdcall * )(void) ) glGetError;
1808  qglGetFloatv = dllGetFloatv = glGetFloatv;
1809  qglGetIntegerv = dllGetIntegerv = glGetIntegerv;
1810  qglGetLightfv = dllGetLightfv = glGetLightfv;
1811  qglGetLightiv = dllGetLightiv = glGetLightiv;
1812  qglGetMapdv = dllGetMapdv = glGetMapdv;
1813  qglGetMapfv = dllGetMapfv = glGetMapfv;
1814  qglGetMapiv = dllGetMapiv = glGetMapiv;
1815  qglGetMaterialfv = dllGetMaterialfv = glGetMaterialfv;
1816  qglGetMaterialiv = dllGetMaterialiv = glGetMaterialiv;
1817  qglGetPixelMapfv = dllGetPixelMapfv = glGetPixelMapfv;
1818  qglGetPixelMapuiv = dllGetPixelMapuiv = glGetPixelMapuiv;
1819  qglGetPixelMapusv = dllGetPixelMapusv = glGetPixelMapusv;
1820  qglGetPointerv = dllGetPointerv = glGetPointerv;
1821  qglGetPolygonStipple = dllGetPolygonStipple = glGetPolygonStipple;
1823  qglGetTexEnvfv = dllGetTexEnvfv = glGetTexEnvfv;
1824  qglGetTexEnviv = dllGetTexEnviv = glGetTexEnviv;
1825  qglGetTexGendv = dllGetTexGendv = glGetTexGendv;
1826  qglGetTexGenfv = dllGetTexGenfv = glGetTexGenfv;
1827  qglGetTexGeniv = dllGetTexGeniv = glGetTexGeniv;
1828  qglGetTexImage = dllGetTexImage = glGetTexImage;
1829  qglGetTexLevelParameterfv = dllGetTexLevelParameterfv = glGetTexLevelParameterfv;
1830  qglGetTexLevelParameteriv = dllGetTexLevelParameteriv = glGetTexLevelParameteriv;
1831  qglGetTexParameterfv = dllGetTexParameterfv = glGetTexParameterfv;
1832  qglGetTexParameteriv = dllGetTexParameteriv = glGetTexParameteriv;
1833  qglHint = dllHint = glHint;
1834  qglIndexMask = dllIndexMask = glIndexMask;
1835  qglIndexPointer = dllIndexPointer = glIndexPointer;
1836  qglIndexd = dllIndexd = glIndexd;
1837  qglIndexdv = dllIndexdv = glIndexdv;
1838  qglIndexf = dllIndexf = glIndexf;
1839  qglIndexfv = dllIndexfv = glIndexfv;
1840  qglIndexi = dllIndexi = glIndexi;
1841  qglIndexiv = dllIndexiv = glIndexiv;
1842  qglIndexs = dllIndexs = glIndexs;
1843  qglIndexsv = dllIndexsv = glIndexsv;
1844  qglIndexub = dllIndexub = glIndexub;
1845  qglIndexubv = dllIndexubv = glIndexubv;
1846  qglInitNames = dllInitNames = glInitNames;
1847  qglInterleavedArrays = dllInterleavedArrays = glInterleavedArrays;
1848  qglIsEnabled = dllIsEnabled = glIsEnabled;
1849  qglIsList = dllIsList = glIsList;
1850  qglIsTexture = dllIsTexture = glIsTexture;
1851  qglLightModelf = dllLightModelf = glLightModelf;
1852  qglLightModelfv = dllLightModelfv = glLightModelfv;
1853  qglLightModeli = dllLightModeli = glLightModeli;
1854  qglLightModeliv = dllLightModeliv = glLightModeliv;
1855  qglLightf = dllLightf = glLightf;
1856  qglLightfv = dllLightfv = glLightfv;
1857  qglLighti = dllLighti = glLighti;
1858  qglLightiv = dllLightiv = glLightiv;
1859  qglLineStipple = dllLineStipple = glLineStipple;
1860  qglLineWidth = dllLineWidth = glLineWidth;
1861  qglListBase = dllListBase = glListBase;
1862  qglLoadIdentity = dllLoadIdentity = glLoadIdentity;
1863  qglLoadMatrixd = dllLoadMatrixd = glLoadMatrixd;
1864  qglLoadMatrixf = dllLoadMatrixf = glLoadMatrixf;
1865  qglLoadName = dllLoadName = glLoadName;
1866  qglLogicOp = dllLogicOp = glLogicOp;
1867  qglMap1d = dllMap1d = glMap1d;
1868  qglMap1f = dllMap1f = glMap1f;
1869  qglMap2d = dllMap2d = glMap2d;
1870  qglMap2f = dllMap2f = glMap2f;
1871  qglMapGrid1d = dllMapGrid1d = glMapGrid1d;
1872  qglMapGrid1f = dllMapGrid1f = glMapGrid1f;
1873  qglMapGrid2d = dllMapGrid2d = glMapGrid2d;
1874  qglMapGrid2f = dllMapGrid2f = glMapGrid2f;
1875  qglMaterialf = dllMaterialf = glMaterialf;
1876  qglMaterialfv = dllMaterialfv = glMaterialfv;
1877  qglMateriali = dllMateriali = glMateriali;
1878  qglMaterialiv = dllMaterialiv = glMaterialiv;
1879  qglMatrixMode = dllMatrixMode = glMatrixMode;
1880  qglMultMatrixd = dllMultMatrixd = glMultMatrixd;
1881  qglMultMatrixf = dllMultMatrixf = glMultMatrixf;
1882  qglNewList = dllNewList = glNewList;
1883  qglNormal3b = dllNormal3b = glNormal3b;
1884  qglNormal3bv = dllNormal3bv = glNormal3bv;
1885  qglNormal3d = dllNormal3d = glNormal3d;
1886  qglNormal3dv = dllNormal3dv = glNormal3dv;
1887  qglNormal3f = dllNormal3f = glNormal3f;
1888  qglNormal3fv = dllNormal3fv = glNormal3fv;
1889  qglNormal3i = dllNormal3i = glNormal3i;
1890  qglNormal3iv = dllNormal3iv = glNormal3iv;
1891  qglNormal3s = dllNormal3s = glNormal3s;
1892  qglNormal3sv = dllNormal3sv = glNormal3sv;
1893  qglNormalPointer = dllNormalPointer = glNormalPointer;
1894  qglOrtho = dllOrtho = glOrtho;
1895  qglPassThrough = dllPassThrough = glPassThrough;
1896  qglPixelMapfv = dllPixelMapfv = glPixelMapfv;
1897  qglPixelMapuiv = dllPixelMapuiv = glPixelMapuiv;
1898  qglPixelMapusv = dllPixelMapusv = glPixelMapusv;
1899  qglPixelStoref = dllPixelStoref = glPixelStoref;
1900  qglPixelStorei = dllPixelStorei = glPixelStorei;
1901  qglPixelTransferf = dllPixelTransferf = glPixelTransferf;
1902  qglPixelTransferi = dllPixelTransferi = glPixelTransferi;
1903  qglPixelZoom = dllPixelZoom = glPixelZoom;
1904  qglPointSize = dllPointSize = glPointSize;
1905  qglPolygonMode = dllPolygonMode = glPolygonMode;
1906  qglPolygonOffset = dllPolygonOffset = glPolygonOffset;
1907  qglPolygonStipple = dllPolygonStipple = glPolygonStipple;
1908  qglPopAttrib = dllPopAttrib = glPopAttrib;
1909  qglPopClientAttrib = dllPopClientAttrib = glPopClientAttrib;
1910  qglPopMatrix = dllPopMatrix = glPopMatrix;
1911  qglPopName = dllPopName = glPopName;
1912  qglPrioritizeTextures = dllPrioritizeTextures = glPrioritizeTextures;
1913  qglPushAttrib = dllPushAttrib = glPushAttrib;
1914  qglPushClientAttrib = dllPushClientAttrib = glPushClientAttrib;
1915  qglPushMatrix = dllPushMatrix = glPushMatrix;
1916  qglPushName = dllPushName = glPushName;
1917  qglRasterPos2d = dllRasterPos2d = glRasterPos2d;
1918  qglRasterPos2dv = dllRasterPos2dv = glRasterPos2dv;
1919  qglRasterPos2f = dllRasterPos2f = glRasterPos2f;
1920  qglRasterPos2fv = dllRasterPos2fv = glRasterPos2fv;
1921  qglRasterPos2i = dllRasterPos2i = glRasterPos2i;
1922  qglRasterPos2iv = dllRasterPos2iv = glRasterPos2iv;
1923  qglRasterPos2s = dllRasterPos2s = glRasterPos2s;
1924  qglRasterPos2sv = dllRasterPos2sv = glRasterPos2sv;
1925  qglRasterPos3d = dllRasterPos3d = glRasterPos3d;
1926  qglRasterPos3dv = dllRasterPos3dv = glRasterPos3dv;
1927  qglRasterPos3f = dllRasterPos3f = glRasterPos3f;
1928  qglRasterPos3fv = dllRasterPos3fv = glRasterPos3fv;
1929  qglRasterPos3i = dllRasterPos3i = glRasterPos3i;
1930  qglRasterPos3iv = dllRasterPos3iv = glRasterPos3iv;
1931  qglRasterPos3s = dllRasterPos3s = glRasterPos3s;
1932  qglRasterPos3sv = dllRasterPos3sv = glRasterPos3sv;
1933  qglRasterPos4d = dllRasterPos4d = glRasterPos4d;
1934  qglRasterPos4dv = dllRasterPos4dv = glRasterPos4dv;
1935  qglRasterPos4f = dllRasterPos4f = glRasterPos4f;
1936  qglRasterPos4fv = dllRasterPos4fv = glRasterPos4fv;
1937  qglRasterPos4i = dllRasterPos4i = glRasterPos4i;
1938  qglRasterPos4iv = dllRasterPos4iv = glRasterPos4iv;
1939  qglRasterPos4s = dllRasterPos4s = glRasterPos4s;
1940  qglRasterPos4sv = dllRasterPos4sv = glRasterPos4sv;
1941  qglReadBuffer = dllReadBuffer = glReadBuffer;
1942  qglReadPixels = dllReadPixels = glReadPixels;
1943  qglRectd = dllRectd = glRectd;
1944  qglRectdv = dllRectdv = glRectdv;
1945  qglRectf = dllRectf = glRectf;
1946  qglRectfv = dllRectfv = glRectfv;
1947  qglRecti = dllRecti = glRecti;
1948  qglRectiv = dllRectiv = glRectiv;
1949  qglRects = dllRects = glRects;
1950  qglRectsv = dllRectsv = glRectsv;
1951  qglRenderMode = dllRenderMode = glRenderMode;
1952  qglRotated = dllRotated = glRotated;
1953  qglRotatef = dllRotatef = glRotatef;
1954  qglScaled = dllScaled = glScaled;
1955  qglScalef = dllScalef = glScalef;
1956  qglScissor = dllScissor = glScissor;
1957  qglSelectBuffer = dllSelectBuffer = glSelectBuffer;
1958  qglShadeModel = dllShadeModel = glShadeModel;
1959  qglStencilFunc = dllStencilFunc = glStencilFunc;
1960  qglStencilMask = dllStencilMask = glStencilMask;
1961  qglStencilOp = dllStencilOp = glStencilOp;
1962  qglTexCoord1d = dllTexCoord1d = glTexCoord1d;
1963  qglTexCoord1dv = dllTexCoord1dv = glTexCoord1dv;
1964  qglTexCoord1f = dllTexCoord1f = glTexCoord1f;
1965  qglTexCoord1fv = dllTexCoord1fv = glTexCoord1fv;
1966  qglTexCoord1i = dllTexCoord1i = glTexCoord1i;
1967  qglTexCoord1iv = dllTexCoord1iv = glTexCoord1iv;
1968  qglTexCoord1s = dllTexCoord1s = glTexCoord1s;
1969  qglTexCoord1sv = dllTexCoord1sv = glTexCoord1sv;
1970  qglTexCoord2d = dllTexCoord2d = glTexCoord2d;
1971  qglTexCoord2dv = dllTexCoord2dv = glTexCoord2dv;
1972  qglTexCoord2f = dllTexCoord2f = glTexCoord2f;
1973  qglTexCoord2fv = dllTexCoord2fv = glTexCoord2fv;
1974  qglTexCoord2i = dllTexCoord2i = glTexCoord2i;
1975  qglTexCoord2iv = dllTexCoord2iv = glTexCoord2iv;
1976  qglTexCoord2s = dllTexCoord2s = glTexCoord2s;
1977  qglTexCoord2sv = dllTexCoord2sv = glTexCoord2sv;
1978  qglTexCoord3d = dllTexCoord3d = glTexCoord3d;
1979  qglTexCoord3dv = dllTexCoord3dv = glTexCoord3dv;
1980  qglTexCoord3f = dllTexCoord3f = glTexCoord3f;
1981  qglTexCoord3fv = dllTexCoord3fv = glTexCoord3fv;
1982  qglTexCoord3i = dllTexCoord3i = glTexCoord3i;
1983  qglTexCoord3iv = dllTexCoord3iv = glTexCoord3iv;
1984  qglTexCoord3s = dllTexCoord3s = glTexCoord3s;
1985  qglTexCoord3sv = dllTexCoord3sv = glTexCoord3sv;
1986  qglTexCoord4d = dllTexCoord4d = glTexCoord4d;
1987  qglTexCoord4dv = dllTexCoord4dv = glTexCoord4dv;
1988  qglTexCoord4f = dllTexCoord4f = glTexCoord4f;
1989  qglTexCoord4fv = dllTexCoord4fv = glTexCoord4fv;
1990  qglTexCoord4i = dllTexCoord4i = glTexCoord4i;
1991  qglTexCoord4iv = dllTexCoord4iv = glTexCoord4iv;
1992  qglTexCoord4s = dllTexCoord4s = glTexCoord4s;
1993  qglTexCoord4sv = dllTexCoord4sv = glTexCoord4sv;
1994  qglTexCoordPointer = dllTexCoordPointer = glTexCoordPointer;
1995  qglTexEnvf = dllTexEnvf = glTexEnvf;
1996  qglTexEnvfv = dllTexEnvfv = glTexEnvfv;
1997  qglTexEnvi = dllTexEnvi = glTexEnvi;
1998  qglTexEnviv = dllTexEnviv = glTexEnviv;
1999  qglTexGend = dllTexGend = glTexGend;
2000  qglTexGendv = dllTexGendv = glTexGendv;
2001  qglTexGenf = dllTexGenf = glTexGenf;
2002  qglTexGenfv = dllTexGenfv = glTexGenfv;
2003  qglTexGeni = dllTexGeni = glTexGeni;
2004  qglTexGeniv = dllTexGeniv = glTexGeniv;
2005  qglTexImage1D = dllTexImage1D = glTexImage1D;
2006  qglTexImage2D = dllTexImage2D = glTexImage2D;
2007  qglTexParameterf = dllTexParameterf = glTexParameterf;
2008  qglTexParameterfv = dllTexParameterfv = glTexParameterfv;
2009  qglTexParameteri = dllTexParameteri = glTexParameteri;
2010  qglTexParameteriv = dllTexParameteriv = glTexParameteriv;
2011  qglTexSubImage1D = dllTexSubImage1D = glTexSubImage1D;
2012  qglTexSubImage2D = dllTexSubImage2D = glTexSubImage2D;
2013  qglTranslated = dllTranslated = glTranslated;
2014  qglTranslatef = dllTranslatef = glTranslatef;
2015  qglVertex2d = dllVertex2d = glVertex2d;
2016  qglVertex2dv = dllVertex2dv = glVertex2dv;
2017  qglVertex2f = dllVertex2f = glVertex2f;
2018  qglVertex2fv = dllVertex2fv = glVertex2fv;
2019  qglVertex2i = dllVertex2i = glVertex2i;
2020  qglVertex2iv = dllVertex2iv = glVertex2iv;
2021  qglVertex2s = dllVertex2s = glVertex2s;
2022  qglVertex2sv = dllVertex2sv = glVertex2sv;
2023  qglVertex3d = dllVertex3d = glVertex3d;
2024  qglVertex3dv = dllVertex3dv = glVertex3dv;
2025  qglVertex3f = dllVertex3f = glVertex3f;
2026  qglVertex3fv = dllVertex3fv = glVertex3fv;
2027  qglVertex3i = dllVertex3i = glVertex3i;
2028  qglVertex3iv = dllVertex3iv = glVertex3iv;
2029  qglVertex3s = dllVertex3s = glVertex3s;
2030  qglVertex3sv = dllVertex3sv = glVertex3sv;
2031  qglVertex4d = dllVertex4d = glVertex4d;
2032  qglVertex4dv = dllVertex4dv = glVertex4dv;
2033  qglVertex4f = dllVertex4f = glVertex4f;
2034  qglVertex4fv = dllVertex4fv = glVertex4fv;
2035  qglVertex4i = dllVertex4i = glVertex4i;
2036  qglVertex4iv = dllVertex4iv = glVertex4iv;
2037  qglVertex4s = dllVertex4s = glVertex4s;
2038  qglVertex4sv = dllVertex4sv = glVertex4sv;
2039  qglVertexPointer = dllVertexPointer = glVertexPointer;
2040  qglViewport = dllViewport = glViewport;
2041 
2042  qwglCopyContext = wglCopyContext;
2043  qwglCreateContext = wglCreateContext;
2044  qwglCreateLayerContext = wglCreateLayerContext;
2045  qwglDeleteContext = wglDeleteContext;
2046  qwglDescribeLayerPlane = wglDescribeLayerPlane;
2047  qwglGetCurrentContext = wglGetCurrentContext;
2048  qwglGetCurrentDC = wglGetCurrentDC;
2049  qwglGetLayerPaletteEntries = wglGetLayerPaletteEntries;
2050  qwglGetProcAddress = wglGetProcAddress;
2051  qwglMakeCurrent = wglMakeCurrent;
2052  qwglRealizeLayerPalette = wglRealizeLayerPalette;
2053  qwglSetLayerPaletteEntries = wglSetLayerPaletteEntries;
2054  qwglShareLists = wglShareLists;
2055  qwglSwapLayerBuffers = wglSwapLayerBuffers;
2056  qwglUseFontBitmaps = wglUseFontBitmapsA;
2057  qwglUseFontOutlines = wglUseFontOutlinesA;
2058 
2059  qwglChoosePixelFormat = ChoosePixelFormat;
2060  qwglDescribePixelFormat = DescribePixelFormat;
2061  qwglGetPixelFormat = GetPixelFormat;
2062  qwglSetPixelFormat = SetPixelFormat;
2063  qwglSwapBuffers = SwapBuffers;
2064 
2065  qglActiveTextureARB = 0;
2066  qglClientActiveTextureARB = 0;
2067  qglMultiTexCoord2fARB = 0;
2068 
2069  return true;
2070 }
2071 
2072 
2073 /*
2074 ==================
2075 GLimp_EnableLogging
2076 
2077 ==================
2078 */
2079 void GLimp_EnableLogging( bool enable ) {
2080  static bool isEnabled;
2081  static int initialFrames;
2082  static char ospath[ MAX_OSPATH ];
2083 
2084  // return if we're already active
2085  if ( isEnabled && enable ) {
2086  // decrement log counter and stop if it has reached 0
2088  if ( r_logFile.GetInteger() ) {
2089  return;
2090  }
2091  common->Printf( "closing logfile '%s' after %i frames.\n", ospath, initialFrames );
2092  enable = false;
2093 
2094  fclose( tr.logFile );
2095  tr.logFile = NULL;
2096 
2097  }
2098 
2099  // return if we're already disabled
2100  if ( !enable && !isEnabled ) {
2101  return;
2102  }
2103 
2104  isEnabled = enable;
2105 
2106  if ( enable ) {
2107  if ( !tr.logFile ) {
2108  struct tm *newtime;
2109  ID_TIME_T aclock;
2110  idStr qpath;
2111  int i;
2112  const char *path;
2113 
2114  initialFrames = r_logFile.GetInteger();
2115 
2116  // scan for an unused filename
2117  for ( i = 0 ; i < 9999 ; i++ ) {
2118  sprintf( qpath, "renderlog_%i.txt", i );
2119  if ( fileSystem->ReadFile( qpath, NULL, NULL ) == -1 ) {
2120  break; // use this name
2121  }
2122  }
2123 
2124  path = fileSystem->RelativePathToOSPath( qpath, "fs_savepath" );
2125  idStr::Copynz( ospath, path, sizeof( ospath ) );
2126  tr.logFile = fopen( ospath, "wt" );
2127 
2128  // write the time out to the top of the file
2129  time( &aclock );
2130  newtime = localtime( &aclock );
2131  fprintf( tr.logFile, "// %s", asctime( newtime ) );
2132  fprintf( tr.logFile, "// %s\n\n", cvarSystem->GetCVarString( "si_version" ) );
2133  }
2134 
2135  qglAccum = logAccum;
2136  qglAlphaFunc = logAlphaFunc;
2137  qglAreTexturesResident = logAreTexturesResident;
2138  qglArrayElement = logArrayElement;
2139  qglBegin = logBegin;
2140  qglBindTexture = logBindTexture;
2141  qglBitmap = logBitmap;
2142  qglBlendFunc = logBlendFunc;
2143  qglCallList = logCallList;
2144  qglCallLists = logCallLists;
2145  qglClear = logClear;
2146  qglClearAccum = logClearAccum;
2147  qglClearColor = logClearColor;
2148  qglClearDepth = logClearDepth;
2149  qglClearIndex = logClearIndex;
2150  qglClearStencil = logClearStencil;
2151  qglClipPlane = logClipPlane;
2152  qglColor3b = logColor3b;
2153  qglColor3bv = logColor3bv;
2154  qglColor3d = logColor3d;
2155  qglColor3dv = logColor3dv;
2156  qglColor3f = logColor3f;
2157  qglColor3fv = logColor3fv;
2158  qglColor3i = logColor3i;
2159  qglColor3iv = logColor3iv;
2160  qglColor3s = logColor3s;
2161  qglColor3sv = logColor3sv;
2162  qglColor3ub = logColor3ub;
2163  qglColor3ubv = logColor3ubv;
2164  qglColor3ui = logColor3ui;
2165  qglColor3uiv = logColor3uiv;
2166  qglColor3us = logColor3us;
2167  qglColor3usv = logColor3usv;
2168  qglColor4b = logColor4b;
2169  qglColor4bv = logColor4bv;
2170  qglColor4d = logColor4d;
2171  qglColor4dv = logColor4dv;
2172  qglColor4f = logColor4f;
2173  qglColor4fv = logColor4fv;
2174  qglColor4i = logColor4i;
2175  qglColor4iv = logColor4iv;
2176  qglColor4s = logColor4s;
2177  qglColor4sv = logColor4sv;
2178  qglColor4ub = logColor4ub;
2179  qglColor4ubv = logColor4ubv;
2180  qglColor4ui = logColor4ui;
2181  qglColor4uiv = logColor4uiv;
2182  qglColor4us = logColor4us;
2183  qglColor4usv = logColor4usv;
2184  qglColorMask = logColorMask;
2185  qglColorMaterial = logColorMaterial;
2186  qglColorPointer = logColorPointer;
2187  qglCopyPixels = logCopyPixels;
2188  qglCopyTexImage1D = logCopyTexImage1D;
2189  qglCopyTexImage2D = logCopyTexImage2D;
2190  qglCopyTexSubImage1D = logCopyTexSubImage1D;
2191  qglCopyTexSubImage2D = logCopyTexSubImage2D;
2192  qglCullFace = logCullFace;
2193  qglDeleteLists = logDeleteLists ;
2194  qglDeleteTextures = logDeleteTextures ;
2195  qglDepthFunc = logDepthFunc ;
2196  qglDepthMask = logDepthMask ;
2197  qglDepthRange = logDepthRange ;
2198  qglDisable = logDisable ;
2199  qglDisableClientState = logDisableClientState ;
2200  qglDrawArrays = logDrawArrays ;
2201  qglDrawBuffer = logDrawBuffer ;
2202  qglDrawElements = logDrawElements ;
2203  qglDrawPixels = logDrawPixels ;
2204  qglEdgeFlag = logEdgeFlag ;
2205  qglEdgeFlagPointer = logEdgeFlagPointer ;
2206  qglEdgeFlagv = logEdgeFlagv ;
2207  qglEnable = logEnable ;
2208  qglEnableClientState = logEnableClientState ;
2209  qglEnd = logEnd ;
2210  qglEndList = logEndList ;
2211  qglEvalCoord1d = logEvalCoord1d ;
2212  qglEvalCoord1dv = logEvalCoord1dv ;
2213  qglEvalCoord1f = logEvalCoord1f ;
2214  qglEvalCoord1fv = logEvalCoord1fv ;
2215  qglEvalCoord2d = logEvalCoord2d ;
2216  qglEvalCoord2dv = logEvalCoord2dv ;
2217  qglEvalCoord2f = logEvalCoord2f ;
2218  qglEvalCoord2fv = logEvalCoord2fv ;
2219  qglEvalMesh1 = logEvalMesh1 ;
2220  qglEvalMesh2 = logEvalMesh2 ;
2221  qglEvalPoint1 = logEvalPoint1 ;
2222  qglEvalPoint2 = logEvalPoint2 ;
2223  qglFeedbackBuffer = logFeedbackBuffer ;
2224  qglFinish = logFinish ;
2225  qglFlush = logFlush ;
2226  qglFogf = logFogf ;
2227  qglFogfv = logFogfv ;
2228  qglFogi = logFogi ;
2229  qglFogiv = logFogiv ;
2230  qglFrontFace = logFrontFace ;
2231  qglFrustum = logFrustum ;
2232  qglGenLists = logGenLists ;
2233  qglGenTextures = logGenTextures ;
2234  qglGetBooleanv = logGetBooleanv ;
2235  qglGetClipPlane = logGetClipPlane ;
2236  qglGetDoublev = logGetDoublev ;
2237  qglGetError = logGetError ;
2238  qglGetFloatv = logGetFloatv ;
2239  qglGetIntegerv = logGetIntegerv ;
2240  qglGetLightfv = logGetLightfv ;
2241  qglGetLightiv = logGetLightiv ;
2242  qglGetMapdv = logGetMapdv ;
2243  qglGetMapfv = logGetMapfv ;
2244  qglGetMapiv = logGetMapiv ;
2245  qglGetMaterialfv = logGetMaterialfv ;
2246  qglGetMaterialiv = logGetMaterialiv ;
2247  qglGetPixelMapfv = logGetPixelMapfv ;
2248  qglGetPixelMapuiv = logGetPixelMapuiv ;
2249  qglGetPixelMapusv = logGetPixelMapusv ;
2250  qglGetPointerv = logGetPointerv ;
2251  qglGetPolygonStipple = logGetPolygonStipple ;
2252  qglGetString = logGetString ;
2253  qglGetTexEnvfv = logGetTexEnvfv ;
2254  qglGetTexEnviv = logGetTexEnviv ;
2255  qglGetTexGendv = logGetTexGendv ;
2256  qglGetTexGenfv = logGetTexGenfv ;
2257  qglGetTexGeniv = logGetTexGeniv ;
2258  qglGetTexImage = logGetTexImage ;
2259  qglGetTexLevelParameterfv = logGetTexLevelParameterfv ;
2260  qglGetTexLevelParameteriv = logGetTexLevelParameteriv ;
2261  qglGetTexParameterfv = logGetTexParameterfv ;
2262  qglGetTexParameteriv = logGetTexParameteriv ;
2263  qglHint = logHint ;
2264  qglIndexMask = logIndexMask ;
2265  qglIndexPointer = logIndexPointer ;
2266  qglIndexd = logIndexd ;
2267  qglIndexdv = logIndexdv ;
2268  qglIndexf = logIndexf ;
2269  qglIndexfv = logIndexfv ;
2270  qglIndexi = logIndexi ;
2271  qglIndexiv = logIndexiv ;
2272  qglIndexs = logIndexs ;
2273  qglIndexsv = logIndexsv ;
2274  qglIndexub = logIndexub ;
2275  qglIndexubv = logIndexubv ;
2276  qglInitNames = logInitNames ;
2277  qglInterleavedArrays = logInterleavedArrays ;
2278  qglIsEnabled = logIsEnabled ;
2279  qglIsList = logIsList ;
2280  qglIsTexture = logIsTexture ;
2281  qglLightModelf = logLightModelf ;
2282  qglLightModelfv = logLightModelfv ;
2283  qglLightModeli = logLightModeli ;
2284  qglLightModeliv = logLightModeliv ;
2285  qglLightf = logLightf ;
2286  qglLightfv = logLightfv ;
2287  qglLighti = logLighti ;
2288  qglLightiv = logLightiv ;
2289  qglLineStipple = logLineStipple ;
2290  qglLineWidth = logLineWidth ;
2291  qglListBase = logListBase ;
2292  qglLoadIdentity = logLoadIdentity ;
2293  qglLoadMatrixd = logLoadMatrixd ;
2294  qglLoadMatrixf = logLoadMatrixf ;
2295  qglLoadName = logLoadName ;
2296  qglLogicOp = logLogicOp ;
2297  qglMap1d = logMap1d ;
2298  qglMap1f = logMap1f ;
2299  qglMap2d = logMap2d ;
2300  qglMap2f = logMap2f ;
2301  qglMapGrid1d = logMapGrid1d ;
2302  qglMapGrid1f = logMapGrid1f ;
2303  qglMapGrid2d = logMapGrid2d ;
2304  qglMapGrid2f = logMapGrid2f ;
2305  qglMaterialf = logMaterialf ;
2306  qglMaterialfv = logMaterialfv ;
2307  qglMateriali = logMateriali ;
2308  qglMaterialiv = logMaterialiv ;
2309  qglMatrixMode = logMatrixMode ;
2310  qglMultMatrixd = logMultMatrixd ;
2311  qglMultMatrixf = logMultMatrixf ;
2312  qglNewList = logNewList ;
2313  qglNormal3b = logNormal3b ;
2314  qglNormal3bv = logNormal3bv ;
2315  qglNormal3d = logNormal3d ;
2316  qglNormal3dv = logNormal3dv ;
2317  qglNormal3f = logNormal3f ;
2318  qglNormal3fv = logNormal3fv ;
2319  qglNormal3i = logNormal3i ;
2320  qglNormal3iv = logNormal3iv ;
2321  qglNormal3s = logNormal3s ;
2322  qglNormal3sv = logNormal3sv ;
2323  qglNormalPointer = logNormalPointer ;
2324  qglOrtho = logOrtho ;
2325  qglPassThrough = logPassThrough ;
2326  qglPixelMapfv = logPixelMapfv ;
2327  qglPixelMapuiv = logPixelMapuiv ;
2328  qglPixelMapusv = logPixelMapusv ;
2329  qglPixelStoref = logPixelStoref ;
2330  qglPixelStorei = logPixelStorei ;
2331  qglPixelTransferf = logPixelTransferf ;
2332  qglPixelTransferi = logPixelTransferi ;
2333  qglPixelZoom = logPixelZoom ;
2334  qglPointSize = logPointSize ;
2335  qglPolygonMode = logPolygonMode ;
2336  qglPolygonOffset = logPolygonOffset ;
2337  qglPolygonStipple = logPolygonStipple ;
2338  qglPopAttrib = logPopAttrib ;
2339  qglPopClientAttrib = logPopClientAttrib ;
2340  qglPopMatrix = logPopMatrix ;
2341  qglPopName = logPopName ;
2342  qglPrioritizeTextures = logPrioritizeTextures ;
2343  qglPushAttrib = logPushAttrib ;
2344  qglPushClientAttrib = logPushClientAttrib ;
2345  qglPushMatrix = logPushMatrix ;
2346  qglPushName = logPushName ;
2347  qglRasterPos2d = logRasterPos2d ;
2348  qglRasterPos2dv = logRasterPos2dv ;
2349  qglRasterPos2f = logRasterPos2f ;
2350  qglRasterPos2fv = logRasterPos2fv ;
2351  qglRasterPos2i = logRasterPos2i ;
2352  qglRasterPos2iv = logRasterPos2iv ;
2353  qglRasterPos2s = logRasterPos2s ;
2354  qglRasterPos2sv = logRasterPos2sv ;
2355  qglRasterPos3d = logRasterPos3d ;
2356  qglRasterPos3dv = logRasterPos3dv ;
2357  qglRasterPos3f = logRasterPos3f ;
2358  qglRasterPos3fv = logRasterPos3fv ;
2359  qglRasterPos3i = logRasterPos3i ;
2360  qglRasterPos3iv = logRasterPos3iv ;
2361  qglRasterPos3s = logRasterPos3s ;
2362  qglRasterPos3sv = logRasterPos3sv ;
2363  qglRasterPos4d = logRasterPos4d ;
2364  qglRasterPos4dv = logRasterPos4dv ;
2365  qglRasterPos4f = logRasterPos4f ;
2366  qglRasterPos4fv = logRasterPos4fv ;
2367  qglRasterPos4i = logRasterPos4i ;
2368  qglRasterPos4iv = logRasterPos4iv ;
2369  qglRasterPos4s = logRasterPos4s ;
2370  qglRasterPos4sv = logRasterPos4sv ;
2371  qglReadBuffer = logReadBuffer ;
2372  qglReadPixels = logReadPixels ;
2373  qglRectd = logRectd ;
2374  qglRectdv = logRectdv ;
2375  qglRectf = logRectf ;
2376  qglRectfv = logRectfv ;
2377  qglRecti = logRecti ;
2378  qglRectiv = logRectiv ;
2379  qglRects = logRects ;
2380  qglRectsv = logRectsv ;
2381  qglRenderMode = logRenderMode ;
2382  qglRotated = logRotated ;
2383  qglRotatef = logRotatef ;
2384  qglScaled = logScaled ;
2385  qglScalef = logScalef ;
2386  qglScissor = logScissor ;
2387  qglSelectBuffer = logSelectBuffer ;
2388  qglShadeModel = logShadeModel ;
2389  qglStencilFunc = logStencilFunc ;
2390  qglStencilMask = logStencilMask ;
2391  qglStencilOp = logStencilOp ;
2392  qglTexCoord1d = logTexCoord1d ;
2393  qglTexCoord1dv = logTexCoord1dv ;
2394  qglTexCoord1f = logTexCoord1f ;
2395  qglTexCoord1fv = logTexCoord1fv ;
2396  qglTexCoord1i = logTexCoord1i ;
2397  qglTexCoord1iv = logTexCoord1iv ;
2398  qglTexCoord1s = logTexCoord1s ;
2399  qglTexCoord1sv = logTexCoord1sv ;
2400  qglTexCoord2d = logTexCoord2d ;
2401  qglTexCoord2dv = logTexCoord2dv ;
2402  qglTexCoord2f = logTexCoord2f ;
2403  qglTexCoord2fv = logTexCoord2fv ;
2404  qglTexCoord2i = logTexCoord2i ;
2405  qglTexCoord2iv = logTexCoord2iv ;
2406  qglTexCoord2s = logTexCoord2s ;
2407  qglTexCoord2sv = logTexCoord2sv ;
2408  qglTexCoord3d = logTexCoord3d ;
2409  qglTexCoord3dv = logTexCoord3dv ;
2410  qglTexCoord3f = logTexCoord3f ;
2411  qglTexCoord3fv = logTexCoord3fv ;
2412  qglTexCoord3i = logTexCoord3i ;
2413  qglTexCoord3iv = logTexCoord3iv ;
2414  qglTexCoord3s = logTexCoord3s ;
2415  qglTexCoord3sv = logTexCoord3sv ;
2416  qglTexCoord4d = logTexCoord4d ;
2417  qglTexCoord4dv = logTexCoord4dv ;
2418  qglTexCoord4f = logTexCoord4f ;
2419  qglTexCoord4fv = logTexCoord4fv ;
2420  qglTexCoord4i = logTexCoord4i ;
2421  qglTexCoord4iv = logTexCoord4iv ;
2422  qglTexCoord4s = logTexCoord4s ;
2423  qglTexCoord4sv = logTexCoord4sv ;
2424  qglTexCoordPointer = logTexCoordPointer ;
2425  qglTexEnvf = logTexEnvf ;
2426  qglTexEnvfv = logTexEnvfv ;
2427  qglTexEnvi = logTexEnvi ;
2428  qglTexEnviv = logTexEnviv ;
2429  qglTexGend = logTexGend ;
2430  qglTexGendv = logTexGendv ;
2431  qglTexGenf = logTexGenf ;
2432  qglTexGenfv = logTexGenfv ;
2433  qglTexGeni = logTexGeni ;
2434  qglTexGeniv = logTexGeniv ;
2435  qglTexImage1D = logTexImage1D ;
2436  qglTexImage2D = logTexImage2D ;
2437  qglTexParameterf = logTexParameterf ;
2438  qglTexParameterfv = logTexParameterfv ;
2439  qglTexParameteri = logTexParameteri ;
2440  qglTexParameteriv = logTexParameteriv ;
2441  qglTexSubImage1D = logTexSubImage1D ;
2442  qglTexSubImage2D = logTexSubImage2D ;
2443  qglTranslated = logTranslated ;
2444  qglTranslatef = logTranslatef ;
2445  qglVertex2d = logVertex2d ;
2446  qglVertex2dv = logVertex2dv ;
2447  qglVertex2f = logVertex2f ;
2448  qglVertex2fv = logVertex2fv ;
2449  qglVertex2i = logVertex2i ;
2450  qglVertex2iv = logVertex2iv ;
2451  qglVertex2s = logVertex2s ;
2452  qglVertex2sv = logVertex2sv ;
2453  qglVertex3d = logVertex3d ;
2454  qglVertex3dv = logVertex3dv ;
2455  qglVertex3f = logVertex3f ;
2456  qglVertex3fv = logVertex3fv ;
2457  qglVertex3i = logVertex3i ;
2458  qglVertex3iv = logVertex3iv ;
2459  qglVertex3s = logVertex3s ;
2460  qglVertex3sv = logVertex3sv ;
2461  qglVertex4d = logVertex4d ;
2462  qglVertex4dv = logVertex4dv ;
2463  qglVertex4f = logVertex4f ;
2464  qglVertex4fv = logVertex4fv ;
2465  qglVertex4i = logVertex4i ;
2466  qglVertex4iv = logVertex4iv ;
2467  qglVertex4s = logVertex4s ;
2468  qglVertex4sv = logVertex4sv ;
2469  qglVertexPointer = logVertexPointer ;
2470  qglViewport = logViewport ;
2471  }
2472  else
2473  {
2474  qglAccum = dllAccum;
2475  qglAlphaFunc = dllAlphaFunc;
2476  qglAreTexturesResident = dllAreTexturesResident;
2477  qglArrayElement = dllArrayElement;
2478  qglBegin = dllBegin;
2479  qglBindTexture = dllBindTexture;
2480  qglBitmap = dllBitmap;
2481  qglBlendFunc = dllBlendFunc;
2482  qglCallList = dllCallList;
2483  qglCallLists = dllCallLists;
2484  qglClear = dllClear;
2485  qglClearAccum = dllClearAccum;
2486  qglClearColor = dllClearColor;
2487  qglClearDepth = dllClearDepth;
2488  qglClearIndex = dllClearIndex;
2489  qglClearStencil = dllClearStencil;
2490  qglClipPlane = dllClipPlane;
2491  qglColor3b = dllColor3b;
2492  qglColor3bv = dllColor3bv;
2493  qglColor3d = dllColor3d;
2494  qglColor3dv = dllColor3dv;
2495  qglColor3f = dllColor3f;
2496  qglColor3fv = dllColor3fv;
2497  qglColor3i = dllColor3i;
2498  qglColor3iv = dllColor3iv;
2499  qglColor3s = dllColor3s;
2500  qglColor3sv = dllColor3sv;
2501  qglColor3ub = dllColor3ub;
2502  qglColor3ubv = dllColor3ubv;
2503  qglColor3ui = dllColor3ui;
2504  qglColor3uiv = dllColor3uiv;
2505  qglColor3us = dllColor3us;
2506  qglColor3usv = dllColor3usv;
2507  qglColor4b = dllColor4b;
2508  qglColor4bv = dllColor4bv;
2509  qglColor4d = dllColor4d;
2510  qglColor4dv = dllColor4dv;
2511  qglColor4f = dllColor4f;
2512  qglColor4fv = dllColor4fv;
2513  qglColor4i = dllColor4i;
2514  qglColor4iv = dllColor4iv;
2515  qglColor4s = dllColor4s;
2516  qglColor4sv = dllColor4sv;
2517  qglColor4ub = dllColor4ub;
2518  qglColor4ubv = dllColor4ubv;
2519  qglColor4ui = dllColor4ui;
2520  qglColor4uiv = dllColor4uiv;
2521  qglColor4us = dllColor4us;
2522  qglColor4usv = dllColor4usv;
2523  qglColorMask = dllColorMask;
2524  qglColorMaterial = dllColorMaterial;
2525  qglColorPointer = dllColorPointer;
2526  qglCopyPixels = dllCopyPixels;
2527  qglCopyTexImage1D = dllCopyTexImage1D;
2528  qglCopyTexImage2D = dllCopyTexImage2D;
2529  qglCopyTexSubImage1D = dllCopyTexSubImage1D;
2530  qglCopyTexSubImage2D = dllCopyTexSubImage2D;
2531  qglCullFace = dllCullFace;
2532  qglDeleteLists = dllDeleteLists ;
2533  qglDeleteTextures = dllDeleteTextures ;
2534  qglDepthFunc = dllDepthFunc ;
2535  qglDepthMask = dllDepthMask ;
2536  qglDepthRange = dllDepthRange ;
2537  qglDisable = dllDisable ;
2538  qglDisableClientState = dllDisableClientState ;
2539  qglDrawArrays = dllDrawArrays ;
2540  qglDrawBuffer = dllDrawBuffer ;
2541  qglDrawElements = dllDrawElements ;
2542  qglDrawPixels = dllDrawPixels ;
2543  qglEdgeFlag = dllEdgeFlag ;
2544  qglEdgeFlagPointer = dllEdgeFlagPointer ;
2545  qglEdgeFlagv = dllEdgeFlagv ;
2546  qglEnable = dllEnable ;
2547  qglEnableClientState = dllEnableClientState ;
2548  qglEnd = dllEnd ;
2549  qglEndList = dllEndList ;
2550  qglEvalCoord1d = dllEvalCoord1d ;
2551  qglEvalCoord1dv = dllEvalCoord1dv ;
2552  qglEvalCoord1f = dllEvalCoord1f ;
2553  qglEvalCoord1fv = dllEvalCoord1fv ;
2554  qglEvalCoord2d = dllEvalCoord2d ;
2555  qglEvalCoord2dv = dllEvalCoord2dv ;
2556  qglEvalCoord2f = dllEvalCoord2f ;
2557  qglEvalCoord2fv = dllEvalCoord2fv ;
2558  qglEvalMesh1 = dllEvalMesh1 ;
2559  qglEvalMesh2 = dllEvalMesh2 ;
2560  qglEvalPoint1 = dllEvalPoint1 ;
2561  qglEvalPoint2 = dllEvalPoint2 ;
2562  qglFeedbackBuffer = dllFeedbackBuffer ;
2563  qglFinish = dllFinish ;
2564  qglFlush = dllFlush ;
2565  qglFogf = dllFogf ;
2566  qglFogfv = dllFogfv ;
2567  qglFogi = dllFogi ;
2568  qglFogiv = dllFogiv ;
2569  qglFrontFace = dllFrontFace ;
2570  qglFrustum = dllFrustum ;
2571  qglGenLists = dllGenLists ;
2572  qglGenTextures = dllGenTextures ;
2573  qglGetBooleanv = dllGetBooleanv ;
2574  qglGetClipPlane = dllGetClipPlane ;
2575  qglGetDoublev = dllGetDoublev ;
2576  qglGetError = dllGetError ;
2577  qglGetFloatv = dllGetFloatv ;
2578  qglGetIntegerv = dllGetIntegerv ;
2579  qglGetLightfv = dllGetLightfv ;
2580  qglGetLightiv = dllGetLightiv ;
2581  qglGetMapdv = dllGetMapdv ;
2582  qglGetMapfv = dllGetMapfv ;
2583  qglGetMapiv = dllGetMapiv ;
2584  qglGetMaterialfv = dllGetMaterialfv ;
2585  qglGetMaterialiv = dllGetMaterialiv ;
2586  qglGetPixelMapfv = dllGetPixelMapfv ;
2587  qglGetPixelMapuiv = dllGetPixelMapuiv ;
2588  qglGetPixelMapusv = dllGetPixelMapusv ;
2589  qglGetPointerv = dllGetPointerv ;
2590  qglGetPolygonStipple = dllGetPolygonStipple ;
2592  qglGetTexEnvfv = dllGetTexEnvfv ;
2593  qglGetTexEnviv = dllGetTexEnviv ;
2594  qglGetTexGendv = dllGetTexGendv ;
2595  qglGetTexGenfv = dllGetTexGenfv ;
2596  qglGetTexGeniv = dllGetTexGeniv ;
2597  qglGetTexImage = dllGetTexImage ;
2598  qglGetTexLevelParameterfv = dllGetTexLevelParameterfv ;
2599  qglGetTexLevelParameteriv = dllGetTexLevelParameteriv ;
2600  qglGetTexParameterfv = dllGetTexParameterfv ;
2601  qglGetTexParameteriv = dllGetTexParameteriv ;
2602  qglHint = dllHint ;
2603  qglIndexMask = dllIndexMask ;
2604  qglIndexPointer = dllIndexPointer ;
2605  qglIndexd = dllIndexd ;
2606  qglIndexdv = dllIndexdv ;
2607  qglIndexf = dllIndexf ;
2608  qglIndexfv = dllIndexfv ;
2609  qglIndexi = dllIndexi ;
2610  qglIndexiv = dllIndexiv ;
2611  qglIndexs = dllIndexs ;
2612  qglIndexsv = dllIndexsv ;
2613  qglIndexub = dllIndexub ;
2614  qglIndexubv = dllIndexubv ;
2615  qglInitNames = dllInitNames ;
2616  qglInterleavedArrays = dllInterleavedArrays ;
2617  qglIsEnabled = dllIsEnabled ;
2618  qglIsList = dllIsList ;
2619  qglIsTexture = dllIsTexture ;
2620  qglLightModelf = dllLightModelf ;
2621  qglLightModelfv = dllLightModelfv ;
2622  qglLightModeli = dllLightModeli ;
2623  qglLightModeliv = dllLightModeliv ;
2624  qglLightf = dllLightf ;
2625  qglLightfv = dllLightfv ;
2626  qglLighti = dllLighti ;
2627  qglLightiv = dllLightiv ;
2628  qglLineStipple = dllLineStipple ;
2629  qglLineWidth = dllLineWidth ;
2630  qglListBase = dllListBase ;
2631  qglLoadIdentity = dllLoadIdentity ;
2632  qglLoadMatrixd = dllLoadMatrixd ;
2633  qglLoadMatrixf = dllLoadMatrixf ;
2634  qglLoadName = dllLoadName ;
2635  qglLogicOp = dllLogicOp ;
2636  qglMap1d = dllMap1d ;
2637  qglMap1f = dllMap1f ;
2638  qglMap2d = dllMap2d ;
2639  qglMap2f = dllMap2f ;
2640  qglMapGrid1d = dllMapGrid1d ;
2641  qglMapGrid1f = dllMapGrid1f ;
2642  qglMapGrid2d = dllMapGrid2d ;
2643  qglMapGrid2f = dllMapGrid2f ;
2644  qglMaterialf = dllMaterialf ;
2645  qglMaterialfv = dllMaterialfv ;
2646  qglMateriali = dllMateriali ;
2647  qglMaterialiv = dllMaterialiv ;
2648  qglMatrixMode = dllMatrixMode ;
2649  qglMultMatrixd = dllMultMatrixd ;
2650  qglMultMatrixf = dllMultMatrixf ;
2651  qglNewList = dllNewList ;
2652  qglNormal3b = dllNormal3b ;
2653  qglNormal3bv = dllNormal3bv ;
2654  qglNormal3d = dllNormal3d ;
2655  qglNormal3dv = dllNormal3dv ;
2656  qglNormal3f = dllNormal3f ;
2657  qglNormal3fv = dllNormal3fv ;
2658  qglNormal3i = dllNormal3i ;
2659  qglNormal3iv = dllNormal3iv ;
2660  qglNormal3s = dllNormal3s ;
2661  qglNormal3sv = dllNormal3sv ;
2662  qglNormalPointer = dllNormalPointer ;
2663  qglOrtho = dllOrtho ;
2664  qglPassThrough = dllPassThrough ;
2665  qglPixelMapfv = dllPixelMapfv ;
2666  qglPixelMapuiv = dllPixelMapuiv ;
2667  qglPixelMapusv = dllPixelMapusv ;
2668  qglPixelStoref = dllPixelStoref ;
2669  qglPixelStorei = dllPixelStorei ;
2670  qglPixelTransferf = dllPixelTransferf ;
2671  qglPixelTransferi = dllPixelTransferi ;
2672  qglPixelZoom = dllPixelZoom ;
2673  qglPointSize = dllPointSize ;
2674  qglPolygonMode = dllPolygonMode ;
2675  qglPolygonOffset = dllPolygonOffset ;
2676  qglPolygonStipple = dllPolygonStipple ;
2677  qglPopAttrib = dllPopAttrib ;
2678  qglPopClientAttrib = dllPopClientAttrib ;
2679  qglPopMatrix = dllPopMatrix ;
2680  qglPopName = dllPopName ;
2681  qglPrioritizeTextures = dllPrioritizeTextures ;
2682  qglPushAttrib = dllPushAttrib ;
2683  qglPushClientAttrib = dllPushClientAttrib ;
2684  qglPushMatrix = dllPushMatrix ;
2685  qglPushName = dllPushName ;
2686  qglRasterPos2d = dllRasterPos2d ;
2687  qglRasterPos2dv = dllRasterPos2dv ;
2688  qglRasterPos2f = dllRasterPos2f ;
2689  qglRasterPos2fv = dllRasterPos2fv ;
2690  qglRasterPos2i = dllRasterPos2i ;
2691  qglRasterPos2iv = dllRasterPos2iv ;
2692  qglRasterPos2s = dllRasterPos2s ;
2693  qglRasterPos2sv = dllRasterPos2sv ;
2694  qglRasterPos3d = dllRasterPos3d ;
2695  qglRasterPos3dv = dllRasterPos3dv ;
2696  qglRasterPos3f = dllRasterPos3f ;
2697  qglRasterPos3fv = dllRasterPos3fv ;
2698  qglRasterPos3i = dllRasterPos3i ;
2699  qglRasterPos3iv = dllRasterPos3iv ;
2700  qglRasterPos3s = dllRasterPos3s ;
2701  qglRasterPos3sv = dllRasterPos3sv ;
2702  qglRasterPos4d = dllRasterPos4d ;
2703  qglRasterPos4dv = dllRasterPos4dv ;
2704  qglRasterPos4f = dllRasterPos4f ;
2705  qglRasterPos4fv = dllRasterPos4fv ;
2706  qglRasterPos4i = dllRasterPos4i ;
2707  qglRasterPos4iv = dllRasterPos4iv ;
2708  qglRasterPos4s = dllRasterPos4s ;
2709  qglRasterPos4sv = dllRasterPos4sv ;
2710  qglReadBuffer = dllReadBuffer ;
2711  qglReadPixels = dllReadPixels ;
2712  qglRectd = dllRectd ;
2713  qglRectdv = dllRectdv ;
2714  qglRectf = dllRectf ;
2715  qglRectfv = dllRectfv ;
2716  qglRecti = dllRecti ;
2717  qglRectiv = dllRectiv ;
2718  qglRects = dllRects ;
2719  qglRectsv = dllRectsv ;
2720  qglRenderMode = dllRenderMode ;
2721  qglRotated = dllRotated ;
2722  qglRotatef = dllRotatef ;
2723  qglScaled = dllScaled ;
2724  qglScalef = dllScalef ;
2725  qglScissor = dllScissor ;
2726  qglSelectBuffer = dllSelectBuffer ;
2727  qglShadeModel = dllShadeModel ;
2728  qglStencilFunc = dllStencilFunc ;
2729  qglStencilMask = dllStencilMask ;
2730  qglStencilOp = dllStencilOp ;
2731  qglTexCoord1d = dllTexCoord1d ;
2732  qglTexCoord1dv = dllTexCoord1dv ;
2733  qglTexCoord1f = dllTexCoord1f ;
2734  qglTexCoord1fv = dllTexCoord1fv ;
2735  qglTexCoord1i = dllTexCoord1i ;
2736  qglTexCoord1iv = dllTexCoord1iv ;
2737  qglTexCoord1s = dllTexCoord1s ;
2738  qglTexCoord1sv = dllTexCoord1sv ;
2739  qglTexCoord2d = dllTexCoord2d ;
2740  qglTexCoord2dv = dllTexCoord2dv ;
2741  qglTexCoord2f = dllTexCoord2f ;
2742  qglTexCoord2fv = dllTexCoord2fv ;
2743  qglTexCoord2i = dllTexCoord2i ;
2744  qglTexCoord2iv = dllTexCoord2iv ;
2745  qglTexCoord2s = dllTexCoord2s ;
2746  qglTexCoord2sv = dllTexCoord2sv ;
2747  qglTexCoord3d = dllTexCoord3d ;
2748  qglTexCoord3dv = dllTexCoord3dv ;
2749  qglTexCoord3f = dllTexCoord3f ;
2750  qglTexCoord3fv = dllTexCoord3fv ;
2751  qglTexCoord3i = dllTexCoord3i ;
2752  qglTexCoord3iv = dllTexCoord3iv ;
2753  qglTexCoord3s = dllTexCoord3s ;
2754  qglTexCoord3sv = dllTexCoord3sv ;
2755  qglTexCoord4d = dllTexCoord4d ;
2756  qglTexCoord4dv = dllTexCoord4dv ;
2757  qglTexCoord4f = dllTexCoord4f ;
2758  qglTexCoord4fv = dllTexCoord4fv ;
2759  qglTexCoord4i = dllTexCoord4i ;
2760  qglTexCoord4iv = dllTexCoord4iv ;
2761  qglTexCoord4s = dllTexCoord4s ;
2762  qglTexCoord4sv = dllTexCoord4sv ;
2763  qglTexCoordPointer = dllTexCoordPointer ;
2764  qglTexEnvf = dllTexEnvf ;
2765  qglTexEnvfv = dllTexEnvfv ;
2766  qglTexEnvi = dllTexEnvi ;
2767  qglTexEnviv = dllTexEnviv ;
2768  qglTexGend = dllTexGend ;
2769  qglTexGendv = dllTexGendv ;
2770  qglTexGenf = dllTexGenf ;
2771  qglTexGenfv = dllTexGenfv ;
2772  qglTexGeni = dllTexGeni ;
2773  qglTexGeniv = dllTexGeniv ;
2774  qglTexImage1D = dllTexImage1D ;
2775  qglTexImage2D = dllTexImage2D ;
2776  qglTexParameterf = dllTexParameterf ;
2777  qglTexParameterfv = dllTexParameterfv ;
2778  qglTexParameteri = dllTexParameteri ;
2779  qglTexParameteriv = dllTexParameteriv ;
2780  qglTexSubImage1D = dllTexSubImage1D ;
2781  qglTexSubImage2D = dllTexSubImage2D ;
2782  qglTranslated = dllTranslated ;
2783  qglTranslatef = dllTranslatef ;
2784  qglVertex2d = dllVertex2d ;
2785  qglVertex2dv = dllVertex2dv ;
2786  qglVertex2f = dllVertex2f ;
2787  qglVertex2fv = dllVertex2fv ;
2788  qglVertex2i = dllVertex2i ;
2789  qglVertex2iv = dllVertex2iv ;
2790  qglVertex2s = dllVertex2s ;
2791  qglVertex2sv = dllVertex2sv ;
2792  qglVertex3d = dllVertex3d ;
2793  qglVertex3dv = dllVertex3dv ;
2794  qglVertex3f = dllVertex3f ;
2795  qglVertex3fv = dllVertex3fv ;
2796  qglVertex3i = dllVertex3i ;
2797  qglVertex3iv = dllVertex3iv ;
2798  qglVertex3s = dllVertex3s ;
2799  qglVertex3sv = dllVertex3sv ;
2800  qglVertex4d = dllVertex4d ;
2801  qglVertex4dv = dllVertex4dv ;
2802  qglVertex4f = dllVertex4f ;
2803  qglVertex4fv = dllVertex4fv ;
2804  qglVertex4i = dllVertex4i ;
2805  qglVertex4iv = dllVertex4iv ;
2806  qglVertex4s = dllVertex4s ;
2807  qglVertex4sv = dllVertex4sv ;
2808  qglVertexPointer = dllVertexPointer ;
2809  qglViewport = dllViewport ;
2810  }
2811 }
void glDisableClientState(GLenum array)
Definition: stub_gl.cpp:97
#define qglEvalMesh2
Definition: qgl_linked.h:114
void glPixelZoom(GLfloat xfactor, GLfloat yfactor)
Definition: stub_gl.cpp:242
FLOAT
Definition: win_qgl.cpp:63
GLenum zfail
Definition: win_qgl.cpp:331
GLdouble GLdouble GLdouble GLdouble zNear
Definition: win_qgl.cpp:171
GLint GLint xoffset
Definition: win_qgl.cpp:130
void glTexEnviv(GLenum target, GLenum pname, const GLint *params)
Definition: stub_gl.cpp:337
#define qglMapGrid1f
Definition: qgl_linked.h:196
void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
Definition: stub_gl.cpp:149
#define qglFogfv
Definition: qgl_linked.h:121
void glEvalCoord1f(GLfloat u)
Definition: stub_gl.cpp:111
void glColor3usv(const GLushort *v)
Definition: stub_gl.cpp:65
GLenum glGetError(void)
Definition: stub_gl.cpp:135
#define qglDepthMask
Definition: qgl_linked.h:90
#define qglIsEnabled
Definition: qgl_linked.h:172
void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
Definition: stub_gl.cpp:272
#define qglTexCoord2iv
Definition: qgl_linked.h:299
void glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
Definition: stub_gl.cpp:329
void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
Definition: stub_gl.cpp:224
GLushort pattern
Definition: win_qgl.cpp:229
#define qglRectdv
Definition: qgl_linked.h:268
void glColor3iv(const GLint *v)
Definition: stub_gl.cpp:57
#define qglTexCoord3fv
Definition: qgl_linked.h:305
#define qglTexCoordPointer
Definition: qgl_linked.h:318
GLdouble GLdouble GLint GLint const GLdouble * points
Definition: win_qgl.cpp:237
#define qglPixelTransferf
Definition: qgl_linked.h:225
#define qglCopyPixels
Definition: qgl_linked.h:81
void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
Definition: stub_gl.cpp:207
GLsizei GLfloat GLfloat GLfloat GLfloat ymove
Definition: win_qgl.cpp:81
#define qglRasterPos3f
Definition: qgl_linked.h:251
#define qglAlphaFunc
Definition: qgl_linked.h:30
#define qglColor3bv
Definition: qgl_linked.h:47
#define qglColor3ui
Definition: qgl_linked.h:58
#define qglLoadMatrixf
Definition: qgl_linked.h:188
void glTexCoord1f(GLfloat s)
Definition: stub_gl.cpp:303
#define qglGetTexLevelParameteriv
Definition: qgl_linked.h:154
#define qglVertex2i
Definition: qgl_linked.h:343
#define qglTexCoord3s
Definition: qgl_linked.h:308
GLint i1
Definition: win_qgl.cpp:159
#define qglIndexd
Definition: qgl_linked.h:160
void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
Definition: stub_gl.cpp:100
#define qglVertex4s
Definition: qgl_linked.h:361
LPGLYPHMETRICSFLOAT
Definition: win_qgl.cpp:63
void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
Definition: stub_gl.cpp:288
GLdouble GLdouble GLdouble q
Definition: win_qgl.cpp:356
#define qglScissor
Definition: qgl_linked.h:280
void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
Definition: stub_gl.cpp:292
#define qglEvalCoord2f
Definition: qgl_linked.h:111
void glLineWidth(GLfloat width)
Definition: stub_gl.cpp:199
#define qglColor3usv
Definition: qgl_linked.h:61
void glShadeModel(GLenum mode)
Definition: stub_gl.cpp:297
#define qglVertex2d
Definition: qgl_linked.h:339
#define qglTexCoord4f
Definition: qgl_linked.h:312
const char * name
Definition: win_qgl.cpp:753
void glTexCoord3fv(const GLfloat *v)
Definition: stub_gl.cpp:320
#define qglColor3i
Definition: qgl_linked.h:52
assert(prefInfo.fullscreenBtn)
void glEvalCoord2dv(const GLdouble *u)
Definition: stub_gl.cpp:114
#define qglMapGrid1d
Definition: qgl_linked.h:195
#define qglColor4ub
Definition: qgl_linked.h:72
#define qglColor4dv
Definition: qgl_linked.h:65
void glClear(GLbitfield mask)
Definition: stub_gl.cpp:43
GLsizei
Definition: qgl.h:120
void glVertex4i(GLint x, GLint y, GLint z, GLint w)
Definition: stub_gl.cpp:374
idCVarSystem * cvarSystem
Definition: CVarSystem.cpp:487
GLfloat param
Definition: win_qgl.cpp:166
#define qglCopyTexSubImage1D
Definition: qgl_linked.h:84
void glRectsv(const GLshort *v1, const GLshort *v2)
Definition: stub_gl.cpp:289
#define qglGetTexLevelParameterfv
Definition: qgl_linked.h:153
void glIndexubv(const GLubyte *c)
Definition: stub_gl.cpp:184
void glRectiv(const GLint *v1, const GLint *v2)
Definition: stub_gl.cpp:287
#define qglEnableClientState
Definition: qgl_linked.h:102
void glIndexsv(const GLshort *c)
Definition: stub_gl.cpp:182
void glFlush(void)
Definition: stub_gl.cpp:123
#define qglFeedbackBuffer
Definition: qgl_linked.h:117
void glTranslated(GLdouble x, GLdouble y, GLdouble z)
Definition: stub_gl.cpp:352
#define qglColorMaterial
Definition: qgl_linked.h:79
GLdouble GLdouble GLint GLint GLdouble v1
Definition: win_qgl.cpp:239
void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
Definition: stub_gl.cpp:351
void glMaterialf(GLenum face, GLenum pname, GLfloat param)
Definition: stub_gl.cpp:214
#define qglDisable
Definition: qgl_linked.h:92
CONST COLORREF COLORREF BOOL
Definition: win_qgl.cpp:72
#define qglDisableClientState
Definition: qgl_linked.h:93
void glNormal3dv(const GLdouble *v)
Definition: stub_gl.cpp:225
void glGetMapiv(GLenum target, GLenum query, GLint *v)
Definition: stub_gl.cpp:148
#define qglRasterPos4i
Definition: qgl_linked.h:261
#define qglGetLightfv
Definition: qgl_linked.h:134
GLuint(APIENTRY *qglGenLists)(GLsizei range)
#define qglGenLists
Definition: qgl_linked.h:126
void glVertex3s(GLshort x, GLshort y, GLshort z)
Definition: stub_gl.cpp:368
#define qglMultMatrixf
Definition: qgl_linked.h:205
GLenum GLint GLuint mask
Definition: glext.h:5864
#define qglEvalPoint2
Definition: qgl_linked.h:116
GLint GLsizei count
Definition: win_qgl.cpp:140
void glFogf(GLenum pname, GLfloat param)
Definition: stub_gl.cpp:124
GLint GLenum GLint GLint GLsizei GLint border
Definition: win_qgl.cpp:128
void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
Definition: stub_gl.cpp:186
void glTexCoord1s(GLshort s)
Definition: stub_gl.cpp:307
void glTexCoord1fv(const GLfloat *v)
Definition: stub_gl.cpp:304
#define qglGetMapdv
Definition: qgl_linked.h:136
void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
Definition: stub_gl.cpp:266
void glTexCoord1sv(const GLshort *v)
Definition: stub_gl.cpp:308
GLbyte GLbyte nz
Definition: win_qgl.cpp:253
CONST PIXELFORMATDESCRIPTOR UINT
Definition: win_qgl.cpp:47
#define qglRasterPos4iv
Definition: qgl_linked.h:262
const GLubyte * glGetString(GLenum name)
Definition: stub_gl.cpp:156
const GLdouble * v
Definition: glext.h:2936
void glIndexfv(const GLfloat *c)
Definition: stub_gl.cpp:178
void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
Definition: stub_gl.cpp:166
void glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
Definition: stub_gl.cpp:42
void glRasterPos2iv(const GLint *v)
Definition: stub_gl.cpp:261
void glGetPolygonStipple(GLubyte *mask)
Definition: stub_gl.cpp:155
#define qglClearColor
Definition: qgl_linked.h:41
void glVertex3i(GLint x, GLint y, GLint z)
Definition: stub_gl.cpp:366
#define qglDrawBuffer
Definition: qgl_linked.h:95
bool QGL_Init(const char *dllname)
Definition: win_qgl.cpp:1690
GLint GLint internalformat
Definition: win_qgl.cpp:375
void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
Definition: stub_gl.cpp:281
#define qglRectsv
Definition: qgl_linked.h:274
#define qglCullFace
Definition: qgl_linked.h:86
GLsizei GLenum GLenum const GLvoid * pixels
Definition: win_qgl.cpp:143
virtual int ReadFile(const char *relativePath, void **buffer, ID_TIME_T *timestamp=NULL)=0
void glRasterPos2dv(const GLdouble *v)
Definition: stub_gl.cpp:257
#define qglRotatef
Definition: qgl_linked.h:277
#define qglNormal3s
Definition: qgl_linked.h:215
void glReadBuffer(GLenum mode)
Definition: stub_gl.cpp:280
GLboolean glIsList(GLuint list)
Definition: stub_gl.cpp:188
#define qglHint
Definition: qgl_linked.h:157
void glGetMapdv(GLenum target, GLenum query, GLdouble *v)
Definition: stub_gl.cpp:146
#define qglGetPixelMapfv
Definition: qgl_linked.h:141
void glCallList(GLuint list)
Definition: stub_gl.cpp:41
#define qglBindTexture
Definition: qgl_linked.h:34
GLdouble y1
Definition: win_qgl.cpp:313
void glColor3us(GLushort red, GLushort green, GLushort blue)
Definition: stub_gl.cpp:64
#define qglMap1d
Definition: qgl_linked.h:191
GLdouble GLdouble z
Definition: win_qgl.cpp:295
#define qglNormal3iv
Definition: qgl_linked.h:214
#define qglArrayElement
Definition: qgl_linked.h:32
GLdouble GLdouble GLdouble w
Definition: win_qgl.cpp:303
void glPixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values)
Definition: stub_gl.cpp:236
void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
Definition: stub_gl.cpp:165
#define qglMapGrid2d
Definition: qgl_linked.h:197
#define qglTexCoord2fv
Definition: qgl_linked.h:297
void glLightModelfv(GLenum pname, const GLfloat *params)
Definition: stub_gl.cpp:191
DWORD
Definition: win_qgl.cpp:61
void glTexParameterf(GLenum target, GLenum pname, GLfloat param)
Definition: stub_gl.cpp:346
void glNormal3s(GLshort nx, GLshort ny, GLshort nz)
Definition: stub_gl.cpp:230
#define qglTexGend
Definition: qgl_linked.h:323
#define qglVertex2fv
Definition: qgl_linked.h:342
GLboolean glIsTexture(GLuint texture)
Definition: stub_gl.cpp:189
GLenum GLsizei n
Definition: glext.h:3705
#define qglPixelMapfv
Definition: qgl_linked.h:220
void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
Definition: stub_gl.cpp:319
void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
Definition: stub_gl.cpp:317
#define qglTexGeniv
Definition: qgl_linked.h:328
#define qglRasterPos4sv
Definition: qgl_linked.h:264
void glRasterPos4dv(const GLdouble *v)
Definition: stub_gl.cpp:273
void glVertex2d(GLdouble x, GLdouble y)
Definition: stub_gl.cpp:354
void glIndexi(GLint c)
Definition: stub_gl.cpp:179
#define qglTexGendv
Definition: qgl_linked.h:324
void glEvalMesh1(GLenum mode, GLint i1, GLint i2)
Definition: stub_gl.cpp:117
void glVertex2f(GLfloat x, GLfloat y)
Definition: stub_gl.cpp:356
#define qglTexCoord3f
Definition: qgl_linked.h:304
void glVertex3d(GLdouble x, GLdouble y, GLdouble z)
Definition: stub_gl.cpp:362
#define qglGetDoublev
Definition: qgl_linked.h:130
idFileSystem * fileSystem
Definition: FileSystem.cpp:500
void glPassThrough(GLfloat token)
Definition: stub_gl.cpp:234
#define qglTexCoord1f
Definition: qgl_linked.h:288
GLbyte ny
Definition: win_qgl.cpp:253
void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
Definition: stub_gl.cpp:211
#define qglGetClipPlane
Definition: qgl_linked.h:129
#define qglTexCoord3sv
Definition: qgl_linked.h:309
void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
Definition: stub_gl.cpp:82
void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
Definition: stub_gl.cpp:339
void glPopName(void)
Definition: stub_gl.cpp:250
#define WINAPI
Definition: qgl.h:64
#define qglRasterPos3sv
Definition: qgl_linked.h:256
#define qglRasterPos3dv
Definition: qgl_linked.h:250
void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
Definition: stub_gl.cpp:74
void glEvalCoord1dv(const GLdouble *u)
Definition: stub_gl.cpp:110
#define qglBegin
Definition: qgl_linked.h:33
#define qglEvalCoord1f
Definition: qgl_linked.h:107
void glTexCoord4iv(const GLint *v)
Definition: stub_gl.cpp:330
#define qglRasterPos2sv
Definition: qgl_linked.h:248
#define qglVertex3i
Definition: qgl_linked.h:351
void * wglGetProcAddress(const char *name)
#define qglVertex4sv
Definition: qgl_linked.h:362
void glEndList(void)
Definition: stub_gl.cpp:108
#define qglGetError
Definition: qgl_linked.h:131
void GLimp_EnableLogging(bool enable)
Definition: win_qgl.cpp:2079
#define qglDepthRange
Definition: qgl_linked.h:91
void glRasterPos2f(GLfloat x, GLfloat y)
Definition: stub_gl.cpp:258
#define qglGetIntegerv
Definition: qgl_linked.h:133
void glIndexdv(const GLdouble *c)
Definition: stub_gl.cpp:176
void glGetPixelMapusv(GLenum map, GLushort *values)
Definition: stub_gl.cpp:153
void glColor3d(GLdouble red, GLdouble green, GLdouble blue)
Definition: stub_gl.cpp:52
#define qglLoadName
Definition: qgl_linked.h:189
void glColor3dv(const GLdouble *v)
Definition: stub_gl.cpp:53
#define qglVertex3fv
Definition: qgl_linked.h:350
void glPushMatrix(void)
Definition: stub_gl.cpp:254
GLint GLint GLsizei GLsizei GLsizei depth
Definition: glext.h:2878
#define qglPassThrough
Definition: qgl_linked.h:219
GLsizei GLenum format
Definition: win_qgl.cpp:143
#define qglScalef
Definition: qgl_linked.h:279
GLdouble t
Definition: win_qgl.cpp:340
#define qglCopyTexImage1D
Definition: qgl_linked.h:82
#define qglVertex3d
Definition: qgl_linked.h:347
void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
Definition: stub_gl.cpp:327
void glRasterPos2s(GLshort x, GLshort y)
Definition: stub_gl.cpp:262
#define qglGetLightiv
Definition: qgl_linked.h:135
void glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
Definition: stub_gl.cpp:72
#define qglColor4bv
Definition: qgl_linked.h:63
#define qglClipPlane
Definition: qgl_linked.h:45
void glTexCoord1dv(const GLdouble *v)
Definition: stub_gl.cpp:302
void glGetIntegerv(GLenum pname, GLint *params)
Definition: stub_gl.cpp:137
GLint j
Definition: win_qgl.cpp:162
void glColor3b(GLbyte red, GLbyte green, GLbyte blue)
Definition: stub_gl.cpp:50
#define qglEdgeFlagv
Definition: qgl_linked.h:100
#define qglReadPixels
Definition: qgl_linked.h:266
GLenum e
Definition: win_qgl.cpp:752
#define qglVertex4iv
Definition: qgl_linked.h:360
void glRasterPos4iv(const GLint *v)
Definition: stub_gl.cpp:277
void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
Definition: stub_gl.cpp:274
#define qglDeleteTextures
Definition: qgl_linked.h:88
#define qglTexCoord4d
Definition: qgl_linked.h:310
void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
Definition: stub_gl.cpp:78
void glVertex2s(GLshort x, GLshort y)
Definition: stub_gl.cpp:360
void glGetPixelMapuiv(GLenum map, GLuint *values)
Definition: stub_gl.cpp:152
void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
Definition: stub_gl.cpp:282
#define qglTexCoord4iv
Definition: qgl_linked.h:315
void glRasterPos4fv(const GLfloat *v)
Definition: stub_gl.cpp:275
void glLightModelf(GLenum pname, GLfloat param)
Definition: stub_gl.cpp:190
#define qglScaled
Definition: qgl_linked.h:278
GLdouble s
Definition: glext.h:2935
GLenum GLsizei const GLvoid * pointer
Definition: win_qgl.cpp:126
#define qglPixelStoref
Definition: qgl_linked.h:223
#define qglRecti
Definition: qgl_linked.h:271
#define qglViewport
Definition: qgl_linked.h:364
#define qglColorMask
Definition: qgl_linked.h:78
GLclampf ref
Definition: win_qgl.cpp:76
#define qglGetMaterialiv
Definition: qgl_linked.h:140
#define qglTexCoord2i
Definition: qgl_linked.h:298
#define qglColor4us
Definition: qgl_linked.h:76
void glTexGend(GLenum coord, GLenum pname, GLdouble param)
Definition: stub_gl.cpp:338
#define qglColor3ubv
Definition: qgl_linked.h:57
#define qglTranslatef
Definition: qgl_linked.h:338
#define qglPixelZoom
Definition: qgl_linked.h:227
#define qglCallList
Definition: qgl_linked.h:37
#define qglColor3s
Definition: qgl_linked.h:54
void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
Definition: stub_gl.cpp:232
void glPolygonOffset(GLfloat factor, GLfloat units)
Definition: stub_gl.cpp:245
GLuint coord
Definition: glext.h:5283
void glArrayElement(GLint i)
Definition: stub_gl.cpp:36
int i
Definition: process.py:33
const GLuint * textures
Definition: win_qgl.cpp:77
#define qglTexCoord4sv
Definition: qgl_linked.h:317
#define qglTranslated
Definition: qgl_linked.h:337
#define qglRasterPos2iv
Definition: qgl_linked.h:246
#define qglNormal3i
Definition: qgl_linked.h:213
#define qglTexCoord2sv
Definition: qgl_linked.h:301
const GLubyte *APIENTRY * dllGetString(GLenum name)
#define qglIndexubv
Definition: qgl_linked.h:169
void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
Definition: stub_gl.cpp:162
#define qglFogiv
Definition: qgl_linked.h:123
#define qglGetTexEnviv
Definition: qgl_linked.h:147
GLboolean glIsEnabled(GLenum cap)
Definition: stub_gl.cpp:187
#define qglEnable
Definition: qgl_linked.h:101
GLenum GLsizei stride
Definition: win_qgl.cpp:126
#define qglTexSubImage2D
Definition: qgl_linked.h:336
#define qglColor4sv
Definition: qgl_linked.h:71
#define qglRectfv
Definition: qgl_linked.h:270
void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
Definition: stub_gl.cpp:284
#define qglVertex3iv
Definition: qgl_linked.h:352
#define qglPolygonOffset
Definition: qgl_linked.h:230
void glIndexiv(const GLint *c)
Definition: stub_gl.cpp:180
GLuint glGenLists(GLsizei range)
Definition: stub_gl.cpp:130
#define qglTexCoord4s
Definition: qgl_linked.h:316
#define qglGetPixelMapuiv
Definition: qgl_linked.h:142
#define qglPixelTransferi
Definition: qgl_linked.h:226
void glIndexMask(GLuint mask)
Definition: stub_gl.cpp:173
#define APIENTRY
Definition: glext.h:43
GLenum cap
Definition: glext.h:5411
void glDrawArrays(GLenum mode, GLint first, GLsizei count)
Definition: stub_gl.cpp:98
void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
Definition: stub_gl.cpp:213
#define qglIndexf
Definition: qgl_linked.h:162
GLsizei mapsize
Definition: win_qgl.cpp:266
GLdouble GLdouble bottom
Definition: win_qgl.cpp:171
void glVertex4fv(const GLfloat *v)
Definition: stub_gl.cpp:373
void glStencilMask(GLuint mask)
Definition: stub_gl.cpp:299
void glRasterPos2fv(const GLfloat *v)
Definition: