root/trunk/gl/gl.d

Revision 368, 128.0 kB (checked in by hotgloupi, 1 year ago)

using _types

Line 
1 module c.gl.gl;
2
3 /*
4  * Mesa 3-D graphics library
5  * Version:  6.3
6  *
7  * Copyright (C) 1999-2005  Brian Paul   All Rights Reserved.
8  *
9  * Permission is hereby granted, free of charge, to any person obtaining a
10  * copy of this software and associated documentation files (the "Software"),
11  * to deal in the Software without restriction, including without limitation
12  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
13  * and/or sell copies of the Software, and to permit persons to whom the
14  * Software is furnished to do so, subject to the following conditions:
15  *
16  * The above copyright notice and this permission notice shall be included
17  * in all copies or substantial portions of the Software.
18  *
19  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
22  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
23  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
24  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25  */
26
27 import c.gl.glext;
28 private import std.loader;
29 public import c.gl._types;
30
31 /*
32  * Constants
33  */
34 // Boolean values
35 const ubyte GL_FALSE                = 0x0;
36 const ubyte GL_TRUE             = 0x1;
37
38 // Data types
39 const GLuint GL_BYTE                = 0x1400;
40 const GLuint GL_UNSIGNED_BYTE           = 0x1401;
41 const GLuint GL_SHORT               = 0x1402;
42 const GLuint GL_UNSIGNED_SHORT          = 0x1403;
43 const GLuint GL_INT             = 0x1404;
44 const GLuint GL_UNSIGNED_INT            = 0x1405;
45 const GLuint GL_FLOAT               = 0x1406;
46 const GLuint GL_DOUBLE              = 0x140A;
47 const GLuint GL_2_BYTES             = 0x1407;
48 const GLuint GL_3_BYTES             = 0x1408;
49 const GLuint GL_4_BYTES             = 0x1409;
50
51 // Primitives
52 const GLuint GL_POINTS              = 0x0000;
53 const GLuint GL_LINES               = 0x0001;
54 const GLuint GL_LINE_LOOP           = 0x0002;
55 const GLuint GL_LINE_STRIP          = 0x0003;
56 const GLuint GL_TRIANGLES           = 0x0004;
57 const GLuint GL_TRIANGLE_STRIP          = 0x0005;
58 const GLuint GL_TRIANGLE_FAN            = 0x0006;
59 const GLuint GL_QUADS               = 0x0007;
60 const GLuint GL_QUAD_STRIP          = 0x0008;
61 const GLuint GL_POLYGON             = 0x0009;
62
63 // Vertex Arrays
64 const GLuint GL_VERTEX_ARRAY            = 0x8074;
65 const GLuint GL_NORMAL_ARRAY            = 0x8075;
66 const GLuint GL_COLOR_ARRAY         = 0x8076;
67 const GLuint GL_INDEX_ARRAY         = 0x8077;
68 const GLuint GL_TEXTURE_COORD_ARRAY     = 0x8078;
69 const GLuint GL_EDGE_FLAG_ARRAY         = 0x8079;
70 const GLuint GL_VERTEX_ARRAY_SIZE       = 0x807A;
71 const GLuint GL_VERTEX_ARRAY_TYPE       = 0x807B;
72 const GLuint GL_VERTEX_ARRAY_STRIDE     = 0x807C;
73 const GLuint GL_NORMAL_ARRAY_TYPE       = 0x807E;
74 const GLuint GL_NORMAL_ARRAY_STRIDE     = 0x807F;
75 const GLuint GL_COLOR_ARRAY_SIZE        = 0x8081;
76 const GLuint GL_COLOR_ARRAY_TYPE        = 0x8082;
77 const GLuint GL_COLOR_ARRAY_STRIDE      = 0x8083;
78 const GLuint GL_INDEX_ARRAY_TYPE        = 0x8085;
79 const GLuint GL_INDEX_ARRAY_STRIDE      = 0x8086;
80 const GLuint GL_TEXTURE_COORD_ARRAY_SIZE    = 0x8088;
81 const GLuint GL_TEXTURE_COORD_ARRAY_TYPE    = 0x8089;
82 const GLuint GL_TEXTURE_COORD_ARRAY_STRIDE  = 0x808A;
83 const GLuint GL_EDGE_FLAG_ARRAY_STRIDE      = 0x808C;
84 const GLuint GL_VERTEX_ARRAY_POINTER        = 0x808E;
85 const GLuint GL_NORMAL_ARRAY_POINTER        = 0x808F;
86 const GLuint GL_COLOR_ARRAY_POINTER     = 0x8090;
87 const GLuint GL_INDEX_ARRAY_POINTER     = 0x8091;
88 const GLuint GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092;
89 const GLuint GL_EDGE_FLAG_ARRAY_POINTER     = 0x8093;
90 const GLuint GL_V2F             = 0x2A20;
91 const GLuint GL_V3F             = 0x2A21;
92 const GLuint GL_C4UB_V2F            = 0x2A22;
93 const GLuint GL_C4UB_V3F            = 0x2A23;
94 const GLuint GL_C3F_V3F             = 0x2A24;
95 const GLuint GL_N3F_V3F             = 0x2A25;
96 const GLuint GL_C4F_N3F_V3F         = 0x2A26;
97 const GLuint GL_T2F_V3F             = 0x2A27;
98 const GLuint GL_T4F_V4F             = 0x2A28;
99 const GLuint GL_T2F_C4UB_V3F            = 0x2A29;
100 const GLuint GL_T2F_C3F_V3F         = 0x2A2A;
101 const GLuint GL_T2F_N3F_V3F         = 0x2A2B;
102 const GLuint GL_T2F_C4F_N3F_V3F         = 0x2A2C;
103 const GLuint GL_T4F_C4F_N3F_V4F         = 0x2A2D;
104
105 // Matrix Mode
106 const GLuint GL_MATRIX_MODE         = 0x0BA0;
107 const GLuint GL_MODELVIEW           = 0x1700;
108 const GLuint GL_PROJECTION          = 0x1701;
109 const GLuint GL_TEXTURE             = 0x1702;
110
111 // Points
112 const GLuint GL_POINT_SMOOTH            = 0x0B10;
113 const GLuint GL_POINT_SIZE          = 0x0B11;
114 const GLuint GL_POINT_SIZE_GRANULARITY      = 0x0B13;
115 const GLuint GL_POINT_SIZE_RANGE        = 0x0B12;
116
117 // Lines
118 const GLuint GL_LINE_SMOOTH         = 0x0B20;
119 const GLuint GL_LINE_STIPPLE            = 0x0B24;
120 const GLuint GL_LINE_STIPPLE_PATTERN        = 0x0B25;
121 const GLuint GL_LINE_STIPPLE_REPEAT     = 0x0B26;
122 const GLuint GL_LINE_WIDTH          = 0x0B21;
123 const GLuint GL_LINE_WIDTH_GRANULARITY      = 0x0B23;
124 const GLuint GL_LINE_WIDTH_RANGE        = 0x0B22;
125
126 // Polygons
127 const GLuint GL_POINT               = 0x1B00;
128 const GLuint GL_LINE                = 0x1B01;
129 const GLuint GL_FILL                = 0x1B02;
130 const GLuint GL_CW              = 0x0900;
131 const GLuint GL_CCW             = 0x0901;
132 const GLuint GL_FRONT               = 0x0404;
133 const GLuint GL_BACK                = 0x0405;
134 const GLuint GL_POLYGON_MODE            = 0x0B40;
135 const GLuint GL_POLYGON_SMOOTH          = 0x0B41;
136 const GLuint GL_POLYGON_STIPPLE         = 0x0B42;
137 const GLuint GL_EDGE_FLAG           = 0x0B43;
138 const GLuint GL_CULL_FACE           = 0x0B44;
139 const GLuint GL_CULL_FACE_MODE          = 0x0B45;
140 const GLuint GL_FRONT_FACE          = 0x0B46;
141 const GLuint GL_POLYGON_OFFSET_FACTOR       = 0x8038;
142 const GLuint GL_POLYGON_OFFSET_UNITS        = 0x2A00;
143 const GLuint GL_POLYGON_OFFSET_POINT        = 0x2A01;
144 const GLuint GL_POLYGON_OFFSET_LINE     = 0x2A02;
145 const GLuint GL_POLYGON_OFFSET_FILL     = 0x8037;
146
147 // Display Lists
148 const GLuint GL_COMPILE             = 0x1300;
149 const GLuint GL_COMPILE_AND_EXECUTE     = 0x1301;
150 const GLuint GL_LIST_BASE           = 0x0B32;
151 const GLuint GL_LIST_INDEX          = 0x0B33;
152 const GLuint GL_LIST_MODE           = 0x0B30;
153
154 // Depth buffer
155 const GLuint GL_NEVER               = 0x0200;
156 const GLuint GL_LESS                = 0x0201;
157 const GLuint GL_EQUAL               = 0x0202;
158 const GLuint GL_LEQUAL              = 0x0203;
159 const GLuint GL_GREATER             = 0x0204;
160 const GLuint GL_NOTEQUAL            = 0x0205;
161 const GLuint GL_GEQUAL              = 0x0206;
162 const GLuint GL_ALWAYS              = 0x0207;
163 const GLuint GL_DEPTH_TEST          = 0x0B71;
164 const GLuint GL_DEPTH_BITS          = 0x0D56;
165 const GLuint GL_DEPTH_CLEAR_VALUE       = 0x0B73;
166 const GLuint GL_DEPTH_FUNC          = 0x0B74;
167 const GLuint GL_DEPTH_RANGE         = 0x0B70;
168 const GLuint GL_DEPTH_WRITEMASK         = 0x0B72;
169 const GLuint GL_DEPTH_COMPONENT         = 0x1902;
170
171 // Lighting
172 const GLuint GL_LIGHTING            = 0x0B50;
173 const GLuint GL_LIGHT0              = 0x4000;
174 const GLuint GL_LIGHT1              = 0x4001;
175 const GLuint GL_LIGHT2              = 0x4002;
176 const GLuint GL_LIGHT3              = 0x4003;
177 const GLuint GL_LIGHT4              = 0x4004;
178 const GLuint GL_LIGHT5              = 0x4005;
179 const GLuint GL_LIGHT6              = 0x4006;
180 const GLuint GL_LIGHT7              = 0x4007;
181 const GLuint GL_SPOT_EXPONENT           = 0x1205;
182 const GLuint GL_SPOT_CUTOFF         = 0x1206;
183 const GLuint GL_CONSTANT_ATTENUATION        = 0x1207;
184 const GLuint GL_LINEAR_ATTENUATION      = 0x1208;
185 const GLuint GL_QUADRATIC_ATTENUATION       = 0x1209;
186 const GLuint GL_AMBIENT             = 0x1200;
187 const GLuint GL_DIFFUSE             = 0x1201;
188 const GLuint GL_SPECULAR            = 0x1202;
189 const GLuint GL_SHININESS           = 0x1601;
190 const GLuint GL_EMISSION            = 0x1600;
191 const GLuint GL_POSITION            = 0x1203;
192 const GLuint GL_SPOT_DIRECTION          = 0x1204;
193 const GLuint GL_AMBIENT_AND_DIFFUSE     = 0x1602;
194 const GLuint GL_COLOR_INDEXES           = 0x1603;
195 const GLuint GL_LIGHT_MODEL_TWO_SIDE        = 0x0B52;
196 const GLuint GL_LIGHT_MODEL_LOCAL_VIEWER    = 0x0B51;
197 const GLuint GL_LIGHT_MODEL_AMBIENT     = 0x0B53;
198 const GLuint GL_FRONT_AND_BACK          = 0x0408;
199 const GLuint GL_SHADE_MODEL         = 0x0B54;
200 const GLuint GL_FLAT                = 0x1D00;
201 const GLuint GL_SMOOTH              = 0x1D01;
202 const GLuint GL_COLOR_MATERIAL          = 0x0B57;
203 const GLuint GL_COLOR_MATERIAL_FACE     = 0x0B55;
204 const GLuint GL_COLOR_MATERIAL_PARAMETER    = 0x0B56;
205 const GLuint GL_NORMALIZE           = 0x0BA1;
206
207 // User clipping planes
208 const GLuint GL_CLIP_PLANE0         = 0x3000;
209 const GLuint GL_CLIP_PLANE1         = 0x3001;
210 const GLuint GL_CLIP_PLANE2         = 0x3002;
211 const GLuint GL_CLIP_PLANE3         = 0x3003;
212 const GLuint GL_CLIP_PLANE4         = 0x3004;
213 const GLuint GL_CLIP_PLANE5         = 0x3005;
214
215 // Accumulation buffer
216 const GLuint GL_ACCUM_RED_BITS          = 0x0D58;
217 const GLuint GL_ACCUM_GREEN_BITS        = 0x0D59;
218 const GLuint GL_ACCUM_BLUE_BITS         = 0x0D5A;
219 const GLuint GL_ACCUM_ALPHA_BITS        = 0x0D5B;
220 const GLuint GL_ACCUM_CLEAR_VALUE       = 0x0B80;
221 const GLuint GL_ACCUM               = 0x0100;
222 const GLuint GL_ADD             = 0x0104;
223 const GLuint GL_LOAD                = 0x0101;
224 const GLuint GL_MULT                = 0x0103;
225 const GLuint GL_RETURN              = 0x0102;
226
227 // Alpha testing
228 const GLuint GL_ALPHA_TEST          = 0x0BC0;
229 const GLuint GL_ALPHA_TEST_REF          = 0x0BC2;
230 const GLuint GL_ALPHA_TEST_FUNC         = 0x0BC1;
231
232 // Blending
233 const GLuint GL_BLEND               = 0x0BE2;
234 const GLuint GL_BLEND_SRC           = 0x0BE1;
235 const GLuint GL_BLEND_DST           = 0x0BE0;
236 const GLuint GL_ZERO                = 0x0;
237 const GLuint GL_ONE             = 0x1;
238 const GLuint GL_SRC_COLOR           = 0x0300;
239 const GLuint GL_ONE_MINUS_SRC_COLOR     = 0x0301;
240 const GLuint GL_SRC_ALPHA           = 0x0302;
241 const GLuint GL_ONE_MINUS_SRC_ALPHA     = 0x0303;
242 const GLuint GL_DST_ALPHA           = 0x0304;
243 const GLuint GL_ONE_MINUS_DST_ALPHA     = 0x0305;
244 const GLuint GL_DST_COLOR           = 0x0306;
245 const GLuint GL_ONE_MINUS_DST_COLOR     = 0x0307;
246 const GLuint GL_SRC_ALPHA_SATURATE      = 0x0308;
247
248 // Render Mode
249 const GLuint GL_FEEDBACK            = 0x1C01;
250 const GLuint GL_RENDER              = 0x1C00;
251 const GLuint GL_SELECT              = 0x1C02;
252
253 // Feedback
254 const GLuint GL_2D              = 0x0600;
255 const GLuint GL_3D              = 0x0601;
256 const GLuint GL_3D_COLOR            = 0x0602;
257 const GLuint GL_3D_COLOR_TEXTURE        = 0x0603;
258 const GLuint GL_4D_COLOR_TEXTURE        = 0x0604;
259 const GLuint GL_POINT_TOKEN         = 0x0701;
260 const GLuint GL_LINE_TOKEN          = 0x0702;
261 const GLuint GL_LINE_RESET_TOKEN        = 0x0707;
262 const GLuint GL_POLYGON_TOKEN           = 0x0703;
263 const GLuint GL_BITMAP_TOKEN            = 0x0704;
264 const GLuint GL_DRAW_PIXEL_TOKEN        = 0x0705;
265 const GLuint GL_COPY_PIXEL_TOKEN        = 0x0706;
266 const GLuint GL_PASS_THROUGH_TOKEN      = 0x0700;
267 const GLuint GL_FEEDBACK_BUFFER_POINTER     = 0x0DF0;
268 const GLuint GL_FEEDBACK_BUFFER_SIZE        = 0x0DF1;
269 const GLuint GL_FEEDBACK_BUFFER_TYPE        = 0x0DF2;
270
271 // Selection
272 const GLuint GL_SELECTION_BUFFER_POINTER    = 0x0DF3;
273 const GLuint GL_SELECTION_BUFFER_SIZE       = 0x0DF4;
274
275 // Fog
276 const GLuint GL_FOG             = 0x0B60;
277 const GLuint GL_FOG_MODE            = 0x0B65;
278 const GLuint GL_FOG_DENSITY         = 0x0B62;
279 const GLuint GL_FOG_COLOR           = 0x0B66;
280 const GLuint GL_FOG_INDEX           = 0x0B61;
281 const GLuint GL_FOG_START           = 0x0B63;
282 const GLuint GL_FOG_END             = 0x0B64;
283 const GLuint GL_LINEAR              = 0x2601;
284 const GLuint GL_EXP             = 0x0800;
285 const GLuint GL_EXP2                = 0x0801;
286
287 // Logic Ops
288 const GLuint GL_LOGIC_OP            = 0x0BF1;
289 const GLuint GL_INDEX_LOGIC_OP          = 0x0BF1;
290 const GLuint GL_COLOR_LOGIC_OP          = 0x0BF2;
291 const GLuint GL_LOGIC_OP_MODE           = 0x0BF0;
292 const GLuint GL_CLEAR               = 0x1500;
293 const GLuint GL_SET             = 0x150F;
294 const GLuint GL_COPY                = 0x1503;
295 const GLuint GL_COPY_INVERTED           = 0x150C;
296 const GLuint GL_NOOP                = 0x1505;
297 const GLuint GL_INVERT              = 0x150A;
298 const GLuint GL_AND             = 0x1501;
299 const GLuint GL_NAND                = 0x150E;
300 const GLuint GL_OR              = 0x1507;
301 const GLuint GL_NOR             = 0x1508;
302 const GLuint GL_XOR             = 0x1506;
303 const GLuint GL_EQUIV               = 0x1509;
304 const GLuint GL_AND_REVERSE         = 0x1502;
305 const GLuint GL_AND_INVERTED            = 0x1504;
306 const GLuint GL_OR_REVERSE          = 0x150B;
307 const GLuint GL_OR_INVERTED         = 0x150D;
308
309 // Stencil
310 const GLuint GL_STENCIL_TEST            = 0x0B90;
311 const GLuint GL_STENCIL_WRITEMASK       = 0x0B98;
312 const GLuint GL_STENCIL_BITS            = 0x0D57;
313 const GLuint GL_STENCIL_FUNC            = 0x0B92;
314 const GLuint GL_STENCIL_VALUE_MASK      = 0x0B93;
315 const GLuint GL_STENCIL_REF         = 0x0B97;
316 const GLuint GL_STENCIL_FAIL            = 0x0B94;
317 const GLuint GL_STENCIL_PASS_DEPTH_PASS     = 0x0B96;
318 const GLuint GL_STENCIL_PASS_DEPTH_FAIL     = 0x0B95;
319 const GLuint GL_STENCIL_CLEAR_VALUE     = 0x0B91;
320 const GLuint GL_STENCIL_INDEX           = 0x1901;
321 const GLuint GL_KEEP                = 0x1E00;
322 const GLuint GL_REPLACE             = 0x1E01;
323 const GLuint GL_INCR                = 0x1E02;
324 const GLuint GL_DECR                = 0x1E03;
325
326 // Buffers, Pixel Drawing/Reading
327 const GLuint GL_NONE                = 0x0;
328 const GLuint GL_LEFT                = 0x0406;
329 const GLuint GL_RIGHT               = 0x0407;
330 //const GLuint GL_FRONT             = 0x0404;
331 //const GLuint GL_BACK              = 0x0405;
332 //const GLuint GL_FRONT_AND_BACK        = 0x0408;
333 const GLuint GL_FRONT_LEFT          = 0x0400;
334 const GLuint GL_FRONT_RIGHT         = 0x0401;
335 const GLuint GL_BACK_LEFT           = 0x0402;
336 const GLuint GL_BACK_RIGHT          = 0x0403;
337 const GLuint GL_AUX0                = 0x0409;
338 const GLuint GL_AUX1                = 0x040A;
339 const GLuint GL_AUX2                = 0x040B;
340 const GLuint GL_AUX3                = 0x040C;
341 const GLuint GL_COLOR_INDEX         = 0x1900;
342 const GLuint GL_RED             = 0x1903;
343 const GLuint GL_GREEN               = 0x1904;
344 const GLuint GL_BLUE                = 0x1905;
345 const GLuint GL_ALPHA               = 0x1906;
346 const GLuint GL_LUMINANCE           = 0x1909;
347 const GLuint GL_LUMINANCE_ALPHA         = 0x190A;
348 const GLuint GL_ALPHA_BITS          = 0x0D55;
349 const GLuint GL_RED_BITS            = 0x0D52;
350 const GLuint GL_GREEN_BITS          = 0x0D53;
351 const GLuint GL_BLUE_BITS           = 0x0D54;
352 const GLuint GL_INDEX_BITS          = 0x0D51;
353 const GLuint GL_SUBPIXEL_BITS           = 0x0D50;
354 const GLuint GL_AUX_BUFFERS         = 0x0C00;
355 const GLuint GL_READ_BUFFER         = 0x0C02;
356 const GLuint GL_DRAW_BUFFER         = 0x0C01;
357 const GLuint GL_DOUBLEBUFFER            = 0x0C32;
358 const GLuint GL_STEREO              = 0x0C33;
359 const GLuint GL_BITMAP              = 0x1A00;
360 const GLuint GL_COLOR               = 0x1800;
361 const GLuint GL_DEPTH               = 0x1801;
362 const GLuint GL_STENCIL             = 0x1802;
363 const GLuint GL_DITHER              = 0x0BD0;
364 const GLuint GL_RGB             = 0x1907;
365 const GLuint GL_RGBA                = 0x1908;
366
367 // Implementation limits
368 const GLuint GL_MAX_LIST_NESTING        = 0x0B31;
369 const GLuint GL_MAX_ATTRIB_STACK_DEPTH      = 0x0D35;
370 const GLuint GL_MAX_MODELVIEW_STACK_DEPTH   = 0x0D36;
371 const GLuint GL_MAX_NAME_STACK_DEPTH        = 0x0D37;
372 const GLuint GL_MAX_PROJECTION_STACK_DEPTH  = 0x0D38;
373 const GLuint GL_MAX_TEXTURE_STACK_DEPTH     = 0x0D39;
374 const GLuint GL_MAX_EVAL_ORDER          = 0x0D30;
375 const GLuint GL_MAX_LIGHTS          = 0x0D31;
376 const GLuint GL_MAX_CLIP_PLANES         = 0x0D32;
377 const GLuint GL_MAX_TEXTURE_SIZE        = 0x0D33;
378 const GLuint GL_MAX_PIXEL_MAP_TABLE     = 0x0D34;
379 const GLuint GL_MAX_VIEWPORT_DIMS       = 0x0D3A;
380 const GLuint GL_MAX_CLIENT_ATTRIB_STACK_DEPTH   = 0x0D3B;
381
382 // Gets
383 const GLuint GL_ATTRIB_STACK_DEPTH      = 0x0BB0;
384 const GLuint GL_CLIENT_ATTRIB_STACK_DEPTH   = 0x0BB1;
385 const GLuint GL_COLOR_CLEAR_VALUE       = 0x0C22;
386 const GLuint GL_COLOR_WRITEMASK         = 0x0C23;
387 const GLuint GL_CURRENT_INDEX           = 0x0B01;
388 const GLuint GL_CURRENT_COLOR           = 0x0B00;
389 const GLuint GL_CURRENT_NORMAL          = 0x0B02;
390 const GLuint GL_CURRENT_RASTER_COLOR        = 0x0B04;
391 const GLuint GL_CURRENT_RASTER_DISTANCE     = 0x0B09;
392 const GLuint GL_CURRENT_RASTER_INDEX        = 0x0B05;
393 const GLuint GL_CURRENT_RASTER_POSITION     = 0x0B07;
394 const GLuint GL_CURRENT_RASTER_TEXTURE_COORDS   = 0x0B06;
395 const GLuint GL_CURRENT_RASTER_POSITION_VALID   = 0x0B08;
396 const GLuint GL_CURRENT_TEXTURE_COORDS      = 0x0B03;
397 const GLuint GL_INDEX_CLEAR_VALUE       = 0x0C20;
398 const GLuint GL_INDEX_MODE          = 0x0C30;
399 const GLuint GL_INDEX_WRITEMASK         = 0x0C21;
400 const GLuint GL_MODELVIEW_MATRIX        = 0x0BA6;
401 const GLuint GL_MODELVIEW_STACK_DEPTH       = 0x0BA3;
402 const GLuint GL_NAME_STACK_DEPTH        = 0x0D70;
403 const GLuint GL_PROJECTION_MATRIX       = 0x0BA7;
404 const GLuint GL_PROJECTION_STACK_DEPTH      = 0x0BA4;
405 const GLuint GL_RENDER_MODE         = 0x0C40;
406 const GLuint GL_RGBA_MODE           = 0x0C31;
407 const GLuint GL_TEXTURE_MATRIX          = 0x0BA8;
408 const GLuint GL_TEXTURE_STACK_DEPTH     = 0x0BA5;
409 const GLuint GL_VIEWPORT            = 0x0BA2;
410
411 // Evaluators
412 const GLuint GL_AUTO_NORMAL         = 0x0D80;
413 const GLuint GL_MAP1_COLOR_4            = 0x0D90;
414 const GLuint GL_MAP1_GRID_DOMAIN        = 0x0DD0;
415 const GLuint GL_MAP1_GRID_SEGMENTS      = 0x0DD1;
416 const GLuint GL_MAP1_INDEX          = 0x0D91;
417 const GLuint GL_MAP1_NORMAL         = 0x0D92;
418 const GLuint GL_MAP1_TEXTURE_COORD_1        = 0x0D93;
419 const GLuint GL_MAP1_TEXTURE_COORD_2        = 0x0D94;
420 const GLuint GL_MAP1_TEXTURE_COORD_3        = 0x0D95;
421 const GLuint GL_MAP1_TEXTURE_COORD_4        = 0x0D96;
422 const GLuint GL_MAP1_VERTEX_3           = 0x0D97;
423 const GLuint GL_MAP1_VERTEX_4           = 0x0D98;
424 const GLuint GL_MAP2_COLOR_4            = 0x0DB0;
425 const GLuint GL_MAP2_GRID_DOMAIN        = 0x0DD2;
426 const GLuint GL_MAP2_GRID_SEGMENTS      = 0x0DD3;
427 const GLuint GL_MAP2_INDEX          = 0x0DB1;
428 const GLuint GL_MAP2_NORMAL         = 0x0DB2;
429 const GLuint GL_MAP2_TEXTURE_COORD_1        = 0x0DB3;
430 const GLuint GL_MAP2_TEXTURE_COORD_2        = 0x0DB4;
431 const GLuint GL_MAP2_TEXTURE_COORD_3        = 0x0DB5;
432 const GLuint GL_MAP2_TEXTURE_COORD_4        = 0x0DB6;
433 const GLuint GL_MAP2_VERTEX_3           = 0x0DB7;
434 const GLuint GL_MAP2_VERTEX_4           = 0x0DB8;
435 const GLuint GL_COEFF               = 0x0A00;
436 const GLuint GL_DOMAIN              = 0x0A02;
437 const GLuint GL_ORDER               = 0x0A01;
438
439 // Hints
440 const GLuint GL_FOG_HINT            = 0x0C54;
441 const GLuint GL_LINE_SMOOTH_HINT        = 0x0C52;
442 const GLuint GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50;
443 const GLuint GL_POINT_SMOOTH_HINT       = 0x0C51;
444 const GLuint GL_POLYGON_SMOOTH_HINT     = 0x0C53;
445 const GLuint GL_DONT_CARE           = 0x1100;
446 const GLuint GL_FASTEST             = 0x1101;
447 const GLuint GL_NICEST              = 0x1102;
448
449 // Scissor box
450 const GLuint GL_SCISSOR_TEST            = 0x0C11;
451 const GLuint GL_SCISSOR_BOX         = 0x0C10;
452
453 // Pixel Mode / Transfer
454 const GLuint GL_MAP_COLOR           = 0x0D10;
455 const GLuint GL_MAP_STENCIL         = 0x0D11;
456 const GLuint GL_INDEX_SHIFT         = 0x0D12;
457 const GLuint GL_INDEX_OFFSET            = 0x0D13;
458 const GLuint GL_RED_SCALE           = 0x0D14;
459 const GLuint GL_RED_BIAS            = 0x0D15;
460 const GLuint GL_GREEN_SCALE         = 0x0D18;
461 const GLuint GL_GREEN_BIAS          = 0x0D19;
462 const GLuint GL_BLUE_SCALE          = 0x0D1A;
463 const GLuint GL_BLUE_BIAS           = 0x0D1B;
464 const GLuint GL_ALPHA_SCALE         = 0x0D1C;
465 const GLuint GL_ALPHA_BIAS          = 0x0D1D;
466 const GLuint GL_DEPTH_SCALE         = 0x0D1E;
467 const GLuint GL_DEPTH_BIAS          = 0x0D1F;
468 const GLuint GL_PIXEL_MAP_S_TO_S_SIZE       = 0x0CB1;
469 const GLuint GL_PIXEL_MAP_I_TO_I_SIZE       = 0x0CB0;
470 const GLuint GL_PIXEL_MAP_I_TO_R_SIZE       = 0x0CB2;
471 const GLuint GL_PIXEL_MAP_I_TO_G_SIZE       = 0x0CB3;
472 const GLuint GL_PIXEL_MAP_I_TO_B_SIZE       = 0x0CB4;
473 const GLuint GL_PIXEL_MAP_I_TO_A_SIZE       = 0x0CB5;
474 const GLuint GL_PIXEL_MAP_R_TO_R_SIZE       = 0x0CB6;
475 const GLuint GL_PIXEL_MAP_G_TO_G_SIZE       = 0x0CB7;
476 const GLuint GL_PIXEL_MAP_B_TO_B_SIZE       = 0x0CB8;
477 const GLuint GL_PIXEL_MAP_A_TO_A_SIZE       = 0x0CB9;
478 const GLuint GL_PIXEL_MAP_S_TO_S        = 0x0C71;
479 const GLuint GL_PIXEL_MAP_I_TO_I        = 0x0C70;
480 const GLuint GL_PIXEL_MAP_I_TO_R        = 0x0C72;
481 const GLuint GL_PIXEL_MAP_I_TO_G        = 0x0C73;
482 const GLuint GL_PIXEL_MAP_I_TO_B        = 0x0C74;
483 const GLuint GL_PIXEL_MAP_I_TO_A        = 0x0C75;
484 const GLuint GL_PIXEL_MAP_R_TO_R        = 0x0C76;
485 const GLuint GL_PIXEL_MAP_G_TO_G        = 0x0C77;
486 const GLuint GL_PIXEL_MAP_B_TO_B        = 0x0C78;
487 const GLuint GL_PIXEL_MAP_A_TO_A        = 0x0C79;
488 const GLuint GL_PACK_ALIGNMENT          = 0x0D05;
489 const GLuint GL_PACK_LSB_FIRST          = 0x0D01;
490 const GLuint GL_PACK_ROW_LENGTH         = 0x0D02;
491 const GLuint GL_PACK_SKIP_PIXELS        = 0x0D04;
492 const GLuint GL_PACK_SKIP_ROWS          = 0x0D03;
493 const GLuint GL_PACK_SWAP_BYTES         = 0x0D00;
494 const GLuint GL_UNPACK_ALIGNMENT        = 0x0CF5;
495 const GLuint GL_UNPACK_LSB_FIRST        = 0x0CF1;
496 const GLuint GL_UNPACK_ROW_LENGTH       = 0x0CF2;
497 const GLuint GL_UNPACK_SKIP_PIXELS      = 0x0CF4;
498 const GLuint GL_UNPACK_SKIP_ROWS        = 0x0CF3;
499 const GLuint GL_UNPACK_SWAP_BYTES       = 0x0CF0;
500 const GLuint GL_ZOOM_X              = 0x0D16;
501 const GLuint GL_ZOOM_Y              = 0x0D17;
502
503 // Texture mapping
504 const GLuint GL_TEXTURE_ENV         = 0x2300;
505 const GLuint GL_TEXTURE_ENV_MODE        = 0x2200;
506 const GLuint GL_TEXTURE_1D          = 0x0DE0;
507 const GLuint GL_TEXTURE_2D          = 0x0DE1;
508 const GLuint GL_TEXTURE_WRAP_S          = 0x2802;
509 const GLuint GL_TEXTURE_WRAP_T          = 0x2803;
510 const GLuint GL_TEXTURE_MAG_FILTER      = 0x2800;
511 const GLuint GL_TEXTURE_MIN_FILTER      = 0x2801;
512 const GLuint GL_TEXTURE_ENV_COLOR       = 0x2201;
513 const GLuint GL_TEXTURE_GEN_S           = 0x0C60;
514 const GLuint GL_TEXTURE_GEN_T           = 0x0C61;
515 const GLuint GL_TEXTURE_GEN_MODE        = 0x2500;
516 const GLuint GL_TEXTURE_BORDER_COLOR        = 0x1004;
517 const GLuint GL_TEXTURE_WIDTH           = 0x1000;
518 const GLuint GL_TEXTURE_HEIGHT          = 0x1001;
519 const GLuint GL_TEXTURE_BORDER          = 0x1005;
520 const GLuint GL_TEXTURE_COMPONENTS      = 0x1003;
521 const GLuint GL_TEXTURE_RED_SIZE        = 0x805C;
522 const GLuint GL_TEXTURE_GREEN_SIZE      = 0x805D;
523 const GLuint GL_TEXTURE_BLUE_SIZE       = 0x805E;
524 const GLuint GL_TEXTURE_ALPHA_SIZE      = 0x805F;
525 const GLuint GL_TEXTURE_LUMINANCE_SIZE      = 0x8060;
526 const GLuint GL_TEXTURE_INTENSITY_SIZE      = 0x8061;
527 const GLuint GL_NEAREST_MIPMAP_NEAREST      = 0x2700;
528 const GLuint GL_NEAREST_MIPMAP_LINEAR       = 0x2702;
529 const GLuint GL_LINEAR_MIPMAP_NEAREST       = 0x2701;
530 const GLuint GL_LINEAR_MIPMAP_LINEAR        = 0x2703;
531 const GLuint GL_OBJECT_LINEAR           = 0x2401;
532 const GLuint GL_OBJECT_PLANE            = 0x2501;
533 const GLuint GL_EYE_LINEAR          = 0x2400;
534 const GLuint GL_EYE_PLANE           = 0x2502;
535 const GLuint GL_SPHERE_MAP          = 0x2402;
536 const GLuint GL_DECAL               = 0x2101;
537 const GLuint GL_MODULATE            = 0x2100;
538 const GLuint GL_NEAREST             = 0x2600;
539 const GLuint GL_REPEAT              = 0x2901;
540 const GLuint GL_CLAMP               = 0x2900;
541 const GLuint GL_S               = 0x2000;
542 const GLuint GL_T               = 0x2001;
543 const GLuint GL_R               = 0x2002;
544 const GLuint GL_Q               = 0x2003;
545 const GLuint GL_TEXTURE_GEN_R           = 0x0C62;
546 const GLuint GL_TEXTURE_GEN_Q           = 0x0C63;
547
548 // Utility
549 const GLuint GL_VENDOR              = 0x1F00;
550 const GLuint GL_RENDERER            = 0x1F01;
551 const GLuint GL_VERSION             = 0x1F02;
552 const GLuint GL_EXTENSIONS          = 0x1F03;
553
554 // Errors
555 const GLuint GL_NO_ERROR            = 0x0;
556 const GLuint GL_INVALID_VALUE           = 0x0501;
557 const GLuint GL_INVALID_ENUM            = 0x0500;
558 const GLuint GL_INVALID_OPERATION       = 0x0502;
559 const GLuint GL_STACK_OVERFLOW          = 0x0503;
560 const GLuint GL_STACK_UNDERFLOW         = 0x0504;
561 const GLuint GL_OUT_OF_MEMORY           = 0x0505;
562
563 // glPush/PopAttrib bits
564 const GLuint GL_CURRENT_BIT         = 0x00000001;
565 const GLuint GL_POINT_BIT           = 0x00000002;
566 const GLuint GL_LINE_BIT            = 0x00000004;
567 const GLuint GL_POLYGON_BIT         = 0x00000008;
568 const GLuint GL_POLYGON_STIPPLE_BIT     = 0x00000010;
569 const GLuint GL_PIXEL_MODE_BIT          = 0x00000020;
570 const GLuint GL_LIGHTING_BIT            = 0x00000040;
571 const GLuint GL_FOG_BIT             = 0x00000080;
572 const GLuint GL_DEPTH_BUFFER_BIT        = 0x00000100;
573 const GLuint GL_ACCUM_BUFFER_BIT        = 0x00000200;
574 const GLuint GL_STENCIL_BUFFER_BIT      = 0x00000400;
575 const GLuint GL_VIEWPORT_BIT            = 0x00000800;
576 const GLuint GL_TRANSFORM_BIT           = 0x00001000;
577 const GLuint GL_ENABLE_BIT          = 0x00002000;
578 const GLuint GL_COLOR_BUFFER_BIT        = 0x00004000;
579 const GLuint GL_HINT_BIT            = 0x00008000;
580 const GLuint GL_EVAL_BIT            = 0x00010000;
581 const GLuint GL_LIST_BIT            = 0x00020000;
582 const GLuint GL_TEXTURE_BIT         = 0x00040000;
583 const GLuint GL_SCISSOR_BIT         = 0x00080000;
584 const GLuint GL_ALL_ATTRIB_BITS         = 0x000FFFFF;
585
586 // OpenGL 1.1
587 const GLuint GL_PROXY_TEXTURE_1D        = 0x8063;
588 const GLuint GL_PROXY_TEXTURE_2D        = 0x8064;
589 const GLuint GL_TEXTURE_PRIORITY        = 0x8066;
590 const GLuint GL_TEXTURE_RESIDENT        = 0x8067;
591 const GLuint GL_TEXTURE_BINDING_1D      = 0x8068;
592 const GLuint GL_TEXTURE_BINDING_2D      = 0x8069;
593 const GLuint GL_TEXTURE_INTERNAL_FORMAT     = 0x1003;
594 const GLuint GL_ALPHA4              = 0x803B;
595 const GLuint GL_ALPHA8              = 0x803C;
596 const GLuint GL_ALPHA12             = 0x803D;
597 const GLuint GL_ALPHA16             = 0x803E;
598 const GLuint GL_LUMINANCE4          = 0x803F;
599 const GLuint GL_LUMINANCE8          = 0x8040;
600 const GLuint GL_LUMINANCE12         = 0x8041;
601 const GLuint GL_LUMINANCE16         = 0x8042;
602 const GLuint GL_LUMINANCE4_ALPHA4       = 0x8043;
603 const GLuint GL_LUMINANCE6_ALPHA2       = 0x8044;
604 const GLuint GL_LUMINANCE8_ALPHA8       = 0x8045;
605 const GLuint GL_LUMINANCE12_ALPHA4      = 0x8046;
606 const GLuint GL_LUMINANCE12_ALPHA12     = 0x8047;
607 const GLuint GL_LUMINANCE16_ALPHA16     = 0x8048;
608 const GLuint GL_INTENSITY           = 0x8049;
609 const GLuint GL_INTENSITY4          = 0x804A;
610 const GLuint GL_INTENSITY8          = 0x804B;
611 const GLuint GL_INTENSITY12         = 0x804C;
612 const GLuint GL_INTENSITY16         = 0x804D;
613 const GLuint GL_R3_G3_B2            = 0x2A10;
614 const GLuint GL_RGB4                = 0x804F;
615 const GLuint GL_RGB5                = 0x8050;
616 const GLuint GL_RGB8                = 0x8051;
617 const GLuint GL_RGB10               = 0x8052;
618 const GLuint GL_RGB12               = 0x8053;
619 const GLuint GL_RGB16               = 0x8054;
620 const GLuint GL_RGBA2               = 0x8055;
621 const GLuint GL_RGBA4               = 0x8056;
622 const GLuint GL_RGB5_A1             = 0x8057;
623 const GLuint GL_RGBA8               = 0x8058;
624 const GLuint GL_RGB10_A2            = 0x8059;
625 const GLuint GL_RGBA12              = 0x805A;
626 const GLuint GL_RGBA16              = 0x805B;
627 const GLuint GL_CLIENT_PIXEL_STORE_BIT      = 0x00000001;
628 const GLuint GL_CLIENT_VERTEX_ARRAY_BIT     = 0x00000002;
629 const GLuint GL_ALL_CLIENT_ATTRIB_BITS      = 0xFFFFFFFF;
630 const GLuint GL_CLIENT_ALL_ATTRIB_BITS      = 0xFFFFFFFF;
631
632 // OpenGL 1.2
633 const GLuint GL_RESCALE_NORMAL          = 0x803A;
634 const GLuint GL_CLAMP_TO_EDGE           = 0x812F;
635 const GLuint GL_MAX_ELEMENTS_VERTICES       = 0x80E8;
636 const GLuint GL_MAX_ELEMENTS_INDICES        = 0x80E9;
637 const GLuint GL_BGR             = 0x80E0;
638 const GLuint GL_BGRA                = 0x80E1;
639 const GLuint GL_UNSIGNED_BYTE_3_3_2     = 0x8032;
640 const GLuint GL_UNSIGNED_BYTE_2_3_3_REV     = 0x8362;
641 const GLuint GL_UNSIGNED_SHORT_5_6_5        = 0x8363;
642 const GLuint GL_UNSIGNED_SHORT_5_6_5_REV    = 0x8364;
643 const GLuint GL_UNSIGNED_SHORT_4_4_4_4      = 0x8033;
644 const GLuint GL_UNSIGNED_SHORT_4_4_4_4_REV  = 0x8365;
645 const GLuint GL_UNSIGNED_SHORT_5_5_5_1      = 0x8034;
646 const GLuint GL_UNSIGNED_SHORT_1_5_5_5_REV  = 0x8366;
647 const GLuint GL_UNSIGNED_INT_8_8_8_8        = 0x8035;
648 const GLuint GL_UNSIGNED_INT_8_8_8_8_REV    = 0x8367;
649 const GLuint GL_UNSIGNED_INT_10_10_10_2     = 0x8036;
650 const GLuint GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368;
651 const GLuint GL_LIGHT_MODEL_COLOR_CONTROL   = 0x81F8;
652 const GLuint GL_SINGLE_COLOR            = 0x81F9;
653 const GLuint GL_SEPARATE_SPECULAR_COLOR     = 0x81FA;
654 const GLuint GL_TEXTURE_MIN_LOD         = 0x813A;
655 const GLuint GL_TEXTURE_MAX_LOD         = 0x813B;
656 const GLuint GL_TEXTURE_BASE_LEVEL      = 0x813C;
657 const GLuint GL_TEXTURE_MAX_LEVEL       = 0x813D;
658 const GLuint GL_SMOOTH_POINT_SIZE_RANGE     = 0x0B12;
659 const GLuint GL_SMOOTH_POINT_SIZE_GRANULARITY   = 0x0B13;
660 const GLuint GL_SMOOTH_LINE_WIDTH_RANGE     = 0x0B22;
661 const GLuint GL_SMOOTH_LINE_WIDTH_GRANULARITY   = 0x0B23;
662 const GLuint GL_ALIASED_POINT_SIZE_RANGE    = 0x846D;
663 const GLuint GL_ALIASED_LINE_WIDTH_RANGE    = 0x846E;
664 const GLuint GL_PACK_SKIP_IMAGES        = 0x806B;
665 const GLuint GL_PACK_IMAGE_HEIGHT       = 0x806C;
666 const GLuint GL_UNPACK_SKIP_IMAGES      = 0x806D;
667 const GLuint GL_UNPACK_IMAGE_HEIGHT     = 0x806E;
668 const GLuint GL_TEXTURE_3D          = 0x806F;
669 const GLuint GL_PROXY_TEXTURE_3D        = 0x8070;
670 const GLuint GL_TEXTURE_DEPTH           = 0x8071;
671 const GLuint GL_TEXTURE_WRAP_R          = 0x8072;
672 const GLuint GL_MAX_3D_TEXTURE_SIZE     = 0x8073;
673 const GLuint GL_TEXTURE_BINDING_3D      = 0x806A;
674
675 // OpenGL 1.3
676 const GLuint GL_TEXTURE0            = 0x84C0;
677 const GLuint GL_TEXTURE1            = 0x84C1;
678 const GLuint GL_TEXTURE2            = 0x84C2;
679 const GLuint GL_TEXTURE3            = 0x84C3;
680 const GLuint GL_TEXTURE4            = 0x84C4;
681 const GLuint GL_TEXTURE5            = 0x84C5;
682 const GLuint GL_TEXTURE6            = 0x84C6;
683 const GLuint GL_TEXTURE7            = 0x84C7;
684 const GLuint GL_TEXTURE8            = 0x84C8;
685 const GLuint GL_TEXTURE9            = 0x84C9;
686 const GLuint GL_TEXTURE10           = 0x84CA;
687 const GLuint GL_TEXTURE11           = 0x84CB;
688 const GLuint GL_TEXTURE12           = 0x84CC;
689 const GLuint GL_TEXTURE13           = 0x84CD;
690 const GLuint GL_TEXTURE14           = 0x84CE;
691 const GLuint GL_TEXTURE15           = 0x84CF;
692 const GLuint GL_TEXTURE16           = 0x84D0;
693 const GLuint GL_TEXTURE17           = 0x84D1;
694 const GLuint GL_TEXTURE18           = 0x84D2;
695 const GLuint GL_TEXTURE19           = 0x84D3;
696 const GLuint GL_TEXTURE20           = 0x84D4;
697 const GLuint GL_TEXTURE21           = 0x84D5;
698 const GLuint GL_TEXTURE22           = 0x84D6;
699 const GLuint GL_TEXTURE23           = 0x84D7;
700 const GLuint GL_TEXTURE24           = 0x84D8;
701 const GLuint GL_TEXTURE25           = 0x84D9;
702 const GLuint GL_TEXTURE26           = 0x84DA;
703 const GLuint GL_TEXTURE27           = 0x84DB;
704 const GLuint GL_TEXTURE28           = 0x84DC;
705 const GLuint GL_TEXTURE29           = 0x84DD;
706 const GLuint GL_TEXTURE30           = 0x84DE;
707 const GLuint GL_TEXTURE31           = 0x84DF;
708 const GLuint GL_ACTIVE_TEXTURE          = 0x84E0;
709 const GLuint GL_CLIENT_ACTIVE_TEXTURE       = 0x84E1;
710 const GLuint GL_MAX_TEXTURE_UNITS       = 0x84E2;
711 const GLuint GL_NORMAL_MAP          = 0x8511;
712 const GLuint GL_REFLECTION_MAP          = 0x8512;
713 const GLuint GL_TEXTURE_CUBE_MAP        = 0x8513;
714 const GLuint GL_TEXTURE_BINDING_CUBE_MAP    = 0x8514;
715 const GLuint GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
716 const GLuint GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
717 const GLuint GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
718 const GLuint GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
719 const GLuint GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
720 const GLuint GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A;
721 const GLuint GL_PROXY_TEXTURE_CUBE_MAP      = 0x851B;
722 const GLuint GL_MAX_CUBE_MAP_TEXTURE_SIZE   = 0x851C;
723 const GLuint GL_COMPRESSED_ALPHA        = 0x84E9;
724 const GLuint GL_COMPRESSED_LUMINANCE        = 0x84EA;
725 const GLuint GL_COMPRESSED_LUMINANCE_ALPHA  = 0x84EB;
726 const GLuint GL_COMPRESSED_INTENSITY        = 0x84EC;
727 const GLuint GL_COMPRESSED_RGB          = 0x84ED;
728 const GLuint GL_COMPRESSED_RGBA         = 0x84EE;
729 const GLuint GL_TEXTURE_COMPRESSION_HINT    = 0x84EF;
730 const GLuint GL_TEXTURE_COMPRESSED_IMAGE_SIZE   = 0x86A0;
731 const GLuint GL_TEXTURE_COMPRESSED      = 0x86A1;
732 const GLuint GL_NUM_COMPRESSED_TEXTURE_FORMATS  = 0x86A2;
733 const GLuint GL_COMPRESSED_TEXTURE_FORMATS  = 0x86A3;
734 const GLuint GL_MULTISAMPLE         = 0x809D;
735 const GLuint GL_SAMPLE_ALPHA_TO_COVERAGE    = 0x809E;
736 const GLuint GL_SAMPLE_ALPHA_TO_ONE     = 0x809F;
737 const GLuint GL_SAMPLE_COVERAGE         = 0x80A0;
738 const GLuint GL_SAMPLE_BUFFERS          = 0x80A8;
739 const GLuint GL_SAMPLES             = 0x80A9;
740 const GLuint GL_SAMPLE_COVERAGE_VALUE       = 0x80AA;
741 const GLuint GL_SAMPLE_COVERAGE_INVERT      = 0x80AB;
742 const GLuint GL_MULTISAMPLE_BIT         = 0x20000000;
743 const GLuint GL_TRANSPOSE_MODELVIEW_MATRIX  = 0x84E3;
744 const GLuint GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4;
745 const GLuint GL_TRANSPOSE_TEXTURE_MATRIX    = 0x84E5;
746 const GLuint GL_TRANSPOSE_COLOR_MATRIX      = 0x84E6;
747 const GLuint GL_COMBINE             = 0x8570;
748 const GLuint GL_COMBINE_RGB         = 0x8571;
749 const GLuint GL_COMBINE_ALPHA           = 0x8572;
750 const GLuint GL_SOURCE0_RGB         = 0x8580;
751 const GLuint GL_SOURCE1_RGB         = 0x8581;
752 const GLuint GL_SOURCE2_RGB         = 0x8582;
753 const GLuint GL_SOURCE0_ALPHA           = 0x8588;
754 const GLuint GL_SOURCE1_ALPHA           = 0x8589;
755 const GLuint GL_SOURCE2_ALPHA           = 0x858A;
756 const GLuint GL_OPERAND0_RGB            = 0x8590;
757 const GLuint GL_OPERAND1_RGB            = 0x8591;
758 const GLuint GL_OPERAND2_RGB            = 0x8592;
759 const GLuint GL_OPERAND0_ALPHA          = 0x8598;
760 const GLuint GL_OPERAND1_ALPHA          = 0x8599;
761 const GLuint GL_OPERAND2_ALPHA          = 0x859A;
762 const GLuint GL_RGB_SCALE           = 0x8573;
763 const GLuint GL_ADD_SIGNED          = 0x8574;
764 const GLuint GL_INTERPOLATE         = 0x8575;
765 const GLuint GL_SUBTRACT            = 0x84E7;
766 const GLuint GL_CONSTANT            = 0x8576;
767 const GLuint GL_PRIMARY_COLOR           = 0x8577;
768 const GLuint GL_PREVIOUS            = 0x8578;
769 const GLuint GL_DOT3_RGB            = 0x86AE;
770 const GLuint GL_DOT3_RGBA           = 0x86AF;
771 const GLuint GL_CLAMP_TO_BORDER         = 0x812D;
772
773 // OpenGL 1.4
774 const GLuint GL_BLEND_DST_RGB           = 0x80C8;
775 const GLuint GL_BLEND_SRC_RGB           = 0x80C9;
776 const GLuint GL_BLEND_DST_ALPHA         = 0x80CA;
777 const GLuint GL_BLEND_SRC_ALPHA         = 0x80CB;
778 const GLuint GL_POINT_SIZE_MIN          = 0x8126;
779 const GLuint GL_POINT_SIZE_MAX          = 0x8127;
780 const GLuint GL_POINT_FADE_THRESHOLD_SIZE   = 0x8128;
781 const GLuint GL_POINT_DISTANCE_ATTENUATION  = 0x8129;
782 const GLuint GL_GENERATE_MIPMAP         = 0x8191;
783 const GLuint GL_GENERATE_MIPMAP_HINT        = 0x8192;
784 const GLuint GL_DEPTH_COMPONENT16       = 0x81A5;
785 const GLuint GL_DEPTH_COMPONENT24       = 0x81A6;
786 const GLuint GL_DEPTH_COMPONENT32       = 0x81A7;
787 const GLuint GL_MIRRORED_REPEAT         = 0x8370;
788 const GLuint GL_FOG_COORDINATE_SOURCE       = 0x8450;
789 const GLuint GL_FOG_COORDINATE          = 0x8451;
790 const GLuint GL_FRAGMENT_DEPTH          = 0x8452;
791 const GLuint GL_CURRENT_FOG_COORDINATE      = 0x8453;
792 const GLuint GL_FOG_COORDINATE_ARRAY_TYPE   = 0x8454;
793 const GLuint GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455;
794 const GLuint GL_FOG_COORDINATE_ARRAY_POINTER    = 0x8456;
795 const GLuint GL_FOG_COORDINATE_ARRAY        = 0x8457;
796 const GLuint GL_COLOR_SUM           = 0x8458;
797 const GLuint GL_CURRENT_SECONDARY_COLOR     = 0x8459;
798 const GLuint GL_SECONDARY_COLOR_ARRAY_SIZE  = 0x845A;
799 const GLuint GL_SECONDARY_COLOR_ARRAY_TYPE  = 0x845B;
800 const GLuint GL_SECONDARY_COLOR_ARRAY_STRIDE    = 0x845C;
801 const GLuint GL_SECONDARY_COLOR_ARRAY_POINTER   = 0x845D;
802 const GLuint GL_SECONDARY_COLOR_ARRAY       = 0x845E;
803 const GLuint GL_MAX_TEXTURE_LOD_BIAS        = 0x84FD;
804 const GLuint GL_TEXTURE_FILTER_CONTROL      = 0x8500;
805 const GLuint GL_TEXTURE_LOD_BIAS        = 0x8501;
806 const GLuint GL_INCR_WRAP           = 0x8507;
807 const GLuint GL_DECR_WRAP           = 0x8508;
808 const GLuint GL_TEXTURE_DEPTH_SIZE      = 0x884A;
809 const GLuint GL_DEPTH_TEXTURE_MODE      = 0x884B;
810 const GLuint GL_TEXTURE_COMPARE_MODE        = 0x884C;
811 const GLuint GL_TEXTURE_COMPARE_FUNC        = 0x884D;
812 const GLuint GL_COMPARE_R_TO_TEXTURE        = 0x884E;
813
814 // OpenGL 1.5
815 const GLuint GL_BUFFER_SIZE         = 0x8764;
816 const GLuint GL_BUFFER_USAGE            = 0x8765;
817 const GLuint GL_QUERY_COUNTER_BITS      = 0x8864;
818 const GLuint GL_CURRENT_QUERY           = 0x8865;
819 const GLuint GL_QUERY_RESULT            = 0x8866;
820 const GLuint GL_QUERY_RESULT_AVAILABLE      = 0x8867;
821 const GLuint GL_ARRAY_BUFFER            = 0x8892;
822 const GLuint GL_ELEMENT_ARRAY_BUFFER        = 0x8893;
823 const GLuint GL_ARRAY_BUFFER_BINDING        = 0x8894;
824 const GLuint GL_ELEMENT_ARRAY_BUFFER_BINDING    = 0x8895;
825 const GLuint GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896;
826 const GLuint GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897;
827 const GLuint GL_COLOR_ARRAY_BUFFER_BINDING  = 0x8898;
828 const GLuint GL_INDEX_ARRAY_BUFFER_BINDING  = 0x8899;
829 const GLuint GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING= 0x889A;
830 const GLuint GL_EDGE_FLAG_ARRAY_BUFFER_BINDING  = 0x889B;
831 const GLuint GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING= 0x889C;
832 const GLuint GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING= 0x889D;
833 const GLuint GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E;
834 const GLuint GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING= 0x889F;
835 const GLuint GL_READ_ONLY           = 0x88B8;
836 const GLuint GL_WRITE_ONLY          = 0x88B9;
837 const GLuint GL_READ_WRITE          = 0x88BA;
838 const GLuint GL_BUFFER_ACCESS           = 0x88BB;
839 const GLuint GL_BUFFER_MAPPED           = 0x88BC;
840 const GLuint GL_BUFFER_MAP_POINTER      = 0x88BD;
841 const GLuint GL_STREAM_DRAW         = 0x88E0;
842 const GLuint GL_STREAM_READ         = 0x88E1;
843 const GLuint GL_STREAM_COPY         = 0x88E2;
844 const GLuint GL_STATIC_DRAW         = 0x88E4;
845 const GLuint GL_STATIC_READ         = 0x88E5;
846 const GLuint GL_STATIC_COPY         = 0x88E6;
847 const GLuint GL_DYNAMIC_DRAW            = 0x88E8;
848 const GLuint GL_DYNAMIC_READ            = 0x88E9;
849 const GLuint GL_DYNAMIC_COPY            = 0x88EA;
850 const GLuint GL_SAMPLES_PASSED          = 0x8914;
851 const GLuint GL_FOG_COORD_SRC           = GL_FOG_COORDINATE_SOURCE;
852 const GLuint GL_FOG_COORD           = GL_FOG_COORDINATE;
853 const GLuint GL_CURRENT_FOG_COORD       = GL_CURRENT_FOG_COORDINATE;
854 const GLuint GL_FOG_COORD_ARRAY_TYPE        = GL_FOG_COORDINATE_ARRAY_TYPE;
855 const GLuint GL_FOG_COORD_ARRAY_STRIDE      = GL_FOG_COORDINATE_ARRAY_STRIDE;
856 const GLuint GL_FOG_COORD_ARRAY_POINTER     = GL_FOG_COORDINATE_ARRAY_POINTER;
857 const GLuint GL_FOG_COORD_ARRAY         = GL_FOG_COORDINATE_ARRAY;
858 const GLuint GL_FOG_COORD_ARRAY_BUFFER_BINDING  = GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING;
859 const GLuint GL_SRC0_RGB            = GL_SOURCE0_RGB;
860 const GLuint GL_SRC1_RGB            = GL_SOURCE1_RGB;
861 const GLuint GL_SRC2_RGB            = GL_SOURCE2_RGB;
862 const GLuint GL_SRC0_ALPHA          = GL_SOURCE0_ALPHA;
863 const GLuint GL_SRC1_ALPHA          = GL_SOURCE1_ALPHA;
864 const GLuint GL_SRC2_ALPHA          = GL_SOURCE2_ALPHA;
865
866 // OpenGL 2.0
867 const GLuint GL_BLEND_EQUATION_RGB      = 0x8009;
868 const GLuint GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622;
869 const GLuint GL_VERTEX_ATTRIB_ARRAY_SIZE    = 0x8623;
870 const GLuint GL_VERTEX_ATTRIB_ARRAY_STRIDE  = 0x8624;
871 const GLuint GL_VERTEX_ATTRIB_ARRAY_TYPE    = 0x8625;
872 const GLuint GL_CURRENT_VERTEX_ATTRIB       = 0x8626;
873 const GLuint GL_VERTEX_PROGRAM_POINT_SIZE   = 0x8642;
874 const GLuint GL_VERTEX_PROGRAM_TWO_SIDE     = 0x8643;
875 const GLuint GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645;
876 const GLuint GL_STENCIL_BACK_FUNC       = 0x8800;
877 const GLuint GL_STENCIL_BACK_FAIL       = 0x8801;
878 const GLuint GL_STENCIL_BACK_PASS_DEPTH_FAIL    = 0x8802;
879 const GLuint GL_STENCIL_BACK_PASS_DEPTH_PASS    = 0x8803;
880 const GLuint GL_MAX_DRAW_BUFFERS        = 0x8824;
881 const GLuint GL_DRAW_BUFFER0            = 0x8825;
882 const GLuint GL_DRAW_BUFFER1            = 0x8826;
883 const GLuint GL_DRAW_BUFFER2            = 0x8827;
884 const GLuint GL_DRAW_BUFFER3            = 0x8828;
885 const GLuint GL_DRAW_BUFFER4            = 0x8829;
886 const GLuint GL_DRAW_BUFFER5            = 0x882A;
887 const GLuint GL_DRAW_BUFFER6            = 0x882B;
888 const GLuint GL_DRAW_BUFFER7            = 0x882C;
889 const GLuint GL_DRAW_BUFFER8            = 0x882D;
890 const GLuint GL_DRAW_BUFFER9            = 0x882E;
891 const GLuint GL_DRAW_BUFFER10           = 0x882F;
892 const GLuint GL_DRAW_BUFFER11           = 0x8830;
893 const GLuint GL_DRAW_BUFFER12           = 0x8831;
894 const GLuint GL_DRAW_BUFFER13           = 0x8832;
895 const GLuint GL_DRAW_BUFFER14           = 0x8833;
896 const GLuint GL_DRAW_BUFFER15           = 0x8834;
897 const GLuint GL_BLEND_EQUATION_ALPHA        = 0x883D;
898 const GLuint GL_POINT_SPRITE            = 0x8861;
899 const GLuint GL_COORD_REPLACE           = 0x8862;
900 const GLuint GL_MAX_VERTEX_ATTRIBS      = 0x8869;
901 const GLuint GL_VERTEX_ATTRIB_ARRAY_NORMALIZED  = 0x886A;
902 const GLuint GL_MAX_TEXTURE_COORDS      = 0x8871;
903 const GLuint GL_MAX_TEXTURE_IMAGE_UNITS     = 0x8872;
904 const GLuint GL_FRAGMENT_SHADER         = 0x8B30;
905 const GLuint GL_VERTEX_SHADER           = 0x8B31;
906 const GLuint GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49;
907 const GLuint GL_MAX_VERTEX_UNIFORM_COMPONENTS   = 0x8B4A;
908 const GLuint GL_MAX_VARYING_FLOATS      = 0x8B4B;
909 const GLuint GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS  = 0x8B4C;
910 const GLuint GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS= 0x8B4D;
911 const GLuint GL_SHADER_TYPE         = 0x8B4F;
912 const GLuint GL_FLOAT_VEC2          = 0x8B50;
913 const GLuint GL_FLOAT_VEC3          = 0x8B51;
914 const GLuint GL_FLOAT_VEC4          = 0x8B52;
915 const GLuint GL_INT_VEC2            = 0x8B53;
916 const GLuint GL_INT_VEC3            = 0x8B54;
917 const GLuint GL_INT_VEC4            = 0x8B55;
918 const GLuint GL_BOOL                = 0x8B56;
919 const GLuint GL_BOOL_VEC2           = 0x8B57;
920 const GLuint GL_BOOL_VEC3           = 0x8B58;
921 const GLuint GL_BOOL_VEC4           = 0x8B59;
922 const GLuint GL_FLOAT_MAT2          = 0x8B5A;
923 const GLuint GL_FLOAT_MAT3          = 0x8B5B;
924 const GLuint GL_FLOAT_MAT4          = 0x8B5C;
925 const GLuint GL_SAMPLER_1D          = 0x8B5D;
926 const GLuint GL_SAMPLER_2D          = 0x8B5E;
927 const GLuint GL_SAMPLER_3D          = 0x8B5F;
928 const GLuint GL_SAMPLER_CUBE            = 0x8B60;
929 const GLuint GL_SAMPLER_1D_SHADOW       = 0x8B61;
930 const GLuint GL_SAMPLER_2D_SHADOW       = 0x8B62;
931 const GLuint GL_DELETE_STATUS           = 0x8B80;
932 const GLuint GL_COMPILE_STATUS          = 0x8B81;
933 const GLuint GL_LINK_STATUS         = 0x8B82;
934 const GLuint GL_VALIDATE_STATUS         = 0x8B83;
935 const GLuint GL_INFO_LOG_LENGTH         = 0x8B84;
936 const GLuint GL_ATTACHED_SHADERS        = 0x8B85;
937 const GLuint GL_ACTIVE_UNIFORMS         = 0x8B86;
938 const GLuint GL_ACTIVE_UNIFORM_MAX_LENGTH   = 0x8B87;
939 const GLuint GL_SHADER_SOURCE_LENGTH        = 0x8B88;
940 const GLuint GL_ACTIVE_ATTRIBUTES       = 0x8B89;
941 const GLuint GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A;
942 const GLuint GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B;
943 const GLuint GL_SHADING_LANGUAGE_VERSION    = 0x8B8C;
944 const GLuint GL_CURRENT_PROGRAM         = 0x8B8D;
945 const GLuint GL_POINT_SPRITE_COORD_ORIGIN   = 0x8CA0;
946 const GLuint GL_LOWER_LEFT          = 0x8CA1;
947 const GLuint GL_UPPER_LEFT          = 0x8CA2;
948 const GLuint GL_STENCIL_BACK_REF        = 0x8CA3;
949 const GLuint GL_STENCIL_BACK_VALUE_MASK     = 0x8CA4;
950 const GLuint GL_STENCIL_BACK_WRITEMASK      = 0x8CA5;
951
952 // ARB_Imaging
953 const GLuint GL_CONSTANT_COLOR          = 0x8001;
954 const GLuint GL_ONE_MINUS_CONSTANT_COLOR    = 0x8002;
955 const GLuint GL_CONSTANT_ALPHA          = 0x8003;
956 const GLuint GL_ONE_MINUS_CONSTANT_ALPHA    = 0x8004;
957 const GLuint GL_BLEND_COLOR         = 0x8005;
958 const GLuint GL_FUNC_ADD            = 0x8006;
959 const GLuint GL_MIN             = 0x8007;
960 const GLuint GL_MAX             = 0x8008;
961 const GLuint GL_BLEND_EQUATION          = 0x8009;
962 const GLuint GL_FUNC_SUBTRACT           = 0x800A;
963 const GLuint GL_FUNC_REVERSE_SUBTRACT       = 0x800B;
964 const GLuint GL_CONVOLUTION_1D          = 0x8010;
965 const GLuint GL_CONVOLUTION_2D          = 0x8011;
966 const GLuint GL_SEPARABLE_2D            = 0x8012;
967 const GLuint GL_CONVOLUTION_BORDER_MODE     = 0x8013;
968 const GLuint GL_CONVOLUTION_FILTER_SCALE    = 0x8014;
969 const GLuint GL_CONVOLUTION_FILTER_BIAS     = 0x8015;
970 const GLuint GL_REDUCE              = 0x8016;
971 const GLuint GL_CONVOLUTION_FORMAT      = 0x8017;
972 const GLuint GL_CONVOLUTION_WIDTH       = 0x8018;
973 const GLuint GL_CONVOLUTION_HEIGHT      = 0x8019;
974 const GLuint GL_MAX_CONVOLUTION_WIDTH       = 0x801A;
975 const GLuint GL_MAX_CONVOLUTION_HEIGHT      = 0x801B;
976 const GLuint GL_POST_CONVOLUTION_RED_SCALE  = 0x801C;
977 const GLuint GL_POST_CONVOLUTION_GREEN_SCALE    = 0x801D;
978 const GLuint GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E;
979 const GLuint GL_POST_CONVOLUTION_ALPHA_SCALE    = 0x801F;
980 const GLuint GL_POST_CONVOLUTION_RED_BIAS   = 0x8020;
981 const GLuint GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021;
982 const GLuint GL_POST_CONVOLUTION_BLUE_BIAS  = 0x8022;
983 const GLuint GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023;
984 const GLuint GL_HISTOGRAM           = 0x8024;
985 const GLuint GL_PROXY_HISTOGRAM         = 0x8025;
986 const GLuint GL_HISTOGRAM_WIDTH         = 0x8026;
987 const GLuint GL_HISTOGRAM_FORMAT        = 0x8027;
988 const GLuint GL_HISTOGRAM_RED_SIZE      = 0x8028;
989 const GLuint GL_HISTOGRAM_GREEN_SIZE        = 0x8029;
990 const GLuint GL_HISTOGRAM_BLUE_SIZE     = 0x802A;
991 const GLuint GL_HISTOGRAM_ALPHA_SIZE        = 0x802B;
992 const GLuint GL_HISTOGRAM_LUMINANCE_SIZE    = 0x802C;
993 const GLuint GL_HISTOGRAM_SINK          = 0x802D;
994 const GLuint GL_MINMAX              = 0x802E;
995 const GLuint GL_MINMAX_FORMAT           = 0x802F;
996 const GLuint GL_MINMAX_SINK         = 0x8030;
997 const GLuint GL_TABLE_TOO_LARGE         = 0x8031;
998 const GLuint GL_COLOR_MATRIX            = 0x80B1;
999 const GLuint GL_COLOR_MATRIX_STACK_DEPTH    = 0x80B2;
1000 const GLuint GL_MAX_COLOR_MATRIX_STACK_DEPTH    = 0x80B3;
1001 const GLuint GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4;
1002 const GLuint GL_POST_COLOR_MATRIX_GREEN_SCALE   = 0x80B5;
1003 const GLuint GL_POST_COLOR_MATRIX_BLUE_SCALE    = 0x80B6;
1004 const GLuint GL_POST_COLOR_MATRIX_ALPHA_SCALE   = 0x80B7;
1005 const GLuint GL_POST_COLOR_MATRIX_RED_BIAS  = 0x80B8;
1006 const GLuint GL_POST_COLOR_MATRIX_GREEN_BIAS    = 0x80B9;
1007 const GLuint GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA;
1008 const GLuint GL_POST_COLOR_MATRIX_ALPHA_BIAS    = 0x80BB;
1009 const GLuint GL_COLOR_TABLE         = 0x80D0;
1010 const GLuint GL_POST_CONVOLUTION_COLOR_TABLE    = 0x80D1;
1011 const GLuint GL_POST_COLOR_MATRIX_COLOR_TABLE   = 0x80D2;
1012 const GLuint GL_PROXY_COLOR_TABLE       = 0x80D3;
1013 const GLuint GL_PROXY_POST_CONVOLUTION_COLOR_TABLE= 0x80D4;
1014 const GLuint GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE= 0x80D5;
1015 const GLuint GL_COLOR_TABLE_SCALE       = 0x80D6;
1016 const GLuint GL_COLOR_TABLE_BIAS        = 0x80D7;
1017 const GLuint GL_COLOR_TABLE_FORMAT      = 0x80D8;
1018 const GLuint GL_COLOR_TABLE_WIDTH       = 0x80D9;
1019 const GLuint GL_COLOR_TABLE_RED_SIZE        = 0x80DA;
1020 const GLuint GL_COLOR_TABLE_GREEN_SIZE      = 0x80DB;
1021 const GLuint GL_COLOR_TABLE_BLUE_SIZE       = 0x80DC;
1022 const GLuint GL_COLOR_TABLE_ALPHA_SIZE      = 0x80DD;
1023 const GLuint GL_COLOR_TABLE_LUMINANCE_SIZE  = 0x80DE;
1024 const GLuint GL_COLOR_TABLE_INTENSITY_SIZE  = 0x80DF;
1025 const GLuint GL_CONSTANT_BORDER         = 0x8151;
1026 const GLuint GL_REPLICATE_BORDER        = 0x8153;
1027 const GLuint GL_CONVOLUTION_BORDER_COLOR    = 0x8154;
1028
1029
1030 /*
1031  * Functions
1032  */
1033 private HXModule gldrv;
1034
1035 private void* getProc (char[] procname) {
1036     void* symbol = ExeModule_GetSymbol(gldrv, procname);
1037     if (symbol is null) {
1038         printf (("Failed to load OpenGL proc address " ~ procname ~ ".\n\0").ptr);
1039     }
1040     return symbol;
1041 }
1042
1043 static this () {
1044     version (Windows) {
1045         gldrv = ExeModule_Load("OpenGL32.dll");
1046     } else version (linux) {
1047         gldrv = ExeModule_Load("libGL.so");
1048     } else version (darwin) {
1049         gldrv = ExeModule_Load("/System/Library/Frameworks/OpenGL.framework");
1050     }
1051     glClearIndex = cast(pfglClearIndex)getProc("glClearIndex");
1052     glClearColor = cast(pfglClearColor)getProc("glClearColor");
1053     glClear = cast(pfglClear)getProc("glClear");
1054     glIndexMask = cast(pfglIndexMask)getProc("glIndexMask");
1055     glColorMask = cast(pfglColorMask)getProc("glColorMask");
1056     glAlphaFunc = cast(pfglAlphaFunc)getProc("glAlphaFunc");
1057     glBlendFunc = cast(pfglBlendFunc)getProc("glBlendFunc");
1058     glLogicOp = cast(pfglLogicOp)getProc("glLogicOp");
1059     glCullFace = cast(pfglCullFace)getProc("glCullFace");
1060     glFrontFace = cast(pfglFrontFace)getProc("glFrontFace");
1061     glPointSize = cast(pfglPointSize)getProc("glPointSize");
1062     glLineWidth = cast(pfglLineWidth)getProc("glLineWidth");
1063     glLineStipple = cast(pfglLineStipple)getProc("glLineStipple");
1064     glPolygonMode = cast(pfglPolygonMode)getProc("glPolygonMode");
1065     glPolygonOffset = cast(pfglPolygonOffset)getProc("glPolygonOffset");
1066     glPolygonStipple = cast(pfglPolygonStipple)getProc("glPolygonStipple");
1067     glGetPolygonStipple = cast(pfglGetPolygonStipple)getProc("glGetPolygonStipple");
1068     glEdgeFlag = cast(pfglEdgeFlag)getProc("glEdgeFlag");
1069     glEdgeFlagv = cast(pfglEdgeFlagv)getProc("glEdgeFlagv");
1070     glScissor = cast(pfglScissor)getProc("glScissor");
1071     glClipPlane = cast(pfglClipPlane)getProc("glClipPlane");
1072     glGetClipPlane = cast(pfglGetClipPlane)getProc("glGetClipPlane");
1073     glDrawBuffer = cast(pfglDrawBuffer)getProc("glDrawBuffer");
1074     glReadBuffer = cast(pfglReadBuffer)getProc("glReadBuffer");
1075     glEnable = cast(pfglEnable)getProc("glEnable");
1076     glDisable = cast(pfglDisable)getProc("glDisable");
1077     glIsEnabled = cast(pfglIsEnabled)getProc("glIsEnabled");
1078     glEnableClientState = cast(pfglEnableClientState)getProc("glEnableClientState");
1079     glDisableClientState = cast(pfglDisableClientState)getProc("glDisableClientState");
1080     glGetBooleanv = cast(pfglGetBooleanv)getProc("glGetBooleanv");
1081     glGetDoublev = cast(pfglGetDoublev)getProc("glGetDoublev");
1082     glGetFloatv = cast(pfglGetFloatv)getProc("glGetFloatv");
1083     glGetIntegerv = cast(pfglGetIntegerv)getProc("glGetIntegerv");
1084     glPushAttrib = cast(pfglPushAttrib)getProc("glPushAttrib");
1085     glPopAttrib = cast(pfglPopAttrib)getProc("glPopAttrib");
1086     glPushClientAttrib = cast(pfglPushClientAttrib)getProc("glPushClientAttrib");
1087     glPopClientAttrib = cast(pfglPopClientAttrib)getProc("glPopClientAttrib");
1088     glRenderMode = cast(pfglRenderMode)getProc("glRenderMode");
1089     glGetError = cast(pfglGetError)getProc("glGetError");
1090     glGetString = cast(pfglGetString)getProc("glGetString");
1091     glFinish = cast(pfglFinish)getProc("glFinish");
1092     glFlush = cast(pfglFlush)getProc("glFlush");
1093     glHint = cast(pfglHint)getProc("glHint");
1094
1095     glClearDepth = cast(pfglClearDepth)getProc("glClearDepth");
1096     glDepthFunc = cast(pfglDepthFunc)getProc("glDepthFunc");
1097     glDepthMask = cast(pfglDepthMask)getProc("glDepthMask");
1098     glDepthRange = cast(pfglDepthRange)getProc("glDepthRange");
1099
1100     glClearAccum = cast(pfglClearAccum)getProc("glClearAccum");
1101     glAccum = cast(pfglAccum)getProc("glAccum");
1102
1103     glMatrixMode = cast(pfglMatrixMode)getProc("glMatrixMode");
1104     glOrtho = cast(pfglOrtho)getProc("glOrtho");
1105     glFrustum = cast(pfglFrustum)getProc("glFrustum");
1106     glViewport = cast(pfglViewport)getProc("glViewport");
1107     glPushMatrix = cast(pfglPushMatrix)getProc("glPushMatrix");
1108     glPopMatrix = cast(pfglPopMatrix)getProc("glPopMatrix");
1109     glLoadIdentity = cast(pfglLoadIdentity)getProc("glLoadIdentity");
1110     glLoadMatrixd = cast(pfglLoadMatrixd)getProc("glLoadMatrixd");
1111     glLoadMatrixf = cast(pfglLoadMatrixf)getProc("glLoadMatrixf");
1112     glMultMatrixd = cast(pfglMultMatrixd)getProc("glMultMatrixd");
1113     glMultMatrixf = cast(pfglMultMatrixf)getProc("glMultMatrixf");
1114     glRotated = cast(pfglRotated)getProc("glRotated");
1115     glRotatef = cast(pfglRotatef)getProc("glRotatef");
1116     glScaled = cast(pfglScaled)getProc("glScaled");
1117     glScalef = cast(pfglScalef)getProc("glScalef");
1118     glTranslated = cast(pfglTranslated)getProc("glTranslated");
1119     glTranslatef = cast(pfglTranslatef)getProc("glTranslatef");
1120
1121     glIsList = cast(pfglIsList)getProc("glIsList");
1122     glDeleteLists = cast(pfglDeleteLists)getProc("glDeleteLists");
1123     glGenLists = cast(pfglGenLists)getProc("glGenLists");
1124     glNewList = cast(pfglNewList)getProc("glNewList");
1125     glEndList = cast(pfglEndList)getProc("glEndList");
1126     glCallList = cast(pfglCallList)getProc("glCallList");
1127     glCallLists = cast(pfglCallLists)getProc("glCallLists");
1128     glListBase = cast(pfglListBase)getProc("glListBase");
1129
1130     glBegin = cast(pfglBegin)getProc("glBegin");
1131     glEnd = cast(pfglEnd)getProc("glEnd");
1132     glVertex2d = cast(pfglVertex2d)getProc("glVertex2d");
1133     glVertex2f = cast(pfglVertex2f)getProc("glVertex2f");
1134     glVertex2i = cast(pfglVertex2i)getProc("glVertex2i");
1135     glVertex2s = cast(pfglVertex2s)getProc("glVertex2s");
1136     glVertex3d = cast(pfglVertex3d)getProc("glVertex3d");
1137     glVertex3f = cast(pfglVertex3f)getProc("glVertex3f");
1138     glVertex3i = cast(pfglVertex3i)getProc("glVertex3i");
1139     glVertex3s = cast(pfglVertex3s)getProc("glVertex3s");
1140     glVertex4d = cast(pfglVertex4d)getProc("glVertex4d");
1141     glVertex4f = cast(pfglVertex4f)getProc("glVertex4f");
1142     glVertex4i = cast(pfglVertex4i)getProc("glVertex4i");
1143     glVertex4s = cast(pfglVertex4s)getProc("glVertex4s");
1144     glVertex2dv = cast(pfglVertex2dv)getProc("glVertex2dv");
1145     glVertex2fv = cast(pfglVertex2fv)getProc("glVertex2fv");
1146     glVertex2iv = cast(pfglVertex2iv)getProc("glVertex2iv");
1147     glVertex2sv = cast(pfglVertex2sv)getProc("glVertex2sv");
1148     glVertex3dv = cast(pfglVertex3dv)getProc("glVertex3dv");
1149     glVertex3fv = cast(pfglVertex3fv)getProc("glVertex3fv");
1150     glVertex3iv = cast(pfglVertex3iv)getProc("glVertex3iv");
1151     glVertex3sv = cast(pfglVertex3sv)getProc("glVertex3sv");
1152     glVertex4dv = cast(pfglVertex4dv)getProc("glVertex4dv");
1153     glVertex4fv = cast(pfglVertex4fv)getProc("glVertex4fv");
1154     glVertex4iv = cast(pfglVertex4iv)getProc("glVertex4iv");
1155     glVertex4sv = cast(pfglVertex4sv)getProc("glVertex4sv");
1156     glNormal3b = cast(pfglNormal3b)getProc("glNormal3b");
1157     glNormal3d = cast(pfglNormal3d)getProc("glNormal3d");
1158     glNormal3f = cast(pfglNormal3f)getProc("glNormal3f");
1159     glNormal3i = cast(pfglNormal3i)getProc("glNormal3i");
1160     glNormal3s = cast(pfglNormal3s)getProc("glNormal3s");
1161     glNormal3bv = cast(pfglNormal3bv)getProc("glNormal3bv");
1162     glNormal3dv = cast(pfglNormal3dv)getProc("glNormal3dv");
1163     glNormal3fv = cast(pfglNormal3fv)getProc("glNormal3fv");
1164     glNormal3iv = cast(pfglNormal3iv)getProc("glNormal3iv");
1165     glNormal3sv = cast(pfglNormal3sv)getProc("glNormal3sv");
1166     glIndexd = cast(pfglIndexd)getProc("glIndexd");
1167     glIndexf = cast(pfglIndexf)getProc("glIndexf");
1168     glIndexi = cast(pfglIndexi)getProc("glIndexi");
1169     glIndexs = cast(pfglIndexs)getProc("glIndexs");
1170     glIndexub = cast(pfglIndexub)getProc("glIndexub");
1171     glIndexdv = cast(pfglIndexdv)getProc("glIndexdv");
1172     glIndexfv = cast(pfglIndexfv)getProc("glIndexfv");
1173     glIndexiv = cast(pfglIndexiv)getProc("glIndexiv");
1174     glIndexsv = cast(pfglIndexsv)getProc("glIndexsv");
1175     glIndexubv = cast(pfglIndexubv)getProc("glIndexubv");
1176     glColor3b = cast(pfglColor3b)getProc("glColor3b");
1177     glColor3d = cast(pfglColor3d)getProc("glColor3d");
1178     glColor3f = cast(pfglColor3f)getProc("glColor3f");
1179     glColor3i = cast(pfglColor3i)getProc("glColor3i");
1180     glColor3s = cast(pfglColor3s)getProc("glColor3s");
1181     glColor3ub = cast(pfglColor3ub)getProc("glColor3ub");
1182     glColor3ui = cast(pfglColor3ui)getProc("glColor3ui");
1183     glColor3us = cast(pfglColor3us)getProc("glColor3us");
1184     glColor4b = cast(pfglColor4b)getProc("glColor4b");
1185     glColor4d = cast(pfglColor4d)getProc("glColor4d");
1186     glColor4f = cast(pfglColor4f)getProc("glColor4f");
1187     glColor4i = cast(pfglColor4i)getProc("glColor4i");
1188     glColor4s = cast(pfglColor4s)getProc("glColor4s");
1189     glColor4ub = cast(pfglColor4ub)getProc("glColor4ub");
1190     glColor4ui = cast(pfglColor4ui)getProc("glColor4ui");
1191     glColor4us = cast(pfglColor4us)getProc("glColor4us");
1192     glColor3bv = cast(pfglColor3bv)getProc("glColor3bv");
1193     glColor3dv = cast(pfglColor3dv)getProc("glColor3dv");
1194     glColor3fv = cast(pfglColor3fv)getProc("glColor3fv");
1195     glColor3iv = cast(pfglColor3iv)getProc("glColor3iv");
1196     glColor3sv = cast(pfglColor3sv)getProc("glColor3sv");
1197     glColor3ubv = cast(pfglColor3ubv)getProc("glColor3ubv");
1198     glColor3uiv = cast(pfglColor3uiv)getProc("glColor3uiv");
1199     glColor3usv = cast(pfglColor3usv)getProc("glColor3usv");
1200     glColor4bv = cast(pfglColor4bv)getProc("glColor4bv");
1201     glColor4dv = cast(pfglColor4dv)getProc("glColor4dv");
1202     glColor4fv = cast(pfglColor4fv)getProc("glColor4fv");
1203     glColor4iv = cast(pfglColor4iv)getProc("glColor4iv");
1204     glColor4sv = cast(pfglColor4sv)getProc("glColor4sv");
1205     glColor4ubv = cast(pfglColor4ubv)getProc("glColor4ubv");
1206     glColor4uiv = cast(pfglColor4uiv)getProc("glColor4uiv");
1207     glColor4usv = cast(pfglColor4usv)getProc("glColor4usv");
1208     glTexCoord1d = cast(pfglTexCoord1d)getProc("glTexCoord1d");
1209     glTexCoord1f = cast(pfglTexCoord1f)getProc("glTexCoord1f");
1210     glTexCoord1i = cast(pfglTexCoord1i)getProc("glTexCoord1i");
1211     glTexCoord1s = cast(pfglTexCoord1s)getProc("glTexCoord1s");
1212     glTexCoord2d = cast(pfglTexCoord2d)getProc("glTexCoord2d");
1213     glTexCoord2f = cast(pfglTexCoord2f)getProc("glTexCoord2f");
1214     glTexCoord2i = cast(pfglTexCoord2i)getProc("glTexCoord2i");
1215     glTexCoord2s = cast(pfglTexCoord2s)getProc("glTexCoord2s");
1216     glTexCoord3d = cast(pfglTexCoord3d)getProc("glTexCoord3d");
1217     glTexCoord3f = cast(pfglTexCoord3f)getProc("glTexCoord3f");
1218     glTexCoord3i = cast(pfglTexCoord3i)getProc("glTexCoord3i");
1219     glTexCoord3s = cast(pfglTexCoord3s)getProc("glTexCoord3s");
1220     glTexCoord4d = cast(pfglTexCoord4d)getProc("glTexCoord4d");
1221     glTexCoord4f = cast(pfglTexCoord4f)getProc("glTexCoord4f");
1222     glTexCoord4i = cast(pfglTexCoord4i)getProc("glTexCoord4i");
1223     glTexCoord4s = cast(pfglTexCoord4s)getProc("glTexCoord4s");
1224     glTexCoord1dv = cast(pfglTexCoord1dv)getProc("glTexCoord1dv");
1225     glTexCoord1fv = cast(pfglTexCoord1fv)getProc("glTexCoord1fv");
1226     glTexCoord1iv = cast(pfglTexCoord1iv)getProc("glTexCoord1iv");
1227     glTexCoord1sv = cast(pfglTexCoord1sv)getProc("glTexCoord1sv");
1228     glTexCoord2dv = cast(pfglTexCoord2dv)getProc("glTexCoord2dv");
1229     glTexCoord2fv = cast(pfglTexCoord2fv)getProc("glTexCoord2fv");
1230     glTexCoord2iv = cast(pfglTexCoord2iv)getProc("glTexCoord2iv");
1231     glTexCoord2sv = cast(pfglTexCoord2sv)getProc("glTexCoord2sv");
1232     glTexCoord3dv = cast(pfglTexCoord3dv)getProc("glTexCoord3dv");
1233     glTexCoord3fv = cast(pfglTexCoord3fv)getProc("glTexCoord3fv");
1234     glTexCoord3iv = cast(pfglTexCoord3iv)getProc("glTexCoord3iv");
1235     glTexCoord3sv = cast(pfglTexCoord3sv)getProc("glTexCoord3sv");
1236     glTexCoord4dv = cast(pfglTexCoord4dv)getProc("glTexCoord4dv");
1237     glTexCoord4fv = cast(pfglTexCoord4fv)getProc("glTexCoord4fv");
1238     glTexCoord4iv = cast(pfglTexCoord4iv)getProc("glTexCoord4iv");
1239     glTexCoord4sv = cast(pfglTexCoord4sv)getProc("glTexCoord4sv");
1240     glRasterPos2d = cast(pfglRasterPos2d)getProc("glRasterPos2d");
1241     glRasterPos2f = cast(pfglRasterPos2f)getProc("glRasterPos2f");
1242     glRasterPos2i = cast(pfglRasterPos2i)getProc("glRasterPos2i");
1243     glRasterPos2s = cast(pfglRasterPos2s)getProc("glRasterPos2s");
1244     glRasterPos3d = cast(pfglRasterPos3d)getProc("glRasterPos3d");
1245     glRasterPos3f = cast(pfglRasterPos3f)getProc("glRasterPos3f");
1246     glRasterPos3i = cast(pfglRasterPos3i)getProc("glRasterPos3i");
1247     glRasterPos3s = cast(pfglRasterPos3s)getProc("glRasterPos3s");
1248     glRasterPos4d = cast(pfglRasterPos4d)getProc("glRasterPos4d");
1249     glRasterPos4f = cast(pfglRasterPos4f)getProc("glRasterPos4f");
1250     glRasterPos4i = cast(pfglRasterPos4i)getProc("glRasterPos4i");
1251     glRasterPos4s = cast(pfglRasterPos4s)getProc("glRasterPos4s");
1252     glRasterPos2dv = cast(pfglRasterPos2dv)getProc("glRasterPos2dv");
1253     glRasterPos2fv = cast(pfglRasterPos2fv)getProc("glRasterPos2fv");
1254     glRasterPos2iv = cast(pfglRasterPos2iv)getProc("glRasterPos2iv");
1255     glRasterPos2sv = cast(pfglRasterPos2sv)getProc("glRasterPos2sv");
1256     glRasterPos3dv = cast(pfglRasterPos3dv)getProc("glRasterPos3dv");
1257     glRasterPos3fv = cast(pfglRasterPos3fv)getProc("glRasterPos3fv");
1258     glRasterPos3iv = cast(pfglRasterPos3iv)getProc("glRasterPos3iv");
1259     glRasterPos3sv = cast(pfglRasterPos3sv)getProc("glRasterPos3sv");
1260     glRasterPos4dv = cast(pfglRasterPos4dv)getProc("glRasterPos4dv");
1261     glRasterPos4fv = cast(pfglRasterPos4fv)getProc("glRasterPos4fv");
1262     glRasterPos4iv = cast(pfglRasterPos4iv)getProc("glRasterPos4iv");
1263     glRasterPos4sv = cast(pfglRasterPos4sv)getProc("glRasterPos4sv");
1264     glRectd = cast(pfglRectd)getProc("glRectd");
1265     glRectf = cast(pfglRectf)getProc("glRectf");
1266     glRecti = cast(pfglRecti)getProc("glRecti");
1267     glRects = cast(pfglRects)getProc("glRects");
1268     glRectdv = cast(pfglRectdv)getProc("glRectdv");
1269     glRectfv = cast(pfglRectfv)getProc("glRectfv");
1270     glRectiv = cast(pfglRectiv)getProc("glRectiv");
1271     glRectsv = cast(pfglRectsv)getProc("glRectsv");
1272
1273     glVertexPointer = cast(pfglVertexPointer)getProc("glVertexPointer");
1274     glNormalPointer = cast(pfglNormalPointer)getProc("glNormalPointer");
1275     glColorPointer = cast(pfglColorPointer)getProc("glColorPointer");
1276     glIndexPointer = cast(pfglIndexPointer)getProc("glIndexPointer");
1277     glTexCoordPointer = cast(pfglTexCoordPointer)getProc("glTexCoordPointer");
1278     glEdgeFlagPointer = cast(pfglEdgeFlagPointer)getProc("glEdgeFlagPointer");
1279     glGetPointerv = cast(pfglGetPointerv)getProc("glGetPointerv");
1280     glArrayElement = cast(pfglArrayElement)getProc("glArrayElement");
1281     glDrawArrays = cast(pfglDrawArrays)getProc("glDrawArrays");
1282     glDrawElements = cast(pfglDrawElements)getProc("glDrawElements");
1283     glInterleavedArrays = cast(pfglInterleavedArrays)getProc("glInterleavedArrays");
1284
1285     glShadeModel = cast(pfglShadeModel)getProc("glShadeModel");
1286     glLightf = cast(pfglLightf)getProc("glLightf");
1287     glLighti = cast(pfglLighti)getProc("glLighti");
1288     glLightfv = cast(pfglLightfv)getProc("glLightfv");
1289     glLightiv = cast(pfglLightiv)getProc("glLightiv");
1290     glGetLightfv = cast(pfglGetLightfv)getProc("glGetLightfv");
1291     glGetLightiv = cast(pfglGetLightiv)getProc("glGetLightiv");
1292     glLightModelf = cast(pfglLightModelf)getProc("glLightModelf");
1293     glLightModeli = cast(pfglLightModeli)getProc("glLightModeli");
1294     glLightModelfv = cast(pfglLightModelfv)getProc("glLightModelfv");
1295     glLightModeliv = cast(pfglLightModeliv)getProc("glLightModeliv");
1296     glMaterialf = cast(pfglMaterialf)getProc("glMaterialf");
1297     glMateriali = cast(pfglMateriali)getProc("glMateriali");
1298     glMaterialfv = cast(pfglMaterialfv)getProc("glMaterialfv");
1299     glMaterialiv = cast(pfglMaterialiv)getProc("glMaterialiv");
1300     glGetMaterialfv = cast(pfglGetMaterialfv)getProc("glGetMaterialfv");
1301     glGetMaterialiv = cast(pfglGetMaterialiv)getProc("glGetMaterialiv");
1302     glColorMaterial = cast(pfglColorMaterial)getProc("glColorMaterial");
1303
1304     glPixelZoom = cast(pfglPixelZoom)getProc("glPixelZoom");
1305     glPixelStoref = cast(pfglPixelStoref)getProc("glPixelStoref");
1306     glPixelStorei = cast(pfglPixelStorei)getProc("glPixelStorei");
1307     glPixelTransferf = cast(pfglPixelTransferf)getProc("glPixelTransferf");
1308     glPixelTransferi = cast(pfglPixelTransferi)getProc("glPixelTransferi");
1309     glPixelMapfv = cast(pfglPixelMapfv)getProc("glPixelMapfv");
1310     glPixelMapuiv = cast(pfglPixelMapuiv)getProc("glPixelMapuiv");
1311     glPixelMapusv = cast(pfglPixelMapusv)getProc("glPixelMapusv");
1312     glGetPixelMapfv = cast(pfglGetPixelMapfv)getProc("glGetPixelMapfv");
1313     glGetPixelMapuiv = cast(pfglGetPixelMapuiv)getProc("glGetPixelMapuiv");
1314     glGetPixelMapusv = cast(pfglGetPixelMapusv)getProc("glGetPixelMapusv");
1315     glBitmap = cast(pfglBitmap)getProc("glBitmap");
1316     glReadPixels = cast(pfglReadPixels)getProc("glReadPixels");
1317     glDrawPixels = cast(pfglDrawPixels)getProc("glDrawPixels");
1318     glCopyPixels = cast(pfglCopyPixels)getProc("glCopyPixels");
1319
1320     glStencilFunc = cast(pfglStencilFunc)getProc("glStencilFunc");
1321     glStencilMask = cast(pfglStencilMask)getProc("glStencilMask");
1322     glStencilOp = cast(pfglStencilOp)getProc("glStencilOp");
1323     glClearStencil = cast(pfglClearStencil)getProc("glClearStencil");
1324
1325     glTexGend = cast(pfglTexGend)getProc("glTexGend");
1326     glTexGenf = cast(pfglTexGenf)getProc("glTexGenf");
1327     glTexGeni = cast(pfglTexGeni)getProc("glTexGeni");
1328     glTexGendv = cast(pfglTexGendv)getProc("glTexGendv");
1329     glTexGenfv = cast(pfglTexGenfv)getProc("glTexGenfv");
1330     glTexGeniv = cast(pfglTexGeniv)getProc("glTexGeniv");
1331     glGetTexGendv = cast(pfglGetTexGendv)getProc("glGetTexGendv");
1332     glGetTexGenfv = cast(pfglGetTexGenfv)getProc("glGetTexGenfv");
1333     glGetTexGeniv = cast(pfglGetTexGeniv)getProc("glGetTexGeniv");
1334     glTexEnvf = cast(pfglTexEnvf)getProc("glTexEnvf");
1335     glTexEnvi = cast(pfglTexEnvi)getProc("glTexEnvi");
1336     glTexEnvfv = cast(pfglTexEnvfv)getProc("glTexEnvfv");
1337     glTexEnviv = cast(pfglTexEnviv)getProc("glTexEnviv");
1338     glGetTexEnvfv = cast(pfglGetTexEnvfv)getProc("glGetTexEnvfv");
1339     glGetTexEnviv = cast(pfglGetTexEnviv)getProc("glGetTexEnviv");
1340     glTexParameterf = cast(pfglTexParameterf)getProc("glTexParameterf");
1341     glTexParameteri = cast(pfglTexParameteri)getProc("glTexParameteri");
1342     glTexParameterfv = cast(pfglTexParameterfv)getProc("glTexParameterfv");
1343     glTexParameteriv = cast(pfglTexParameteriv)getProc("glTexParameteriv");
1344     glGetTexParameterfv = cast(pfglGetTexParameterfv)getProc("glGetTexParameterfv");
1345     glGetTexParameteriv = cast(pfglGetTexParameteriv)getProc("glGetTexParameteriv");
1346     glGetTexLevelParameterfv = cast(pfglGetTexLevelParameterfv)getProc("glGetTexLevelParameterfv");
1347     glGetTexLevelParameteriv = cast(pfglGetTexLevelParameteriv)getProc("glGetTexLevelParameteriv");
1348     glTexImage1D = cast(pfglTexImage1D)getProc("glTexImage1D");
1349     glTexImage2D = cast(pfglTexImage2D)getProc("glTexImage2D");
1350     glGetTexImage = cast(pfglGetTexImage)getProc("glGetTexImage");
1351
1352     glMap1d = cast(pfglMap1d)getProc("glMap1d");
1353     glMap1f = cast(pfglMap1f)getProc("glMap1f");
1354     glMap2d = cast(pfglMap2d)getProc("glMap2d");
1355     glMap2f = cast(pfglMap2f)getProc("glMap2f");
1356     glGetMapdv = cast(pfglGetMapdv)getProc("glGetMapdv");
1357     glGetMapfv = cast(pfglGetMapfv)getProc("glGetMapfv");
1358     glGetMapiv = cast(pfglGetMapiv)getProc("glGetMapiv");
1359     glEvalCoord1d = cast(pfglEvalCoord1d)getProc("glEvalCoord1d");
1360     glEvalCoord1f = cast(pfglEvalCoord1f)getProc("glEvalCoord1f");
1361     glEvalCoord1dv = cast(pfglEvalCoord1dv)getProc("glEvalCoord1dv");
1362     glEvalCoord1fv = cast(pfglEvalCoord1fv)getProc("glEvalCoord1fv");
1363     glEvalCoord2d = cast(pfglEvalCoord2d)getProc("glEvalCoord2d");
1364     glEvalCoord2f = cast(pfglEvalCoord2f)getProc("glEvalCoord2f");
1365     glEvalCoord2dv = cast(pfglEvalCoord2dv)getProc("glEvalCoord2dv");
1366     glEvalCoord2fv = cast(pfglEvalCoord2fv)getProc("glEvalCoord2fv");
1367     glMapGrid1d = cast(pfglMapGrid1d)getProc("glMapGrid1d");
1368     glMapGrid1f = cast(pfglMapGrid1f)getProc("glMapGrid1f");
1369     glMapGrid2d = cast(pfglMapGrid2d)getProc("glMapGrid2d");
1370     glMapGrid2f = cast(pfglMapGrid2f)getProc("glMapGrid2f");
1371     glEvalPoint1 = cast(pfglEvalPoint1)getProc("glEvalPoint1");
1372     glEvalPoint2 = cast(pfglEvalPoint2)getProc("glEvalPoint2");
1373     glEvalMesh1 = cast(pfglEvalMesh1)getProc("glEvalMesh1");
1374     glEvalMesh2 = cast(pfglEvalMesh2)getProc("glEvalMesh2");
1375
1376     glFogf = cast(pfglFogf)getProc("glFogf");
1377     glFogi = cast(pfglFogi)getProc("glFogi");
1378     glFogfv = cast(pfglFogfv)getProc("glFogfv");
1379     glFogiv = cast(pfglFogiv)getProc("glFogiv");
1380
1381     glFeedbackBuffer = cast(pfglFeedbackBuffer)getProc("glFeedbackBuffer");
1382     glPassThrough = cast(pfglPassThrough)getProc("glPassThrough");
1383     glSelectBuffer = cast(pfglSelectBuffer)getProc("glSelectBuffer");
1384     glInitNames = cast(pfglInitNames)getProc("glInitNames");
1385     glLoadName = cast(pfglLoadName)getProc("glLoadName");
1386     glPushName = cast(pfglPushName)getProc("glPushName");
1387     glPopName = cast(pfglPopName)getProc("glPopName");
1388
1389     glGenTextures = cast(pfglGenTextures)getProc("glGenTextures");
1390     glDeleteTextures = cast(pfglDeleteTextures)getProc("glDeleteTextures");
1391     glBindTexture = cast(pfglBindTexture)getProc("glBindTexture");
1392     glPrioritizeTextures = cast(pfglPrioritizeTextures)getProc("glPrioritizeTextures");
1393     glAreTexturesResident = cast(pfglAreTexturesResident)getProc("glAreTexturesResident");
1394     glIsTexture = cast(pfglIsTexture)getProc("glIsTexture");
1395     glTexSubImage1D = cast(pfglTexSubImage1D)getProc("glTexSubImage1D");
1396     glTexSubImage2D = cast(pfglTexSubImage2D)getProc("glTexSubImage2D");
1397     glCopyTexImage1D = cast(pfglCopyTexImage1D)getProc("glCopyTexImage1D");
1398     glCopyTexImage2D = cast(pfglCopyTexImage2D)getProc("glCopyTexImage2D");
1399     glCopyTexSubImage1D = cast(pfglCopyTexSubImage1D)getProc("glCopyTexSubImage1D");
1400     glCopyTexSubImage2D = cast(pfglCopyTexSubImage2D)getProc("glCopyTexSubImage2D");
1401
1402     glDrawRangeElements = cast(pfglDrawRangeElements)getProc("glDrawRangeElements");
1403     glTexImage3D = cast(pfglTexImage3D)getProc("glTexImage3D");
1404     glTexSubImage3D = cast(pfglTexSubImage3D)getProc("glTexSubImage3D");
1405     glCopyTexSubImage3D = cast(pfglCopyTexSubImage3D)getProc("glCopyTexSubImage3D");
1406
1407     glActiveTexture = cast(pfglActiveTexture)getProc("glActiveTexture");
1408     glClientActiveTexture = cast(pfglClientActiveTexture)getProc("glClientActiveTexture");
1409     glMultiTexCoord1d = cast(pfglMultiTexCoord1d)getProc("glMultiTexCoord1d");
1410     glMultiTexCoord1dv = cast(pfglMultiTexCoord1dv)getProc("glMultiTexCoord1dv");
1411     glMultiTexCoord1f = cast(pfglMultiTexCoord1f)getProc("glMultiTexCoord1f");
1412     glMultiTexCoord1fv = cast(pfglMultiTexCoord1fv)getProc("glMultiTexCoord1fv");
1413     glMultiTexCoord1i = cast(pfglMultiTexCoord1i)getProc("glMultiTexCoord1i");
1414     glMultiTexCoord1iv = cast(pfglMultiTexCoord1iv)getProc("glMultiTexCoord1iv");
1415     glMultiTexCoord1s = cast(pfglMultiTexCoord1s)getProc("glMultiTexCoord1s");
1416     glMultiTexCoord1sv = cast(pfglMultiTexCoord1sv)getProc("glMultiTexCoord1sv");
1417     glMultiTexCoord2d = cast(pfglMultiTexCoord2d)getProc("glMultiTexCoord2d");
1418     glMultiTexCoord2dv = cast(pfglMultiTexCoord2dv)getProc("glMultiTexCoord2dv");
1419     glMultiTexCoord2f = cast(pfglMultiTexCoord2f)getProc("glMultiTexCoord2f");
1420     glMultiTexCoord2fv = cast(pfglMultiTexCoord2fv)getProc("glMultiTexCoord2fv");
1421     glMultiTexCoord2i = cast(pfglMultiTexCoord2i)getProc("glMultiTexCoord2i");
1422     glMultiTexCoord2iv = cast(pfglMultiTexCoord2iv)getProc("glMultiTexCoord2iv");
1423     glMultiTexCoord2s = cast(pfglMultiTexCoord2s)getProc("glMultiTexCoord2s");
1424     glMultiTexCoord2sv = cast(pfglMultiTexCoord2sv)getProc("glMultiTexCoord2sv");
1425     glMultiTexCoord3d = cast(pfglMultiTexCoord3d)getProc("glMultiTexCoord3d");
1426     glMultiTexCoord3dv = cast(pfglMultiTexCoord3dv)getProc("glMultiTexCoord3dv");
1427     glMultiTexCoord3f = cast(pfglMultiTexCoord3f)getProc("glMultiTexCoord3f");
1428     glMultiTexCoord3fv = cast(pfglMultiTexCoord3fv)getProc("glMultiTexCoord3fv");
1429     glMultiTexCoord3i = cast(pfglMultiTexCoord3i)getProc("glMultiTexCoord3i");
1430     glMultiTexCoord3iv = cast(pfglMultiTexCoord3iv)getProc("glMultiTexCoord3iv");
1431     glMultiTexCoord3s = cast(pfglMultiTexCoord3s)getProc("glMultiTexCoord3s");
1432     glMultiTexCoord3sv = cast(pfglMultiTexCoord3sv)getProc("glMultiTexCoord3sv");
1433     glMultiTexCoord4d = cast(pfglMultiTexCoord4d)getProc("glMultiTexCoord4d");
1434     glMultiTexCoord4dv = cast(pfglMultiTexCoord4dv)getProc("glMultiTexCoord4dv");
1435     glMultiTexCoord4f = cast(pfglMultiTexCoord4f)getProc("glMultiTexCoord4f");
1436     glMultiTexCoord4fv = cast(pfglMultiTexCoord4fv)getProc("glMultiTexCoord4fv");
1437     glMultiTexCoord4i = cast(pfglMultiTexCoord4i)getProc("glMultiTexCoord4i");
1438     glMultiTexCoord4iv = cast(pfglMultiTexCoord4iv)getProc("glMultiTexCoord4iv");
1439     glMultiTexCoord4s = cast(pfglMultiTexCoord4s)getProc("glMultiTexCoord4s");
1440     glMultiTexCoord4sv = cast(pfglMultiTexCoord4sv)getProc("glMultiTexCoord4sv");
1441     glLoadTransposeMatrixd = cast(pfglLoadTransposeMatrixd)getProc("glLoadTransposeMatrixd");
1442     glLoadTransposeMatrixf = cast(pfglLoadTransposeMatrixf)getProc("glLoadTransposeMatrixf");
1443     glMultTransposeMatrixd = cast(pfglMultTransposeMatrixd)getProc("glMultTransposeMatrixd");
1444     glMultTransposeMatrixf = cast(pfglMultTransposeMatrixf)getProc("glMultTransposeMatrixf");
1445     glSampleCoverage = cast(pfglSampleCoverage)getProc("glSampleCoverage");
1446     glCompressedTexImage1D = cast(pfglCompressedTexImage1D)getProc("glCompressedTexImage1D");
1447     glCompressedTexImage2D = cast(pfglCompressedTexImage2D)getProc("glCompressedTexImage2D");
1448     glCompressedTexImage3D = cast(pfglCompressedTexImage3D)getProc("glCompressedTexImage3D");
1449     glCompressedTexSubImage1D = cast(pfglCompressedTexSubImage1D)getProc("glCompressedTexSubImage1D");
1450     glCompressedTexSubImage2D = cast(pfglCompressedTexSubImage2D)getProc("glCompressedTexSubImage2D");
1451     glCompressedTexSubImage3D = cast(pfglCompressedTexSubImage3D)getProc("glCompressedTexSubImage3D");
1452     glGetCompressedTexImage = cast(pfglGetCompressedTexImage)getProc("glGetCompressedTexImage");
1453
1454     glBlendFuncSeparate = cast(pfglBlendFuncSeparate)getProc("glBlendFuncSeparate");
1455     glFogCoordf = cast(pfglFogCoordf)getProc("glFogCoordf");
1456     glFogCoordfv = cast(pfglFogCoordfv)getProc("glFogCoordfv");
1457     glFogCoordd = cast(pfglFogCoordd)getProc("glFogCoordd");
1458     glFogCoorddv = cast(pfglFogCoorddv)getProc("glFogCoorddv");
1459     glFogCoordPointer = cast(pfglFogCoordPointer)getProc("glFogCoordPointer");
1460     glMultiDrawArrays = cast(pfglMultiDrawArrays)getProc("glMultiDrawArrays");
1461     glMultiDrawElements = cast(pfglMultiDrawElements)getProc("glMultiDrawElements");
1462     glPointParameterf = cast(pfglPointParameterf)getProc("glPointParameterf");
1463     glPointParameterfv = cast(pfglPointParameterfv)getProc("glPointParameterfv");
1464     glPointParameteri = cast(pfglPointParameteri)getProc("glPointParameteri");
1465     glPointParameteriv = cast(pfglPointParameteriv)getProc("glPointParameteriv");
1466     glSecondaryColor3b = cast(pfglSecondaryColor3b)getProc("glSecondaryColor3b");
1467     glSecondaryColor3bv = cast(pfglSecondaryColor3bv)getProc("glSecondaryColor3bv");
1468     glSecondaryColor3d = cast(pfglSecondaryColor3d)getProc("glSecondaryColor3d");
1469     glSecondaryColor3dv = cast(pfglSecondaryColor3dv)getProc("glSecondaryColor3dv");
1470     glSecondaryColor3f = cast(pfglSecondaryColor3f)getProc("glSecondaryColor3f");
1471     glSecondaryColor3fv = cast(pfglSecondaryColor3fv)getProc("glSecondaryColor3fv");
1472     glSecondaryColor3i = cast(pfglSecondaryColor3i)getProc("glSecondaryColor3i");
1473     glSecondaryColor3iv = cast(pfglSecondaryColor3iv)getProc("glSecondaryColor3iv");
1474     glSecondaryColor3s = cast(pfglSecondaryColor3s)getProc("glSecondaryColor3s");
1475     glSecondaryColor3sv = cast(pfglSecondaryColor3sv)getProc("glSecondaryColor3sv");
1476     glSecondaryColor3ub = cast(pfglSecondaryColor3ub)getProc("glSecondaryColor3ub");
1477     glSecondaryColor3ubv = cast(pfglSecondaryColor3ubv)getProc("glSecondaryColor3ubv");
1478     glSecondaryColor3ui = cast(pfglSecondaryColor3ui)getProc("glSecondaryColor3ui");
1479     glSecondaryColor3uiv = cast(pfglSecondaryColor3uiv)getProc("glSecondaryColor3uiv");
1480     glSecondaryColor3us = cast(pfglSecondaryColor3us)getProc("glSecondaryColor3us");
1481     glSecondaryColor3usv = cast(pfglSecondaryColor3usv)getProc("glSecondaryColor3usv");
1482     glSecondaryColorPointer = cast(pfglSecondaryColorPointer)getProc("glSecondaryColorPointer");
1483     glWindowPos2d = cast(pfglWindowPos2d)getProc("glWindowPos2d");
1484     glWindowPos2dv = cast(pfglWindowPos2dv)getProc("glWindowPos2dv");
1485     glWindowPos2f = cast(pfglWindowPos2f)getProc("glWindowPos2f");
1486     glWindowPos2fv = cast(pfglWindowPos2fv)getProc("glWindowPos2fv");
1487     glWindowPos2i = cast(pfglWindowPos2i)getProc("glWindowPos2i");
1488     glWindowPos2iv = cast(pfglWindowPos2iv)getProc("glWindowPos2iv");
1489     glWindowPos2s = cast(pfglWindowPos2s)getProc("glWindowPos2s");
1490     glWindowPos2sv = cast(pfglWindowPos2sv)getProc("glWindowPos2sv");
1491     glWindowPos3d = cast(pfglWindowPos3d)getProc("glWindowPos3d");
1492     glWindowPos3dv = cast(pfglWindowPos3dv)getProc("glWindowPos3dv");
1493     glWindowPos3f = cast(pfglWindowPos3f)getProc("glWindowPos3f");
1494     glWindowPos3fv = cast(pfglWindowPos3fv)getProc("glWindowPos3fv");
1495     glWindowPos3i = cast(pfglWindowPos3i)getProc("glWindowPos3i");
1496     glWindowPos3iv = cast(pfglWindowPos3iv)getProc("glWindowPos3iv");
1497     glWindowPos3s = cast(pfglWindowPos3s)getProc("glWindowPos3s");
1498     glWindowPos3sv = cast(pfglWindowPos3sv)getProc("glWindowPos3sv");
1499
1500     glGenQueries = cast(pfglGenQueries)getProc("glGenQueries");
1501     glDeleteQueries = cast(pfglDeleteQueries)getProc("glDeleteQueries");
1502     glIsQuery = cast(pfglIsQuery)getProc("glIsQuery");
1503     glBeginQuery = cast(pfglBeginQuery)getProc("glBeginQuery");
1504     glEndQuery = cast(pfglEndQuery)getProc("glEndQuery");
1505     glGetQueryiv = cast(pfglGetQueryiv)getProc("glGetQueryiv");
1506     glGetQueryObjectiv = cast(pfglGetQueryObjectiv)getProc("glGetQueryObjectiv");
1507     glGetQueryObjectuiv = cast(pfglGetQueryObjectuiv)getProc("glGetQueryObjectuiv");
1508     glBindBuffer = cast(pfglBindBuffer)getProc("glBindBuffer");
1509     glDeleteBuffers = cast(pfglDeleteBuffers)getProc("glDeleteBuffers");
1510     glGenBuffers = cast(pfglGenBuffers)getProc("glGenBuffers");
1511     glIsBuffer = cast(pfglIsBuffer)getProc("glIsBuffer");
1512     glBufferData = cast(pfglBufferData)getProc("glBufferData");
1513     glBufferSubData = cast(pfglBufferSubData)getProc("glBufferSubData");
1514     glGetBufferSubData = cast(pfglGetBufferSubData)getProc("glGetBufferSubData");
1515     glMapBuffer = cast(pfglMapBuffer)getProc("glMapBuffer");
1516     glUnmapBuffer = cast(pfglUnmapBuffer)getProc("glUnmapBuffer");
1517     glGetBufferParameteriv = cast(pfglGetBufferParameteriv)getProc("glGetBufferParameteriv");
1518     glGetBufferPointerv = cast(pfglGetBufferPointerv)getProc("glGetBufferPointerv");
1519
1520     glBlendEquationSeparate = cast(pfglBlendEquationSeparate)getProc("glBlendEquationSeparate");
1521     glDrawBuffers = cast(pfglDrawBuffers)getProc("glDrawBuffers");
1522     glStencilOpSeparate = cast(pfglStencilOpSeparate)getProc("glStencilOpSeparate");
1523     glStencilFuncSeparate = cast(pfglStencilFuncSeparate)getProc("glStencilFuncSeparate");
1524     glStencilMaskSeparate = cast(pfglStencilMaskSeparate)getProc("glStencilMaskSeparate");
1525     glAttachShader = cast(pfglAttachShader)getProc("glAttachShader");
1526     glBindAttribLocation = cast(pfglBindAttribLocation)getProc("glBindAttribLocation");
1527     glCompileShader = cast(pfglCompileShader)getProc("glCompileShader");
1528     glCreateProgram = cast(pfglCreateProgram)getProc("glCreateProgram");
1529     glCreateShader = cast(pfglCreateShader)getProc("glCreateShader");
1530     glDeleteProgram = cast(pfglDeleteProgram)getProc("glDeleteProgram");
1531     glDeleteShader = cast(pfglDeleteShader)getProc("glDeleteShader");
1532     glDetachShader = cast(pfglDetachShader)getProc("glDetachShader");
1533     glDisableVertexAttribArray = cast(pfglDisableVertexAttribArray)getProc("glDisableVertexAttribArray");
1534     glEnableVertexAttribArray = cast(pfglEnableVertexAttribArray)getProc("glEnableVertexAttribArray");
1535     glGetActiveAttrib = cast(pfglGetActiveAttrib)getProc("glGetActiveAttrib");
1536     glGetActiveUniform = cast(pfglGetActiveUniform)getProc("glGetActiveUniform");
1537     glGetAttachedShaders = cast(pfglGetAttachedShaders)getProc("glGetAttachedShaders");
1538     glGetAttribLocation = cast(pfglGetAttribLocation)getProc("glGetAttribLocation");
1539     glGetProgramiv = cast(pfglGetProgramiv)getProc("glGetProgramiv");
1540     glGetProgramInfoLog = cast(pfglGetProgramInfoLog)getProc("glGetProgramInfoLog");
1541     glGetShaderiv = cast(pfglGetShaderiv)getProc("glGetShaderiv");
1542     glGetShaderInfoLog = cast(pfglGetShaderInfoLog)getProc("glGetShaderInfoLog");
1543     glGetShaderSource = cast(pfglGetShaderSource)getProc("glGetShaderSource");
1544     glGetUniformLocation = cast(pfglGetUniformLocation)getProc("glGetUniformLocation");
1545     glGetUniformfv = cast(pfglGetUniformfv)getProc("glGetUniformfv");
1546     glGetUniformiv = cast(pfglGetUniformiv)getProc("glGetUniformiv");
1547     glGetVertexAttribdv = cast(pfglGetVertexAttribdv)getProc("glGetVertexAttribdv");
1548     glGetVertexAttribfv = cast(pfglGetVertexAttribfv)getProc("glGetVertexAttribfv");
1549     glGetVertexAttribiv = cast(pfglGetVertexAttribiv)getProc("glGetVertexAttribiv");
1550     glGetVertexAttribPointerv = cast(pfglGetVertexAttribPointerv)getProc("glGetVertexAttribPointerv");
1551     glIsProgram = cast(pfglIsProgram)getProc("glIsProgram");
1552     glIsShader = cast(pfglIsShader)getProc("glIsShader");
1553     glLinkProgram = cast(pfglLinkProgram)getProc("glLinkProgram");
1554     glShaderSource = cast(pfglShaderSource)getProc("glShaderSource");
1555     glUseProgram = cast(pfglUseProgram)getProc("glUseProgram");
1556     glUniform1f = cast(pfglUniform1f)getProc("glUniform1f");
1557     glUniform2f = cast(pfglUniform2f)getProc("glUniform2f");
1558     glUniform3f = cast(pfglUniform3f)getProc("glUniform3f");
1559     glUniform4f = cast(pfglUniform4f)getProc("glUniform4f");
1560     glUniform1i = cast(pfglUniform1i)getProc("glUniform1i");
1561     glUniform2i = cast(pfglUniform2i)getProc("glUniform2i");
1562     glUniform3i = cast(pfglUniform3i)getProc("glUniform3i");
1563     glUniform4i = cast(pfglUniform4i)getProc("glUniform4i");
1564     glUniform1fv = cast(pfglUniform1fv)getProc("glUniform1fv");
1565     glUniform2fv = cast(pfglUniform2fv)getProc("glUniform2fv");
1566     glUniform3fv = cast(pfglUniform3fv)getProc("glUniform3fv");
1567     glUniform4fv = cast(pfglUniform4fv)getProc("glUniform4fv");
1568     glUniform1iv = cast(pfglUniform1iv)getProc("glUniform1iv");
1569     glUniform2iv = cast(pfglUniform2iv)getProc("glUniform2iv");
1570     glUniform3iv = cast(pfglUniform3iv)getProc("glUniform3iv");
1571     glUniform4iv = cast(pfglUniform4iv)getProc("glUniform4iv");
1572     glUniformMatrix2fv = cast(pfglUniformMatrix2fv)getProc("glUniformMatrix2fv");
1573     glUniformMatrix3fv = cast(pfglUniformMatrix3fv)getProc("glUniformMatrix3fv");
1574     glUniformMatrix4fv = cast(pfglUniformMatrix4fv)getProc("glUniformMatrix4fv");
1575     glValidateProgram = cast(pfglValidateProgram)getProc("glValidateProgram");
1576     glVertexAttrib1d = cast(pfglVertexAttrib1d)getProc("glVertexAttrib1d");
1577     glVertexAttrib1dv = cast(pfglVertexAttrib1dv)getProc("glVertexAttrib1dv");
1578     glVertexAttrib1f = cast(pfglVertexAttrib1f)getProc("glVertexAttrib1f");
1579     glVertexAttrib1fv = cast(pfglVertexAttrib1fv)getProc("glVertexAttrib1fv");
1580     glVertexAttrib1s = cast(pfglVertexAttrib1s)getProc("glVertexAttrib1s");
1581     glVertexAttrib1sv = cast(pfglVertexAttrib1sv)getProc("glVertexAttrib1sv");
1582     glVertexAttrib2d = cast(pfglVertexAttrib2d)getProc("glVertexAttrib2d");
1583     glVertexAttrib2dv = cast(pfglVertexAttrib2dv)getProc("glVertexAttrib2dv");
1584     glVertexAttrib2f = cast(pfglVertexAttrib2f)getProc("glVertexAttrib2f");
1585     glVertexAttrib2fv = cast(pfglVertexAttrib2fv)getProc("glVertexAttrib2fv");
1586     glVertexAttrib2s = cast(pfglVertexAttrib2s)getProc("glVertexAttrib2s");
1587     glVertexAttrib2sv = cast(pfglVertexAttrib2sv)getProc("glVertexAttrib2sv");
1588     glVertexAttrib3d = cast(pfglVertexAttrib3d)getProc("glVertexAttrib3d");
1589     glVertexAttrib3dv = cast(pfglVertexAttrib3dv)getProc("glVertexAttrib3dv");
1590     glVertexAttrib3f = cast(pfglVertexAttrib3f)getProc("glVertexAttrib3f");
1591     glVertexAttrib3fv = cast(pfglVertexAttrib3fv)getProc("glVertexAttrib3fv");
1592     glVertexAttrib3s = cast(pfglVertexAttrib3s)getProc("glVertexAttrib3s");
1593     glVertexAttrib3sv = cast(pfglVertexAttrib3sv)getProc("glVertexAttrib3sv");
1594     glVertexAttrib4Nbv = cast(pfglVertexAttrib4Nbv)getProc("glVertexAttrib4Nbv");
1595     glVertexAttrib4Niv = cast(pfglVertexAttrib4Niv)getProc("glVertexAttrib4Niv");
1596     glVertexAttrib4Nsv = cast(pfglVertexAttrib4Nsv)getProc("glVertexAttrib4Nsv");
1597     glVertexAttrib4Nub = cast(pfglVertexAttrib4Nub)getProc("glVertexAttrib4Nub");
1598     glVertexAttrib4Nubv = cast(pfglVertexAttrib4Nubv)getProc("glVertexAttrib4Nubv");
1599     glVertexAttrib4Nuiv = cast(pfglVertexAttrib4Nuiv)getProc("glVertexAttrib4Nuiv");
1600     glVertexAttrib4Nusv = cast(pfglVertexAttrib4Nusv)getProc("glVertexAttrib4Nusv");
1601     glVertexAttrib4bv = cast(pfglVertexAttrib4bv)getProc("glVertexAttrib4bv");
1602     glVertexAttrib4d = cast(pfglVertexAttrib4d)getProc("glVertexAttrib4d");
1603     glVertexAttrib4dv = cast(pfglVertexAttrib4dv)getProc("glVertexAttrib4dv");
1604     glVertexAttrib4f = cast(pfglVertexAttrib4f)getProc("glVertexAttrib4f");
1605     glVertexAttrib4fv = cast(pfglVertexAttrib4fv)getProc("glVertexAttrib4fv");
1606     glVertexAttrib4iv = cast(pfglVertexAttrib4iv)getProc("glVertexAttrib4iv");
1607     glVertexAttrib4s = cast(pfglVertexAttrib4s)getProc("glVertexAttrib4s");
1608     glVertexAttrib4sv = cast(pfglVertexAttrib4sv)getProc("glVertexAttrib4sv");
1609     glVertexAttrib4ubv = cast(pfglVertexAttrib4ubv)getProc("glVertexAttrib4ubv");
1610     glVertexAttrib4uiv = cast(pfglVertexAttrib4uiv)getProc("glVertexAttrib4uiv");
1611     glVertexAttrib4usv = cast(pfglVertexAttrib4usv)getProc("glVertexAttrib4usv");
1612     glVertexAttribPointer = cast(pfglVertexAttribPointer)getProc("glVertexAttribPointer");
1613 }
1614
1615 static ~this () {
1616     ExeModule_Release(gldrv);
1617 }
1618
1619 version (Windows) {
1620     extern (Windows):
1621 } else {
1622     extern (C):
1623 }
1624
1625 typedef GLvoid function(GLfloat) pfglClearIndex;
1626 typedef GLvoid function(GLclampf, GLclampf, GLclampf, GLclampf) pfglClearColor;
1627 typedef GLvoid function(GLbitfield) pfglClear;
1628 typedef GLvoid function(GLuint) pfglIndexMask;
1629 typedef GLvoid function(GLboolean, GLboolean, GLboolean, GLboolean) pfglColorMask;
1630 typedef GLvoid function(GLenum, GLclampf) pfglAlphaFunc;
1631 typedef GLvoid function(GLenum, GLenum) pfglBlendFunc;
1632 typedef GLvoid function(GLenum) pfglLogicOp;
1633 typedef GLvoid function(GLenum) pfglCullFace;
1634 typedef GLvoid function(GLenum) pfglFrontFace;
1635 typedef GLvoid function(GLfloat) pfglPointSize;
1636 typedef GLvoid function(GLfloat) pfglLineWidth;
1637 typedef GLvoid function(GLint, GLushort) pfglLineStipple;
1638 typedef GLvoid function(GLenum, GLenum) pfglPolygonMode;
1639 typedef GLvoid function(GLfloat, GLfloat) pfglPolygonOffset;
1640 typedef GLvoid function(GLubyte*) pfglPolygonStipple;
1641 typedef GLvoid function(GLubyte*) pfglGetPolygonStipple;
1642 typedef GLvoid function(GLboolean) pfglEdgeFlag;
1643 typedef GLvoid function(GLboolean*) pfglEdgeFlagv;
1644 typedef GLvoid function(GLint, GLint, GLsizei, GLsizei) pfglScissor;
1645 typedef GLvoid function(GLenum, GLdouble*) pfglClipPlane;
1646 typedef GLvoid function(GLenum, GLdouble*) pfglGetClipPlane;
1647 typedef GLvoid function(GLenum) pfglDrawBuffer;
1648 typedef GLvoid function(GLenum) pfglReadBuffer;
1649 typedef GLvoid function(GLenum) pfglEnable;
1650 typedef GLvoid function(GLenum) pfglDisable;
1651 typedef GLboolean function(GLenum) pfglIsEnabled;
1652 typedef GLvoid function(GLenum) pfglEnableClientState;
1653 typedef GLvoid function(GLenum) pfglDisableClientState;
1654 typedef GLvoid function(GLenum, GLboolean*) pfglGetBooleanv;
1655 typedef GLvoid function(GLenum, GLdouble*) pfglGetDoublev;
1656 typedef GLvoid function(GLenum, GLfloat*) pfglGetFloatv;
1657 typedef GLvoid function(GLenum, GLint*) pfglGetIntegerv;
1658 typedef GLvoid function(GLbitfield) pfglPushAttrib;
1659 typedef GLvoid function() pfglPopAttrib;
1660 typedef GLvoid function(GLbitfield) pfglPushClientAttrib;
1661 typedef GLvoid function() pfglPopClientAttrib;
1662 typedef GLint function(GLenum) pfglRenderMode;
1663 typedef GLenum function() pfglGetError;
1664 typedef GLubyte* function(GLenum) pfglGetString;
1665 typedef GLvoid function() pfglFinish;
1666 typedef GLvoid function() pfglFlush;
1667 typedef GLvoid function(GLenum, GLenum) pfglHint;
1668
1669 pfglClearIndex          glClearIndex;
1670 pfglClearColor          glClearColor;
1671 pfglClear           glClear;
1672 pfglIndexMask           glIndexMask;
1673 pfglColorMask           glColorMask;
1674 pfglAlphaFunc           glAlphaFunc;
1675 pfglBlendFunc           glBlendFunc;
1676 pfglLogicOp         glLogicOp;
1677 pfglCullFace            glCullFace;
1678 pfglFrontFace           glFrontFace;
1679 pfglPointSize           glPointSize;
1680 pfglLineWidth           glLineWidth;
1681 pfglLineStipple         glLineStipple;
1682 pfglPolygonMode         glPolygonMode;
1683 pfglPolygonOffset       glPolygonOffset;
1684 pfglPolygonStipple      glPolygonStipple;
1685 pfglGetPolygonStipple       glGetPolygonStipple;
1686 pfglEdgeFlag            glEdgeFlag;
1687 pfglEdgeFlagv           glEdgeFlagv;
1688 pfglScissor         glScissor;
1689 pfglClipPlane           glClipPlane;
1690 pfglGetClipPlane        glGetClipPlane;
1691 pfglDrawBuffer          glDrawBuffer;
1692 pfglReadBuffer          glReadBuffer;
1693 pfglEnable          glEnable;
1694 pfglDisable         glDisable;
1695 pfglIsEnabled           glIsEnabled;
1696 pfglEnableClientState       glEnableClientState;
1697 pfglDisableClientState      glDisableClientState;
1698 pfglGetBooleanv         glGetBooleanv;
1699 pfglGetDoublev          glGetDoublev;
1700 pfglGetFloatv           glGetFloatv;
1701 pfglGetIntegerv         glGetIntegerv;
1702 pfglPushAttrib          glPushAttrib;
1703 pfglPopAttrib           glPopAttrib;
1704 pfglPushClientAttrib        glPushClientAttrib;
1705 pfglPopClientAttrib     glPopClientAttrib;
1706 pfglRenderMode          glRenderMode;
1707 pfglGetError            glGetError;
1708 pfglGetString           glGetString;
1709 pfglFinish          glFinish;
1710 pfglFlush           glFlush;
1711 pfglHint            glHint;
1712
1713 // Depth Buffer
1714 typedef GLvoid function(GLclampd) pfglClearDepth;
1715 typedef GLvoid function(GLenum) pfglDepthFunc;
1716 typedef GLvoid function(GLboolean) pfglDepthMask;
1717 typedef GLvoid function(GLclampd, GLclampd) pfglDepthRange;
1718
1719 pfglClearDepth          glClearDepth;
1720 pfglDepthFunc           glDepthFunc;
1721 pfglDepthMask           glDepthMask;
1722 pfglDepthRange          glDepthRange;
1723
1724 // Accumulation Buffer
1725 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglClearAccum;
1726 typedef GLvoid function(GLenum, GLfloat) pfglAccum;
1727
1728 pfglClearAccum          glClearAccum;
1729 pfglAccum           glAccum;
1730
1731 // Transformation
1732 typedef GLvoid function(GLenum) pfglMatrixMode;
1733 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) pfglOrtho;
1734 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) pfglFrustum;
1735 typedef GLvoid function(GLint, GLint, GLsizei, GLsizei) pfglViewport;
1736 typedef GLvoid function() pfglPushMatrix;
1737 typedef GLvoid function() pfglPopMatrix;
1738 typedef GLvoid function() pfglLoadIdentity;
1739 typedef GLvoid function(GLdouble*) pfglLoadMatrixd;
1740 typedef GLvoid function(GLfloat*) pfglLoadMatrixf;
1741 typedef GLvoid function(GLdouble*) pfglMultMatrixd;
1742 typedef GLvoid function(GLfloat*) pfglMultMatrixf;
1743 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglRotated;
1744 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglRotatef;
1745 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglScaled;
1746 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglScalef;
1747 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglTranslated;
1748 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglTranslatef;
1749
1750 pfglMatrixMode          glMatrixMode;
1751 pfglOrtho           glOrtho;
1752 pfglFrustum         glFrustum;
1753 pfglViewport            glViewport;
1754 pfglPushMatrix          glPushMatrix;
1755 pfglPopMatrix           glPopMatrix;
1756 pfglLoadIdentity        glLoadIdentity;
1757 pfglLoadMatrixd         glLoadMatrixd;
1758 pfglLoadMatrixf         glLoadMatrixf;
1759 pfglMultMatrixd         glMultMatrixd;
1760 pfglMultMatrixf         glMultMatrixf;
1761 pfglRotated         glRotated;
1762 pfglRotatef         glRotatef;
1763 pfglScaled          glScaled;
1764 pfglScalef          glScalef;
1765 pfglTranslated          glTranslated;
1766 pfglTranslatef          glTranslatef;
1767
1768 // Display Lists
1769 typedef GLboolean function(GLuint) pfglIsList;
1770 typedef GLvoid function(GLuint, GLsizei) pfglDeleteLists;
1771 typedef GLuint function(GLsizei) pfglGenLists;
1772 typedef GLvoid function(GLuint, GLenum) pfglNewList;
1773 typedef GLvoid function() pfglEndList;
1774 typedef GLvoid function(GLuint) pfglCallList;
1775 typedef GLvoid function(GLsizei, GLenum, GLvoid*) pfglCallLists;
1776 typedef GLvoid function(GLuint) pfglListBase;
1777
1778 pfglIsList          glIsList;
1779 pfglDeleteLists         glDeleteLists;
1780 pfglGenLists            glGenLists;
1781 pfglNewList         glNewList;
1782 pfglEndList         glEndList;
1783 pfglCallList            glCallList;
1784 pfglCallLists           glCallLists;
1785 pfglListBase            glListBase;
1786
1787 // Drawing Functions
1788 typedef GLvoid function(GLenum) pfglBegin;
1789 typedef GLvoid function() pfglEnd;
1790 typedef GLvoid function(GLdouble, GLdouble) pfglVertex2d;
1791 typedef GLvoid function(GLfloat, GLfloat) pfglVertex2f;
1792 typedef GLvoid function(GLint, GLint) pfglVertex2i;
1793 typedef GLvoid function(GLshort, GLshort) pfglVertex2s;
1794 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglVertex3d;
1795 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglVertex3f;
1796 typedef GLvoid function(GLint, GLint, GLint) pfglVertex3i;
1797 typedef GLvoid function(GLshort, GLshort, GLshort) pfglVertex3s;
1798 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglVertex4d;
1799 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglVertex4f;
1800 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglVertex4i;
1801 typedef GLvoid function(GLshort, GLshort, GLshort, GLshort) pfglVertex4s;
1802 typedef GLvoid function(GLdouble*) pfglVertex2dv;
1803 typedef GLvoid function(GLfloat*) pfglVertex2fv;
1804 typedef GLvoid function(GLint*) pfglVertex2iv;
1805 typedef GLvoid function(GLshort*) pfglVertex2sv;
1806 typedef GLvoid function(GLdouble*) pfglVertex3dv;
1807 typedef GLvoid function(GLfloat*) pfglVertex3fv;
1808 typedef GLvoid function(GLint*) pfglVertex3iv;
1809 typedef GLvoid function(GLshort*) pfglVertex3sv;
1810 typedef GLvoid function(GLdouble*) pfglVertex4dv;
1811 typedef GLvoid function(GLfloat*) pfglVertex4fv;
1812 typedef GLvoid function(GLint*) pfglVertex4iv;
1813 typedef GLvoid function(GLshort*) pfglVertex4sv;
1814 typedef GLvoid function(GLbyte, GLbyte, GLbyte) pfglNormal3b;
1815 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglNormal3d;
1816 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglNormal3f;
1817 typedef GLvoid function(GLint, GLint, GLint) pfglNormal3i;
1818 typedef GLvoid function(GLshort, GLshort, GLshort) pfglNormal3s;
1819 typedef GLvoid function(GLbyte*) pfglNormal3bv;
1820 typedef GLvoid function(GLdouble*) pfglNormal3dv;
1821 typedef GLvoid function(GLfloat*) pfglNormal3fv;
1822 typedef GLvoid function(GLint*) pfglNormal3iv;
1823 typedef GLvoid function(GLshort*) pfglNormal3sv;
1824 typedef GLvoid function(GLdouble) pfglIndexd;
1825 typedef GLvoid function(GLfloat) pfglIndexf;
1826 typedef GLvoid function(GLint) pfglIndexi;
1827 typedef GLvoid function(GLshort) pfglIndexs;
1828 typedef GLvoid function(GLubyte) pfglIndexub;
1829 typedef GLvoid function(GLdouble*) pfglIndexdv;
1830 typedef GLvoid function(GLfloat*) pfglIndexfv;
1831 typedef GLvoid function(GLint*) pfglIndexiv;
1832 typedef GLvoid function(GLshort*) pfglIndexsv;
1833 typedef GLvoid function(GLubyte*) pfglIndexubv;
1834 typedef GLvoid function(GLbyte, GLbyte, GLbyte) pfglColor3b;
1835 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglColor3d;
1836 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglColor3f;
1837 typedef GLvoid function(GLint, GLint, GLint) pfglColor3i;
1838 typedef GLvoid function(GLshort, GLshort, GLshort) pfglColor3s;
1839 typedef GLvoid function(GLubyte, GLubyte, GLubyte) pfglColor3ub;
1840 typedef GLvoid function(GLuint, GLuint, GLuint) pfglColor3ui;
1841 typedef GLvoid function(GLushort, GLushort, GLushort) pfglColor3us;
1842 typedef GLvoid function(GLbyte, GLbyte, GLbyte, GLbyte) pfglColor4b;
1843 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglColor4d;
1844 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglColor4f;
1845 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglColor4i;
1846 typedef GLvoid function(GLshort, GLshort, GLshort, GLshort) pfglColor4s;
1847 typedef GLvoid function(GLubyte, GLubyte, GLubyte, GLubyte) pfglColor4ub;
1848 typedef GLvoid function(GLuint, GLuint, GLuint, GLuint) pfglColor4ui;
1849 typedef GLvoid function(GLushort, GLushort, GLushort, GLushort) pfglColor4us;
1850 typedef GLvoid function(GLbyte*) pfglColor3bv;
1851 typedef GLvoid function(GLdouble*) pfglColor3dv;
1852 typedef GLvoid function(GLfloat*) pfglColor3fv;
1853 typedef GLvoid function(GLint*) pfglColor3iv;
1854 typedef GLvoid function(GLshort*) pfglColor3sv;
1855 typedef GLvoid function(GLubyte*) pfglColor3ubv;
1856 typedef GLvoid function(GLuint*) pfglColor3uiv;
1857 typedef GLvoid function(GLushort*) pfglColor3usv;
1858 typedef GLvoid function(GLbyte*) pfglColor4bv;
1859 typedef GLvoid function(GLdouble*) pfglColor4dv;
1860 typedef GLvoid function(GLfloat*) pfglColor4fv;
1861 typedef GLvoid function(GLint*) pfglColor4iv;
1862 typedef GLvoid function(GLshort*) pfglColor4sv;
1863 typedef GLvoid function(GLubyte*) pfglColor4ubv;
1864 typedef GLvoid function(GLuint*) pfglColor4uiv;
1865 typedef GLvoid function(GLushort*) pfglColor4usv;
1866 typedef GLvoid function(GLdouble) pfglTexCoord1d;
1867 typedef GLvoid function(GLfloat) pfglTexCoord1f;
1868 typedef GLvoid function(GLint) pfglTexCoord1i;
1869 typedef GLvoid function(GLshort) pfglTexCoord1s;
1870 typedef GLvoid function(GLdouble, GLdouble) pfglTexCoord2d;
1871 typedef GLvoid function(GLfloat, GLfloat) pfglTexCoord2f;
1872 typedef GLvoid function(GLint, GLint) pfglTexCoord2i;
1873 typedef GLvoid function(GLshort, GLshort) pfglTexCoord2s;
1874 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglTexCoord3d;
1875 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglTexCoord3f;
1876 typedef GLvoid function(GLint, GLint, GLint) pfglTexCoord3i;
1877 typedef GLvoid function(GLshort, GLshort, GLshort) pfglTexCoord3s;
1878 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglTexCoord4d;
1879 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglTexCoord4f;
1880 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglTexCoord4i;
1881 typedef GLvoid function(GLshort, GLshort, GLshort, GLshort) pfglTexCoord4s;
1882 typedef GLvoid function(GLdouble*) pfglTexCoord1dv;
1883 typedef GLvoid function(GLfloat*) pfglTexCoord1fv;
1884 typedef GLvoid function(GLint*) pfglTexCoord1iv;
1885 typedef GLvoid function(GLshort*) pfglTexCoord1sv;
1886 typedef GLvoid function(GLdouble*) pfglTexCoord2dv;
1887 typedef GLvoid function(GLfloat*) pfglTexCoord2fv;
1888 typedef GLvoid function(GLint*) pfglTexCoord2iv;
1889 typedef GLvoid function(GLshort*) pfglTexCoord2sv;
1890 typedef GLvoid function(GLdouble*) pfglTexCoord3dv;
1891 typedef GLvoid function(GLfloat*) pfglTexCoord3fv;
1892 typedef GLvoid function(GLint*) pfglTexCoord3iv;
1893 typedef GLvoid function(GLshort*) pfglTexCoord3sv;
1894 typedef GLvoid function(GLdouble*) pfglTexCoord4dv;
1895 typedef GLvoid function(GLfloat*) pfglTexCoord4fv;
1896 typedef GLvoid function(GLint*) pfglTexCoord4iv;
1897 typedef GLvoid function(GLshort*) pfglTexCoord4sv;
1898 typedef GLvoid function(GLdouble, GLdouble) pfglRasterPos2d;
1899 typedef GLvoid function(GLfloat, GLfloat) pfglRasterPos2f;
1900 typedef GLvoid function(GLint, GLint) pfglRasterPos2i;
1901 typedef GLvoid function(GLshort, GLshort) pfglRasterPos2s;
1902 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglRasterPos3d;
1903 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglRasterPos3f;
1904 typedef GLvoid function(GLint, GLint, GLint) pfglRasterPos3i;
1905 typedef GLvoid function(GLshort, GLshort, GLshort) pfglRasterPos3s;
1906 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglRasterPos4d;
1907 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglRasterPos4f;
1908 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglRasterPos4i;
1909 typedef GLvoid function(GLshort, GLshort, GLshort, GLshort) pfglRasterPos4s;
1910 typedef GLvoid function(GLdouble*) pfglRasterPos2dv;
1911 typedef GLvoid function(GLfloat*) pfglRasterPos2fv;
1912 typedef GLvoid function(GLint*) pfglRasterPos2iv;
1913 typedef GLvoid function(GLshort*) pfglRasterPos2sv;
1914 typedef GLvoid function(GLdouble*) pfglRasterPos3dv;
1915 typedef GLvoid function(GLfloat*) pfglRasterPos3fv;
1916 typedef GLvoid function(GLint*) pfglRasterPos3iv;
1917 typedef GLvoid function(GLshort*) pfglRasterPos3sv;
1918 typedef GLvoid function(GLdouble*) pfglRasterPos4dv;
1919 typedef GLvoid function(GLfloat*) pfglRasterPos4fv;
1920 typedef GLvoid function(GLint*) pfglRasterPos4iv;
1921 typedef GLvoid function(GLshort*) pfglRasterPos4sv;
1922 typedef GLvoid function(GLdouble, GLdouble, GLdouble, GLdouble) pfglRectd;
1923 typedef GLvoid function(GLfloat, GLfloat, GLfloat, GLfloat) pfglRectf;
1924 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglRecti;
1925 typedef GLvoid function(GLshort, GLshort, GLshort, GLshort) pfglRects;
1926 typedef GLvoid function(GLdouble*, GLdouble*) pfglRectdv;
1927 typedef GLvoid function(GLfloat*, GLfloat*) pfglRectfv;
1928 typedef GLvoid function(GLint*, GLint*) pfglRectiv;
1929 typedef GLvoid function(GLshort*, GLshort*) pfglRectsv;
1930
1931 pfglBegin           glBegin;
1932 pfglEnd             glEnd;
1933 pfglVertex2d            glVertex2d;
1934 pfglVertex2f            glVertex2f;
1935 pfglVertex2i            glVertex2i;
1936 pfglVertex2s            glVertex2s;
1937 pfglVertex3d            glVertex3d;
1938 pfglVertex3f            glVertex3f;
1939 pfglVertex3i            glVertex3i;
1940 pfglVertex3s            glVertex3s;
1941 pfglVertex4d            glVertex4d;
1942 pfglVertex4f            glVertex4f;
1943 pfglVertex4i            glVertex4i;
1944 pfglVertex4s            glVertex4s;
1945 pfglVertex2dv           glVertex2dv;
1946 pfglVertex2fv           glVertex2fv;
1947 pfglVertex2iv           glVertex2iv;
1948 pfglVertex2sv           glVertex2sv;
1949 pfglVertex3dv           glVertex3dv;
1950 pfglVertex3fv           glVertex3fv;
1951 pfglVertex3iv           glVertex3iv;
1952 pfglVertex3sv           glVertex3sv;
1953 pfglVertex4dv           glVertex4dv;
1954 pfglVertex4fv           glVertex4fv;
1955 pfglVertex4iv           glVertex4iv;
1956 pfglVertex4sv           glVertex4sv;
1957 pfglNormal3b            glNormal3b;
1958 pfglNormal3d            glNormal3d;
1959 pfglNormal3f            glNormal3f;
1960 pfglNormal3i            glNormal3i;
1961 pfglNormal3s            glNormal3s;
1962 pfglNormal3bv           glNormal3bv;
1963 pfglNormal3dv           glNormal3dv;
1964 pfglNormal3fv           glNormal3fv;
1965 pfglNormal3iv           glNormal3iv;
1966 pfglNormal3sv           glNormal3sv;
1967 pfglIndexd          glIndexd;
1968 pfglIndexf          glIndexf;
1969 pfglIndexi          glIndexi;
1970 pfglIndexs          glIndexs;
1971 pfglIndexub         glIndexub;
1972 pfglIndexdv         glIndexdv;
1973 pfglIndexfv         glIndexfv;
1974 pfglIndexiv         glIndexiv;
1975 pfglIndexsv         glIndexsv;
1976 pfglIndexubv            glIndexubv;
1977 pfglColor3b         glColor3b;
1978 pfglColor3d         glColor3d;
1979 pfglColor3f         glColor3f;
1980 pfglColor3i         glColor3i;
1981 pfglColor3s         glColor3s;
1982 pfglColor3ub            glColor3ub;
1983 pfglColor3ui            glColor3ui;
1984 pfglColor3us            glColor3us;
1985 pfglColor4b         glColor4b;
1986 pfglColor4d         glColor4d;
1987 pfglColor4f         glColor4f;
1988 pfglColor4i         glColor4i;
1989 pfglColor4s         glColor4s;
1990 pfglColor4ub            glColor4ub;
1991 pfglColor4ui            glColor4ui;
1992 pfglColor4us            glColor4us;
1993 pfglColor3bv            glColor3bv;
1994 pfglColor3dv            glColor3dv;
1995 pfglColor3fv            glColor3fv;
1996 pfglColor3iv            glColor3iv;
1997 pfglColor3sv            glColor3sv;
1998 pfglColor3ubv           glColor3ubv;
1999 pfglColor3uiv           glColor3uiv;
2000 pfglColor3usv           glColor3usv;
2001 pfglColor4bv            glColor4bv;
2002 pfglColor4dv            glColor4dv;
2003 pfglColor4fv            glColor4fv;
2004 pfglColor4iv            glColor4iv;
2005 pfglColor4sv            glColor4sv;
2006 pfglColor4ubv           glColor4ubv;
2007 pfglColor4uiv           glColor4uiv;
2008 pfglColor4usv           glColor4usv;
2009 pfglTexCoord1d          glTexCoord1d;
2010 pfglTexCoord1f          glTexCoord1f;
2011 pfglTexCoord1i          glTexCoord1i;
2012 pfglTexCoord1s          glTexCoord1s;
2013 pfglTexCoord2d          glTexCoord2d;
2014 pfglTexCoord2f          glTexCoord2f;
2015 pfglTexCoord2i          glTexCoord2i;
2016 pfglTexCoord2s          glTexCoord2s;
2017 pfglTexCoord3d          glTexCoord3d;
2018 pfglTexCoord3f          glTexCoord3f;
2019 pfglTexCoord3i          glTexCoord3i;
2020 pfglTexCoord3s          glTexCoord3s;
2021 pfglTexCoord4d          glTexCoord4d;
2022 pfglTexCoord4f          glTexCoord4f;
2023 pfglTexCoord4i          glTexCoord4i;
2024 pfglTexCoord4s          glTexCoord4s;
2025 pfglTexCoord1dv         glTexCoord1dv;
2026 pfglTexCoord1fv         glTexCoord1fv;
2027 pfglTexCoord1iv         glTexCoord1iv;
2028 pfglTexCoord1sv         glTexCoord1sv;
2029 pfglTexCoord2dv         glTexCoord2dv;
2030 pfglTexCoord2fv         glTexCoord2fv;
2031 pfglTexCoord2iv         glTexCoord2iv;
2032 pfglTexCoord2sv         glTexCoord2sv;
2033 pfglTexCoord3dv         glTexCoord3dv;
2034 pfglTexCoord3fv         glTexCoord3fv;
2035 pfglTexCoord3iv         glTexCoord3iv;
2036 pfglTexCoord3sv         glTexCoord3sv;
2037 pfglTexCoord4dv         glTexCoord4dv;
2038 pfglTexCoord4fv         glTexCoord4fv;
2039 pfglTexCoord4iv         glTexCoord4iv;
2040 pfglTexCoord4sv         glTexCoord4sv;
2041 pfglRasterPos2d         glRasterPos2d;
2042 pfglRasterPos2f         glRasterPos2f;
2043 pfglRasterPos2i         glRasterPos2i;
2044 pfglRasterPos2s         glRasterPos2s;
2045 pfglRasterPos3d         glRasterPos3d;
2046 pfglRasterPos3f         glRasterPos3f;
2047 pfglRasterPos3i         glRasterPos3i;
2048 pfglRasterPos3s         glRasterPos3s;
2049 pfglRasterPos4d         glRasterPos4d;
2050 pfglRasterPos4f         glRasterPos4f;
2051 pfglRasterPos4i         glRasterPos4i;
2052 pfglRasterPos4s         glRasterPos4s;
2053 pfglRasterPos2dv        glRasterPos2dv;
2054 pfglRasterPos2fv        glRasterPos2fv;
2055 pfglRasterPos2iv        glRasterPos2iv;
2056 pfglRasterPos2sv        glRasterPos2sv;
2057 pfglRasterPos3dv        glRasterPos3dv;
2058 pfglRasterPos3fv        glRasterPos3fv;
2059 pfglRasterPos3iv        glRasterPos3iv;
2060 pfglRasterPos3sv        glRasterPos3sv;
2061 pfglRasterPos4dv        glRasterPos4dv;
2062 pfglRasterPos4fv        glRasterPos4fv;
2063 pfglRasterPos4iv        glRasterPos4iv;
2064 pfglRasterPos4sv        glRasterPos4sv;
2065 pfglRectd           glRectd;
2066 pfglRectf           glRectf;
2067 pfglRecti           glRecti;
2068 pfglRects           glRects;
2069 pfglRectdv          glRectdv;
2070 pfglRectfv          glRectfv;
2071 pfglRectiv          glRectiv;
2072 pfglRectsv          glRectsv;
2073
2074 // Vertex Arrays
2075 typedef GLvoid function(GLint, GLenum, GLsizei stride, GLvoid*) pfglVertexPointer;
2076 typedef GLvoid function(GLenum, GLsizei, GLvoid*) pfglNormalPointer;
2077 typedef GLvoid function(GLint, GLenum, GLsizei, GLvoid*) pfglColorPointer;
2078 typedef GLvoid function(GLenum, GLsizei, GLvoid*) pfglIndexPointer;
2079 typedef GLvoid function(GLint, GLenum, GLsizei stride, GLvoid* ptr) pfglTexCoordPointer;
2080 typedef GLvoid function(GLsizei, GLvoid* ptr) pfglEdgeFlagPointer;
2081 typedef GLvoid function(GLenum, GLvoid**) pfglGetPointerv;
2082 typedef GLvoid function(GLint) pfglArrayElement;
2083 typedef GLvoid function(GLenum, GLint, GLsizei) pfglDrawArrays;
2084 typedef GLvoid function(GLenum, GLsizei, GLenum, GLvoid*) pfglDrawElements;
2085 typedef GLvoid function(GLenum, GLsizei, GLvoid*) pfglInterleavedArrays;
2086
2087 pfglVertexPointer       glVertexPointer;
2088 pfglNormalPointer       glNormalPointer;
2089 pfglColorPointer        glColorPointer;
2090 pfglIndexPointer        glIndexPointer;
2091 pfglTexCoordPointer     glTexCoordPointer;
2092 pfglEdgeFlagPointer     glEdgeFlagPointer;
2093 pfglGetPointerv         glGetPointerv;
2094 pfglArrayElement        glArrayElement;
2095 pfglDrawArrays          glDrawArrays;
2096 pfglDrawElements        glDrawElements;
2097 pfglInterleavedArrays       glInterleavedArrays;
2098
2099 // Lighting
2100 typedef GLvoid function(GLenum) pfglShadeModel;
2101 typedef GLvoid function(GLenum, GLenum, GLfloat) pfglLightf;
2102 typedef GLvoid function(GLenum, GLenum, GLint) pfglLighti;
2103 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglLightfv;
2104 typedef GLvoid function(GLenum, GLenum, GLint*) pfglLightiv;
2105 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetLightfv;
2106 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetLightiv;
2107 typedef GLvoid function(GLenum, GLfloat) pfglLightModelf;
2108 typedef GLvoid function(GLenum, GLint) pfglLightModeli;
2109 typedef GLvoid function(GLenum, GLfloat*) pfglLightModelfv;
2110 typedef GLvoid function(GLenum, GLint*) pfglLightModeliv;
2111 typedef GLvoid function(GLenum, GLenum, GLfloat) pfglMaterialf;
2112 typedef GLvoid function(GLenum, GLenum, GLint) pfglMateriali;
2113 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglMaterialfv;
2114 typedef GLvoid function(GLenum, GLenum, GLint*) pfglMaterialiv;
2115 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetMaterialfv;
2116 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetMaterialiv;
2117 typedef GLvoid function(GLenum, GLenum) pfglColorMaterial;
2118
2119 pfglShadeModel          glShadeModel;
2120 pfglLightf          glLightf;
2121 pfglLighti          glLighti;
2122 pfglLightfv         glLightfv;
2123 pfglLightiv         glLightiv;
2124 pfglGetLightfv          glGetLightfv;
2125 pfglGetLightiv          glGetLightiv;
2126 pfglLightModelf         glLightModelf;
2127 pfglLightModeli         glLightModeli;
2128 pfglLightModelfv        glLightModelfv;
2129 pfglLightModeliv        glLightModeliv;
2130 pfglMaterialf           glMaterialf;
2131 pfglMateriali           glMateriali;
2132 pfglMaterialfv          glMaterialfv;
2133 pfglMaterialiv          glMaterialiv;
2134 pfglGetMaterialfv       glGetMaterialfv;
2135 pfglGetMaterialiv       glGetMaterialiv;
2136 pfglColorMaterial       glColorMaterial;
2137
2138 // Raster functions
2139 typedef GLvoid function(GLfloat, GLfloat) pfglPixelZoom;
2140 typedef GLvoid function(GLenum, GLfloat) pfglPixelStoref;
2141 typedef GLvoid function(GLenum, GLint) pfglPixelStorei;
2142 typedef GLvoid function(GLenum, GLfloat) pfglPixelTransferf;
2143 typedef GLvoid function(GLenum, GLint) pfglPixelTransferi;
2144 typedef GLvoid function(GLenum, GLsizei, GLfloat*) pfglPixelMapfv;
2145 typedef GLvoid function(GLenum, GLsizei, GLuint*) pfglPixelMapuiv;
2146 typedef GLvoid function(GLenum, GLsizei, GLushort*) pfglPixelMapusv;
2147 typedef GLvoid function(GLenum, GLfloat*) pfglGetPixelMapfv;
2148 typedef GLvoid function(GLenum, GLuint*) pfglGetPixelMapuiv;
2149 typedef GLvoid function(GLenum, GLushort*) pfglGetPixelMapusv;
2150 typedef GLvoid function(GLsizei, GLsizei, GLfloat, GLfloat, GLfloat, GLfloat, GLubyte*) pfglBitmap;
2151 typedef GLvoid function(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid*) pfglReadPixels;
2152 typedef GLvoid function(GLsizei, GLsizei, GLenum, GLenum, GLvoid*) pfglDrawPixels;
2153 typedef GLvoid function(GLint, GLint, GLsizei, GLsizei, GLenum) pfglCopyPixels;
2154
2155 pfglPixelZoom           glPixelZoom;
2156 pfglPixelStoref         glPixelStoref;
2157 pfglPixelStorei         glPixelStorei;
2158 pfglPixelTransferf      glPixelTransferf;
2159 pfglPixelTransferi      glPixelTransferi;
2160 pfglPixelMapfv          glPixelMapfv;
2161 pfglPixelMapuiv         glPixelMapuiv;
2162 pfglPixelMapusv         glPixelMapusv;
2163 pfglGetPixelMapfv       glGetPixelMapfv;
2164 pfglGetPixelMapuiv      glGetPixelMapuiv;
2165 pfglGetPixelMapusv      glGetPixelMapusv;
2166 pfglBitmap          glBitmap;
2167 pfglReadPixels          glReadPixels;
2168 pfglDrawPixels          glDrawPixels;
2169 pfglCopyPixels          glCopyPixels;
2170
2171 // Stenciling
2172 typedef GLvoid function(GLenum, GLint, GLuint) pfglStencilFunc;
2173 typedef GLvoid function(GLuint) pfglStencilMask;
2174 typedef GLvoid function(GLenum, GLenum, GLenum) pfglStencilOp;
2175 typedef GLvoid function(GLint) pfglClearStencil;
2176
2177 pfglStencilFunc         glStencilFunc;
2178 pfglStencilMask         glStencilMask;
2179 pfglStencilOp           glStencilOp;
2180 pfglClearStencil        glClearStencil;
2181
2182 // Texture mapping
2183 typedef GLvoid function(GLenum, GLenum, GLdouble) pfglTexGend;
2184 typedef GLvoid function(GLenum, GLenum, GLfloat) pfglTexGenf;
2185 typedef GLvoid function(GLenum, GLenum, GLint) pfglTexGeni;
2186 typedef GLvoid function(GLenum, GLenum, GLdouble*) pfglTexGendv;
2187 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglTexGenfv;
2188 typedef GLvoid function(GLenum, GLenum, GLint*) pfglTexGeniv;
2189 typedef GLvoid function(GLenum, GLenum, GLdouble*) pfglGetTexGendv;
2190 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetTexGenfv;
2191 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetTexGeniv;
2192 typedef GLvoid function(GLenum, GLenum, GLfloat) pfglTexEnvf;
2193 typedef GLvoid function(GLenum, GLenum, GLint) pfglTexEnvi;
2194 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglTexEnvfv;
2195 typedef GLvoid function(GLenum, GLenum, GLint*) pfglTexEnviv;
2196 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetTexEnvfv;
2197 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetTexEnviv;
2198 typedef GLvoid function(GLenum, GLenum, GLfloat) pfglTexParameterf;
2199 typedef GLvoid function(GLenum, GLenum, GLint) pfglTexParameteri;
2200 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglTexParameterfv;
2201 typedef GLvoid function(GLenum, GLenum, GLint*) pfglTexParameteriv;
2202 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetTexParameterfv;
2203 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetTexParameteriv;
2204 typedef GLvoid function(GLenum, GLint, GLenum, GLfloat*) pfglGetTexLevelParameterfv;
2205 typedef GLvoid function(GLenum, GLint, GLenum, GLint*) pfglGetTexLevelParameteriv;
2206 typedef GLvoid function(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, GLvoid*) pfglTexImage1D;
2207 typedef GLvoid function(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid*) pfglTexImage2D;
2208 typedef GLvoid function(GLenum, GLint, GLenum, GLenum, GLvoid*) pfglGetTexImage;
2209
2210 pfglTexGend         glTexGend;
2211 pfglTexGenf         glTexGenf;
2212 pfglTexGeni         glTexGeni;
2213 pfglTexGendv            glTexGendv;
2214 pfglTexGenfv            glTexGenfv;
2215 pfglTexGeniv            glTexGeniv;
2216 pfglGetTexGendv         glGetTexGendv;
2217 pfglGetTexGenfv         glGetTexGenfv;
2218 pfglGetTexGeniv         glGetTexGeniv;
2219 pfglTexEnvf         glTexEnvf;
2220 pfglTexEnvi         glTexEnvi;
2221 pfglTexEnvfv            glTexEnvfv;
2222 pfglTexEnviv            glTexEnviv;
2223 pfglGetTexEnvfv         glGetTexEnvfv;
2224 pfglGetTexEnviv         glGetTexEnviv;
2225 pfglTexParameterf       glTexParameterf;
2226 pfglTexParameteri       glTexParameteri;
2227 pfglTexParameterfv      glTexParameterfv;
2228 pfglTexParameteriv      glTexParameteriv;
2229 pfglGetTexParameterfv       glGetTexParameterfv;
2230 pfglGetTexParameteriv       glGetTexParameteriv;
2231 pfglGetTexLevelParameterfv  glGetTexLevelParameterfv;
2232 pfglGetTexLevelParameteriv  glGetTexLevelParameteriv;
2233 pfglTexImage1D          glTexImage1D;
2234 pfglTexImage2D          glTexImage2D;
2235 pfglGetTexImage         glGetTexImage;
2236
2237 // Evaluators
2238 typedef GLvoid function(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble*) pfglMap1d;
2239 typedef GLvoid function(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat*) pfglMap1f;
2240 typedef GLvoid function(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdouble*) pfglMap2d;
2241 typedef GLvoid function(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloat*) pfglMap2f;
2242 typedef GLvoid function(GLenum, GLenum, GLdouble*) pfglGetMapdv;
2243 typedef GLvoid function(GLenum, GLenum, GLfloat*) pfglGetMapfv;
2244 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetMapiv;
2245 typedef GLvoid function(GLdouble) pfglEvalCoord1d;
2246 typedef GLvoid function(GLfloat) pfglEvalCoord1f;
2247 typedef GLvoid function(GLdouble*) pfglEvalCoord1dv;
2248 typedef GLvoid function(GLfloat*) pfglEvalCoord1fv;
2249 typedef GLvoid function(GLdouble, GLdouble) pfglEvalCoord2d;
2250 typedef GLvoid function(GLfloat, GLfloat) pfglEvalCoord2f;
2251 typedef GLvoid function(GLdouble*) pfglEvalCoord2dv;
2252 typedef GLvoid function(GLfloat*) pfglEvalCoord2fv;
2253 typedef GLvoid function(GLint, GLdouble, GLdouble) pfglMapGrid1d;
2254 typedef GLvoid function(GLint, GLfloat, GLfloat) pfglMapGrid1f;
2255 typedef GLvoid function(GLint, GLdouble, GLdouble, GLint, GLdouble, GLdouble) pfglMapGrid2d;
2256 typedef GLvoid function(GLint, GLfloat, GLfloat, GLint, GLfloat, GLfloat) pfglMapGrid2f;
2257 typedef GLvoid function(GLint) pfglEvalPoint1;
2258 typedef GLvoid function(GLint, GLint) pfglEvalPoint2;
2259 typedef GLvoid function(GLenum, GLint, GLint) pfglEvalMesh1;
2260 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint) pfglEvalMesh2;
2261
2262 pfglMap1d           glMap1d;
2263 pfglMap1f           glMap1f;
2264 pfglMap2d           glMap2d;
2265 pfglMap2f           glMap2f;
2266 pfglGetMapdv            glGetMapdv;
2267 pfglGetMapfv            glGetMapfv;
2268 pfglGetMapiv            glGetMapiv;
2269 pfglEvalCoord1d         glEvalCoord1d;
2270 pfglEvalCoord1f         glEvalCoord1f;
2271 pfglEvalCoord1dv        glEvalCoord1dv;
2272 pfglEvalCoord1fv        glEvalCoord1fv;
2273 pfglEvalCoord2d         glEvalCoord2d;
2274 pfglEvalCoord2f         glEvalCoord2f;
2275 pfglEvalCoord2dv        glEvalCoord2dv;
2276 pfglEvalCoord2fv        glEvalCoord2fv;
2277 pfglMapGrid1d           glMapGrid1d;
2278 pfglMapGrid1f           glMapGrid1f;
2279 pfglMapGrid2d           glMapGrid2d;
2280 pfglMapGrid2f           glMapGrid2f;
2281 pfglEvalPoint1          glEvalPoint1;
2282 pfglEvalPoint2          glEvalPoint2;
2283 pfglEvalMesh1           glEvalMesh1;
2284 pfglEvalMesh2           glEvalMesh2;
2285
2286 // Fog
2287 typedef GLvoid function(GLenum, GLfloat) pfglFogf;
2288 typedef GLvoid function(GLenum, GLint) pfglFogi;
2289 typedef GLvoid function(GLenum, GLfloat*) pfglFogfv;
2290 typedef GLvoid function(GLenum, GLint*) pfglFogiv;
2291
2292 pfglFogf            glFogf;
2293 pfglFogi            glFogi;
2294 pfglFogfv           glFogfv;
2295 pfglFogiv           glFogiv;
2296
2297 // Selection and Feedback
2298 typedef GLvoid function(GLsizei, GLenum, GLfloat*) pfglFeedbackBuffer;
2299 typedef GLvoid function(GLfloat) pfglPassThrough;
2300 typedef GLvoid function(GLsizei, GLuint*) pfglSelectBuffer;
2301 typedef GLvoid function() pfglInitNames;
2302 typedef GLvoid function(GLuint) pfglLoadName;
2303 typedef GLvoid function(GLuint) pfglPushName;
2304 typedef GLvoid function() pfglPopName;
2305
2306 pfglFeedbackBuffer      glFeedbackBuffer;
2307 pfglPassThrough         glPassThrough;
2308 pfglSelectBuffer        glSelectBuffer;
2309 pfglInitNames           glInitNames;
2310 pfglLoadName            glLoadName;
2311 pfglPushName            glPushName;
2312 pfglPopName         glPopName;
2313
2314 // OpenGL 1.1
2315 typedef GLvoid function(GLsizei, GLuint*) pfglGenTextures;
2316 typedef GLvoid function(GLsizei, GLuint*) pfglDeleteTextures;
2317 typedef GLvoid function(GLenum, GLuint) pfglBindTexture;
2318 typedef GLvoid function(GLsizei, GLuint*, GLclampf*) pfglPrioritizeTextures;
2319 typedef GLboolean function(GLsizei, GLuint*, GLboolean*) pfglAreTexturesResident;
2320 typedef GLboolean function(GLuint) pfglIsTexture;
2321 typedef GLvoid function(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoid*) pfglTexSubImage1D;
2322 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid*) pfglTexSubImage2D;
2323 typedef GLvoid function(GLenum, GLint, GLenum internalformat, GLint, GLint, GLsizei, GLint) pfglCopyTexImage1D;
2324 typedef GLvoid function(GLenum, GLint, GLenum internalformat, GLint, GLint, GLsizei, GLsizei, GLint) pfglCopyTexImage2D;
2325 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint, GLsizei) pfglCopyTexSubImage1D;
2326 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) pfglCopyTexSubImage2D;
2327
2328 pfglGenTextures         glGenTextures;
2329 pfglDeleteTextures      glDeleteTextures;
2330 pfglBindTexture         glBindTexture;
2331 pfglPrioritizeTextures      glPrioritizeTextures;
2332 pfglAreTexturesResident     glAreTexturesResident;
2333 pfglIsTexture           glIsTexture;
2334 pfglTexSubImage1D       glTexSubImage1D;
2335 pfglTexSubImage2D       glTexSubImage2D;
2336 pfglCopyTexImage1D      glCopyTexImage1D;
2337 pfglCopyTexImage2D      glCopyTexImage2D;
2338 pfglCopyTexSubImage1D       glCopyTexSubImage1D;
2339 pfglCopyTexSubImage2D       glCopyTexSubImage2D;
2340
2341 // OpenGL 1.2
2342 typedef GLvoid function(GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoid*) pfglDrawRangeElements;
2343 typedef GLvoid function(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid*) pfglTexImage3D;
2344 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid*) pfglTexSubImage3D;
2345 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) pfglCopyTexSubImage3D;
2346
2347 pfglDrawRangeElements       glDrawRangeElements;
2348 pfglTexImage3D          glTexImage3D;
2349 pfglTexSubImage3D       glTexSubImage3D;
2350 pfglCopyTexSubImage3D       glCopyTexSubImage3D;
2351
2352 // OpenGL 1.3
2353 typedef GLvoid function(GLenum) pfglActiveTexture;
2354 typedef GLvoid function(GLenum) pfglClientActiveTexture;
2355 typedef GLvoid function(GLenum, GLdouble) pfglMultiTexCoord1d;
2356 typedef GLvoid function(GLenum, GLdouble*) pfglMultiTexCoord1dv;
2357 typedef GLvoid function(GLenum, GLfloat) pfglMultiTexCoord1f;
2358 typedef GLvoid function(GLenum, GLfloat*) pfglMultiTexCoord1fv;
2359 typedef GLvoid function(GLenum, GLint) pfglMultiTexCoord1i;
2360 typedef GLvoid function(GLenum, GLint*) pfglMultiTexCoord1iv;
2361 typedef GLvoid function(GLenum, GLshort) pfglMultiTexCoord1s;
2362 typedef GLvoid function(GLenum, GLshort*) pfglMultiTexCoord1sv;
2363 typedef GLvoid function(GLenum, GLdouble, GLdouble) pfglMultiTexCoord2d;
2364 typedef GLvoid function(GLenum, GLdouble*) pfglMultiTexCoord2dv;
2365 typedef GLvoid function(GLenum, GLfloat, GLfloat) pfglMultiTexCoord2f;
2366 typedef GLvoid function(GLenum, GLfloat*) pfglMultiTexCoord2fv;
2367 typedef GLvoid function(GLenum, GLint, GLint) pfglMultiTexCoord2i;
2368 typedef GLvoid function(GLenum, GLint*) pfglMultiTexCoord2iv;
2369 typedef GLvoid function(GLenum, GLshort, GLshort) pfglMultiTexCoord2s;
2370 typedef GLvoid function(GLenum, GLshort*) pfglMultiTexCoord2sv;
2371 typedef GLvoid function(GLenum, GLdouble, GLdouble, GLdouble) pfglMultiTexCoord3d;
2372 typedef GLvoid function(GLenum, GLdouble*) pfglMultiTexCoord3dv;
2373 typedef GLvoid function(GLenum, GLfloat, GLfloat, GLfloat) pfglMultiTexCoord3f;
2374 typedef GLvoid function(GLenum, GLfloat*) pfglMultiTexCoord3fv;
2375 typedef GLvoid function(GLenum, GLint, GLint, GLint) pfglMultiTexCoord3i;
2376 typedef GLvoid function(GLenum, GLint*) pfglMultiTexCoord3iv;
2377 typedef GLvoid function(GLenum, GLshort, GLshort, GLshort) pfglMultiTexCoord3s;
2378 typedef GLvoid function(GLenum, GLshort*) pfglMultiTexCoord3sv;
2379 typedef GLvoid function(GLenum, GLdouble, GLdouble, GLdouble, GLdouble) pfglMultiTexCoord4d;
2380 typedef GLvoid function(GLenum, GLdouble*) pfglMultiTexCoord4dv;
2381 typedef GLvoid function(GLenum, GLfloat, GLfloat, GLfloat, GLfloat) pfglMultiTexCoord4f;
2382 typedef GLvoid function(GLenum, GLfloat*) pfglMultiTexCoord4fv;
2383 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint) pfglMultiTexCoord4i;
2384 typedef GLvoid function(GLenum, GLint*) pfglMultiTexCoord4iv;
2385 typedef GLvoid function(GLenum, GLshort, GLshort, GLshort, GLshort) pfglMultiTexCoord4s;
2386 typedef GLvoid function(GLenum, GLshort*) pfglMultiTexCoord4sv;
2387 typedef GLvoid function(GLdouble[16]) pfglLoadTransposeMatrixd;
2388 typedef GLvoid function(GLfloat[16]) pfglLoadTransposeMatrixf;
2389 typedef GLvoid function(GLdouble[16]) pfglMultTransposeMatrixd;
2390 typedef GLvoid function(GLfloat[16]) pfglMultTransposeMatrixf;
2391 typedef GLvoid function(GLclampf, GLboolean) pfglSampleCoverage;
2392 typedef GLvoid function(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoid*) pfglCompressedTexImage1D;
2393 typedef GLvoid function(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoid*) pfglCompressedTexImage2D;
2394 typedef GLvoid function(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei depth, GLint, GLsizei, GLvoid*) pfglCompressedTexImage3D;
2395 typedef GLvoid function(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoid*) pfglCompressedTexSubImage1D;
2396 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoid*) pfglCompressedTexSubImage2D;
2397 typedef GLvoid function(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoid*) pfglCompressedTexSubImage3D;
2398 typedef GLvoid function(GLenum, GLint, GLvoid*) pfglGetCompressedTexImage;
2399
2400 pfglActiveTexture       glActiveTexture;
2401 pfglClientActiveTexture     glClientActiveTexture;
2402 pfglMultiTexCoord1d     glMultiTexCoord1d;
2403 pfglMultiTexCoord1dv        glMultiTexCoord1dv;
2404 pfglMultiTexCoord1f     glMultiTexCoord1f;
2405 pfglMultiTexCoord1fv        glMultiTexCoord1fv;
2406 pfglMultiTexCoord1i     glMultiTexCoord1i;
2407 pfglMultiTexCoord1iv        glMultiTexCoord1iv;
2408 pfglMultiTexCoord1s     glMultiTexCoord1s;
2409 pfglMultiTexCoord1sv        glMultiTexCoord1sv;
2410 pfglMultiTexCoord2d     glMultiTexCoord2d;
2411 pfglMultiTexCoord2dv        glMultiTexCoord2dv;
2412 pfglMultiTexCoord2f     glMultiTexCoord2f;
2413 pfglMultiTexCoord2fv        glMultiTexCoord2fv;
2414 pfglMultiTexCoord2i     glMultiTexCoord2i;
2415 pfglMultiTexCoord2iv        glMultiTexCoord2iv;
2416 pfglMultiTexCoord2s     glMultiTexCoord2s;
2417 pfglMultiTexCoord2sv        glMultiTexCoord2sv;
2418 pfglMultiTexCoord3d     glMultiTexCoord3d;
2419 pfglMultiTexCoord3dv        glMultiTexCoord3dv;
2420 pfglMultiTexCoord3f     glMultiTexCoord3f;
2421 pfglMultiTexCoord3fv        glMultiTexCoord3fv;
2422 pfglMultiTexCoord3i     glMultiTexCoord3i;
2423 pfglMultiTexCoord3iv        glMultiTexCoord3iv;
2424 pfglMultiTexCoord3s     glMultiTexCoord3s;
2425 pfglMultiTexCoord3sv        glMultiTexCoord3sv;
2426 pfglMultiTexCoord4d     glMultiTexCoord4d;
2427 pfglMultiTexCoord4dv        glMultiTexCoord4dv;
2428 pfglMultiTexCoord4f     glMultiTexCoord4f;
2429 pfglMultiTexCoord4fv        glMultiTexCoord4fv;
2430 pfglMultiTexCoord4i     glMultiTexCoord4i;
2431 pfglMultiTexCoord4iv        glMultiTexCoord4iv;
2432 pfglMultiTexCoord4s     glMultiTexCoord4s;
2433 pfglMultiTexCoord4sv        glMultiTexCoord4sv;
2434 pfglLoadTransposeMatrixd    glLoadTransposeMatrixd;
2435 pfglLoadTransposeMatrixf    glLoadTransposeMatrixf;
2436 pfglMultTransposeMatrixd    glMultTransposeMatrixd;
2437 pfglMultTransposeMatrixf    glMultTransposeMatrixf;
2438 pfglSampleCoverage      glSampleCoverage;
2439 pfglCompressedTexImage1D    glCompressedTexImage1D;
2440 pfglCompressedTexImage2D    glCompressedTexImage2D;
2441 pfglCompressedTexImage3D    glCompressedTexImage3D;
2442 pfglCompressedTexSubImage1D glCompressedTexSubImage1D;
2443 pfglCompressedTexSubImage2D glCompressedTexSubImage2D;
2444 pfglCompressedTexSubImage3D glCompressedTexSubImage3D;
2445 pfglGetCompressedTexImage   glGetCompressedTexImage;
2446
2447 // OpenGL 1.4
2448 typedef GLvoid function(GLenum, GLenum, GLenum, GLenum) pfglBlendFuncSeparate;
2449 typedef GLvoid function(GLfloat) pfglFogCoordf;
2450 typedef GLvoid function(GLfloat*) pfglFogCoordfv;
2451 typedef GLvoid function(GLdouble) pfglFogCoordd;
2452 typedef GLvoid function(GLdouble*) pfglFogCoorddv;
2453 typedef GLvoid function(GLenum, GLsizei,GLvoid*) pfglFogCoordPointer;
2454 typedef GLvoid function(GLenum, GLint*, GLsizei*, GLsizei) pfglMultiDrawArrays;
2455 typedef GLvoid function(GLenum, GLsizei*, GLenum, GLvoid**, GLsizei) pfglMultiDrawElements;
2456 typedef GLvoid function(GLenum, GLfloat) pfglPointParameterf;
2457 typedef GLvoid function(GLenum, GLfloat*) pfglPointParameterfv;
2458 typedef GLvoid function(GLenum, GLint) pfglPointParameteri;
2459 typedef GLvoid function(GLenum, GLint*) pfglPointParameteriv;
2460 typedef GLvoid function(GLbyte, GLbyte, GLbyte) pfglSecondaryColor3b;
2461 typedef GLvoid function(GLbyte*) pfglSecondaryColor3bv;
2462 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglSecondaryColor3d;
2463 typedef GLvoid function(GLdouble*) pfglSecondaryColor3dv;
2464 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglSecondaryColor3f;
2465 typedef GLvoid function(GLfloat*) pfglSecondaryColor3fv;
2466 typedef GLvoid function(GLint, GLint, GLint) pfglSecondaryColor3i;
2467 typedef GLvoid function(GLint*) pfglSecondaryColor3iv;
2468 typedef GLvoid function(GLshort, GLshort, GLshort) pfglSecondaryColor3s;
2469 typedef GLvoid function(GLshort*) pfglSecondaryColor3sv;
2470 typedef GLvoid function(GLubyte, GLubyte, GLubyte) pfglSecondaryColor3ub;
2471 typedef GLvoid function(GLubyte*) pfglSecondaryColor3ubv;
2472 typedef GLvoid function(GLuint, GLuint, GLuint) pfglSecondaryColor3ui;
2473 typedef GLvoid function(GLuint*) pfglSecondaryColor3uiv;
2474 typedef GLvoid function(GLushort, GLushort, GLushort) pfglSecondaryColor3us;
2475 typedef GLvoid function(GLushort*) pfglSecondaryColor3usv;
2476 typedef GLvoid function(GLint, GLenum, GLsizei, GLvoid*) pfglSecondaryColorPointer;
2477 typedef GLvoid function(GLdouble, GLdouble) pfglWindowPos2d;
2478 typedef GLvoid function(GLdouble*) pfglWindowPos2dv;
2479 typedef GLvoid function(GLfloat, GLfloat) pfglWindowPos2f;
2480 typedef GLvoid function(GLfloat*) pfglWindowPos2fv;
2481 typedef GLvoid function(GLint, GLint) pfglWindowPos2i;
2482 typedef GLvoid function(GLint*) pfglWindowPos2iv;
2483 typedef GLvoid function(GLshort, GLshort) pfglWindowPos2s;
2484 typedef GLvoid function(GLshort*) pfglWindowPos2sv;
2485 typedef GLvoid function(GLdouble, GLdouble, GLdouble) pfglWindowPos3d;
2486 typedef GLvoid function(GLdouble*) pfglWindowPos3dv;
2487 typedef GLvoid function(GLfloat, GLfloat, GLfloat) pfglWindowPos3f;
2488 typedef GLvoid function(GLfloat*) pfglWindowPos3fv;
2489 typedef GLvoid function(GLint, GLint, GLint) pfglWindowPos3i;
2490 typedef GLvoid function(GLint*) pfglWindowPos3iv;
2491 typedef GLvoid function(GLshort, GLshort, GLshort) pfglWindowPos3s;
2492 typedef GLvoid function(GLshort*) pfglWindowPos3sv;
2493
2494 pfglBlendFuncSeparate       glBlendFuncSeparate;
2495 pfglFogCoordf           glFogCoordf;
2496 pfglFogCoordfv          glFogCoordfv;
2497 pfglFogCoordd           glFogCoordd;
2498 pfglFogCoorddv          glFogCoorddv;
2499 pfglFogCoordPointer     glFogCoordPointer;
2500 pfglMultiDrawArrays     glMultiDrawArrays;
2501 pfglMultiDrawElements       glMultiDrawElements;
2502 pfglPointParameterf     glPointParameterf;
2503 pfglPointParameterfv        glPointParameterfv;
2504 pfglPointParameteri     glPointParameteri;
2505 pfglPointParameteriv        glPointParameteriv;
2506 pfglSecondaryColor3b        glSecondaryColor3b;
2507 pfglSecondaryColor3bv       glSecondaryColor3bv;
2508 pfglSecondaryColor3d        glSecondaryColor3d;
2509 pfglSecondaryColor3dv       glSecondaryColor3dv;
2510 pfglSecondaryColor3f        glSecondaryColor3f;
2511 pfglSecondaryColor3fv       glSecondaryColor3fv;
2512 pfglSecondaryColor3i        glSecondaryColor3i;
2513 pfglSecondaryColor3iv       glSecondaryColor3iv;
2514 pfglSecondaryColor3s        glSecondaryColor3s;
2515 pfglSecondaryColor3sv       glSecondaryColor3sv;
2516 pfglSecondaryColor3ub       glSecondaryColor3ub;
2517 pfglSecondaryColor3ubv      glSecondaryColor3ubv;
2518 pfglSecondaryColor3ui       glSecondaryColor3ui;
2519 pfglSecondaryColor3uiv      glSecondaryColor3uiv;
2520 pfglSecondaryColor3us       glSecondaryColor3us;
2521 pfglSecondaryColor3usv      glSecondaryColor3usv;
2522 pfglSecondaryColorPointer   glSecondaryColorPointer;
2523 pfglWindowPos2d         glWindowPos2d;
2524 pfglWindowPos2dv        glWindowPos2dv;
2525 pfglWindowPos2f         glWindowPos2f;
2526 pfglWindowPos2fv        glWindowPos2fv;
2527 pfglWindowPos2i         glWindowPos2i;
2528 pfglWindowPos2iv        glWindowPos2iv;
2529 pfglWindowPos2s         glWindowPos2s;
2530 pfglWindowPos2sv        glWindowPos2sv;
2531 pfglWindowPos3d         glWindowPos3d;
2532 pfglWindowPos3dv        glWindowPos3dv;
2533 pfglWindowPos3f         glWindowPos3f;
2534 pfglWindowPos3fv        glWindowPos3fv;
2535 pfglWindowPos3i         glWindowPos3i;
2536 pfglWindowPos3iv        glWindowPos3iv;
2537 pfglWindowPos3s         glWindowPos3s;
2538 pfglWindowPos3sv        glWindowPos3sv;
2539
2540 // OpenGL 1.5
2541 typedef GLvoid function(GLsizei, GLuint*) pfglGenQueries;
2542 typedef GLvoid function(GLsizei,GLuint*) pfglDeleteQueries;
2543 typedef GLboolean function(GLuint) pfglIsQuery;
2544 typedef GLvoid function(GLenum, GLuint) pfglBeginQuery;
2545 typedef GLvoid function(GLenum) pfglEndQuery;
2546 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetQueryiv;
2547 typedef GLvoid function(GLuint, GLenum, GLint*) pfglGetQueryObjectiv;
2548 typedef GLvoid function(GLuint, GLenum, GLuint*) pfglGetQueryObjectuiv;
2549 typedef GLvoid function(GLenum, GLuint) pfglBindBuffer;
2550 typedef GLvoid function(GLsizei, GLuint*) pfglDeleteBuffers;
2551 typedef GLvoid function(GLsizei, GLuint*) pfglGenBuffers;
2552 typedef GLboolean function(GLuint) pfglIsBuffer;
2553 typedef GLvoid function(GLenum, GLsizeiptr, GLvoid*, GLenum) pfglBufferData;
2554 typedef GLvoid function(GLenum, GLintptr, GLsizeiptr,GLvoid*) pfglBufferSubData;
2555 typedef GLvoid function(GLenum, GLintptr, GLsizeiptr, GLvoid*) pfglGetBufferSubData;
2556 typedef GLvoid* function(GLenum, GLenum) pfglMapBuffer;
2557 typedef GLboolean function(GLenum) pfglUnmapBuffer;
2558 typedef GLvoid function(GLenum, GLenum, GLint*) pfglGetBufferParameteriv;
2559 typedef GLvoid function(GLenum, GLenum, GLvoid**) pfglGetBufferPointerv;
2560
2561 pfglGenQueries          glGenQueries;
2562 pfglDeleteQueries       glDeleteQueries;
2563 pfglIsQuery         glIsQuery;
2564 pfglBeginQuery          glBeginQuery;
2565 pfglEndQuery            glEndQuery;
2566 pfglGetQueryiv          glGetQueryiv;
2567 pfglGetQueryObjectiv        glGetQueryObjectiv;
2568 pfglGetQueryObjectuiv       glGetQueryObjectuiv;
2569 pfglBindBuffer          glBindBuffer;
2570 pfglDeleteBuffers       glDeleteBuffers;
2571 pfglGenBuffers          glGenBuffers;
2572 pfglIsBuffer            glIsBuffer;
2573 pfglBufferData          glBufferData;
2574 pfglBufferSubData       glBufferSubData;
2575 pfglGetBufferSubData        glGetBufferSubData;
2576 pfglMapBuffer           glMapBuffer;
2577 pfglUnmapBuffer         glUnmapBuffer;
2578 pfglGetBufferParameteriv    glGetBufferParameteriv;
2579 pfglGetBufferPointerv       glGetBufferPointerv;
2580
2581 // OpenGL 2.0
2582 typedef GLvoid function(GLenum, GLenum) pfglBlendEquationSeparate;
2583 typedef GLvoid function(GLsizei, GLenum*) pfglDrawBuffers;
2584 typedef GLvoid function(GLenum, GLenum, GLenum, GLenum) pfglStencilOpSeparate;
2585 typedef GLvoid function(GLenum, GLenum, GLint, GLuint) pfglStencilFuncSeparate;
2586 typedef GLvoid function(GLenum, GLuint) pfglStencilMaskSeparate;
2587 typedef GLvoid function(GLuint, GLuint) pfglAttachShader;
2588 typedef GLvoid function(GLuint, GLuint, GLchar*) pfglBindAttribLocation;
2589 typedef GLvoid function(GLuint) pfglCompileShader;
2590 typedef GLuint function() pfglCreateProgram;
2591 typedef GLuint function(GLenum) pfglCreateShader;
2592 typedef GLvoid function(GLuint) pfglDeleteProgram;
2593 typedef GLvoid function(GLuint) pfglDeleteShader;
2594 typedef GLvoid function(GLuint, GLuint) pfglDetachShader;
2595 typedef GLvoid function(GLuint) pfglDisableVertexAttribArray;
2596 typedef GLvoid function(GLuint) pfglEnableVertexAttribArray;
2597 typedef GLvoid function(GLuint, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, GLchar*) pfglGetActiveAttrib;
2598 typedef GLvoid function(GLuint, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, GLchar*) pfglGetActiveUniform;
2599 typedef GLvoid function(GLuint, GLsizei, GLsizei*, GLuint*) pfglGetAttachedShaders;
2600 typedef GLint function(GLuint, GLchar*) pfglGetAttribLocation;
2601 typedef GLvoid function(GLuint, GLenum, GLint*) pfglGetProgramiv;
2602 typedef GLvoid function(GLuint, GLsizei, GLsizei*, GLchar*) pfglGetProgramInfoLog;
2603 typedef GLvoid function(GLuint, GLenum, GLint *) pfglGetShaderiv;
2604 typedef GLvoid function(GLuint, GLsizei, GLsizei*, GLchar*) pfglGetShaderInfoLog;
2605 typedef GLvoid function(GLuint, GLsizei, GLsizei*, GLchar*) pfglGetShaderSource;
2606 typedef GLint function(GLuint, GLchar*) pfglGetUniformLocation;
2607 typedef GLvoid function(GLuint, GLint, GLfloat*) pfglGetUniformfv;
2608 typedef GLvoid function(GLuint, GLint, GLint*) pfglGetUniformiv;
2609 typedef GLvoid function(GLuint, GLenum, GLdouble*) pfglGetVertexAttribdv;
2610 typedef GLvoid function(GLuint, GLenum, GLfloat*) pfglGetVertexAttribfv;
2611 typedef GLvoid function(GLuint, GLenum, GLint*) pfglGetVertexAttribiv;
2612 typedef GLvoid function(GLuint, GLenum, GLvoid**) pfglGetVertexAttribPointerv;
2613 typedef GLboolean function(GLuint) pfglIsProgram;
2614 typedef GLboolean function(GLuint) pfglIsShader;
2615 typedef GLvoid function(GLuint) pfglLinkProgram;
2616 typedef GLvoid function(GLuint, GLsizei, GLchar**, GLint*) pfglShaderSource;
2617 typedef GLvoid function(GLuint) pfglUseProgram;
2618 typedef GLvoid function(GLint, GLfloat) pfglUniform1f;
2619 typedef GLvoid function(GLint, GLfloat, GLfloat) pfglUniform2f;
2620 typedef GLvoid function(GLint, GLfloat, GLfloat, GLfloat) pfglUniform3f;
2621 typedef GLvoid function(GLint, GLfloat, GLfloat, GLfloat, GLfloat) pfglUniform4f;
2622 typedef GLvoid function(GLint, GLint) pfglUniform1i;
2623 typedef GLvoid function(GLint, GLint, GLint) pfglUniform2i;
2624 typedef GLvoid function(GLint, GLint, GLint, GLint) pfglUniform3i;
2625 typedef GLvoid function(GLint, GLint, GLint, GLint, GLint) pfglUniform4i;
2626 typedef GLvoid function(GLint, GLsizei, GLfloat*) pfglUniform1fv;
2627 typedef GLvoid function(GLint, GLsizei, GLfloat*) pfglUniform2fv;
2628 typedef GLvoid function(GLint, GLsizei, GLfloat*) pfglUniform3fv;
2629 typedef GLvoid function(GLint, GLsizei, GLfloat*) pfglUniform4fv;
2630 typedef GLvoid function(GLint, GLsizei, GLint*) pfglUniform1iv;
2631 typedef GLvoid function(GLint, GLsizei, GLint*) pfglUniform2iv;
2632 typedef GLvoid function(GLint, GLsizei, GLint*) pfglUniform3iv;
2633 typedef GLvoid function(GLint, GLsizei, GLint*) pfglUniform4iv;
2634 typedef GLvoid function(GLint, GLsizei, GLboolean, GLfloat*) pfglUniformMatrix2fv;
2635 typedef GLvoid function(GLint, GLsizei, GLboolean, GLfloat*) pfglUniformMatrix3fv;
2636 typedef GLvoid function(GLint, GLsizei, GLboolean, GLfloat*) pfglUniformMatrix4fv;
2637 typedef GLvoid function(GLuint) pfglValidateProgram;
2638 typedef GLvoid function(GLuint, GLdouble) pfglVertexAttrib1d;
2639 typedef GLvoid function(GLuint, GLdouble*) pfglVertexAttrib1dv;
2640 typedef GLvoid function(GLuint, GLfloat) pfglVertexAttrib1f;
2641 typedef GLvoid function(GLuint, GLfloat*) pfglVertexAttrib1fv;
2642 typedef GLvoid function(GLuint, GLshort) pfglVertexAttrib1s;
2643 typedef GLvoid function(GLuint, GLshort*) pfglVertexAttrib1sv;
2644 typedef GLvoid function(GLuint, GLdouble, GLdouble) pfglVertexAttrib2d;
2645 typedef GLvoid function(GLuint, GLdouble*) pfglVertexAttrib2dv;
2646 typedef GLvoid function(GLuint, GLfloat, GLfloat) pfglVertexAttrib2f;
2647 typedef GLvoid function(GLuint, GLfloat*) pfglVertexAttrib2fv;
2648 typedef GLvoid function(GLuint, GLshort, GLshort) pfglVertexAttrib2s;
2649 typedef GLvoid function(GLuint, GLshort*) pfglVertexAttrib2sv;
2650 typedef GLvoid function(GLuint, GLdouble, GLdouble, GLdouble) pfglVertexAttrib3d;
2651 typedef GLvoid function(GLuint, GLdouble*) pfglVertexAttrib3dv;
2652 typedef GLvoid function(GLuint, GLfloat, GLfloat, GLfloat) pfglVertexAttrib3f;
2653 typedef GLvoid function(GLuint, GLfloat*) pfglVertexAttrib3fv;
2654 typedef GLvoid function(GLuint, GLshort, GLshort, GLshort) pfglVertexAttrib3s;
2655 typedef GLvoid function(GLuint, GLshort*) pfglVertexAttrib3sv;
2656 typedef GLvoid function(GLuint, GLbyte*) pfglVertexAttrib4Nbv;
2657 typedef GLvoid function(GLuint, GLint*) pfglVertexAttrib4Niv;
2658 typedef GLvoid function(GLuint, GLshort*) pfglVertexAttrib4Nsv;
2659 typedef GLvoid function(GLuint, GLubyte, GLubyte, GLubyte, GLubyte) pfglVertexAttrib4Nub;
2660 typedef GLvoid function(GLuint, GLubyte*) pfglVertexAttrib4Nubv;
2661 typedef GLvoid function(GLuint, GLuint*) pfglVertexAttrib4Nuiv;
2662 typedef GLvoid function(GLuint, GLushort*) pfglVertexAttrib4Nusv;
2663 typedef GLvoid function(GLuint, GLbyte*) pfglVertexAttrib4bv;
2664 typedef GLvoid function(GLuint, GLdouble, GLdouble, GLdouble, GLdouble) pfglVertexAttrib4d;
2665 typedef GLvoid function(GLuint, GLdouble*) pfglVertexAttrib4dv;
2666 typedef GLvoid function(GLuint, GLfloat, GLfloat, GLfloat, GLfloat) pfglVertexAttrib4f;
2667 typedef GLvoid function(GLuint, GLfloat*) pfglVertexAttrib4fv;
2668 typedef GLvoid function(GLuint, GLint*) pfglVertexAttrib4iv;
2669 typedef GLvoid function(GLuint, GLshort, GLshort, GLshort, GLshort) pfglVertexAttrib4s;
2670 typedef GLvoid function(GLuint, GLshort*) pfglVertexAttrib4sv;
2671 typedef GLvoid function(GLuint, GLubyte*) pfglVertexAttrib4ubv;
2672 typedef GLvoid function(GLuint, GLuint*) pfglVertexAttrib4uiv;
2673 typedef GLvoid function(GLuint, GLushort*) pfglVertexAttrib4usv;
2674 typedef GLvoid function(GLuint, GLint, GLenum, GLboolean, GLsizei, GLvoid*) pfglVertexAttribPointer;
2675
2676 pfglBlendEquationSeparate   glBlendEquationSeparate;
2677 pfglDrawBuffers         glDrawBuffers;
2678 pfglStencilOpSeparate       glStencilOpSeparate;
2679 pfglStencilFuncSeparate     glStencilFuncSeparate;
2680 pfglStencilMaskSeparate     glStencilMaskSeparate;
2681 pfglAttachShader        glAttachShader;
2682 pfglBindAttribLocation      glBindAttribLocation;
2683 pfglCompileShader       glCompileShader;
2684 pfglCreateProgram       glCreateProgram;
2685 pfglCreateShader        glCreateShader;
2686 pfglDeleteProgram       glDeleteProgram;
2687 pfglDeleteShader        glDeleteShader;
2688 pfglDetachShader        glDetachShader;
2689 pfglDisableVertexAttribArray    glDisableVertexAttribArray;
2690 pfglEnableVertexAttribArray glEnableVertexAttribArray;
2691 pfglGetActiveAttrib     glGetActiveAttrib;
2692 pfglGetActiveUniform        glGetActiveUniform;
2693 pfglGetAttachedShaders      glGetAttachedShaders;
2694 pfglGetAttribLocation       glGetAttribLocation;
2695 pfglGetProgramiv        glGetProgramiv;
2696 pfglGetProgramInfoLog       glGetProgramInfoLog;
2697 pfglGetShaderiv         glGetShaderiv;
2698 pfglGetShaderInfoLog        glGetShaderInfoLog;
2699 pfglGetShaderSource     glGetShaderSource;
2700 pfglGetUniformLocation      glGetUniformLocation;
2701 pfglGetUniformfv        glGetUniformfv;
2702 pfglGetUniformiv        glGetUniformiv;
2703 pfglGetVertexAttribdv       glGetVertexAttribdv;
2704 pfglGetVertexAttribfv       glGetVertexAttribfv;
2705 pfglGetVertexAttribiv       glGetVertexAttribiv;
2706 pfglGetVertexAttribPointerv glGetVertexAttribPointerv;
2707 pfglIsProgram           glIsProgram;
2708 pfglIsShader            glIsShader;
2709 pfglLinkProgram         glLinkProgram;
2710 pfglShaderSource        glShaderSource;
2711 pfglUseProgram          glUseProgram;
2712 pfglUniform1f           glUniform1f;
2713 pfglUniform2f           glUniform2f;
2714 pfglUniform3f           glUniform3f;
2715 pfglUniform4f           glUniform4f;
2716 pfglUniform1i           glUniform1i;
2717 pfglUniform2i           glUniform2i;
2718 pfglUniform3i           glUniform3i;
2719 pfglUniform4i           glUniform4i;
2720 pfglUniform1fv          glUniform1fv;
2721 pfglUniform2fv          glUniform2fv;
2722 pfglUniform3fv          glUniform3fv;
2723 pfglUniform4fv          glUniform4fv;
2724 pfglUniform1iv          glUniform1iv;
2725 pfglUniform2iv          glUniform2iv;
2726 pfglUniform3iv          glUniform3iv;
2727 pfglUniform4iv          glUniform4iv;
2728 pfglUniformMatrix2fv        glUniformMatrix2fv;
2729 pfglUniformMatrix3fv        glUniformMatrix3fv;
2730 pfglUniformMatrix4fv        glUniformMatrix4fv;
2731 pfglValidateProgram     glValidateProgram;
2732 pfglVertexAttrib1d      glVertexAttrib1d;
2733 pfglVertexAttrib1dv     glVertexAttrib1dv;
2734 pfglVertexAttrib1f      glVertexAttrib1f;
2735 pfglVertexAttrib1fv     glVertexAttrib1fv;
2736 pfglVertexAttrib1s      glVertexAttrib1s;
2737 pfglVertexAttrib1sv     glVertexAttrib1sv;
2738 pfglVertexAttrib2d      glVertexAttrib2d;
2739 pfglVertexAttrib2dv     glVertexAttrib2dv;
2740 pfglVertexAttrib2f      glVertexAttrib2f;
2741 pfglVertexAttrib2fv     glVertexAttrib2fv;
2742 pfglVertexAttrib2s      glVertexAttrib2s;
2743 pfglVertexAttrib2sv     glVertexAttrib2sv;
2744 pfglVertexAttrib3d      glVertexAttrib3d;
2745 pfglVertexAttrib3dv     glVertexAttrib3dv;
2746 pfglVertexAttrib3f      glVertexAttrib3f;
2747 pfglVertexAttrib3fv     glVertexAttrib3fv;
2748 pfglVertexAttrib3s      glVertexAttrib3s;
2749 pfglVertexAttrib3sv     glVertexAttrib3sv;
2750 pfglVertexAttrib4Nbv        glVertexAttrib4Nbv;
2751 pfglVertexAttrib4Niv        glVertexAttrib4Niv;
2752 pfglVertexAttrib4Nsv        glVertexAttrib4Nsv;
2753 pfglVertexAttrib4Nub        glVertexAttrib4Nub;
2754 pfglVertexAttrib4Nubv       glVertexAttrib4Nubv;
2755 pfglVertexAttrib4Nuiv       glVertexAttrib4Nuiv;
2756 pfglVertexAttrib4Nusv       glVertexAttrib4Nusv;
2757 pfglVertexAttrib4bv     glVertexAttrib4bv;
2758 pfglVertexAttrib4d      glVertexAttrib4d;
2759 pfglVertexAttrib4dv     glVertexAttrib4dv;
2760 pfglVertexAttrib4f      glVertexAttrib4f;
2761 pfglVertexAttrib4fv     glVertexAttrib4fv;
2762 pfglVertexAttrib4iv     glVertexAttrib4iv;
2763 pfglVertexAttrib4s      glVertexAttrib4s;
2764 pfglVertexAttrib4sv     glVertexAttrib4sv;
2765 pfglVertexAttrib4ubv        glVertexAttrib4ubv;
2766 pfglVertexAttrib4uiv        glVertexAttrib4uiv;
2767 pfglVertexAttrib4usv        glVertexAttrib4usv;
2768 pfglVertexAttribPointer     glVertexAttribPointer;
Note: See TracBrowser for help on using the browser.