DEADSOFTWARE

Add VBO support
[nanogl.git] / GL / gl.h
1 #ifndef __GL__H__
2 #define __GL__H__
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
8 typedef unsigned int GLenum;
9 typedef unsigned char GLboolean;
10 typedef unsigned int GLbitfield;
11 typedef signed char GLbyte;
12 typedef short GLshort;
13 typedef int GLint;
14 typedef int GLsizei;
15 typedef unsigned char GLubyte;
16 typedef unsigned short GLushort;
17 typedef unsigned int GLuint;
18 typedef float GLfloat;
19 typedef double GLdouble;
20 typedef float GLclampf;
21 typedef float GLclampd;
22 typedef void GLvoid;
23 typedef int GLfixed;
24 typedef int GLclampx;
26 /* Boolean values */
27 #define GL_FALSE 0x0
28 #define GL_TRUE 0x1
30 /* Data types */
31 #define GL_BYTE 0x1400
32 #define GL_UNSIGNED_BYTE 0x1401
33 #define GL_SHORT 0x1402
34 #define GL_UNSIGNED_SHORT 0x1403
35 #define GL_INT 0x1404
36 #define GL_UNSIGNED_INT 0x1405
37 #define GL_FLOAT 0x1406
38 #define GL_2_BYTES 0x1407
39 #define GL_3_BYTES 0x1408
40 #define GL_4_BYTES 0x1409
41 #define GL_DOUBLE 0x140A
43 /* StringName */
44 #define GL_VENDOR 0x1F00
45 #define GL_RENDERER 0x1F01
46 #define GL_VERSION 0x1F02
47 #define GL_EXTENSIONS 0x1F03
49 /* TextureEnvMode */
50 #define GL_MODULATE 0x2100
51 #define GL_DECAL 0x2101
52 /* GL_BLEND */
53 #define GL_ADD 0x0104
54 /* GL_REPLACE */
56 /* Primitives */
57 #define GL_POINTS 0x0000
58 #define GL_LINES 0x0001
59 #define GL_LINE_LOOP 0x0002
60 #define GL_LINE_STRIP 0x0003
61 #define GL_TRIANGLES 0x0004
62 #define GL_TRIANGLE_STRIP 0x0005
63 #define GL_TRIANGLE_FAN 0x0006
64 #define GL_QUADS 0x0007
65 #define GL_QUAD_STRIP 0x0008
66 #define GL_POLYGON 0x0009
68 /* EnableCap */
69 #define GL_FOG 0x0B60
70 #define GL_LIGHTING 0x0B50
71 #define GL_TEXTURE_2D 0x0DE1
72 #define GL_CULL_FACE 0x0B44
73 #define GL_ALPHA_TEST 0x0BC0
74 #define GL_BLEND 0x0BE2
75 #define GL_COLOR_LOGIC_OP 0x0BF2
76 #define GL_DITHER 0x0BD0
77 #define GL_STENCIL_TEST 0x0B90
78 #define GL_DEPTH_TEST 0x0B71
79 /* GL_LIGHT0 */
80 /* GL_LIGHT1 */
81 /* GL_LIGHT2 */
82 /* GL_LIGHT3 */
83 /* GL_LIGHT4 */
84 /* GL_LIGHT5 */
85 /* GL_LIGHT6 */
86 /* GL_LIGHT7 */
87 #define GL_POINT_SMOOTH 0x0B10
88 #define GL_LINE_SMOOTH 0x0B20
89 #define GL_SCISSOR_TEST 0x0C11
90 #define GL_COLOR_MATERIAL 0x0B57
91 #define GL_NORMALIZE 0x0BA1
92 #define GL_RESCALE_NORMAL 0x803A
93 #define GL_POLYGON_OFFSET_FILL 0x8037
94 #define GL_VERTEX_ARRAY 0x8074
95 #define GL_NORMAL_ARRAY 0x8075
96 #define GL_COLOR_ARRAY 0x8076
97 #define GL_TEXTURE_COORD_ARRAY 0x8078
98 #define GL_MULTISAMPLE 0x809D
99 #define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
100 #define GL_SAMPLE_ALPHA_TO_ONE 0x809F
101 #define GL_SAMPLE_COVERAGE 0x80A0
103 /* Texture mapping */
104 #define GL_TEXTURE_ENV 0x2300
105 #define GL_TEXTURE_ENV_MODE 0x2200
106 #define GL_TEXTURE_1D 0x0DE0
107 #define GL_TEXTURE_2D 0x0DE1
108 #define GL_TEXTURE_WRAP_S 0x2802
109 #define GL_TEXTURE_WRAP_T 0x2803
110 #define GL_TEXTURE_MAG_FILTER 0x2800
111 #define GL_TEXTURE_MIN_FILTER 0x2801
112 #define GL_TEXTURE_ENV_COLOR 0x2201
113 #define GL_TEXTURE_GEN_S 0x0C60
114 #define GL_TEXTURE_GEN_T 0x0C61
115 #define GL_TEXTURE_GEN_MODE 0x2500
116 #define GL_TEXTURE_BORDER_COLOR 0x1004
117 #define GL_TEXTURE_WIDTH 0x1000
118 #define GL_TEXTURE_HEIGHT 0x1001
119 #define GL_TEXTURE_BORDER 0x1005
120 #define GL_TEXTURE_COMPONENTS 0x1003
121 #define GL_TEXTURE_RED_SIZE 0x805C
122 #define GL_TEXTURE_GREEN_SIZE 0x805D
123 #define GL_TEXTURE_BLUE_SIZE 0x805E
124 #define GL_TEXTURE_ALPHA_SIZE 0x805F
125 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060
126 #define GL_TEXTURE_INTENSITY_SIZE 0x8061
127 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
128 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
129 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
130 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
131 #define GL_OBJECT_LINEAR 0x2401
132 #define GL_OBJECT_PLANE 0x2501
133 #define GL_EYE_LINEAR 0x2400
134 #define GL_EYE_PLANE 0x2502
135 #define GL_SPHERE_MAP 0x2402
136 #define GL_DECAL 0x2101
137 #define GL_MODULATE 0x2100
138 #define GL_NEAREST 0x2600
139 #define GL_REPEAT 0x2901
140 #define GL_CLAMP 0x2900
141 #define GL_S 0x2000
142 #define GL_T 0x2001
143 #define GL_R 0x2002
144 #define GL_Q 0x2003
145 #define GL_TEXTURE_GEN_R 0x0C62
146 #define GL_TEXTURE_GEN_Q 0x0C63
147 #define GL_CLAMP_TO_EDGE 0x812F
149 /* Matrix Mode */
150 #define GL_MATRIX_MODE 0x0BA0
151 #define GL_MODELVIEW 0x1700
152 #define GL_PROJECTION 0x1701
153 #define GL_TEXTURE 0x1702
155 /* Buffers, Pixel Drawing/Reading */
156 #define GL_NONE 0x0
157 #define GL_LEFT 0x0406
158 #define GL_RIGHT 0x0407
159 /*GL_FRONT 0x0404 */
160 /*GL_BACK 0x0405 */
161 /*GL_FRONT_AND_BACK 0x0408 */
162 #define GL_FRONT_LEFT 0x0400
163 #define GL_FRONT_RIGHT 0x0401
164 #define GL_BACK_LEFT 0x0402
165 #define GL_BACK_RIGHT 0x0403
166 #define GL_AUX0 0x0409
167 #define GL_AUX1 0x040A
168 #define GL_AUX2 0x040B
169 #define GL_AUX3 0x040C
170 #define GL_COLOR_INDEX 0x1900
171 #define GL_RED 0x1903
172 #define GL_GREEN 0x1904
173 #define GL_BLUE 0x1905
174 #define GL_ALPHA 0x1906
175 #define GL_LUMINANCE 0x1909
176 #define GL_LUMINANCE_ALPHA 0x190A
177 #define GL_ALPHA_BITS 0x0D55
178 #define GL_RED_BITS 0x0D52
179 #define GL_GREEN_BITS 0x0D53
180 #define GL_BLUE_BITS 0x0D54
181 #define GL_INDEX_BITS 0x0D51
182 #define GL_SUBPIXEL_BITS 0x0D50
183 #define GL_AUX_BUFFERS 0x0C00
184 #define GL_READ_BUFFER 0x0C02
185 #define GL_DRAW_BUFFER 0x0C01
186 #define GL_DOUBLEBUFFER 0x0C32
187 #define GL_STEREO 0x0C33
188 #define GL_BITMAP 0x1A00
189 #define GL_COLOR 0x1800
190 #define GL_DEPTH 0x1801
191 #define GL_STENCIL 0x1802
192 #define GL_DITHER 0x0BD0
193 #define GL_RGB 0x1907
194 #define GL_RGBA 0x1908
196 /* Fog */
197 #define GL_FOG 0x0B60
198 #define GL_FOG_MODE 0x0B65
199 #define GL_FOG_DENSITY 0x0B62
200 #define GL_FOG_COLOR 0x0B66
201 #define GL_FOG_INDEX 0x0B61
202 #define GL_FOG_START 0x0B63
203 #define GL_FOG_END 0x0B64
204 #define GL_LINEAR 0x2601
205 #define GL_EXP 0x0800
206 #define GL_EXP2 0x0801
208 /* Polygons */
209 #define GL_POINT 0x1B00
210 #define GL_LINE 0x1B01
211 #define GL_FILL 0x1B02
212 #define GL_CW 0x0900
213 #define GL_CCW 0x0901
214 #define GL_FRONT 0x0404
215 #define GL_BACK 0x0405
216 #define GL_POLYGON_MODE 0x0B40
217 #define GL_POLYGON_SMOOTH 0x0B41
218 #define GL_POLYGON_STIPPLE 0x0B42
219 #define GL_EDGE_FLAG 0x0B43
220 #define GL_CULL_FACE 0x0B44
221 #define GL_CULL_FACE_MODE 0x0B45
222 #define GL_FRONT_FACE 0x0B46
223 #define GL_POLYGON_OFFSET_FACTOR 0x8038
224 #define GL_POLYGON_OFFSET_UNITS 0x2A00
225 #define GL_POLYGON_OFFSET_POINT 0x2A01
226 #define GL_POLYGON_OFFSET_LINE 0x2A02
227 #define GL_POLYGON_OFFSET_FILL 0x8037
229 /* Lighting */
230 #define GL_LIGHTING 0x0B50
231 #define GL_LIGHT0 0x4000
232 #define GL_LIGHT1 0x4001
233 #define GL_LIGHT2 0x4002
234 #define GL_LIGHT3 0x4003
235 #define GL_LIGHT4 0x4004
236 #define GL_LIGHT5 0x4005
237 #define GL_LIGHT6 0x4006
238 #define GL_LIGHT7 0x4007
239 #define GL_SPOT_EXPONENT 0x1205
240 #define GL_SPOT_CUTOFF 0x1206
241 #define GL_CONSTANT_ATTENUATION 0x1207
242 #define GL_LINEAR_ATTENUATION 0x1208
243 #define GL_QUADRATIC_ATTENUATION 0x1209
244 #define GL_AMBIENT 0x1200
245 #define GL_DIFFUSE 0x1201
246 #define GL_SPECULAR 0x1202
247 #define GL_SHININESS 0x1601
248 #define GL_EMISSION 0x1600
249 #define GL_POSITION 0x1203
250 #define GL_SPOT_DIRECTION 0x1204
251 #define GL_AMBIENT_AND_DIFFUSE 0x1602
252 #define GL_COLOR_INDEXES 0x1603
253 #define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
254 #define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
255 #define GL_LIGHT_MODEL_AMBIENT 0x0B53
256 #define GL_FRONT_AND_BACK 0x0408
257 #define GL_SHADE_MODEL 0x0B54
258 #define GL_FLAT 0x1D00
259 #define GL_SMOOTH 0x1D01
260 #define GL_COLOR_MATERIAL 0x0B57
261 #define GL_COLOR_MATERIAL_FACE 0x0B55
262 #define GL_COLOR_MATERIAL_PARAMETER 0x0B56
263 #define GL_NORMALIZE 0x0BA1
265 /* Blending */
266 #define GL_BLEND 0x0BE2
267 #define GL_BLEND_SRC 0x0BE1
268 #define GL_BLEND_DST 0x0BE0
269 #define GL_ZERO 0x0
270 #define GL_ONE 0x1
271 #define GL_SRC_COLOR 0x0300
272 #define GL_ONE_MINUS_SRC_COLOR 0x0301
273 #define GL_SRC_ALPHA 0x0302
274 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
275 #define GL_DST_ALPHA 0x0304
276 #define GL_ONE_MINUS_DST_ALPHA 0x0305
277 #define GL_DST_COLOR 0x0306
278 #define GL_ONE_MINUS_DST_COLOR 0x0307
279 #define GL_SRC_ALPHA_SATURATE 0x0308
281 /* ClipPlaneName */
282 #define GL_CLIP_PLANE0 0x3000
283 #define GL_CLIP_PLANE1 0x3001
284 #define GL_CLIP_PLANE2 0x3002
285 #define GL_CLIP_PLANE3 0x3003
286 #define GL_CLIP_PLANE4 0x3004
287 #define GL_CLIP_PLANE5 0x3005
289 /* OpenGL 1.1 */
290 #define GL_PROXY_TEXTURE_1D 0x8063
291 #define GL_PROXY_TEXTURE_2D 0x8064
292 #define GL_TEXTURE_PRIORITY 0x8066
293 #define GL_TEXTURE_RESIDENT 0x8067
294 #define GL_TEXTURE_BINDING_1D 0x8068
295 #define GL_TEXTURE_BINDING_2D 0x8069
296 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
297 #define GL_ALPHA4 0x803B
298 #define GL_ALPHA8 0x803C
299 #define GL_ALPHA12 0x803D
300 #define GL_ALPHA16 0x803E
301 #define GL_LUMINANCE4 0x803F
302 #define GL_LUMINANCE8 0x8040
303 #define GL_LUMINANCE12 0x8041
304 #define GL_LUMINANCE16 0x8042
305 #define GL_LUMINANCE4_ALPHA4 0x8043
306 #define GL_LUMINANCE6_ALPHA2 0x8044
307 #define GL_LUMINANCE8_ALPHA8 0x8045
308 #define GL_LUMINANCE12_ALPHA4 0x8046
309 #define GL_LUMINANCE12_ALPHA12 0x8047
310 #define GL_LUMINANCE16_ALPHA16 0x8048
311 #define GL_INTENSITY 0x8049
312 #define GL_INTENSITY4 0x804A
313 #define GL_INTENSITY8 0x804B
314 #define GL_INTENSITY12 0x804C
315 #define GL_INTENSITY16 0x804D
316 #define GL_R3_G3_B2 0x2A10
317 #define GL_RGB4 0x804F
318 #define GL_RGB5 0x8050
319 #define GL_RGB8 0x8051
320 #define GL_RGB10 0x8052
321 #define GL_RGB12 0x8053
322 #define GL_RGB16 0x8054
323 #define GL_RGBA2 0x8055
324 #define GL_RGBA4 0x8056
325 #define GL_RGB5_A1 0x8057
326 #define GL_RGBA8 0x8058
327 #define GL_RGB10_A2 0x8059
328 #define GL_RGBA12 0x805A
329 #define GL_RGBA16 0x805B
330 #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
331 #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
332 #define GL_UNSIGNED_SHORT_5_6_5 0x8363
334 #define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
335 #define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
336 #define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF
337 #define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
339 /* Stencil */
340 #define GL_STENCIL_TEST 0x0B90
341 #define GL_STENCIL_WRITEMASK 0x0B98
342 #define GL_STENCIL_BITS 0x0D57
343 #define GL_STENCIL_FUNC 0x0B92
344 #define GL_STENCIL_VALUE_MASK 0x0B93
345 #define GL_STENCIL_REF 0x0B97
346 #define GL_STENCIL_FAIL 0x0B94
347 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
348 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
349 #define GL_STENCIL_CLEAR_VALUE 0x0B91
350 #define GL_STENCIL_INDEX 0x1901
351 #define GL_KEEP 0x1E00
352 #define GL_REPLACE 0x1E01
353 #define GL_INCR 0x1E02
354 #define GL_DECR 0x1E03
356 /* Hints */
357 #define GL_FOG_HINT 0x0C54
358 #define GL_LINE_SMOOTH_HINT 0x0C52
359 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
360 #define GL_POINT_SMOOTH_HINT 0x0C51
361 #define GL_POLYGON_SMOOTH_HINT 0x0C53
362 #define GL_DONT_CARE 0x1100
363 #define GL_FASTEST 0x1101
364 #define GL_NICEST 0x1102
366 /* Gets */
367 #define GL_ATTRIB_STACK_DEPTH 0x0BB0
368 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
369 #define GL_COLOR_CLEAR_VALUE 0x0C22
370 #define GL_COLOR_WRITEMASK 0x0C23
371 #define GL_CURRENT_INDEX 0x0B01
372 #define GL_CURRENT_COLOR 0x0B00
373 #define GL_CURRENT_NORMAL 0x0B02
374 #define GL_CURRENT_RASTER_COLOR 0x0B04
375 #define GL_CURRENT_RASTER_DISTANCE 0x0B09
376 #define GL_CURRENT_RASTER_INDEX 0x0B05
377 #define GL_CURRENT_RASTER_POSITION 0x0B07
378 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
379 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
380 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
381 #define GL_INDEX_CLEAR_VALUE 0x0C20
382 #define GL_INDEX_MODE 0x0C30
383 #define GL_INDEX_WRITEMASK 0x0C21
384 #define GL_MODELVIEW_MATRIX 0x0BA6
385 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3
386 #define GL_NAME_STACK_DEPTH 0x0D70
387 #define GL_PROJECTION_MATRIX 0x0BA7
388 #define GL_PROJECTION_STACK_DEPTH 0x0BA4
389 #define GL_RENDER_MODE 0x0C40
390 #define GL_RGBA_MODE 0x0C31
391 #define GL_TEXTURE_MATRIX 0x0BA8
392 #define GL_TEXTURE_STACK_DEPTH 0x0BA5
393 #define GL_VIEWPORT 0x0BA2
395 /* glPush/PopAttrib bits */
396 #define GL_CURRENT_BIT 0x00000001
397 #define GL_POINT_BIT 0x00000002
398 #define GL_LINE_BIT 0x00000004
399 #define GL_POLYGON_BIT 0x00000008
400 #define GL_POLYGON_STIPPLE_BIT 0x00000010
401 #define GL_PIXEL_MODE_BIT 0x00000020
402 #define GL_LIGHTING_BIT 0x00000040
403 #define GL_FOG_BIT 0x00000080
404 #define GL_DEPTH_BUFFER_BIT 0x00000100
405 #define GL_ACCUM_BUFFER_BIT 0x00000200
406 #define GL_STENCIL_BUFFER_BIT 0x00000400
407 #define GL_VIEWPORT_BIT 0x00000800
408 #define GL_TRANSFORM_BIT 0x00001000
409 #define GL_ENABLE_BIT 0x00002000
410 #define GL_COLOR_BUFFER_BIT 0x00004000
411 #define GL_HINT_BIT 0x00008000
412 #define GL_EVAL_BIT 0x00010000
413 #define GL_LIST_BIT 0x00020000
414 #define GL_TEXTURE_BIT 0x00040000
415 #define GL_SCISSOR_BIT 0x00080000
416 #define GL_ALL_ATTRIB_BITS 0x000FFFFF
418 /* Depth buffer */
419 #define GL_NEVER 0x0200
420 #define GL_LESS 0x0201
421 #define GL_EQUAL 0x0202
422 #define GL_LEQUAL 0x0203
423 #define GL_GREATER 0x0204
424 #define GL_NOTEQUAL 0x0205
425 #define GL_GEQUAL 0x0206
426 #define GL_ALWAYS 0x0207
427 #define GL_DEPTH_TEST 0x0B71
428 #define GL_DEPTH_BITS 0x0D56
429 #define GL_DEPTH_CLEAR_VALUE 0x0B73
430 #define GL_DEPTH_FUNC 0x0B74
431 #define GL_DEPTH_RANGE 0x0B70
432 #define GL_DEPTH_WRITEMASK 0x0B72
433 #define GL_DEPTH_COMPONENT 0x1902
435 /* TextureUnit */
436 #define GL_TEXTURE0 0x84C0
437 #define GL_TEXTURE1 0x84C1
438 #define GL_TEXTURE2 0x84C2
439 #define GL_TEXTURE3 0x84C3
440 #define GL_TEXTURE4 0x84C4
441 #define GL_TEXTURE5 0x84C5
442 #define GL_TEXTURE6 0x84C6
443 #define GL_TEXTURE7 0x84C7
444 #define GL_TEXTURE8 0x84C8
445 #define GL_TEXTURE9 0x84C9
446 #define GL_TEXTURE10 0x84CA
447 #define GL_TEXTURE11 0x84CB
448 #define GL_TEXTURE12 0x84CC
449 #define GL_TEXTURE13 0x84CD
450 #define GL_TEXTURE14 0x84CE
451 #define GL_TEXTURE15 0x84CF
452 #define GL_TEXTURE16 0x84D0
453 #define GL_TEXTURE17 0x84D1
454 #define GL_TEXTURE18 0x84D2
455 #define GL_TEXTURE19 0x84D3
456 #define GL_TEXTURE20 0x84D4
457 #define GL_TEXTURE21 0x84D5
458 #define GL_TEXTURE22 0x84D6
459 #define GL_TEXTURE23 0x84D7
460 #define GL_TEXTURE24 0x84D8
461 #define GL_TEXTURE25 0x84D9
462 #define GL_TEXTURE26 0x84DA
463 #define GL_TEXTURE27 0x84DB
464 #define GL_TEXTURE28 0x84DC
465 #define GL_TEXTURE29 0x84DD
466 #define GL_TEXTURE30 0x84DE
467 #define GL_TEXTURE31 0x84DF
468 #define GL_ACTIVE_TEXTURE 0x84E0
469 #define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
471 /* GetPName */
472 #define GL_CURRENT_COLOR 0x0B00
473 #define GL_CURRENT_NORMAL 0x0B02
474 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
475 #define GL_POINT_SIZE 0x0B11
476 #define GL_POINT_SIZE_MIN 0x8126
477 #define GL_POINT_SIZE_MAX 0x8127
478 #define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
479 #define GL_POINT_DISTANCE_ATTENUATION 0x8129
480 #define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
481 #define GL_LINE_WIDTH 0x0B21
482 #define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
483 #define GL_ALIASED_POINT_SIZE_RANGE 0x846D
484 #define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
485 #define GL_CULL_FACE_MODE 0x0B45
486 #define GL_FRONT_FACE 0x0B46
487 #define GL_SHADE_MODEL 0x0B54
488 #define GL_DEPTH_RANGE 0x0B70
489 #define GL_DEPTH_WRITEMASK 0x0B72
490 #define GL_DEPTH_CLEAR_VALUE 0x0B73
491 #define GL_DEPTH_FUNC 0x0B74
492 #define GL_STENCIL_CLEAR_VALUE 0x0B91
493 #define GL_STENCIL_FUNC 0x0B92
494 #define GL_STENCIL_VALUE_MASK 0x0B93
495 #define GL_STENCIL_FAIL 0x0B94
496 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
497 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
498 #define GL_STENCIL_REF 0x0B97
499 #define GL_STENCIL_WRITEMASK 0x0B98
500 #define GL_MATRIX_MODE 0x0BA0
501 #define GL_VIEWPORT 0x0BA2
502 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3
503 #define GL_PROJECTION_STACK_DEPTH 0x0BA4
504 #define GL_TEXTURE_STACK_DEPTH 0x0BA5
505 #define GL_MODELVIEW_MATRIX 0x0BA6
506 #define GL_PROJECTION_MATRIX 0x0BA7
507 #define GL_TEXTURE_MATRIX 0x0BA8
508 #define GL_ALPHA_TEST_FUNC 0x0BC1
509 #define GL_ALPHA_TEST_REF 0x0BC2
510 #define GL_BLEND_DST 0x0BE0
511 #define GL_BLEND_SRC 0x0BE1
512 #define GL_LOGIC_OP_MODE 0x0BF0
513 #define GL_SCISSOR_BOX 0x0C10
514 #define GL_SCISSOR_TEST 0x0C11
515 #define GL_COLOR_CLEAR_VALUE 0x0C22
516 #define GL_COLOR_WRITEMASK 0x0C23
517 #define GL_UNPACK_ALIGNMENT 0x0CF5
518 #define GL_PACK_ALIGNMENT 0x0D05
519 #define GL_MAX_LIGHTS 0x0D31
520 #define GL_MAX_CLIP_PLANES 0x0D32
521 #define GL_MAX_TEXTURE_SIZE 0x0D33
522 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
523 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
524 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
525 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
526 #define GL_MAX_ELEMENTS_VERTICES 0x80E8
527 #define GL_MAX_ELEMENTS_INDICES 0x80E9
528 #define GL_MAX_TEXTURE_UNITS 0x84E2
529 #define GL_SUBPIXEL_BITS 0x0D50
530 #define GL_RED_BITS 0x0D52
531 #define GL_GREEN_BITS 0x0D53
532 #define GL_BLUE_BITS 0x0D54
533 #define GL_ALPHA_BITS 0x0D55
534 #define GL_DEPTH_BITS 0x0D56
535 #define GL_STENCIL_BITS 0x0D57
536 #define GL_POLYGON_OFFSET_UNITS 0x2A00
537 #define GL_POLYGON_OFFSET_FILL 0x8037
538 #define GL_POLYGON_OFFSET_FACTOR 0x8038
539 #define GL_TEXTURE_BINDING_2D 0x8069
540 #define GL_VERTEX_ARRAY_SIZE 0x807A
541 #define GL_VERTEX_ARRAY_TYPE 0x807B
542 #define GL_VERTEX_ARRAY_STRIDE 0x807C
543 #define GL_NORMAL_ARRAY_TYPE 0x807E
544 #define GL_NORMAL_ARRAY_STRIDE 0x807F
545 #define GL_COLOR_ARRAY_SIZE 0x8081
546 #define GL_COLOR_ARRAY_TYPE 0x8082
547 #define GL_COLOR_ARRAY_STRIDE 0x8083
548 #define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
549 #define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
550 #define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
551 #define GL_VERTEX_ARRAY_POINTER 0x808E
552 #define GL_NORMAL_ARRAY_POINTER 0x808F
553 #define GL_COLOR_ARRAY_POINTER 0x8090
554 #define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
555 #define GL_SAMPLE_BUFFERS 0x80A8
556 #define GL_SAMPLES 0x80A9
557 #define GL_SAMPLE_COVERAGE_VALUE 0x80AA
558 #define GL_SAMPLE_COVERAGE_INVERT 0x80AB
560 /* ErrorCode */
561 #define GL_NO_ERROR 0
562 #define GL_INVALID_ENUM 0x0500
563 #define GL_INVALID_VALUE 0x0501
564 #define GL_INVALID_OPERATION 0x0502
565 #define GL_STACK_OVERFLOW 0x0503
566 #define GL_STACK_UNDERFLOW 0x0504
567 #define GL_OUT_OF_MEMORY 0x0505
569 // Vladimir
570 #define glVertex2i( x, y ) glVertex3f( x, y, 0.0 )
571 #define glTexCoord2d glTexCoord2f
572 #define glVertex3d glVertex3f
573 //#define glColor4ub(x,y,z,p) glColor4f(x,y,z,p) //nicknekit: wtf???
574 #define glFogi glFogf
575 #define glActiveTextureARB glActiveTexture
576 #define glClientActiveTextureARB glClientActiveTexture
577 //
579 void glBegin( GLenum mode );
580 void glEnd( void );
581 void glEnable( GLenum cap );
582 void glDisable( GLenum cap );
583 void glVertex2f( GLfloat x, GLfloat y );
584 void glColor3f( GLfloat red, GLfloat green, GLfloat blue );
585 void glTexCoord2f( GLfloat s, GLfloat t );
586 void glViewport( GLint x, GLint y, GLsizei width, GLsizei height );
587 void glLoadIdentity( void );
588 void glColor4f( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
589 void glOrtho( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar );
590 void glMatrixMode( GLenum mode );
591 void glTexParameterf( GLenum target, GLenum pname, GLfloat param );
592 void glTexImage2D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
593 void glDrawBuffer( GLenum mode );
594 void glTranslatef( GLfloat x, GLfloat y, GLfloat z );
595 void glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z );
596 void glScalef( GLfloat x, GLfloat y, GLfloat z );
597 void glDepthRange( GLclampf zNear, GLclampf zFar );
598 void glDepthFunc( GLenum func );
599 void glFinish( void );
600 void glGetFloatv( GLenum pname, GLfloat *params );
601 void glGetIntegerv( GLenum pname, GLint *params );
602 void glCullFace( GLenum mode );
603 void glFrustum( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar );
604 void glClear( GLbitfield mask );
605 void glVertex3f( GLfloat x, GLfloat y, GLfloat z );
606 void glColor4fv( const GLfloat *v );
607 void glHint( GLenum target, GLenum mode );
608 void glBlendFunc( GLenum sfactor, GLenum dfactor );
609 void glPopMatrix( void );
610 void glShadeModel( GLenum mode );
611 void glPushMatrix( void );
612 void glTexEnvf( GLenum target, GLenum pname, GLfloat param );
613 void glVertex3fv( const GLfloat *v );
614 void glDepthMask( GLboolean flag );
615 void glBindTexture( GLenum target, GLuint texture );
616 const GLubyte *glGetString( GLenum name );
617 void glAlphaFunc( GLenum func, GLclampf ref );
618 void glFlush( void );
619 void glReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels );
620 void glReadBuffer( GLenum mode );
621 void glLoadMatrixf( const GLfloat *m );
622 void glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels );
623 void glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
624 GLenum glGetError( void );
625 void glActiveTexture( GLenum texture );
626 void glClientActiveTexture( GLenum texture );
627 void glColor3ubv( const GLubyte *v );
628 void glPolygonMode( GLenum face, GLenum mode );
630 void glArrayElement( GLint i );
631 void glLineWidth( GLfloat width );
632 void glCallList( GLuint list );
633 void glTexCoord2fv( const GLfloat *v );
634 void glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha );
635 void glStencilFunc( GLenum func, GLint ref, GLuint mask );
636 void glStencilOp( GLenum fail, GLenum zfail, GLenum zpass );
637 void glColor4ubv( const GLubyte *v );
639 void glDrawElements( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices );
640 void glEnableClientState( GLenum array );
641 void glDisableClientState( GLenum array );
642 void glVertexPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer );
643 void glTexCoordPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer );
644 void glColorPointer( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer );
645 void glPolygonOffset( GLfloat factor, GLfloat units );
646 void glClearDepth( GLclampf depth );
647 void glDeleteTextures( GLsizei n, const GLuint *textures );
648 void glTexParameterfv( GLenum target, GLenum pname, const GLfloat *params );
649 void glStencilMask( GLuint mask );
650 void glClearStencil( GLint s );
651 void glScissor( GLint x, GLint y, GLsizei width, GLsizei height );
652 void glClipPlane( GLenum plane, const GLdouble *equation );
653 void glColor3fv( const GLfloat *v );
654 void glPointSize( GLfloat size );
656 // Vladimir
657 void glDrawArrays( GLenum mode, int first, int count );
658 void glMultMatrixf( const GLfloat *m );
659 void glPixelStorei( GLenum pname, GLint param );
660 void glFogf( GLenum pname, GLfloat param );
661 void glFogfv( GLenum pname, const GLfloat *params );
662 void glGetTexParameteriv( GLenum target, GLenum pname, GLint *params );
664 void glTexParameteri( GLenum target, GLenum pname, GLint param );
665 void glTexParameterf( GLenum target, GLenum pname, GLfloat param );
666 void glTexParameterx( GLenum target, GLenum pname, GLfixed param );
667 void glGenTextures( GLsizei n, GLuint *textures );
668 void glFrontFace( GLenum mode );
670 //nicknekit: for xash3d
672 void glColor3ub( GLubyte red, GLubyte green, GLubyte blue );
673 void glNormal3fv( const GLfloat *v );
674 void glCopyTexImage2D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border );
675 void glTexImage1D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
676 void glTexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
677 void glTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels );
678 void glTexSubImage3D( GLenum target, GLint level,
679 GLint xoffset, GLint yoffset,
680 GLint zoffset, GLsizei width,
681 GLsizei height, GLsizei depth,
682 GLenum format,
683 GLenum type, const GLvoid *pixels );
684 GLboolean glIsTexture( GLuint texture );
685 void glTexGeni( GLenum coord, GLenum pname, GLint param );
686 void glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
687 void glColor4ub( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha );
689 // for XashXT
691 void glCopyTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height );
693 void glTexEnvi( GLenum target, GLenum pname, GLint param );
695 void glBindFramebuffer( GLenum target, GLuint framebuffer );
696 void glDeleteFramebuffers( GLsizei n, const GLuint *framebuffers );
697 void glGenFramebuffers( GLsizei n, GLuint *framebuffers );
698 GLenum glCheckFramebufferStatus( GLenum target );
700 //GLboolean glIsRenderbuffer (GLuint renderbuffer);
701 void glBindRenderbuffer( GLenum target, GLuint renderbuffer );
702 void glDeleteRenderbuffers( GLsizei n, const GLuint *renderbuffers );
703 void glGenRenderbuffers( GLsizei n, GLuint *renderbuffers );
705 void glRenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height );
707 void glFramebufferTexture2D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level );
709 void glFramebufferRenderbuffer( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer );
711 void glNormalPointer( GLenum type, GLsizei stride, const void *ptr );
713 void glMultiTexCoord3f( GLenum, GLfloat, GLfloat, GLfloat );
714 void glMultiTexCoord3fARB( GLenum, GLfloat, GLfloat, GLfloat );
716 void glMultiTexCoord2f( GLenum, GLfloat, GLfloat );
718 void glDrawArrays( GLenum mode, GLint first, GLsizei count );
721 void glBindBufferARB( GLuint target, GLuint index );
723 void glGenBuffersARB( GLuint count, GLuint *indexes );
725 void glDeleteBuffersARB( GLuint count, GLuint *indexes );
727 void glBufferDataARB( GLuint target, GLuint size, void *buffer, GLuint type );
729 void glBufferSubDataARB( GLuint target, GLsizei offset, GLsizei size, void *buffer );
731 #ifdef __cplusplus
733 #endif
735 #endif