2 * Direct3D wine OpenGL include file
4 * Copyright 2002-2003 The wine-d3d team
5 * Copyright 2002-2004 Jason Edmeades
7 * Copyright 2007 Roderick Colenbrander
9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public
11 * License as published by the Free Software Foundation; either
12 * version 2.1 of the License, or (at your option) any later version.
14 * This library is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * Lesser General Public License for more details.
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this library; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
24 * Most OpenGL 1.0/1.1/1.2/1.3 constants/types come from the Mesa-project:
25 * Copyright (C) 1999-2006 Brian Paul
27 * From the Mesa-license:
28 * Permission is hereby granted, free of charge, to any person obtaining a
29 * copy of this software and associated documentation files (the "Software"),
30 * to deal in the Software without restriction, including without limitation
31 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
32 * and/or sell copies of the Software, and to permit persons to whom the
33 * Software is furnished to do so, subject to the following conditions:
35 * The above copyright notice and this permission notice shall be included
36 * in all copies or substantial portions of the Software.
38 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
39 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
40 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
41 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
42 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
43 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
46 #ifndef __WINE_WINED3D_GL_H
47 #define __WINE_WINED3D_GL_H
49 #ifdef USE_WIN32_OPENGL
50 #define WINE_GLAPI __stdcall
55 /****************************************************
56 * OpenGL 1.0/1.1/1.2/1.3
57 * types, #defines and function pointers
58 ****************************************************/
61 typedef unsigned int GLbitfield;
62 typedef unsigned char GLboolean;
63 typedef signed char GLbyte;
64 typedef unsigned char GLubyte;
65 typedef short GLshort;
66 typedef unsigned short GLushort;
68 typedef unsigned int GLuint;
69 typedef unsigned int GLenum;
70 typedef float GLfloat;
72 typedef float GLclampf;
73 typedef double GLdouble;
74 typedef double GLclampd;
76 typedef ptrdiff_t GLintptr;
77 typedef ptrdiff_t GLsizeiptr;
78 typedef INT64 GLint64;
79 typedef UINT64 GLuint64;
80 typedef struct __GLsync *GLsync;
87 #define GL_BYTE 0x1400
88 #define GL_UNSIGNED_BYTE 0x1401
89 #define GL_SHORT 0x1402
90 #define GL_UNSIGNED_SHORT 0x1403
92 #define GL_UNSIGNED_INT 0x1405
93 #define GL_FLOAT 0x1406
94 #define GL_DOUBLE 0x140A
95 #define GL_2_BYTES 0x1407
96 #define GL_3_BYTES 0x1408
97 #define GL_4_BYTES 0x1409
100 #define GL_NO_ERROR 0x0
101 #define GL_INVALID_VALUE 0x0501
102 #define GL_INVALID_ENUM 0x0500
103 #define GL_INVALID_OPERATION 0x0502
104 #define GL_STACK_OVERFLOW 0x0503
105 #define GL_STACK_UNDERFLOW 0x0504
106 #define GL_OUT_OF_MEMORY 0x0505
109 #define GL_VENDOR 0x1F00
110 #define GL_RENDERER 0x1F01
111 #define GL_VERSION 0x1F02
112 #define GL_EXTENSIONS 0x1F03
114 /* Accumulation buffer */
115 #define GL_ACCUM_RED_BITS 0x0D58
116 #define GL_ACCUM_GREEN_BITS 0x0D59
117 #define GL_ACCUM_BLUE_BITS 0x0D5A
118 #define GL_ACCUM_ALPHA_BITS 0x0D5B
119 #define GL_ACCUM_CLEAR_VALUE 0x0B80
120 #define GL_ACCUM 0x0100
121 #define GL_ADD 0x0104
122 #define GL_LOAD 0x0101
123 #define GL_MULT 0x0103
124 #define GL_RETURN 0x0102
127 #define GL_ALPHA_TEST 0x0BC0
128 #define GL_ALPHA_TEST_REF 0x0BC2
129 #define GL_ALPHA_TEST_FUNC 0x0BC1
132 #define GL_BLEND 0x0BE2
133 #define GL_BLEND_SRC 0x0BE1
134 #define GL_BLEND_DST 0x0BE0
137 #define GL_SRC_COLOR 0x0300
138 #define GL_ONE_MINUS_SRC_COLOR 0x0301
139 #define GL_SRC_ALPHA 0x0302
140 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
141 #define GL_DST_ALPHA 0x0304
142 #define GL_ONE_MINUS_DST_ALPHA 0x0305
143 #define GL_DST_COLOR 0x0306
144 #define GL_ONE_MINUS_DST_COLOR 0x0307
145 #define GL_SRC_ALPHA_SATURATE 0x0308
146 #define GL_CONSTANT_COLOR 0x8001
147 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
148 #define GL_CONSTANT_ALPHA 0x8003
149 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
151 /* Buffers, Pixel Drawing/Reading */
153 #define GL_FRONT_LEFT 0x0400
154 #define GL_FRONT_RIGHT 0x0401
155 #define GL_BACK_LEFT 0x0402
156 #define GL_BACK_RIGHT 0x0403
157 #define GL_FRONT 0x0404
158 #define GL_BACK 0x0405
159 #define GL_LEFT 0x0406
160 #define GL_RIGHT 0x0407
161 #define GL_FRONT_AND_BACK 0x0408
162 #define GL_AUX0 0x0409
163 #define GL_AUX1 0x040A
164 #define GL_AUX2 0x040B
165 #define GL_AUX3 0x040C
166 #define GL_COLOR_INDEX 0x1900
167 #define GL_RED 0x1903
168 #define GL_GREEN 0x1904
169 #define GL_BLUE 0x1905
170 #define GL_ALPHA 0x1906
171 #define GL_LUMINANCE 0x1909
172 #define GL_LUMINANCE_ALPHA 0x190A
173 #define GL_ALPHA_BITS 0x0D55
174 #define GL_RED_BITS 0x0D52
175 #define GL_GREEN_BITS 0x0D53
176 #define GL_BLUE_BITS 0x0D54
177 #define GL_INDEX_BITS 0x0D51
178 #define GL_SUBPIXEL_BITS 0x0D50
179 #define GL_AUX_BUFFERS 0x0C00
180 #define GL_READ_BUFFER 0x0C02
181 #define GL_DRAW_BUFFER 0x0C01
182 #define GL_DOUBLEBUFFER 0x0C32
183 #define GL_STEREO 0x0C33
184 #define GL_BITMAP 0x1A00
185 #define GL_COLOR 0x1800
186 #define GL_DEPTH 0x1801
187 #define GL_STENCIL 0x1802
188 #define GL_DITHER 0x0BD0
189 #define GL_RGB 0x1907
190 #define GL_RGBA 0x1908
193 #define GL_CLIP_PLANE0 0x3000
194 #define GL_CLIP_PLANE1 0x3001
195 #define GL_CLIP_PLANE2 0x3002
196 #define GL_CLIP_PLANE3 0x3003
197 #define GL_CLIP_PLANE4 0x3004
198 #define GL_CLIP_PLANE5 0x3005
201 #define GL_NEVER 0x0200
202 #define GL_LESS 0x0201
203 #define GL_EQUAL 0x0202
204 #define GL_LEQUAL 0x0203
205 #define GL_GREATER 0x0204
206 #define GL_NOTEQUAL 0x0205
207 #define GL_GEQUAL 0x0206
208 #define GL_ALWAYS 0x0207
209 #define GL_DEPTH_TEST 0x0B71
210 #define GL_DEPTH_BITS 0x0D56
211 #define GL_DEPTH_CLEAR_VALUE 0x0B73
212 #define GL_DEPTH_FUNC 0x0B74
213 #define GL_DEPTH_RANGE 0x0B70
214 #define GL_DEPTH_WRITEMASK 0x0B72
215 #define GL_DEPTH_COMPONENT 0x1902
218 #define GL_AUTO_NORMAL 0x0D80
219 #define GL_MAP1_COLOR_4 0x0D90
220 #define GL_MAP1_GRID_DOMAIN 0x0DD0
221 #define GL_MAP1_GRID_SEGMENTS 0x0DD1
222 #define GL_MAP1_INDEX 0x0D91
223 #define GL_MAP1_NORMAL 0x0D92
224 #define GL_MAP1_TEXTURE_COORD_1 0x0D93
225 #define GL_MAP1_TEXTURE_COORD_2 0x0D94
226 #define GL_MAP1_TEXTURE_COORD_3 0x0D95
227 #define GL_MAP1_TEXTURE_COORD_4 0x0D96
228 #define GL_MAP1_VERTEX_3 0x0D97
229 #define GL_MAP1_VERTEX_4 0x0D98
230 #define GL_MAP2_COLOR_4 0x0DB0
231 #define GL_MAP2_GRID_DOMAIN 0x0DD2
232 #define GL_MAP2_GRID_SEGMENTS 0x0DD3
233 #define GL_MAP2_INDEX 0x0DB1
234 #define GL_MAP2_NORMAL 0x0DB2
235 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3
236 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4
237 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5
238 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6
239 #define GL_MAP2_VERTEX_3 0x0DB7
240 #define GL_MAP2_VERTEX_4 0x0DB8
241 #define GL_COEFF 0x0A00
242 #define GL_DOMAIN 0x0A02
243 #define GL_ORDER 0x0A01
248 #define GL_3D_COLOR 0x0602
249 #define GL_3D_COLOR_TEXTURE 0x0603
250 #define GL_4D_COLOR_TEXTURE 0x0604
251 #define GL_POINT_TOKEN 0x0701
252 #define GL_LINE_TOKEN 0x0702
253 #define GL_LINE_RESET_TOKEN 0x0707
254 #define GL_POLYGON_TOKEN 0x0703
255 #define GL_BITMAP_TOKEN 0x0704
256 #define GL_DRAW_PIXEL_TOKEN 0x0705
257 #define GL_COPY_PIXEL_TOKEN 0x0706
258 #define GL_PASS_THROUGH_TOKEN 0x0700
259 #define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
260 #define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
261 #define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
264 #define GL_FOG 0x0B60
265 #define GL_FOG_MODE 0x0B65
266 #define GL_FOG_DENSITY 0x0B62
267 #define GL_FOG_COLOR 0x0B66
268 #define GL_FOG_INDEX 0x0B61
269 #define GL_FOG_START 0x0B63
270 #define GL_FOG_END 0x0B64
271 #define GL_LINEAR 0x2601
272 #define GL_EXP 0x0800
273 #define GL_EXP2 0x0801
276 #define GL_ATTRIB_STACK_DEPTH 0x0BB0
277 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
278 #define GL_COLOR_CLEAR_VALUE 0x0C22
279 #define GL_COLOR_WRITEMASK 0x0C23
280 #define GL_CURRENT_INDEX 0x0B01
281 #define GL_CURRENT_COLOR 0x0B00
282 #define GL_CURRENT_NORMAL 0x0B02
283 #define GL_CURRENT_RASTER_COLOR 0x0B04
284 #define GL_CURRENT_RASTER_DISTANCE 0x0B09
285 #define GL_CURRENT_RASTER_INDEX 0x0B05
286 #define GL_CURRENT_RASTER_POSITION 0x0B07
287 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
288 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
289 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
290 #define GL_INDEX_CLEAR_VALUE 0x0C20
291 #define GL_INDEX_MODE 0x0C30
292 #define GL_INDEX_WRITEMASK 0x0C21
293 #define GL_MODELVIEW_MATRIX 0x0BA6
294 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3
295 #define GL_NAME_STACK_DEPTH 0x0D70
296 #define GL_PROJECTION_MATRIX 0x0BA7
297 #define GL_PROJECTION_STACK_DEPTH 0x0BA4
298 #define GL_RENDER_MODE 0x0C40
299 #define GL_RGBA_MODE 0x0C31
300 #define GL_TEXTURE_MATRIX 0x0BA8
301 #define GL_TEXTURE_STACK_DEPTH 0x0BA5
302 #define GL_VIEWPORT 0x0BA2
305 #define GL_FOG_HINT 0x0C54
306 #define GL_LINE_SMOOTH_HINT 0x0C52
307 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
308 #define GL_POINT_SMOOTH_HINT 0x0C51
309 #define GL_POLYGON_SMOOTH_HINT 0x0C53
310 #define GL_DONT_CARE 0x1100
311 #define GL_FASTEST 0x1101
312 #define GL_NICEST 0x1102
314 /* Implementation limits */
315 #define GL_MAX_LIST_NESTING 0x0B31
316 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
317 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
318 #define GL_MAX_NAME_STACK_DEPTH 0x0D37
319 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
320 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
321 #define GL_MAX_EVAL_ORDER 0x0D30
322 #define GL_MAX_LIGHTS 0x0D31
323 #define GL_MAX_CLIP_PLANES 0x0D32
324 #define GL_MAX_TEXTURE_SIZE 0x0D33
325 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34
326 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
327 #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
330 #define GL_LIGHTING 0x0B50
331 #define GL_LIGHT0 0x4000
332 #define GL_LIGHT1 0x4001
333 #define GL_LIGHT2 0x4002
334 #define GL_LIGHT3 0x4003
335 #define GL_LIGHT4 0x4004
336 #define GL_LIGHT5 0x4005
337 #define GL_LIGHT6 0x4006
338 #define GL_LIGHT7 0x4007
339 #define GL_SPOT_EXPONENT 0x1205
340 #define GL_SPOT_CUTOFF 0x1206
341 #define GL_CONSTANT_ATTENUATION 0x1207
342 #define GL_LINEAR_ATTENUATION 0x1208
343 #define GL_QUADRATIC_ATTENUATION 0x1209
344 #define GL_AMBIENT 0x1200
345 #define GL_DIFFUSE 0x1201
346 #define GL_SPECULAR 0x1202
347 #define GL_SHININESS 0x1601
348 #define GL_EMISSION 0x1600
349 #define GL_POSITION 0x1203
350 #define GL_SPOT_DIRECTION 0x1204
351 #define GL_AMBIENT_AND_DIFFUSE 0x1602
352 #define GL_COLOR_INDEXES 0x1603
353 #define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
354 #define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
355 #define GL_LIGHT_MODEL_AMBIENT 0x0B53
356 #define GL_FRONT_AND_BACK 0x0408
357 #define GL_SHADE_MODEL 0x0B54
358 #define GL_FLAT 0x1D00
359 #define GL_SMOOTH 0x1D01
360 #define GL_COLOR_MATERIAL 0x0B57
361 #define GL_COLOR_MATERIAL_FACE 0x0B55
362 #define GL_COLOR_MATERIAL_PARAMETER 0x0B56
363 #define GL_NORMALIZE 0x0BA1
366 #define GL_LINE_SMOOTH 0x0B20
367 #define GL_LINE_STIPPLE 0x0B24
368 #define GL_LINE_STIPPLE_PATTERN 0x0B25
369 #define GL_LINE_STIPPLE_REPEAT 0x0B26
370 #define GL_LINE_WIDTH 0x0B21
371 #define GL_LINE_WIDTH_GRANULARITY 0x0B23
372 #define GL_LINE_WIDTH_RANGE 0x0B22
375 #define GL_LOGIC_OP 0x0BF1
376 #define GL_INDEX_LOGIC_OP 0x0BF1
377 #define GL_COLOR_LOGIC_OP 0x0BF2
378 #define GL_LOGIC_OP_MODE 0x0BF0
379 #define GL_CLEAR 0x1500
380 #define GL_SET 0x150F
381 #define GL_COPY 0x1503
382 #define GL_COPY_INVERTED 0x150C
383 #define GL_NOOP 0x1505
384 #define GL_INVERT 0x150A
385 #define GL_AND 0x1501
386 #define GL_NAND 0x150E
388 #define GL_NOR 0x1508
389 #define GL_XOR 0x1506
390 #define GL_EQUIV 0x1509
391 #define GL_AND_REVERSE 0x1502
392 #define GL_AND_INVERTED 0x1504
393 #define GL_OR_REVERSE 0x150B
394 #define GL_OR_INVERTED 0x150D
397 #define GL_MATRIX_MODE 0x0BA0
398 #define GL_MODELVIEW 0x1700
399 #define GL_PROJECTION 0x1701
400 #define GL_TEXTURE 0x1702
402 /* Pixel Mode / Transfer */
403 #define GL_MAP_COLOR 0x0D10
404 #define GL_MAP_STENCIL 0x0D11
405 #define GL_INDEX_SHIFT 0x0D12
406 #define GL_INDEX_OFFSET 0x0D13
407 #define GL_RED_SCALE 0x0D14
408 #define GL_RED_BIAS 0x0D15
409 #define GL_GREEN_SCALE 0x0D18
410 #define GL_GREEN_BIAS 0x0D19
411 #define GL_BLUE_SCALE 0x0D1A
412 #define GL_BLUE_BIAS 0x0D1B
413 #define GL_ALPHA_SCALE 0x0D1C
414 #define GL_ALPHA_BIAS 0x0D1D
415 #define GL_DEPTH_SCALE 0x0D1E
416 #define GL_DEPTH_BIAS 0x0D1F
417 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
418 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
419 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
420 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
421 #define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
422 #define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
423 #define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
424 #define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
425 #define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
426 #define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
427 #define GL_PIXEL_MAP_S_TO_S 0x0C71
428 #define GL_PIXEL_MAP_I_TO_I 0x0C70
429 #define GL_PIXEL_MAP_I_TO_R 0x0C72
430 #define GL_PIXEL_MAP_I_TO_G 0x0C73
431 #define GL_PIXEL_MAP_I_TO_B 0x0C74
432 #define GL_PIXEL_MAP_I_TO_A 0x0C75
433 #define GL_PIXEL_MAP_R_TO_R 0x0C76
434 #define GL_PIXEL_MAP_G_TO_G 0x0C77
435 #define GL_PIXEL_MAP_B_TO_B 0x0C78
436 #define GL_PIXEL_MAP_A_TO_A 0x0C79
437 #define GL_PACK_ALIGNMENT 0x0D05
438 #define GL_PACK_LSB_FIRST 0x0D01
439 #define GL_PACK_ROW_LENGTH 0x0D02
440 #define GL_PACK_SKIP_PIXELS 0x0D04
441 #define GL_PACK_SKIP_ROWS 0x0D03
442 #define GL_PACK_SWAP_BYTES 0x0D00
443 #define GL_UNPACK_ALIGNMENT 0x0CF5
444 #define GL_UNPACK_LSB_FIRST 0x0CF1
445 #define GL_UNPACK_ROW_LENGTH 0x0CF2
446 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
447 #define GL_UNPACK_SKIP_ROWS 0x0CF3
448 #define GL_UNPACK_SWAP_BYTES 0x0CF0
449 #define GL_ZOOM_X 0x0D16
450 #define GL_ZOOM_Y 0x0D17
453 #define GL_POINT_SMOOTH 0x0B10
454 #define GL_POINT_SIZE 0x0B11
455 #define GL_POINT_SIZE_GRANULARITY 0x0B13
456 #define GL_POINT_SIZE_RANGE 0x0B12
459 #define GL_POINT 0x1B00
460 #define GL_LINE 0x1B01
461 #define GL_FILL 0x1B02
463 #define GL_CCW 0x0901
464 #define GL_FRONT 0x0404
465 #define GL_BACK 0x0405
466 #define GL_POLYGON_MODE 0x0B40
467 #define GL_POLYGON_SMOOTH 0x0B41
468 #define GL_POLYGON_STIPPLE 0x0B42
469 #define GL_EDGE_FLAG 0x0B43
470 #define GL_CULL_FACE 0x0B44
471 #define GL_CULL_FACE_MODE 0x0B45
472 #define GL_FRONT_FACE 0x0B46
473 #define GL_POLYGON_OFFSET_FACTOR 0x8038
474 #define GL_POLYGON_OFFSET_UNITS 0x2A00
475 #define GL_POLYGON_OFFSET_POINT 0x2A01
476 #define GL_POLYGON_OFFSET_LINE 0x2A02
477 #define GL_POLYGON_OFFSET_FILL 0x8037
480 #define GL_POINTS 0x0000
481 #define GL_LINES 0x0001
482 #define GL_LINE_LOOP 0x0002
483 #define GL_LINE_STRIP 0x0003
484 #define GL_TRIANGLES 0x0004
485 #define GL_TRIANGLE_STRIP 0x0005
486 #define GL_TRIANGLE_FAN 0x0006
487 #define GL_QUADS 0x0007
488 #define GL_QUAD_STRIP 0x0008
489 #define GL_POLYGON 0x0009
492 #define GL_CURRENT_BIT 0x00000001
493 #define GL_POINT_BIT 0x00000002
494 #define GL_LINE_BIT 0x00000004
495 #define GL_POLYGON_BIT 0x00000008
496 #define GL_POLYGON_STIPPLE_BIT 0x00000010
497 #define GL_PIXEL_MODE_BIT 0x00000020
498 #define GL_LIGHTING_BIT 0x00000040
499 #define GL_FOG_BIT 0x00000080
500 #define GL_DEPTH_BUFFER_BIT 0x00000100
501 #define GL_ACCUM_BUFFER_BIT 0x00000200
502 #define GL_STENCIL_BUFFER_BIT 0x00000400
503 #define GL_VIEWPORT_BIT 0x00000800
504 #define GL_TRANSFORM_BIT 0x00001000
505 #define GL_ENABLE_BIT 0x00002000
506 #define GL_COLOR_BUFFER_BIT 0x00004000
507 #define GL_HINT_BIT 0x00008000
508 #define GL_EVAL_BIT 0x00010000
509 #define GL_LIST_BIT 0x00020000
510 #define GL_TEXTURE_BIT 0x00040000
511 #define GL_SCISSOR_BIT 0x00080000
512 #define GL_ALL_ATTRIB_BITS 0x000FFFFF
515 #define GL_FEEDBACK 0x1C01
516 #define GL_RENDER 0x1C00
517 #define GL_SELECT 0x1C02
520 #define GL_SCISSOR_TEST 0x0C11
521 #define GL_SCISSOR_BOX 0x0C10
524 #define GL_STENCIL_TEST 0x0B90
525 #define GL_STENCIL_WRITEMASK 0x0B98
526 #define GL_STENCIL_BITS 0x0D57
527 #define GL_STENCIL_FUNC 0x0B92
528 #define GL_STENCIL_VALUE_MASK 0x0B93
529 #define GL_STENCIL_REF 0x0B97
530 #define GL_STENCIL_FAIL 0x0B94
531 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
532 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
533 #define GL_STENCIL_CLEAR_VALUE 0x0B91
534 #define GL_STENCIL_INDEX 0x1901
535 #define GL_KEEP 0x1E00
536 #define GL_REPLACE 0x1E01
537 #define GL_INCR 0x1E02
538 #define GL_DECR 0x1E03
540 /* Texture mapping */
541 #define GL_TEXTURE_ENV 0x2300
542 #define GL_TEXTURE_ENV_MODE 0x2200
543 #define GL_TEXTURE_1D 0x0DE0
544 #define GL_TEXTURE_2D 0x0DE1
545 #define GL_TEXTURE_WRAP_S 0x2802
546 #define GL_TEXTURE_WRAP_T 0x2803
547 #define GL_TEXTURE_MAG_FILTER 0x2800
548 #define GL_TEXTURE_MIN_FILTER 0x2801
549 #define GL_TEXTURE_ENV_COLOR 0x2201
550 #define GL_TEXTURE_GEN_S 0x0C60
551 #define GL_TEXTURE_GEN_T 0x0C61
552 #define GL_TEXTURE_GEN_MODE 0x2500
553 #define GL_TEXTURE_BORDER_COLOR 0x1004
554 #define GL_TEXTURE_WIDTH 0x1000
555 #define GL_TEXTURE_HEIGHT 0x1001
556 #define GL_TEXTURE_BORDER 0x1005
557 #define GL_TEXTURE_COMPONENTS 0x1003
558 #define GL_TEXTURE_RED_SIZE 0x805C
559 #define GL_TEXTURE_GREEN_SIZE 0x805D
560 #define GL_TEXTURE_BLUE_SIZE 0x805E
561 #define GL_TEXTURE_ALPHA_SIZE 0x805F
562 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060
563 #define GL_TEXTURE_INTENSITY_SIZE 0x8061
564 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
565 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
566 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
567 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
568 #define GL_OBJECT_LINEAR 0x2401
569 #define GL_OBJECT_PLANE 0x2501
570 #define GL_EYE_LINEAR 0x2400
571 #define GL_EYE_PLANE 0x2502
572 #define GL_SPHERE_MAP 0x2402
573 #define GL_DECAL 0x2101
574 #define GL_MODULATE 0x2100
575 #define GL_NEAREST 0x2600
576 #define GL_REPEAT 0x2901
577 #define GL_CLAMP 0x2900
582 #define GL_TEXTURE_GEN_R 0x0C62
583 #define GL_TEXTURE_GEN_Q 0x0C63
586 #define GL_VERTEX_ARRAY 0x8074
587 #define GL_NORMAL_ARRAY 0x8075
588 #define GL_COLOR_ARRAY 0x8076
589 #define GL_INDEX_ARRAY 0x8077
590 #define GL_TEXTURE_COORD_ARRAY 0x8078
591 #define GL_EDGE_FLAG_ARRAY 0x8079
592 #define GL_VERTEX_ARRAY_SIZE 0x807A
593 #define GL_VERTEX_ARRAY_TYPE 0x807B
594 #define GL_VERTEX_ARRAY_STRIDE 0x807C
595 #define GL_NORMAL_ARRAY_TYPE 0x807E
596 #define GL_NORMAL_ARRAY_STRIDE 0x807F
597 #define GL_COLOR_ARRAY_SIZE 0x8081
598 #define GL_COLOR_ARRAY_TYPE 0x8082
599 #define GL_COLOR_ARRAY_STRIDE 0x8083
600 #define GL_INDEX_ARRAY_TYPE 0x8085
601 #define GL_INDEX_ARRAY_STRIDE 0x8086
602 #define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
603 #define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
604 #define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
605 #define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
606 #define GL_VERTEX_ARRAY_POINTER 0x808E
607 #define GL_NORMAL_ARRAY_POINTER 0x808F
608 #define GL_COLOR_ARRAY_POINTER 0x8090
609 #define GL_INDEX_ARRAY_POINTER 0x8091
610 #define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
611 #define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
612 #define GL_V2F 0x2A20
613 #define GL_V3F 0x2A21
614 #define GL_C4UB_V2F 0x2A22
615 #define GL_C4UB_V3F 0x2A23
616 #define GL_C3F_V3F 0x2A24
617 #define GL_N3F_V3F 0x2A25
618 #define GL_C4F_N3F_V3F 0x2A26
619 #define GL_T2F_V3F 0x2A27
620 #define GL_T4F_V4F 0x2A28
621 #define GL_T2F_C4UB_V3F 0x2A29
622 #define GL_T2F_C3F_V3F 0x2A2A
623 #define GL_T2F_N3F_V3F 0x2A2B
624 #define GL_T2F_C4F_N3F_V3F 0x2A2C
625 #define GL_T4F_C4F_N3F_V4F 0x2A2D
628 #define GL_PROXY_TEXTURE_1D 0x8063
629 #define GL_PROXY_TEXTURE_2D 0x8064
630 #define GL_TEXTURE_PRIORITY 0x8066
631 #define GL_TEXTURE_RESIDENT 0x8067
632 #define GL_TEXTURE_BINDING_1D 0x8068
633 #define GL_TEXTURE_BINDING_2D 0x8069
634 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
635 #define GL_ALPHA4 0x803B
636 #define GL_ALPHA8 0x803C
637 #define GL_ALPHA12 0x803D
638 #define GL_ALPHA16 0x803E
639 #define GL_LUMINANCE4 0x803F
640 #define GL_LUMINANCE8 0x8040
641 #define GL_LUMINANCE12 0x8041
642 #define GL_LUMINANCE16 0x8042
643 #define GL_LUMINANCE4_ALPHA4 0x8043
644 #define GL_LUMINANCE6_ALPHA2 0x8044
645 #define GL_LUMINANCE8_ALPHA8 0x8045
646 #define GL_LUMINANCE12_ALPHA4 0x8046
647 #define GL_LUMINANCE12_ALPHA12 0x8047
648 #define GL_LUMINANCE16_ALPHA16 0x8048
649 #define GL_INTENSITY 0x8049
650 #define GL_INTENSITY4 0x804A
651 #define GL_INTENSITY8 0x804B
652 #define GL_INTENSITY12 0x804C
653 #define GL_INTENSITY16 0x804D
654 #define GL_R3_G3_B2 0x2A10
655 #define GL_RGB4 0x804F
656 #define GL_RGB5 0x8050
657 #define GL_RGB8 0x8051
658 #define GL_RGB10 0x8052
659 #define GL_RGB12 0x8053
660 #define GL_RGB16 0x8054
661 #define GL_RGBA2 0x8055
662 #define GL_RGBA4 0x8056
663 #define GL_RGB5_A1 0x8057
664 #define GL_RGBA8 0x8058
665 #define GL_RGB10_A2 0x8059
666 #define GL_RGBA12 0x805A
667 #define GL_RGBA16 0x805B
668 #define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
669 #define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
670 #define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF
671 #define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
673 /* OpenGL 1.2 constants */
674 #define GL_PACK_SKIP_IMAGES 0x806B
675 #define GL_PACK_IMAGE_HEIGHT 0x806C
676 #define GL_UNPACK_SKIP_IMAGES 0x806D
677 #define GL_UNPACK_IMAGE_HEIGHT 0x806E
678 #define GL_TEXTURE_3D 0x806F
679 #define GL_PROXY_TEXTURE_3D 0x8070
680 #define GL_TEXTURE_DEPTH 0x8071
681 #define GL_TEXTURE_WRAP_R 0x8072
682 #define GL_MAX_3D_TEXTURE_SIZE 0x8073
683 #define GL_BGR 0x80E0
684 #define GL_BGRA 0x80E1
685 #define GL_UNSIGNED_BYTE_3_3_2 0x8032
686 #define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
687 #define GL_UNSIGNED_SHORT_5_6_5 0x8363
688 #define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
689 #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
690 #define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
691 #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
692 #define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
693 #define GL_UNSIGNED_INT_8_8_8_8 0x8035
694 #define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
695 #define GL_UNSIGNED_INT_10_10_10_2 0x8036
696 #define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
697 #define GL_RESCALE_NORMAL 0x803A
698 #define GL_TEXTURE_BINDING_3D 0x806A
699 #define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
700 #define GL_SINGLE_COLOR 0x81F9
701 #define GL_SEPARATE_SPECULAR_COLOR 0x81FA
702 #define GL_CLAMP_TO_EDGE 0x812F
703 #define GL_TEXTURE_MIN_LOD 0x813A
704 #define GL_TEXTURE_MAX_LOD 0x813B
705 #define GL_TEXTURE_BASE_LEVEL 0x813C
706 #define GL_TEXTURE_MAX_LEVEL 0x813D
707 #define GL_MAX_ELEMENTS_VERTICES 0x80E8
708 #define GL_MAX_ELEMENTS_INDICES 0x80E9
709 #define GL_ALIASED_POINT_SIZE_RANGE 0x846D
710 #define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
712 /* OpenGL 1.3 constants */
713 #define GL_ACTIVE_TEXTURE 0x84E0
714 #define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
715 #define GL_MAX_TEXTURE_UNITS 0x84E2
716 #define GL_TEXTURE0 0x84C0
717 #define GL_TEXTURE1 0x84C1
718 #define GL_TEXTURE2 0x84C2
719 #define GL_TEXTURE3 0x84C3
720 #define GL_TEXTURE4 0x84C4
721 #define GL_TEXTURE5 0x84C5
722 #define GL_TEXTURE6 0x84C6
723 #define GL_TEXTURE7 0x84C7
724 #define GL_TEXTURE8 0x84C8
725 #define GL_TEXTURE9 0x84C9
726 #define GL_TEXTURE10 0x84CA
727 #define GL_TEXTURE11 0x84CB
728 #define GL_TEXTURE12 0x84CC
729 #define GL_TEXTURE13 0x84CD
730 #define GL_TEXTURE14 0x84CE
731 #define GL_TEXTURE15 0x84CF
732 #define GL_TEXTURE16 0x84D0
733 #define GL_TEXTURE17 0x84D1
734 #define GL_TEXTURE18 0x84D2
735 #define GL_TEXTURE19 0x84D3
736 #define GL_TEXTURE20 0x84D4
737 #define GL_TEXTURE21 0x84D5
738 #define GL_TEXTURE22 0x84D6
739 #define GL_TEXTURE23 0x84D7
740 #define GL_TEXTURE24 0x84D8
741 #define GL_TEXTURE25 0x84D9
742 #define GL_TEXTURE26 0x84DA
743 #define GL_TEXTURE27 0x84DB
744 #define GL_TEXTURE28 0x84DC
745 #define GL_TEXTURE29 0x84DD
746 #define GL_TEXTURE30 0x84DE
747 #define GL_TEXTURE31 0x84DF
748 #define GL_NORMAL_MAP 0x8511
749 #define GL_REFLECTION_MAP 0x8512
750 #define GL_TEXTURE_CUBE_MAP 0x8513
751 #define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
752 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
753 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
754 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
755 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
756 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
757 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
758 #define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
759 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
760 #define GL_COMBINE 0x8570
761 #define GL_COMBINE_RGB 0x8571
762 #define GL_COMBINE_ALPHA 0x8572
763 #define GL_RGB_SCALE 0x8573
764 #define GL_ADD_SIGNED 0x8574
765 #define GL_INTERPOLATE 0x8575
766 #define GL_CONSTANT 0x8576
767 #define GL_PRIMARY_COLOR 0x8577
768 #define GL_PREVIOUS 0x8578
769 #define GL_SOURCE0_RGB 0x8580
770 #define GL_SOURCE1_RGB 0x8581
771 #define GL_SOURCE2_RGB 0x8582
772 #define GL_SOURCE0_ALPHA 0x8588
773 #define GL_SOURCE1_ALPHA 0x8589
774 #define GL_SOURCE2_ALPHA 0x858A
775 #define GL_OPERAND0_RGB 0x8590
776 #define GL_OPERAND1_RGB 0x8591
777 #define GL_OPERAND2_RGB 0x8592
778 #define GL_OPERAND0_ALPHA 0x8598
779 #define GL_OPERAND1_ALPHA 0x8599
780 #define GL_OPERAND2_ALPHA 0x859A
781 #define GL_SUBTRACT 0x84E7
782 #define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
783 #define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
784 #define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
785 #define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
786 #define GL_COMPRESSED_ALPHA 0x84E9
787 #define GL_COMPRESSED_LUMINANCE 0x84EA
788 #define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
789 #define GL_COMPRESSED_INTENSITY 0x84EC
790 #define GL_COMPRESSED_RGB 0x84ED
791 #define GL_COMPRESSED_RGBA 0x84EE
792 #define GL_TEXTURE_COMPRESSION_HINT 0x84EF
793 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
794 #define GL_TEXTURE_COMPRESSED 0x86A1
795 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
796 #define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
797 #define GL_DOT3_RGB 0x86AE
798 #define GL_DOT3_RGBA 0x86AF
799 #define GL_CLAMP_TO_BORDER 0x812D
800 #define GL_MULTISAMPLE 0x809D
801 #define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
802 #define GL_SAMPLE_ALPHA_TO_ONE 0x809F
803 #define GL_SAMPLE_COVERAGE 0x80A0
804 #define GL_SAMPLE_BUFFERS 0x80A8
805 #define GL_SAMPLES 0x80A9
806 #define GL_SAMPLE_COVERAGE_VALUE 0x80AA
807 #define GL_SAMPLE_COVERAGE_INVERT 0x80AB
808 #define GL_MULTISAMPLE_BIT 0x20000000
811 #ifndef GL_VERSION_2_0
812 #define GL_VERSION_2_0 1
813 #define GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION
814 #define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
815 #define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
816 #define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
817 #define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
818 #define GL_CURRENT_VERTEX_ATTRIB 0x8626
819 #define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
820 #define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
821 #define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
822 #define GL_STENCIL_BACK_FUNC 0x8800
823 #define GL_STENCIL_BACK_FAIL 0x8801
824 #define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
825 #define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
826 #define GL_MAX_DRAW_BUFFERS 0x8824
827 #define GL_DRAW_BUFFER0 0x8825
828 #define GL_DRAW_BUFFER1 0x8826
829 #define GL_DRAW_BUFFER2 0x8827
830 #define GL_DRAW_BUFFER3 0x8828
831 #define GL_DRAW_BUFFER4 0x8829
832 #define GL_DRAW_BUFFER5 0x882a
833 #define GL_DRAW_BUFFER6 0x882b
834 #define GL_DRAW_BUFFER7 0x882c
835 #define GL_DRAW_BUFFER8 0x882d
836 #define GL_DRAW_BUFFER9 0x882e
837 #define GL_DRAW_BUFFER10 0x882f
838 #define GL_DRAW_BUFFER11 0x8830
839 #define GL_DRAW_BUFFER12 0x8831
840 #define GL_DRAW_BUFFER13 0x8832
841 #define GL_DRAW_BUFFER14 0x8833
842 #define GL_DRAW_BUFFER15 0x8834
843 #define GL_BLEND_EQUATION_ALPHA 0x883d
844 #define GL_POINT_SPRITE 0x8861
845 #define GL_COORD_REPLACE 0x8862
846 #define GL_MAX_VERTEX_ATTRIBS 0x8869
847 #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886a
848 #define GL_MAX_TEXTURE_COORDS 0x8871
849 #define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
850 #define GL_FRAGMENT_SHADER 0x8b30
851 #define GL_VERTEX_SHADER 0x8b31
852 #define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8b49
853 #define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8b4a
854 #define GL_MAX_VARYING_FLOATS 0x8b4b
855 #define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8b4c
856 #define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8b4d
857 #define GL_SHADER_TYPE 0x8b4f
858 #define GL_FLOAT_VEC2 0x8b50
859 #define GL_FLOAT_VEC3 0x8b51
860 #define GL_FLOAT_VEC4 0x8b52
861 #define GL_INT_VEC2 0x8b53
862 #define GL_INT_VEC3 0x8b54
863 #define GL_INT_VEC4 0x8b55
864 #define GL_BOOL 0x8b56
865 #define GL_BOOL_VEC2 0x8b57
866 #define GL_BOOL_VEC3 0x8b58
867 #define GL_BOOL_VEC4 0x8b59
868 #define GL_FLOAT_MAT2 0x8b5a
869 #define GL_FLOAT_MAT3 0x8b5b
870 #define GL_FLOAT_MAT4 0x8b5c
871 #define GL_SAMPLER_1D 0x8b5d
872 #define GL_SAMPLER_2D 0x8b5e
873 #define GL_SAMPLER_3D 0x8b5f
874 #define GL_SAMPLER_CUBE 0x8b60
875 #define GL_SAMPLER_1D_SHADOW 0x8b61
876 #define GL_SAMPLER_2D_SHADOW 0x8b62
877 #define GL_DELETE_STATUS 0x8b80
878 #define GL_COMPILE_STATUS 0x8b81
879 #define GL_LINK_STATUS 0x8b82
880 #define GL_VALIDATE_STATUS 0x8b83
881 #define GL_INFO_LOG_LENGTH 0x8b84
882 #define GL_ATTACHED_SHADERS 0x8b85
883 #define GL_ACTIVE_UNIFORMS 0x8b86
884 #define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8b87
885 #define GL_SHADER_SOURCE_LENGTH 0x8b88
886 #define GL_ACTIVE_ATTRIBUTES 0x8b89
887 #define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8b8a
888 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8b8b
889 #define GL_SHADING_LANGUAGE_VERSION 0x8b8c
890 #define GL_CURRENT_PROGRAM 0x8b8d
891 #define GL_POINT_SPRITE_COORD_ORIGIN 0x8ca0
892 #define GL_LOWER_LEFT 0x8ca1
893 #define GL_UPPER_LEFT 0x8ca2
894 #define GL_STENCIL_BACK_REF 0x8ca3
895 #define GL_STENCIL_BACK_VALUE_MASK 0x8ca4
896 #define GL_STENCIL_BACK_WRITEMASK 0x8ca5
899 typedef void (WINE_GLAPI *PGLFNBLENDEQUATIONSEPARATEPROC)(GLenum modeRGB, GLenum modeAlpha);
900 typedef void (WINE_GLAPI *PGLFNDRAWBUFFERSPROC)(GLsizei n, const GLenum *bufs);
901 typedef void (WINE_GLAPI *PGLFNSTENCILOPSEPARATEPROC)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
902 typedef void (WINE_GLAPI *PGLFNSTENCILFUNCSEPARATEPROC)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
903 typedef void (WINE_GLAPI *PGLFNSTENCILMASKSEPARATEPROC)(GLenum face, GLuint mask);
904 typedef void (WINE_GLAPI *PGLFNATTACHSHADERPROC)(GLuint program, GLuint shader);
905 typedef void (WINE_GLAPI *PGLFNBINDATTRIBLOCATIONPROC)(GLuint program, GLuint index, const GLchar *name);
906 typedef void (WINE_GLAPI *PGLFNCOMPILESHADERPROC)(GLuint shader);
907 typedef GLuint (WINE_GLAPI *PGLFNCREATEPROGRAMPROC)(void);
908 typedef GLuint (WINE_GLAPI *PGLFNCREATESHADERPROC)(GLenum type);
909 typedef void (WINE_GLAPI *PGLFNDELETEPROGRAMPROC)(GLuint program);
910 typedef void (WINE_GLAPI *PGLFNDELETESHADERPROC)(GLuint shader);
911 typedef void (WINE_GLAPI *PGLFNDETACHSHADERPROC)(GLuint program, GLuint shader);
912 typedef void (WINE_GLAPI *PGLFNDISABLEVERTEXATTRIBARRAYPROC)(GLuint index);
913 typedef void (WINE_GLAPI *PGLFNENABLEVERTEXATTRIBARRAYPROC)(GLuint index);
914 typedef void (WINE_GLAPI *PGLFNGETACTIVEATTRIBPROC)(GLuint program,
915 GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
916 typedef void (WINE_GLAPI *PGLFNGETACTIVEUNIFORMPROC)(GLuint program,
917 GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
918 typedef void (WINE_GLAPI *PGLFNGETATTACHEDSHADERSPROC)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
919 typedef GLint (WINE_GLAPI *PGLFNGETATTRIBLOCATIONPROC)(GLuint program, const GLchar *name);
920 typedef void (WINE_GLAPI *PGLFNGETPROGRAMIVPROC)(GLuint program, GLenum pname, GLint *params);
921 typedef void (WINE_GLAPI *PGLFNGETPROGRAMINFOLOGPROC)(GLuint program,
922 GLsizei bufSize, GLsizei *length, GLchar *infoLog);
923 typedef void (WINE_GLAPI *PGLFNGETSHADERIVPROC)(GLuint shader, GLenum pname, GLint *params);
924 typedef void (WINE_GLAPI *PGLFNGETSHADERINFOLOGPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
925 typedef void (WINE_GLAPI *PGLFNGETSHADERSOURCEPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
926 typedef GLint (WINE_GLAPI *PGLFNGETUNIFORMLOCATIONPROC)(GLuint program, const GLchar *name);
927 typedef void (WINE_GLAPI *PGLFNGETUNIFORMFVPROC)(GLuint program, GLint location, GLfloat *params);
928 typedef void (WINE_GLAPI *PGLFNGETUNIFORMIVPROC)(GLuint program, GLint location, GLint *params);
929 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBDVPROC)(GLuint index, GLenum pname, GLdouble *params);
930 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBFVPROC)(GLuint index, GLenum pname, GLfloat *params);
931 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBIVPROC)(GLuint index, GLenum pname, GLint *params);
932 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBPOINTERVPROC)(GLuint index, GLenum pname, GLvoid* *pointer);
933 typedef GLboolean (WINE_GLAPI *PGLFNISPROGRAMPROC)(GLuint program);
934 typedef GLboolean (WINE_GLAPI *PGLFNISSHADERPROC)(GLuint shader);
935 typedef void (WINE_GLAPI *PGLFNLINKPROGRAMPROC)(GLuint program);
936 typedef void (WINE_GLAPI *PGLFNSHADERSOURCEPROC)(GLuint shader,
937 GLsizei count, const GLchar* *string, const GLint *length);
938 typedef void (WINE_GLAPI *PGLFNUSEPROGRAMPROC)(GLuint program);
939 typedef void (WINE_GLAPI *PGLFNUNIFORM1FPROC)(GLint location, GLfloat v0);
940 typedef void (WINE_GLAPI *PGLFNUNIFORM2FPROC)(GLint location, GLfloat v0, GLfloat v1);
941 typedef void (WINE_GLAPI *PGLFNUNIFORM3FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
942 typedef void (WINE_GLAPI *PGLFNUNIFORM4FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
943 typedef void (WINE_GLAPI *PGLFNUNIFORM1IPROC)(GLint location, GLint v0);
944 typedef void (WINE_GLAPI *PGLFNUNIFORM2IPROC)(GLint location, GLint v0, GLint v1);
945 typedef void (WINE_GLAPI *PGLFNUNIFORM3IPROC)(GLint location, GLint v0, GLint v1, GLint v2);
946 typedef void (WINE_GLAPI *PGLFNUNIFORM4IPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
947 typedef void (WINE_GLAPI *PGLFNUNIFORM1FVPROC)(GLint location, GLsizei count, const GLfloat *value);
948 typedef void (WINE_GLAPI *PGLFNUNIFORM2FVPROC)(GLint location, GLsizei count, const GLfloat *value);
949 typedef void (WINE_GLAPI *PGLFNUNIFORM3FVPROC)(GLint location, GLsizei count, const GLfloat *value);
950 typedef void (WINE_GLAPI *PGLFNUNIFORM4FVPROC)(GLint location, GLsizei count, const GLfloat *value);
951 typedef void (WINE_GLAPI *PGLFNUNIFORM1IVPROC)(GLint location, GLsizei count, const GLint *value);
952 typedef void (WINE_GLAPI *PGLFNUNIFORM2IVPROC)(GLint location, GLsizei count, const GLint *value);
953 typedef void (WINE_GLAPI *PGLFNUNIFORM3IVPROC)(GLint location, GLsizei count, const GLint *value);
954 typedef void (WINE_GLAPI *PGLFNUNIFORM4IVPROC)(GLint location, GLsizei count, const GLint *value);
955 typedef void (WINE_GLAPI *PGLFNUNIFORMMATRIX2FVPROC)(GLint location,
956 GLsizei count, GLboolean transpose, const GLfloat *value);
957 typedef void (WINE_GLAPI *PGLFNUNIFORMMATRIX3FVPROC)(GLint location,
958 GLsizei count, GLboolean transpose, const GLfloat *value);
959 typedef void (WINE_GLAPI *PGLFNUNIFORMMATRIX4FVPROC)(GLint location,
960 GLsizei count, GLboolean transpose, const GLfloat *value);
961 typedef void (WINE_GLAPI *PGLFNVALIDATEPROGRAMPROC)(GLuint program);
962 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1DPROC)(GLuint index, GLdouble x);
963 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1DVPROC)(GLuint index, const GLdouble *v);
964 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1FPROC)(GLuint index, GLfloat x);
965 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1FVPROC)(GLuint index, const GLfloat *v);
966 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1SPROC)(GLuint index, GLshort x);
967 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1SVPROC)(GLuint index, const GLshort *v);
968 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2DPROC)(GLuint index, GLdouble x, GLdouble y);
969 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2DVPROC)(GLuint index, const GLdouble *v);
970 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2FPROC)(GLuint index, GLfloat x, GLfloat y);
971 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2FVPROC)(GLuint index, const GLfloat *v);
972 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2SPROC)(GLuint index, GLshort x, GLshort y);
973 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2SVPROC)(GLuint index, const GLshort *v);
974 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
975 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3DVPROC)(GLuint index, const GLdouble *v);
976 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
977 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3FVPROC)(GLuint index, const GLfloat *v);
978 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3SPROC)(GLuint index, GLshort x, GLshort y, GLshort z);
979 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3SVPROC)(GLuint index, const GLshort *v);
980 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NBVPROC)(GLuint index, const GLbyte *v);
981 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NIVPROC)(GLuint index, const GLint *v);
982 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NSVPROC)(GLuint index, const GLshort *v);
983 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUBPROC)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
984 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUBVPROC)(GLuint index, const GLubyte *v);
985 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUIVPROC)(GLuint index, const GLuint *v);
986 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUSVPROC)(GLuint index, const GLushort *v);
987 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4BVPROC)(GLuint index, const GLbyte *v);
988 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
989 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4DVPROC)(GLuint index, const GLdouble *v);
990 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
991 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4FVPROC)(GLuint index, const GLfloat *v);
992 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4IVPROC)(GLuint index, const GLint *v);
993 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4SPROC)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
994 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4SVPROC)(GLuint index, const GLshort *v);
995 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4UBVPROC)(GLuint index, const GLubyte *v);
996 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4UIVPROC)(GLuint index, const GLuint *v);
997 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4USVPROC)(GLuint index, const GLushort *v);
998 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBPOINTERPROC)(GLuint index,
999 GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
1001 void (WINE_GLAPI *glAccum)(GLenum op, GLfloat value) DECLSPEC_HIDDEN;
1002 void (WINE_GLAPI *glAlphaFunc)(GLenum func, GLclampf ref) DECLSPEC_HIDDEN;
1003 GLboolean (WINE_GLAPI *glAreTexturesResident)(GLsizei n, const GLuint *textures, GLboolean *residences) DECLSPEC_HIDDEN;
1004 void (WINE_GLAPI *glArrayElement)(GLint i) DECLSPEC_HIDDEN;
1005 void (WINE_GLAPI *glBegin)(GLenum mode) DECLSPEC_HIDDEN;
1006 void (WINE_GLAPI *glBindTexture)(GLenum target, GLuint texture) DECLSPEC_HIDDEN;
1007 void (WINE_GLAPI *glBitmap)(GLsizei width, GLsizei height, GLfloat xorig,
1008 GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap) DECLSPEC_HIDDEN;
1009 void (WINE_GLAPI *glBlendFunc)(GLenum sfactor, GLenum dfactor) DECLSPEC_HIDDEN;
1010 void (WINE_GLAPI *glCallList)(GLuint list) DECLSPEC_HIDDEN;
1011 void (WINE_GLAPI *glCallLists)(GLsizei n, GLenum type, const GLvoid *lists) DECLSPEC_HIDDEN;
1012 void (WINE_GLAPI *glClear)(GLbitfield mask) DECLSPEC_HIDDEN;
1013 void (WINE_GLAPI *glClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) DECLSPEC_HIDDEN;
1014 void (WINE_GLAPI *glClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) DECLSPEC_HIDDEN;
1015 void (WINE_GLAPI *glClearDepth)(GLclampd depth) DECLSPEC_HIDDEN;
1016 void (WINE_GLAPI *glClearIndex)(GLfloat c) DECLSPEC_HIDDEN;
1017 void (WINE_GLAPI *glClearStencil)(GLint s) DECLSPEC_HIDDEN;
1018 void (WINE_GLAPI *glClipPlane)(GLenum plane, const GLdouble *equation) DECLSPEC_HIDDEN;
1019 void (WINE_GLAPI *glColor3b)(GLbyte red, GLbyte green, GLbyte blue) DECLSPEC_HIDDEN;
1020 void (WINE_GLAPI *glColor3bv)(const GLbyte *v) DECLSPEC_HIDDEN;
1021 void (WINE_GLAPI *glColor3d)(GLdouble red, GLdouble green, GLdouble blue) DECLSPEC_HIDDEN;
1022 void (WINE_GLAPI *glColor3dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1023 void (WINE_GLAPI *glColor3f)(GLfloat red, GLfloat green, GLfloat blue) DECLSPEC_HIDDEN;
1024 void (WINE_GLAPI *glColor3fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1025 void (WINE_GLAPI *glColor3i)(GLint red, GLint green, GLint blue) DECLSPEC_HIDDEN;
1026 void (WINE_GLAPI *glColor3iv)(const GLint *v) DECLSPEC_HIDDEN;
1027 void (WINE_GLAPI *glColor3s)(GLshort red, GLshort green, GLshort blue) DECLSPEC_HIDDEN;
1028 void (WINE_GLAPI *glColor3sv)(const GLshort *v) DECLSPEC_HIDDEN;
1029 void (WINE_GLAPI *glColor3ub)(GLubyte red, GLubyte green, GLubyte blue) DECLSPEC_HIDDEN;
1030 void (WINE_GLAPI *glColor3ubv)(const GLubyte *v) DECLSPEC_HIDDEN;
1031 void (WINE_GLAPI *glColor3ui)(GLuint red, GLuint green, GLuint blue) DECLSPEC_HIDDEN;
1032 void (WINE_GLAPI *glColor3uiv)(const GLuint *v) DECLSPEC_HIDDEN;
1033 void (WINE_GLAPI *glColor3us)(GLushort red, GLushort green, GLushort blue) DECLSPEC_HIDDEN;
1034 void (WINE_GLAPI *glColor3usv)(const GLushort *v) DECLSPEC_HIDDEN;
1035 void (WINE_GLAPI *glColor4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha) DECLSPEC_HIDDEN;
1036 void (WINE_GLAPI *glColor4bv)(const GLbyte *v) DECLSPEC_HIDDEN;
1037 void (WINE_GLAPI *glColor4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha) DECLSPEC_HIDDEN;
1038 void (WINE_GLAPI *glColor4dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1039 void (WINE_GLAPI *glColor4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) DECLSPEC_HIDDEN;
1040 void (WINE_GLAPI *glColor4fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1041 void (WINE_GLAPI *glColor4i)(GLint red, GLint green, GLint blue, GLint alpha) DECLSPEC_HIDDEN;
1042 void (WINE_GLAPI *glColor4iv)(const GLint *v) DECLSPEC_HIDDEN;
1043 void (WINE_GLAPI *glColor4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha) DECLSPEC_HIDDEN;
1044 void (WINE_GLAPI *glColor4sv)(const GLshort *v) DECLSPEC_HIDDEN;
1045 void (WINE_GLAPI *glColor4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha) DECLSPEC_HIDDEN;
1046 void (WINE_GLAPI *glColor4ubv)(const GLubyte *v) DECLSPEC_HIDDEN;
1047 void (WINE_GLAPI *glColor4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha) DECLSPEC_HIDDEN;
1048 void (WINE_GLAPI *glColor4uiv)(const GLuint *v) DECLSPEC_HIDDEN;
1049 void (WINE_GLAPI *glColor4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha) DECLSPEC_HIDDEN;
1050 void (WINE_GLAPI *glColor4usv)(const GLushort *v) DECLSPEC_HIDDEN;
1051 void (WINE_GLAPI *glColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) DECLSPEC_HIDDEN;
1052 void (WINE_GLAPI *glColorMaterial)(GLenum face, GLenum mode) DECLSPEC_HIDDEN;
1053 void (WINE_GLAPI *glColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1054 void (WINE_GLAPI *glCopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type) DECLSPEC_HIDDEN;
1055 void (WINE_GLAPI *glCopyTexImage1D)(GLenum target, GLint level,
1056 GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border) DECLSPEC_HIDDEN;
1057 void (WINE_GLAPI *glCopyTexImage2D)(GLenum target, GLint level,
1058 GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) DECLSPEC_HIDDEN;
1059 void (WINE_GLAPI *glCopyTexSubImage1D)(GLenum target, GLint level,
1060 GLint xoffset, GLint x, GLint y, GLsizei width) DECLSPEC_HIDDEN;
1061 void (WINE_GLAPI *glCopyTexSubImage2D)(GLenum target, GLint level,
1062 GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLSPEC_HIDDEN;
1063 void (WINE_GLAPI *glCullFace)(GLenum mode) DECLSPEC_HIDDEN;
1064 void (WINE_GLAPI *glDeleteLists)(GLuint list, GLsizei range) DECLSPEC_HIDDEN;
1065 void (WINE_GLAPI *glDeleteTextures)(GLsizei n, const GLuint *textures) DECLSPEC_HIDDEN;
1066 void (WINE_GLAPI *glDepthFunc)(GLenum func) DECLSPEC_HIDDEN;
1067 void (WINE_GLAPI *glDepthMask)(GLboolean flag) DECLSPEC_HIDDEN;
1068 void (WINE_GLAPI *glDepthRange)(GLclampd nearParam, GLclampd farParam) DECLSPEC_HIDDEN;
1069 void (WINE_GLAPI *glDisable)(GLenum cap) DECLSPEC_HIDDEN;
1070 void (WINE_GLAPI *glDisableWINE)(GLenum cap) DECLSPEC_HIDDEN;
1071 void (WINE_GLAPI *glDisableClientState)(GLenum array) DECLSPEC_HIDDEN;
1072 void (WINE_GLAPI *glDrawArrays)(GLenum mode, GLint first, GLsizei count) DECLSPEC_HIDDEN;
1073 void (WINE_GLAPI *glDrawBuffer)(GLenum mode) DECLSPEC_HIDDEN;
1074 void (WINE_GLAPI *glDrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) DECLSPEC_HIDDEN;
1075 void (WINE_GLAPI *glDrawPixels)(GLsizei width, GLsizei height, GLenum format,
1076 GLenum type, const GLvoid *pixels) DECLSPEC_HIDDEN;
1077 void (WINE_GLAPI *glEdgeFlag)(GLboolean flag) DECLSPEC_HIDDEN;
1078 void (WINE_GLAPI *glEdgeFlagPointer)(GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1079 void (WINE_GLAPI *glEdgeFlagv)(const GLboolean *flag) DECLSPEC_HIDDEN;
1080 void (WINE_GLAPI *glEnable)(GLenum cap) DECLSPEC_HIDDEN;
1081 void (WINE_GLAPI *glEnableWINE)(GLenum cap) DECLSPEC_HIDDEN;
1082 void (WINE_GLAPI *glEnableClientState)(GLenum array) DECLSPEC_HIDDEN;
1083 void (WINE_GLAPI *glEnd)(void) DECLSPEC_HIDDEN;
1084 void (WINE_GLAPI *glEndList)(void) DECLSPEC_HIDDEN;
1085 void (WINE_GLAPI *glEvalCoord1d)(GLdouble u) DECLSPEC_HIDDEN;
1086 void (WINE_GLAPI *glEvalCoord1dv)(const GLdouble *u) DECLSPEC_HIDDEN;
1087 void (WINE_GLAPI *glEvalCoord1f)(GLfloat u) DECLSPEC_HIDDEN;
1088 void (WINE_GLAPI *glEvalCoord1fv)(const GLfloat *u) DECLSPEC_HIDDEN;
1089 void (WINE_GLAPI *glEvalCoord2d)(GLdouble u, GLdouble v) DECLSPEC_HIDDEN;
1090 void (WINE_GLAPI *glEvalCoord2dv)(const GLdouble *u) DECLSPEC_HIDDEN;
1091 void (WINE_GLAPI *glEvalCoord2f)(GLfloat u, GLfloat v) DECLSPEC_HIDDEN;
1092 void (WINE_GLAPI *glEvalCoord2fv)(const GLfloat *u) DECLSPEC_HIDDEN;
1093 void (WINE_GLAPI *glEvalMesh1)(GLenum mode, GLint i1, GLint i2) DECLSPEC_HIDDEN;
1094 void (WINE_GLAPI *glEvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2) DECLSPEC_HIDDEN;
1095 void (WINE_GLAPI *glEvalPoint1)(GLint i) DECLSPEC_HIDDEN;
1096 void (WINE_GLAPI *glEvalPoint2)(GLint i, GLint j) DECLSPEC_HIDDEN;
1097 void (WINE_GLAPI *glFeedbackBuffer)(GLsizei size, GLenum type, GLfloat *buffer) DECLSPEC_HIDDEN;
1098 void (WINE_GLAPI *glFogf)(GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1099 void (WINE_GLAPI *glFogfv)(GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1100 void (WINE_GLAPI *glFogi)(GLenum pname, GLint param) DECLSPEC_HIDDEN;
1101 void (WINE_GLAPI *glFogiv)(GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1102 void (WINE_GLAPI *glFrontFace)(GLenum mode) DECLSPEC_HIDDEN;
1103 void (WINE_GLAPI *glFrustum)(GLdouble left, GLdouble right, GLdouble bottom,
1104 GLdouble top, GLdouble zNear, GLdouble zFar) DECLSPEC_HIDDEN;
1105 GLuint (WINE_GLAPI *glGenLists)(GLsizei range) DECLSPEC_HIDDEN;
1106 void (WINE_GLAPI *glGenTextures)(GLsizei n, GLuint *textures) DECLSPEC_HIDDEN;
1107 void (WINE_GLAPI *glGetBooleanv)(GLenum pname, GLboolean *params) DECLSPEC_HIDDEN;
1108 void (WINE_GLAPI *glGetClipPlane)(GLenum plane, GLdouble *equation) DECLSPEC_HIDDEN;
1109 void (WINE_GLAPI *glGetDoublev)(GLenum pname, GLdouble *params) DECLSPEC_HIDDEN;
1110 GLenum (WINE_GLAPI *glGetError)(void) DECLSPEC_HIDDEN;
1111 void (WINE_GLAPI *glGetFloatv)(GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1112 void (WINE_GLAPI *glGetIntegerv)(GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1113 void (WINE_GLAPI *glGetLightfv)(GLenum light, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1114 void (WINE_GLAPI *glGetLightiv)(GLenum light, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1115 void (WINE_GLAPI *glGetMapdv)(GLenum target, GLenum query, GLdouble *v) DECLSPEC_HIDDEN;
1116 void (WINE_GLAPI *glGetMapfv)(GLenum target, GLenum query, GLfloat *v) DECLSPEC_HIDDEN;
1117 void (WINE_GLAPI *glGetMapiv)(GLenum target, GLenum query, GLint *v) DECLSPEC_HIDDEN;
1118 void (WINE_GLAPI *glGetMaterialfv)(GLenum face, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1119 void (WINE_GLAPI *glGetMaterialiv)(GLenum face, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1120 void (WINE_GLAPI *glGetPixelMapfv)(GLenum map, GLfloat *values) DECLSPEC_HIDDEN;
1121 void (WINE_GLAPI *glGetPixelMapuiv)(GLenum map, GLuint *values) DECLSPEC_HIDDEN;
1122 void (WINE_GLAPI *glGetPixelMapusv)(GLenum map, GLushort *values) DECLSPEC_HIDDEN;
1123 void (WINE_GLAPI *glGetPointerv)(GLenum pname, GLvoid **params) DECLSPEC_HIDDEN;
1124 void (WINE_GLAPI *glGetPolygonStipple)(GLubyte *mask) DECLSPEC_HIDDEN;
1125 const GLubyte * (WINE_GLAPI *glGetString)(GLenum name) DECLSPEC_HIDDEN;
1126 void (WINE_GLAPI *glGetTexEnvfv)(GLenum target, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1127 void (WINE_GLAPI *glGetTexEnviv)(GLenum target, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1128 void (WINE_GLAPI *glGetTexGendv)(GLenum coord, GLenum pname, GLdouble *params) DECLSPEC_HIDDEN;
1129 void (WINE_GLAPI *glGetTexGenfv)(GLenum coord, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1130 void (WINE_GLAPI *glGetTexGeniv)(GLenum coord, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1131 void (WINE_GLAPI *glGetTexImage)(GLenum target, GLint level, GLenum format,
1132 GLenum type, GLvoid *pixels) DECLSPEC_HIDDEN;
1133 void (WINE_GLAPI *glGetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1134 void (WINE_GLAPI *glGetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1135 void (WINE_GLAPI *glGetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params) DECLSPEC_HIDDEN;
1136 void (WINE_GLAPI *glGetTexParameteriv)(GLenum target, GLenum pname, GLint *params) DECLSPEC_HIDDEN;
1137 void (WINE_GLAPI *glHint)(GLenum target, GLenum mode) DECLSPEC_HIDDEN;
1138 void (WINE_GLAPI *glIndexMask)(GLuint mask) DECLSPEC_HIDDEN;
1139 void (WINE_GLAPI *glIndexPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1140 void (WINE_GLAPI *glIndexd)(GLdouble c) DECLSPEC_HIDDEN;
1141 void (WINE_GLAPI *glIndexdv)(const GLdouble *c) DECLSPEC_HIDDEN;
1142 void (WINE_GLAPI *glIndexf)(GLfloat c) DECLSPEC_HIDDEN;
1143 void (WINE_GLAPI *glIndexfv)(const GLfloat *c) DECLSPEC_HIDDEN;
1144 void (WINE_GLAPI *glIndexi)(GLint c) DECLSPEC_HIDDEN;
1145 void (WINE_GLAPI *glIndexiv)(const GLint *c) DECLSPEC_HIDDEN;
1146 void (WINE_GLAPI *glIndexs)(GLshort c) DECLSPEC_HIDDEN;
1147 void (WINE_GLAPI *glIndexsv)(const GLshort *c) DECLSPEC_HIDDEN;
1148 void (WINE_GLAPI *glIndexub)(GLubyte c) DECLSPEC_HIDDEN;
1149 void (WINE_GLAPI *glIndexubv)(const GLubyte *c) DECLSPEC_HIDDEN;
1150 void (WINE_GLAPI *glInitNames)(void) DECLSPEC_HIDDEN;
1151 void (WINE_GLAPI *glInterleavedArrays)(GLenum format, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1152 GLboolean (WINE_GLAPI *glIsEnabled)(GLenum cap) DECLSPEC_HIDDEN;
1153 GLboolean (WINE_GLAPI *glIsList)(GLuint list) DECLSPEC_HIDDEN;
1154 GLboolean (WINE_GLAPI *glIsTexture)(GLuint texture) DECLSPEC_HIDDEN;
1155 void (WINE_GLAPI *glLightModelf)(GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1156 void (WINE_GLAPI *glLightModelfv)(GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1157 void (WINE_GLAPI *glLightModeli)(GLenum pname, GLint param) DECLSPEC_HIDDEN;
1158 void (WINE_GLAPI *glLightModeliv)(GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1159 void (WINE_GLAPI *glLightf)(GLenum light, GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1160 void (WINE_GLAPI *glLightfv)(GLenum light, GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1161 void (WINE_GLAPI *glLighti)(GLenum light, GLenum pname, GLint param) DECLSPEC_HIDDEN;
1162 void (WINE_GLAPI *glLightiv)(GLenum light, GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1163 void (WINE_GLAPI *glLineStipple)(GLint factor, GLushort pattern) DECLSPEC_HIDDEN;
1164 void (WINE_GLAPI *glLineWidth)(GLfloat width) DECLSPEC_HIDDEN;
1165 void (WINE_GLAPI *glListBase)(GLuint base) DECLSPEC_HIDDEN;
1166 void (WINE_GLAPI *glLoadIdentity)(void) DECLSPEC_HIDDEN;
1167 void (WINE_GLAPI *glLoadMatrixd)(const GLdouble *m) DECLSPEC_HIDDEN;
1168 void (WINE_GLAPI *glLoadMatrixf)(const GLfloat *m) DECLSPEC_HIDDEN;
1169 void (WINE_GLAPI *glLoadName)(GLuint name) DECLSPEC_HIDDEN;
1170 void (WINE_GLAPI *glLogicOp)(GLenum opcode) DECLSPEC_HIDDEN;
1171 void (WINE_GLAPI *glMap1d)(GLenum target, GLdouble u1, GLdouble u2,
1172 GLint stride, GLint order, const GLdouble *points) DECLSPEC_HIDDEN;
1173 void (WINE_GLAPI *glMap1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride,
1174 GLint order, const GLfloat *points) DECLSPEC_HIDDEN;
1175 void (WINE_GLAPI *glMap2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
1176 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points) DECLSPEC_HIDDEN;
1177 void (WINE_GLAPI *glMap2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
1178 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points) DECLSPEC_HIDDEN;
1179 void (WINE_GLAPI *glMapGrid1d)(GLint un, GLdouble u1, GLdouble u2) DECLSPEC_HIDDEN;
1180 void (WINE_GLAPI *glMapGrid1f)(GLint un, GLfloat u1, GLfloat u2) DECLSPEC_HIDDEN;
1181 void (WINE_GLAPI *glMapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2) DECLSPEC_HIDDEN;
1182 void (WINE_GLAPI *glMapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2) DECLSPEC_HIDDEN;
1183 void (WINE_GLAPI *glMaterialf)(GLenum face, GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1184 void (WINE_GLAPI *glMaterialfv)(GLenum face, GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1185 void (WINE_GLAPI *glMateriali)(GLenum face, GLenum pname, GLint param) DECLSPEC_HIDDEN;
1186 void (WINE_GLAPI *glMaterialiv)(GLenum face, GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1187 void (WINE_GLAPI *glMatrixMode)(GLenum mode) DECLSPEC_HIDDEN;
1188 void (WINE_GLAPI *glMultMatrixd)(const GLdouble *m) DECLSPEC_HIDDEN;
1189 void (WINE_GLAPI *glMultMatrixf)(const GLfloat *m) DECLSPEC_HIDDEN;
1190 void (WINE_GLAPI *glNewList)(GLuint list, GLenum mode) DECLSPEC_HIDDEN;
1191 void (WINE_GLAPI *glNormal3b)(GLbyte nx, GLbyte ny, GLbyte nz) DECLSPEC_HIDDEN;
1192 void (WINE_GLAPI *glNormal3bv)(const GLbyte *v) DECLSPEC_HIDDEN;
1193 void (WINE_GLAPI *glNormal3d)(GLdouble nx, GLdouble ny, GLdouble nz) DECLSPEC_HIDDEN;
1194 void (WINE_GLAPI *glNormal3dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1195 void (WINE_GLAPI *glNormal3f)(GLfloat nx, GLfloat ny, GLfloat nz) DECLSPEC_HIDDEN;
1196 void (WINE_GLAPI *glNormal3fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1197 void (WINE_GLAPI *glNormal3i)(GLint nx, GLint ny, GLint nz) DECLSPEC_HIDDEN;
1198 void (WINE_GLAPI *glNormal3iv)(const GLint *v) DECLSPEC_HIDDEN;
1199 void (WINE_GLAPI *glNormal3s)(GLshort nx, GLshort ny, GLshort nz) DECLSPEC_HIDDEN;
1200 void (WINE_GLAPI *glNormal3sv)(const GLshort *v) DECLSPEC_HIDDEN;
1201 void (WINE_GLAPI *glNormalPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1202 void (WINE_GLAPI *glOrtho)(GLdouble left, GLdouble right, GLdouble bottom,
1203 GLdouble top, GLdouble zNear, GLdouble zFar) DECLSPEC_HIDDEN;
1204 void (WINE_GLAPI *glPassThrough)(GLfloat token) DECLSPEC_HIDDEN;
1205 void (WINE_GLAPI *glPixelMapfv)(GLenum map, GLint mapsize, const GLfloat *values) DECLSPEC_HIDDEN;
1206 void (WINE_GLAPI *glPixelMapuiv)(GLenum map, GLint mapsize, const GLuint *values) DECLSPEC_HIDDEN;
1207 void (WINE_GLAPI *glPixelMapusv)(GLenum map, GLint mapsize, const GLushort *values) DECLSPEC_HIDDEN;
1208 void (WINE_GLAPI *glPixelStoref)(GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1209 void (WINE_GLAPI *glPixelStorei)(GLenum pname, GLint param) DECLSPEC_HIDDEN;
1210 void (WINE_GLAPI *glPixelTransferf)(GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1211 void (WINE_GLAPI *glPixelTransferi)(GLenum pname, GLint param) DECLSPEC_HIDDEN;
1212 void (WINE_GLAPI *glPixelZoom)(GLfloat xfactor, GLfloat yfactor) DECLSPEC_HIDDEN;
1213 void (WINE_GLAPI *glPointSize)(GLfloat size) DECLSPEC_HIDDEN;
1214 void (WINE_GLAPI *glPolygonMode)(GLenum face, GLenum mode) DECLSPEC_HIDDEN;
1215 void (WINE_GLAPI *glPolygonOffset)(GLfloat factor, GLfloat units) DECLSPEC_HIDDEN;
1216 void (WINE_GLAPI *glPolygonStipple)(const GLubyte *mask) DECLSPEC_HIDDEN;
1217 void (WINE_GLAPI *glPopAttrib)(void) DECLSPEC_HIDDEN;
1218 void (WINE_GLAPI *glPopClientAttrib)(void) DECLSPEC_HIDDEN;
1219 void (WINE_GLAPI *glPopMatrix)(void) DECLSPEC_HIDDEN;
1220 void (WINE_GLAPI *glPopName)(void) DECLSPEC_HIDDEN;
1221 void (WINE_GLAPI *glPrioritizeTextures)(GLsizei n, const GLuint *textures, const GLclampf *priorities) DECLSPEC_HIDDEN;
1222 void (WINE_GLAPI *glPushAttrib)(GLbitfield mask) DECLSPEC_HIDDEN;
1223 void (WINE_GLAPI *glPushClientAttrib)(GLbitfield mask) DECLSPEC_HIDDEN;
1224 void (WINE_GLAPI *glPushMatrix)(void) DECLSPEC_HIDDEN;
1225 void (WINE_GLAPI *glPushName)(GLuint name) DECLSPEC_HIDDEN;
1226 void (WINE_GLAPI *glRasterPos2d)(GLdouble x, GLdouble y) DECLSPEC_HIDDEN;
1227 void (WINE_GLAPI *glRasterPos2dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1228 void (WINE_GLAPI *glRasterPos2f)(GLfloat x, GLfloat y) DECLSPEC_HIDDEN;
1229 void (WINE_GLAPI *glRasterPos2fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1230 void (WINE_GLAPI *glRasterPos2i)(GLint x, GLint y) DECLSPEC_HIDDEN;
1231 void (WINE_GLAPI *glRasterPos2iv)(const GLint *v) DECLSPEC_HIDDEN;
1232 void (WINE_GLAPI *glRasterPos2s)(GLshort x, GLshort y) DECLSPEC_HIDDEN;
1233 void (WINE_GLAPI *glRasterPos2sv)(const GLshort *v) DECLSPEC_HIDDEN;
1234 void (WINE_GLAPI *glRasterPos3d)(GLdouble x, GLdouble y, GLdouble z) DECLSPEC_HIDDEN;
1235 void (WINE_GLAPI *glRasterPos3dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1236 void (WINE_GLAPI *glRasterPos3f)(GLfloat x, GLfloat y, GLfloat z) DECLSPEC_HIDDEN;
1237 void (WINE_GLAPI *glRasterPos3fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1238 void (WINE_GLAPI *glRasterPos3i)(GLint x, GLint y, GLint z) DECLSPEC_HIDDEN;
1239 void (WINE_GLAPI *glRasterPos3iv)(const GLint *v) DECLSPEC_HIDDEN;
1240 void (WINE_GLAPI *glRasterPos3s)(GLshort x, GLshort y, GLshort z) DECLSPEC_HIDDEN;
1241 void (WINE_GLAPI *glRasterPos3sv)(const GLshort *v) DECLSPEC_HIDDEN;
1242 void (WINE_GLAPI *glRasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLSPEC_HIDDEN;
1243 void (WINE_GLAPI *glRasterPos4dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1244 void (WINE_GLAPI *glRasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLSPEC_HIDDEN;
1245 void (WINE_GLAPI *glRasterPos4fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1246 void (WINE_GLAPI *glRasterPos4i)(GLint x, GLint y, GLint z, GLint w) DECLSPEC_HIDDEN;
1247 void (WINE_GLAPI *glRasterPos4iv)(const GLint *v) DECLSPEC_HIDDEN;
1248 void (WINE_GLAPI *glRasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w) DECLSPEC_HIDDEN;
1249 void (WINE_GLAPI *glRasterPos4sv)(const GLshort *v) DECLSPEC_HIDDEN;
1250 void (WINE_GLAPI *glReadBuffer)(GLenum mode) DECLSPEC_HIDDEN;
1251 void (WINE_GLAPI *glReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height,
1252 GLenum format, GLenum type, GLvoid *pixels) DECLSPEC_HIDDEN;
1253 void (WINE_GLAPI *glRectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2) DECLSPEC_HIDDEN;
1254 void (WINE_GLAPI *glRectdv)(const GLdouble *v1, const GLdouble *v2) DECLSPEC_HIDDEN;
1255 void (WINE_GLAPI *glRectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2) DECLSPEC_HIDDEN;
1256 void (WINE_GLAPI *glRectfv)(const GLfloat *v1, const GLfloat *v2) DECLSPEC_HIDDEN;
1257 void (WINE_GLAPI *glRecti)(GLint x1, GLint y1, GLint x2, GLint y2) DECLSPEC_HIDDEN;
1258 void (WINE_GLAPI *glRectiv)(const GLint *v1, const GLint *v2) DECLSPEC_HIDDEN;
1259 void (WINE_GLAPI *glRects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2) DECLSPEC_HIDDEN;
1260 void (WINE_GLAPI *glRectsv)(const GLshort *v1, const GLshort *v2) DECLSPEC_HIDDEN;
1261 GLint (WINE_GLAPI *glRenderMode)(GLenum mode) DECLSPEC_HIDDEN;
1262 void (WINE_GLAPI *glRotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z) DECLSPEC_HIDDEN;
1263 void (WINE_GLAPI *glRotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z) DECLSPEC_HIDDEN;
1264 void (WINE_GLAPI *glScaled)(GLdouble x, GLdouble y, GLdouble z) DECLSPEC_HIDDEN;
1265 void (WINE_GLAPI *glScalef)(GLfloat x, GLfloat y, GLfloat z) DECLSPEC_HIDDEN;
1266 void (WINE_GLAPI *glScissor)(GLint x, GLint y, GLsizei width, GLsizei height) DECLSPEC_HIDDEN;
1267 void (WINE_GLAPI *glSelectBuffer)(GLsizei size, GLuint *buffer) DECLSPEC_HIDDEN;
1268 void (WINE_GLAPI *glShadeModel)(GLenum mode) DECLSPEC_HIDDEN;
1269 void (WINE_GLAPI *glStencilFunc)(GLenum func, GLint ref, GLuint mask) DECLSPEC_HIDDEN;
1270 void (WINE_GLAPI *glStencilMask)(GLuint mask) DECLSPEC_HIDDEN;
1271 void (WINE_GLAPI *glStencilOp)(GLenum fail, GLenum zfail, GLenum zpass) DECLSPEC_HIDDEN;
1272 void (WINE_GLAPI *glTexCoord1d)(GLdouble s) DECLSPEC_HIDDEN;
1273 void (WINE_GLAPI *glTexCoord1dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1274 void (WINE_GLAPI *glTexCoord1f)(GLfloat s) DECLSPEC_HIDDEN;
1275 void (WINE_GLAPI *glTexCoord1fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1276 void (WINE_GLAPI *glTexCoord1i)(GLint s) DECLSPEC_HIDDEN;
1277 void (WINE_GLAPI *glTexCoord1iv)(const GLint *v) DECLSPEC_HIDDEN;
1278 void (WINE_GLAPI *glTexCoord1s)(GLshort s) DECLSPEC_HIDDEN;
1279 void (WINE_GLAPI *glTexCoord1sv)(const GLshort *v) DECLSPEC_HIDDEN;
1280 void (WINE_GLAPI *glTexCoord2d)(GLdouble s, GLdouble t) DECLSPEC_HIDDEN;
1281 void (WINE_GLAPI *glTexCoord2dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1282 void (WINE_GLAPI *glTexCoord2f)(GLfloat s, GLfloat t) DECLSPEC_HIDDEN;
1283 void (WINE_GLAPI *glTexCoord2fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1284 void (WINE_GLAPI *glTexCoord2i)(GLint s, GLint t) DECLSPEC_HIDDEN;
1285 void (WINE_GLAPI *glTexCoord2iv)(const GLint *v) DECLSPEC_HIDDEN;
1286 void (WINE_GLAPI *glTexCoord2s)(GLshort s, GLshort t) DECLSPEC_HIDDEN;
1287 void (WINE_GLAPI *glTexCoord2sv)(const GLshort *v) DECLSPEC_HIDDEN;
1288 void (WINE_GLAPI *glTexCoord3d)(GLdouble s, GLdouble t, GLdouble r) DECLSPEC_HIDDEN;
1289 void (WINE_GLAPI *glTexCoord3dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1290 void (WINE_GLAPI *glTexCoord3f)(GLfloat s, GLfloat t, GLfloat r) DECLSPEC_HIDDEN;
1291 void (WINE_GLAPI *glTexCoord3fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1292 void (WINE_GLAPI *glTexCoord3i)(GLint s, GLint t, GLint r) DECLSPEC_HIDDEN;
1293 void (WINE_GLAPI *glTexCoord3iv)(const GLint *v) DECLSPEC_HIDDEN;
1294 void (WINE_GLAPI *glTexCoord3s)(GLshort s, GLshort t, GLshort r) DECLSPEC_HIDDEN;
1295 void (WINE_GLAPI *glTexCoord3sv)(const GLshort *v) DECLSPEC_HIDDEN;
1296 void (WINE_GLAPI *glTexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q) DECLSPEC_HIDDEN;
1297 void (WINE_GLAPI *glTexCoord4dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1298 void (WINE_GLAPI *glTexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q) DECLSPEC_HIDDEN;
1299 void (WINE_GLAPI *glTexCoord4fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1300 void (WINE_GLAPI *glTexCoord4i)(GLint s, GLint t, GLint r, GLint q) DECLSPEC_HIDDEN;
1301 void (WINE_GLAPI *glTexCoord4iv)(const GLint *v) DECLSPEC_HIDDEN;
1302 void (WINE_GLAPI *glTexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q) DECLSPEC_HIDDEN;
1303 void (WINE_GLAPI *glTexCoord4sv)(const GLshort *v) DECLSPEC_HIDDEN;
1304 void (WINE_GLAPI *glTexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1305 void (WINE_GLAPI *glTexEnvf)(GLenum target, GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1306 void (WINE_GLAPI *glTexEnvfv)(GLenum target, GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1307 void (WINE_GLAPI *glTexEnvi)(GLenum target, GLenum pname, GLint param) DECLSPEC_HIDDEN;
1308 void (WINE_GLAPI *glTexEnviv)(GLenum target, GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1309 void (WINE_GLAPI *glTexGend)(GLenum coord, GLenum pname, GLdouble param) DECLSPEC_HIDDEN;
1310 void (WINE_GLAPI *glTexGendv)(GLenum coord, GLenum pname, const GLdouble *params) DECLSPEC_HIDDEN;
1311 void (WINE_GLAPI *glTexGenf)(GLenum coord, GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1312 void (WINE_GLAPI *glTexGenfv)(GLenum coord, GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1313 void (WINE_GLAPI *glTexGeni)(GLenum coord, GLenum pname, GLint param) DECLSPEC_HIDDEN;
1314 void (WINE_GLAPI *glTexGeniv)(GLenum coord, GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1315 void (WINE_GLAPI *glTexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width,
1316 GLint border, GLenum format, GLenum type, const GLvoid *pixels) DECLSPEC_HIDDEN;
1317 void (WINE_GLAPI *glTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width,
1318 GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels) DECLSPEC_HIDDEN;
1319 void (WINE_GLAPI *glTexParameterf)(GLenum target, GLenum pname, GLfloat param) DECLSPEC_HIDDEN;
1320 void (WINE_GLAPI *glTexParameterfv)(GLenum target, GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1321 void (WINE_GLAPI *glTexParameteri)(GLenum target, GLenum pname, GLint param) DECLSPEC_HIDDEN;
1322 void (WINE_GLAPI *glTexParameteriv)(GLenum target, GLenum pname, const GLint *params) DECLSPEC_HIDDEN;
1323 void (WINE_GLAPI *glTexSubImage1D)(GLenum target, GLint level, GLint xoffset,
1324 GLsizei width, GLenum format, GLenum type, const GLvoid *pixels) DECLSPEC_HIDDEN;
1325 void (WINE_GLAPI *glTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset,
1326 GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) DECLSPEC_HIDDEN;
1327 void (WINE_GLAPI *glTranslated)(GLdouble x, GLdouble y, GLdouble z) DECLSPEC_HIDDEN;
1328 void (WINE_GLAPI *glTranslatef)(GLfloat x, GLfloat y, GLfloat z) DECLSPEC_HIDDEN;
1329 void (WINE_GLAPI *glVertex2d)(GLdouble x, GLdouble y) DECLSPEC_HIDDEN;
1330 void (WINE_GLAPI *glVertex2dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1331 void (WINE_GLAPI *glVertex2f)(GLfloat x, GLfloat y) DECLSPEC_HIDDEN;
1332 void (WINE_GLAPI *glVertex2fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1333 void (WINE_GLAPI *glVertex2i)(GLint x, GLint y) DECLSPEC_HIDDEN;
1334 void (WINE_GLAPI *glVertex2iv)(const GLint *v) DECLSPEC_HIDDEN;
1335 void (WINE_GLAPI *glVertex2s)(GLshort x, GLshort y) DECLSPEC_HIDDEN;
1336 void (WINE_GLAPI *glVertex2sv)(const GLshort *v) DECLSPEC_HIDDEN;
1337 void (WINE_GLAPI *glVertex3d)(GLdouble x, GLdouble y, GLdouble z) DECLSPEC_HIDDEN;
1338 void (WINE_GLAPI *glVertex3dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1339 void (WINE_GLAPI *glVertex3f)(GLfloat x, GLfloat y, GLfloat z) DECLSPEC_HIDDEN;
1340 void (WINE_GLAPI *glVertex3fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1341 void (WINE_GLAPI *glVertex3i)(GLint x, GLint y, GLint z) DECLSPEC_HIDDEN;
1342 void (WINE_GLAPI *glVertex3iv)(const GLint *v) DECLSPEC_HIDDEN;
1343 void (WINE_GLAPI *glVertex3s)(GLshort x, GLshort y, GLshort z) DECLSPEC_HIDDEN;
1344 void (WINE_GLAPI *glVertex3sv)(const GLshort *v) DECLSPEC_HIDDEN;
1345 void (WINE_GLAPI *glVertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLSPEC_HIDDEN;
1346 void (WINE_GLAPI *glVertex4dv)(const GLdouble *v) DECLSPEC_HIDDEN;
1347 void (WINE_GLAPI *glVertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLSPEC_HIDDEN;
1348 void (WINE_GLAPI *glVertex4fv)(const GLfloat *v) DECLSPEC_HIDDEN;
1349 void (WINE_GLAPI *glVertex4i)(GLint x, GLint y, GLint z, GLint w) DECLSPEC_HIDDEN;
1350 void (WINE_GLAPI *glVertex4iv)(const GLint *v) DECLSPEC_HIDDEN;
1351 void (WINE_GLAPI *glVertex4s)(GLshort x, GLshort y, GLshort z, GLshort w) DECLSPEC_HIDDEN;
1352 void (WINE_GLAPI *glVertex4sv)(const GLshort *v) DECLSPEC_HIDDEN;
1353 void (WINE_GLAPI *glVertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) DECLSPEC_HIDDEN;
1354 void (WINE_GLAPI *glViewport)(GLint x, GLint y, GLsizei width, GLsizei height) DECLSPEC_HIDDEN;
1355 void (WINE_GLAPI *glPointParameterfv)(GLenum pname, const GLfloat *params) DECLSPEC_HIDDEN;
1356 void (WINE_GLAPI *glPointParameteri)(GLenum name, GLint value) DECLSPEC_HIDDEN;
1358 /* glFinish and glFlush are always loaded from opengl32.dll, thus they always have
1359 * __stdcall calling convention.
1361 * They are wgl functions and must not be called inside the gl lock, give them a
1362 * name that makes this clear
1364 void (__stdcall *wglFinish)(void) DECLSPEC_HIDDEN;
1365 void (__stdcall *wglFlush)(void) DECLSPEC_HIDDEN;
1368 HGLRC (WINAPI *pwglCreateContext)(HDC) DECLSPEC_HIDDEN;
1369 BOOL (WINAPI *pwglDeleteContext)(HGLRC) DECLSPEC_HIDDEN;
1370 HGLRC (WINAPI *pwglGetCurrentContext)(void) DECLSPEC_HIDDEN;
1371 HDC (WINAPI *pwglGetCurrentDC)(void) DECLSPEC_HIDDEN;
1372 PROC (WINAPI *pwglGetProcAddress)(LPCSTR) DECLSPEC_HIDDEN;
1373 BOOL (WINAPI *pwglMakeCurrent)(HDC, HGLRC) DECLSPEC_HIDDEN;
1374 BOOL (WINAPI *pwglShareLists)(HGLRC, HGLRC) DECLSPEC_HIDDEN;
1376 #define GL_FUNCS_GEN \
1377 USE_GL_FUNC(glAccum) \
1378 USE_GL_FUNC(glAlphaFunc) \
1379 USE_GL_FUNC(glAreTexturesResident) \
1380 USE_GL_FUNC(glArrayElement) \
1381 USE_GL_FUNC(glBegin) \
1382 USE_GL_FUNC(glBindTexture) \
1383 USE_GL_FUNC(glBitmap) \
1384 USE_GL_FUNC(glBlendFunc) \
1385 USE_GL_FUNC(glCallList) \
1386 USE_GL_FUNC(glCallLists) \
1387 USE_GL_FUNC(glClear) \
1388 USE_GL_FUNC(glClearAccum) \
1389 USE_GL_FUNC(glClearColor) \
1390 USE_GL_FUNC(glClearDepth) \
1391 USE_GL_FUNC(glClearIndex) \
1392 USE_GL_FUNC(glClearStencil) \
1393 USE_GL_FUNC(glClipPlane) \
1394 USE_GL_FUNC(glColor3b) \
1395 USE_GL_FUNC(glColor3bv) \
1396 USE_GL_FUNC(glColor3d) \
1397 USE_GL_FUNC(glColor3dv) \
1398 USE_GL_FUNC(glColor3f) \
1399 USE_GL_FUNC(glColor3fv) \
1400 USE_GL_FUNC(glColor3i) \
1401 USE_GL_FUNC(glColor3iv) \
1402 USE_GL_FUNC(glColor3s) \
1403 USE_GL_FUNC(glColor3sv) \
1404 USE_GL_FUNC(glColor3ub) \
1405 USE_GL_FUNC(glColor3ubv) \
1406 USE_GL_FUNC(glColor3ui) \
1407 USE_GL_FUNC(glColor3uiv) \
1408 USE_GL_FUNC(glColor3us) \
1409 USE_GL_FUNC(glColor3usv) \
1410 USE_GL_FUNC(glColor4b) \
1411 USE_GL_FUNC(glColor4bv) \
1412 USE_GL_FUNC(glColor4d) \
1413 USE_GL_FUNC(glColor4dv) \
1414 USE_GL_FUNC(glColor4f) \
1415 USE_GL_FUNC(glColor4fv) \
1416 USE_GL_FUNC(glColor4i) \
1417 USE_GL_FUNC(glColor4iv) \
1418 USE_GL_FUNC(glColor4s) \
1419 USE_GL_FUNC(glColor4sv) \
1420 USE_GL_FUNC(glColor4ub) \
1421 USE_GL_FUNC(glColor4ubv) \
1422 USE_GL_FUNC(glColor4ui) \
1423 USE_GL_FUNC(glColor4uiv) \
1424 USE_GL_FUNC(glColor4us) \
1425 USE_GL_FUNC(glColor4usv) \
1426 USE_GL_FUNC(glColorMask) \
1427 USE_GL_FUNC(glColorMaterial) \
1428 USE_GL_FUNC(glColorPointer) \
1429 USE_GL_FUNC(glCopyPixels) \
1430 USE_GL_FUNC(glCopyTexImage1D) \
1431 USE_GL_FUNC(glCopyTexImage2D) \
1432 USE_GL_FUNC(glCopyTexSubImage1D) \
1433 USE_GL_FUNC(glCopyTexSubImage2D) \
1434 USE_GL_FUNC(glCullFace) \
1435 USE_GL_FUNC(glDeleteLists) \
1436 USE_GL_FUNC(glDeleteTextures) \
1437 USE_GL_FUNC(glDepthFunc) \
1438 USE_GL_FUNC(glDepthMask) \
1439 USE_GL_FUNC(glDepthRange) \
1440 USE_GL_FUNC(glDisable) \
1441 USE_GL_FUNC(glDisableClientState) \
1442 USE_GL_FUNC(glDrawArrays) \
1443 USE_GL_FUNC(glDrawBuffer) \
1444 USE_GL_FUNC(glDrawElements) \
1445 USE_GL_FUNC(glDrawPixels) \
1446 USE_GL_FUNC(glEdgeFlag) \
1447 USE_GL_FUNC(glEdgeFlagPointer) \
1448 USE_GL_FUNC(glEdgeFlagv) \
1449 USE_GL_FUNC(glEnable) \
1450 USE_GL_FUNC(glEnableClientState) \
1451 USE_GL_FUNC(glEnd) \
1452 USE_GL_FUNC(glEndList) \
1453 USE_GL_FUNC(glEvalCoord1d) \
1454 USE_GL_FUNC(glEvalCoord1dv) \
1455 USE_GL_FUNC(glEvalCoord1f) \
1456 USE_GL_FUNC(glEvalCoord1fv) \
1457 USE_GL_FUNC(glEvalCoord2d) \
1458 USE_GL_FUNC(glEvalCoord2dv) \
1459 USE_GL_FUNC(glEvalCoord2f) \
1460 USE_GL_FUNC(glEvalCoord2fv) \
1461 USE_GL_FUNC(glEvalMesh1) \
1462 USE_GL_FUNC(glEvalMesh2) \
1463 USE_GL_FUNC(glEvalPoint1) \
1464 USE_GL_FUNC(glEvalPoint2) \
1465 USE_GL_FUNC(glFeedbackBuffer) \
1466 USE_GL_FUNC(glFogf) \
1467 USE_GL_FUNC(glFogfv) \
1468 USE_GL_FUNC(glFogi) \
1469 USE_GL_FUNC(glFogiv) \
1470 USE_GL_FUNC(glFrontFace) \
1471 USE_GL_FUNC(glFrustum) \
1472 USE_GL_FUNC(glGenLists) \
1473 USE_GL_FUNC(glGenTextures) \
1474 USE_GL_FUNC(glGetBooleanv) \
1475 USE_GL_FUNC(glGetClipPlane) \
1476 USE_GL_FUNC(glGetDoublev) \
1477 USE_GL_FUNC(glGetError) \
1478 USE_GL_FUNC(glGetFloatv) \
1479 USE_GL_FUNC(glGetIntegerv) \
1480 USE_GL_FUNC(glGetLightfv) \
1481 USE_GL_FUNC(glGetLightiv) \
1482 USE_GL_FUNC(glGetMapdv) \
1483 USE_GL_FUNC(glGetMapfv) \
1484 USE_GL_FUNC(glGetMapiv) \
1485 USE_GL_FUNC(glGetMaterialfv) \
1486 USE_GL_FUNC(glGetMaterialiv) \
1487 USE_GL_FUNC(glGetPixelMapfv) \
1488 USE_GL_FUNC(glGetPixelMapuiv) \
1489 USE_GL_FUNC(glGetPixelMapusv) \
1490 USE_GL_FUNC(glGetPointerv) \
1491 USE_GL_FUNC(glGetPolygonStipple) \
1492 USE_GL_FUNC(glGetString) \
1493 USE_GL_FUNC(glGetTexEnvfv) \
1494 USE_GL_FUNC(glGetTexEnviv) \
1495 USE_GL_FUNC(glGetTexGendv) \
1496 USE_GL_FUNC(glGetTexGenfv) \
1497 USE_GL_FUNC(glGetTexGeniv) \
1498 USE_GL_FUNC(glGetTexImage) \
1499 USE_GL_FUNC(glGetTexLevelParameterfv) \
1500 USE_GL_FUNC(glGetTexLevelParameteriv) \
1501 USE_GL_FUNC(glGetTexParameterfv) \
1502 USE_GL_FUNC(glGetTexParameteriv) \
1503 USE_GL_FUNC(glHint) \
1504 USE_GL_FUNC(glIndexMask) \
1505 USE_GL_FUNC(glIndexPointer) \
1506 USE_GL_FUNC(glIndexd) \
1507 USE_GL_FUNC(glIndexdv) \
1508 USE_GL_FUNC(glIndexf) \
1509 USE_GL_FUNC(glIndexfv) \
1510 USE_GL_FUNC(glIndexi) \
1511 USE_GL_FUNC(glIndexiv) \
1512 USE_GL_FUNC(glIndexs) \
1513 USE_GL_FUNC(glIndexsv) \
1514 USE_GL_FUNC(glIndexub) \
1515 USE_GL_FUNC(glIndexubv) \
1516 USE_GL_FUNC(glInitNames) \
1517 USE_GL_FUNC(glInterleavedArrays) \
1518 USE_GL_FUNC(glIsEnabled) \
1519 USE_GL_FUNC(glIsList) \
1520 USE_GL_FUNC(glIsTexture) \
1521 USE_GL_FUNC(glLightModelf) \
1522 USE_GL_FUNC(glLightModelfv) \
1523 USE_GL_FUNC(glLightModeli) \
1524 USE_GL_FUNC(glLightModeliv) \
1525 USE_GL_FUNC(glLightf) \
1526 USE_GL_FUNC(glLightfv) \
1527 USE_GL_FUNC(glLighti) \
1528 USE_GL_FUNC(glLightiv) \
1529 USE_GL_FUNC(glLineStipple) \
1530 USE_GL_FUNC(glLineWidth) \
1531 USE_GL_FUNC(glListBase) \
1532 USE_GL_FUNC(glLoadIdentity) \
1533 USE_GL_FUNC(glLoadMatrixd) \
1534 USE_GL_FUNC(glLoadMatrixf) \
1535 USE_GL_FUNC(glLoadName) \
1536 USE_GL_FUNC(glLogicOp) \
1537 USE_GL_FUNC(glMap1d) \
1538 USE_GL_FUNC(glMap1f) \
1539 USE_GL_FUNC(glMap2d) \
1540 USE_GL_FUNC(glMap2f) \
1541 USE_GL_FUNC(glMapGrid1d) \
1542 USE_GL_FUNC(glMapGrid1f) \
1543 USE_GL_FUNC(glMapGrid2d) \
1544 USE_GL_FUNC(glMapGrid2f) \
1545 USE_GL_FUNC(glMaterialf) \
1546 USE_GL_FUNC(glMaterialfv) \
1547 USE_GL_FUNC(glMateriali) \
1548 USE_GL_FUNC(glMaterialiv) \
1549 USE_GL_FUNC(glMatrixMode) \
1550 USE_GL_FUNC(glMultMatrixd) \
1551 USE_GL_FUNC(glMultMatrixf) \
1552 USE_GL_FUNC(glNewList) \
1553 USE_GL_FUNC(glNormal3b) \
1554 USE_GL_FUNC(glNormal3bv) \
1555 USE_GL_FUNC(glNormal3d) \
1556 USE_GL_FUNC(glNormal3dv) \
1557 USE_GL_FUNC(glNormal3f) \
1558 USE_GL_FUNC(glNormal3fv) \
1559 USE_GL_FUNC(glNormal3i) \
1560 USE_GL_FUNC(glNormal3iv) \
1561 USE_GL_FUNC(glNormal3s) \
1562 USE_GL_FUNC(glNormal3sv) \
1563 USE_GL_FUNC(glNormalPointer) \
1564 USE_GL_FUNC(glOrtho) \
1565 USE_GL_FUNC(glPassThrough) \
1566 USE_GL_FUNC(glPixelMapfv) \
1567 USE_GL_FUNC(glPixelMapuiv) \
1568 USE_GL_FUNC(glPixelMapusv) \
1569 USE_GL_FUNC(glPixelStoref) \
1570 USE_GL_FUNC(glPixelStorei) \
1571 USE_GL_FUNC(glPixelTransferf) \
1572 USE_GL_FUNC(glPixelTransferi) \
1573 USE_GL_FUNC(glPixelZoom) \
1574 USE_GL_FUNC(glPointSize) \
1575 USE_GL_FUNC(glPolygonMode) \
1576 USE_GL_FUNC(glPolygonOffset) \
1577 USE_GL_FUNC(glPolygonStipple) \
1578 USE_GL_FUNC(glPopAttrib) \
1579 USE_GL_FUNC(glPopClientAttrib) \
1580 USE_GL_FUNC(glPopMatrix) \
1581 USE_GL_FUNC(glPopName) \
1582 USE_GL_FUNC(glPrioritizeTextures) \
1583 USE_GL_FUNC(glPushAttrib) \
1584 USE_GL_FUNC(glPushClientAttrib) \
1585 USE_GL_FUNC(glPushMatrix) \
1586 USE_GL_FUNC(glPushName) \
1587 USE_GL_FUNC(glRasterPos2d) \
1588 USE_GL_FUNC(glRasterPos2dv) \
1589 USE_GL_FUNC(glRasterPos2f) \
1590 USE_GL_FUNC(glRasterPos2fv) \
1591 USE_GL_FUNC(glRasterPos2i) \
1592 USE_GL_FUNC(glRasterPos2iv) \
1593 USE_GL_FUNC(glRasterPos2s) \
1594 USE_GL_FUNC(glRasterPos2sv) \
1595 USE_GL_FUNC(glRasterPos3d) \
1596 USE_GL_FUNC(glRasterPos3dv) \
1597 USE_GL_FUNC(glRasterPos3f) \
1598 USE_GL_FUNC(glRasterPos3fv) \
1599 USE_GL_FUNC(glRasterPos3i) \
1600 USE_GL_FUNC(glRasterPos3iv) \
1601 USE_GL_FUNC(glRasterPos3s) \
1602 USE_GL_FUNC(glRasterPos3sv) \
1603 USE_GL_FUNC(glRasterPos4d) \
1604 USE_GL_FUNC(glRasterPos4dv) \
1605 USE_GL_FUNC(glRasterPos4f) \
1606 USE_GL_FUNC(glRasterPos4fv) \
1607 USE_GL_FUNC(glRasterPos4i) \
1608 USE_GL_FUNC(glRasterPos4iv) \
1609 USE_GL_FUNC(glRasterPos4s) \
1610 USE_GL_FUNC(glRasterPos4sv) \
1611 USE_GL_FUNC(glReadBuffer) \
1612 USE_GL_FUNC(glReadPixels) \
1613 USE_GL_FUNC(glRectd) \
1614 USE_GL_FUNC(glRectdv) \
1615 USE_GL_FUNC(glRectf) \
1616 USE_GL_FUNC(glRectfv) \
1617 USE_GL_FUNC(glRecti) \
1618 USE_GL_FUNC(glRectiv) \
1619 USE_GL_FUNC(glRects) \
1620 USE_GL_FUNC(glRectsv) \
1621 USE_GL_FUNC(glRenderMode) \
1622 USE_GL_FUNC(glRotated) \
1623 USE_GL_FUNC(glRotatef) \
1624 USE_GL_FUNC(glScaled) \
1625 USE_GL_FUNC(glScalef) \
1626 USE_GL_FUNC(glScissor) \
1627 USE_GL_FUNC(glSelectBuffer) \
1628 USE_GL_FUNC(glShadeModel) \
1629 USE_GL_FUNC(glStencilFunc) \
1630 USE_GL_FUNC(glStencilMask) \
1631 USE_GL_FUNC(glStencilOp) \
1632 USE_GL_FUNC(glTexCoord1d) \
1633 USE_GL_FUNC(glTexCoord1dv) \
1634 USE_GL_FUNC(glTexCoord1f) \
1635 USE_GL_FUNC(glTexCoord1fv) \
1636 USE_GL_FUNC(glTexCoord1i) \
1637 USE_GL_FUNC(glTexCoord1iv) \
1638 USE_GL_FUNC(glTexCoord1s) \
1639 USE_GL_FUNC(glTexCoord1sv) \
1640 USE_GL_FUNC(glTexCoord2d) \
1641 USE_GL_FUNC(glTexCoord2dv) \
1642 USE_GL_FUNC(glTexCoord2f) \
1643 USE_GL_FUNC(glTexCoord2fv) \
1644 USE_GL_FUNC(glTexCoord2i) \
1645 USE_GL_FUNC(glTexCoord2iv) \
1646 USE_GL_FUNC(glTexCoord2s) \
1647 USE_GL_FUNC(glTexCoord2sv) \
1648 USE_GL_FUNC(glTexCoord3d) \
1649 USE_GL_FUNC(glTexCoord3dv) \
1650 USE_GL_FUNC(glTexCoord3f) \
1651 USE_GL_FUNC(glTexCoord3fv) \
1652 USE_GL_FUNC(glTexCoord3i) \
1653 USE_GL_FUNC(glTexCoord3iv) \
1654 USE_GL_FUNC(glTexCoord3s) \
1655 USE_GL_FUNC(glTexCoord3sv) \
1656 USE_GL_FUNC(glTexCoord4d) \
1657 USE_GL_FUNC(glTexCoord4dv) \
1658 USE_GL_FUNC(glTexCoord4f) \
1659 USE_GL_FUNC(glTexCoord4fv) \
1660 USE_GL_FUNC(glTexCoord4i) \
1661 USE_GL_FUNC(glTexCoord4iv) \
1662 USE_GL_FUNC(glTexCoord4s) \
1663 USE_GL_FUNC(glTexCoord4sv) \
1664 USE_GL_FUNC(glTexCoordPointer) \
1665 USE_GL_FUNC(glTexEnvf) \
1666 USE_GL_FUNC(glTexEnvfv) \
1667 USE_GL_FUNC(glTexEnvi) \
1668 USE_GL_FUNC(glTexEnviv) \
1669 USE_GL_FUNC(glTexGend) \
1670 USE_GL_FUNC(glTexGendv) \
1671 USE_GL_FUNC(glTexGenf) \
1672 USE_GL_FUNC(glTexGenfv) \
1673 USE_GL_FUNC(glTexGeni) \
1674 USE_GL_FUNC(glTexGeniv) \
1675 USE_GL_FUNC(glTexImage1D) \
1676 USE_GL_FUNC(glTexImage2D) \
1677 USE_GL_FUNC(glTexParameterf) \
1678 USE_GL_FUNC(glTexParameterfv) \
1679 USE_GL_FUNC(glTexParameteri) \
1680 USE_GL_FUNC(glTexParameteriv) \
1681 USE_GL_FUNC(glTexSubImage1D) \
1682 USE_GL_FUNC(glTexSubImage2D) \
1683 USE_GL_FUNC(glTranslated) \
1684 USE_GL_FUNC(glTranslatef) \
1685 USE_GL_FUNC(glVertex2d) \
1686 USE_GL_FUNC(glVertex2dv) \
1687 USE_GL_FUNC(glVertex2f) \
1688 USE_GL_FUNC(glVertex2fv) \
1689 USE_GL_FUNC(glVertex2i) \
1690 USE_GL_FUNC(glVertex2iv) \
1691 USE_GL_FUNC(glVertex2s) \
1692 USE_GL_FUNC(glVertex2sv) \
1693 USE_GL_FUNC(glVertex3d) \
1694 USE_GL_FUNC(glVertex3dv) \
1695 USE_GL_FUNC(glVertex3f) \
1696 USE_GL_FUNC(glVertex3fv) \
1697 USE_GL_FUNC(glVertex3i) \
1698 USE_GL_FUNC(glVertex3iv) \
1699 USE_GL_FUNC(glVertex3s) \
1700 USE_GL_FUNC(glVertex3sv) \
1701 USE_GL_FUNC(glVertex4d) \
1702 USE_GL_FUNC(glVertex4dv) \
1703 USE_GL_FUNC(glVertex4f) \
1704 USE_GL_FUNC(glVertex4fv) \
1705 USE_GL_FUNC(glVertex4i) \
1706 USE_GL_FUNC(glVertex4iv) \
1707 USE_GL_FUNC(glVertex4s) \
1708 USE_GL_FUNC(glVertex4sv) \
1709 USE_GL_FUNC(glVertexPointer) \
1710 USE_GL_FUNC(glViewport) \
1711 USE_GL_FUNC(glPointParameterfv) \
1712 USE_GL_FUNC(glPointParameteri) \
1714 #define WGL_FUNCS_GEN \
1715 USE_WGL_FUNC(wglCreateContext) \
1716 USE_WGL_FUNC(wglDeleteContext) \
1717 USE_WGL_FUNC(wglGetCurrentContext) \
1718 USE_WGL_FUNC(wglGetCurrentDC) \
1719 USE_WGL_FUNC(wglGetProcAddress) \
1720 USE_WGL_FUNC(wglMakeCurrent) \
1721 USE_WGL_FUNC(wglShareLists)
1723 /* OpenGL extensions. */
1724 typedef enum wined3d_gl_extension
1726 WINED3D_GL_EXT_NONE,
1729 APPLE_CLIENT_STORAGE,
1732 APPLE_FLUSH_BUFFER_RANGE,
1736 ARB_COLOR_BUFFER_FLOAT,
1737 ARB_DEPTH_BUFFER_FLOAT,
1741 ARB_FRAGMENT_PROGRAM,
1742 ARB_FRAGMENT_SHADER,
1743 ARB_FRAMEBUFFER_OBJECT,
1744 ARB_GEOMETRY_SHADER4,
1745 ARB_HALF_FLOAT_PIXEL,
1746 ARB_HALF_FLOAT_VERTEX,
1748 ARB_MAP_BUFFER_RANGE,
1751 ARB_OCCLUSION_QUERY,
1752 ARB_PIXEL_BUFFER_OBJECT,
1753 ARB_POINT_PARAMETERS,
1755 ARB_PROVOKING_VERTEX,
1757 ARB_SHADER_TEXTURE_LOD,
1758 ARB_SHADING_LANGUAGE_100,
1761 ARB_TEXTURE_BORDER_CLAMP,
1762 ARB_TEXTURE_COMPRESSION,
1763 ARB_TEXTURE_COMPRESSION_RGTC,
1764 ARB_TEXTURE_CUBE_MAP,
1765 ARB_TEXTURE_ENV_ADD,
1766 ARB_TEXTURE_ENV_COMBINE,
1767 ARB_TEXTURE_ENV_DOT3,
1769 ARB_TEXTURE_MIRRORED_REPEAT,
1770 ARB_TEXTURE_NON_POWER_OF_TWO,
1771 ARB_TEXTURE_RECTANGLE,
1773 ARB_VERTEX_ARRAY_BGRA,
1775 ARB_VERTEX_BUFFER_OBJECT,
1779 ATI_FRAGMENT_SHADER,
1780 ATI_SEPARATE_STENCIL,
1781 ATI_TEXTURE_COMPRESSION_3DC,
1782 ATI_TEXTURE_ENV_COMBINE3,
1783 ATI_TEXTURE_MIRROR_ONCE,
1786 EXT_BLEND_EQUATION_SEPARATE,
1787 EXT_BLEND_FUNC_SEPARATE,
1790 EXT_DEPTH_BOUNDS_TEST,
1792 EXT_FRAMEBUFFER_BLIT,
1793 EXT_FRAMEBUFFER_MULTISAMPLE,
1794 EXT_FRAMEBUFFER_OBJECT,
1795 EXT_GPU_PROGRAM_PARAMETERS,
1797 EXT_PACKED_DEPTH_STENCIL,
1798 EXT_PALETTED_TEXTURE,
1799 EXT_POINT_PARAMETERS,
1800 EXT_PROVOKING_VERTEX,
1801 EXT_SECONDARY_COLOR,
1802 EXT_STENCIL_TWO_SIDE,
1805 EXT_TEXTURE_COMPRESSION_RGTC,
1806 EXT_TEXTURE_COMPRESSION_S3TC,
1807 EXT_TEXTURE_ENV_ADD,
1808 EXT_TEXTURE_ENV_COMBINE,
1809 EXT_TEXTURE_ENV_DOT3,
1810 EXT_TEXTURE_FILTER_ANISOTROPIC,
1811 EXT_TEXTURE_LOD_BIAS,
1813 EXT_VERTEX_ARRAY_BGRA,
1818 NV_FRAGMENT_PROGRAM,
1819 NV_FRAGMENT_PROGRAM2,
1820 NV_FRAGMENT_PROGRAM_OPTION,
1822 NV_LIGHT_MAX_EXPONENT,
1824 NV_REGISTER_COMBINERS,
1825 NV_REGISTER_COMBINERS2,
1826 NV_TEXGEN_REFLECTION,
1827 NV_TEXTURE_ENV_COMBINE4,
1831 NV_VERTEX_PROGRAM1_1,
1833 NV_VERTEX_PROGRAM2_OPTION,
1836 SGIS_GENERATE_MIPMAP,
1838 /* WGL extensions */
1839 WGL_ARB_PIXEL_FORMAT,
1840 WGL_WINE_PIXEL_FORMAT_PASSTHROUGH,
1841 /* Internally used */
1842 WINED3D_GL_NORMALIZED_TEXRECT,
1843 WINED3D_GL_VERSION_2_0,
1845 WINED3D_GL_EXT_COUNT,
1848 /* GL_APPLE_client_storage */
1849 #ifndef GL_APPLE_client_storage
1850 #define GL_APPLE_client_storage 1
1851 #define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85b2
1854 /* GL_APPLE_fence */
1855 #ifndef GL_APPLE_fence
1856 #define GL_APPLE_fence 1
1857 #define GL_DRAW_PIXELS_APPLE 0x8a0a
1858 #define GL_FENCE_APPLE 0x8a0b
1860 typedef void (WINE_GLAPI *PGLFNGENFENCESAPPLEPROC)(GLsizei, GLuint *);
1861 typedef void (WINE_GLAPI *PGLFNDELETEFENCESAPPLEPROC)(GLuint, const GLuint *);
1862 typedef void (WINE_GLAPI *PGLFNSETFENCEAPPLEPROC)(GLuint);
1863 typedef GLboolean (WINE_GLAPI *PGLFNTESTFENCEAPPLEPROC)(GLuint);
1864 typedef void (WINE_GLAPI *PGLFNFINISHFENCEAPPLEPROC)(GLuint);
1865 typedef GLboolean (WINE_GLAPI *PGLFNISFENCEAPPLEPROC)(GLuint);
1866 typedef GLboolean (WINE_GLAPI *PGLFNTESTOBJECTAPPLEPROC)(GLenum, GLuint);
1867 typedef void (WINE_GLAPI *PGLFNFINISHOBJECTAPPLEPROC)(GLenum, GLuint);
1869 /* GL_APPLE_float_pixels */
1870 #ifndef GL_APPLE_float_pixels
1871 #define GL_APPLE_float_pixels 1
1872 #define GL_HALF_APPLE 0x140b
1873 #define GL_COLOR_FLOAT_APPLE 0x8a0f
1874 #define GL_RGBA_FLOAT32_APPLE 0x8814
1875 #define GL_RGB_FLOAT32_APPLE 0x8815
1876 #define GL_ALPHA_FLOAT32_APPLE 0x8816
1877 #define GL_INTENSITY_FLOAT32_APPLE 0x8817
1878 #define GL_LUMINANCE_FLOAT32_APPLE 0x8818
1879 #define GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819
1880 #define GL_RGBA_FLOAT16_APPLE 0x881a
1881 #define GL_RGB_FLOAT16_APPLE 0x881b
1882 #define GL_ALPHA_FLOAT16_APPLE 0x881c
1883 #define GL_INTENSITY_FLOAT16_APPLE 0x881d
1884 #define GL_LUMINANCE_FLOAT16_APPLE 0x881e
1885 #define GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881f
1888 /* GL_APPLE_flush_buffer_range */
1889 #ifndef GL_APPLE_flush_buffer_range
1890 #define GL_APPLE_flush_buffer_range 1
1891 #define GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8a12
1892 #define GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8a13
1893 typedef void (WINE_GLAPI *PGLFNBUFFERPARAMETERIAPPLE)(GLenum target, GLenum pname, GLint param);
1894 typedef void (WINE_GLAPI *PGLFNFLUSHMAPPEDBUFFERRANGEAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size);
1897 /* GL_APPLE_flush_render */
1898 typedef void (WINE_GLAPI *PGLFNFLUSHRENDERAPPLEPROC)(void);
1899 typedef void (WINE_GLAPI *PGLFNFINISHRENDERAPPLEPROC)(void);
1901 /* GL_APPLE_ycbcr_422 */
1902 #ifndef GL_APPLE_ycbcr_422
1903 #define GL_APPLE_ycbcr_422 1
1904 #define GL_YCBCR_422_APPLE 0x85b9
1905 #define UNSIGNED_SHORT_8_8_APPLE 0x85ba
1906 #define UNSIGNED_SHORT_8_8_REV_APPLE 0x85bb
1909 /* GL_ARB_color_buffer_float */
1910 #ifndef GL_ARB_color_buffer_float
1911 #define GL_ARB_color_buffer_float 1
1912 #define GL_RGBA_FLOAT_MODE_ARB 0x8820
1913 #define GL_CLAMP_VERTEX_COLOR_ARB 0x891a
1914 #define GL_CLAMP_FRAGMENT_COLOR_ARB 0x891b
1915 #define GL_CLAMP_READ_COLOR_ARB 0x891c
1916 #define GL_FIXED_ONLY_ARB 0x891d
1918 typedef void (WINE_GLAPI *PGLFNCLAMPCOLORARBPROC)(GLenum target, GLenum clamp);
1920 /* GL_ARB_depth_buffer_float */
1921 #ifndef GL_ARB_depth_buffer_float
1922 #define GL_ARB_depth_buffer_float 1
1923 #define GL_DEPTH_COMPONENT32F 0x8cac
1924 #define GL_DEPTH32F_STENCIL8 0x8cad
1925 #define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8dad
1928 /* GL_ARB_depth_clamp */
1929 #ifndef GL_ARB_depth_clamp
1930 #define GL_ARB_depth_clamp 1
1931 #define GL_DEPTH_CLAMP 0x864f
1934 /* GL_ARB_depth_texture */
1935 #ifndef GL_ARB_depth_texture
1936 #define GL_ARB_depth_texture 1
1937 #define GL_DEPTH_COMPONENT16_ARB 0x81a5
1938 #define GL_DEPTH_COMPONENT24_ARB 0x81a6
1939 #define GL_DEPTH_COMPONENT32_ARB 0x81a7
1940 #define GL_TEXTURE_DEPTH_SIZE_ARB 0x884a
1941 #define GL_DEPTH_TEXTURE_MODE_ARB 0x884b
1944 /* GL_ARB_draw_buffers */
1945 #ifndef GL_ARB_draw_buffers
1946 #define GL_ARB_draw_buffers 1
1947 #define GL_MAX_DRAW_BUFFERS_ARB 0x8824
1948 #define GL_DRAW_BUFFER0_ARB 0x8825
1949 #define GL_DRAW_BUFFER1_ARB 0x8826
1950 #define GL_DRAW_BUFFER2_ARB 0x8827
1951 #define GL_DRAW_BUFFER3_ARB 0x8828
1952 #define GL_DRAW_BUFFER4_ARB 0x8829
1953 #define GL_DRAW_BUFFER5_ARB 0x882a
1954 #define GL_DRAW_BUFFER6_ARB 0x882b
1955 #define GL_DRAW_BUFFER7_ARB 0x882c
1956 #define GL_DRAW_BUFFER8_ARB 0x882d
1957 #define GL_DRAW_BUFFER9_ARB 0x882e
1958 #define GL_DRAW_BUFFER10_ARB 0x882f
1959 #define GL_DRAW_BUFFER11_ARB 0x8830
1960 #define GL_DRAW_BUFFER12_ARB 0x8831
1961 #define GL_DRAW_BUFFER13_ARB 0x8832
1962 #define GL_DRAW_BUFFER14_ARB 0x8833
1963 #define GL_DRAW_BUFFER15_ARB 0x8834
1965 typedef void (WINE_GLAPI *PGLFNDRAWBUFFERSARBPROC)(GLsizei n, const GLenum *bufs);
1967 /* GL_ARB_fragment_program */
1968 #ifndef GL_ARB_fragment_program
1969 #define GL_ARB_fragment_program 1
1970 #define GL_FRAGMENT_PROGRAM_ARB 0x8804
1971 #define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
1972 #define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
1973 #define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
1974 #define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
1975 #define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
1976 #define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880a
1977 #define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880b
1978 #define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880c
1979 #define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880d
1980 #define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880e
1981 #define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880f
1982 #define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
1983 #define GL_MAX_TEXTURE_COORDS_ARB 0x8871
1984 #define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
1985 /* All ARB_fragment_program entry points are shared with ARB_vertex_program. */
1988 /* GL_ARB_fragment_shader */
1989 #ifndef GL_ARB_fragment_shader
1990 #define GL_ARB_fragment_shader 1
1991 #define GL_FRAGMENT_SHADER_ARB 0x8b30
1992 #define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8b49
1993 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8b8b
1996 /* GL_ARB_framebuffer_object */
1997 #ifndef GL_ARB_framebuffer_object
1998 #define GL_ARB_framebuffer_object 1
1999 #define GL_FRAMEBUFFER 0x8d40
2000 #define GL_READ_FRAMEBUFFER 0x8ca8
2001 #define GL_DRAW_FRAMEBUFFER 0x8ca9
2002 #define GL_RENDERBUFFER 0x8d41
2003 #define GL_STENCIL_INDEX1 0x8d46
2004 #define GL_STENCIL_INDEX4 0x8d47
2005 #define GL_STENCIL_INDEX8 0x8d48
2006 #define GL_STENCIL_INDEX16 0x8d49
2007 #define GL_RENDERBUFFER_WIDTH 0x8d42
2008 #define GL_RENDERBUFFER_HEIGHT 0x8d43
2009 #define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8d44
2010 #define GL_RENDERBUFFER_RED_SIZE 0x8d50
2011 #define GL_RENDERBUFFER_GREEN_SIZE 0x8d51
2012 #define GL_RENDERBUFFER_BLUE_SIZE 0x8d52
2013 #define GL_RENDERBUFFER_ALPHA_SIZE 0x8d53
2014 #define GL_RENDERBUFFER_DEPTH_SIZE 0x8d54
2015 #define GL_RENDERBUFFER_STENCIL_SIZE 0x8d55
2016 #define GL_RENDERBUFFER_SAMPLES 0x8cab
2017 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8cd0
2018 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8cd1
2019 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8cd2
2020 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8cd3
2021 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8cd4
2022 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
2023 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
2024 #define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
2025 #define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
2026 #define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
2027 #define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
2028 #define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
2029 #define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
2030 #define GL_SRGB 0x8c40
2031 #define GL_UNSIGNED_NORMALIZED 0x8c17
2032 #define GL_FRAMEBUFFER_DEFAULT 0x8218
2033 #define GL_INDEX 0x8222
2034 #define GL_COLOR_ATTACHMENT0 0x8ce0
2035 #define GL_COLOR_ATTACHMENT1 0x8ce1
2036 #define GL_COLOR_ATTACHMENT2 0x8ce2
2037 #define GL_COLOR_ATTACHMENT3 0x8ce3
2038 #define GL_COLOR_ATTACHMENT4 0x8ce4
2039 #define GL_COLOR_ATTACHMENT5 0x8ce5
2040 #define GL_COLOR_ATTACHMENT6 0x8ce6
2041 #define GL_COLOR_ATTACHMENT7 0x8ce7
2042 #define GL_COLOR_ATTACHMENT8 0x8ce8
2043 #define GL_COLOR_ATTACHMENT9 0x8ce9
2044 #define GL_COLOR_ATTACHMENT10 0x8cea
2045 #define GL_COLOR_ATTACHMENT11 0x8ceb
2046 #define GL_COLOR_ATTACHMENT12 0x8cec
2047 #define GL_COLOR_ATTACHMENT13 0x8ced
2048 #define GL_COLOR_ATTACHMENT14 0x8cee
2049 #define GL_COLOR_ATTACHMENT15 0x8cef
2050 #define GL_DEPTH_ATTACHMENT 0x8d00
2051 #define GL_STENCIL_ATTACHMENT 0x8d20
2052 #define GL_DEPTH_STENCIL_ATTACHMENT 0x821a
2053 #define GL_MAX_SAMPLES 0x8d57
2054 #define GL_FRAMEBUFFER_COMPLETE 0x8cd5
2055 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8cd6
2056 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8cd7
2057 #define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8cdb
2058 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8cdc
2059 #define GL_FRAMEBUFFER_UNSUPPORTED 0x8cdd
2060 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8d56
2061 #define GL_FRAMEBUFFER_UNDEFINED 0x8219
2062 #define GL_FRAMEBUFFER_BINDING 0x8ca6
2063 #define GL_DRAW_FRAMEBUFFER_BINDING 0x8ca6
2064 #define GL_READ_FRAMEBUFFER_BINDING 0x8caa
2065 #define GL_RENDERBUFFER_BINDING 0x8ca7
2066 #define GL_MAX_COLOR_ATTACHMENTS 0x8cdf
2067 #define GL_MAX_RENDERBUFFER_SIZE 0x84e8
2068 #define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
2069 #define GL_DEPTH_STENCIL 0x84f9
2070 #define GL_UNSIGNED_INT_24_8 0x84fa
2071 #define GL_DEPTH24_STENCIL8 0x88f0
2072 #define GL_TEXTURE_STENCIL_SIZE 0x88f1
2074 typedef GLboolean (WINE_GLAPI *PGLFNGLISRENDERBUFFERPROC)(GLuint renderbuffer);
2075 typedef void (WINE_GLAPI *PGLFNGLBINDRENDERBUFFERPROC)(GLenum target, GLuint renderbuffer);
2076 typedef void (WINE_GLAPI *PGLFNGLDELETERENDERBUFFERSPROC)(GLsizei n, const GLuint *renderbuffers);
2077 typedef void (WINE_GLAPI *PGLFNGLGENRENDERBUFFERSPROC)(GLsizei n, GLuint *renderbuffers);
2078 typedef void (WINE_GLAPI *PGLFNGLRENDERBUFFERSTORAGEPROC)(GLenum target, GLenum internalformat,
2079 GLsizei width, GLsizei height);
2080 typedef void (WINE_GLAPI *PGLFNRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum target, GLsizei samples,
2081 GLenum internalformat, GLsizei width, GLsizei height);
2082 typedef void (WINE_GLAPI *PGLFNGLGETRENDERBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params);
2083 typedef GLboolean (WINE_GLAPI *PGLFNGLISFRAMEBUFFERPROC)(GLuint framebuffer);
2084 typedef void (WINE_GLAPI *PGLFNGLBINDFRAMEBUFFERPROC)(GLenum target, GLuint framebuffer);
2085 typedef void (WINE_GLAPI *PGLFNGLDELETEFRAMEBUFFERSPROC)(GLsizei n, const GLuint *framebuffers);
2086 typedef void (WINE_GLAPI *PGLFNGLGENFRAMEBUFFERSPROC)(GLsizei n, GLuint *framebuffers);
2087 typedef GLenum (WINE_GLAPI *PGLFNGLCHECKFRAMEBUFFERSTATUSPROC)(GLenum target);
2088 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE1DPROC)(GLenum target, GLenum attachment,
2089 GLenum textarget, GLuint texture, GLint level);
2090 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE2DPROC)(GLenum target, GLenum attachment,
2091 GLenum textarget, GLuint texture, GLint level);
2092 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE3DPROC)(GLenum target, GLenum attachment,
2093 GLenum textarget, GLuint texture, GLint level, GLint layer);
2094 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURELAYERPROC)(GLenum target, GLenum attachment,
2095 GLuint texture, GLint level, GLint layer);
2096 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERRENDERBUFFERPROC)(GLenum target, GLenum attachment,
2097 GLenum renderbuffertarget, GLuint renderbuffer);
2098 typedef void (WINE_GLAPI *PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum target, GLenum attachment,
2099 GLenum pname, GLint *params);
2100 typedef void (WINE_GLAPI *PGLFNGLBLITFRAMEBUFFERPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
2101 GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
2102 typedef void (WINE_GLAPI *PGLFNGLGENERATEMIPMAPPROC)(GLenum target);
2104 /* GL_ARB_geometry_shader4 */
2105 #ifndef GL_ARB_geometry_shader4
2106 #define GL_ARB_geometry_shader4 1
2107 #define GL_GEOMETRY_SHADER_ARB 0x8dd9
2108 #define GL_GEOMETRY_VERTICES_OUT_ARB 0x8dda
2109 #define GL_GEOMETRY_INPUT_TYPE_ARB 0x8ddb
2110 #define GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8ddc
2111 #define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8c29
2112 #define GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8ddd
2113 #define GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8dde
2114 #define GL_MAX_VARYING_COMPONENTS_ARB 0x8b4b
2115 #define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8ddf
2116 #define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8de0
2117 #define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8de1
2118 #define GL_LINES_ADJACENCY_ARB 0x000a
2119 #define GL_LINE_STRIP_ADJACENCY_ARB 0x000b
2120 #define GL_TRIANGLES_ADJACENCY_ARB 0x000c
2121 #define GL_TRIANGLE_STRIP_ADJACENCY_ARB 0x000d
2122 #define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8da8
2123 #define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8da9
2124 #define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8da7
2125 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8cd4
2126 #define GL_PROGRAM_POINT_SIZE_ARB 0x8642
2128 typedef void (WINE_GLAPI *PGLFNPROGRAMPARAMETERIARBPROC)(GLuint program, GLenum pname, GLint value);
2129 typedef void (WINE_GLAPI *PGLFNFRAMEBUFFERTEXTUREARBPROC)(GLenum target, GLenum attachment,
2130 GLuint texture, GLint level);
2131 typedef void (WINE_GLAPI *PGLFNFRAMEBUFFERTEXTURELAYERARBPROC)(GLenum target, GLenum attachment,
2132 GLuint texture, GLint level, GLint layer);
2133 typedef void (WINE_GLAPI *PGLFNFRAMEBUFFERTEXTUREFACEARBPROC)(GLenum target, GLenum attachment,
2134 GLuint texture, GLint level, GLenum face);
2136 /* GL_ARB_half_float_pixel */
2137 #ifndef GL_ARB_half_float_pixel
2138 #define GL_ARB_half_float_pixel 1
2139 #define GL_HALF_FLOAT_ARB 0x140b
2142 /* GL_ARB_half_float_vertex */
2143 #ifndef GL_ARB_half_float_vertex
2144 #define GL_ARB_half_float_vertex 1
2145 /* No _ARB, see extension spec */
2146 #define GL_HALF_FLOAT 0x140b
2149 /* GL_ARB_imaging */
2150 #ifndef GL_ARB_imaging
2151 #define GL_ARB_imaging 1
2152 #define GL_CONSTANT_COLOR 0x8001
2153 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
2154 #define GL_CONSTANT_ALPHA 0x8003
2155 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
2156 #define GL_BLEND_COLOR 0x8005
2157 #define GL_FUNC_ADD 0x8006
2158 #define GL_MIN 0x8007
2159 #define GL_MAX 0x8008
2160 #define GL_BLEND_EQUATION 0x8009
2161 #define GL_FUNC_SUBTRACT 0x800a
2162 #define GL_FUNC_REVERSE_SUBTRACT 0x800b
2163 #define GL_CONVOLUTION_1D 0x8010
2164 #define GL_CONVOLUTION_2D 0x8011
2165 #define GL_SEPARABLE_2D 0x8012
2166 #define GL_CONVOLUTION_BORDER_MODE 0x8013
2167 #define GL_CONVOLUTION_FILTER_SCALE 0x8014
2168 #define GL_CONVOLUTION_FILTER_BIAS 0x8015
2169 #define GL_REDUCE 0x8016
2170 #define GL_CONVOLUTION_FORMAT 0x8017
2171 #define GL_CONVOLUTION_WIDTH 0x8018
2172 #define GL_CONVOLUTION_HEIGHT 0x8019
2173 #define GL_MAX_CONVOLUTION_WIDTH 0x801a
2174 #define GL_MAX_CONVOLUTION_HEIGHT 0x801b
2175 #define GL_POST_CONVOLUTION_RED_SCALE 0x801d
2176 #define GL_POST_CONVOLUTION_GREEN_SCALE 0x801f
2177 #define GL_POST_CONVOLUTION_BLUE_SCALE 0x801e
2178 #define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801f
2179 #define GL_POST_CONVOLUTION_RED_BIAS 0x8020
2180 #define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
2181 #define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
2182 #define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
2183 #define GL_HISTOGRAM 0x8024
2184 #define GL_PROXY_HISTOGRAM 0x8025
2185 #define GL_HISTOGRAM_WIDTH 0x8026
2186 #define GL_HISTOGRAM_FORMAT 0x8027
2187 #define GL_HISTOGRAM_RED_SIZE 0x8028
2188 #define GL_HISTOGRAM_GREEN_SIZE 0x8029
2189 #define GL_HISTOGRAM_BLUE_SIZE 0x802a
2190 #define GL_HISTOGRAM_ALPHA_SIZE 0x802b
2191 #define GL_HISTOGRAM_LUMINANCE_SIZE 0x802c
2192 #define GL_HISTOGRAM_SINK 0x802d
2193 #define GL_MINMAX 0x802e
2194 #define GL_MINMAX_FORMAT 0x802f
2195 #define GL_MINMAX_SINK 0x8030
2196 #define GL_TABLE_TOO_LARGE 0x8031
2197 #define GL_COLOR_MATRIX 0x80b1
2198 #define GL_COLOR_MATRIX_STACK_DEPTH 0x80b2
2199 #define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80b3
2200 #define GL_POST_COLOR_MATRIX_RED_SCALE 0x80b4
2201 #define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80b5
2202 #define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80b6
2203 #define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80b7
2204 #define GL_POST_COLOR_MATRIX_RED_BIAS 0x80b8
2205 #define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80b9
2206 #define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80ba
2207 #define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80bb
2208 #define GL_COLOR_TABLE 0x80d0
2209 #define GL_POST_CONVOLUTION_COLOR_TABLE 0x80d1
2210 #define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80d2
2211 #define GL_PROXY_COLOR_TABLE 0x80d3
2212 #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80d4
2213 #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80d5
2214 #define GL_COLOR_TABLE_SCALE 0x80d6
2215 #define GL_COLOR_TABLE_BIAS 0x80d7
2216 #define GL_COLOR_TABLE_FORMAT 0x80d8
2217 #define GL_COLOR_TABLE_WIDTH 0x80d9
2218 #define GL_COLOR_TABLE_RED_SIZE 0x80da
2219 #define GL_COLOR_TABLE_GREEN_SIZE 0x80db
2220 #define GL_COLOR_TABLE_BLUE_SIZE 0x80dc
2221 #define GL_COLOR_TABLE_ALPHA_SIZE 0x80dd
2222 #define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80de
2223 #define GL_COLOR_TABLE_INTENSITY_SIZE 0x80df
2224 #define GL_CONSTANT_BORDER 0x8151
2225 #define GL_REPLICATE_BORDER 0x8153
2226 #define GL_CONVOLUTION_BORDER_COLOR 0x8154
2228 typedef void (WINE_GLAPI *PGLFNBLENDCOLORPROC)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
2229 typedef void (WINE_GLAPI *PGLFNBLENDEQUATIONPROC)(GLenum mode);
2231 /* GL_ARB_map_buffer_range */
2232 #ifndef GL_ARB_map_buffer_range
2233 #define GL_ARB_map_buffer_range 1
2234 #define GL_MAP_READ_BIT 0x0001
2235 #define GL_MAP_WRITE_BIT 0x0002
2236 #define GL_MAP_INVALIDATE_RANGE_BIT 0x0004
2237 #define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
2238 #define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
2239 #define GL_MAP_UNSYNCHRONIZED_BIT 0x0020
2241 typedef GLvoid *(WINE_GLAPI *PGLFNMAPBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
2242 typedef void (WINE_GLAPI *PGLFNFLUSHMAPPEDBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length);
2244 /* GL_ARB_multisample */
2245 #ifndef GL_ARB_multisample
2246 #define GL_ARB_multisample 1
2247 #define GL_MULTISAMPLE_ARB 0x809d
2248 #define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809e
2249 #define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809f
2250 #define GL_SAMPLE_COVERAGE_ARB 0x80a0
2251 #define GL_SAMPLE_BUFFERS_ARB 0x80a8
2252 #define GL_SAMPLES_ARB 0x80a9
2253 #define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80aa
2254 #define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80ab
2255 #define GL_MULTISAMPLE_BIT_ARB 0x20000000
2257 typedef void (WINE_GLAPI *WINED3D_PFNGLSAMPLECOVERAGEARBPROC)(GLclampf value, GLboolean invert);
2259 /* GL_ARB_multitexture */
2260 #ifndef GL_ARB_multitexture
2261 #define GL_ARB_multitexture 1
2262 #define GL_TEXTURE0_ARB 0x84c0
2263 #define GL_TEXTURE1_ARB 0x84c1
2264 #define GL_TEXTURE2_ARB 0x84c2
2265 #define GL_TEXTURE3_ARB 0x84c3
2266 #define GL_TEXTURE4_ARB 0x84c4
2267 #define GL_TEXTURE5_ARB 0x84c5
2268 #define GL_TEXTURE6_ARB 0x84c6
2269 #define GL_TEXTURE7_ARB 0x84c7
2270 #define GL_TEXTURE8_ARB 0x84c8
2271 #define GL_TEXTURE9_ARB 0x84c9
2272 #define GL_TEXTURE10_ARB 0x84ca
2273 #define GL_TEXTURE11_ARB 0x84cb
2274 #define GL_TEXTURE12_ARB 0x84cc
2275 #define GL_TEXTURE13_ARB 0x84cd
2276 #define GL_TEXTURE14_ARB 0x84ce
2277 #define GL_TEXTURE15_ARB 0x84cf
2278 #define GL_TEXTURE16_ARB 0x84d0
2279 #define GL_TEXTURE17_ARB 0x84d1
2280 #define GL_TEXTURE18_ARB 0x84d2
2281 #define GL_TEXTURE19_ARB 0x84d3
2282 #define GL_TEXTURE20_ARB 0x84d4
2283 #define GL_TEXTURE21_ARB 0x84d5
2284 #define GL_TEXTURE22_ARB 0x84d6
2285 #define GL_TEXTURE23_ARB 0x84d7
2286 #define GL_TEXTURE24_ARB 0x84d8
2287 #define GL_TEXTURE25_ARB 0x84d9
2288 #define GL_TEXTURE26_ARB 0x84da
2289 #define GL_TEXTURE27_ARB 0x84db
2290 #define GL_TEXTURE28_ARB 0x84dc
2291 #define GL_TEXTURE29_ARB 0x84dd
2292 #define GL_TEXTURE30_ARB 0x84de
2293 #define GL_TEXTURE31_ARB 0x84df
2294 #define GL_ACTIVE_TEXTURE_ARB 0x84e0
2295 #define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84e1
2296 #define GL_MAX_TEXTURE_UNITS_ARB 0x84e2
2298 typedef void (WINE_GLAPI *WINED3D_PFNGLACTIVETEXTUREARBPROC)(GLenum texture);
2299 typedef void (WINE_GLAPI *WINED3D_PFNGLCLIENTACTIVETEXTUREARBPROC)(GLenum texture);
2300 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD1FARBPROC)(GLenum target, GLfloat s);
2301 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD1FVARBPROC)(GLenum target, const GLfloat *v);
2302 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD2FARBPROC)(GLenum target, GLfloat s, GLfloat t);
2303 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD2FVARBPROC)(GLenum target, const GLfloat *v);
2304 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD3FARBPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r);
2305 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD3FVARBPROC)(GLenum target, const GLfloat *v);
2306 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD4FARBPROC)(GLenum target,
2307 GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2308 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD4FVARBPROC)(GLenum target, const GLfloat *v);
2309 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD2SVARBPROC)(GLenum target, const GLshort *v);
2310 typedef void (WINE_GLAPI *WINED3D_PFNGLMULTITEXCOORD4SVARBPROC)(GLenum target, const GLshort *v);
2312 /* GL_ARB_occlusion_query */
2313 #ifndef GL_ARB_occlusion_query
2314 #define GL_ARB_occlusion_query 1
2315 #define GL_SAMPLES_PASSED_ARB 0x8914
2316 #define GL_QUERY_COUNTER_BITS_ARB 0x8864
2317 #define GL_CURRENT_QUERY_ARB 0x8865
2318 #define GL_QUERY_RESULT_ARB 0x8866
2319 #define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867
2321 typedef void (WINE_GLAPI *PGLFNGENQUERIESARBPROC)(GLsizei n, GLuint *queries);
2322 typedef void (WINE_GLAPI *PGLFNDELETEQUERIESARBPROC)(GLsizei n, const GLuint *queries);
2323 typedef GLboolean (WINE_GLAPI *PGLFNISQUERYARBPROC)(GLuint query);
2324 typedef void (WINE_GLAPI *PGLFNBEGINQUERYARBPROC)(GLenum target, GLuint query);
2325 typedef void (WINE_GLAPI *PGLFNENDQUERYARBPROC)(GLenum target);
2326 typedef void (WINE_GLAPI *PGLFNGETQUERYIVARBPROC)(GLenum target, GLenum pname, GLint *params);
2327 typedef void (WINE_GLAPI *PGLFNGETQUERYOBJECTIVARBPROC)(GLuint query, GLenum pname, GLint *params);
2328 typedef void (WINE_GLAPI *PGLFNGETQUERYOBJECTUIVARBPROC)(GLuint query, GLenum pname, GLuint *params);
2330 /* GL_ARB_pixel_buffer_object */
2331 #ifndef GL_ARB_pixel_buffer_object
2332 #define GL_ARB_pixel_buffer_object 1
2333 #define GL_PIXEL_PACK_BUFFER_ARB 0x88eb
2334 #define GL_PIXEL_UNPACK_BUFFER_ARB 0x88ec
2335 #define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ed
2336 #define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88ef
2339 /* GL_ARB_point_parameters */
2340 #ifndef GL_ARB_point_parameters
2341 #define GL_ARB_point_parameters 1
2342 #define GL_POINT_SIZE_MIN_ARB 0x8126
2343 #define GL_POINT_SIZE_MAX_ARB 0x8127
2344 #define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128
2345 #define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129
2347 typedef void (WINE_GLAPI *PGLFNGLPOINTPARAMETERFARBPROC)(GLenum pname, GLfloat param);
2348 typedef void (WINE_GLAPI *PGLFNGLPOINTPARAMETERFVARBPROC)(GLenum pname, const GLfloat *params);
2350 /* GL_ARB_point_sprite */
2351 #ifndef GL_ARB_point_sprite
2352 #define GL_ARB_point_sprite 1
2353 #define GL_POINT_SPRITE_ARB 0x8861
2354 #define GL_COORD_REPLACE_ARB 0x8862
2357 /* GL_ARB_provoking_vertex */
2358 #ifndef GL_ARB_provoking_vertex
2359 #define GL_ARB_provoking_vertex 1
2360 #define GL_FIRST_VERTEX_CONVENTION 0x8e4d
2361 #define GL_LAST_VERTEX_CONVENTION 0x8e4e
2362 #define GL_PROVOKING_VERTEX 0x8e4f
2363 #define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8e4c
2365 typedef void (WINE_GLAPI *PGLFNGLPROVOKINGVERTEXPROC)(GLenum mode);
2367 /* GL_ARB_shader_objects */
2368 #ifndef GL_ARB_shader_objects
2369 #define GL_ARB_shader_objects 1
2370 typedef char GLcharARB;
2371 typedef unsigned int GLhandleARB;
2372 #define GL_PROGRAM_OBJECT_ARB 0x8b40
2373 #define GL_OBJECT_TYPE_ARB 0x8b4e
2374 #define GL_OBJECT_SUBTYPE_ARB 0x8b4f
2375 #define GL_OBJECT_DELETE_STATUS_ARB 0x8b80
2376 #define GL_OBJECT_COMPILE_STATUS_ARB 0x8b81
2377 #define GL_OBJECT_LINK_STATUS_ARB 0x8b82
2378 #define GL_OBJECT_VALIDATE_STATUS_ARB 0x8b83
2379 #define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8b84
2380 #define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8b85
2381 #define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8b86
2382 #define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8b87
2383 #define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8b88
2384 #define GL_SHADER_OBJECT_ARB 0x8b48
2385 #define GL_FLOAT_VEC2_ARB 0x8b50
2386 #define GL_FLOAT_VEC3_ARB 0x8b51
2387 #define GL_FLOAT_VEC4_ARB 0x8b52
2388 #define GL_INT_VEC2_ARB 0x8b53
2389 #define GL_INT_VEC3_ARB 0x8b54
2390 #define GL_INT_VEC4_ARB 0x8b55
2391 #define GL_BOOL_ARB 0x8b56
2392 #define GL_BOOL_VEC2_ARB 0x8b57
2393 #define GL_BOOL_VEC3_ARB 0x8b58
2394 #define GL_BOOL_VEC4_ARB 0x8b59
2395 #define GL_FLOAT_MAT2_ARB 0x8b5a
2396 #define GL_FLOAT_MAT3_ARB 0x8b5b
2397 #define GL_FLOAT_MAT4_ARB 0x8b5c
2398 #define GL_SAMPLER_1D_ARB 0x8b5d
2399 #define GL_SAMPLER_2D_ARB 0x8b5e
2400 #define GL_SAMPLER_3D_ARB 0x8b5f
2401 #define GL_SAMPLER_CUBE_ARB 0x8b60
2402 #define GL_SAMPLER_1D_SHADOW_ARB 0x8b61
2403 #define GL_SAMPLER_2D_SHADOW_ARB 0x8b62
2404 #define GL_SAMPLER_2D_RECT_ARB 0x8b63
2405 #define GL_SAMPELR_2D_RECT_SHADOW_ARB 0x8b64
2408 /* GL_ARB_shading_language_100 */
2409 #ifndef GL_ARB_shading_language_100
2410 #define GL_ARB_shading_language_100 1
2411 #define GL_SHADING_LANGUAGE_VERSION_ARB 0x8b8c
2415 #ifndef GL_ARB_shadow
2416 #define GL_ARB_shadow 1
2417 #define GL_TEXTURE_COMPARE_MODE_ARB 0x884c
2418 #define GL_TEXTURE_COMPARE_FUNC_ARB 0x884d
2419 #define GL_COMPARE_R_TO_TEXTURE_ARB 0x884e
2424 #define GL_ARB_sync 1
2425 #define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
2426 #define GL_OBJECT_TYPE 0x9112
2427 #define GL_SYNC_CONDITION 0x9113
2428 #define GL_SYNC_STATUS 0x9114
2429 #define GL_SYNC_FLAGS 0x9115
2430 #define GL_SYNC_FENCE 0x9116
2431 #define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117
2432 #define GL_UNSIGNALED 0x9118
2433 #define GL_SIGNALED 0x9119
2434 #define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001
2435 #define GL_TIMEOUT_IGNORED 0xffffffffffffffffULL
2436 #define GL_ALREADY_SIGNALED 0x911a
2437 #define GL_TIMEOUT_EXPIRED 0x911b
2438 #define GL_CONDITION_SATISFIED 0x911c
2439 #define GL_WAIT_FAILED 0x911d
2441 typedef GLsync (WINE_GLAPI *PGLFNFENCESYNCPROC)(GLenum condition, GLbitfield flags);
2442 typedef GLboolean (WINE_GLAPI *PGLFNISSYNCPROC)(GLsync sync);
2443 typedef GLvoid (WINE_GLAPI *PGLFNDELETESYNCPROC)(GLsync sync);
2444 typedef GLenum (WINE_GLAPI *PGLFNCLIENTWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout);
2445 typedef GLvoid (WINE_GLAPI *PGLFNWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout);
2446 typedef GLvoid (WINE_GLAPI *PGLFNGETINTEGER64VPROC)(GLenum pname, GLint64 *params);
2447 typedef GLvoid (WINE_GLAPI *PGLFNGETSYNCIVPROC)(GLsync sync, GLenum pname, GLsizei bufsize,
2448 GLsizei *length, GLint *values);
2450 /* GL_ARB_texture_border_clamp */
2451 #ifndef GL_ARB_texture_border_clamp
2452 #define GL_ARB_texture_border_clamp 1
2453 #define GL_CLAMP_TO_BORDER_ARB 0x812d
2456 /* GL_ARB_texture_compression_rgtc */
2457 #ifndef GL_ARB_texture_compression_rgtc
2458 #define GL_ARB_texture_compression_rgtc 1
2459 #define GL_COMPRESSED_RED_RGTC1 0x8dbb
2460 #define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8dbc
2461 #define GL_COMPRESSED_RED_GREEN_RGTC2 0x8dbd
2462 #define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2 0x8dbe
2465 /* GL_ARB_texture_cube_map */
2466 #ifndef GL_ARB_texture_cube_map
2467 #define GL_ARB_texture_cube_map 1
2468 #define GL_NORMAL_MAP_ARB 0x8511
2469 #define GL_REFLECTION_MAP_ARB 0x8512
2470 #define GL_TEXTURE_CUBE_MAP_ARB 0x8513
2471 #define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514
2472 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515
2473 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516
2474 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517
2475 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518
2476 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519
2477 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851a
2478 #define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851b
2479 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851c
2482 /* GL_ARB_texture_env_dot3 */
2483 #ifndef GL_ARB_texture_env_dot3
2484 #define GL_ARB_texture_env_dot3 1
2485 #define GL_DOT3_RGB_ARB 0x86ae
2486 #define GL_DOT3_RGBA_ARB 0x86af
2489 /* GL_ARB_texture_float */
2490 #ifndef GL_ARB_texture_float
2491 #define GL_ARB_texture_float 1
2492 #define GL_RGBA32F_ARB 0x8814
2493 #define GL_RGB32F_ARB 0x8815
2494 #define GL_RGBA16F_ARB 0x881a
2495 #define GL_RGB16F_ARB 0x881b
2498 /* GL_ARB_texture_mirrored_repeat */
2499 #ifndef GL_ARB_texture_mirrored_repeat
2500 #define GL_ARB_texture_mirrored_repeat 1
2501 #define GL_MIRRORED_REPEAT_ARB 0x8370
2504 /* GL_ARB_texture_rectangle */
2505 #ifndef GL_ARB_texture_rectangle
2506 #define GL_ARB_texture_rectangle 1
2507 #define GL_TEXTURE_RECTANGLE_ARB 0x84f5
2508 #define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84f6
2509 #define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84f7
2510 #define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84f8
2511 #define GL_SAMPLER_2D_RECT_ARB 0x8b63
2512 #define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8b64
2515 /* GL_ARB_texture_rg */
2516 #ifndef GL_ARB_texture_rg
2517 #define GL_ARB_texture_rg 1
2518 #define GL_RG 0x8227
2519 #define GL_RG_INTEGER 0x8228
2520 #define GL_R8 0x8229
2521 #define GL_R16 0x822a
2522 #define GL_RG8 0x822b
2523 #define GL_RG16 0x822c
2524 #define GL_R16F 0x822d
2525 #define GL_R32F 0x822e
2526 #define GL_RG16F 0x822f
2527 #define GL_RG32F 0x8230
2528 #define GL_R8I 0x8231
2529 #define GL_R8UI 0x8232
2530 #define GL_R16I 0x8233
2531 #define GL_R16UI 0x8234
2532 #define GL_R32I 0x8235
2533 #define GL_R32UI 0x8236
2534 #define GL_RG8I 0x8237
2535 #define GL_RG8UI 0x8238
2536 #define GL_RG16I 0x8239
2537 #define GL_RG16UI 0x823a
2538 #define GL_RG32I 0x823b
2539 #define GL_RG32UI 0x823c
2542 /* GL_ARB_vertex_blend */
2543 #ifndef GL_ARB_vertex_blend
2544 #define GL_ARB_vertex_blend 1
2545 #define GL_MAX_VERTEX_UNITS_ARB 0x86a4
2546 #define GL_ACTIVE_VERTEX_UNITS_ARB 0x86a5
2547 #define GL_WEIGHT_SUM_UNITY_ARB 0x86a6
2548 #define GL_VERTEX_BLEND_ARB 0x86a7
2549 #define GL_CURRENT_WEIGHT_ARB 0x86a8
2550 #define GL_WEIGHT_ARRAY_TYPE_ARB 0x86a9
2551 #define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86aa
2552 #define GL_WEIGHT_ARRAY_SIZE_ARB 0x86ab
2553 #define GL_WEIGHT_ARRAY_POINTER_ARB 0x86ac
2554 #define GL_WEIGHT_ARRAY_ARB 0x86ad
2555 #define GL_MODELVIEW0_ARB 0x1700
2556 #define GL_MODELVIEW1_ARB 0x850a
2557 #define GL_MODELVIEW2_ARB 0x8722
2558 #define GL_MODELVIEW3_ARB 0x8723
2559 #define GL_MODELVIEW4_ARB 0x8724
2560 #define GL_MODELVIEW5_ARB 0x8725
2561 #define GL_MODELVIEW6_ARB 0x8726
2562 #define GL_MODELVIEW7_ARB 0x8727
2563 #define GL_MODELVIEW8_ARB 0x8728
2564 #define GL_MODELVIEW9_ARB 0x8729
2565 #define GL_MODELVIEW10_ARB 0x872a
2566 #define GL_MODELVIEW11_ARB 0x872b
2567 #define GL_MODELVIEW12_ARB 0x872c
2568 #define GL_MODELVIEW13_ARB 0x872d
2569 #define GL_MODELVIEW14_ARB 0x872e
2570 #define GL_MODELVIEW15_ARB 0x872f
2571 #define GL_MODELVIEW16_ARB 0x8730
2572 #define GL_MODELVIEW17_ARB 0x8731
2573 #define GL_MODELVIEW18_ARB 0x8732
2574 #define GL_MODELVIEW19_ARB 0x8733
2575 #define GL_MODELVIEW20_ARB 0x8734
2576 #define GL_MODELVIEW21_ARB 0x8735
2577 #define GL_MODELVIEW22_ARB 0x8736
2578 #define GL_MODELVIEW23_ARB 0x8737
2579 #define GL_MODELVIEW24_ARB 0x8738
2580 #define GL_MODELVIEW25_ARB 0x8739
2581 #define GL_MODELVIEW26_ARB 0x873a
2582 #define GL_MODELVIEW27_ARB 0x873b
2583 #define GL_MODELVIEW28_ARB 0x873c
2584 #define GL_MODELVIEW29_ARB 0x873d
2585 #define GL_MODELVIEW30_ARB 0x873e
2586 #define GL_MODELVIEW31_ARB 0x873f
2588 typedef void (WINE_GLAPI *PGLFNGLWEIGHTPOINTERARB)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2589 typedef void (WINE_GLAPI *PGLFNGLWEIGHTBV)(GLint size, const GLbyte *weights);
2590 typedef void (WINE_GLAPI *PGLFNGLWEIGHTSV)(GLint size, const GLshort *weights);
2591 typedef void (WINE_GLAPI *PGLFNGLWEIGHTIV)(GLint size, const GLint *weights);
2592 typedef void (WINE_GLAPI *PGLFNGLWEIGHTFV)(GLint size, const GLfloat *weights);
2593 typedef void (WINE_GLAPI *PGLFNGLWEIGHTDV)(GLint size, const GLdouble *weights);
2594 typedef void (WINE_GLAPI *PGLFNGLWEIGHTUBV)(GLint size, const GLubyte *weights);
2595 typedef void (WINE_GLAPI *PGLFNGLWEIGHTUSV)(GLint size, const GLushort *weights);
2596 typedef void (WINE_GLAPI *PGLFNGLWEIGHTUIV)(GLint size, const GLuint *weights);
2597 typedef void (WINE_GLAPI *PGLFNGLVERTEXBLENDARB)(GLint count);
2599 /* GL_ARB_vertex_buffer_object */
2600 #ifndef GL_ARB_vertex_buffer_object
2601 #define GL_ARB_vertex_buffer_object 1
2602 #define GL_BUFFER_SIZE_ARB 0x8764
2603 #define GL_BUFFER_USAGE_ARB 0x8765
2604 #define GL_ARRAY_BUFFER_ARB 0x8892
2605 #define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893
2606 #define GL_ARRAY_BUFFER_BINDING_ARB 0x8894
2607 #define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895
2608 #define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896
2609 #define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897
2610 #define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898
2611 #define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899
2612 #define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889a
2613 #define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889b
2614 #define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889c
2615 #define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889d
2616 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889e
2617 #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889f
2618 #define GL_READ_ONLY_ARB 0x88b8
2619 #define GL_WRITE_ONLY_ARB 0x88b9
2620 #define GL_READ_WRITE_ARB 0x88ba
2621 #define GL_BUFFER_ACCESS_ARB 0x88bb
2622 #define GL_BUFFER_MAPPED_ARB 0x88bc
2623 #define GL_BUFFER_MAP_POINTER_ARB 0x88bd
2624 #define GL_STREAM_DRAW_ARB 0x88e0
2625 #define GL_STREAM_READ_ARB 0x88e1
2626 #define GL_STREAM_COPY_ARB 0x88e2
2627 #define GL_STATIC_DRAW_ARB 0x88e4
2628 #define GL_STATIC_READ_ARB 0x88e5
2629 #define GL_STATIC_COPY_ARB 0x88e6
2630 #define GL_DYNAMIC_DRAW_ARB 0x88e8
2631 #define GL_DYNAMIC_READ_ARB 0x88e9
2632 #define GL_DYNAMIC_COPY_ARB 0x88ea
2634 typedef void (WINE_GLAPI *PGLFNBINDBUFFERARBPROC)(GLenum target, GLuint buffer);
2635 typedef void (WINE_GLAPI *PGLFNDELETEBUFFERSARBPROC)(GLsizei n, const GLuint *buffers);
2636 typedef void (WINE_GLAPI *PGLFNGENBUFFERSARBPROC)(GLsizei n, GLuint *buffers);
2637 typedef GLboolean (WINE_GLAPI *PGLFNISBUFFERARBPROC)(GLuint buffer);
2638 typedef void (WINE_GLAPI *PGLFNBUFFERDATAARBPROC)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
2639 typedef void (WINE_GLAPI *PGLFNBUFFERSUBDATAARBPROC)(GLenum target,
2640 GLintptr offset, GLsizeiptr size, const GLvoid *data);
2641 typedef void (WINE_GLAPI *PGLFNGETBUFFERSUBDATAARBPROC)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
2642 typedef GLvoid* (WINE_GLAPI *PGLFNMAPBUFFERARBPROC)(GLenum target, GLenum access);
2643 typedef GLboolean (WINE_GLAPI *PGLFNUNMAPBUFFERARBPROC)(GLenum target);
2644 typedef void (WINE_GLAPI *PGLFNGETBUFFERPARAMETERIVARBPROC)(GLenum target, GLenum pname, GLint *params);
2645 typedef void (WINE_GLAPI *PGLFNGETBUFFERPOINTERVARBPROC)(GLenum target, GLenum pname, GLvoid* *params);
2647 /* GL_ARB_vertex_program */
2648 #ifndef GL_ARB_vertex_program
2649 #define GL_ARB_vertex_program 1
2650 #define GL_VERTEX_PROGRAM_ARB 0x8620
2651 #define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642
2652 #define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643
2653 #define GL_COLOR_SUM_ARB 0x8458
2654 #define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875
2655 #define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
2656 #define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623
2657 #define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
2658 #define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625
2659 #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886a
2660 #define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626
2661 #define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
2662 #define GL_PROGRAM_LENGTH_ARB 0x8627
2663 #define GL_PROGRAM_FORMAT_ARB 0x8876
2664 #define GL_PROGRAM_BINDING_ARB 0x8677
2665 #define GL_PROGRAM_INSTRUCTIONS_ARB 0x88a0
2666 #define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88a1
2667 #define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88a2
2668 #define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88a3
2669 #define GL_PROGRAM_TEMPORARIES_ARB 0x88a4
2670 #define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88a5
2671 #define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88a6
2672 #define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88a7
2673 #define GL_PROGRAM_PARAMETERS_ARB 0x88a8
2674 #define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88a9
2675 #define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88aa
2676 #define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88ab
2677 #define GL_PROGRAM_ATTRIBS_ARB 0x88ac
2678 #define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88ad
2679 #define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88ae
2680 #define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88af
2681 #define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88b0
2682 #define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88b1
2683 #define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88b2
2684 #define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88b3
2685 #define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88b4
2686 #define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88b5
2687 #define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88b6
2688 #define GL_PROGRAM_STRING_ARB 0x8628
2689 #define GL_PROGRAM_ERROR_POSITION_ARB 0x864b
2690 #define GL_CURRENT_MATRIX_ARB 0x8641
2691 #define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88b7
2692 #define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
2693 #define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869
2694 #define GL_MAX_PROGRAM_MATRICES_ARB 0x862f
2695 #define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862e
2696 #define GL_PROGRAM_ERROR_STRING_ARB 0x8874
2697 #define GL_MATRIX0_ARB 0x88c0
2698 #define GL_MATRIX1_ARB 0x88c1
2699 #define GL_MATRIX2_ARB 0x88c2
2700 #define GL_MATRIX3_ARB 0x88c3
2701 #define GL_MATRIX4_ARB 0x88c4
2702 #define GL_MATRIX5_ARB 0x88c5
2703 #define GL_MATRIX6_ARB 0x88c6
2704 #define GL_MATRIX7_ARB 0x88c7
2705 #define GL_MATRIX8_ARB 0x88c8
2706 #define GL_MATRIX9_ARB 0x88c9
2707 #define GL_MATRIX10_ARB 0x88ca
2708 #define GL_MATRIX11_ARB 0x88cb
2709 #define GL_MATRIX12_ARB 0x88cc
2710 #define GL_MATRIX13_ARB 0x88cd
2711 #define GL_MATRIX14_ARB 0x88ce
2712 #define GL_MATRIX15_ARB 0x88cf
2713 #define GL_MATRIX16_ARB 0x88d0
2714 #define GL_MATRIX17_ARB 0x88d1
2715 #define GL_MATRIX18_ARB 0x88d2
2716 #define GL_MATRIX19_ARB 0x88d3
2717 #define GL_MATRIX20_ARB 0x88d4
2718 #define GL_MATRIX21_ARB 0x88d5
2719 #define GL_MATRIX22_ARB 0x88d6
2720 #define GL_MATRIX23_ARB 0x88d7
2721 #define GL_MATRIX24_ARB 0x88d8
2722 #define GL_MATRIX25_ARB 0x88d9
2723 #define GL_MATRIX26_ARB 0x88da
2724 #define GL_MATRIX27_ARB 0x88db
2725 #define GL_MATRIX28_ARB 0x88dc
2726 #define GL_MATRIX29_ARB 0x88dd
2727 #define GL_MATRIX30_ARB 0x88de
2728 #define GL_MATRIX31_ARB 0x88df
2730 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1DARBPROC)(GLuint index, GLdouble x);
2731 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1DVARBPROC)(GLuint index, const GLdouble *v);
2732 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1FARBPROC)(GLuint index, GLfloat x);
2733 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1FVARBPROC)(GLuint index, const GLfloat *v);
2734 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1SARBPROC)(GLuint index, GLshort x);
2735 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1SVARBPROC)(GLuint index, const GLshort *v);
2736 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2DARBPROC)(GLuint index, GLdouble x, GLdouble y);
2737 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2DVARBPROC)(GLuint index, const GLdouble *v);
2738 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2FARBPROC)(GLuint index, GLfloat x, GLfloat y);
2739 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2FVARBPROC)(GLuint index, const GLfloat *v);
2740 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2SARBPROC)(GLuint index, GLshort x, GLshort y);
2741 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2SVARBPROC)(GLuint index, const GLshort *v);
2742 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3DARBPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
2743 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3DVARBPROC)(GLuint index, const GLdouble *v);
2744 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3FARBPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
2745 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3FVARBPROC)(GLuint index, const GLfloat *v);
2746 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3SARBPROC)(GLuint index, GLshort x, GLshort y, GLshort z);
2747 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3SVARBPROC)(GLuint index, const GLshort *v);
2748 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NBVARBPROC)(GLuint index, const GLbyte *v);
2749 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NIVARBPROC)(GLuint index, const GLint *v);
2750 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NSVARBPROC)(GLuint index, const GLshort *v);
2751 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUBARBPROC)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
2752 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUBVARBPROC)(GLuint index, const GLubyte *v);
2753 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUIVARBPROC)(GLuint index, const GLuint *v);
2754 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4NUSVARBPROC)(GLuint index, const GLushort *v);
2755 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4BVARBPROC)(GLuint index, const GLbyte *v);
2756 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4DARBPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2757 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4DVARBPROC)(GLuint index, const GLdouble *v);
2758 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4FARBPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2759 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4FVARBPROC)(GLuint index, const GLfloat *v);
2760 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4IVARBPROC)(GLuint index, const GLint *v);
2761 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4SARBPROC)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
2762 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4SVARBPROC)(GLuint index, const GLshort *v);
2763 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4UBVARBPROC)(GLuint index, const GLubyte *v);
2764 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4UIVARBPROC)(GLuint index, const GLuint *v);
2765 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4USVARBPROC)(GLuint index, const GLushort *v);
2766 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBPOINTERARBPROC)(GLuint index, GLint size,
2767 GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
2768 typedef void (WINE_GLAPI *PGLFNENABLEVERTEXATTRIBARRAYARBPROC)(GLuint index);
2769 typedef void (WINE_GLAPI *PGLFNDISABLEVERTEXATTRIBARRAYARBPROC)(GLuint index);
2770 typedef void (WINE_GLAPI *PGLFNPROGRAMSTRINGARBPROC)(GLenum target, GLenum format, GLsizei len, const GLvoid *string);
2771 typedef void (WINE_GLAPI *PGLFNBINDPROGRAMARBPROC)(GLenum target, GLuint program);
2772 typedef void (WINE_GLAPI *PGLFNDELETEPROGRAMSARBPROC)(GLsizei n, const GLuint *programs);
2773 typedef void (WINE_GLAPI *PGLFNGENPROGRAMSARBPROC)(GLsizei n, GLuint *programs);
2774 typedef void (WINE_GLAPI *PGLFNPROGRAMENVPARAMETER4DARBPROC)(GLenum target,
2775 GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2776 typedef void (WINE_GLAPI *PGLFNPROGRAMENVPARAMETER4DVARBPROC)(GLenum target, GLuint index, const GLdouble *params);
2777 typedef void (WINE_GLAPI *PGLFNPROGRAMENVPARAMETER4FARBPROC)(GLenum target,
2778 GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2779 typedef void (WINE_GLAPI *PGLFNPROGRAMENVPARAMETER4FVARBPROC)(GLenum target, GLuint index, const GLfloat *params);
2780 typedef void (WINE_GLAPI *PGLFNPROGRAMLOCALPARAMETER4DARBPROC)(GLenum target,
2781 GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2782 typedef void (WINE_GLAPI *PGLFNPROGRAMLOCALPARAMETER4DVARBPROC)(GLenum target, GLuint index, const GLdouble *params);
2783 typedef void (WINE_GLAPI *PGLFNPROGRAMLOCALPARAMETER4FARBPROC)(GLenum target,
2784 GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2785 typedef void (WINE_GLAPI *PGLFNPROGRAMLOCALPARAMETER4FVARBPROC)(GLenum target, GLuint index, const GLfloat *params);
2786 typedef void (WINE_GLAPI *PGLFNGETPROGRAMENVPARAMETERDVARBPROC)(GLenum target, GLuint index, GLdouble *params);
2787 typedef void (WINE_GLAPI *PGLFNGETPROGRAMENVPARAMETERFVARBPROC)(GLenum target, GLuint index, GLfloat *params);
2788 typedef void (WINE_GLAPI *PGLFNGETPROGRAMLOCALPARAMETERDVARBPROC)(GLenum target, GLuint index, GLdouble *params);
2789 typedef void (WINE_GLAPI *PGLFNGETPROGRAMLOCALPARAMETERFVARBPROC)(GLenum target, GLuint index, GLfloat *params);
2790 typedef void (WINE_GLAPI *PGLFNGETPROGRAMIVARBPROC)(GLenum target, GLenum pname, GLint *params);
2791 typedef void (WINE_GLAPI *PGLFNGETPROGRAMSTRINGARBPROC)(GLenum target, GLenum pname, GLvoid *string);
2792 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBDVARBPROC)(GLuint index, GLenum pname, GLdouble *params);
2793 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBFVARBPROC)(GLuint index, GLenum pname, GLfloat *params);
2794 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBIVARBPROC)(GLuint index, GLenum pname, GLint *params);
2795 typedef void (WINE_GLAPI *PGLFNGETVERTEXATTRIBPOINTERVARBPROC)(GLuint index, GLenum pname, GLvoid* *pointer);
2796 typedef GLboolean (WINE_GLAPI *PGLFNISPROGRAMARBPROC)(GLuint program);
2798 /* GL_ARB_vertex_shader */
2799 #ifndef GL_ARB_vertex_shader
2800 #define GL_ARB_vertex_shader 1
2801 #define GL_VERTEX_SHADER_ARB 0x8b31
2802 #define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8b4a
2803 #define GL_MAX_VARYING_FLOATS_ARB 0x8b4b
2804 #define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8b4c
2805 #define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8b4d
2806 #define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8b89
2807 #define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8b8a
2809 typedef void (WINE_GLAPI *WINED3D_PFNGLGETOBJECTPARAMETERIVARBPROC)(GLhandleARB obj, GLenum pname, GLint *params);
2810 typedef void (WINE_GLAPI *WINED3D_PFNGLGETOBJECTPARAMETERFVARBPROC)(GLhandleARB obj, GLenum pname, GLfloat *params);
2811 typedef GLint (WINE_GLAPI *WINED3D_PFNGLGETUNIFORMLOCATIONARBPROC)(GLhandleARB programObj, const GLcharARB *name);
2812 typedef void (WINE_GLAPI *WINED3D_PFNGLGETACTIVEUNIFORMARBPROC)(GLhandleARB programObj, GLuint index,
2813 GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2814 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM1IARBPROC)(GLint location, GLint v0);
2815 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM2IARBPROC)(GLint location, GLint v0, GLint v1);
2816 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM3IARBPROC)(GLint location, GLint v0, GLint v1, GLint v2);
2817 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM4IARBPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2818 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM1FARBPROC)(GLint location, GLfloat v0);
2819 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM2FARBPROC)(GLint location, GLfloat v0, GLfloat v1);
2820 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM3FARBPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2821 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM4FARBPROC)(GLint location,
2822 GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2823 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM1IVARBPROC)(GLint location, GLsizei count, const GLint *value);
2824 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM2IVARBPROC)(GLint location, GLsizei count, const GLint *value);
2825 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM3IVARBPROC)(GLint location, GLsizei count, const GLint *value);
2826 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM4IVARBPROC)(GLint location, GLsizei count, const GLint *value);
2827 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM1FVARBPROC)(GLint location, GLsizei count, const GLfloat *value);
2828 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM2FVARBPROC)(GLint location, GLsizei count, const GLfloat *value);
2829 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM3FVARBPROC)(GLint location, GLsizei count, const GLfloat *value);
2830 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORM4FVARBPROC)(GLint location, GLsizei count, const GLfloat *value);
2831 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORMMATRIX2FVARBPROC)(GLint location,
2832 GLsizei count, GLboolean transpose, const GLfloat *value);
2833 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORMMATRIX3FVARBPROC)(GLint location,
2834 GLsizei count, GLboolean transpose, const GLfloat *value);
2835 typedef void (WINE_GLAPI *WINED3D_PFNGLUNIFORMMATRIX4FVARBPROC)(GLint location,
2836 GLsizei count, GLboolean transpose, const GLfloat *value);
2837 typedef void (WINE_GLAPI *WINED3D_PFNGLGETUNIFORMFVARBPROC)(GLhandleARB programObj, GLint location, GLfloat *params);
2838 typedef void (WINE_GLAPI *WINED3D_PFNGLGETUNIFORMIVARBPROC)(GLhandleARB programObj, GLint location, GLint *params);
2839 typedef void (WINE_GLAPI *WINED3D_PFNGLGETINFOLOGARBPROC)(GLhandleARB obj,
2840 GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
2841 typedef void (WINE_GLAPI *WINED3D_PFNGLUSEPROGRAMOBJECTARBPROC)(GLhandleARB programObj);
2842 typedef GLhandleARB (WINE_GLAPI *WINED3D_PFNGLCREATESHADEROBJECTARBPROC)(GLenum shaderType);
2843 typedef void (WINE_GLAPI *WINED3D_PFNGLSHADERSOURCEARBPROC)(GLhandleARB shaderObj,
2844 GLsizei count, const GLcharARB* *string, const GLint *length);
2845 typedef void (WINE_GLAPI *WINED3D_PFNGLCOMPILESHADERARBPROC)(GLhandleARB shaderObj);
2846 typedef GLhandleARB (WINE_GLAPI *WINED3D_PFNGLCREATEPROGRAMOBJECTARBPROC)(void);
2847 typedef void (WINE_GLAPI *WINED3D_PFNGLATTACHOBJECTARBPROC)(GLhandleARB containerObj, GLhandleARB obj);
2848 typedef void (WINE_GLAPI *WINED3D_PFNGLLINKPROGRAMARBPROC)(GLhandleARB programObj);
2849 typedef void (WINE_GLAPI *WINED3D_PFNGLDETACHOBJECTARBPROC)(GLhandleARB containerObj, GLhandleARB attachedObj);
2850 typedef void (WINE_GLAPI *WINED3D_PFNGLDELETEOBJECTARBPROC)(GLhandleARB obj);
2851 typedef void (WINE_GLAPI *WINED3D_PFNGLVALIDATEPROGRAMARBPROC)(GLhandleARB programObj);
2852 typedef void (WINE_GLAPI *WINED3D_PFNGLGETATTACHEDOBJECTSARBPROC)(GLhandleARB containerObj,
2853 GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
2854 typedef GLhandleARB (WINE_GLAPI *WINED3D_PFNGLGETHANDLEARBPROC)(GLenum pname);
2855 typedef void (WINE_GLAPI *WINED3D_PFNGLGETSHADERSOURCEARBPROC)(GLhandleARB obj,
2856 GLsizei maxLength, GLsizei *length, GLcharARB *source);
2857 typedef void (WINE_GLAPI *WINED3D_PFNGLBINDATTRIBLOCATIONARBPROC)(GLhandleARB programObj,
2858 GLuint index, const GLcharARB *name);
2859 typedef GLint (WINE_GLAPI *WINED3D_PFNGLGETATTRIBLOCATIONARBPROC)(GLhandleARB programObj, const GLcharARB *name);
2861 /* GL_ATI_fragment_shader */
2862 #ifndef GL_ATI_fragment_shader
2863 #define GL_ATI_fragment_shader 1
2864 #define GL_FRAGMENT_SHADER_ATI 0x8920
2865 #define GL_REG_0_ATI 0x8921
2866 #define GL_REG_1_ATI 0x8922
2867 #define GL_REG_2_ATI 0x8923
2868 #define GL_REG_3_ATI 0x8924
2869 #define GL_REG_4_ATI 0x8925
2870 #define GL_REG_5_ATI 0x8926
2871 #define GL_CON_0_ATI 0x8941
2872 #define GL_CON_1_ATI 0x8942
2873 #define GL_CON_2_ATI 0x8943
2874 #define GL_CON_3_ATI 0x8944
2875 #define GL_CON_4_ATI 0x8945
2876 #define GL_CON_5_ATI 0x8946
2877 #define GL_CON_6_ATI 0x8947
2878 #define GL_CON_7_ATI 0x8948
2879 #define GL_MOV_ATI 0x8961
2880 #define GL_ADD_ATI 0x8963
2881 #define GL_MUL_ATI 0x8964
2882 #define GL_SUB_ATI 0x8965
2883 #define GL_DOT3_ATI 0x8966
2884 #define GL_DOT4_ATI 0x8967
2885 #define GL_MAD_ATI 0x8968
2886 #define GL_LERP_ATI 0x8969
2887 #define GL_CND_ATI 0x896a
2888 #define GL_CND0_ATI 0x896b
2889 #define GL_DOT2_ADD_ATI 0x896c
2890 #define GL_SECONDARY_INTERPOLATOR_ATI 0x896d
2891 #define GL_SWIZZLE_STR_ATI 0x8976
2892 #define GL_SWIZZLE_STQ_ATI 0x8977
2893 #define GL_SWIZZLE_STR_DR_ATI 0x8978
2894 #define GL_SWIZZLE_STQ_DQ_ATI 0x8979
2895 #define GL_RED_BIT_ATI 0x00000001
2896 #define GL_GREEN_BIT_ATI 0x00000002
2897 #define GL_BLUE_BIT_ATI 0x00000004
2898 #define GL_2X_BIT_ATI 0x00000001
2899 #define GL_4X_BIT_ATI 0x00000002
2900 #define GL_8X_BIT_ATI 0x00000004
2901 #define GL_HALF_BIT_ATI 0x00000008
2902 #define GL_QUARTER_BIT_ATI 0x00000010
2903 #define GL_EIGHTH_BIT_ATI 0x00000020
2904 #define GL_SATURATE_BIT_ATI 0x00000040
2905 #define GL_COMP_BIT_ATI 0x00000002
2906 #define GL_NEGATE_BIT_ATI 0x00000004
2907 #define GL_BIAS_BIT_ATI 0x00000008
2909 typedef GLuint (WINE_GLAPI *PGLFNGENFRAGMENTSHADERSATI)(GLuint range);
2910 typedef void (WINE_GLAPI *PGLFNBINDFRAGMENTSHADERATI)(GLuint id);
2911 typedef void (WINE_GLAPI *PGLFNDELETEFRAGMENTSHADERATI)(GLuint id);
2912 typedef void (WINE_GLAPI *PGLFNBEGINFRAGMENTSHADERATI)(void);
2913 typedef void (WINE_GLAPI *PGLFNENDFRAGMENTSHADERATI)(void);
2914 typedef void (WINE_GLAPI *PGLFNPASSTEXCOORDATI)(GLuint dst, GLuint coord, GLenum swizzle);
2915 typedef void (WINE_GLAPI *PGLFNSAMPLEMAPATI)(GLuint dst, GLuint interp, GLenum swizzle);
2916 typedef void (WINE_GLAPI *PGLFNCOLORFRAGMENTOP1ATI)(GLenum op, GLuint dst, GLuint dstMask,
2917 GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
2918 typedef void (WINE_GLAPI *PGLFNCOLORFRAGMENTOP2ATI)(GLenum op, GLuint dst, GLuint dstMask,
2919 GLuint dstMod, GLuint arg1, GLuint arg1Rep,
2920 GLuint arg1Mod, GLuint arg2, GLuint arg2Rep,
2922 typedef void (WINE_GLAPI *PGLFNCOLORFRAGMENTOP3ATI)(GLenum op, GLuint dst, GLuint dstMask,
2923 GLuint dstMod, GLuint arg1, GLuint arg1Rep,
2924 GLuint arg1Mod, GLuint arg2, GLuint arg2Rep,
2925 GLuint arg2Mod, GLuint arg3, GLuint arg3Rep,
2927 typedef void (WINE_GLAPI *PGLFNALPHAFRAGMENTOP1ATI)(GLenum op, GLuint dst, GLuint dstMod,
2928 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
2929 typedef void (WINE_GLAPI *PGLFNALPHAFRAGMENTOP2ATI)(GLenum op, GLuint dst, GLuint dstMod,
2930 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod,
2931 GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
2932 typedef void (WINE_GLAPI *PGLFNALPHAFRAGMENTOP3ATI)(GLenum op, GLuint dst, GLuint dstMod,
2933 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod,
2934 GLuint arg2, GLuint arg2Rep, GLuint arg2Mod,
2935 GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
2936 typedef void (WINE_GLAPI *PGLFNSETFRAGMENTSHADERCONSTANTATI)(GLuint dst, const GLfloat *value);
2938 /* GL_ATI_separate_stencil */
2939 #ifndef GL_ATI_separate_stencil
2940 #define GL_ATI_separate_stencil 1
2941 #define GL_STENCIL_BACK_FUNC_ATI 0x8800
2942 #define GL_STENCIL_BACK_FAIL_ATI 0x8801
2943 #define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
2944 #define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
2946 typedef void (WINE_GLAPI *PGLFNSTENCILOPSEPARATEATIPROC)(GLenum, GLenum, GLenum, GLenum);
2947 typedef void (WINE_GLAPI *PGLFNSTENCILFUNCSEPARATEATIPROC)(GLenum, GLenum, GLint, GLuint);
2949 /* GL_ATI_texture_compression_3dc */
2950 #ifndef GL_ATI_texture_compression_3dc
2951 #define GL_ATI_texture_compression_3dc 1
2952 #define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837
2955 /* GL_ATI_texture_env_combine3 */
2956 #ifndef GL_ATI_texture_env_combine3
2957 #define GL_ATI_texture_env_combine3 1
2958 #define GL_MODULATE_ADD_ATI 0x8744
2959 #define GL_MODULATE_SIGNED_ADD_ATI 0x8745
2960 #define GL_MODULATE_SUBTRACT_ATI 0x8746
2965 /* GL_ATI_texture_mirror_once */
2966 #ifndef GL_ATI_texture_mirror_once
2967 #define GL_ATI_texture_mirror_once 1
2968 #define GL_MIRROR_CLAMP_ATI 0x8742
2969 #define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743
2972 /* GL_EXT_blend_equation_separate */
2973 typedef void (WINE_GLAPI *PGLFNBLENDEQUATIONSEPARATEEXTPROC)(GLenum modeRGB, GLenum modeAlpha);
2975 /* GL_EXT_blend_func_separate */
2976 #ifndef GL_EXT_blend_func_separate
2977 #define GL_EXT_blend_func_separate 1
2978 #define GL_BLEND_DST_RGB_EXT 0x80c8
2979 #define GL_BLEND_SRC_RGB_EXT 0x80c9
2980 #define GL_BLEND_DST_ALPHA_EXT 0x80ca
2981 #define GL_BLEND_SRC_ALPHA_EXT 0x80cb
2983 typedef void (WINE_GLAPI *PGLFNBLENDFUNCSEPARATEEXTPROC)(GLenum sfactorRGB, GLenum dfactorRGB,
2984 GLenum sfactorAlpha, GLenum dfactorAlpha);
2986 /* GL_EXT_depth_bounds_test */
2987 #ifndef GL_EXT_depth_bounds_test
2988 #define GL_EXT_depth_bounds_test 1
2989 #define GL_DEPTH_BOUNDS_TEST_EXT 0x8890
2990 #define GL_DEPTH_BOUNDS_EXT 0x8891
2992 typedef void (WINE_GLAPI *PGLFNDEPTHBOUNDSEXTPROC)(GLclampd zmin, GLclampd zmax);
2994 /* GL_EXT_draw_buffers2 */
2995 typedef GLvoid (WINE_GLAPI *PGLFNCOLORMASKINDEXEDEXTPROC)(GLuint buffer_idx, GLboolean r, GLboolean g,
2996 GLboolean b, GLboolean a);
2997 typedef GLvoid (WINE_GLAPI *PGLFNGETBOOLEANINDEXEDVEXTPROC)(GLenum param, GLuint index, GLboolean *value);
2998 typedef GLvoid (WINE_GLAPI *PGLFNGETINTEGERINDEXEDVEXTPROC)(GLenum param, GLuint index, GLint *value);
2999 typedef GLvoid (WINE_GLAPI *PGLFNENABLEINDEXEDEXTPROC)(GLenum target, GLuint index);
3000 typedef GLvoid (WINE_GLAPI *PGLFNDISABLEINDEXEDEXTPROC)(GLenum target, GLuint index);
3001 typedef GLboolean (WINE_GLAPI *PGLFNISENABLEDINDEXEDEXTPROC)(GLenum target, GLuint index);
3003 /* GL_EXT_fog_coord */
3004 #ifndef GL_EXT_fog_coord
3005 #define GL_EXT_fog_coord 1
3006 #define GL_FOG_COORDINATE_SOURCE_EXT 0x8450
3007 #define GL_FOG_COORDINATE_EXT 0x8451
3008 #define GL_FRAGMENT_DEPTH_EXT 0x8452
3009 #define GL_CURRENT_FOG_COORDINATE_EXT 0x8453
3010 #define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454
3011 #define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
3012 #define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
3013 #define GL_FOG_COORDINATE_ARRAY_EXT 0x8457
3015 typedef void (WINE_GLAPI *PGLFNGLFOGCOORDFEXTPROC)(GLfloat coord);
3016 typedef void (WINE_GLAPI *PGLFNGLFOGCOORDFVEXTPROC)(const GLfloat *coord);
3017 typedef void (WINE_GLAPI *PGLFNGLFOGCOORDDEXTPROC)(GLdouble coord);
3018 typedef void (WINE_GLAPI *PGLFNGLFOGCOORDDVEXTPROC)(const GLdouble *coord);
3019 typedef void (WINE_GLAPI *PGLFNGLFOGCOORDPOINTEREXTPROC)(GLenum type, GLsizei stride, GLvoid *data);
3021 /* GL_EXT_framebuffer_blit */
3022 #ifndef GL_EXT_framebuffer_blit
3023 #define GL_EXT_framebuffer_blit 1
3024 #define GL_READ_FRAMEBUFFER_EXT 0x8ca8
3025 #define GL_DRAW_FRAMEBUFFER_EXT 0x8ca9
3026 #define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8ca6
3027 #define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8caa
3029 typedef void (WINE_GLAPI *PGLFNGLBLITFRAMEBUFFEREXTPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
3030 GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
3032 /* GL_EXT_framebuffer_multisample */
3033 #ifndef GL_EXT_framebuffer_multisample
3034 #define GL_EXT_framebuffer_multisample 1
3035 #define GL_RENDERBUFFER_SAMPLES_EXT 0x8cab
3036 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8d56
3037 #define GL_MAX_SAMPLES_EXT 0x8d57
3039 typedef void (WINE_GLAPI *PGLFNRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)(GLenum target, GLsizei samples,
3040 GLenum internalformat, GLsizei width, GLsizei height);
3042 /* GL_EXT_framebuffer_object */
3043 #ifndef GL_EXT_framebuffer_object
3044 #define GL_EXT_framebuffer_object 1
3045 #define GL_FRAMEBUFFER_EXT 0x8d40
3046 #define GL_RENDERBUFFER_EXT 0x8d41
3047 #define GL_STENCIL_INDEX1_EXT 0x8d46
3048 #define GL_STENCIL_INDEX4_EXT 0x8d47
3049 #define GL_STENCIL_INDEX8_EXT 0x8d48
3050 #define GL_STENCIL_INDEX16_EXT 0x8d49
3051 #define GL_RENDERBUFFER_WIDTH_EXT 0x8d42
3052 #define GL_RENDERBUFFER_HEIGHT_EXT 0x8d43
3053 #define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8d44
3054 #define GL_RENDERBUFFER_RED_SIZE_EXT 0x8d50
3055 #define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8d51
3056 #define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8d52
3057 #define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8d53
3058 #define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8d54
3059 #define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8d55
3060 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8cd0
3061 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8cd1
3062 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8cd2
3063 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8cd3
3064 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8cd4
3065 #define GL_COLOR_ATTACHMENT0_EXT 0x8ce0
3066 #define GL_COLOR_ATTACHMENT1_EXT 0x8ce1
3067 #define GL_COLOR_ATTACHMENT2_EXT 0x8ce2
3068 #define GL_COLOR_ATTACHMENT3_EXT 0x8ce3
3069 #define GL_COLOR_ATTACHMENT4_EXT 0x8ce4
3070 #define GL_COLOR_ATTACHMENT5_EXT 0x8ce5
3071 #define GL_COLOR_ATTACHMENT6_EXT 0x8ce6
3072 #define GL_COLOR_ATTACHMENT7_EXT 0x8ce7
3073 #define GL_COLOR_ATTACHMENT8_EXT 0x8ce8
3074 #define GL_COLOR_ATTACHMENT9_EXT 0x8ce9
3075 #define GL_COLOR_ATTACHMENT10_EXT 0x8cea
3076 #define GL_COLOR_ATTACHMENT11_EXT 0x8ceb
3077 #define GL_COLOR_ATTACHMENT12_EXT 0x8cec
3078 #define GL_COLOR_ATTACHMENT13_EXT 0x8ced
3079 #define GL_COLOR_ATTACHMENT14_EXT 0x8cee
3080 #define GL_COLOR_ATTACHMENT15_EXT 0x8cef
3081 #define GL_DEPTH_ATTACHMENT_EXT 0x8d00
3082 #define GL_STENCIL_ATTACHMENT_EXT 0x8d20
3083 #define GL_FRAMEBUFFER_COMPLETE_EXT 0x8cd5
3084 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8cd6
3085 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8cd7
3086 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8cd9
3087 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8cda
3088 #define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8cdb
3089 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8cdc
3090 #define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8cdd
3091 #define GL_FRAMEBUFFER_BINDING_EXT 0x8ca6
3092 #define GL_RENDERBUFFER_BINDING_EXT 0x8ca7
3093 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8cdF
3094 #define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84e8
3095 #define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
3097 typedef GLboolean (WINE_GLAPI *PGLFNGLISRENDERBUFFEREXTPROC)(GLuint renderbuffer);
3098 typedef void (WINE_GLAPI *PGLFNGLBINDRENDERBUFFEREXTPROC)(GLenum target, GLuint renderbuffer);
3099 typedef void (WINE_GLAPI *PGLFNGLDELETERENDERBUFFERSEXTPROC)(GLsizei n, const GLuint *renderbuffers);
3100 typedef void (WINE_GLAPI *PGLFNGLGENRENDERBUFFERSEXTPROC)(GLsizei n, GLuint *renderbuffers);
3101 typedef void (WINE_GLAPI *PGLFNGLRENDERBUFFERSTORAGEEXTPROC)(GLenum target,
3102 GLenum internalformat, GLsizei width, GLsizei height);
3103 typedef void (WINE_GLAPI *PGLFNGLGETRENDERBUFFERPARAMETERIVEXTPROC)(GLenum target, GLenum pname, GLint *params);
3104 typedef GLboolean (WINE_GLAPI *PGLFNGLISFRAMEBUFFEREXTPROC)(GLuint framebuffer);
3105 typedef void (WINE_GLAPI *PGLFNGLBINDFRAMEBUFFEREXTPROC)(GLenum target, GLuint framebuffer);
3106 typedef void (WINE_GLAPI *PGLFNGLDELETEFRAMEBUFFERSEXTPROC)(GLsizei n, const GLuint *framebuffers);
3107 typedef void (WINE_GLAPI *PGLFNGLGENFRAMEBUFFERSEXTPROC)(GLsizei n, GLuint *framebuffers);
3108 typedef GLenum (WINE_GLAPI *PGLFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)(GLenum target);
3109 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE1DEXTPROC)(GLenum target, GLenum attachment,
3110 GLenum textarget, GLuint texture, GLint level);
3111 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE2DEXTPROC)(GLenum target, GLenum attachment,
3112 GLenum textarget, GLuint texture, GLint level);
3113 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERTEXTURE3DEXTPROC)(GLenum target, GLenum attachment,
3114 GLenum textarget, GLuint texture, GLint level, GLint zoffset);
3115 typedef void (WINE_GLAPI *PGLFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)(GLenum target, GLenum attachment,
3116 GLenum renderbuffertarget, GLuint renderbuffer);
3117 typedef void (WINE_GLAPI *PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)(GLenum target,
3118 GLenum attachment, GLenum pname, GLint *params);
3119 typedef void (WINE_GLAPI *PGLFNGLGENERATEMIPMAPEXTPROC)(GLenum target);
3121 /* GL_EXT_gpu_program_parameters */
3122 #ifndef GL_EXT_gpu_program_parameters
3123 #define GL_EXT_gpu_program_parameters 1
3124 typedef void (WINE_GLAPI *PGLFNPROGRAMENVPARAMETERS4FVEXTPROC)(GLenum target,
3125 GLuint index, GLsizei count, const float *params);
3126 typedef void (WINE_GLAPI *PGLFNPROGRAMLOCALPARAMETERS4FVEXTPROC)(GLenum target,
3127 GLuint index, GLsizei count, const float *params);
3130 /* GL_EXT_gpu_shader4 */
3131 #ifndef GL_EXT_gpu_shader4
3132 #define GL_EXT_gpu_shader4 1
3133 #define GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88fd
3134 #define GL_SAMPLER_1D_ARRAY_EXT 0x8dc0
3135 #define GL_SAMPLER_2D_ARRAY_EXT 0x8dc1
3136 #define GL_SAMPLER_BUFFER_EXT 0x8dc2
3137 #define GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8dc3
3138 #define GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8dc4
3139 #define GL_SAMPLER_CUBE_SHADOW_EXT 0x8dc5
3140 #define GL_UNSIGNED_INT_VEC2_EXT 0x8dc6
3141 #define GL_UNSIGNED_INT_VEC3_EXT 0x8dc7
3142 #define GL_UNSIGNED_INT_VEC4_EXT 0x8dc8
3143 #define GL_INT_SAMPLER_1D_EXT 0x8dc9
3144 #define GL_INT_SAMPLER_2D_EXT 0x8dca
3145 #define GL_INT_SAMPLER_3D_EXT 0x8dcb
3146 #define GL_INT_SAMPLER_CUBE_EXT 0x8dcc
3147 #define GL_INT_SAMPLER_2D_RECT_EXT 0x8dcd
3148 #define GL_INT_SAMPLER_1D_ARRAY_EXT 0x8dce
3149 #define GL_INT_SAMPLER_2D_ARRAY_EXT 0x8dcf
3150 #define GL_INT_SAMPLER_BUFFER_EXT 0x8dd0
3151 #define GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8dd1
3152 #define GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8dd2
3153 #define GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8dd3
3154 #define GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8dd4
3155 #define GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8dd5
3156 #define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8dd6
3157 #define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8dd7
3158 #define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8dd8
3159 #define GL_MIN_PROGRAM_TEXEL_OFFSET_EXT 0x8904
3160 #define GL_MAX_PROGRAM_TEXEL_OFFSET_EXT 0x8905
3162 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI1IEXTPROC)(GLuint index, GLint x);
3163 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI2IEXTPROC)(GLuint index, GLint x, GLint y);
3164 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI3IEXTPROC)(GLuint index, GLint x, GLint y, GLint z);
3165 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4IEXTPROC)(GLuint index, GLint x, GLint y, GLint z, GLint w);
3166 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI1UIEXTPROC)(GLuint index, GLuint x);
3167 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI2UIEXTPROC)(GLuint index, GLuint x, GLuint y);
3168 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI3UIEXTPROC)(GLuint index, GLuint x, GLuint y, GLuint z);
3169 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4UIEXTPROC)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
3170 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI1IVEXTPROC)(GLuint index, const GLint *v);
3171 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI2IVEXTPROC)(GLuint index, const GLint *v);
3172 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI3IVEXTPROC)(GLuint index, const GLint *v);
3173 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4IVEXTPROC)(GLuint index, const GLint *v);
3174 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI1UIVEXTPROC)(GLuint index, const GLuint *v);
3175 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI2UIVEXTPROC)(GLuint index, const GLuint *v);
3176 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI3UIVEXTPROC)(GLuint index, const GLuint *v);
3177 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4UIVEXTPROC)(GLuint index, const GLuint *v);
3178 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4BVEXTPROC)(GLuint index, const GLbyte *v);
3179 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4SVEXTPROC)(GLuint index, const GLshort *v);
3180 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4UBVEXTPROC)(GLuint index, const GLubyte *v);
3181 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBI4USVEXTPROC)(GLuint index, const GLushort *v);
3182 typedef GLvoid (WINE_GLAPI *PGLFNVERTEXATTRIBIPOINTEREXTPROC)(GLuint index, GLint size, GLenum type,
3183 GLsizei stride, const GLvoid *pointer);
3184 typedef GLvoid (WINE_GLAPI *PGLFNGETVERTEXATTRIBIIVEXTPROC)(GLuint index, GLenum pname, GLint *params);
3185 typedef GLvoid (WINE_GLAPI *PGLFNGETVERTEXATTRIBIUIVEXTPROC)(GLuint index, GLenum pname, GLuint *params);
3186 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM1UIEXTPROC)(GLint location, GLuint v0);
3187 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM2UIEXTPROC)(GLint location, GLuint v0, GLuint v1);
3188 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM3UIEXTPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2);
3189 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM4UIEXTPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
3190 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM1UIVEXTPROC)(GLint location, GLsizei count, const GLuint *value);
3191 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM2UIVEXTPROC)(GLint location, GLsizei count, const GLuint *value);
3192 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM3UIVEXTPROC)(GLint location, GLsizei count, const GLuint *value);
3193 typedef GLvoid (WINE_GLAPI *PGLFNUNIFORM4UIVEXTPROC)(GLint location, GLsizei count, const GLuint *value);
3194 typedef GLvoid (WINE_GLAPI *PGLFNGETUNIFORMUIVEXTPROC)(GLuint program, GLint location, const GLuint *params);
3195 typedef GLvoid (WINE_GLAPI *PGLFNBINDFRAGDATALOCATIONEXTPROC)(GLuint program, GLuint color_number, const GLchar *name);
3196 typedef GLint (WINE_GLAPI *PGLFNGETFRAGDATALOCATIONEXTPROC)(GLuint program, const GLchar *name);
3198 /* GL_EXT_packed_depth_stencil */
3199 #ifndef GL_EXT_packed_depth_stencil
3200 #define GL_EXT_packed_depth_stencil 1
3201 #define GL_DEPTH_STENCIL_EXT 0x84f9
3202 #define GL_UNSIGNED_INT_24_8_EXT 0x84fa
3203 #define GL_DEPTH24_STENCIL8_EXT 0x88f0
3204 #define GL_TEXTURE_STENCIL_SIZE_EXT 0x88f1
3207 /* GL_EXT_paletted_texture */
3208 #ifndef GL_EXT_paletted_texture
3209 #define GL_EXT_paletted_texture 1
3210 #define GL_COLOR_INDEX1_EXT 0x80e2
3211 #define GL_COLOR_INDEX2_EXT 0x80e3
3212 #define GL_COLOR_INDEX4_EXT 0x80e4
3213 #define GL_COLOR_INDEX8_EXT 0x80e5
3214 #define GL_COLOR_INDEX12_EXT 0x80e6
3215 #define GL_COLOR_INDEX16_EXT 0x80e7
3216 #define GL_TEXTURE_INDEX_SIZE_EXT 0x80ed
3218 typedef void (WINE_GLAPI *PGLFNGLCOLORTABLEEXTPROC)(GLenum target, GLenum internalFormat,
3219 GLsizei width, GLenum format, GLenum type, const GLvoid *table);
3221 /* GL_EXT_point_parameters */
3222 #ifndef GL_EXT_point_parameters
3223 #define GL_EXT_point_parameters 1
3224 #define GL_POINT_SIZE_MIN_EXT 0x8126
3225 #define GL_POINT_SIZE_MAX_EXT 0x8127
3226 #define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128
3227 #define GL_DISTANCE_ATTENUATION_EXT 0x8129
3229 typedef void (WINE_GLAPI *PGLFNGLPOINTPARAMETERFEXTPROC)(GLenum pname, GLfloat param);
3230 typedef void (WINE_GLAPI *PGLFNGLPOINTPARAMETERFVEXTPROC)(GLenum pname, const GLfloat *params);
3232 /* GL_EXT_provoking_vertex */
3233 #ifndef GL_EXT_provoking_vertex
3234 #define GL_EXT_provoking_vertex 1
3235 #define GL_FIRST_VERTEX_CONVENTION_EXT 0x8e4d
3236 #define GL_LAST_VERTEX_CONVENTION_EXT 0x8e4e
3237 #define GL_PROVOKING_VERTEX_EXT 0x8e4f
3238 #define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8e4c
3240 typedef void (WINE_GLAPI *PGLFNGLPROVOKINGVERTEXEXTPROC)(GLenum mode);
3242 /* GL_EXT_secondary_color */
3243 #ifndef GL_EXT_secondary_color
3244 #define GL_EXT_secondary_color 1
3245 #define GL_COLOR_SUM_EXT 0x8458
3246 #define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459
3247 #define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845a
3248 #define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845b
3249 #define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845c
3250 #define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845d
3251 #define GL_SECONDARY_COLOR_ARRAY_EXT 0x845e
3253 typedef void (WINE_GLAPI *PGLFNGLSECONDARYCOLOR3FEXTPROC)(GLfloat red, GLfloat green, GLfloat blue);
3254 typedef void (WINE_GLAPI *PGLFNGLSECONDARYCOLOR3FVEXTPROC)(const GLfloat *v);
3255 typedef void (WINE_GLAPI *PGLFNGLSECONDARYCOLOR3UBEXTPROC)(GLubyte red, GLubyte green, GLubyte blue);
3256 typedef void (WINE_GLAPI *PGLFNGLSECONDARYCOLOR3UBVEXTPROC)(const GLubyte *v);
3257 typedef void (WINE_GLAPI *PGLFNGLSECONDARYCOLORPOINTEREXTPROC)(GLint size, GLenum type,
3258 GLsizei stride, const GLvoid *pointer);
3260 /* GL_EXT_stencil_two_side */
3261 #ifndef GL_EXT_stencil_two_side
3262 #define GL_EXT_stencil_two_side 1
3263 #define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910
3264 #define GL_ACTIVE_STENCIL_FACE_EXT 0x8911
3266 typedef void (WINE_GLAPI *PGLFNACTIVESTENCILFACEEXTPROC)(GLenum face);
3268 /* GL_EXT_stencil_wrap */
3269 #ifndef GL_EXT_stencil_wrap
3270 #define GL_EXT_stencil_wrap 1
3271 #define GL_INCR_WRAP_EXT 0x8507
3272 #define GL_DECR_WRAP_EXT 0x8508
3275 /* GL_EXT_texture3D */
3276 #ifndef GL_EXT_texture3D
3277 #define GL_EXT_texture3D 1
3278 #define GL_PACK_SKIP_IMAGES_EXT 0x806b
3279 #define GL_PACK_IMAGE_HEIGHT_EXT 0x806c
3280 #define GL_UNPACK_SKIP_IMAGES_EXT 0x806d
3281 #define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806e
3282 #define GL_TEXTURE_3D_EXT 0x806f
3283 #define GL_PROXY_TEXTURE_3D_EXT 0x8070
3284 #define GL_TEXTURE_DEPTH_EXT 0x8071
3285 #define GL_TEXTURE_WRAP_R_EXT 0x8072
3286 #define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073
3288 typedef void (WINE_GLAPI *PGLFNGLTEXIMAGE3DEXTPROC)(GLenum target, GLint level, GLenum internalformat,
3289 GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
3290 typedef void (WINE_GLAPI *PGLFNGLTEXSUBIMAGE3DEXTPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset,
3291 GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
3293 /* GL_EXT_texture_compression_rgtc */
3294 #ifndef GL_EXT_texture_compression_rgtc
3295 #define GL_EXT_texture_compression_rgtc 1
3296 #define GL_COMPRESSED_RED_RGTC1_EXT 0x8dbb
3297 #define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8dbc
3298 #define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8dbd
3299 #define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8dbe
3302 /* GL_EXT_texture_compression_s3tc */
3303 #ifndef GL_EXT_texture_compression_s3tc
3304 #define GL_EXT_texture_compression_s3tc 1
3305 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83f0
3306 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83f1
3307 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83f2
3308 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83f3
3310 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXIMAGE3DPROC)(GLenum target, GLint level, GLenum internalformat,
3311 GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
3312 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat,
3313 GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
3314 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat,
3315 GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
3316 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum target, GLint level,
3317 GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth,
3318 GLenum format, GLsizei imageSize, const GLvoid *data);
3319 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset,
3320 GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
3321 typedef void (WINE_GLAPI *PGLFNCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset,
3322 GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
3323 typedef void (WINE_GLAPI *PGLFNGETCOMPRESSEDTEXIMAGEPROC)(GLenum target, GLint level, void *img);
3325 /* GL_EXT_texture_env_combine */
3326 #ifndef GL_EXT_texture_env_combine
3327 #define GL_EXT_texture_env_combine 1
3328 #define GL_COMBINE_EXT 0x8570
3329 #define GL_COMBINE_RGB_EXT 0x8571
3330 #define GL_COMBINE_ALPHA_EXT 0x8572
3331 #define GL_RGB_SCALE_EXT 0x8573
3332 #define GL_ADD_SIGNED_EXT 0x8574
3333 #define GL_INTERPOLATE_EXT 0x8575
3334 #define GL_SUBTRACT_EXT 0x84e7
3335 #define GL_CONSTANT_EXT 0x8576
3336 #define GL_PRIMARY_COLOR_EXT 0x8577
3337 #define GL_PREVIOUS_EXT 0x8578
3338 #define GL_SOURCE0_RGB_EXT 0x8580
3339 #define GL_SOURCE1_RGB_EXT 0x8581
3340 #define GL_SOURCE2_RGB_EXT 0x8582
3341 #define GL_SOURCE3_RGB_EXT 0x8583
3342 #define GL_SOURCE4_RGB_EXT 0x8584
3343 #define GL_SOURCE5_RGB_EXT 0x8585
3344 #define GL_SOURCE6_RGB_EXT 0x8586
3345 #define GL_SOURCE7_RGB_EXT 0x8587
3346 #define GL_SOURCE0_ALPHA_EXT 0x8588
3347 #define GL_SOURCE1_ALPHA_EXT 0x8589
3348 #define GL_SOURCE2_ALPHA_EXT 0x858a
3349 #define GL_SOURCE3_ALPHA_EXT 0x858b
3350 #define GL_SOURCE4_ALPHA_EXT 0x858c
3351 #define GL_SOURCE5_ALPHA_EXT 0x858d
3352 #define GL_SOURCE6_ALPHA_EXT 0x858e
3353 #define GL_SOURCE7_ALPHA_EXT 0x858f
3354 #define GL_OPERAND0_RGB_EXT 0x8590
3355 #define GL_OPERAND1_RGB_EXT 0x8591
3356 #define GL_OPERAND2_RGB_EXT 0x8592
3357 #define GL_OPERAND3_RGB_EXT 0x8593
3358 #define GL_OPERAND4_RGB_EXT 0x8594
3359 #define GL_OPERAND5_RGB_EXT 0x8595
3360 #define GL_OPERAND6_RGB_EXT 0x8596
3361 #define GL_OPERAND7_RGB_EXT 0x8597
3362 #define GL_OPERAND0_ALPHA_EXT 0x8598
3363 #define GL_OPERAND1_ALPHA_EXT 0x8599
3364 #define GL_OPERAND2_ALPHA_EXT 0x859a
3365 #define GL_OPERAND3_ALPHA_EXT 0x859b
3366 #define GL_OPERAND4_ALPHA_EXT 0x859c
3367 #define GL_OPERAND5_ALPHA_EXT 0x859d
3368 #define GL_OPERAND6_ALPHA_EXT 0x859e
3369 #define GL_OPERAND7_ALPHA_EXT 0x859f
3372 /* GL_EXT_texture_env_dot3 */
3373 #ifndef GL_EXT_texture_env_dot3
3374 #define GL_EXT_texture_env_dot3 1
3375 #define GL_DOT3_RGB_EXT 0x8740
3376 #define GL_DOT3_RGBA_EXT 0x8741
3379 /* GL_EXT_texture_filter_anisotropic */
3380 #ifndef GL_EXT_texture_filter_anisotropic
3381 #define GL_EXT_texture_filter_anisotropic 1
3382 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84fe
3383 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84ff
3386 /* GL_EXT_texture_lod_bias */
3387 #ifndef GL_EXT_texture_lod_bias
3388 #define GL_EXT_texture_lod_bias 1
3389 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84fd
3390 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
3391 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501
3394 /* GL_EXT_texture_sRGB */
3395 #ifndef GL_EXT_texture_sRGB
3396 #define GL_EXT_texture_sRGB 1
3397 #define GL_SRGB_EXT 0x8c40
3398 #define GL_SRGB8_EXT 0x8c41
3399 #define GL_SRGB_ALPHA_EXT 0x8c42
3400 #define GL_SRGB8_ALPHA8_EXT 0x8c43
3401 #define GL_SLUMINANCE_ALPHA_EXT 0x8c44
3402 #define GL_SLUMINANCE8_ALPHA8_EXT 0x8c45
3403 #define GL_SLUMINANCE_EXT 0x8c46
3404 #define GL_SLUMINANCE8_EXT 0x8c47
3405 #define GL_COMPRESSED_SRGB_EXT 0x8c48
3406 #define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8c49
3407 #define GL_COMPRESSED_SLUMINANCE_EXT 0x8c4a
3408 #define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8c4b
3409 #define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8c4c
3410 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8c4d
3411 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8c4e
3412 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8c4f
3415 /* GL_NV_depth_clamp */
3416 #ifndef GL_NV_depth_clamp
3417 #define GL_NV_depth_clamp 1
3418 #define GL_DEPTH_CLAMP_NV 0x864f
3423 #define GL_NV_fence 1
3424 #define GL_ALL_COMPLETED_NV 0x84f2
3425 #define GL_FENCE_STATUS_NV 0x84f3
3426 #define GL_FENCE_CONDITION_NV 0x84f4
3428 typedef void (WINE_GLAPI *PGLFNGENFENCESNVPROC)(GLsizei, GLuint *);
3429 typedef void (WINE_GLAPI *PGLFNDELETEFENCESNVPROC)(GLuint, const GLuint *);
3430 typedef void (WINE_GLAPI *PGLFNSETFENCENVPROC)(GLuint, GLenum);
3431 typedef GLboolean (WINE_GLAPI *PGLFNTESTFENCENVPROC)(GLuint);
3432 typedef void (WINE_GLAPI *PGLFNFINISHFENCENVPROC)(GLuint);
3433 typedef GLboolean (WINE_GLAPI *PGLFNISFENCENVPROC)(GLuint);
3434 typedef void (WINE_GLAPI *PGLFNGETFENCEIVNVPROC)(GLuint, GLenum, GLint *);
3436 /* GL_NV_fog_distance */
3437 #ifndef GL_NV_fog_distance
3438 #define GL_NV_fog_distance 1
3439 #define GL_FOG_DISTANCE_MODE_NV 0x855a
3440 #define GL_EYE_RADIAL_NV 0x855b
3441 #define GL_EYE_PLANE_ABSOLUTE_NV 0x855c
3442 /* reuse GL_EYE_PLANE */
3445 /* GL_NV_half_float */
3446 #ifndef GL_NV_half_float
3447 #define GL_NV_half_float 1
3448 typedef unsigned short GLhalfNV;
3449 #define GL_HALF_FLOAT_NV 0x140b
3451 typedef void (WINE_GLAPI *PGLFNVERTEX2HNVPROC)(GLhalfNV x, GLhalfNV y);
3452 typedef void (WINE_GLAPI *PGLFNVERTEX2HVNVPROC)(const GLhalfNV *v);
3453 typedef void (WINE_GLAPI *PGLFNVERTEX3HNVPROC)(GLhalfNV x, GLhalfNV y, GLhalfNV z);
3454 typedef void (WINE_GLAPI *PGLFNVERTEX3HVNVPROC)(const GLhalfNV *v);
3455 typedef void (WINE_GLAPI *PGLFNVERTEX4HNVPROC)(GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
3456 typedef void (WINE_GLAPI *PGLFNVERTEX4HVNVPROC)(const GLhalfNV *v);
3457 typedef void (WINE_GLAPI *PGLFNNORMAL3HNVPROC)(GLhalfNV nx, GLhalfNV ny, GLhalfNV nz);
3458 typedef void (WINE_GLAPI *PGLFNNORMAL3HVNVPROC)(const GLhalfNV *v);
3459 typedef void (WINE_GLAPI *PGLFNCOLOR3HNVPROC)(GLhalfNV red, GLhalfNV green, GLhalfNV blue);
3460 typedef void (WINE_GLAPI *PGLFNCOLOR3HVNVPROC)(const GLhalfNV *v);
3461 typedef void (WINE_GLAPI *PGLFNCOLOR4HNVPROC)(GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha);
3462 typedef void (WINE_GLAPI *PGLFNCOLOR4HVNVPROC)(const GLhalfNV *v);
3463 typedef void (WINE_GLAPI *PGLFNTEXCOORD1HNVPROC)(GLhalfNV s);
3464 typedef void (WINE_GLAPI *PGLFNTEXCOORD1HVNVPROC)(const GLhalfNV *v);
3465 typedef void (WINE_GLAPI *PGLFNTEXCOORD2HNVPROC)(GLhalfNV s, GLhalfNV t);
3466 typedef void (WINE_GLAPI *PGLFNTEXCOORD2HVNVPROC)(const GLhalfNV *v);
3467 typedef void (WINE_GLAPI *PGLFNTEXCOORD3HNVPROC)(GLhalfNV s, GLhalfNV t, GLhalfNV r);
3468 typedef void (WINE_GLAPI *PGLFNTEXCOORD3HVNVPROC)(const GLhalfNV *v);
3469 typedef void (WINE_GLAPI *PGLFNTEXCOORD4HNVPROC)(GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
3470 typedef void (WINE_GLAPI *PGLFNTEXCOORD4HVNVPROC)(const GLhalfNV *v);
3471 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD1HNVPROC)(GLenum target, GLhalfNV s);
3472 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD1HVNVPROC)(GLenum target, const GLhalfNV *v);
3473 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD2HNVPROC)(GLenum target, GLhalfNV s, GLhalfNV t);
3474 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD2HVNVPROC)(GLenum target, const GLhalfNV *v);
3475 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD3HNVPROC)(GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r);
3476 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD3HVNVPROC)(GLenum target, const GLhalfNV *v);
3477 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD4HNVPROC)(GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
3478 typedef void (WINE_GLAPI *PGLFNMULTITEXCOORD4HVNVPROC)(GLenum target, const GLhalfNV *v);
3479 typedef void (WINE_GLAPI *PGLFNFOGCOORDHNVPROC)(GLhalfNV fog);
3480 typedef void (WINE_GLAPI *PGLFNFOGCOORDHVNVPROC)(const GLhalfNV *fog);
3481 typedef void (WINE_GLAPI *PGLFNSECONDARYCOLOR3HNVPROC)(GLhalfNV red, GLhalfNV green, GLhalfNV blue);
3482 typedef void (WINE_GLAPI *PGLFNSECONDARYCOLOR3HVNVPROC)(const GLhalfNV *v);
3483 typedef void (WINE_GLAPI *PGLFNVERTEXWEIGHTHNVPROC)(GLhalfNV weight);
3484 typedef void (WINE_GLAPI *PGLFNVERTEXWEIGHTHVNVPROC)(const GLhalfNV *weight);
3485 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1HNVPROC)(GLuint index, GLhalfNV x);
3486 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB1HVNVPROC)(GLuint index, const GLhalfNV *v);
3487 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2HNVPROC)(GLuint index, GLhalfNV x, GLhalfNV y);
3488 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB2HVNVPROC)(GLuint index, const GLhalfNV *v);
3489 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3HNVPROC)(GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z);
3490 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB3HVNVPROC)(GLuint index, const GLhalfNV *v);
3491 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4HNVPROC)(GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
3492 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIB4HVNVPROC)(GLuint index, const GLhalfNV *v);
3493 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBS1HVNVPROC)(GLuint index, GLsizei n, const GLhalfNV *v);
3494 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBS2HVNVPROC)(GLuint index, GLsizei n, const GLhalfNV *v);
3495 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBS3HVNVPROC)(GLuint index, GLsizei n, const GLhalfNV *v);
3496 typedef void (WINE_GLAPI *PGLFNVERTEXATTRIBS4HVNVPROC)(GLuint index, GLsizei n, const GLhalfNV *v);
3498 /* GL_NV_light_max_exponent */
3499 #ifndef GL_NV_light_max_exponent
3500 #define GL_NV_light_max_exponent 1
3501 #define GL_MAX_SHININESS_NV 0x8504
3502 #define GL_MAX_SPOT_EXPONENT_NV 0x8505
3505 /* GL_NV_point_sprite */
3506 #ifndef GL_NV_point_sprite
3507 #define GL_NV_point_sprite 1
3508 #define GL_NV_POINT_SPRITE_NV 0x8861
3509 #define GL_NV_COORD_REPLACE_NV 0x8862
3510 #define GL_NV_POINT_SPRITE_R_MODE_NV 0x8863
3512 typedef void (WINE_GLAPI *PGLFNPOINTPARAMETERIVNVPROC)(GLenum pname, const GLint *params);
3513 typedef void (WINE_GLAPI *PGLFNPOINTPARAMETERINVPROC)(GLenum pname, GLint param);
3515 /* GL_NV_register_combiners */
3516 #ifndef GL_NV_register_combiners
3517 #define GL_NV_register_combiners 1
3518 #define GL_REGISTER_COMBINERS_NV 0x8522
3519 #define GL_VARIABLE_A_NV 0x8523
3520 #define GL_VARIABLE_B_NV 0x8524
3521 #define GL_VARIABLE_C_NV 0x8525
3522 #define GL_VARIABLE_D_NV 0x8526
3523 #define GL_VARIABLE_E_NV 0x8527
3524 #define GL_VARIABLE_F_NV 0x8528
3525 #define GL_VARIABLE_G_NV 0x8529
3526 #define GL_CONSTANT_COLOR0_NV 0x852a
3527 #define GL_CONSTANT_COLOR1_NV 0x852b
3528 #define GL_PRIMARY_COLOR_NV 0x852c
3529 #define GL_SECONDARY_COLOR_NV 0x852d
3530 #define GL_SPARE0_NV 0x852e
3531 #define GL_SPARE1_NV 0x852f
3532 #define GL_DISCARD_NV 0x8530
3533 #define GL_E_TIMES_F_NV 0x8531
3534 #define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532
3535 #define GL_UNSIGNED_IDENTITY_NV 0x8536
3536 #define GL_UNSIGNED_INVERT_NV 0x8537
3537 #define GL_EXPAND_NORMAL_NV 0x8538
3538 #define GL_EXPAND_NEGATE_NV 0x8539
3539 #define GL_HALF_BIAS_NORMAL_NV 0x853a
3540 #define GL_HALF_BIAS_NEGATE_NV 0x853b
3541 #define GL_SIGNED_IDENTITY_NV 0x853c
3542 #define GL_SIGNED_NEGATE_NV 0x853d
3543 #define GL_SCALE_BY_TWO_NV 0x853e
3544 #define GL_SCALE_BY_FOUR_NV 0x853f
3545 #define GL_SCALE_BY_ONE_HALF_NV 0x8540
3546 #define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541
3547 #define GL_COMBINER_INPUT_NV 0x8542
3548 #define GL_COMBINER_MAPPING_NV 0x8543
3549 #define GL_COMBINER_COMPONENT_USAGE_NV 0x8544
3550 #define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545
3551 #define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546
3552 #define GL_COMBINER_MUX_SUM_NV 0x8547
3553 #define GL_COMBINER_SCALE_NV 0x8548
3554 #define GL_COMBINER_BIAS_NV 0x8549
3555 #define GL_COMBINER_AB_OUTPUT_NV 0x854a
3556 #define GL_COMBINER_CD_OUTPUT_NV 0x854b
3557 #define GL_COMBINER_SUM_OUTPUT_NV 0x854c
3558 #define GL_MAX_GENERAL_COMBINERS_NV 0x854d
3559 #define GL_NUM_GENERAL_COMBINERS_NV 0x854e
3560 #define GL_COLOR_SUM_CLAMP_NV 0x854f
3561 #define GL_COMBINER0_NV 0x8550
3562 #define GL_COMBINER1_NV 0x8551
3563 #define GL_COMBINER2_NV 0x8552
3564 #define GL_COMBINER3_NV 0x8553
3565 #define GL_COMBINER4_NV 0x8554
3566 #define GL_COMBINER5_NV 0x8555
3567 #define GL_COMBINER6_NV 0x8556
3568 #define GL_COMBINER7_NV 0x8557
3569 /* reuse GL_TEXTURE0_ARB */
3570 /* reuse GL_TEXTURE1_ARB */
3575 typedef void (WINE_GLAPI *PGLFNCOMBINERPARAMETERFVNVPROC)(GLenum pname, const GLfloat *params);
3576 typedef void (WINE_GLAPI *PGLFNCOMBINERPARAMETERFNVPROC)(GLenum pname, GLfloat param);
3577 typedef void (WINE_GLAPI *PGLFNCOMBINERPARAMETERIVNVPROC)(GLenum pname, const GLint *params);
3578 typedef void (WINE_GLAPI *PGLFNCOMBINERPARAMETERINVPROC)(GLenum pname, GLint param);
3579 typedef void (WINE_GLAPI *PGLFNCOMBINERINPUTNVPROC)(GLenum stage, GLenum portion,
3580 GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
3581 typedef void (WINE_GLAPI *PGLFNCOMBINEROUTPUTNVPROC)(GLenum stage, GLenum portion,
3582 GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias,
3583 GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
3584 typedef void (WINE_GLAPI *PGLFNFINALCOMBINERINPUTNVPROC)(GLenum variable, GLenum input,
3585 GLenum mapping, GLenum componentUsage);
3586 typedef void (WINE_GLAPI *PGLFNGETCOMBINERINPUTPARAMETERFVNVPROC)(GLenum stage, GLenum portion,
3587 GLenum variable, GLenum pname, GLfloat *params);
3588 typedef void (WINE_GLAPI *PGLFNGETCOMBINERINPUTPARAMETERIVNVPROC)(GLenum stage, GLenum portion,
3589 GLenum variable, GLenum pname, GLint *params);
3590 typedef void (WINE_GLAPI *PGLFNGETCOMBINEROUTPUTPARAMETERFVNVPROC)(GLenum stage, GLenum portion,
3591 GLenum pname, GLfloat *params);
3592 typedef void (WINE_GLAPI *PGLFNGETCOMBINEROUTPUTPARAMETERIVNVPROC)(GLenum stage, GLenum portion,
3593 GLenum pname, GLint *params);
3594 typedef void (WINE_GLAPI *PGLFNGETFINALCOMBINERINPUTPARAMETERFVNVPROC)(GLenum variable, GLenum pname, GLfloat *params);
3595 typedef void (WINE_GLAPI *PGLFNGETFINALCOMBINERINPUTPARAMETERIVNVPROC)(GLenum variable, GLenum pname, GLint *params);
3597 /* GL_NV_register_combiners2 */
3598 #ifndef GL_NV_register_combiners2
3599 #define GL_NV_register_combiners2 1
3600 #define GL_PER_STAGE_CONSTANTS_NV 0x8535
3602 typedef void (WINE_GLAPI *PGLFNCOMBINERSTAGEPARAMETERFVNVPROC)(GLenum stage, GLenum pname, const GLfloat *params);
3603 typedef void (WINE_GLAPI *PGLFNGETCOMBINERSTAGEPARAMETERFVNVPROC)(GLenum stage, GLenum pname, GLfloat *params);
3605 /* GL_NV_texgen_reflection */
3606 #ifndef GL_NV_texgen_reflection
3607 #define GL_NV_texgen_reflection 1
3608 #define GL_NORMAL_MAP_NV 0x8511
3609 #define GL_REFLECTION_MAP_NV 0x8512
3612 /* GL_NV_texture_env_combine4 */
3613 #ifndef GL_NV_texture_env_combine4
3614 #define GL_NV_texture_env_combine4 1
3615 #define GL_COMBINE4_NV 0x8503
3616 #define GL_SOURCE3_RGB_NV 0x8583
3617 #define GL_SOURCE3_ALPHA_NV 0x858b
3618 #define GL_OPERAND3_RGB_NV 0x8593
3619 #define GL_OPERAND3_ALPHA_NV 0x859b
3622 /* GL_NV_texture_shader */
3623 #ifndef GL_NV_texture_shader
3624 #define GL_NV_texture_shader 1
3625 #define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864c
3626 #define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864d
3627 #define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864e
3628 #define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86d9
3629 #define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86da
3630 #define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86db
3631 #define GL_DSDT_MAG_INTENSITY_NV 0x86dc
3632 #define GL_SHADER_CONSISTENT_NV 0x86dd
3633 #define GL_TEXTURE_SHADER_NV 0x86de
3634 #define GL_SHADER_OPERATION_NV 0x86df
3635 #define GL_CULL_MODES_NV 0x86e0
3636 #define GL_OFFSET_TEXTURE_MATRIX_NV 0x86e1
3637 #define GL_OFFSET_TEXTURE_SCALE_NV 0x86e2
3638 #define GL_OFFSET_TEXTURE_BIAS_NV 0x86e3
3639 #define GL_OFFSET_TEXTURE_2D_MATRIX_NV GL_OFFSET_TEXTURE_MATRIX_NV
3640 #define GL_OFFSET_TEXTURE_2D_SCALE_NV GL_OFFSET_TEXTURE_SCALE_NV
3641 #define GL_OFFSET_TEXTURE_2D_BIAS_NV GL_OFFSET_TEXTURE_BIAS_NV
3642 #define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86e4
3643 #define GL_CONST_EYE_NV 0x86e5
3644 #define GL_PASS_THROUGH_NV 0x86e6
3645 #define GL_CULL_FRAGMENT_NV 0x86e7
3646 #define GL_OFFSET_TEXTURE_2D_NV 0x86e8
3647 #define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86e9
3648 #define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86ea
3649 #define GL_DOT_PRODUCT_NV 0x86ec
3650 #define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ed
3651 #define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86ee
3652 #define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86f0
3653 #define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86f1
3654 #define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86f2
3655 #define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86f3
3656 #define GL_HILO_NV 0x86f4
3657 #define GL_DSDT_NV 0x86f5
3658 #define GL_DSDT_MAG_NV 0x86f6
3659 #define GL_DSDT_MAG_VIB_NV 0x86f7
3660 #define GL_HILO16_NV 0x86f8
3661 #define GL_SIGNED_HILO_NV 0x86f9
3662 #define GL_SIGNED_HILO16_NV 0x86fa
3663 #define GL_SIGNED_RGBA_NV 0x86fb
3664 #define GL_SIGNED_RGBA8_NV 0x86fc
3665 #define GL_SIGNED_RGB_NV 0x86fe
3666 #define GL_SIGNED_RGB8_NV 0x86ff
3667 #define GL_SIGNED_LUMINANCE_NV 0x8701
3668 #define GL_SIGNED_LUMINANCE8_NV 0x8702
3669 #define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
3670 #define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
3671 #define GL_SIGNED_ALPHA_NV 0x8705
3672 #define GL_SIGNED_ALPHA8_NV 0x8706
3673 #define GL_SIGNED_INTENSITY_NV 0x8707
3674 #define GL_SIGNED_INTENSITY8_NV 0x8708
3675 #define GL_DSDT8_NV 0x8709
3676 #define GL_DSDT8_MAG8_NV 0x870a
3677 #define GL_DSDT8_MAG8_INTENSITY8_NV 0x870b
3678 #define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870c
3679 #define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870d
3680 #define GL_HI_SCALE_NV 0x870e
3681 #define GL_LO_SCALE_NV 0x870f
3682 #define GL_DS_SCALE_NV 0x8710
3683 #define GL_DT_SCALE_NV 0x8711
3684 #define GL_MAGNITUDE_SCALE_NV 0x8712
3685 #define GL_VIBRANCE_SCALE_NV 0x8713
3686 #define GL_HI_BIAS_NV 0x8714
3687 #define GL_LO_BIAS_NV 0x8715
3688 #define GL_DS_BIAS_NV 0x8716
3689 #define GL_DT_BIAS_NV 0x8717
3690 #define GL_MAGNITUDE_BIAS_NV 0x8718
3691 #define GL_VIBRANCE_BIAS_NV 0x8719
3692 #define GL_TEXTURE_BORDER_VALUES_NV 0x871a
3693 #define GL_TEXTURE_HI_SIZE_NV 0x871b
3694 #define GL_TEXTURE_LO_SIZE_NV 0x871c
3695 #define GL_TEXTURE_DS_SIZE_NV 0x871d
3696 #define GL_TEXTURE_DT_SIZE_NV 0x871e
3697 #define GL_TEXTURE_MAG_SIZE_NV 0x871f
3700 /* GL_NV_texture_shader2 */
3701 #ifndef GL_NV_texture_shader2
3702 #define GL_NV_texture_shader2 1
3703 #define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86ef
3706 /* GL_NV_vertex_program2_option */
3707 #ifndef GL_NV_vertex_program2_option
3708 #define GL_NV_vertex_program2_option 1
3709 #define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88f4
3710 #define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88f5
3713 /* GL_SGIS_generate_mipmap */
3714 #ifndef GLX_SGIS_generate_mipmap
3715 #define GLX_SGIS_generate_mipmap 1
3716 #define GL_GENERATE_MIPMAP_SGIS 0x8191
3717 #define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192
3720 /* GLX_SGI_video_sync */
3721 typedef int (WINE_GLAPI *PGLXFNGETVIDEOSYNCSGIPROC)(unsigned int *);
3722 typedef int (WINE_GLAPI *PGLXFNWAITVIDEOSYNCSGIPROC)(int, int, unsigned int *);
3724 /* WGL_ARB_extensions_string */
3725 typedef const char *(WINAPI *WINED3D_PFNWGLGETEXTENSIONSSTRINGARBPROC)(HDC hdc);
3727 /* WGL_ARB_multisample */
3728 #ifndef WGL_ARB_multisample
3729 #define WGL_ARB_multisample 1
3730 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
3731 #define WGL_SAMPLES_ARB 0x2042
3734 /* WGL_ARB_pixel_format */
3735 #ifndef WGL_ARB_pixel_format
3736 #define WGL_ARB_pixel_format 1
3737 #define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
3738 #define WGL_DRAW_TO_WINDOW_ARB 0x2001
3739 #define WGL_DRAW_TO_BITMAP_ARB 0x2002
3740 #define WGL_ACCELERATION_ARB 0x2003
3741 #define WGL_NEED_PALETTE_ARB 0x2004
3742 #define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
3743 #define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
3744 #define WGL_SWAP_METHOD_ARB 0x2007
3745 #define WGL_NUMBER_OVERLAYS_ARB 0x2008
3746 #define WGL_NUMBER_UNDERLAYS_ARB 0x2009
3747 #define WGL_TRANSPARENT_ARB 0x200a
3748 #define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
3749 #define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
3750 #define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
3751 #define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203a
3752 #define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203b
3753 #define WGL_SHARE_DEPTH_ARB 0x200c
3754 #define WGL_SHARE_STENCIL_ARB 0x200d
3755 #define WGL_SHARE_ACCUM_ARB 0x200e
3756 #define WGL_SUPPORT_GDI_ARB 0x200f
3757 #define WGL_SUPPORT_OPENGL_ARB 0x2010
3758 #define WGL_DOUBLE_BUFFER_ARB 0x2011
3759 #define WGL_STEREO_ARB 0x2012
3760 #define WGL_PIXEL_TYPE_ARB 0x2013
3761 #define WGL_COLOR_BITS_ARB 0x2014
3762 #define WGL_RED_BITS_ARB 0x2015
3763 #define WGL_RED_SHIFT_ARB 0x2016
3764 #define WGL_GREEN_BITS_ARB 0x2017
3765 #define WGL_GREEN_SHIFT_ARB 0x2018
3766 #define WGL_BLUE_BITS_ARB 0x2019
3767 #define WGL_BLUE_SHIFT_ARB 0x201a
3768 #define WGL_ALPHA_BITS_ARB 0x201b
3769 #define WGL_ALPHA_SHIFT_ARB 0x201c
3770 #define WGL_ACCUM_BITS_ARB 0x201d
3771 #define WGL_ACCUM_RED_BITS_ARB 0x201e
3772 #define WGL_ACCUM_GREEN_BITS_ARB 0x201f
3773 #define WGL_ACCUM_BLUE_BITS_ARB 0x2020
3774 #define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
3775 #define WGL_DEPTH_BITS_ARB 0x2022
3776 #define WGL_STENCIL_BITS_ARB 0x2023
3777 #define WGL_AUX_BUFFERS_ARB 0x2024
3778 #define WGL_NO_ACCELERATION_ARB 0x2025
3779 #define WGL_GENERIC_ACCELERATION_ARB 0x2026
3780 #define WGL_FULL_ACCELERATION_ARB 0x2027
3781 #define WGL_SWAP_EXCHANGE_ARB 0x2028
3782 #define WGL_SWAP_COPY_ARB 0x2029
3783 #define WGL_SWAP_UNDEFINED_ARB 0x202a
3784 #define WGL_TYPE_RGBA_ARB 0x202b
3785 #define WGL_TYPE_COLORINDEX_ARB 0x202c
3787 typedef BOOL (WINAPI *WINED3D_PFNWGLGETPIXELFORMATATTRIBIVARBPROC)(HDC hdc, int iPixelFormat,
3788 int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
3789 typedef BOOL (WINAPI *WINED3D_PFNWGLGETPIXELFORMATATTRIBFVARBPROC)(HDC hdc, int iPixelFormat,
3790 int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
3791 typedef BOOL (WINAPI *WINED3D_PFNWGLCHOOSEPIXELFORMATARBPROC)(HDC hdc, const int *piAttribIList,
3792 const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
3794 /* WGL_ARB_pixel_format_float */
3795 #ifndef WGL_ARB_pixel_format_float
3796 #define WGL_ARB_pixel_format_float 1
3797 #define WGL_TYPE_RGBA_FLOAT_ARB 0x21a0
3800 /* WGL_WINE_pixel_format_passthrough */
3801 typedef BOOL (WINAPI *WINED3D_PFNWGLSETPIXELFORMATWINE)(HDC hdc, int iPixelFormat,
3802 const PIXELFORMATDESCRIPTOR *ppfd);
3804 #define GL_EXT_FUNCS_GEN \
3805 /* GL_APPLE_fence */ \
3806 USE_GL_FUNC(PGLFNGENFENCESAPPLEPROC, \
3807 glGenFencesAPPLE, APPLE_FENCE, NULL) \
3808 USE_GL_FUNC(PGLFNDELETEFENCESAPPLEPROC, \
3809 glDeleteFencesAPPLE, APPLE_FENCE, NULL) \
3810 USE_GL_FUNC(PGLFNSETFENCEAPPLEPROC, \
3811 glSetFenceAPPLE, APPLE_FENCE, NULL) \
3812 USE_GL_FUNC(PGLFNTESTFENCEAPPLEPROC, \
3813 glTestFenceAPPLE, APPLE_FENCE, NULL) \
3814 USE_GL_FUNC(PGLFNFINISHFENCEAPPLEPROC, \
3815 glFinishFenceAPPLE, APPLE_FENCE, NULL) \
3816 USE_GL_FUNC(PGLFNISFENCEAPPLEPROC, \
3817 glIsFenceAPPLE, APPLE_FENCE, NULL) \
3818 USE_GL_FUNC(PGLFNTESTOBJECTAPPLEPROC, \
3819 glTestObjectAPPLE, APPLE_FENCE, NULL) \
3820 USE_GL_FUNC(PGLFNFINISHOBJECTAPPLEPROC, \
3821 glFinishObjectAPPLE, APPLE_FENCE, NULL) \
3822 /* GL_APPLE_flush_buffer_range */ \
3823 USE_GL_FUNC(PGLFNBUFFERPARAMETERIAPPLE, \
3824 glBufferParameteriAPPLE, APPLE_FLUSH_BUFFER_RANGE, NULL) \
3825 USE_GL_FUNC(PGLFNFLUSHMAPPEDBUFFERRANGEAPPLE, \
3826 glFlushMappedBufferRangeAPPLE, APPLE_FLUSH_BUFFER_RANGE, NULL) \
3827 /* GL_APPLE_flush_render */ \
3828 USE_GL_FUNC(PGLFNFLUSHRENDERAPPLEPROC, \
3829 glFlushRenderAPPLE, APPLE_FLUSH_RENDER, NULL) \
3830 USE_GL_FUNC(PGLFNFINISHRENDERAPPLEPROC, \
3831 glFinishRenderAPPLE, APPLE_FLUSH_RENDER, NULL) \
3832 /* GL_ARB_color_buffer_float */ \
3833 USE_GL_FUNC(PGLFNCLAMPCOLORARBPROC, \
3834 glClampColorARB, ARB_COLOR_BUFFER_FLOAT, NULL) \
3835 /* GL_ARB_draw_buffers */ \
3836 USE_GL_FUNC(PGLFNDRAWBUFFERSARBPROC, \
3837 glDrawBuffersARB, ARB_DRAW_BUFFERS, NULL) \
3838 /* GL_ARB_framebuffer_object */ \
3839 USE_GL_FUNC(PGLFNGLISRENDERBUFFERPROC, \
3840 glIsRenderbuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3841 USE_GL_FUNC(PGLFNGLBINDRENDERBUFFERPROC, \
3842 glBindRenderbuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3843 USE_GL_FUNC(PGLFNGLDELETERENDERBUFFERSPROC, \
3844 glDeleteRenderbuffers, ARB_FRAMEBUFFER_OBJECT, NULL) \
3845 USE_GL_FUNC(PGLFNGLGENRENDERBUFFERSPROC, \
3846 glGenRenderbuffers, ARB_FRAMEBUFFER_OBJECT, NULL) \
3847 USE_GL_FUNC(PGLFNGLRENDERBUFFERSTORAGEPROC, \
3848 glRenderbufferStorage, ARB_FRAMEBUFFER_OBJECT, NULL) \
3849 USE_GL_FUNC(PGLFNRENDERBUFFERSTORAGEMULTISAMPLEPROC, \
3850 glRenderbufferStorageMultisample, ARB_FRAMEBUFFER_OBJECT, NULL) \
3851 USE_GL_FUNC(PGLFNGLGETRENDERBUFFERPARAMETERIVPROC, \
3852 glGetRenderbufferParameteriv, ARB_FRAMEBUFFER_OBJECT, NULL) \
3853 USE_GL_FUNC(PGLFNGLISFRAMEBUFFERPROC, \
3854 glIsFramebuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3855 USE_GL_FUNC(PGLFNGLBINDFRAMEBUFFERPROC, \
3856 glBindFramebuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3857 USE_GL_FUNC(PGLFNGLDELETEFRAMEBUFFERSPROC, \
3858 glDeleteFramebuffers, ARB_FRAMEBUFFER_OBJECT, NULL) \
3859 USE_GL_FUNC(PGLFNGLGENFRAMEBUFFERSPROC, \
3860 glGenFramebuffers, ARB_FRAMEBUFFER_OBJECT, NULL) \
3861 USE_GL_FUNC(PGLFNGLCHECKFRAMEBUFFERSTATUSPROC, \
3862 glCheckFramebufferStatus, ARB_FRAMEBUFFER_OBJECT, NULL) \
3863 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE1DPROC, \
3864 glFramebufferTexture1D, ARB_FRAMEBUFFER_OBJECT, NULL) \
3865 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE2DPROC, \
3866 glFramebufferTexture2D, ARB_FRAMEBUFFER_OBJECT, NULL) \
3867 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE3DPROC, \
3868 glFramebufferTexture3D, ARB_FRAMEBUFFER_OBJECT, NULL) \
3869 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURELAYERPROC, \
3870 glFramebufferTextureLayer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3871 USE_GL_FUNC(PGLFNGLFRAMEBUFFERRENDERBUFFERPROC, \
3872 glFramebufferRenderbuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3873 USE_GL_FUNC(PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC, \
3874 glGetFramebufferAttachmentParameteriv, ARB_FRAMEBUFFER_OBJECT, NULL) \
3875 USE_GL_FUNC(PGLFNGLBLITFRAMEBUFFERPROC, \
3876 glBlitFramebuffer, ARB_FRAMEBUFFER_OBJECT, NULL) \
3877 USE_GL_FUNC(PGLFNGLGENERATEMIPMAPPROC, \
3878 glGenerateMipmap, ARB_FRAMEBUFFER_OBJECT, NULL) \
3879 /* GL_ARB_geometry_shader4 */ \
3880 USE_GL_FUNC(PGLFNPROGRAMPARAMETERIARBPROC, \
3881 glProgramParameteriARB, ARB_GEOMETRY_SHADER4, NULL) \
3882 USE_GL_FUNC(PGLFNFRAMEBUFFERTEXTUREARBPROC, \
3883 glFramebufferTextureARB, ARB_GEOMETRY_SHADER4, NULL) \
3884 USE_GL_FUNC(PGLFNFRAMEBUFFERTEXTURELAYERARBPROC, \
3885 glFramebufferTextureLayerARB, ARB_GEOMETRY_SHADER4, NULL) \
3886 USE_GL_FUNC(PGLFNFRAMEBUFFERTEXTUREFACEARBPROC, \
3887 glFramebufferTextureFaceARB, ARB_GEOMETRY_SHADER4, NULL) \
3888 /* GL_ARB_imaging, GL_EXT_blend_minmax */ \
3889 USE_GL_FUNC(PGLFNBLENDCOLORPROC, \
3890 glBlendColorEXT, EXT_BLEND_COLOR, NULL) \
3891 USE_GL_FUNC(PGLFNBLENDEQUATIONPROC, \
3892 glBlendEquationEXT, EXT_BLEND_MINMAX, NULL) \
3893 /* GL_ARB_map_buffer_range */ \
3894 USE_GL_FUNC(PGLFNMAPBUFFERRANGEPROC, \
3895 glMapBufferRange, ARB_MAP_BUFFER_RANGE, NULL) \
3896 USE_GL_FUNC(PGLFNFLUSHMAPPEDBUFFERRANGEPROC, \
3897 glFlushMappedBufferRange, ARB_MAP_BUFFER_RANGE, NULL) \
3898 /* GL_ARB_multisample */ \
3899 USE_GL_FUNC(WINED3D_PFNGLSAMPLECOVERAGEARBPROC, \
3900 glSampleCoverageARB, ARB_MULTISAMPLE, NULL) \
3901 /* GL_ARB_multitexture */ \
3902 USE_GL_FUNC(WINED3D_PFNGLACTIVETEXTUREARBPROC, \
3903 glActiveTextureARB, ARB_MULTITEXTURE, NULL) \
3904 USE_GL_FUNC(WINED3D_PFNGLCLIENTACTIVETEXTUREARBPROC, \
3905 glClientActiveTextureARB, ARB_MULTITEXTURE, NULL) \
3906 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD1FARBPROC, \
3907 glMultiTexCoord1fARB, ARB_MULTITEXTURE, NULL) \
3908 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD1FVARBPROC, \
3909 glMultiTexCoord1fvARB, ARB_MULTITEXTURE, NULL) \
3910 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD2FARBPROC, \
3911 glMultiTexCoord2fARB, ARB_MULTITEXTURE, NULL) \
3912 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD2FVARBPROC, \
3913 glMultiTexCoord2fvARB, ARB_MULTITEXTURE, NULL) \
3914 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD3FARBPROC, \
3915 glMultiTexCoord3fARB, ARB_MULTITEXTURE, NULL) \
3916 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD3FVARBPROC, \
3917 glMultiTexCoord3fvARB, ARB_MULTITEXTURE, NULL) \
3918 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD4FARBPROC, \
3919 glMultiTexCoord4fARB, ARB_MULTITEXTURE, NULL) \
3920 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD4FVARBPROC, \
3921 glMultiTexCoord4fvARB, ARB_MULTITEXTURE, NULL) \
3922 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD2SVARBPROC, \
3923 glMultiTexCoord2svARB, ARB_MULTITEXTURE, NULL) \
3924 USE_GL_FUNC(WINED3D_PFNGLMULTITEXCOORD4SVARBPROC, \
3925 glMultiTexCoord4svARB, ARB_MULTITEXTURE, NULL) \
3926 /* GL_ARB_occlusion_query */ \
3927 USE_GL_FUNC(PGLFNGENQUERIESARBPROC, \
3928 glGenQueriesARB, ARB_OCCLUSION_QUERY, NULL) \
3929 USE_GL_FUNC(PGLFNDELETEQUERIESARBPROC, \
3930 glDeleteQueriesARB, ARB_OCCLUSION_QUERY, NULL) \
3931 USE_GL_FUNC(PGLFNBEGINQUERYARBPROC, \
3932 glBeginQueryARB, ARB_OCCLUSION_QUERY, NULL) \
3933 USE_GL_FUNC(PGLFNENDQUERYARBPROC, \
3934 glEndQueryARB, ARB_OCCLUSION_QUERY, NULL) \
3935 USE_GL_FUNC(PGLFNGETQUERYOBJECTIVARBPROC, \
3936 glGetQueryObjectivARB, ARB_OCCLUSION_QUERY, NULL) \
3937 USE_GL_FUNC(PGLFNGETQUERYOBJECTUIVARBPROC, \
3938 glGetQueryObjectuivARB, ARB_OCCLUSION_QUERY, NULL) \
3939 /* GL_ARB_point_parameters */ \
3940 USE_GL_FUNC(PGLFNGLPOINTPARAMETERFARBPROC, \
3941 glPointParameterfARB, ARB_POINT_PARAMETERS, NULL) \
3942 USE_GL_FUNC(PGLFNGLPOINTPARAMETERFVARBPROC, \
3943 glPointParameterfvARB, ARB_POINT_PARAMETERS, NULL) \
3944 /* GL_ARB_provoking_vertex */ \
3945 USE_GL_FUNC(PGLFNGLPROVOKINGVERTEXPROC, \
3946 glProvokingVertex, ARB_PROVOKING_VERTEX, NULL) \
3947 /* GL_ARB_shader_objects */ \
3948 USE_GL_FUNC(WINED3D_PFNGLGETOBJECTPARAMETERIVARBPROC, \
3949 glGetObjectParameterivARB, ARB_SHADER_OBJECTS, NULL) \
3950 USE_GL_FUNC(WINED3D_PFNGLGETOBJECTPARAMETERFVARBPROC, \
3951 glGetObjectParameterfvARB, ARB_SHADER_OBJECTS, NULL) \
3952 USE_GL_FUNC(WINED3D_PFNGLGETUNIFORMLOCATIONARBPROC, \
3953 glGetUniformLocationARB, ARB_SHADER_OBJECTS, NULL) \
3954 USE_GL_FUNC(WINED3D_PFNGLGETACTIVEUNIFORMARBPROC, \
3955 glGetActiveUniformARB, ARB_SHADER_OBJECTS, NULL) \
3956 USE_GL_FUNC(WINED3D_PFNGLUNIFORM1IARBPROC, \
3957 glUniform1iARB, ARB_SHADER_OBJECTS, NULL) \
3958 USE_GL_FUNC(WINED3D_PFNGLUNIFORM2IARBPROC, \
3959 glUniform2iARB, ARB_SHADER_OBJECTS, NULL) \
3960 USE_GL_FUNC(WINED3D_PFNGLUNIFORM3IARBPROC, \
3961 glUniform3iARB, ARB_SHADER_OBJECTS, NULL) \
3962 USE_GL_FUNC(WINED3D_PFNGLUNIFORM4IARBPROC, \
3963 glUniform4iARB, ARB_SHADER_OBJECTS, NULL) \
3964 USE_GL_FUNC(WINED3D_PFNGLUNIFORM1FARBPROC, \
3965 glUniform1fARB, ARB_SHADER_OBJECTS, NULL) \
3966 USE_GL_FUNC(WINED3D_PFNGLUNIFORM2FARBPROC, \
3967 glUniform2fARB, ARB_SHADER_OBJECTS, NULL) \
3968 USE_GL_FUNC(WINED3D_PFNGLUNIFORM3FARBPROC, \
3969 glUniform3fARB, ARB_SHADER_OBJECTS, NULL) \
3970 USE_GL_FUNC(WINED3D_PFNGLUNIFORM4FARBPROC, \
3971 glUniform4fARB, ARB_SHADER_OBJECTS, NULL) \
3972 USE_GL_FUNC(WINED3D_PFNGLUNIFORM1FVARBPROC, \
3973 glUniform1fvARB, ARB_SHADER_OBJECTS, NULL) \
3974 USE_GL_FUNC(WINED3D_PFNGLUNIFORM2FVARBPROC, \
3975 glUniform2fvARB, ARB_SHADER_OBJECTS, NULL) \
3976 USE_GL_FUNC(WINED3D_PFNGLUNIFORM3FVARBPROC, \
3977 glUniform3fvARB, ARB_SHADER_OBJECTS, NULL) \
3978 USE_GL_FUNC(WINED3D_PFNGLUNIFORM4FVARBPROC, \
3979 glUniform4fvARB, ARB_SHADER_OBJECTS, NULL) \
3980 USE_GL_FUNC(WINED3D_PFNGLUNIFORM1IVARBPROC, \
3981 glUniform1ivARB, ARB_SHADER_OBJECTS, NULL) \
3982 USE_GL_FUNC(WINED3D_PFNGLUNIFORM2IVARBPROC, \
3983 glUniform2ivARB, ARB_SHADER_OBJECTS, NULL) \
3984 USE_GL_FUNC(WINED3D_PFNGLUNIFORM3IVARBPROC, \
3985 glUniform3ivARB, ARB_SHADER_OBJECTS, NULL) \
3986 USE_GL_FUNC(WINED3D_PFNGLUNIFORM4IVARBPROC, \
3987 glUniform4ivARB, ARB_SHADER_OBJECTS, NULL) \
3988 USE_GL_FUNC(WINED3D_PFNGLUNIFORMMATRIX2FVARBPROC, \
3989 glUniformMatrix2fvARB, ARB_SHADER_OBJECTS, NULL) \
3990 USE_GL_FUNC(WINED3D_PFNGLUNIFORMMATRIX3FVARBPROC, \
3991 glUniformMatrix3fvARB, ARB_SHADER_OBJECTS, NULL) \
3992 USE_GL_FUNC(WINED3D_PFNGLUNIFORMMATRIX4FVARBPROC, \
3993 glUniformMatrix4fvARB, ARB_SHADER_OBJECTS, NULL) \
3994 USE_GL_FUNC(WINED3D_PFNGLGETUNIFORMFVARBPROC, \
3995 glGetUniformfvARB, ARB_SHADER_OBJECTS, NULL) \
3996 USE_GL_FUNC(WINED3D_PFNGLGETUNIFORMIVARBPROC, \
3997 glGetUniformivARB, ARB_SHADER_OBJECTS, NULL) \
3998 USE_GL_FUNC(WINED3D_PFNGLGETINFOLOGARBPROC, \
3999 glGetInfoLogARB, ARB_SHADER_OBJECTS, NULL) \
4000 USE_GL_FUNC(WINED3D_PFNGLUSEPROGRAMOBJECTARBPROC, \
4001 glUseProgramObjectARB, ARB_SHADER_OBJECTS, NULL) \
4002 USE_GL_FUNC(WINED3D_PFNGLCREATESHADEROBJECTARBPROC, \
4003 glCreateShaderObjectARB, ARB_SHADER_OBJECTS, NULL) \
4004 USE_GL_FUNC(WINED3D_PFNGLSHADERSOURCEARBPROC, \
4005 glShaderSourceARB, ARB_SHADER_OBJECTS, NULL) \
4006 USE_GL_FUNC(WINED3D_PFNGLCOMPILESHADERARBPROC, \
4007 glCompileShaderARB, ARB_SHADER_OBJECTS, NULL) \
4008 USE_GL_FUNC(WINED3D_PFNGLCREATEPROGRAMOBJECTARBPROC, \
4009 glCreateProgramObjectARB, ARB_SHADER_OBJECTS, NULL) \
4010 USE_GL_FUNC(WINED3D_PFNGLATTACHOBJECTARBPROC, \
4011 glAttachObjectARB, ARB_SHADER_OBJECTS, NULL) \
4012 USE_GL_FUNC(WINED3D_PFNGLLINKPROGRAMARBPROC, \
4013 glLinkProgramARB, ARB_SHADER_OBJECTS, NULL) \
4014 USE_GL_FUNC(WINED3D_PFNGLDETACHOBJECTARBPROC, \
4015 glDetachObjectARB, ARB_SHADER_OBJECTS, NULL) \
4016 USE_GL_FUNC(WINED3D_PFNGLDELETEOBJECTARBPROC, \
4017 glDeleteObjectARB, ARB_SHADER_OBJECTS, NULL) \
4018 USE_GL_FUNC(WINED3D_PFNGLVALIDATEPROGRAMARBPROC, \
4019 glValidateProgramARB, ARB_SHADER_OBJECTS, NULL) \
4020 USE_GL_FUNC(WINED3D_PFNGLGETATTACHEDOBJECTSARBPROC, \
4021 glGetAttachedObjectsARB, ARB_SHADER_OBJECTS, NULL) \
4022 USE_GL_FUNC(WINED3D_PFNGLGETHANDLEARBPROC, \
4023 glGetHandleARB, ARB_SHADER_OBJECTS, NULL) \
4024 USE_GL_FUNC(WINED3D_PFNGLGETSHADERSOURCEARBPROC, \
4025 glGetShaderSourceARB, ARB_SHADER_OBJECTS, NULL) \
4026 USE_GL_FUNC(WINED3D_PFNGLBINDATTRIBLOCATIONARBPROC, \
4027 glBindAttribLocationARB, ARB_SHADER_OBJECTS, NULL) \
4028 USE_GL_FUNC(WINED3D_PFNGLGETATTRIBLOCATIONARBPROC, \
4029 glGetAttribLocationARB, ARB_SHADER_OBJECTS, NULL) \
4031 USE_GL_FUNC(PGLFNFENCESYNCPROC, \
4032 glFenceSync, ARB_SYNC, NULL) \
4033 USE_GL_FUNC(PGLFNISSYNCPROC, \
4034 glIsSync, ARB_SYNC, NULL) \
4035 USE_GL_FUNC(PGLFNDELETESYNCPROC, \
4036 glDeleteSync, ARB_SYNC, NULL) \
4037 USE_GL_FUNC(PGLFNCLIENTWAITSYNCPROC, \
4038 glClientWaitSync, ARB_SYNC, NULL) \
4039 USE_GL_FUNC(PGLFNWAITSYNCPROC, \
4040 glWaitSync, ARB_SYNC, NULL) \
4041 USE_GL_FUNC(PGLFNGETINTEGER64VPROC, \
4042 glGetInteger64v, ARB_SYNC, NULL) \
4043 USE_GL_FUNC(PGLFNGETSYNCIVPROC, \
4044 glGetSynciv, ARB_SYNC, NULL) \
4045 /* GL_ARB_texture_compression */ \
4046 USE_GL_FUNC(PGLFNCOMPRESSEDTEXIMAGE2DPROC, \
4047 glCompressedTexImage2DARB, ARB_TEXTURE_COMPRESSION, NULL) \
4048 USE_GL_FUNC(PGLFNCOMPRESSEDTEXIMAGE3DPROC, \
4049 glCompressedTexImage3DARB, ARB_TEXTURE_COMPRESSION, NULL) \
4050 USE_GL_FUNC(PGLFNCOMPRESSEDTEXSUBIMAGE2DPROC, \
4051 glCompressedTexSubImage2DARB, ARB_TEXTURE_COMPRESSION, NULL) \
4052 USE_GL_FUNC(PGLFNCOMPRESSEDTEXSUBIMAGE3DPROC, \
4053 glCompressedTexSubImage3DARB, ARB_TEXTURE_COMPRESSION, NULL) \
4054 USE_GL_FUNC(PGLFNGETCOMPRESSEDTEXIMAGEPROC, \
4055 glGetCompressedTexImageARB, ARB_TEXTURE_COMPRESSION, NULL) \
4056 /* GL_ARB_vertex_blend */ \
4057 USE_GL_FUNC(PGLFNGLWEIGHTPOINTERARB, \
4058 glWeightPointerARB, ARB_VERTEX_BLEND, NULL) \
4059 USE_GL_FUNC(PGLFNGLWEIGHTBV, \
4060 glWeightbvARB, ARB_VERTEX_BLEND, NULL) \
4061 USE_GL_FUNC(PGLFNGLWEIGHTSV, \
4062 glWeightsvARB, ARB_VERTEX_BLEND, NULL) \
4063 USE_GL_FUNC(PGLFNGLWEIGHTIV, \
4064 glWeightivARB, ARB_VERTEX_BLEND, NULL) \
4065 USE_GL_FUNC(PGLFNGLWEIGHTFV, \
4066 glWeightfvARB, ARB_VERTEX_BLEND, NULL) \
4067 USE_GL_FUNC(PGLFNGLWEIGHTDV, \
4068 glWeightdvARB, ARB_VERTEX_BLEND, NULL) \
4069 USE_GL_FUNC(PGLFNGLWEIGHTUBV, \
4070 glWeightubvARB, ARB_VERTEX_BLEND, NULL) \
4071 USE_GL_FUNC(PGLFNGLWEIGHTUSV, \
4072 glWeightusvARB, ARB_VERTEX_BLEND, NULL) \
4073 USE_GL_FUNC(PGLFNGLWEIGHTUIV, \
4074 glWeightuivARB, ARB_VERTEX_BLEND, NULL) \
4075 USE_GL_FUNC(PGLFNGLVERTEXBLENDARB, \
4076 glVertexBlendARB, ARB_VERTEX_BLEND, NULL) \
4077 /* GL_ARB_vertex_buffer_object */ \
4078 USE_GL_FUNC(PGLFNBINDBUFFERARBPROC, \
4079 glBindBufferARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4080 USE_GL_FUNC(PGLFNDELETEBUFFERSARBPROC, \
4081 glDeleteBuffersARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4082 USE_GL_FUNC(PGLFNGENBUFFERSARBPROC, \
4083 glGenBuffersARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4084 USE_GL_FUNC(PGLFNISBUFFERARBPROC, \
4085 glIsBufferARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4086 USE_GL_FUNC(PGLFNBUFFERDATAARBPROC, \
4087 glBufferDataARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4088 USE_GL_FUNC(PGLFNBUFFERSUBDATAARBPROC, \
4089 glBufferSubDataARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4090 USE_GL_FUNC(PGLFNGETBUFFERSUBDATAARBPROC, \
4091 glGetBufferSubDataARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4092 USE_GL_FUNC(PGLFNMAPBUFFERARBPROC, \
4093 glMapBufferARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4094 USE_GL_FUNC(PGLFNUNMAPBUFFERARBPROC, \
4095 glUnmapBufferARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4096 USE_GL_FUNC(PGLFNGETBUFFERPARAMETERIVARBPROC, \
4097 glGetBufferParameterivARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4098 USE_GL_FUNC(PGLFNGETBUFFERPOINTERVARBPROC, \
4099 glGetBufferPointervARB, ARB_VERTEX_BUFFER_OBJECT, NULL) \
4100 /* GL_ARB_vertex_program */ \
4101 USE_GL_FUNC(PGLFNGENPROGRAMSARBPROC, \
4102 glGenProgramsARB, ARB_VERTEX_PROGRAM, NULL) \
4103 USE_GL_FUNC(PGLFNBINDPROGRAMARBPROC, \
4104 glBindProgramARB, ARB_VERTEX_PROGRAM, NULL) \
4105 USE_GL_FUNC(PGLFNPROGRAMSTRINGARBPROC, \
4106 glProgramStringARB, ARB_VERTEX_PROGRAM, NULL) \
4107 USE_GL_FUNC(PGLFNDELETEPROGRAMSARBPROC, \
4108 glDeleteProgramsARB, ARB_VERTEX_PROGRAM, NULL) \
4109 USE_GL_FUNC(PGLFNPROGRAMENVPARAMETER4FVARBPROC, \
4110 glProgramEnvParameter4fvARB, ARB_VERTEX_PROGRAM, NULL) \
4111 USE_GL_FUNC(PGLFNPROGRAMLOCALPARAMETER4FVARBPROC, \
4112 glProgramLocalParameter4fvARB, ARB_VERTEX_PROGRAM, NULL) \
4113 USE_GL_FUNC(PGLFNVERTEXATTRIBPOINTERARBPROC, \
4114 glVertexAttribPointerARB, ARB_VERTEX_PROGRAM, NULL) \
4115 USE_GL_FUNC(PGLFNENABLEVERTEXATTRIBARRAYARBPROC, \
4116 glEnableVertexAttribArrayARB, ARB_VERTEX_PROGRAM, NULL) \
4117 USE_GL_FUNC(PGLFNDISABLEVERTEXATTRIBARRAYARBPROC, \
4118 glDisableVertexAttribArrayARB, ARB_VERTEX_PROGRAM, NULL) \
4119 USE_GL_FUNC(PGLFNVERTEXATTRIB1DARBPROC, \
4120 glVertexAttrib1dARB, ARB_VERTEX_PROGRAM, NULL) \
4121 USE_GL_FUNC(PGLFNVERTEXATTRIB1DVARBPROC, \
4122 glVertexAttrib1dvARB, ARB_VERTEX_PROGRAM, NULL) \
4123 USE_GL_FUNC(PGLFNVERTEXATTRIB1FARBPROC, \
4124 glVertexAttrib1fARB, ARB_VERTEX_PROGRAM, NULL) \
4125 USE_GL_FUNC(PGLFNVERTEXATTRIB1FVARBPROC, \
4126 glVertexAttrib1fvARB, ARB_VERTEX_PROGRAM, NULL) \
4127 USE_GL_FUNC(PGLFNVERTEXATTRIB1SARBPROC, \
4128 glVertexAttrib1sARB, ARB_VERTEX_PROGRAM, NULL) \
4129 USE_GL_FUNC(PGLFNVERTEXATTRIB1SVARBPROC, \
4130 glVertexAttrib1svARB, ARB_VERTEX_PROGRAM, NULL) \
4131 USE_GL_FUNC(PGLFNVERTEXATTRIB2DARBPROC, \
4132 glVertexAttrib2dARB, ARB_VERTEX_PROGRAM, NULL) \
4133 USE_GL_FUNC(PGLFNVERTEXATTRIB2DVARBPROC, \
4134 glVertexAttrib2dvARB, ARB_VERTEX_PROGRAM, NULL) \
4135 USE_GL_FUNC(PGLFNVERTEXATTRIB2FARBPROC, \
4136 glVertexAttrib2fARB, ARB_VERTEX_PROGRAM, NULL) \
4137 USE_GL_FUNC(PGLFNVERTEXATTRIB2FVARBPROC, \
4138 glVertexAttrib2fvARB, ARB_VERTEX_PROGRAM, NULL) \
4139 USE_GL_FUNC(PGLFNVERTEXATTRIB2SARBPROC, \
4140 glVertexAttrib2sARB, ARB_VERTEX_PROGRAM, NULL) \
4141 USE_GL_FUNC(PGLFNVERTEXATTRIB2SVARBPROC, \
4142 glVertexAttrib2svARB, ARB_VERTEX_PROGRAM, NULL) \
4143 USE_GL_FUNC(PGLFNVERTEXATTRIB3DARBPROC, \
4144 glVertexAttrib3dARB, ARB_VERTEX_PROGRAM, NULL) \
4145 USE_GL_FUNC(PGLFNVERTEXATTRIB3DVARBPROC, \
4146 glVertexAttrib3dvARB, ARB_VERTEX_PROGRAM, NULL) \
4147 USE_GL_FUNC(PGLFNVERTEXATTRIB3FARBPROC, \
4148 glVertexAttrib3fARB, ARB_VERTEX_PROGRAM, NULL) \
4149 USE_GL_FUNC(PGLFNVERTEXATTRIB3FVARBPROC, \
4150 glVertexAttrib3fvARB, ARB_VERTEX_PROGRAM, NULL) \
4151 USE_GL_FUNC(PGLFNVERTEXATTRIB3SARBPROC, \
4152 glVertexAttrib3sARB, ARB_VERTEX_PROGRAM, NULL) \
4153 USE_GL_FUNC(PGLFNVERTEXATTRIB3SVARBPROC, \
4154 glVertexAttrib3svARB, ARB_VERTEX_PROGRAM, NULL) \
4155 USE_GL_FUNC(PGLFNVERTEXATTRIB4NBVARBPROC, \
4156 glVertexAttrib4NbvARB, ARB_VERTEX_PROGRAM, NULL) \
4157 USE_GL_FUNC(PGLFNVERTEXATTRIB4NIVARBPROC, \
4158 glVertexAttrib4NivARB, ARB_VERTEX_PROGRAM, NULL) \
4159 USE_GL_FUNC(PGLFNVERTEXATTRIB4NSVARBPROC, \
4160 glVertexAttrib4NsvARB, ARB_VERTEX_PROGRAM, NULL) \
4161 USE_GL_FUNC(PGLFNVERTEXATTRIB4NUBARBPROC, \
4162 glVertexAttrib4NubARB, ARB_VERTEX_PROGRAM, NULL) \
4163 USE_GL_FUNC(PGLFNVERTEXATTRIB4NUBVARBPROC, \
4164 glVertexAttrib4NubvARB, ARB_VERTEX_PROGRAM, NULL) \
4165 USE_GL_FUNC(PGLFNVERTEXATTRIB4NUIVARBPROC, \
4166 glVertexAttrib4NuivARB, ARB_VERTEX_PROGRAM, NULL) \
4167 USE_GL_FUNC(PGLFNVERTEXATTRIB4NUSVARBPROC, \
4168 glVertexAttrib4NusvARB, ARB_VERTEX_PROGRAM, NULL) \
4169 USE_GL_FUNC(PGLFNVERTEXATTRIB4BVARBPROC, \
4170 glVertexAttrib4bvARB, ARB_VERTEX_PROGRAM, NULL) \
4171 USE_GL_FUNC(PGLFNVERTEXATTRIB4DARBPROC, \
4172 glVertexAttrib4dARB, ARB_VERTEX_PROGRAM, NULL) \
4173 USE_GL_FUNC(PGLFNVERTEXATTRIB4DVARBPROC, \
4174 glVertexAttrib4dvARB, ARB_VERTEX_PROGRAM, NULL) \
4175 USE_GL_FUNC(PGLFNVERTEXATTRIB4FARBPROC, \
4176 glVertexAttrib4fARB, ARB_VERTEX_PROGRAM, NULL) \
4177 USE_GL_FUNC(PGLFNVERTEXATTRIB4FVARBPROC, \
4178 glVertexAttrib4fvARB, ARB_VERTEX_PROGRAM, NULL) \
4179 USE_GL_FUNC(PGLFNVERTEXATTRIB4IVARBPROC, \
4180 glVertexAttrib4ivARB, ARB_VERTEX_PROGRAM, NULL) \
4181 USE_GL_FUNC(PGLFNVERTEXATTRIB4SARBPROC, \
4182 glVertexAttrib4sARB, ARB_VERTEX_PROGRAM, NULL) \
4183 USE_GL_FUNC(PGLFNVERTEXATTRIB4SVARBPROC, \
4184 glVertexAttrib4svARB, ARB_VERTEX_PROGRAM, NULL) \
4185 USE_GL_FUNC(PGLFNVERTEXATTRIB4UBVARBPROC, \
4186 glVertexAttrib4ubvARB, ARB_VERTEX_PROGRAM, NULL) \
4187 USE_GL_FUNC(PGLFNVERTEXATTRIB4UIVARBPROC, \
4188 glVertexAttrib4uivARB, ARB_VERTEX_PROGRAM, NULL) \
4189 USE_GL_FUNC(PGLFNVERTEXATTRIB4USVARBPROC, \
4190 glVertexAttrib4usvARB, ARB_VERTEX_PROGRAM, NULL) \
4191 USE_GL_FUNC(PGLFNGETPROGRAMIVARBPROC, \
4192 glGetProgramivARB, ARB_VERTEX_PROGRAM, NULL) \
4193 /* GL_ATI_fragment_shader */ \
4194 USE_GL_FUNC(PGLFNGENFRAGMENTSHADERSATI, \
4195 glGenFragmentShadersATI, ATI_FRAGMENT_SHADER, NULL) \
4196 USE_GL_FUNC(PGLFNBINDFRAGMENTSHADERATI, \
4197 glBindFragmentShaderATI, ATI_FRAGMENT_SHADER, NULL) \
4198 USE_GL_FUNC(PGLFNDELETEFRAGMENTSHADERATI, \
4199 glDeleteFragmentShaderATI, ATI_FRAGMENT_SHADER, NULL) \
4200 USE_GL_FUNC(PGLFNBEGINFRAGMENTSHADERATI, \
4201 glBeginFragmentShaderATI, ATI_FRAGMENT_SHADER, NULL) \
4202 USE_GL_FUNC(PGLFNENDFRAGMENTSHADERATI, \
4203 glEndFragmentShaderATI, ATI_FRAGMENT_SHADER, NULL) \
4204 USE_GL_FUNC(PGLFNPASSTEXCOORDATI, \
4205 glPassTexCoordATI, ATI_FRAGMENT_SHADER, NULL) \
4206 USE_GL_FUNC(PGLFNSAMPLEMAPATI, \
4207 glSampleMapATI, ATI_FRAGMENT_SHADER, NULL) \
4208 USE_GL_FUNC(PGLFNCOLORFRAGMENTOP1ATI, \
4209 glColorFragmentOp1ATI, ATI_FRAGMENT_SHADER, NULL) \
4210 USE_GL_FUNC(PGLFNCOLORFRAGMENTOP2ATI, \
4211 glColorFragmentOp2ATI, ATI_FRAGMENT_SHADER, NULL) \
4212 USE_GL_FUNC(PGLFNCOLORFRAGMENTOP3ATI, \
4213 glColorFragmentOp3ATI, ATI_FRAGMENT_SHADER, NULL) \
4214 USE_GL_FUNC(PGLFNALPHAFRAGMENTOP1ATI, \
4215 glAlphaFragmentOp1ATI, ATI_FRAGMENT_SHADER, NULL) \
4216 USE_GL_FUNC(PGLFNALPHAFRAGMENTOP2ATI, \
4217 glAlphaFragmentOp2ATI, ATI_FRAGMENT_SHADER, NULL) \
4218 USE_GL_FUNC(PGLFNALPHAFRAGMENTOP3ATI, \
4219 glAlphaFragmentOp3ATI, ATI_FRAGMENT_SHADER, NULL) \
4220 USE_GL_FUNC(PGLFNSETFRAGMENTSHADERCONSTANTATI, \
4221 glSetFragmentShaderConstantATI, ATI_FRAGMENT_SHADER, NULL) \
4222 /* GL_ATI_separate_stencil */ \
4223 USE_GL_FUNC(PGLFNSTENCILOPSEPARATEATIPROC, \
4224 glStencilOpSeparateATI, ATI_SEPARATE_STENCIL, NULL) \
4225 USE_GL_FUNC(PGLFNSTENCILFUNCSEPARATEATIPROC, \
4226 glStencilFuncSeparateATI, ATI_SEPARATE_STENCIL, NULL) \
4227 /* GL_EXT_blend_equation_separate */ \
4228 USE_GL_FUNC(PGLFNBLENDFUNCSEPARATEEXTPROC, \
4229 glBlendFuncSeparateEXT, EXT_BLEND_FUNC_SEPARATE, NULL) \
4230 /* GL_EXT_blend_func_separate */ \
4231 USE_GL_FUNC(PGLFNBLENDEQUATIONSEPARATEEXTPROC, \
4232 glBlendEquationSeparateEXT, EXT_BLEND_EQUATION_SEPARATE, NULL) \
4233 /* GL_EXT_depth_bounds_test */ \
4234 USE_GL_FUNC(PGLFNDEPTHBOUNDSEXTPROC, \
4235 glDepthBoundsEXT, EXT_DEPTH_BOUNDS_TEST, NULL) \
4236 /* GL_EXT_draw_buffers2 */ \
4237 USE_GL_FUNC(PGLFNCOLORMASKINDEXEDEXTPROC, \
4238 glColorMaskIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
4239 USE_GL_FUNC(PGLFNGETBOOLEANINDEXEDVEXTPROC, \
4240 glGetBooleanIndexedvEXT, EXT_DRAW_BUFFERS2, NULL) \
4241 USE_GL_FUNC(PGLFNGETINTEGERINDEXEDVEXTPROC, \
4242 glGetIntegerIndexedvEXT, EXT_DRAW_BUFFERS2, NULL) \
4243 USE_GL_FUNC(PGLFNENABLEINDEXEDEXTPROC, \
4244 glEnableIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
4245 USE_GL_FUNC(PGLFNDISABLEINDEXEDEXTPROC, \
4246 glDisableIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
4247 USE_GL_FUNC(PGLFNISENABLEDINDEXEDEXTPROC, \
4248 glIsEnabledIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
4249 /* GL_EXT_fog_coord */ \
4250 USE_GL_FUNC(PGLFNGLFOGCOORDFEXTPROC, \
4251 glFogCoordfEXT, EXT_FOG_COORD, NULL) \
4252 USE_GL_FUNC(PGLFNGLFOGCOORDFVEXTPROC, \
4253 glFogCoordfvEXT, EXT_FOG_COORD, NULL) \
4254 USE_GL_FUNC(PGLFNGLFOGCOORDDEXTPROC, \
4255 glFogCoorddEXT, EXT_FOG_COORD, NULL) \
4256 USE_GL_FUNC(PGLFNGLFOGCOORDDVEXTPROC, \
4257 glFogCoorddvEXT, EXT_FOG_COORD, NULL) \
4258 USE_GL_FUNC(PGLFNGLFOGCOORDPOINTEREXTPROC, \
4259 glFogCoordPointerEXT, EXT_FOG_COORD, NULL) \
4260 /* GL_EXT_framebuffer_blit */ \
4261 USE_GL_FUNC(PGLFNGLBLITFRAMEBUFFEREXTPROC, \
4262 glBlitFramebufferEXT, EXT_FRAMEBUFFER_BLIT, NULL) \
4263 /* GL_EXT_framebuffer_multisample */ \
4264 USE_GL_FUNC(PGLFNRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC, \
4265 glRenderbufferStorageMultisampleEXT, EXT_FRAMEBUFFER_MULTISAMPLE, NULL) \
4266 /* GL_EXT_framebuffer_object */ \
4267 USE_GL_FUNC(PGLFNGLISRENDERBUFFEREXTPROC, \
4268 glIsRenderbufferEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4269 USE_GL_FUNC(PGLFNGLBINDRENDERBUFFEREXTPROC, \
4270 glBindRenderbufferEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4271 USE_GL_FUNC(PGLFNGLDELETERENDERBUFFERSEXTPROC, \
4272 glDeleteRenderbuffersEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4273 USE_GL_FUNC(PGLFNGLGENRENDERBUFFERSEXTPROC, \
4274 glGenRenderbuffersEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4275 USE_GL_FUNC(PGLFNGLRENDERBUFFERSTORAGEEXTPROC, \
4276 glRenderbufferStorageEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4277 USE_GL_FUNC(PGLFNGLISFRAMEBUFFEREXTPROC, \
4278 glIsFramebufferEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4279 USE_GL_FUNC(PGLFNGLBINDFRAMEBUFFEREXTPROC, \
4280 glBindFramebufferEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4281 USE_GL_FUNC(PGLFNGLDELETEFRAMEBUFFERSEXTPROC, \
4282 glDeleteFramebuffersEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4283 USE_GL_FUNC(PGLFNGLGENFRAMEBUFFERSEXTPROC, \
4284 glGenFramebuffersEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4285 USE_GL_FUNC(PGLFNGLCHECKFRAMEBUFFERSTATUSEXTPROC, \
4286 glCheckFramebufferStatusEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4287 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE1DEXTPROC, \
4288 glFramebufferTexture1DEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4289 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE2DEXTPROC, \
4290 glFramebufferTexture2DEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4291 USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE3DEXTPROC, \
4292 glFramebufferTexture3DEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4293 USE_GL_FUNC(PGLFNGLFRAMEBUFFERRENDERBUFFEREXTPROC, \
4294 glFramebufferRenderbufferEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4295 USE_GL_FUNC(PGLFNGLGENERATEMIPMAPEXTPROC, \
4296 glGenerateMipmapEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4297 USE_GL_FUNC(PGLFNGLGETRENDERBUFFERPARAMETERIVEXTPROC, \
4298 glGetRenderbufferParameterivEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4299 USE_GL_FUNC(PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC, \
4300 glGetFramebufferAttachmentParameterivEXT, EXT_FRAMEBUFFER_OBJECT, NULL) \
4301 /* GL_EXT_gpu_program_parameters */ \
4302 USE_GL_FUNC(PGLFNPROGRAMENVPARAMETERS4FVEXTPROC, \
4303 glProgramEnvParameters4fvEXT, EXT_GPU_PROGRAM_PARAMETERS, NULL) \
4304 USE_GL_FUNC(PGLFNPROGRAMLOCALPARAMETERS4FVEXTPROC, \
4305 glProgramLocalParameters4fvEXT, EXT_GPU_PROGRAM_PARAMETERS, NULL) \
4306 /* GL_EXT_gpu_shader4 */\
4307 USE_GL_FUNC(PGLFNVERTEXATTRIBI1IEXTPROC, \
4308 glVertexAttribI1iEXT, EXT_GPU_SHADER4, NULL) \
4309 USE_GL_FUNC(PGLFNVERTEXATTRIBI2IEXTPROC, \
4310 glVertexAttribI2iEXT, EXT_GPU_SHADER4, NULL) \
4311 USE_GL_FUNC(PGLFNVERTEXATTRIBI3IEXTPROC, \
4312 glVertexAttribI3iEXT, EXT_GPU_SHADER4, NULL) \
4313 USE_GL_FUNC(PGLFNVERTEXATTRIBI4IEXTPROC, \
4314 glVertexAttribI4iEXT, EXT_GPU_SHADER4, NULL) \
4315 USE_GL_FUNC(PGLFNVERTEXATTRIBI1UIEXTPROC, \
4316 glVertexAttribI1uiEXT, EXT_GPU_SHADER4, NULL) \
4317 USE_GL_FUNC(PGLFNVERTEXATTRIBI2UIEXTPROC, \
4318 glVertexAttribI2uiEXT, EXT_GPU_SHADER4, NULL) \
4319 USE_GL_FUNC(PGLFNVERTEXATTRIBI3UIEXTPROC, \
4320 glVertexAttribI3uiEXT, EXT_GPU_SHADER4, NULL) \
4321 USE_GL_FUNC(PGLFNVERTEXATTRIBI4UIEXTPROC, \
4322 glVertexAttribI4uiEXT, EXT_GPU_SHADER4, NULL) \
4323 USE_GL_FUNC(PGLFNVERTEXATTRIBI1IVEXTPROC, \
4324 glVertexAttribI1ivEXT, EXT_GPU_SHADER4, NULL) \
4325 USE_GL_FUNC(PGLFNVERTEXATTRIBI2IVEXTPROC, \
4326 glVertexAttribI2ivEXT, EXT_GPU_SHADER4, NULL) \
4327 USE_GL_FUNC(PGLFNVERTEXATTRIBI3IVEXTPROC, \
4328 glVertexAttribI3ivEXT, EXT_GPU_SHADER4, NULL) \
4329 USE_GL_FUNC(PGLFNVERTEXATTRIBI4IVEXTPROC, \
4330 glVertexAttribI4ivEXT, EXT_GPU_SHADER4, NULL) \
4331 USE_GL_FUNC(PGLFNVERTEXATTRIBI1UIVEXTPROC, \
4332 glVertexAttribI1uivEXT, EXT_GPU_SHADER4, NULL) \
4333 USE_GL_FUNC(PGLFNVERTEXATTRIBI2UIVEXTPROC, \
4334 glVertexAttribI2uivEXT, EXT_GPU_SHADER4, NULL) \
4335 USE_GL_FUNC(PGLFNVERTEXATTRIBI3UIVEXTPROC, \
4336 glVertexAttribI3uivEXT, EXT_GPU_SHADER4, NULL) \
4337 USE_GL_FUNC(PGLFNVERTEXATTRIBI4UIVEXTPROC, \
4338 glVertexAttribI4uivEXT, EXT_GPU_SHADER4, NULL) \
4339 USE_GL_FUNC(PGLFNVERTEXATTRIBI4BVEXTPROC, \
4340 glVertexAttribI4bvEXT, EXT_GPU_SHADER4, NULL) \
4341 USE_GL_FUNC(PGLFNVERTEXATTRIBI4SVEXTPROC, \
4342 glVertexAttribI4svEXT, EXT_GPU_SHADER4, NULL) \
4343 USE_GL_FUNC(PGLFNVERTEXATTRIBI4UBVEXTPROC, \
4344 glVertexAttribI4ubvEXT, EXT_GPU_SHADER4, NULL) \
4345 USE_GL_FUNC(PGLFNVERTEXATTRIBI4USVEXTPROC, \
4346 glVertexAttribI4usvEXT, EXT_GPU_SHADER4, NULL) \
4347 USE_GL_FUNC(PGLFNVERTEXATTRIBIPOINTEREXTPROC, \
4348 glVertexAttribIPointerEXT, EXT_GPU_SHADER4, NULL) \
4349 USE_GL_FUNC(PGLFNGETVERTEXATTRIBIIVEXTPROC, \
4350 glVertexAttribIivEXT, EXT_GPU_SHADER4, NULL) \
4351 USE_GL_FUNC(PGLFNGETVERTEXATTRIBIUIVEXTPROC, \
4352 glVertexAttribIuivEXT, EXT_GPU_SHADER4, NULL) \
4353 USE_GL_FUNC(PGLFNUNIFORM1UIEXTPROC, \
4354 glUniform1uiEXT, EXT_GPU_SHADER4, NULL) \
4355 USE_GL_FUNC(PGLFNUNIFORM2UIEXTPROC, \
4356 glUniform2uiEXT, EXT_GPU_SHADER4, NULL) \
4357 USE_GL_FUNC(PGLFNUNIFORM3UIEXTPROC, \
4358 glUniform3uiEXT, EXT_GPU_SHADER4, NULL) \
4359 USE_GL_FUNC(PGLFNUNIFORM4UIEXTPROC, \
4360 glUniform4uiEXT, EXT_GPU_SHADER4, NULL) \
4361 USE_GL_FUNC(PGLFNUNIFORM1UIVEXTPROC, \
4362 glUniform1uivEXT, EXT_GPU_SHADER4, NULL) \
4363 USE_GL_FUNC(PGLFNUNIFORM2UIVEXTPROC, \
4364 glUniform2uivEXT, EXT_GPU_SHADER4, NULL) \
4365 USE_GL_FUNC(PGLFNUNIFORM3UIVEXTPROC, \
4366 glUniform3uivEXT, EXT_GPU_SHADER4, NULL) \
4367 USE_GL_FUNC(PGLFNUNIFORM4UIVEXTPROC, \
4368 glUniform4uivEXT, EXT_GPU_SHADER4, NULL) \
4369 USE_GL_FUNC(PGLFNGETUNIFORMUIVEXTPROC, \
4370 glGetUniformuivEXT, EXT_GPU_SHADER4, NULL) \
4371 USE_GL_FUNC(PGLFNBINDFRAGDATALOCATIONEXTPROC, \
4372 glBindFragDataLocationEXT, EXT_GPU_SHADER4, NULL) \
4373 USE_GL_FUNC(PGLFNGETFRAGDATALOCATIONEXTPROC, \
4374 glGetFragDataLocationEXT, EXT_GPU_SHADER4, NULL) \
4375 /* GL_EXT_paletted_texture */ \
4376 USE_GL_FUNC(PGLFNGLCOLORTABLEEXTPROC, \
4377 glColorTableEXT, EXT_PALETTED_TEXTURE, NULL) \
4378 /* GL_EXT_point_parameters */ \
4379 USE_GL_FUNC(PGLFNGLPOINTPARAMETERFEXTPROC, \
4380 glPointParameterfEXT, EXT_POINT_PARAMETERS, NULL) \
4381 USE_GL_FUNC(PGLFNGLPOINTPARAMETERFVEXTPROC, \
4382 glPointParameterfvEXT, EXT_POINT_PARAMETERS, NULL) \
4383 /* GL_EXT_provoking_vertex */ \
4384 USE_GL_FUNC(PGLFNGLPROVOKINGVERTEXEXTPROC, \
4385 glProvokingVertexEXT, EXT_PROVOKING_VERTEX, NULL) \
4386 /* GL_EXT_secondary_color */ \
4387 USE_GL_FUNC(PGLFNGLSECONDARYCOLOR3UBEXTPROC, \
4388 glSecondaryColor3ubEXT, EXT_SECONDARY_COLOR, NULL) \
4389 USE_GL_FUNC(PGLFNGLSECONDARYCOLOR3UBVEXTPROC, \
4390 glSecondaryColor3ubvEXT, EXT_SECONDARY_COLOR, NULL) \
4391 USE_GL_FUNC(PGLFNGLSECONDARYCOLOR3FEXTPROC, \
4392 glSecondaryColor3fEXT, EXT_SECONDARY_COLOR, NULL) \
4393 USE_GL_FUNC(PGLFNGLSECONDARYCOLOR3FVEXTPROC, \
4394 glSecondaryColor3fvEXT, EXT_SECONDARY_COLOR, NULL) \
4395 USE_GL_FUNC(PGLFNGLSECONDARYCOLORPOINTEREXTPROC, \
4396 glSecondaryColorPointerEXT, EXT_SECONDARY_COLOR, NULL) \
4397 /* GL_EXT_stencil_two_side */ \
4398 USE_GL_FUNC(PGLFNACTIVESTENCILFACEEXTPROC, \
4399 glActiveStencilFaceEXT, EXT_STENCIL_TWO_SIDE, NULL) \
4400 /* GL_EXT_texture3D */ \
4401 USE_GL_FUNC(PGLFNGLTEXIMAGE3DEXTPROC, \
4402 glTexImage3DEXT, EXT_TEXTURE3D, glTexImage3D) \
4403 USE_GL_FUNC(PGLFNGLTEXSUBIMAGE3DEXTPROC, \
4404 glTexSubImage3DEXT, EXT_TEXTURE3D, glTexSubImage3D) \
4406 USE_GL_FUNC(PGLFNGENFENCESNVPROC, \
4407 glGenFencesNV, NV_FENCE, NULL) \
4408 USE_GL_FUNC(PGLFNDELETEFENCESNVPROC, \
4409 glDeleteFencesNV, NV_FENCE, NULL) \
4410 USE_GL_FUNC(PGLFNSETFENCENVPROC, \
4411 glSetFenceNV, NV_FENCE, NULL) \
4412 USE_GL_FUNC(PGLFNTESTFENCENVPROC, \
4413 glTestFenceNV, NV_FENCE, NULL) \
4414 USE_GL_FUNC(PGLFNFINISHFENCENVPROC, \
4415 glFinishFenceNV, NV_FENCE, NULL) \
4416 USE_GL_FUNC(PGLFNISFENCENVPROC, \
4417 glIsFenceNV, NV_FENCE, NULL) \
4418 USE_GL_FUNC(PGLFNGETFENCEIVNVPROC, \
4419 glGetFenceivNV, NV_FENCE, NULL) \
4420 /* GL_NV_half_float */ \
4421 USE_GL_FUNC(PGLFNVERTEX2HNVPROC, \
4422 glVertex2hNV, NV_HALF_FLOAT, NULL) \
4423 USE_GL_FUNC(PGLFNVERTEX2HVNVPROC, \
4424 glVertex2hvNV, NV_HALF_FLOAT, NULL) \
4425 USE_GL_FUNC(PGLFNVERTEX3HNVPROC, \
4426 glVertex3hNV, NV_HALF_FLOAT, NULL) \
4427 USE_GL_FUNC(PGLFNVERTEX3HVNVPROC, \
4428 glVertex3hvNV, NV_HALF_FLOAT, NULL) \
4429 USE_GL_FUNC(PGLFNVERTEX4HNVPROC, \
4430 glVertex4hNV, NV_HALF_FLOAT, NULL) \
4431 USE_GL_FUNC(PGLFNVERTEX4HVNVPROC, \
4432 glVertex4hvNV, NV_HALF_FLOAT, NULL) \
4433 USE_GL_FUNC(PGLFNNORMAL3HNVPROC, \
4434 glNormal3hNV, NV_HALF_FLOAT, NULL) \
4435 USE_GL_FUNC(PGLFNNORMAL3HVNVPROC, \
4436 glNormal3hvNV, NV_HALF_FLOAT, NULL) \
4437 USE_GL_FUNC(PGLFNCOLOR3HNVPROC, \
4438 glColor3hNV, NV_HALF_FLOAT, NULL) \
4439 USE_GL_FUNC(PGLFNCOLOR3HVNVPROC, \
4440 glColor3hvNV, NV_HALF_FLOAT, NULL) \
4441 USE_GL_FUNC(PGLFNCOLOR4HNVPROC, \
4442 glColor4hNV, NV_HALF_FLOAT, NULL) \
4443 USE_GL_FUNC(PGLFNCOLOR4HVNVPROC, \
4444 glColor4hvNV, NV_HALF_FLOAT, NULL) \
4445 USE_GL_FUNC(PGLFNTEXCOORD1HNVPROC, \
4446 glTexCoord1hNV, NV_HALF_FLOAT, NULL) \
4447 USE_GL_FUNC(PGLFNTEXCOORD1HVNVPROC, \
4448 glTexCoord1hvNV, NV_HALF_FLOAT, NULL) \
4449 USE_GL_FUNC(PGLFNTEXCOORD2HNVPROC, \
4450 glTexCoord2hNV, NV_HALF_FLOAT, NULL) \
4451 USE_GL_FUNC(PGLFNTEXCOORD2HVNVPROC, \
4452 glTexCoord2hvNV, NV_HALF_FLOAT, NULL) \
4453 USE_GL_FUNC(PGLFNTEXCOORD3HNVPROC, \
4454 glTexCoord3hNV, NV_HALF_FLOAT, NULL) \
4455 USE_GL_FUNC(PGLFNTEXCOORD3HVNVPROC, \
4456 glTexCoord3hvNV, NV_HALF_FLOAT, NULL) \
4457 USE_GL_FUNC(PGLFNTEXCOORD4HNVPROC, \
4458 glTexCoord4hNV, NV_HALF_FLOAT, NULL) \
4459 USE_GL_FUNC(PGLFNTEXCOORD4HVNVPROC, \
4460 glTexCoord4hvNV, NV_HALF_FLOAT, NULL) \
4461 USE_GL_FUNC(PGLFNMULTITEXCOORD1HNVPROC, \
4462 glMultiTexCoord1hNV, NV_HALF_FLOAT, NULL) \
4463 USE_GL_FUNC(PGLFNMULTITEXCOORD1HVNVPROC, \
4464 glMultiTexCoord1hvNV, NV_HALF_FLOAT, NULL) \
4465 USE_GL_FUNC(PGLFNMULTITEXCOORD2HNVPROC, \
4466 glMultiTexCoord2hNV, NV_HALF_FLOAT, NULL) \
4467 USE_GL_FUNC(PGLFNMULTITEXCOORD2HVNVPROC, \
4468 glMultiTexCoord2hvNV, NV_HALF_FLOAT, NULL) \
4469 USE_GL_FUNC(PGLFNMULTITEXCOORD3HNVPROC, \
4470 glMultiTexCoord3hNV, NV_HALF_FLOAT, NULL) \
4471 USE_GL_FUNC(PGLFNMULTITEXCOORD3HVNVPROC, \
4472 glMultiTexCoord3hvNV, NV_HALF_FLOAT, NULL) \
4473 USE_GL_FUNC(PGLFNMULTITEXCOORD4HNVPROC, \
4474 glMultiTexCoord4hNV, NV_HALF_FLOAT, NULL) \
4475 USE_GL_FUNC(PGLFNMULTITEXCOORD4HVNVPROC, \
4476 glMultiTexCoord4hvNV, NV_HALF_FLOAT, NULL) \
4477 USE_GL_FUNC(PGLFNFOGCOORDHNVPROC, \
4478 glFogCoordhNV, NV_HALF_FLOAT, NULL) \
4479 USE_GL_FUNC(PGLFNFOGCOORDHVNVPROC, \
4480 glFogCoordhvNV, NV_HALF_FLOAT, NULL) \
4481 USE_GL_FUNC(PGLFNSECONDARYCOLOR3HNVPROC, \
4482 glSecondaryColor3hNV, NV_HALF_FLOAT, NULL) \
4483 USE_GL_FUNC(PGLFNSECONDARYCOLOR3HVNVPROC, \
4484 glSecondaryColor3hvNV, NV_HALF_FLOAT, NULL) \
4485 USE_GL_FUNC(PGLFNVERTEXWEIGHTHNVPROC, \
4486 glVertexWeighthNV, NV_HALF_FLOAT, NULL) \
4487 USE_GL_FUNC(PGLFNVERTEXWEIGHTHVNVPROC, \
4488 glVertexWeighthvNV, NV_HALF_FLOAT, NULL) \
4489 USE_GL_FUNC(PGLFNVERTEXATTRIB1HNVPROC, \
4490 glVertexAttrib1hNV, NV_HALF_FLOAT, NULL) \
4491 USE_GL_FUNC(PGLFNVERTEXATTRIB1HVNVPROC, \
4492 glVertexAttrib1hvNV, NV_HALF_FLOAT, NULL) \
4493 USE_GL_FUNC(PGLFNVERTEXATTRIB2HNVPROC, \
4494 glVertexAttrib2hNV, NV_HALF_FLOAT, NULL) \
4495 USE_GL_FUNC(PGLFNVERTEXATTRIB2HVNVPROC, \
4496 glVertexAttrib2hvNV, NV_HALF_FLOAT, NULL) \
4497 USE_GL_FUNC(PGLFNVERTEXATTRIB3HNVPROC, \
4498 glVertexAttrib3hNV, NV_HALF_FLOAT, NULL) \
4499 USE_GL_FUNC(PGLFNVERTEXATTRIB3HVNVPROC, \
4500 glVertexAttrib3hvNV, NV_HALF_FLOAT, NULL) \
4501 USE_GL_FUNC(PGLFNVERTEXATTRIB4HNVPROC, \
4502 glVertexAttrib4hNV, NV_HALF_FLOAT, NULL) \
4503 USE_GL_FUNC(PGLFNVERTEXATTRIB4HVNVPROC, \
4504 glVertexAttrib4hvNV, NV_HALF_FLOAT, NULL) \
4505 USE_GL_FUNC(PGLFNVERTEXATTRIBS1HVNVPROC, \
4506 glVertexAttribs1hvNV, NV_HALF_FLOAT, NULL) \
4507 USE_GL_FUNC(PGLFNVERTEXATTRIBS2HVNVPROC, \
4508 glVertexAttribs2hvNV, NV_HALF_FLOAT, NULL) \
4509 USE_GL_FUNC(PGLFNVERTEXATTRIBS3HVNVPROC, \
4510 glVertexAttribs3hvNV, NV_HALF_FLOAT, NULL) \
4511 USE_GL_FUNC(PGLFNVERTEXATTRIBS4HVNVPROC, \
4512 glVertexAttribs4hvNV, NV_HALF_FLOAT, NULL) \
4513 /* GL_NV_point_sprite */ \
4514 USE_GL_FUNC(PGLFNPOINTPARAMETERIVNVPROC, \
4515 glPointParameterivNV, NV_POINT_SPRITE, NULL) \
4516 USE_GL_FUNC(PGLFNPOINTPARAMETERINVPROC, \
4517 glPointParameteriNV, NV_POINT_SPRITE, NULL) \
4518 /* GL_NV_register_combiners */ \
4519 USE_GL_FUNC(PGLFNCOMBINERINPUTNVPROC, \
4520 glCombinerInputNV, NV_REGISTER_COMBINERS, NULL) \
4521 USE_GL_FUNC(PGLFNCOMBINEROUTPUTNVPROC, \
4522 glCombinerOutputNV, NV_REGISTER_COMBINERS, NULL) \
4523 USE_GL_FUNC(PGLFNCOMBINERPARAMETERFNVPROC, \
4524 glCombinerParameterfNV, NV_REGISTER_COMBINERS, NULL) \
4525 USE_GL_FUNC(PGLFNCOMBINERPARAMETERFVNVPROC, \
4526 glCombinerParameterfvNV, NV_REGISTER_COMBINERS, NULL) \
4527 USE_GL_FUNC(PGLFNCOMBINERPARAMETERINVPROC, \
4528 glCombinerParameteriNV, NV_REGISTER_COMBINERS, NULL) \
4529 USE_GL_FUNC(PGLFNCOMBINERPARAMETERIVNVPROC, \
4530 glCombinerParameterivNV, NV_REGISTER_COMBINERS, NULL) \
4531 USE_GL_FUNC(PGLFNFINALCOMBINERINPUTNVPROC, \
4532 glFinalCombinerInputNV, NV_REGISTER_COMBINERS, NULL) \
4533 /* GLX_SGI_video_sync */ \
4534 USE_GL_FUNC(PGLXFNGETVIDEOSYNCSGIPROC, \
4535 glXGetVideoSyncSGI, SGI_VIDEO_SYNC, NULL) \
4536 USE_GL_FUNC(PGLXFNWAITVIDEOSYNCSGIPROC, \
4537 glXWaitVideoSyncSGI, SGI_VIDEO_SYNC, NULL)
4539 #define WGL_EXT_FUNCS_GEN \
4540 USE_GL_FUNC(WINED3D_PFNWGLGETEXTENSIONSSTRINGARBPROC, wglGetExtensionsStringARB, 0, NULL) \
4541 USE_GL_FUNC(WINED3D_PFNWGLGETPIXELFORMATATTRIBIVARBPROC, wglGetPixelFormatAttribivARB, 0, NULL) \
4542 USE_GL_FUNC(WINED3D_PFNWGLGETPIXELFORMATATTRIBFVARBPROC, wglGetPixelFormatAttribfvARB, 0, NULL) \
4543 USE_GL_FUNC(WINED3D_PFNWGLCHOOSEPIXELFORMATARBPROC, wglChoosePixelFormatARB, 0, NULL) \
4544 USE_GL_FUNC(WINED3D_PFNWGLSETPIXELFORMATWINE, wglSetPixelFormatWINE, 0, NULL)
4546 #endif /* __WINE_WINED3D_GL */