[MetaHook] Quake OpenGL function

Quake OpenGL function for MetaHook plugin.

Thank hzqst :D

QGL.h

  1 #ifndef QGL_H
  2 #define QGL_H
  3
  4 #include <gl/gl.h>
  5 #include <gl/glext.h>
  6
  7 extern void (APIENTRY *qglAccum)(GLenum op, GLfloat value);
  8 extern void (APIENTRY *qglAlphaFunc)(GLenum func, GLclampf ref);
  9 extern GLboolean (APIENTRY *qglAreTexturesResident)(GLsizei n, const GLuint *textures, GLboolean *residences);
 10 extern void (APIENTRY *qglArrayElement)(GLint i);
 11 extern void (APIENTRY *qglBegin)(GLenum mode);
 12 extern void (APIENTRY *qglBindTexture)(GLenum target, GLuint texture);
 13 extern void (APIENTRY *qglBitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
 14 extern void (APIENTRY *qglBlendFunc)(GLenum sfactor, GLenum dfactor);
 15 extern void (APIENTRY *qglCallList)(GLuint list);
 16 extern void (APIENTRY *qglCallLists)(GLsizei n, GLenum type, const GLvoid *lists);
 17 extern void (APIENTRY *qglClear)(GLbitfield mask);
 18 extern void (APIENTRY *qglClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
 19 extern void (APIENTRY *qglClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
 20 extern void (APIENTRY *qglClearDepth)(GLclampd depth);
 21 extern void (APIENTRY *qglClearIndex)(GLfloat c);
 22 extern void (APIENTRY *qglClearStencil)(GLint s);
 23 extern void (APIENTRY *qglClipPlane)(GLenum plane, const GLdouble *equation);
 24 extern void (APIENTRY *qglColor3b)(GLbyte red, GLbyte green, GLbyte blue);
 25 extern void (APIENTRY *qglColor3bv)(const GLbyte *v);
 26 extern void (APIENTRY *qglColor3d)(GLdouble red, GLdouble green, GLdouble blue);
 27 extern void (APIENTRY *qglColor3dv)(const GLdouble *v);
 28 extern void (APIENTRY *qglColor3f)(GLfloat red, GLfloat green, GLfloat blue);
 29 extern void (APIENTRY *qglColor3fv)(const GLfloat *v);
 30 extern void (APIENTRY *qglColor3i)(GLint red, GLint green, GLint blue);
 31 extern void (APIENTRY *qglColor3iv)(const GLint *v);
 32 extern void (APIENTRY *qglColor3s)(GLshort red, GLshort green, GLshort blue);
 33 extern void (APIENTRY *qglColor3sv)(const GLshort *v);
 34 extern void (APIENTRY *qglColor3ub)(GLubyte red, GLubyte green, GLubyte blue);
 35 extern void (APIENTRY *qglColor3ubv)(const GLubyte *v);
 36 extern void (APIENTRY *qglColor3ui)(GLuint red, GLuint green, GLuint blue);
 37 extern void (APIENTRY *qglColor3uiv)(const GLuint *v);
 38 extern void (APIENTRY *qglColor3us)(GLushort red, GLushort green, GLushort blue);
 39 extern void (APIENTRY *qglColor3usv)(const GLushort *v);
 40 extern void (APIENTRY *qglColor4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
 41 extern void (APIENTRY *qglColor4bv)(const GLbyte *v);
 42 extern void (APIENTRY *qglColor4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
 43 extern void (APIENTRY *qglColor4dv)(const GLdouble *v);
 44 extern void (APIENTRY *qglColor4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
 45 extern void (APIENTRY *qglColor4fv)(const GLfloat *v);
 46 extern void (APIENTRY *qglColor4i)(GLint red, GLint green, GLint blue, GLint alpha);
 47 extern void (APIENTRY *qglColor4iv)(const GLint *v);
 48 extern void (APIENTRY *qglColor4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha);
 49 extern void (APIENTRY *qglColor4sv)(const GLshort *v);
 50 extern void (APIENTRY *qglColor4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
 51 extern void (APIENTRY *qglColor4ubv)(const GLubyte *v);
 52 extern void (APIENTRY *qglColor4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha);
 53 extern void (APIENTRY *qglColor4uiv)(const GLuint *v);
 54 extern void (APIENTRY *qglColor4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
 55 extern void (APIENTRY *qglColor4usv)(const GLushort *v);
 56 extern void (APIENTRY *qglColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
 57 extern void (APIENTRY *qglColorMaterial)(GLenum face, GLenum mode);
 58 extern void (APIENTRY *qglColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
 59 extern void (APIENTRY *qglCopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
 60 extern void (APIENTRY *qglCopyTexImage1D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
 61 extern void (APIENTRY *qglCopyTexImage2D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 62 extern void (APIENTRY *qglCopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
 63 extern void (APIENTRY *qglCopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 64 extern void (APIENTRY *qglCullFace)(GLenum mode);
 65 extern void (APIENTRY *qglDeleteLists)(GLuint list, GLsizei range);
 66 extern void (APIENTRY *qglDeleteTextures)(GLsizei n, const GLuint *textures);
 67 extern void (APIENTRY *qglDepthFunc)(GLenum func);
 68 extern void (APIENTRY *qglDepthMask)(GLboolean flag);
 69 extern void (APIENTRY *qglDepthRange)(GLclampd zNear, GLclampd zFar);
 70 extern void (APIENTRY *qglDisable)(GLenum cap);
 71 extern void (APIENTRY *qglDisableClientState)(GLenum array);
 72 extern void (APIENTRY *qglDrawArrays)(GLenum mode, GLint first, GLsizei count);
 73 extern void (APIENTRY *qglDrawBuffer)(GLenum mode);
 74 extern void (APIENTRY *qglDrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
 75 extern void (APIENTRY *qglDrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
 76 extern void (APIENTRY *qglEdgeFlag)(GLboolean flag);
 77 extern void (APIENTRY *qglEdgeFlagPointer)(GLsizei stride, const GLvoid *pointer);
 78 extern void (APIENTRY *qglEdgeFlagv)(const GLboolean *flag);
 79 extern void (APIENTRY *qglEnable)(GLenum cap);
 80 extern void (APIENTRY *qglEnableClientState)(GLenum array);
 81 extern void (APIENTRY *qglEnd)(void);
 82 extern void (APIENTRY *qglEndList)(void);
 83 extern void (APIENTRY *qglEvalCoord1d)(GLdouble u);
 84 extern void (APIENTRY *qglEvalCoord1dv)(const GLdouble *u);
 85 extern void (APIENTRY *qglEvalCoord1f)(GLfloat u);
 86 extern void (APIENTRY *qglEvalCoord1fv)(const GLfloat *u);
 87 extern void (APIENTRY *qglEvalCoord2d)(GLdouble u, GLdouble v);
 88 extern void (APIENTRY *qglEvalCoord2dv)(const GLdouble *u);
 89 extern void (APIENTRY *qglEvalCoord2f)(GLfloat u, GLfloat v);
 90 extern void (APIENTRY *qglEvalCoord2fv)(const GLfloat *u);
 91 extern void (APIENTRY *qglEvalMesh1)(GLenum mode, GLint i1, GLint i2);
 92 extern void (APIENTRY *qglEvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
 93 extern void (APIENTRY *qglEvalPoint1)(GLint i);
 94 extern void (APIENTRY *qglEvalPoint2)(GLint i, GLint j);
 95 extern void (APIENTRY *qglFeedbackBuffer)(GLsizei size, GLenum type, GLfloat *buffer);
 96 extern void (APIENTRY *qglFinish)(void);
 97 extern void (APIENTRY *qglFlush)(void);
 98 extern void (APIENTRY *qglFogf)(GLenum pname, GLfloat param);
 99 extern void (APIENTRY *qglFogfv)(GLenum pname, const GLfloat *params);
100 extern void (APIENTRY *qglFogi)(GLenum pname, GLint param);
101 extern void (APIENTRY *qglFogiv)(GLenum pname, const GLint *params);
102 extern void (APIENTRY *qglFrontFace)(GLenum mode);
103 extern void (APIENTRY *qglFrustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
104 extern GLuint (APIENTRY *qglGenLists)(GLsizei range);
105 extern void (APIENTRY *qglGenTextures)(GLsizei n, GLuint *textures);
106 extern void (APIENTRY *qglGetBooleanv)(GLenum pname, GLboolean *params);
107 extern void (APIENTRY *qglGetClipPlane)(GLenum plane, GLdouble *equation);
108 extern void (APIENTRY *qglGetDoublev)(GLenum pname, GLdouble *params);
109 extern GLenum (APIENTRY *qglGetError)(void);
110 extern void (APIENTRY *qglGetFloatv)(GLenum pname, GLfloat *params);
111 extern void (APIENTRY *qglGetIntegerv)(GLenum pname, GLint *params);
112 extern void (APIENTRY *qglGetLightfv)(GLenum light, GLenum pname, GLfloat *params);
113 extern void (APIENTRY *qglGetLightiv)(GLenum light, GLenum pname, GLint *params);
114 extern void (APIENTRY *qglGetMapdv)(GLenum target, GLenum query, GLdouble *v);
115 extern void (APIENTRY *qglGetMapfv)(GLenum target, GLenum query, GLfloat *v);
116 extern void (APIENTRY *qglGetMapiv)(GLenum target, GLenum query, GLint *v);
117 extern void (APIENTRY *qglGetMaterialfv)(GLenum face, GLenum pname, GLfloat *params);
118 extern void (APIENTRY *qglGetMaterialiv)(GLenum face, GLenum pname, GLint *params);
119 extern void (APIENTRY *qglGetPixelMapfv)(GLenum map, GLfloat *values);
120 extern void (APIENTRY *qglGetPixelMapuiv)(GLenum map, GLuint *values);
121 extern void (APIENTRY *qglGetPixelMapusv)(GLenum map, GLushort *values);
122 extern void (APIENTRY *qglGetPointerv)(GLenum pname, GLvoid* *params);
123 extern void (APIENTRY *qglGetPolygonStipple)(GLubyte *mask);
124 extern const GLubyte * (APIENTRY *qglGetString)(GLenum name);
125 extern void (APIENTRY *qglGetTexEnvfv)(GLenum target, GLenum pname, GLfloat *params);
126 extern void (APIENTRY *qglGetTexEnviv)(GLenum target, GLenum pname, GLint *params);
127 extern void (APIENTRY *qglGetTexGendv)(GLenum coord, GLenum pname, GLdouble *params);
128 extern void (APIENTRY *qglGetTexGenfv)(GLenum coord, GLenum pname, GLfloat *params);
129 extern void (APIENTRY *qglGetTexGeniv)(GLenum coord, GLenum pname, GLint *params);
130 extern void (APIENTRY *qglGetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
131 extern void (APIENTRY *qglGetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params);
132 extern void (APIENTRY *qglGetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params);
133 extern void (APIENTRY *qglGetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params);
134 extern void (APIENTRY *qglGetTexParameteriv)(GLenum target, GLenum pname, GLint *params);
135 extern void (APIENTRY *qglHint)(GLenum target, GLenum mode);
136 extern void (APIENTRY *qglIndexMask)(GLuint mask);
137 extern void (APIENTRY *qglIndexPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
138 extern void (APIENTRY *qglIndexd)(GLdouble c);
139 extern void (APIENTRY *qglIndexdv)(const GLdouble *c);
140 extern void (APIENTRY *qglIndexf)(GLfloat c);
141 extern void (APIENTRY *qglIndexfv)(const GLfloat *c);
142 extern void (APIENTRY *qglIndexi)(GLint c);
143 extern void (APIENTRY *qglIndexiv)(const GLint *c);
144 extern void (APIENTRY *qglIndexs)(GLshort c);
145 extern void (APIENTRY *qglIndexsv)(const GLshort *c);
146 extern void (APIENTRY *qglIndexub)(GLubyte c);
147 extern void (APIENTRY *qglIndexubv)(const GLubyte *c);
148 extern void (APIENTRY *qglInitNames)(void);
149 extern void (APIENTRY *qglInterleavedArrays)(GLenum format, GLsizei stride, const GLvoid *pointer);
150 extern GLboolean (APIENTRY *qglIsEnabled)(GLenum cap);
151 extern GLboolean (APIENTRY *qglIsList)(GLuint list);
152 extern GLboolean (APIENTRY *qglIsTexture)(GLuint texture);
153 extern void (APIENTRY *qglLightModelf)(GLenum pname, GLfloat param);
154 extern void (APIENTRY *qglLightModelfv)(GLenum pname, const GLfloat *params);
155 extern void (APIENTRY *qglLightModeli)(GLenum pname, GLint param);
156 extern void (APIENTRY *qglLightModeliv)(GLenum pname, const GLint *params);
157 extern void (APIENTRY *qglLightf)(GLenum light, GLenum pname, GLfloat param);
158 extern void (APIENTRY *qglLightfv)(GLenum light, GLenum pname, const GLfloat *params);
159 extern void (APIENTRY *qglLighti)(GLenum light, GLenum pname, GLint param);
160 extern void (APIENTRY *qglLightiv)(GLenum light, GLenum pname, const GLint *params);
161 extern void (APIENTRY *qglLineStipple)(GLint factor, GLushort pattern);
162 extern void (APIENTRY *qglLineWidth)(GLfloat width);
163 extern void (APIENTRY *qglListBase)(GLuint base);
164 extern void (APIENTRY *qglLoadIdentity)(void);
165 extern void (APIENTRY *qglLoadMatrixd)(const GLdouble *m);
166 extern void (APIENTRY *qglLoadMatrixf)(const GLfloat *m);
167 extern void (APIENTRY *qglLoadName)(GLuint name);
168 extern void (APIENTRY *qglLogicOp)(GLenum opcode);
169 extern void (APIENTRY *qglMap1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
170 extern void (APIENTRY *qglMap1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
171 extern void (APIENTRY *qglMap2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
172 extern void (APIENTRY *qglMap2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
173 extern void (APIENTRY *qglMapGrid1d)(GLint un, GLdouble u1, GLdouble u2);
174 extern void (APIENTRY *qglMapGrid1f)(GLint un, GLfloat u1, GLfloat u2);
175 extern void (APIENTRY *qglMapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
176 extern void (APIENTRY *qglMapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
177 extern void (APIENTRY *qglMaterialf)(GLenum face, GLenum pname, GLfloat param);
178 extern void (APIENTRY *qglMaterialfv)(GLenum face, GLenum pname, const GLfloat *params);
179 extern void (APIENTRY *qglMateriali)(GLenum face, GLenum pname, GLint param);
180 extern void (APIENTRY *qglMaterialiv)(GLenum face, GLenum pname, const GLint *params);
181 extern void (APIENTRY *qglMatrixMode)(GLenum mode);
182 extern void (APIENTRY *qglMultMatrixd)(const GLdouble *m);
183 extern void (APIENTRY *qglMultMatrixf)(const GLfloat *m);
184 extern void (APIENTRY *qglNewList)(GLuint list, GLenum mode);
185 extern void (APIENTRY *qglNormal3b)(GLbyte nx, GLbyte ny, GLbyte nz);
186 extern void (APIENTRY *qglNormal3bv)(const GLbyte *v);
187 extern void (APIENTRY *qglNormal3d)(GLdouble nx, GLdouble ny, GLdouble nz);
188 extern void (APIENTRY *qglNormal3dv)(const GLdouble *v);
189 extern void (APIENTRY *qglNormal3f)(GLfloat nx, GLfloat ny, GLfloat nz);
190 extern void (APIENTRY *qglNormal3fv)(const GLfloat *v);
191 extern void (APIENTRY *qglNormal3i)(GLint nx, GLint ny, GLint nz);
192 extern void (APIENTRY *qglNormal3iv)(const GLint *v);
193 extern void (APIENTRY *qglNormal3s)(GLshort nx, GLshort ny, GLshort nz);
194 extern void (APIENTRY *qglNormal3sv)(const GLshort *v);
195 extern void (APIENTRY *qglNormalPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
196 extern void (APIENTRY *qglOrtho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
197 extern void (APIENTRY *qglPassThrough)(GLfloat token);
198 extern void (APIENTRY *qglPixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat *values);
199 extern void (APIENTRY *qglPixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint *values);
200 extern void (APIENTRY *qglPixelMapusv)(GLenum map, GLsizei mapsize, const GLushort *values);
201 extern void (APIENTRY *qglPixelStoref)(GLenum pname, GLfloat param);
202 extern void (APIENTRY *qglPixelStorei)(GLenum pname, GLint param);
203 extern void (APIENTRY *qglPixelTransferf)(GLenum pname, GLfloat param);
204 extern void (APIENTRY *qglPixelTransferi)(GLenum pname, GLint param);
205 extern void (APIENTRY *qglPixelZoom)(GLfloat xfactor, GLfloat yfactor);
206 extern void (APIENTRY *qglPointSize)(GLfloat size);
207 extern void (APIENTRY *qglPolygonMode)(GLenum face, GLenum mode);
208 extern void (APIENTRY *qglPolygonOffset)(GLfloat factor, GLfloat units);
209 extern void (APIENTRY *qglPolygonStipple)(const GLubyte *mask);
210 extern void (APIENTRY *qglPopAttrib)(void);
211 extern void (APIENTRY *qglPopClientAttrib)(void);
212 extern void (APIENTRY *qglPopMatrix)(void);
213 extern void (APIENTRY *qglPopName)(void);
214 extern void (APIENTRY *qglPrioritizeTextures)(GLsizei n, const GLuint *textures, const GLclampf *priorities);
215 extern void (APIENTRY *qglPushAttrib)(GLbitfield mask);
216 extern void (APIENTRY *qglPushClientAttrib)(GLbitfield mask);
217 extern void (APIENTRY *qglPushMatrix)(void);
218 extern void (APIENTRY *qglPushName)(GLuint name);
219 extern void (APIENTRY *qglRasterPos2d)(GLdouble x, GLdouble y);
220 extern void (APIENTRY *qglRasterPos2dv)(const GLdouble *v);
221 extern void (APIENTRY *qglRasterPos2f)(GLfloat x, GLfloat y);
222 extern void (APIENTRY *qglRasterPos2fv)(const GLfloat *v);
223 extern void (APIENTRY *qglRasterPos2i)(GLint x, GLint y);
224 extern void (APIENTRY *qglRasterPos2iv)(const GLint *v);
225 extern void (APIENTRY *qglRasterPos2s)(GLshort x, GLshort y);
226 extern void (APIENTRY *qglRasterPos2sv)(const GLshort *v);
227 extern void (APIENTRY *qglRasterPos3d)(GLdouble x, GLdouble y, GLdouble z);
228 extern void (APIENTRY *qglRasterPos3dv)(const GLdouble *v);
229 extern void (APIENTRY *qglRasterPos3f)(GLfloat x, GLfloat y, GLfloat z);
230 extern void (APIENTRY *qglRasterPos3fv)(const GLfloat *v);
231 extern void (APIENTRY *qglRasterPos3i)(GLint x, GLint y, GLint z);
232 extern void (APIENTRY *qglRasterPos3iv)(const GLint *v);
233 extern void (APIENTRY *qglRasterPos3s)(GLshort x, GLshort y, GLshort z);
234 extern void (APIENTRY *qglRasterPos3sv)(const GLshort *v);
235 extern void (APIENTRY *qglRasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
236 extern void (APIENTRY *qglRasterPos4dv)(const GLdouble *v);
237 extern void (APIENTRY *qglRasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
238 extern void (APIENTRY *qglRasterPos4fv)(const GLfloat *v);
239 extern void (APIENTRY *qglRasterPos4i)(GLint x, GLint y, GLint z, GLint w);
240 extern void (APIENTRY *qglRasterPos4iv)(const GLint *v);
241 extern void (APIENTRY *qglRasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w);
242 extern void (APIENTRY *qglRasterPos4sv)(const GLshort *v);
243 extern void (APIENTRY *qglReadBuffer)(GLenum mode);
244 extern void (APIENTRY *qglReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
245 extern void (APIENTRY *qglRectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
246 extern void (APIENTRY *qglRectdv)(const GLdouble *v1, const GLdouble *v2);
247 extern void (APIENTRY *qglRectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
248 extern void (APIENTRY *qglRectfv)(const GLfloat *v1, const GLfloat *v2);
249 extern void (APIENTRY *qglRecti)(GLint x1, GLint y1, GLint x2, GLint y2);
250 extern void (APIENTRY *qglRectiv)(const GLint *v1, const GLint *v2);
251 extern void (APIENTRY *qglRects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
252 extern void (APIENTRY *qglRectsv)(const GLshort *v1, const GLshort *v2);
253 extern GLint (APIENTRY *qglRenderMode)(GLenum mode);
254 extern void (APIENTRY *qglRotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
255 extern void (APIENTRY *qglRotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
256 extern void (APIENTRY *qglScaled)(GLdouble x, GLdouble y, GLdouble z);
257 extern void (APIENTRY *qglScalef)(GLfloat x, GLfloat y, GLfloat z);
258 extern void (APIENTRY *qglScissor)(GLint x, GLint y, GLsizei width, GLsizei height);
259 extern void (APIENTRY *qglSelectBuffer)(GLsizei size, GLuint *buffer);
260 extern void (APIENTRY *qglShadeModel)(GLenum mode);
261 extern void (APIENTRY *qglStencilFunc)(GLenum func, GLint ref, GLuint mask);
262 extern void (APIENTRY *qglStencilMask)(GLuint mask);
263 extern void (APIENTRY *qglStencilOp)(GLenum fail, GLenum zfail, GLenum zpass);
264 extern void (APIENTRY *qglTexCoord1d)(GLdouble s);
265 extern void (APIENTRY *qglTexCoord1dv)(const GLdouble *v);
266 extern void (APIENTRY *qglTexCoord1f)(GLfloat s);
267 extern void (APIENTRY *qglTexCoord1fv)(const GLfloat *v);
268 extern void (APIENTRY *qglTexCoord1i)(GLint s);
269 extern void (APIENTRY *qglTexCoord1iv)(const GLint *v);
270 extern void (APIENTRY *qglTexCoord1s)(GLshort s);
271 extern void (APIENTRY *qglTexCoord1sv)(const GLshort *v);
272 extern void (APIENTRY *qglTexCoord2d)(GLdouble s, GLdouble t);
273 extern void (APIENTRY *qglTexCoord2dv)(const GLdouble *v);
274 extern void (APIENTRY *qglTexCoord2f)(GLfloat s, GLfloat t);
275 extern void (APIENTRY *qglTexCoord2fv)(const GLfloat *v);
276 extern void (APIENTRY *qglTexCoord2i)(GLint s, GLint t);
277 extern void (APIENTRY *qglTexCoord2iv)(const GLint *v);
278 extern void (APIENTRY *qglTexCoord2s)(GLshort s, GLshort t);
279 extern void (APIENTRY *qglTexCoord2sv)(const GLshort *v);
280 extern void (APIENTRY *qglTexCoord3d)(GLdouble s, GLdouble t, GLdouble r);
281 extern void (APIENTRY *qglTexCoord3dv)(const GLdouble *v);
282 extern void (APIENTRY *qglTexCoord3f)(GLfloat s, GLfloat t, GLfloat r);
283 extern void (APIENTRY *qglTexCoord3fv)(const GLfloat *v);
284 extern void (APIENTRY *qglTexCoord3i)(GLint s, GLint t, GLint r);
285 extern void (APIENTRY *qglTexCoord3iv)(const GLint *v);
286 extern void (APIENTRY *qglTexCoord3s)(GLshort s, GLshort t, GLshort r);
287 extern void (APIENTRY *qglTexCoord3sv)(const GLshort *v);
288 extern void (APIENTRY *qglTexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
289 extern void (APIENTRY *qglTexCoord4dv)(const GLdouble *v);
290 extern void (APIENTRY *qglTexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
291 extern void (APIENTRY *qglTexCoord4fv)(const GLfloat *v);
292 extern void (APIENTRY *qglTexCoord4i)(GLint s, GLint t, GLint r, GLint q);
293 extern void (APIENTRY *qglTexCoord4iv)(const GLint *v);
294 extern void (APIENTRY *qglTexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q);
295 extern void (APIENTRY *qglTexCoord4sv)(const GLshort *v);
296 extern void (APIENTRY *qglTexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
297 extern void (APIENTRY *qglTexEnvf)(GLenum target, GLenum pname, GLfloat param);
298 extern void (APIENTRY *qglTexEnvfv)(GLenum target, GLenum pname, const GLfloat *params);
299 extern void (APIENTRY *qglTexEnvi)(GLenum target, GLenum pname, GLint param);
300 extern void (APIENTRY *qglTexEnviv)(GLenum target, GLenum pname, const GLint *params);
301 extern void (APIENTRY *qglTexGend)(GLenum coord, GLenum pname, GLdouble param);
302 extern void (APIENTRY *qglTexGendv)(GLenum coord, GLenum pname, const GLdouble *params);
303 extern void (APIENTRY *qglTexGenf)(GLenum coord, GLenum pname, GLfloat param);
304 extern void (APIENTRY *qglTexGenfv)(GLenum coord, GLenum pname, const GLfloat *params);
305 extern void (APIENTRY *qglTexGeni)(GLenum coord, GLenum pname, GLint param);
306 extern void (APIENTRY *qglTexGeniv)(GLenum coord, GLenum pname, const GLint *params);
307 extern void (APIENTRY *qglTexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
308 extern void (APIENTRY *qglTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
309 extern void (APIENTRY *qglTexParameterf)(GLenum target, GLenum pname, GLfloat param);
310 extern void (APIENTRY *qglTexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
311 extern void (APIENTRY *qglTexParameteri)(GLenum target, GLenum pname, GLint param);
312 extern void (APIENTRY *qglTexParameteriv)(GLenum target, GLenum pname, const GLint *params);
313 extern void (APIENTRY *qglTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
314 extern void (APIENTRY *qglTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
315 extern void (APIENTRY *qglTranslated)(GLdouble x, GLdouble y, GLdouble z);
316 extern void (APIENTRY *qglTranslatef)(GLfloat x, GLfloat y, GLfloat z);
317 extern void (APIENTRY *qglVertex2d)(GLdouble x, GLdouble y);
318 extern void (APIENTRY *qglVertex2dv)(const GLdouble *v);
319 extern void (APIENTRY *qglVertex2f)(GLfloat x, GLfloat y);
320 extern void (APIENTRY *qglVertex2fv)(const GLfloat *v);
321 extern void (APIENTRY *qglVertex2i)(GLint x, GLint y);
322 extern void (APIENTRY *qglVertex2iv)(const GLint *v);
323 extern void (APIENTRY *qglVertex2s)(GLshort x, GLshort y);
324 extern void (APIENTRY *qglVertex2sv)(const GLshort *v);
325 extern void (APIENTRY *qglVertex3d)(GLdouble x, GLdouble y, GLdouble z);
326 extern void (APIENTRY *qglVertex3dv)(const GLdouble *v);
327 extern void (APIENTRY *qglVertex3f)(GLfloat x, GLfloat y, GLfloat z);
328 extern void (APIENTRY *qglVertex3fv)(const GLfloat *v);
329 extern void (APIENTRY *qglVertex3i)(GLint x, GLint y, GLint z);
330 extern void (APIENTRY *qglVertex3iv)(const GLint *v);
331 extern void (APIENTRY *qglVertex3s)(GLshort x, GLshort y, GLshort z);
332 extern void (APIENTRY *qglVertex3sv)(const GLshort *v);
333 extern void (APIENTRY *qglVertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
334 extern void (APIENTRY *qglVertex4dv)(const GLdouble *v);
335 extern void (APIENTRY *qglVertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
336 extern void (APIENTRY *qglVertex4fv)(const GLfloat *v);
337 extern void (APIENTRY *qglVertex4i)(GLint x, GLint y, GLint z, GLint w);
338 extern void (APIENTRY *qglVertex4iv)(const GLint *v);
339 extern void (APIENTRY *qglVertex4s)(GLshort x, GLshort y, GLshort z, GLshort w);
340 extern void (APIENTRY *qglVertex4sv)(const GLshort *v);
341 extern void (APIENTRY *qglVertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
342 extern void (APIENTRY *qglViewport)(GLint x, GLint y, GLsizei width, GLsizei height);
343
344 extern void (APIENTRY *qglActiveTexture)(GLenum texture);
345 extern void (APIENTRY *qglSampleCoverage)(GLclampf value, GLboolean invert);
346 extern void (APIENTRY *qglCompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
347 extern void (APIENTRY *qglCompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
348 extern void (APIENTRY *qglCompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
349 extern void (APIENTRY *qglCompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
350 extern void (APIENTRY *qglCompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
351 extern void (APIENTRY *qglCompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
352 extern void (APIENTRY *qglGetCompressedTexImage)(GLenum target, GLint level, GLvoid *img);
353
354 extern GLboolean (APIENTRY *qglIsRenderbuffer)(GLuint renderbuffer);
355 extern void (APIENTRY *qglBindRenderbuffer)(GLenum target, GLuint renderbuffer);
356 extern void (APIENTRY *qglDeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers);
357 extern void (APIENTRY *qglGenRenderbuffers)(GLsizei n, GLuint *renderbuffers);
358 extern void (APIENTRY *qglRenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
359 extern void (APIENTRY *qglGetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params);
360 extern GLboolean (APIENTRY *qglIsFramebuffer)(GLuint framebuffer);
361 extern void (APIENTRY *qglBindFramebuffer)(GLenum target, GLuint framebuffer);
362 extern void (APIENTRY *qglDeleteFramebuffers)(GLsizei n, const GLuint *framebuffers);
363 extern void (APIENTRY *qglGenFramebuffers)(GLsizei n, GLuint *framebuffers);
364 extern GLenum (APIENTRY *qglCheckFramebufferStatus)(GLenum target);
365 extern void (APIENTRY *qglFramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
366 extern void (APIENTRY *qglFramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
367 extern void (APIENTRY *qglFramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
368 extern void (APIENTRY *qglFramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
369 extern void (APIENTRY *qglGetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
370 extern void (APIENTRY *qglGenerateMipmap)(GLenum target);
371 extern void (APIENTRY *qglBlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
372 extern void (APIENTRY *qglRenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
373 extern void (APIENTRY *qglFramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
374
375 void QGL_Init(void);
376
377 #endif

QGL.cpp

  1 #include <metahook.h>
  2
  3 #include <gl/gl.h>
  4 #include <gl/glext.h>
  5
  6 void (APIENTRY *qglAccum)(GLenum op, GLfloat value) = 0;
  7 void (APIENTRY *qglAlphaFunc)(GLenum func, GLclampf ref) = 0;
  8 GLboolean (APIENTRY *qglAreTexturesResident)(GLsizei n, const GLuint *textures, GLboolean *residences) = 0;
  9 void (APIENTRY *qglArrayElement)(GLint i) = 0;
 10 void (APIENTRY *qglBegin)(GLenum mode) = 0;
 11 void (APIENTRY *qglBindTexture)(GLenum target, GLuint texture) = 0;
 12 void (APIENTRY *qglBitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap) = 0;
 13 void (APIENTRY *qglBlendFunc)(GLenum sfactor, GLenum dfactor) = 0;
 14 void (APIENTRY *qglCallList)(GLuint list) = 0;
 15 void (APIENTRY *qglCallLists)(GLsizei n, GLenum type, const GLvoid *lists) = 0;
 16 void (APIENTRY *qglClear)(GLbitfield mask) = 0;
 17 void (APIENTRY *qglClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) = 0;
 18 void (APIENTRY *qglClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) = 0;
 19 void (APIENTRY *qglClearDepth)(GLclampd depth) = 0;
 20 void (APIENTRY *qglClearIndex)(GLfloat c) = 0;
 21 void (APIENTRY *qglClearStencil)(GLint s) = 0;
 22 void (APIENTRY *qglClipPlane)(GLenum plane, const GLdouble *equation) = 0;
 23 void (APIENTRY *qglColor3b)(GLbyte red, GLbyte green, GLbyte blue) = 0;
 24 void (APIENTRY *qglColor3bv)(const GLbyte *v) = 0;
 25 void (APIENTRY *qglColor3d)(GLdouble red, GLdouble green, GLdouble blue) = 0;
 26 void (APIENTRY *qglColor3dv)(const GLdouble *v) = 0;
 27 void (APIENTRY *qglColor3f)(GLfloat red, GLfloat green, GLfloat blue) = 0;
 28 void (APIENTRY *qglColor3fv)(const GLfloat *v) = 0;
 29 void (APIENTRY *qglColor3i)(GLint red, GLint green, GLint blue) = 0;
 30 void (APIENTRY *qglColor3iv)(const GLint *v) = 0;
 31 void (APIENTRY *qglColor3s)(GLshort red, GLshort green, GLshort blue) = 0;
 32 void (APIENTRY *qglColor3sv)(const GLshort *v) = 0;
 33 void (APIENTRY *qglColor3ub)(GLubyte red, GLubyte green, GLubyte blue) = 0;
 34 void (APIENTRY *qglColor3ubv)(const GLubyte *v) = 0;
 35 void (APIENTRY *qglColor3ui)(GLuint red, GLuint green, GLuint blue) = 0;
 36 void (APIENTRY *qglColor3uiv)(const GLuint *v) = 0;
 37 void (APIENTRY *qglColor3us)(GLushort red, GLushort green, GLushort blue) = 0;
 38 void (APIENTRY *qglColor3usv)(const GLushort *v) = 0;
 39 void (APIENTRY *qglColor4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha) = 0;
 40 void (APIENTRY *qglColor4bv)(const GLbyte *v) = 0;
 41 void (APIENTRY *qglColor4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha) = 0;
 42 void (APIENTRY *qglColor4dv)(const GLdouble *v) = 0;
 43 void (APIENTRY *qglColor4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) = 0;
 44 void (APIENTRY *qglColor4fv)(const GLfloat *v) = 0;
 45 void (APIENTRY *qglColor4i)(GLint red, GLint green, GLint blue, GLint alpha) = 0;
 46 void (APIENTRY *qglColor4iv)(const GLint *v) = 0;
 47 void (APIENTRY *qglColor4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha) = 0;
 48 void (APIENTRY *qglColor4sv)(const GLshort *v) = 0;
 49 void (APIENTRY *qglColor4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha) = 0;
 50 void (APIENTRY *qglColor4ubv)(const GLubyte *v) = 0;
 51 void (APIENTRY *qglColor4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha) = 0;
 52 void (APIENTRY *qglColor4uiv)(const GLuint *v) = 0;
 53 void (APIENTRY *qglColor4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha) = 0;
 54 void (APIENTRY *qglColor4usv)(const GLushort *v) = 0;
 55 void (APIENTRY *qglColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) = 0;
 56 void (APIENTRY *qglColorMaterial)(GLenum face, GLenum mode) = 0;
 57 void (APIENTRY *qglColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) = 0;
 58 void (APIENTRY *qglCopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type) = 0;
 59 void (APIENTRY *qglCopyTexImage1D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border) = 0;
 60 void (APIENTRY *qglCopyTexImage2D)(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) = 0;
 61 void (APIENTRY *qglCopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) = 0;
 62 void (APIENTRY *qglCopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) = 0;
 63 void (APIENTRY *qglCullFace)(GLenum mode) = 0;
 64 void (APIENTRY *qglDeleteLists)(GLuint list, GLsizei range) = 0;
 65 void (APIENTRY *qglDeleteTextures)(GLsizei n, const GLuint *textures) = 0;
 66 void (APIENTRY *qglDepthFunc)(GLenum func) = 0;
 67 void (APIENTRY *qglDepthMask)(GLboolean flag) = 0;
 68 void (APIENTRY *qglDepthRange)(GLclampd zNear, GLclampd zFar) = 0;
 69 void (APIENTRY *qglDisable)(GLenum cap) = 0;
 70 void (APIENTRY *qglDisableClientState)(GLenum array) = 0;
 71 void (APIENTRY *qglDrawArrays)(GLenum mode, GLint first, GLsizei count) = 0;
 72 void (APIENTRY *qglDrawBuffer)(GLenum mode) = 0;
 73 void (APIENTRY *qglDrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) = 0;
 74 void (APIENTRY *qglDrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) = 0;
 75 void (APIENTRY *qglEdgeFlag)(GLboolean flag) = 0;
 76 void (APIENTRY *qglEdgeFlagPointer)(GLsizei stride, const GLvoid *pointer) = 0;
 77 void (APIENTRY *qglEdgeFlagv)(const GLboolean *flag) = 0;
 78 void (APIENTRY *qglEnable)(GLenum cap) = 0;
 79 void (APIENTRY *qglEnableClientState)(GLenum array) = 0;
 80 void (APIENTRY *qglEnd)(void) = 0;
 81 void (APIENTRY *qglEndList)(void) = 0;
 82 void (APIENTRY *qglEvalCoord1d)(GLdouble u) = 0;
 83 void (APIENTRY *qglEvalCoord1dv)(const GLdouble *u) = 0;
 84 void (APIENTRY *qglEvalCoord1f)(GLfloat u) = 0;
 85 void (APIENTRY *qglEvalCoord1fv)(const GLfloat *u) = 0;
 86 void (APIENTRY *qglEvalCoord2d)(GLdouble u, GLdouble v) = 0;
 87 void (APIENTRY *qglEvalCoord2dv)(const GLdouble *u) = 0;
 88 void (APIENTRY *qglEvalCoord2f)(GLfloat u, GLfloat v) = 0;
 89 void (APIENTRY *qglEvalCoord2fv)(const GLfloat *u) = 0;
 90 void (APIENTRY *qglEvalMesh1)(GLenum mode, GLint i1, GLint i2) = 0;
 91 void (APIENTRY *qglEvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2) = 0;
 92 void (APIENTRY *qglEvalPoint1)(GLint i) = 0;
 93 void (APIENTRY *qglEvalPoint2)(GLint i, GLint j) = 0;
 94 void (APIENTRY *qglFeedbackBuffer)(GLsizei size, GLenum type, GLfloat *buffer) = 0;
 95 void (APIENTRY *qglFinish)(void) = 0;
 96 void (APIENTRY *qglFlush)(void) = 0;
 97 void (APIENTRY *qglFogf)(GLenum pname, GLfloat param) = 0;
 98 void (APIENTRY *qglFogfv)(GLenum pname, const GLfloat *params) = 0;
 99 void (APIENTRY *qglFogi)(GLenum pname, GLint param) = 0;
100 void (APIENTRY *qglFogiv)(GLenum pname, const GLint *params) = 0;
101 void (APIENTRY *qglFrontFace)(GLenum mode) = 0;
102 void (APIENTRY *qglFrustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar) = 0;
103 GLuint (APIENTRY *qglGenLists)(GLsizei range) = 0;
104 void (APIENTRY *qglGenTextures)(GLsizei n, GLuint *textures) = 0;
105 void (APIENTRY *qglGetBooleanv)(GLenum pname, GLboolean *params) = 0;
106 void (APIENTRY *qglGetClipPlane)(GLenum plane, GLdouble *equation) = 0;
107 void (APIENTRY *qglGetDoublev)(GLenum pname, GLdouble *params) = 0;
108 GLenum (APIENTRY *qglGetError)(void) = 0;
109 void (APIENTRY *qglGetFloatv)(GLenum pname, GLfloat *params) = 0;
110 void (APIENTRY *qglGetIntegerv)(GLenum pname, GLint *params) = 0;
111 void (APIENTRY *qglGetLightfv)(GLenum light, GLenum pname, GLfloat *params) = 0;
112 void (APIENTRY *qglGetLightiv)(GLenum light, GLenum pname, GLint *params) = 0;
113 void (APIENTRY *qglGetMapdv)(GLenum target, GLenum query, GLdouble *v) = 0;
114 void (APIENTRY *qglGetMapfv)(GLenum target, GLenum query, GLfloat *v) = 0;
115 void (APIENTRY *qglGetMapiv)(GLenum target, GLenum query, GLint *v) = 0;
116 void (APIENTRY *qglGetMaterialfv)(GLenum face, GLenum pname, GLfloat *params) = 0;
117 void (APIENTRY *qglGetMaterialiv)(GLenum face, GLenum pname, GLint *params) = 0;
118 void (APIENTRY *qglGetPixelMapfv)(GLenum map, GLfloat *values) = 0;
119 void (APIENTRY *qglGetPixelMapuiv)(GLenum map, GLuint *values) = 0;
120 void (APIENTRY *qglGetPixelMapusv)(GLenum map, GLushort *values) = 0;
121 void (APIENTRY *qglGetPointerv)(GLenum pname, GLvoid* *params) = 0;
122 void (APIENTRY *qglGetPolygonStipple)(GLubyte *mask) = 0;
123 const GLubyte * (APIENTRY *qglGetString)(GLenum name) = 0;
124 void (APIENTRY *qglGetTexEnvfv)(GLenum target, GLenum pname, GLfloat *params) = 0;
125 void (APIENTRY *qglGetTexEnviv)(GLenum target, GLenum pname, GLint *params) = 0;
126 void (APIENTRY *qglGetTexGendv)(GLenum coord, GLenum pname, GLdouble *params) = 0;
127 void (APIENTRY *qglGetTexGenfv)(GLenum coord, GLenum pname, GLfloat *params) = 0;
128 void (APIENTRY *qglGetTexGeniv)(GLenum coord, GLenum pname, GLint *params) = 0;
129 void (APIENTRY *qglGetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels) = 0;
130 void (APIENTRY *qglGetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params) = 0;
131 void (APIENTRY *qglGetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params) = 0;
132 void (APIENTRY *qglGetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params) = 0;
133 void (APIENTRY *qglGetTexParameteriv)(GLenum target, GLenum pname, GLint *params) = 0;
134 void (APIENTRY *qglHint)(GLenum target, GLenum mode) = 0;
135 void (APIENTRY *qglIndexMask)(GLuint mask) = 0;
136 void (APIENTRY *qglIndexPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) = 0;
137 void (APIENTRY *qglIndexd)(GLdouble c) = 0;
138 void (APIENTRY *qglIndexdv)(const GLdouble *c) = 0;
139 void (APIENTRY *qglIndexf)(GLfloat c) = 0;
140 void (APIENTRY *qglIndexfv)(const GLfloat *c) = 0;
141 void (APIENTRY *qglIndexi)(GLint c) = 0;
142 void (APIENTRY *qglIndexiv)(const GLint *c) = 0;
143 void (APIENTRY *qglIndexs)(GLshort c) = 0;
144 void (APIENTRY *qglIndexsv)(const GLshort *c) = 0;
145 void (APIENTRY *qglIndexub)(GLubyte c) = 0;
146 void (APIENTRY *qglIndexubv)(const GLubyte *c) = 0;
147 void (APIENTRY *qglInitNames)(void) = 0;
148 void (APIENTRY *qglInterleavedArrays)(GLenum format, GLsizei stride, const GLvoid *pointer) = 0;
149 GLboolean (APIENTRY *qglIsEnabled)(GLenum cap) = 0;
150 GLboolean (APIENTRY *qglIsList)(GLuint list) = 0;
151 GLboolean (APIENTRY *qglIsTexture)(GLuint texture) = 0;
152 void (APIENTRY *qglLightModelf)(GLenum pname, GLfloat param) = 0;
153 void (APIENTRY *qglLightModelfv)(GLenum pname, const GLfloat *params) = 0;
154 void (APIENTRY *qglLightModeli)(GLenum pname, GLint param) = 0;
155 void (APIENTRY *qglLightModeliv)(GLenum pname, const GLint *params) = 0;
156 void (APIENTRY *qglLightf)(GLenum light, GLenum pname, GLfloat param) = 0;
157 void (APIENTRY *qglLightfv)(GLenum light, GLenum pname, const GLfloat *params) = 0;
158 void (APIENTRY *qglLighti)(GLenum light, GLenum pname, GLint param) = 0;
159 void (APIENTRY *qglLightiv)(GLenum light, GLenum pname, const GLint *params) = 0;
160 void (APIENTRY *qglLineStipple)(GLint factor, GLushort pattern) = 0;
161 void (APIENTRY *qglLineWidth)(GLfloat width) = 0;
162 void (APIENTRY *qglListBase)(GLuint base) = 0;
163 void (APIENTRY *qglLoadIdentity)(void) = 0;
164 void (APIENTRY *qglLoadMatrixd)(const GLdouble *m) = 0;
165 void (APIENTRY *qglLoadMatrixf)(const GLfloat *m) = 0;
166 void (APIENTRY *qglLoadName)(GLuint name) = 0;
167 void (APIENTRY *qglLogicOp)(GLenum opcode) = 0;
168 void (APIENTRY *qglMap1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points) = 0;
169 void (APIENTRY *qglMap1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points) = 0;
170 void (APIENTRY *qglMap2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points) = 0;
171 void (APIENTRY *qglMap2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points) = 0;
172 void (APIENTRY *qglMapGrid1d)(GLint un, GLdouble u1, GLdouble u2) = 0;
173 void (APIENTRY *qglMapGrid1f)(GLint un, GLfloat u1, GLfloat u2) = 0;
174 void (APIENTRY *qglMapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2) = 0;
175 void (APIENTRY *qglMapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2) = 0;
176 void (APIENTRY *qglMaterialf)(GLenum face, GLenum pname, GLfloat param) = 0;
177 void (APIENTRY *qglMaterialfv)(GLenum face, GLenum pname, const GLfloat *params) = 0;
178 void (APIENTRY *qglMateriali)(GLenum face, GLenum pname, GLint param) = 0;
179 void (APIENTRY *qglMaterialiv)(GLenum face, GLenum pname, const GLint *params) = 0;
180 void (APIENTRY *qglMatrixMode)(GLenum mode) = 0;
181 void (APIENTRY *qglMultMatrixd)(const GLdouble *m) = 0;
182 void (APIENTRY *qglMultMatrixf)(const GLfloat *m) = 0;
183 void (APIENTRY *qglNewList)(GLuint list, GLenum mode) = 0;
184 void (APIENTRY *qglNormal3b)(GLbyte nx, GLbyte ny, GLbyte nz) = 0;
185 void (APIENTRY *qglNormal3bv)(const GLbyte *v) = 0;
186 void (APIENTRY *qglNormal3d)(GLdouble nx, GLdouble ny, GLdouble nz) = 0;
187 void (APIENTRY *qglNormal3dv)(const GLdouble *v) = 0;
188 void (APIENTRY *qglNormal3f)(GLfloat nx, GLfloat ny, GLfloat nz) = 0;
189 void (APIENTRY *qglNormal3fv)(const GLfloat *v) = 0;
190 void (APIENTRY *qglNormal3i)(GLint nx, GLint ny, GLint nz) = 0;
191 void (APIENTRY *qglNormal3iv)(const GLint *v) = 0;
192 void (APIENTRY *qglNormal3s)(GLshort nx, GLshort ny, GLshort nz) = 0;
193 void (APIENTRY *qglNormal3sv)(const GLshort *v) = 0;
194 void (APIENTRY *qglNormalPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) = 0;
195 void (APIENTRY *qglOrtho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar) = 0;
196 void (APIENTRY *qglPassThrough)(GLfloat token) = 0;
197 void (APIENTRY *qglPixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat *values) = 0;
198 void (APIENTRY *qglPixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint *values) = 0;
199 void (APIENTRY *qglPixelMapusv)(GLenum map, GLsizei mapsize, const GLushort *values) = 0;
200 void (APIENTRY *qglPixelStoref)(GLenum pname, GLfloat param) = 0;
201 void (APIENTRY *qglPixelStorei)(GLenum pname, GLint param) = 0;
202 void (APIENTRY *qglPixelTransferf)(GLenum pname, GLfloat param) = 0;
203 void (APIENTRY *qglPixelTransferi)(GLenum pname, GLint param) = 0;
204 void (APIENTRY *qglPixelZoom)(GLfloat xfactor, GLfloat yfactor) = 0;
205 void (APIENTRY *qglPointSize)(GLfloat size) = 0;
206 void (APIENTRY *qglPolygonMode)(GLenum face, GLenum mode) = 0;
207 void (APIENTRY *qglPolygonOffset)(GLfloat factor, GLfloat units) = 0;
208 void (APIENTRY *qglPolygonStipple)(const GLubyte *mask) = 0;
209 void (APIENTRY *qglPopAttrib)(void) = 0;
210 void (APIENTRY *qglPopClientAttrib)(void) = 0;
211 void (APIENTRY *qglPopMatrix)(void) = 0;
212 void (APIENTRY *qglPopName)(void) = 0;
213 void (APIENTRY *qglPrioritizeTextures)(GLsizei n, const GLuint *textures, const GLclampf *priorities) = 0;
214 void (APIENTRY *qglPushAttrib)(GLbitfield mask) = 0;
215 void (APIENTRY *qglPushClientAttrib)(GLbitfield mask) = 0;
216 void (APIENTRY *qglPushMatrix)(void) = 0;
217 void (APIENTRY *qglPushName)(GLuint name) = 0;
218 void (APIENTRY *qglRasterPos2d)(GLdouble x, GLdouble y) = 0;
219 void (APIENTRY *qglRasterPos2dv)(const GLdouble *v) = 0;
220 void (APIENTRY *qglRasterPos2f)(GLfloat x, GLfloat y) = 0;
221 void (APIENTRY *qglRasterPos2fv)(const GLfloat *v) = 0;
222 void (APIENTRY *qglRasterPos2i)(GLint x, GLint y) = 0;
223 void (APIENTRY *qglRasterPos2iv)(const GLint *v) = 0;
224 void (APIENTRY *qglRasterPos2s)(GLshort x, GLshort y) = 0;
225 void (APIENTRY *qglRasterPos2sv)(const GLshort *v) = 0;
226 void (APIENTRY *qglRasterPos3d)(GLdouble x, GLdouble y, GLdouble z) = 0;
227 void (APIENTRY *qglRasterPos3dv)(const GLdouble *v) = 0;
228 void (APIENTRY *qglRasterPos3f)(GLfloat x, GLfloat y, GLfloat z) = 0;
229 void (APIENTRY *qglRasterPos3fv)(const GLfloat *v) = 0;
230 void (APIENTRY *qglRasterPos3i)(GLint x, GLint y, GLint z) = 0;
231 void (APIENTRY *qglRasterPos3iv)(const GLint *v) = 0;
232 void (APIENTRY *qglRasterPos3s)(GLshort x, GLshort y, GLshort z) = 0;
233 void (APIENTRY *qglRasterPos3sv)(const GLshort *v) = 0;
234 void (APIENTRY *qglRasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) = 0;
235 void (APIENTRY *qglRasterPos4dv)(const GLdouble *v) = 0;
236 void (APIENTRY *qglRasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) = 0;
237 void (APIENTRY *qglRasterPos4fv)(const GLfloat *v) = 0;
238 void (APIENTRY *qglRasterPos4i)(GLint x, GLint y, GLint z, GLint w) = 0;
239 void (APIENTRY *qglRasterPos4iv)(const GLint *v) = 0;
240 void (APIENTRY *qglRasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w) = 0;
241 void (APIENTRY *qglRasterPos4sv)(const GLshort *v) = 0;
242 void (APIENTRY *qglReadBuffer)(GLenum mode) = 0;
243 void (APIENTRY *qglReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels) = 0;
244 void (APIENTRY *qglRectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2) = 0;
245 void (APIENTRY *qglRectdv)(const GLdouble *v1, const GLdouble *v2) = 0;
246 void (APIENTRY *qglRectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2) = 0;
247 void (APIENTRY *qglRectfv)(const GLfloat *v1, const GLfloat *v2) = 0;
248 void (APIENTRY *qglRecti)(GLint x1, GLint y1, GLint x2, GLint y2) = 0;
249 void (APIENTRY *qglRectiv)(const GLint *v1, const GLint *v2) = 0;
250 void (APIENTRY *qglRects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2) = 0;
251 void (APIENTRY *qglRectsv)(const GLshort *v1, const GLshort *v2) = 0;
252 GLint (APIENTRY *qglRenderMode)(GLenum mode) = 0;
253 void (APIENTRY *qglRotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z) = 0;
254 void (APIENTRY *qglRotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z) = 0;
255 void (APIENTRY *qglScaled)(GLdouble x, GLdouble y, GLdouble z) = 0;
256 void (APIENTRY *qglScalef)(GLfloat x, GLfloat y, GLfloat z) = 0;
257 void (APIENTRY *qglScissor)(GLint x, GLint y, GLsizei width, GLsizei height) = 0;
258 void (APIENTRY *qglSelectBuffer)(GLsizei size, GLuint *buffer) = 0;
259 void (APIENTRY *qglShadeModel)(GLenum mode) = 0;
260 void (APIENTRY *qglStencilFunc)(GLenum func, GLint ref, GLuint mask) = 0;
261 void (APIENTRY *qglStencilMask)(GLuint mask) = 0;
262 void (APIENTRY *qglStencilOp)(GLenum fail, GLenum zfail, GLenum zpass) = 0;
263 void (APIENTRY *qglTexCoord1d)(GLdouble s) = 0;
264 void (APIENTRY *qglTexCoord1dv)(const GLdouble *v) = 0;
265 void (APIENTRY *qglTexCoord1f)(GLfloat s) = 0;
266 void (APIENTRY *qglTexCoord1fv)(const GLfloat *v) = 0;
267 void (APIENTRY *qglTexCoord1i)(GLint s) = 0;
268 void (APIENTRY *qglTexCoord1iv)(const GLint *v) = 0;
269 void (APIENTRY *qglTexCoord1s)(GLshort s) = 0;
270 void (APIENTRY *qglTexCoord1sv)(const GLshort *v) = 0;
271 void (APIENTRY *qglTexCoord2d)(GLdouble s, GLdouble t) = 0;
272 void (APIENTRY *qglTexCoord2dv)(const GLdouble *v) = 0;
273 void (APIENTRY *qglTexCoord2f)(GLfloat s, GLfloat t) = 0;
274 void (APIENTRY *qglTexCoord2fv)(const GLfloat *v) = 0;
275 void (APIENTRY *qglTexCoord2i)(GLint s, GLint t) = 0;
276 void (APIENTRY *qglTexCoord2iv)(const GLint *v) = 0;
277 void (APIENTRY *qglTexCoord2s)(GLshort s, GLshort t) = 0;
278 void (APIENTRY *qglTexCoord2sv)(const GLshort *v) = 0;
279 void (APIENTRY *qglTexCoord3d)(GLdouble s, GLdouble t, GLdouble r) = 0;
280 void (APIENTRY *qglTexCoord3dv)(const GLdouble *v) = 0;
281 void (APIENTRY *qglTexCoord3f)(GLfloat s, GLfloat t, GLfloat r) = 0;
282 void (APIENTRY *qglTexCoord3fv)(const GLfloat *v) = 0;
283 void (APIENTRY *qglTexCoord3i)(GLint s, GLint t, GLint r) = 0;
284 void (APIENTRY *qglTexCoord3iv)(const GLint *v) = 0;
285 void (APIENTRY *qglTexCoord3s)(GLshort s, GLshort t, GLshort r) = 0;
286 void (APIENTRY *qglTexCoord3sv)(const GLshort *v) = 0;
287 void (APIENTRY *qglTexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q) = 0;
288 void (APIENTRY *qglTexCoord4dv)(const GLdouble *v) = 0;
289 void (APIENTRY *qglTexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q) = 0;
290 void (APIENTRY *qglTexCoord4fv)(const GLfloat *v) = 0;
291 void (APIENTRY *qglTexCoord4i)(GLint s, GLint t, GLint r, GLint q) = 0;
292 void (APIENTRY *qglTexCoord4iv)(const GLint *v) = 0;
293 void (APIENTRY *qglTexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q) = 0;
294 void (APIENTRY *qglTexCoord4sv)(const GLshort *v) = 0;
295 void (APIENTRY *qglTexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) = 0;
296 void (APIENTRY *qglTexEnvf)(GLenum target, GLenum pname, GLfloat param) = 0;
297 void (APIENTRY *qglTexEnvfv)(GLenum target, GLenum pname, const GLfloat *params) = 0;
298 void (APIENTRY *qglTexEnvi)(GLenum target, GLenum pname, GLint param) = 0;
299 void (APIENTRY *qglTexEnviv)(GLenum target, GLenum pname, const GLint *params) = 0;
300 void (APIENTRY *qglTexGend)(GLenum coord, GLenum pname, GLdouble param) = 0;
301 void (APIENTRY *qglTexGendv)(GLenum coord, GLenum pname, const GLdouble *params) = 0;
302 void (APIENTRY *qglTexGenf)(GLenum coord, GLenum pname, GLfloat param) = 0;
303 void (APIENTRY *qglTexGenfv)(GLenum coord, GLenum pname, const GLfloat *params) = 0;
304 void (APIENTRY *qglTexGeni)(GLenum coord, GLenum pname, GLint param) = 0;
305 void (APIENTRY *qglTexGeniv)(GLenum coord, GLenum pname, const GLint *params) = 0;
306 void (APIENTRY *qglTexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels) = 0;
307 void (APIENTRY *qglTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels) = 0;
308 void (APIENTRY *qglTexParameterf)(GLenum target, GLenum pname, GLfloat param) = 0;
309 void (APIENTRY *qglTexParameterfv)(GLenum target, GLenum pname, const GLfloat *params) = 0;
310 void (APIENTRY *qglTexParameteri)(GLenum target, GLenum pname, GLint param) = 0;
311 void (APIENTRY *qglTexParameteriv)(GLenum target, GLenum pname, const GLint *params) = 0;
312 void (APIENTRY *qglTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels) = 0;
313 void (APIENTRY *qglTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) = 0;
314 void (APIENTRY *qglTranslated)(GLdouble x, GLdouble y, GLdouble z) = 0;
315 void (APIENTRY *qglTranslatef)(GLfloat x, GLfloat y, GLfloat z) = 0;
316 void (APIENTRY *qglVertex2d)(GLdouble x, GLdouble y) = 0;
317 void (APIENTRY *qglVertex2dv)(const GLdouble *v) = 0;
318 void (APIENTRY *qglVertex2f)(GLfloat x, GLfloat y) = 0;
319 void (APIENTRY *qglVertex2fv)(const GLfloat *v) = 0;
320 void (APIENTRY *qglVertex2i)(GLint x, GLint y) = 0;
321 void (APIENTRY *qglVertex2iv)(const GLint *v) = 0;
322 void (APIENTRY *qglVertex2s)(GLshort x, GLshort y) = 0;
323 void (APIENTRY *qglVertex2sv)(const GLshort *v) = 0;
324 void (APIENTRY *qglVertex3d)(GLdouble x, GLdouble y, GLdouble z) = 0;
325 void (APIENTRY *qglVertex3dv)(const GLdouble *v) = 0;
326 void (APIENTRY *qglVertex3f)(GLfloat x, GLfloat y, GLfloat z) = 0;
327 void (APIENTRY *qglVertex3fv)(const GLfloat *v) = 0;
328 void (APIENTRY *qglVertex3i)(GLint x, GLint y, GLint z) = 0;
329 void (APIENTRY *qglVertex3iv)(const GLint *v) = 0;
330 void (APIENTRY *qglVertex3s)(GLshort x, GLshort y, GLshort z) = 0;
331 void (APIENTRY *qglVertex3sv)(const GLshort *v) = 0;
332 void (APIENTRY *qglVertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) = 0;
333 void (APIENTRY *qglVertex4dv)(const GLdouble *v) = 0;
334 void (APIENTRY *qglVertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) = 0;
335 void (APIENTRY *qglVertex4fv)(const GLfloat *v) = 0;
336 void (APIENTRY *qglVertex4i)(GLint x, GLint y, GLint z, GLint w) = 0;
337 void (APIENTRY *qglVertex4iv)(const GLint *v) = 0;
338 void (APIENTRY *qglVertex4s)(GLshort x, GLshort y, GLshort z, GLshort w) = 0;
339 void (APIENTRY *qglVertex4sv)(const GLshort *v) = 0;
340 void (APIENTRY *qglVertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) = 0;
341 void (APIENTRY *qglViewport)(GLint x, GLint y, GLsizei width, GLsizei height) = 0;
342
343 PROC (WINAPI *qwglGetProcAddress)(LPCSTR) = 0;
344
345 void (APIENTRY *qglActiveTexture)(GLenum texture) = 0;
346 void (APIENTRY *qglSampleCoverage)(GLclampf value, GLboolean invert) = 0;
347 void (APIENTRY *qglCompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data) = 0;
348 void (APIENTRY *qglCompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data) = 0;
349 void (APIENTRY *qglCompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data) = 0;
350 void (APIENTRY *qglCompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data) = 0;
351 void (APIENTRY *qglCompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data) = 0;
352 void (APIENTRY *qglCompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data) = 0;
353 void (APIENTRY *qglGetCompressedTexImage)(GLenum target, GLint level, GLvoid *img) = 0;
354
355 GLboolean (APIENTRY *qglIsRenderbuffer)(GLuint renderbuffer) = 0;
356 void (APIENTRY *qglBindRenderbuffer)(GLenum target, GLuint renderbuffer) = 0;
357 void (APIENTRY *qglDeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers) = 0;
358 void (APIENTRY *qglGenRenderbuffers)(GLsizei n, GLuint *renderbuffers) = 0;
359 void (APIENTRY *qglRenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) = 0;
360 void (APIENTRY *qglGetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params) = 0;
361 GLboolean (APIENTRY *qglIsFramebuffer)(GLuint framebuffer) = 0;
362 void (APIENTRY *qglBindFramebuffer)(GLenum target, GLuint framebuffer) = 0;
363 void (APIENTRY *qglDeleteFramebuffers)(GLsizei n, const GLuint *framebuffers) = 0;
364 void (APIENTRY *qglGenFramebuffers)(GLsizei n, GLuint *framebuffers) = 0;
365 GLenum (APIENTRY *qglCheckFramebufferStatus)(GLenum target) = 0;
366 void (APIENTRY *qglFramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = 0;
367 void (APIENTRY *qglFramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = 0;
368 void (APIENTRY *qglFramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) = 0;
369 void (APIENTRY *qglFramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) = 0;
370 void (APIENTRY *qglGetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params) = 0;
371 void (APIENTRY *qglGenerateMipmap)(GLenum target) = 0;
372 void (APIENTRY *qglBlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) = 0;
373 void (APIENTRY *qglRenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) = 0;
374 void (APIENTRY *qglFramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) = 0;
375
376 void QGL_InitExtension(void);
377
378 void QGL_Init(void)
379 {
380     HMODULE hOpenGL = GetModuleHandleA("opengl32.dll");
381
382     if (hOpenGL)
383     {
384         qglAccum = (void (APIENTRY *)(GLenum, GLfloat))GetProcAddress(hOpenGL, "glAccum");
385         qglAlphaFunc = (void (APIENTRY *)(GLenum, GLclampf))GetProcAddress(hOpenGL, "glAlphaFunc");
386         qglAreTexturesResident = (GLboolean (APIENTRY *)(GLsizei, const GLuint *, GLboolean *))GetProcAddress(hOpenGL, "glAreTexturesResident");
387         qglArrayElement = (void (APIENTRY *)(GLint))GetProcAddress(hOpenGL, "glArrayElement");
388         qglBegin = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glBegin");
389         qglBindTexture = (void (APIENTRY *)(GLenum, GLuint))GetProcAddress(hOpenGL, "glBindTexture");
390         qglBitmap = (void (APIENTRY *)(GLsizei, GLsizei, GLfloat, GLfloat, GLfloat, GLfloat, const GLubyte *))GetProcAddress(hOpenGL, "glBitmap");
391         qglBlendFunc = (void (APIENTRY *)(GLenum, GLenum))GetProcAddress(hOpenGL, "glBlendFunc");
392         qglCallList = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glCallList");
393         qglCallLists = (void (APIENTRY *)(GLsizei, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glCallLists");
394         qglClear = (void (APIENTRY *)(GLbitfield))GetProcAddress(hOpenGL, "glClear");
395         qglClearAccum = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glClearAccum");
396         qglClearColor = (void (APIENTRY *)(GLclampf, GLclampf, GLclampf, GLclampf))GetProcAddress(hOpenGL, "glClearColor");
397         qglClearDepth = (void (APIENTRY *)(GLclampd))GetProcAddress(hOpenGL, "glClearDepth");
398         qglClearIndex = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glClearIndex");
399         qglClearStencil = (void (APIENTRY *)(GLint))GetProcAddress(hOpenGL, "glClearStencil");
400         qglClipPlane = (void (APIENTRY *)(GLenum, const GLdouble *))GetProcAddress(hOpenGL, "glClipPlane");
401         qglColor3b = (void (APIENTRY *)(GLbyte, GLbyte, GLbyte))GetProcAddress(hOpenGL, "glColor3b");
402         qglColor3bv = (void (APIENTRY *)(const GLbyte *))GetProcAddress(hOpenGL, "glColor3bv");
403         qglColor3d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glColor3d");
404         qglColor3dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glColor3dv");
405         qglColor3f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glColor3f");
406         qglColor3fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glColor3fv");
407         qglColor3i = (void (APIENTRY *)(GLint, GLint, GLint))GetProcAddress(hOpenGL, "glColor3i");
408         qglColor3iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glColor3iv");
409         qglColor3s = (void (APIENTRY *)(GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glColor3s");
410         qglColor3sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glColor3sv");
411         qglColor3ub = (void (APIENTRY *)(GLubyte, GLubyte, GLubyte))GetProcAddress(hOpenGL, "glColor3ub");
412         qglColor3ubv = (void (APIENTRY *)(const GLubyte *))GetProcAddress(hOpenGL, "glColor3ubv");
413         qglColor3ui = (void (APIENTRY *)(GLuint, GLuint, GLuint))GetProcAddress(hOpenGL, "glColor3ui");
414         qglColor3uiv = (void (APIENTRY *)(const GLuint *))GetProcAddress(hOpenGL, "glColor3uiv");
415         qglColor3us = (void (APIENTRY *)(GLushort, GLushort, GLushort))GetProcAddress(hOpenGL, "glColor3us");
416         qglColor3usv = (void (APIENTRY *)(const GLushort *))GetProcAddress(hOpenGL, "glColor3usv");
417         qglColor4b = (void (APIENTRY *)(GLbyte, GLbyte, GLbyte, GLbyte))GetProcAddress(hOpenGL, "glColor4b");
418         qglColor4bv = (void (APIENTRY *)(const GLbyte *))GetProcAddress(hOpenGL, "glColor4bv");
419         qglColor4d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glColor4d");
420         qglColor4dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glColor4dv");
421         qglColor4f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glColor4f");
422         qglColor4fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glColor4fv");
423         qglColor4i = (void (APIENTRY *)(GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glColor4i");
424         qglColor4iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glColor4iv");
425         qglColor4s = (void (APIENTRY *)(GLshort, GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glColor4s");
426         qglColor4sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glColor4sv");
427         qglColor4ub = (void (APIENTRY *)(GLubyte, GLubyte, GLubyte, GLubyte))GetProcAddress(hOpenGL, "glColor4ub");
428         qglColor4ubv = (void (APIENTRY *)(const GLubyte *))GetProcAddress(hOpenGL, "glColor4ubv");
429         qglColor4ui = (void (APIENTRY *)(GLuint, GLuint, GLuint, GLuint))GetProcAddress(hOpenGL, "glColor4ui");
430         qglColor4uiv = (void (APIENTRY *)(const GLuint *))GetProcAddress(hOpenGL, "glColor4uiv");
431         qglColor4us = (void (APIENTRY *)(GLushort, GLushort, GLushort, GLushort))GetProcAddress(hOpenGL, "glColor4us");
432         qglColor4usv = (void (APIENTRY *)(const GLushort *))GetProcAddress(hOpenGL, "glColor4usv");
433         qglColorMask = (void (APIENTRY *)(GLboolean, GLboolean, GLboolean, GLboolean))GetProcAddress(hOpenGL, "glColorMask");
434         qglColorMaterial = (void (APIENTRY *)(GLenum, GLenum))GetProcAddress(hOpenGL, "glColorMaterial");
435         qglColorPointer = (void (APIENTRY *)(GLint, GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glColorPointer");
436         qglCopyPixels = (void (APIENTRY *)(GLint, GLint, GLsizei, GLsizei, GLenum))GetProcAddress(hOpenGL, "glCopyPixels");
437         qglCopyTexImage1D = (void (APIENTRY *)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint))GetProcAddress(hOpenGL, "glCopyTexImage1D");
438         qglCopyTexImage2D = (void (APIENTRY *)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint))GetProcAddress(hOpenGL, "glCopyTexImage2D");
439         qglCopyTexSubImage1D = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLint, GLsizei))GetProcAddress(hOpenGL, "glCopyTexSubImage1D");
440         qglCopyTexSubImage2D = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei))GetProcAddress(hOpenGL, "glCopyTexSubImage2D");
441         qglCullFace = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glCullFace");
442         qglDeleteLists = (void (APIENTRY *)(GLuint, GLsizei))GetProcAddress(hOpenGL, "glDeleteLists");
443         qglDeleteTextures = (void (APIENTRY *)(GLsizei, const GLuint *))GetProcAddress(hOpenGL, "glDeleteTextures");
444         qglDepthFunc = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glDepthFunc");
445         qglDepthMask = (void (APIENTRY *)(GLboolean))GetProcAddress(hOpenGL, "glDepthMask");
446         qglDepthRange = (void (APIENTRY *)(GLclampd, GLclampd))GetProcAddress(hOpenGL, "glDepthRange");
447         qglDisable = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glDisable");
448         qglDisableClientState = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glDisableClientState");
449         qglDrawArrays = (void (APIENTRY *)(GLenum, GLint, GLsizei))GetProcAddress(hOpenGL, "glDrawArrays");
450         qglDrawBuffer = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glDrawBuffer");
451         qglDrawElements = (void (APIENTRY *)(GLenum, GLsizei, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glDrawElements");
452         qglDrawPixels = (void (APIENTRY *)(GLsizei, GLsizei, GLenum, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glDrawPixels");
453         qglEdgeFlag = (void (APIENTRY *)(GLboolean))GetProcAddress(hOpenGL, "glEdgeFlag");
454         qglEdgeFlagPointer = (void (APIENTRY *)(GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glEdgeFlagPointer");
455         qglEdgeFlagv = (void (APIENTRY *)(const GLboolean *))GetProcAddress(hOpenGL, "glEdgeFlagv");
456         qglEnable = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glEnable");
457         qglEnableClientState = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glEnableClientState");
458         qglEnd = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glEnd");
459         qglEndList = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glEndList");
460         qglEvalCoord1d = (void (APIENTRY *)(GLdouble))GetProcAddress(hOpenGL, "glEvalCoord1d");
461         qglEvalCoord1dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glEvalCoord1dv");
462         qglEvalCoord1f = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glEvalCoord1f");
463         qglEvalCoord1fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glEvalCoord1fv");
464         qglEvalCoord2d = (void (APIENTRY *)(GLdouble, GLdouble))GetProcAddress(hOpenGL, "glEvalCoord2d");
465         qglEvalCoord2dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glEvalCoord2dv");
466         qglEvalCoord2f = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glEvalCoord2f");
467         qglEvalCoord2fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glEvalCoord2fv");
468         qglEvalMesh1 = (void (APIENTRY *)(GLenum, GLint, GLint))GetProcAddress(hOpenGL, "glEvalMesh1");
469         qglEvalMesh2 = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glEvalMesh2");
470         qglEvalPoint1 = (void (APIENTRY *)(GLint))GetProcAddress(hOpenGL, "glEvalPoint1");
471         qglEvalPoint2 = (void (APIENTRY *)(GLint, GLint))GetProcAddress(hOpenGL, "glEvalPoint2");
472         qglFeedbackBuffer = (void (APIENTRY *)(GLsizei, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glFeedbackBuffer");
473         qglFinish = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glFinish");
474         qglFlush = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glFlush");
475         qglFogf = (void (APIENTRY *)(GLenum, GLfloat))GetProcAddress(hOpenGL, "glFogf");
476         qglFogfv = (void (APIENTRY *)(GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glFogfv");
477         qglFogi = (void (APIENTRY *)(GLenum, GLint))GetProcAddress(hOpenGL, "glFogi");
478         qglFogiv = (void (APIENTRY *)(GLenum, const GLint *))GetProcAddress(hOpenGL, "glFogiv");
479         qglFrontFace = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glFrontFace");
480         qglFrustum = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glFrustum");
481         qglGenLists = (GLuint (APIENTRY *)(GLsizei))GetProcAddress(hOpenGL, "glGenLists");
482         qglGenTextures = (void (APIENTRY *)(GLsizei, GLuint *))GetProcAddress(hOpenGL, "glGenTextures");
483         qglGetBooleanv = (void (APIENTRY *)(GLenum, GLboolean *))GetProcAddress(hOpenGL, "glGetBooleanv");
484         qglGetClipPlane = (void (APIENTRY *)(GLenum, GLdouble *))GetProcAddress(hOpenGL, "glGetClipPlane");
485         qglGetDoublev = (void (APIENTRY *)(GLenum, GLdouble *))GetProcAddress(hOpenGL, "glGetDoublev");
486         qglGetError = (GLenum (APIENTRY *)(void))GetProcAddress(hOpenGL, "glGetError");
487         qglGetFloatv = (void (APIENTRY *)(GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetFloatv");
488         qglGetIntegerv = (void (APIENTRY *)(GLenum, GLint *))GetProcAddress(hOpenGL, "glGetIntegerv");
489         qglGetLightfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetLightfv");
490         qglGetLightiv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetLightiv");
491         qglGetMapdv = (void (APIENTRY *)(GLenum, GLenum, GLdouble *))GetProcAddress(hOpenGL, "glGetMapdv");
492         qglGetMapfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetMapfv");
493         qglGetMapiv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetMapiv");
494         qglGetMaterialfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetMaterialfv");
495         qglGetMaterialiv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetMaterialiv");
496         qglGetPixelMapfv = (void (APIENTRY *)(GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetPixelMapfv");
497         qglGetPixelMapuiv = (void (APIENTRY *)(GLenum, GLuint *))GetProcAddress(hOpenGL, "glGetPixelMapuiv");
498         qglGetPixelMapusv = (void (APIENTRY *)(GLenum, GLushort *))GetProcAddress(hOpenGL, "glGetPixelMapusv");
499         qglGetPointerv = (void (APIENTRY *)(GLenum, GLvoid* *))GetProcAddress(hOpenGL, "glGetPointerv");
500         qglGetPolygonStipple = (void (APIENTRY *)(GLubyte *))GetProcAddress(hOpenGL, "glGetPolygonStipple");
501         qglGetString = (const GLubyte * (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glGetString");
502         qglGetTexEnvfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetTexEnvfv");
503         qglGetTexEnviv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetTexEnviv");
504         qglGetTexGendv = (void (APIENTRY *)(GLenum, GLenum, GLdouble *))GetProcAddress(hOpenGL, "glGetTexGendv");
505         qglGetTexGenfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetTexGenfv");
506         qglGetTexGeniv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetTexGeniv");
507         qglGetTexImage = (void (APIENTRY *)(GLenum, GLint, GLenum, GLenum, GLvoid *))GetProcAddress(hOpenGL, "glGetTexImage");
508         qglGetTexLevelParameterfv = (void (APIENTRY *)(GLenum, GLint, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetTexLevelParameterfv");
509         qglGetTexLevelParameteriv = (void (APIENTRY *)(GLenum, GLint, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetTexLevelParameteriv");
510         qglGetTexParameterfv = (void (APIENTRY *)(GLenum, GLenum, GLfloat *))GetProcAddress(hOpenGL, "glGetTexParameterfv");
511         qglGetTexParameteriv = (void (APIENTRY *)(GLenum, GLenum, GLint *))GetProcAddress(hOpenGL, "glGetTexParameteriv");
512         qglHint = (void (APIENTRY *)(GLenum, GLenum))GetProcAddress(hOpenGL, "glHint");
513         qglIndexMask = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glIndexMask");
514         qglIndexPointer = (void (APIENTRY *)(GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glIndexPointer");
515         qglIndexd = (void (APIENTRY *)(GLdouble))GetProcAddress(hOpenGL, "glIndexd");
516         qglIndexdv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glIndexdv");
517         qglIndexf = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glIndexf");
518         qglIndexfv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glIndexfv");
519         qglIndexi = (void (APIENTRY *)(GLint))GetProcAddress(hOpenGL, "glIndexi");
520         qglIndexiv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glIndexiv");
521         qglIndexs = (void (APIENTRY *)(GLshort))GetProcAddress(hOpenGL, "glIndexs");
522         qglIndexsv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glIndexsv");
523         qglIndexub = (void (APIENTRY *)(GLubyte))GetProcAddress(hOpenGL, "glIndexub");
524         qglIndexubv = (void (APIENTRY *)(const GLubyte *))GetProcAddress(hOpenGL, "glIndexubv");
525         qglInitNames = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glInitNames");
526         qglInterleavedArrays = (void (APIENTRY *)(GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glInterleavedArrays");
527         qglIsEnabled = (GLboolean (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glIsEnabled");
528         qglIsList = (GLboolean (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glIsList");
529         qglIsTexture = (GLboolean (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glIsTexture");
530         qglLightModelf = (void (APIENTRY *)(GLenum, GLfloat))GetProcAddress(hOpenGL, "glLightModelf");
531         qglLightModelfv = (void (APIENTRY *)(GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glLightModelfv");
532         qglLightModeli = (void (APIENTRY *)(GLenum, GLint))GetProcAddress(hOpenGL, "glLightModeli");
533         qglLightModeliv = (void (APIENTRY *)(GLenum, const GLint *))GetProcAddress(hOpenGL, "glLightModeliv");
534         qglLightf = (void (APIENTRY *)(GLenum, GLenum, GLfloat))GetProcAddress(hOpenGL, "glLightf");
535         qglLightfv = (void (APIENTRY *)(GLenum, GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glLightfv");
536         qglLighti = (void (APIENTRY *)(GLenum, GLenum, GLint))GetProcAddress(hOpenGL, "glLighti");
537         qglLightiv = (void (APIENTRY *)(GLenum, GLenum, const GLint *))GetProcAddress(hOpenGL, "glLightiv");
538         qglLineStipple = (void (APIENTRY *)(GLint, GLushort))GetProcAddress(hOpenGL, "glLineStipple");
539         qglLineWidth = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glLineWidth");
540         qglListBase = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glListBase");
541         qglLoadIdentity = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glLoadIdentity");
542         qglLoadMatrixd = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glLoadMatrixd");
543         qglLoadMatrixf = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glLoadMatrixf");
544         qglLoadName = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glLoadName");
545         qglLogicOp = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glLogicOp");
546         qglMap1d = (void (APIENTRY *)(GLenum, GLdouble, GLdouble, GLint, GLint, const GLdouble *))GetProcAddress(hOpenGL, "glMap1d");
547         qglMap1f = (void (APIENTRY *)(GLenum, GLfloat, GLfloat, GLint, GLint, const GLfloat *))GetProcAddress(hOpenGL, "glMap1f");
548         qglMap2d = (void (APIENTRY *)(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, const GLdouble *))GetProcAddress(hOpenGL, "glMap2d");
549         qglMap2f = (void (APIENTRY *)(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, const GLfloat *))GetProcAddress(hOpenGL, "glMap2f");
550         qglMapGrid1d = (void (APIENTRY *)(GLint, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glMapGrid1d");
551         qglMapGrid1f = (void (APIENTRY *)(GLint, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glMapGrid1f");
552         qglMapGrid2d = (void (APIENTRY *)(GLint, GLdouble, GLdouble, GLint, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glMapGrid2d");
553         qglMapGrid2f = (void (APIENTRY *)(GLint, GLfloat, GLfloat, GLint, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glMapGrid2f");
554         qglMaterialf = (void (APIENTRY *)(GLenum, GLenum, GLfloat))GetProcAddress(hOpenGL, "glMaterialf");
555         qglMaterialfv = (void (APIENTRY *)(GLenum, GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glMaterialfv");
556         qglMateriali = (void (APIENTRY *)(GLenum, GLenum, GLint))GetProcAddress(hOpenGL, "glMateriali");
557         qglMaterialiv = (void (APIENTRY *)(GLenum, GLenum, const GLint *))GetProcAddress(hOpenGL, "glMaterialiv");
558         qglMatrixMode = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glMatrixMode");
559         qglMultMatrixd = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glMultMatrixd");
560         qglMultMatrixf = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glMultMatrixf");
561         qglNewList = (void (APIENTRY *)(GLuint, GLenum))GetProcAddress(hOpenGL, "glNewList");
562         qglNormal3b = (void (APIENTRY *)(GLbyte, GLbyte, GLbyte))GetProcAddress(hOpenGL, "glNormal3b");
563         qglNormal3bv = (void (APIENTRY *)(const GLbyte *))GetProcAddress(hOpenGL, "glNormal3bv");
564         qglNormal3d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glNormal3d");
565         qglNormal3dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glNormal3dv");
566         qglNormal3f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glNormal3f");
567         qglNormal3fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glNormal3fv");
568         qglNormal3i = (void (APIENTRY *)(GLint, GLint, GLint))GetProcAddress(hOpenGL, "glNormal3i");
569         qglNormal3iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glNormal3iv");
570         qglNormal3s = (void (APIENTRY *)(GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glNormal3s");
571         qglNormal3sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glNormal3sv");
572         qglNormalPointer = (void (APIENTRY *)(GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glNormalPointer");
573         qglOrtho = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glOrtho");
574         qglPassThrough = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glPassThrough");
575         qglPixelMapfv = (void (APIENTRY *)(GLenum, GLsizei, const GLfloat *))GetProcAddress(hOpenGL, "glPixelMapfv");
576         qglPixelMapuiv = (void (APIENTRY *)(GLenum, GLsizei, const GLuint *))GetProcAddress(hOpenGL, "glPixelMapuiv");
577         qglPixelMapusv = (void (APIENTRY *)(GLenum, GLsizei, const GLushort *))GetProcAddress(hOpenGL, "glPixelMapusv");
578         qglPixelStoref = (void (APIENTRY *)(GLenum, GLfloat))GetProcAddress(hOpenGL, "glPixelStoref");
579         qglPixelStorei = (void (APIENTRY *)(GLenum, GLint))GetProcAddress(hOpenGL, "glPixelStorei");
580         qglPixelTransferf = (void (APIENTRY *)(GLenum, GLfloat))GetProcAddress(hOpenGL, "glPixelTransferf");
581         qglPixelTransferi = (void (APIENTRY *)(GLenum, GLint))GetProcAddress(hOpenGL, "glPixelTransferi");
582         qglPixelZoom = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glPixelZoom");
583         qglPointSize = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glPointSize");
584         qglPolygonMode = (void (APIENTRY *)(GLenum, GLenum))GetProcAddress(hOpenGL, "glPolygonMode");
585         qglPolygonOffset = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glPolygonOffset");
586         qglPolygonStipple = (void (APIENTRY *)(const GLubyte *))GetProcAddress(hOpenGL, "glPolygonStipple");
587         qglPopAttrib = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glPopAttrib");
588         qglPopClientAttrib = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glPopClientAttrib");
589         qglPopMatrix = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glPopMatrix");
590         qglPopName = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glPopName");
591         qglPrioritizeTextures = (void (APIENTRY *)(GLsizei, const GLuint *, const GLclampf *))GetProcAddress(hOpenGL, "glPrioritizeTextures");
592         qglPushAttrib = (void (APIENTRY *)(GLbitfield))GetProcAddress(hOpenGL, "glPushAttrib");
593         qglPushClientAttrib = (void (APIENTRY *)(GLbitfield))GetProcAddress(hOpenGL, "glPushClientAttrib");
594         qglPushMatrix = (void (APIENTRY *)(void))GetProcAddress(hOpenGL, "glPushMatrix");
595         qglPushName = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glPushName");
596         qglRasterPos2d = (void (APIENTRY *)(GLdouble, GLdouble))GetProcAddress(hOpenGL, "glRasterPos2d");
597         qglRasterPos2dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glRasterPos2dv");
598         qglRasterPos2f = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glRasterPos2f");
599         qglRasterPos2fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glRasterPos2fv");
600         qglRasterPos2i = (void (APIENTRY *)(GLint, GLint))GetProcAddress(hOpenGL, "glRasterPos2i");
601         qglRasterPos2iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glRasterPos2iv");
602         qglRasterPos2s = (void (APIENTRY *)(GLshort, GLshort))GetProcAddress(hOpenGL, "glRasterPos2s");
603         qglRasterPos2sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glRasterPos2sv");
604         qglRasterPos3d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glRasterPos3d");
605         qglRasterPos3dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glRasterPos3dv");
606         qglRasterPos3f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glRasterPos3f");
607         qglRasterPos3fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glRasterPos3fv");
608         qglRasterPos3i = (void (APIENTRY *)(GLint, GLint, GLint))GetProcAddress(hOpenGL, "glRasterPos3i");
609         qglRasterPos3iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glRasterPos3iv");
610         qglRasterPos3s = (void (APIENTRY *)(GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glRasterPos3s");
611         qglRasterPos3sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glRasterPos3sv");
612         qglRasterPos4d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glRasterPos4d");
613         qglRasterPos4dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glRasterPos4dv");
614         qglRasterPos4f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glRasterPos4f");
615         qglRasterPos4fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glRasterPos4fv");
616         qglRasterPos4i = (void (APIENTRY *)(GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glRasterPos4i");
617         qglRasterPos4iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glRasterPos4iv");
618         qglRasterPos4s = (void (APIENTRY *)(GLshort, GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glRasterPos4s");
619         qglRasterPos4sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glRasterPos4sv");
620         qglReadBuffer = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glReadBuffer");
621         qglReadPixels = (void (APIENTRY *)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid *))GetProcAddress(hOpenGL, "glReadPixels");
622         qglRectd = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glRectd");
623         qglRectdv = (void (APIENTRY *)(const GLdouble *, const GLdouble *))GetProcAddress(hOpenGL, "glRectdv");
624         qglRectf = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glRectf");
625         qglRectfv = (void (APIENTRY *)(const GLfloat *, const GLfloat *))GetProcAddress(hOpenGL, "glRectfv");
626         qglRecti = (void (APIENTRY *)(GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glRecti");
627         qglRectiv = (void (APIENTRY *)(const GLint *, const GLint *))GetProcAddress(hOpenGL, "glRectiv");
628         qglRects = (void (APIENTRY *)(GLshort, GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glRects");
629         qglRectsv = (void (APIENTRY *)(const GLshort *, const GLshort *))GetProcAddress(hOpenGL, "glRectsv");
630         qglRenderMode = (GLint (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glRenderMode");
631         qglRotated = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glRotated");
632         qglRotatef = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glRotatef");
633         qglScaled = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glScaled");
634         qglScalef = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glScalef");
635         qglScissor = (void (APIENTRY *)(GLint, GLint, GLsizei, GLsizei))GetProcAddress(hOpenGL, "glScissor");
636         qglSelectBuffer = (void (APIENTRY *)(GLsizei, GLuint *))GetProcAddress(hOpenGL, "glSelectBuffer");
637         qglShadeModel = (void (APIENTRY *)(GLenum))GetProcAddress(hOpenGL, "glShadeModel");
638         qglStencilFunc = (void (APIENTRY *)(GLenum, GLint, GLuint))GetProcAddress(hOpenGL, "glStencilFunc");
639         qglStencilMask = (void (APIENTRY *)(GLuint))GetProcAddress(hOpenGL, "glStencilMask");
640         qglStencilOp = (void (APIENTRY *)(GLenum, GLenum, GLenum))GetProcAddress(hOpenGL, "glStencilOp");
641         qglTexCoord1d = (void (APIENTRY *)(GLdouble))GetProcAddress(hOpenGL, "glTexCoord1d");
642         qglTexCoord1dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glTexCoord1dv");
643         qglTexCoord1f = (void (APIENTRY *)(GLfloat))GetProcAddress(hOpenGL, "glTexCoord1f");
644         qglTexCoord1fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glTexCoord1fv");
645         qglTexCoord1i = (void (APIENTRY *)(GLint))GetProcAddress(hOpenGL, "glTexCoord1i");
646         qglTexCoord1iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glTexCoord1iv");
647         qglTexCoord1s = (void (APIENTRY *)(GLshort))GetProcAddress(hOpenGL, "glTexCoord1s");
648         qglTexCoord1sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glTexCoord1sv");
649         qglTexCoord2d = (void (APIENTRY *)(GLdouble, GLdouble))GetProcAddress(hOpenGL, "glTexCoord2d");
650         qglTexCoord2dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glTexCoord2dv");
651         qglTexCoord2f = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glTexCoord2f");
652         qglTexCoord2fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glTexCoord2fv");
653         qglTexCoord2i = (void (APIENTRY *)(GLint, GLint))GetProcAddress(hOpenGL, "glTexCoord2i");
654         qglTexCoord2iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glTexCoord2iv");
655         qglTexCoord2s = (void (APIENTRY *)(GLshort, GLshort))GetProcAddress(hOpenGL, "glTexCoord2s");
656         qglTexCoord2sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glTexCoord2sv");
657         qglTexCoord3d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glTexCoord3d");
658         qglTexCoord3dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glTexCoord3dv");
659         qglTexCoord3f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glTexCoord3f");
660         qglTexCoord3fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glTexCoord3fv");
661         qglTexCoord3i = (void (APIENTRY *)(GLint, GLint, GLint))GetProcAddress(hOpenGL, "glTexCoord3i");
662         qglTexCoord3iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glTexCoord3iv");
663         qglTexCoord3s = (void (APIENTRY *)(GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glTexCoord3s");
664         qglTexCoord3sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glTexCoord3sv");
665         qglTexCoord4d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glTexCoord4d");
666         qglTexCoord4dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glTexCoord4dv");
667         qglTexCoord4f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glTexCoord4f");
668         qglTexCoord4fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glTexCoord4fv");
669         qglTexCoord4i = (void (APIENTRY *)(GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glTexCoord4i");
670         qglTexCoord4iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glTexCoord4iv");
671         qglTexCoord4s = (void (APIENTRY *)(GLshort, GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glTexCoord4s");
672         qglTexCoord4sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glTexCoord4sv");
673         qglTexCoordPointer = (void (APIENTRY *)(GLint, GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glTexCoordPointer");
674         qglTexEnvf = (void (APIENTRY *)(GLenum, GLenum, GLfloat))GetProcAddress(hOpenGL, "glTexEnvf");
675         qglTexEnvfv = (void (APIENTRY *)(GLenum, GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glTexEnvfv");
676         qglTexEnvi = (void (APIENTRY *)(GLenum, GLenum, GLint))GetProcAddress(hOpenGL, "glTexEnvi");
677         qglTexEnviv = (void (APIENTRY *)(GLenum, GLenum, const GLint *))GetProcAddress(hOpenGL, "glTexEnviv");
678         qglTexGend = (void (APIENTRY *)(GLenum, GLenum, GLdouble))GetProcAddress(hOpenGL, "glTexGend");
679         qglTexGendv = (void (APIENTRY *)(GLenum, GLenum, const GLdouble *))GetProcAddress(hOpenGL, "glTexGendv");
680         qglTexGenf = (void (APIENTRY *)(GLenum, GLenum, GLfloat))GetProcAddress(hOpenGL, "glTexGenf");
681         qglTexGenfv = (void (APIENTRY *)(GLenum, GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glTexGenfv");
682         qglTexGeni = (void (APIENTRY *)(GLenum, GLenum, GLint))GetProcAddress(hOpenGL, "glTexGeni");
683         qglTexGeniv = (void (APIENTRY *)(GLenum, GLenum, const GLint *))GetProcAddress(hOpenGL, "glTexGeniv");
684         qglTexImage1D = (void (APIENTRY *)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glTexImage1D");
685         qglTexImage2D = (void (APIENTRY *)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glTexImage2D");
686         qglTexParameterf = (void (APIENTRY *)(GLenum, GLenum, GLfloat))GetProcAddress(hOpenGL, "glTexParameterf");
687         qglTexParameterfv = (void (APIENTRY *)(GLenum, GLenum, const GLfloat *))GetProcAddress(hOpenGL, "glTexParameterfv");
688         qglTexParameteri = (void (APIENTRY *)(GLenum, GLenum, GLint))GetProcAddress(hOpenGL, "glTexParameteri");
689         qglTexParameteriv = (void (APIENTRY *)(GLenum, GLenum, const GLint *))GetProcAddress(hOpenGL, "glTexParameteriv");
690         qglTexSubImage1D = (void (APIENTRY *)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glTexSubImage1D");
691         qglTexSubImage2D = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *))GetProcAddress(hOpenGL, "glTexSubImage2D");
692         qglTranslated = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glTranslated");
693         qglTranslatef = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glTranslatef");
694         qglVertex2d = (void (APIENTRY *)(GLdouble, GLdouble))GetProcAddress(hOpenGL, "glVertex2d");
695         qglVertex2dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glVertex2dv");
696         qglVertex2f = (void (APIENTRY *)(GLfloat, GLfloat))GetProcAddress(hOpenGL, "glVertex2f");
697         qglVertex2fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glVertex2fv");
698         qglVertex2i = (void (APIENTRY *)(GLint, GLint))GetProcAddress(hOpenGL, "glVertex2i");
699         qglVertex2iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glVertex2iv");
700         qglVertex2s = (void (APIENTRY *)(GLshort, GLshort))GetProcAddress(hOpenGL, "glVertex2s");
701         qglVertex2sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glVertex2sv");
702         qglVertex3d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glVertex3d");
703         qglVertex3dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glVertex3dv");
704         qglVertex3f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glVertex3f");
705         qglVertex3fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glVertex3fv");
706         qglVertex3i = (void (APIENTRY *)(GLint, GLint, GLint))GetProcAddress(hOpenGL, "glVertex3i");
707         qglVertex3iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glVertex3iv");
708         qglVertex3s = (void (APIENTRY *)(GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glVertex3s");
709         qglVertex3sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glVertex3sv");
710         qglVertex4d = (void (APIENTRY *)(GLdouble, GLdouble, GLdouble, GLdouble))GetProcAddress(hOpenGL, "glVertex4d");
711         qglVertex4dv = (void (APIENTRY *)(const GLdouble *))GetProcAddress(hOpenGL, "glVertex4dv");
712         qglVertex4f = (void (APIENTRY *)(GLfloat, GLfloat, GLfloat, GLfloat))GetProcAddress(hOpenGL, "glVertex4f");
713         qglVertex4fv = (void (APIENTRY *)(const GLfloat *))GetProcAddress(hOpenGL, "glVertex4fv");
714         qglVertex4i = (void (APIENTRY *)(GLint, GLint, GLint, GLint))GetProcAddress(hOpenGL, "glVertex4i");
715         qglVertex4iv = (void (APIENTRY *)(const GLint *))GetProcAddress(hOpenGL, "glVertex4iv");
716         qglVertex4s = (void (APIENTRY *)(GLshort, GLshort, GLshort, GLshort))GetProcAddress(hOpenGL, "glVertex4s");
717         qglVertex4sv = (void (APIENTRY *)(const GLshort *))GetProcAddress(hOpenGL, "glVertex4sv");
718         qglVertexPointer = (void (APIENTRY *)(GLint, GLenum, GLsizei, const GLvoid *))GetProcAddress(hOpenGL, "glVertexPointer");
719         qglViewport = (void (APIENTRY *)(GLint, GLint, GLsizei, GLsizei))GetProcAddress(hOpenGL, "glViewport");
720
721         qwglGetProcAddress = (PROC (WINAPI *)(LPCSTR))GetProcAddress(hOpenGL, "wglGetProcAddress");
722
723         QGL_InitExtension();
724     }
725 }
726
727 void QGL_InitExtension(void)
728 {
729     const char *version = (const char *)qglGetString(GL_VERSION);
730     const char *extensions = (const char *)qglGetString(GL_EXTENSIONS);
731
732     if (version[0] > ‘1‘ && version[2] > ‘3‘)
733     {
734         qglActiveTexture = (void (APIENTRY *)(GLenum))qwglGetProcAddress("glActiveTexture");
735         qglSampleCoverage = (void (APIENTRY *)(GLclampf, GLboolean))qwglGetProcAddress("glSampleCoverage");
736         qglCompressedTexImage3D = (void (APIENTRY *)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexImage3D");
737         qglCompressedTexImage2D = (void (APIENTRY *)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexImage2D");
738         qglCompressedTexImage1D = (void (APIENTRY *)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexImage1D");
739         qglCompressedTexSubImage3D = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexSubImage3D");
740         qglCompressedTexSubImage2D = (void (APIENTRY *)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexSubImage2D");
741         qglCompressedTexSubImage1D = (void (APIENTRY *)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *))qwglGetProcAddress("glCompressedTexSubImage1D");
742         qglGetCompressedTexImage = (void (APIENTRY *)(GLenum, GLint, GLvoid *))qwglGetProcAddress("glGetCompressedTexImage");
743     }
744
745     if (strstr(extensions, "GL_ARB_framebuffer_object"))
746     {
747         qglIsRenderbuffer = (GLboolean (APIENTRY *)(GLuint))qwglGetProcAddress("glIsRenderbuffer");
748         qglBindRenderbuffer = (void (APIENTRY *)(GLenum, GLuint))qwglGetProcAddress("glBindRenderbuffer");
749         qglDeleteRenderbuffers = (void (APIENTRY *)(GLsizei, const GLuint *))qwglGetProcAddress("glDeleteRenderbuffers");
750         qglGenRenderbuffers = (void (APIENTRY *)(GLsizei, GLuint *))qwglGetProcAddress("glGenRenderbuffers");
751         qglRenderbufferStorage = (void (APIENTRY *)(GLenum, GLenum, GLsizei, GLsizei))qwglGetProcAddress("glRenderbufferStorage");
752         qglGetRenderbufferParameteriv = (void (APIENTRY *)(GLenum, GLenum, GLint *))qwglGetProcAddress("glGetRenderbufferParameteriv");
753         qglIsFramebuffer = (GLboolean (APIENTRY *)(GLuint))qwglGetProcAddress("glIsFramebuffer");
754         qglBindFramebuffer = (void (APIENTRY *)(GLenum, GLuint))qwglGetProcAddress("glBindFramebuffer");
755         qglDeleteFramebuffers = (void (APIENTRY *)(GLsizei, const GLuint *))qwglGetProcAddress("glDeleteFramebuffers");
756         qglGenFramebuffers = (void (APIENTRY *)(GLsizei, GLuint *))qwglGetProcAddress("glGenFramebuffers");
757         qglCheckFramebufferStatus = (GLenum (APIENTRY *)(GLenum))qwglGetProcAddress("glCheckFramebufferStatus");
758         qglFramebufferTexture1D = (void (APIENTRY *)(GLenum, GLenum, GLenum, GLuint, GLint))qwglGetProcAddress("glFramebufferTexture1D");
759         qglFramebufferTexture2D = (void (APIENTRY *)(GLenum, GLenum, GLenum, GLuint, GLint))qwglGetProcAddress("glFramebufferTexture2D");
760         qglFramebufferTexture3D = (void (APIENTRY *)(GLenum, GLenum, GLenum, GLuint, GLint, GLint))qwglGetProcAddress("glFramebufferTexture3D");
761         qglFramebufferRenderbuffer = (void (APIENTRY *)(GLenum, GLenum, GLenum, GLuint))qwglGetProcAddress("glFramebufferRenderbuffer");
762         qglGetFramebufferAttachmentParameteriv = (void (APIENTRY *)(GLenum, GLenum, GLenum, GLint *))qwglGetProcAddress("glGetFramebufferAttachmentParameteriv");
763         qglGenerateMipmap = (void (APIENTRY *)(GLenum))qwglGetProcAddress("glGenerateMipmap");
764         qglBlitFramebuffer = (void (APIENTRY *)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum))qwglGetProcAddress("glBlitFramebuffer");
765         qglRenderbufferStorageMultisample = (void (APIENTRY *)(GLenum, GLsizei, GLenum, GLsizei, GLsizei))qwglGetProcAddress("glRenderbufferStorageMultisample");
766         qglFramebufferTextureLayer = (void (APIENTRY *)(GLenum, GLenum, GLuint, GLint, GLint))qwglGetProcAddress("glFramebufferTextureLayer");
767     }
768 }
时间: 2024-10-04 02:52:16

[MetaHook] Quake OpenGL function的相关文章

[MetaHook] Quake Bink function

If you want to play Bink video in game, maybe you need this code. QBink.h 1 #ifndef QBINK_H 2 #define QBINK_H 3 4 #include "bink.h" 5 6 extern void PTR4* (RADEXPLINK *qBinkLogoAddress)(void); 7 extern void (RADEXPLINK *qBinkSetError)(const char

[MetaHook] Find a function signature

Find a non-public function signature, we need a tool "IDA Pro" ( You can open picture in a new window :D ) Step 1 Load your PE file in IDA Step 2 Find your function, you can use F5 to decompile a function You can refer to the string and function

[MetaHook] Quake FMOD player demo

CFMOD.h 1 #ifndef CFMOD_H 2 #define CFMOD_H 3 4 #include "qfmod.h" 5 6 struct Sound_t 7 { 8 char *pszName; 9 FMOD_SOUND *pSound; 10 FMOD_CHANNEL *pChannel; 11 Sound_t *pNext; 12 }; 13 14 #ifdef PlaySound 15 #undef PlaySound 16 #endif 17 18 class

第三章:初始化 OpenGL 4.0

原文地址: http://www.rastertek.com/gl40tut03.html Tutorial 3: Initializing OpenGL 4.0 This tutorial will be the first real introduction to working with OpenGL 4.0. We will address three main things which are initializing OpenGL 4.0, shutting it down, and

OpenGL学习--开发环境

1. VS2017 Professional安装 1.1. 下载 mu_visual_studio_professional_2017_x86_x64_10049787.exe 1.2. 双击开始安装 双击mu_visual_studio_professional_2017_x86_x64_10049787.exe开始安装 安装完成后重启计算机 1.3. 启动 点击菜单中的[Visual Studio 2017]启动 1.4. 注册 输入以下序列号 Visual Studio 2017 Key企

OpenGL 开发环境配置:Visual Studio 2017 + GLFW + GLEW

Step1:Visual Studio 2017 Why 开发环境,后面编译GLFW 和 GLEW也要用 How 这里使用的是Visual Studio 2017的 Community 版本,直接官网下载,注册,就可以免费用. 2017版本在安装界面里注意要勾选c++相关选项,否则默认不安装c++组件. 当然,较早版本(2015,2013,2010什么的)也是可以的. Step2:CMake Why 后面几步要用到的东西需要手动编译(用Visual Studio编译),但是下载下来的都是源码,并

高级OPENGL, 利用uniform块接口

1.找到需要的uniform块的索引, 将程序对象的该uniform块索引绑定uniform 缓冲对象的绑定点 2.建立uniform缓冲对象,对象绑定GL_UNIFORM_BUFFER缓冲目标,为缓冲分配内存,将缓冲对象绑定到特定的绑定点,定义绑定点的缓冲范围 3.在渲染循环外绑定uniform块内不需更新的uniform,在渲染循环内绑定uniform块中需要更新的uniform 4.按正常思维,在渲染循环外或内,绑定不再uniform块中的uniform 下面是一个例子,将四个立方体平移到

opengl绘制三角形

顶点数组对象:Vertex Array Object,VAO 顶点缓冲对象:Vertex Buffer Object,VBO 索引缓冲对象:Element Buffer Object,EBO或Index Buffer Object,IBO 渲染管线 在OpenGL中,任何事物都在3D空间中,而屏幕和窗口却是2D像素数组,这导致OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素.3D坐标转为2D坐标的处理过程是由OpenGL的图形渲染管线管理的.图形渲染管线可以被划分为两个主要部

建立OpenGL环境(Visual studio 2015)

1. 创建一个OpenGL上下文(Context)和一个用于显示的窗口 最流行的几个库有GLUT,SDL,SFML和GLFW,提供给我们一个窗口和上下文用来渲染. 2. GLFW是一个专门针对OpenGL的C语言库,它提供了一些渲染物体所需的最低限度的接口. 允许用户创建OpenGL上下文,定义窗口参数以及处理用户输入. 3. 建立GLFW环境(Visual Studio 2015) 3.1 下载GLFW 3.2 下载源码包之后,将其解压并打开.我们只需要里面的这些内容: 编译生成的库 incl