1 #if !defined(__MSHORT__) && (defined(__PUREC__) && __PUREC__ < 0x400) 2 # define __MSHORT__ 1 3 #endif 4 5 #ifdef __cplusplus 6 extern "C" { 7 #endif 8 9 #ifndef APIENTRY 10 #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) 11 #define APIENTRY __stdcall 12 #elif defined(__PUREC__) 13 #define APIENTRY __CDECL 14 #else 15 #define APIENTRY 16 #endif 17 #endif 18 #ifndef CALLBACK 19 #define CALLBACK APIENTRY 20 #endif 21 #ifndef GLAPIENTRY 22 #define GLAPIENTRY APIENTRY 23 #endif 24 #ifndef APIENTRYP 25 #define APIENTRYP APIENTRY * 26 #endif 27 #ifndef GLAPI 28 #define GLAPI extern 29 #endif 30 #if !defined(__CDECL) 31 #if defined(__PUREC__) 32 #define __CDECL cdecl 33 #else 34 #define __CDECL 35 #endif 36 #endif 37 38 39 #ifndef GL_VERSION_1_1 40 #define GL_VERSION_1_1 1 41 #ifdef __MSHORT__ 42 typedef long GLint; /* 4-byte signed */ 43 typedef unsigned long GLuint; /* 4-byte unsigned */ 44 typedef unsigned long GLenum; /* 4-byte unsigned */ 45 typedef unsigned long GLbitfield; /* 4-byte unsigned */ 46 typedef long GLsizei; 47 #else 48 typedef int GLint; /* 4-byte signed */ 49 typedef unsigned int GLuint; /* 4-byte unsigned */ 50 typedef unsigned int GLenum; /* 4-byte unsigned */ 51 typedef unsigned int GLbitfield; /* 4-byte unsigned */ 52 typedef int GLsizei; 53 #endif 54 typedef unsigned char GLboolean; 55 typedef signed char GLbyte; /* 1-byte signed */ 56 typedef unsigned char GLubyte; /* 1-byte unsigned */ 57 typedef short GLshort; /* 2-byte signed */ 58 typedef unsigned short GLushort; /* 2-byte unsigned */ 59 typedef float GLfloat; /* single precision float */ 60 typedef float GLclampf; /* single precision float in [0, 1] */ 61 typedef double GLdouble; /* double precision float */ 62 typedef double GLclampd; /* double precision float in [0, 1] */ 63 typedef void GLvoid; 64 65 66 /* Boolean values */ 67 #define GL_FALSE 0 68 #define GL_TRUE 1 69 70 /* Data types */ 71 #define GL_BYTE 0x1400 72 #define GL_UNSIGNED_BYTE 0x1401 73 #define GL_SHORT 0x1402 74 #define GL_UNSIGNED_SHORT 0x1403 75 #define GL_INT 0x1404 76 #define GL_UNSIGNED_INT 0x1405 77 #define GL_FLOAT 0x1406 78 #define GL_DOUBLE 0x140A 79 #define GL_2_BYTES 0x1407 80 #define GL_3_BYTES 0x1408 81 #define GL_4_BYTES 0x1409 82 83 /* Primitives */ 84 #define GL_LINES 0x0001 85 #define GL_POINTS 0x0000 86 #define GL_LINE_STRIP 0x0003 87 #define GL_LINE_LOOP 0x0002 88 #define GL_TRIANGLES 0x0004 89 #define GL_TRIANGLE_STRIP 0x0005 90 #define GL_TRIANGLE_FAN 0x0006 91 #define GL_QUADS 0x0007 92 #define GL_QUAD_STRIP 0x0008 93 #define GL_POLYGON 0x0009 94 #define GL_EDGE_FLAG 0x0B43 95 96 /* Vertex Arrays */ 97 #define GL_VERTEX_ARRAY 0x8074 98 #define GL_NORMAL_ARRAY 0x8075 99 #define GL_COLOR_ARRAY 0x8076 100 #define GL_INDEX_ARRAY 0x8077 101 #define GL_TEXTURE_COORD_ARRAY 0x8078 102 #define GL_EDGE_FLAG_ARRAY 0x8079 103 #define GL_VERTEX_ARRAY_SIZE 0x807A 104 #define GL_VERTEX_ARRAY_TYPE 0x807B 105 #define GL_VERTEX_ARRAY_STRIDE 0x807C 106 #define GL_VERTEX_ARRAY_COUNT 0x807D 107 #define GL_NORMAL_ARRAY_TYPE 0x807E 108 #define GL_NORMAL_ARRAY_STRIDE 0x807F 109 #define GL_NORMAL_ARRAY_COUNT 0x8080 110 #define GL_COLOR_ARRAY_SIZE 0x8081 111 #define GL_COLOR_ARRAY_TYPE 0x8082 112 #define GL_COLOR_ARRAY_STRIDE 0x8083 113 #define GL_COLOR_ARRAY_COUNT 0x8084 114 #define GL_INDEX_ARRAY_TYPE 0x8085 115 #define GL_INDEX_ARRAY_STRIDE 0x8086 116 #define GL_INDEX_ARRAY_COUNT 0x8087 117 #define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 118 #define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 119 #define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A 120 #define GL_TEXTURE_COORD_ARRAY_COUNT 0x808B 121 #define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C 122 #define GL_EDGE_FLAG_ARRAY_COUNT 0x808D 123 #define GL_VERTEX_ARRAY_POINTER 0x808E 124 #define GL_NORMAL_ARRAY_POINTER 0x808F 125 #define GL_COLOR_ARRAY_POINTER 0x8090 126 #define GL_INDEX_ARRAY_POINTER 0x8091 127 #define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 128 #define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 129 #define GL_V2F 0x2A20 130 #define GL_V3F 0x2A21 131 #define GL_C4UB_V2F 0x2A22 132 #define GL_C4UB_V3F 0x2A23 133 #define GL_C3F_V3F 0x2A24 134 #define GL_N3F_V3F 0x2A25 135 #define GL_C4F_N3F_V3F 0x2A26 136 #define GL_T2F_V3F 0x2A27 137 #define GL_T4F_V4F 0x2A28 138 #define GL_T2F_C4UB_V3F 0x2A29 139 #define GL_T2F_C3F_V3F 0x2A2A 140 #define GL_T2F_N3F_V3F 0x2A2B 141 #define GL_T2F_C4F_N3F_V3F 0x2A2C 142 #define GL_T4F_C4F_N3F_V4F 0x2A2D 143 144 /* Matrix Mode */ 145 #define GL_MATRIX_MODE 0x0BA0 146 #define GL_MODELVIEW 0x1700 147 #define GL_PROJECTION 0x1701 148 #define GL_TEXTURE 0x1702 149 150 /* Points */ 151 #define GL_POINT_SMOOTH 0x0B10 152 #define GL_POINT_SIZE 0x0B11 153 #define GL_POINT_SIZE_GRANULARITY 0x0B13 154 #define GL_POINT_SIZE_RANGE 0x0B12 155 156 /* Lines */ 157 #define GL_LINE_SMOOTH 0x0B20 158 #define GL_LINE_STIPPLE 0x0B24 159 #define GL_LINE_STIPPLE_PATTERN 0x0B25 160 #define GL_LINE_STIPPLE_REPEAT 0x0B26 161 #define GL_LINE_WIDTH 0x0B21 162 #define GL_LINE_WIDTH_GRANULARITY 0x0B23 163 #define GL_LINE_WIDTH_RANGE 0x0B22 164 165 /* Polygons */ 166 #define GL_POINT 0x1B00 167 #define GL_LINE 0x1B01 168 #define GL_FILL 0x1B02 169 #define GL_CCW 0x0901 170 #define GL_CW 0x0900 171 #define GL_FRONT 0x0404 172 #define GL_BACK 0x0405 173 #define GL_CULL_FACE 0x0B44 174 #define GL_CULL_FACE_MODE 0x0B45 175 #define GL_POLYGON_SMOOTH 0x0B41 176 #define GL_POLYGON_STIPPLE 0x0B42 177 #define GL_FRONT_FACE 0x0B46 178 #define GL_POLYGON_MODE 0x0B40 179 #define GL_POLYGON_OFFSET_FACTOR 0x8038 180 #define GL_POLYGON_OFFSET_UNITS 0x2A00 181 #define GL_POLYGON_OFFSET_POINT 0x2A01 182 #define GL_POLYGON_OFFSET_LINE 0x2A02 183 #define GL_POLYGON_OFFSET_FILL 0x8037 184 185 /* Display Lists */ 186 #define GL_COMPILE 0x1300 187 #define GL_COMPILE_AND_EXECUTE 0x1301 188 #define GL_LIST_BASE 0x0B32 189 #define GL_LIST_INDEX 0x0B33 190 #define GL_LIST_MODE 0x0B30 191 192 /* Depth buffer */ 193 #define GL_NEVER 0x0200 194 #define GL_LESS 0x0201 195 #define GL_GEQUAL 0x0206 196 #define GL_LEQUAL 0x0203 197 #define GL_GREATER 0x0204 198 #define GL_NOTEQUAL 0x0205 199 #define GL_EQUAL 0x0202 200 #define GL_ALWAYS 0x0207 201 #define GL_DEPTH_TEST 0x0B71 202 #define GL_DEPTH_BITS 0x0D56 203 #define GL_DEPTH_CLEAR_VALUE 0x0B73 204 #define GL_DEPTH_FUNC 0x0B74 205 #define GL_DEPTH_RANGE 0x0B70 206 #define GL_DEPTH_WRITEMASK 0x0B72 207 #define GL_DEPTH_COMPONENT 0x1902 208 209 /* Lighting */ 210 #define GL_LIGHTING 0x0B50 211 #define GL_LIGHT0 0x4000 212 #define GL_LIGHT1 0x4001 213 #define GL_LIGHT2 0x4002 214 #define GL_LIGHT3 0x4003 215 #define GL_LIGHT4 0x4004 216 #define GL_LIGHT5 0x4005 217 #define GL_LIGHT6 0x4006 218 #define GL_LIGHT7 0x4007 219 #define GL_SPOT_EXPONENT 0x1205 220 #define GL_SPOT_CUTOFF 0x1206 221 #define GL_CONSTANT_ATTENUATION 0x1207 222 #define GL_LINEAR_ATTENUATION 0x1208 223 #define GL_QUADRATIC_ATTENUATION 0x1209 224 #define GL_AMBIENT 0x1200 225 #define GL_DIFFUSE 0x1201 226 #define GL_SPECULAR 0x1202 227 #define GL_SHININESS 0x1601 228 #define GL_EMISSION 0x1600 229 #define GL_POSITION 0x1203 230 #define GL_SPOT_DIRECTION 0x1204 231 #define GL_AMBIENT_AND_DIFFUSE 0x1602 232 #define GL_COLOR_INDEXES 0x1603 233 #define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 234 #define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 235 #define GL_LIGHT_MODEL_AMBIENT 0x0B53 236 #define GL_FRONT_AND_BACK 0x0408 237 #define GL_SHADE_MODEL 0x0B54 238 #define GL_FLAT 0x1D00 239 #define GL_SMOOTH 0x1D01 240 #define GL_COLOR_MATERIAL 0x0B57 241 #define GL_COLOR_MATERIAL_FACE 0x0B55 242 #define GL_COLOR_MATERIAL_PARAMETER 0x0B56 243 #define GL_NORMALIZE 0x0BA1 244 245 /* User clipping planes */ 246 #define GL_CLIP_PLANE0 0x3000 247 #define GL_CLIP_PLANE1 0x3001 248 #define GL_CLIP_PLANE2 0x3002 249 #define GL_CLIP_PLANE3 0x3003 250 #define GL_CLIP_PLANE4 0x3004 251 #define GL_CLIP_PLANE5 0x3005 252 253 /* Accumulation buffer */ 254 #define GL_ACCUM_RED_BITS 0x0D58 255 #define GL_ACCUM_GREEN_BITS 0x0D59 256 #define GL_ACCUM_BLUE_BITS 0x0D5A 257 #define GL_ACCUM_ALPHA_BITS 0x0D5B 258 #define GL_ACCUM_CLEAR_VALUE 0x0B80 259 #define GL_ACCUM 0x0100 260 #define GL_ADD 0x0104 261 #define GL_LOAD 0x0101 262 #define GL_MULT 0x0103 263 #define GL_RETURN 0x0102 264 265 /* Alpha testing */ 266 #define GL_ALPHA_TEST 0x0BC0 267 #define GL_ALPHA_TEST_REF 0x0BC2 268 #define GL_ALPHA_TEST_FUNC 0x0BC1 269 270 /* Blending */ 271 #define GL_BLEND 0x0BE2 272 #define GL_BLEND_SRC 0x0BE1 273 #define GL_BLEND_DST 0x0BE0 274 #define GL_ZERO 0 275 #define GL_ONE 1 276 #define GL_SRC_COLOR 0x0300 277 #define GL_ONE_MINUS_SRC_COLOR 0x0301 278 #define GL_DST_COLOR 0x0306 279 #define GL_ONE_MINUS_DST_COLOR 0x0307 280 #define GL_SRC_ALPHA 0x0302 281 #define GL_ONE_MINUS_SRC_ALPHA 0x0303 282 #define GL_DST_ALPHA 0x0304 283 #define GL_ONE_MINUS_DST_ALPHA 0x0305 284 #define GL_SRC_ALPHA_SATURATE 0x0308 285 #define GL_CONSTANT_COLOR 0x8001 286 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 287 #define GL_CONSTANT_ALPHA 0x8003 288 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 289 290 /* Render Mode */ 291 #define GL_FEEDBACK 0x1C01 292 #define GL_RENDER 0x1C00 293 #define GL_SELECT 0x1C02 294 295 /* Feedback */ 296 #define GL_2D 0x0600 297 #define GL_3D 0x0601 298 #define GL_3D_COLOR 0x0602 299 #define GL_3D_COLOR_TEXTURE 0x0603 300 #define GL_4D_COLOR_TEXTURE 0x0604 301 #define GL_POINT_TOKEN 0x0701 302 #define GL_LINE_TOKEN 0x0702 303 #define GL_LINE_RESET_TOKEN 0x0707 304 #define GL_POLYGON_TOKEN 0x0703 305 #define GL_BITMAP_TOKEN 0x0704 306 #define GL_DRAW_PIXEL_TOKEN 0x0705 307 #define GL_COPY_PIXEL_TOKEN 0x0706 308 #define GL_PASS_THROUGH_TOKEN 0x0700 309 #define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 310 #define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 311 #define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 312 313 /* Fog */ 314 #define GL_FOG 0x0B60 315 #define GL_FOG_MODE 0x0B65 316 #define GL_FOG_DENSITY 0x0B62 317 #define GL_FOG_COLOR 0x0B66 318 #define GL_FOG_INDEX 0x0B61 319 #define GL_FOG_START 0x0B63 320 #define GL_FOG_END 0x0B64 321 #define GL_LINEAR 0x2601 322 #define GL_EXP 0x0800 323 #define GL_EXP2 0x0801 324 325 /* Logic Ops */ 326 #define GL_LOGIC_OP 0x0BF1 327 #define GL_INDEX_LOGIC_OP 0x0BF1 328 #define GL_COLOR_LOGIC_OP 0x0BF2 329 #define GL_LOGIC_OP_MODE 0x0BF0 330 #define GL_CLEAR 0x1500 331 #define GL_SET 0x150F 332 #define GL_COPY 0x1503 333 #define GL_COPY_INVERTED 0x150C 334 #define GL_NOOP 0x1505 335 #define GL_INVERT 0x150A 336 #define GL_AND 0x1501 337 #define GL_NAND 0x150E 338 #define GL_OR 0x1507 339 #define GL_NOR 0x1508 340 #define GL_XOR 0x1506 341 #define GL_EQUIV 0x1509 342 #define GL_AND_REVERSE 0x1502 343 #define GL_AND_INVERTED 0x1504 344 #define GL_OR_REVERSE 0x150B 345 #define GL_OR_INVERTED 0x150D 346 347 /* Stencil */ 348 #define GL_STENCIL_TEST 0x0B90 349 #define GL_STENCIL_WRITEMASK 0x0B98 350 #define GL_STENCIL_BITS 0x0D57 351 #define GL_STENCIL_FUNC 0x0B92 352 #define GL_STENCIL_VALUE_MASK 0x0B93 353 #define GL_STENCIL_REF 0x0B97 354 #define GL_STENCIL_FAIL 0x0B94 355 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 356 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 357 #define GL_STENCIL_CLEAR_VALUE 0x0B91 358 #define GL_STENCIL_INDEX 0x1901 359 #define GL_KEEP 0x1E00 360 #define GL_REPLACE 0x1E01 361 #define GL_INCR 0x1E02 362 #define GL_DECR 0x1E03 363 364 /* Buffers, Pixel Drawing/Reading */ 365 #define GL_NONE 0 366 #define GL_LEFT 0x0406 367 #define GL_RIGHT 0x0407 368 #define GL_FRONT_LEFT 0x0400 369 #define GL_FRONT_RIGHT 0x0401 370 #define GL_BACK_LEFT 0x0402 371 #define GL_BACK_RIGHT 0x0403 372 #define GL_AUX0 0x0409 373 #define GL_AUX1 0x040A 374 #define GL_AUX2 0x040B 375 #define GL_AUX3 0x040C 376 #define GL_COLOR_INDEX 0x1900 377 #define GL_RED 0x1903 378 #define GL_GREEN 0x1904 379 #define GL_BLUE 0x1905 380 #define GL_ALPHA 0x1906 381 #define GL_LUMINANCE 0x1909 382 #define GL_LUMINANCE_ALPHA 0x190A 383 #define GL_ALPHA_BITS 0x0D55 384 #define GL_RED_BITS 0x0D52 385 #define GL_GREEN_BITS 0x0D53 386 #define GL_BLUE_BITS 0x0D54 387 #define GL_INDEX_BITS 0x0D51 388 #define GL_SUBPIXEL_BITS 0x0D50 389 #define GL_AUX_BUFFERS 0x0C00 390 #define GL_READ_BUFFER 0x0C02 391 #define GL_DRAW_BUFFER 0x0C01 392 #define GL_DOUBLEBUFFER 0x0C32 393 #define GL_STEREO 0x0C33 394 #define GL_BITMAP 0x1A00 395 #define GL_COLOR 0x1800 396 #define GL_DEPTH 0x1801 397 #define GL_STENCIL 0x1802 398 #define GL_DITHER 0x0BD0 399 #define GL_RGB 0x1907 400 #define GL_RGBA 0x1908 401 402 /* Implementation limits */ 403 #define GL_MAX_LIST_NESTING 0x0B31 404 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 405 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 406 #define GL_MAX_NAME_STACK_DEPTH 0x0D37 407 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 408 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 409 #define GL_MAX_EVAL_ORDER 0x0D30 410 #define GL_MAX_LIGHTS 0x0D31 411 #define GL_MAX_CLIP_PLANES 0x0D32 412 #define GL_MAX_TEXTURE_SIZE 0x0D33 413 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34 414 #define GL_MAX_VIEWPORT_DIMS 0x0D3A 415 #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B 416 #define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 417 418 /* Gets */ 419 #define GL_ATTRIB_STACK_DEPTH 0x0BB0 420 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 421 #define GL_COLOR_CLEAR_VALUE 0x0C22 422 #define GL_COLOR_WRITEMASK 0x0C23 423 #define GL_CURRENT_INDEX 0x0B01 424 #define GL_CURRENT_COLOR 0x0B00 425 #define GL_CURRENT_NORMAL 0x0B02 426 #define GL_CURRENT_RASTER_COLOR 0x0B04 427 #define GL_CURRENT_RASTER_DISTANCE 0x0B09 428 #define GL_CURRENT_RASTER_INDEX 0x0B05 429 #define GL_CURRENT_RASTER_POSITION 0x0B07 430 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 431 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 432 #define GL_CURRENT_TEXTURE_COORDS 0x0B03 433 #define GL_INDEX_CLEAR_VALUE 0x0C20 434 #define GL_INDEX_MODE 0x0C30 435 #define GL_INDEX_WRITEMASK 0x0C21 436 #define GL_MODELVIEW_MATRIX 0x0BA6 437 #define GL_MODELVIEW_STACK_DEPTH 0x0BA3 438 #define GL_NAME_STACK_DEPTH 0x0D70 439 #define GL_PROJECTION_MATRIX 0x0BA7 440 #define GL_PROJECTION_STACK_DEPTH 0x0BA4 441 #define GL_RENDER_MODE 0x0C40 442 #define GL_RGBA_MODE 0x0C31 443 #define GL_TEXTURE_MATRIX 0x0BA8 444 #define GL_TEXTURE_STACK_DEPTH 0x0BA5 445 #define GL_VIEWPORT 0x0BA2 446 #define GL_COLOR_MATRIX 0x80B1 447 #define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 448 449 450 /* Evaluators */ 451 #define GL_AUTO_NORMAL 0x0D80 452 #define GL_MAP1_COLOR_4 0x0D90 453 #define GL_MAP1_GRID_DOMAIN 0x0DD0 454 #define GL_MAP1_GRID_SEGMENTS 0x0DD1 455 #define GL_MAP1_INDEX 0x0D91 456 #define GL_MAP1_NORMAL 0x0D92 457 #define GL_MAP1_TEXTURE_COORD_1 0x0D93 458 #define GL_MAP1_TEXTURE_COORD_2 0x0D94 459 #define GL_MAP1_TEXTURE_COORD_3 0x0D95 460 #define GL_MAP1_TEXTURE_COORD_4 0x0D96 461 #define GL_MAP1_VERTEX_3 0x0D97 462 #define GL_MAP1_VERTEX_4 0x0D98 463 #define GL_MAP2_COLOR_4 0x0DB0 464 #define GL_MAP2_GRID_DOMAIN 0x0DD2 465 #define GL_MAP2_GRID_SEGMENTS 0x0DD3 466 #define GL_MAP2_INDEX 0x0DB1 467 #define GL_MAP2_NORMAL 0x0DB2 468 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3 469 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4 470 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5 471 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6 472 #define GL_MAP2_VERTEX_3 0x0DB7 473 #define GL_MAP2_VERTEX_4 0x0DB8 474 #define GL_COEFF 0x0A00 475 #define GL_DOMAIN 0x0A02 476 #define GL_ORDER 0x0A01 477 478 /* Hints */ 479 #define GL_FOG_HINT 0x0C54 480 #define GL_LINE_SMOOTH_HINT 0x0C52 481 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 482 #define GL_POINT_SMOOTH_HINT 0x0C51 483 #define GL_POLYGON_SMOOTH_HINT 0x0C53 484 #define GL_DONT_CARE 0x1100 485 #define GL_FASTEST 0x1101 486 #define GL_NICEST 0x1102 487 488 /* Scissor box */ 489 #define GL_SCISSOR_TEST 0x0C11 490 #define GL_SCISSOR_BOX 0x0C10 491 492 /* Pixel Mode / Transfer */ 493 #define GL_MAP_COLOR 0x0D10 494 #define GL_MAP_STENCIL 0x0D11 495 #define GL_INDEX_SHIFT 0x0D12 496 #define GL_INDEX_OFFSET 0x0D13 497 #define GL_RED_SCALE 0x0D14 498 #define GL_RED_BIAS 0x0D15 499 #define GL_GREEN_SCALE 0x0D18 500 #define GL_GREEN_BIAS 0x0D19 501 #define GL_BLUE_SCALE 0x0D1A 502 #define GL_BLUE_BIAS 0x0D1B 503 #define GL_ALPHA_SCALE 0x0D1C 504 #define GL_ALPHA_BIAS 0x0D1D 505 #define GL_DEPTH_SCALE 0x0D1E 506 #define GL_DEPTH_BIAS 0x0D1F 507 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 508 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 509 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 510 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 511 #define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 512 #define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 513 #define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 514 #define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 515 #define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 516 #define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 517 #define GL_PIXEL_MAP_S_TO_S 0x0C71 518 #define GL_PIXEL_MAP_I_TO_I 0x0C70 519 #define GL_PIXEL_MAP_I_TO_R 0x0C72 520 #define GL_PIXEL_MAP_I_TO_G 0x0C73 521 #define GL_PIXEL_MAP_I_TO_B 0x0C74 522 #define GL_PIXEL_MAP_I_TO_A 0x0C75 523 #define GL_PIXEL_MAP_R_TO_R 0x0C76 524 #define GL_PIXEL_MAP_G_TO_G 0x0C77 525 #define GL_PIXEL_MAP_B_TO_B 0x0C78 526 #define GL_PIXEL_MAP_A_TO_A 0x0C79 527 #define GL_PACK_ALIGNMENT 0x0D05 528 #define GL_PACK_LSB_FIRST 0x0D01 529 #define GL_PACK_ROW_LENGTH 0x0D02 530 #define GL_PACK_SKIP_PIXELS 0x0D04 531 #define GL_PACK_SKIP_ROWS 0x0D03 532 #define GL_PACK_SWAP_BYTES 0x0D00 533 #define GL_UNPACK_ALIGNMENT 0x0CF5 534 #define GL_UNPACK_LSB_FIRST 0x0CF1 535 #define GL_UNPACK_ROW_LENGTH 0x0CF2 536 #define GL_UNPACK_SKIP_PIXELS 0x0CF4 537 #define GL_UNPACK_SKIP_ROWS 0x0CF3 538 #define GL_UNPACK_SWAP_BYTES 0x0CF0 539 #define GL_ZOOM_X 0x0D16 540 #define GL_ZOOM_Y 0x0D17 541 542 /* Texture mapping */ 543 #define GL_TEXTURE_ENV 0x2300 544 #define GL_TEXTURE_ENV_MODE 0x2200 545 #define GL_TEXTURE_1D 0x0DE0 546 #define GL_TEXTURE_2D 0x0DE1 547 #define GL_TEXTURE_WRAP_S 0x2802 548 #define GL_TEXTURE_WRAP_T 0x2803 549 #define GL_TEXTURE_MAG_FILTER 0x2800 550 #define GL_TEXTURE_MIN_FILTER 0x2801 551 #define GL_TEXTURE_ENV_COLOR 0x2201 552 #define GL_TEXTURE_GEN_S 0x0C60 553 #define GL_TEXTURE_GEN_T 0x0C61 554 #define GL_TEXTURE_GEN_MODE 0x2500 555 #define GL_TEXTURE_BORDER_COLOR 0x1004 556 #define GL_TEXTURE_WIDTH 0x1000 557 #define GL_TEXTURE_HEIGHT 0x1001 558 #define GL_TEXTURE_BORDER 0x1005 559 #define GL_TEXTURE_COMPONENTS 0x1003 560 #define GL_TEXTURE_RED_SIZE 0x805C 561 #define GL_TEXTURE_GREEN_SIZE 0x805D 562 #define GL_TEXTURE_BLUE_SIZE 0x805E 563 #define GL_TEXTURE_ALPHA_SIZE 0x805F 564 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060 565 #define GL_TEXTURE_INTENSITY_SIZE 0x8061 566 #define GL_NEAREST_MIPMAP_NEAREST 0x2700 567 #define GL_NEAREST_MIPMAP_LINEAR 0x2702 568 #define GL_LINEAR_MIPMAP_NEAREST 0x2701 569 #define GL_LINEAR_MIPMAP_LINEAR 0x2703 570 #define GL_OBJECT_LINEAR 0x2401 571 #define GL_OBJECT_PLANE 0x2501 572 #define GL_EYE_LINEAR 0x2400 573 #define GL_EYE_PLANE 0x2502 574 #define GL_SPHERE_MAP 0x2402 575 #define GL_DECAL 0x2101 576 #define GL_MODULATE 0x2100 577 #define GL_NEAREST 0x2600 578 #define GL_REPEAT 0x2901 579 #define GL_CLAMP 0x2900 580 #define GL_S 0x2000 581 #define GL_T 0x2001 582 #define GL_R 0x2002 583 #define GL_Q 0x2003 584 #define GL_TEXTURE_GEN_R 0x0C62 585 #define GL_TEXTURE_GEN_Q 0x0C63 586 587 #define GL_PROXY_TEXTURE_1D 0x8063 588 #define GL_PROXY_TEXTURE_2D 0x8064 589 #define GL_TEXTURE_PRIORITY 0x8066 590 #define GL_TEXTURE_RESIDENT 0x8067 591 #define GL_TEXTURE_BINDING_1D 0x8068 592 #define GL_TEXTURE_BINDING_2D 0x8069 593 594 /* Internal texture formats */ 595 #define GL_ALPHA4 0x803B 596 #define GL_ALPHA8 0x803C 597 #define GL_ALPHA12 0x803D 598 #define GL_ALPHA16 0x803E 599 #define GL_LUMINANCE4 0x803F 600 #define GL_LUMINANCE8 0x8040 601 #define GL_LUMINANCE12 0x8041 602 #define GL_LUMINANCE16 0x8042 603 #define GL_LUMINANCE4_ALPHA4 0x8043 604 #define GL_LUMINANCE6_ALPHA2 0x8044 605 #define GL_LUMINANCE8_ALPHA8 0x8045 606 #define GL_LUMINANCE12_ALPHA4 0x8046 607 #define GL_LUMINANCE12_ALPHA12 0x8047 608 #define GL_LUMINANCE16_ALPHA16 0x8048 609 #define GL_INTENSITY 0x8049 610 #define GL_INTENSITY4 0x804A 611 #define GL_INTENSITY8 0x804B 612 #define GL_INTENSITY12 0x804C 613 #define GL_INTENSITY16 0x804D 614 #define GL_R3_G3_B2 0x2A10 615 #define GL_RGB4 0x804F 616 #define GL_RGB5 0x8050 617 #define GL_RGB8 0x8051 618 #define GL_RGB10 0x8052 619 #define GL_RGB12 0x8053 620 #define GL_RGB16 0x8054 621 #define GL_RGBA2 0x8055 622 #define GL_RGBA4 0x8056 623 #define GL_RGB5_A1 0x8057 624 #define GL_RGBA8 0x8058 625 #define GL_RGB10_A2 0x8059 626 #define GL_RGBA12 0x805A 627 #define GL_RGBA16 0x805B 628 629 /* Utility */ 630 #define GL_VENDOR 0x1F00 631 #define GL_RENDERER 0x1F01 632 #define GL_VERSION 0x1F02 633 #define GL_EXTENSIONS 0x1F03 634 635 /* Errors */ 636 #define GL_NO_ERROR 0 637 #define GL_INVALID_VALUE 0x0501 638 #define GL_INVALID_ENUM 0x0500 639 #define GL_INVALID_OPERATION 0x0502 640 #define GL_STACK_OVERFLOW 0x0503 641 #define GL_STACK_UNDERFLOW 0x0504 642 #define GL_OUT_OF_MEMORY 0x0505 643 644 /* 645 * 1.0 Extensions 646 */ 647 /* GL_EXT_blend_minmax and GL_EXT_blend_color */ 648 #define GL_CONSTANT_COLOR_EXT 0x8001 649 #define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002 650 #define GL_CONSTANT_ALPHA_EXT 0x8003 651 #define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004 652 #define GL_BLEND_EQUATION_EXT 0x8009 653 #define GL_MIN_EXT 0x8007 654 #define GL_MAX_EXT 0x8008 655 #define GL_FUNC_ADD_EXT 0x8006 656 #define GL_FUNC_SUBTRACT_EXT 0x800A 657 #define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B 658 #define GL_BLEND_COLOR_EXT 0x8005 659 660 /* GL_EXT_polygon_offset */ 661 #define GL_POLYGON_OFFSET_EXT 0x8037 662 #define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038 663 #define GL_POLYGON_OFFSET_BIAS_EXT 0x8039 664 665 /* GL_EXT_vertex_array */ 666 #define GL_VERTEX_ARRAY_EXT 0x8074 667 #define GL_NORMAL_ARRAY_EXT 0x8075 668 #define GL_COLOR_ARRAY_EXT 0x8076 669 #define GL_INDEX_ARRAY_EXT 0x8077 670 #define GL_TEXTURE_COORD_ARRAY_EXT 0x8078 671 #define GL_EDGE_FLAG_ARRAY_EXT 0x8079 672 #define GL_VERTEX_ARRAY_SIZE_EXT 0x807A 673 #define GL_VERTEX_ARRAY_TYPE_EXT 0x807B 674 #define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C 675 #define GL_VERTEX_ARRAY_COUNT_EXT 0x807D 676 #define GL_NORMAL_ARRAY_TYPE_EXT 0x807E 677 #define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F 678 #define GL_NORMAL_ARRAY_COUNT_EXT 0x8080 679 #define GL_COLOR_ARRAY_SIZE_EXT 0x8081 680 #define GL_COLOR_ARRAY_TYPE_EXT 0x8082 681 #define GL_COLOR_ARRAY_STRIDE_EXT 0x8083 682 #define GL_COLOR_ARRAY_COUNT_EXT 0x8084 683 #define GL_INDEX_ARRAY_TYPE_EXT 0x8085 684 #define GL_INDEX_ARRAY_STRIDE_EXT 0x8086 685 #define GL_INDEX_ARRAY_COUNT_EXT 0x8087 686 #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088 687 #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089 688 #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A 689 #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B 690 #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C 691 #define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D 692 #define GL_VERTEX_ARRAY_POINTER_EXT 0x808E 693 #define GL_NORMAL_ARRAY_POINTER_EXT 0x808F 694 #define GL_COLOR_ARRAY_POINTER_EXT 0x8090 695 #define GL_INDEX_ARRAY_POINTER_EXT 0x8091 696 #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092 697 #define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093 698 699 /* GL_EXT_texture_object */ 700 #define GL_TEXTURE_PRIORITY_EXT 0x8066 701 #define GL_TEXTURE_RESIDENT_EXT 0x8067 702 #define GL_TEXTURE_1D_BINDING_EXT 0x8068 703 #define GL_TEXTURE_2D_BINDING_EXT 0x8069 704 705 /* GL_EXT_texture3D */ 706 #define GL_PACK_SKIP_IMAGES_EXT 0x806B 707 #define GL_PACK_IMAGE_HEIGHT_EXT 0x806C 708 #define GL_UNPACK_SKIP_IMAGES_EXT 0x806D 709 #define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E 710 #define GL_TEXTURE_3D_EXT 0x806F 711 #define GL_PROXY_TEXTURE_3D_EXT 0x8070 712 #define GL_TEXTURE_DEPTH_EXT 0x8071 713 #define GL_TEXTURE_WRAP_R_EXT 0x8072 714 #define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073 715 #define GL_TEXTURE_3D_BINDING_EXT 0x806A 716 717 /* GL_EXT_paletted_texture */ 718 #define GL_TABLE_TOO_LARGE_EXT 0x8031 719 #define GL_COLOR_TABLE_FORMAT_EXT 0x80D8 720 #define GL_COLOR_TABLE_WIDTH_EXT 0x80D9 721 #define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA 722 #define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB 723 #define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC 724 #define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD 725 #define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE 726 #define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF 727 #define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED 728 #define GL_COLOR_INDEX1_EXT 0x80E2 729 #define GL_COLOR_INDEX2_EXT 0x80E3 730 #define GL_COLOR_INDEX4_EXT 0x80E4 731 #define GL_COLOR_INDEX8_EXT 0x80E5 732 #define GL_COLOR_INDEX12_EXT 0x80E6 733 #define GL_COLOR_INDEX16_EXT 0x80E7 734 735 /* GL_EXT_shared_texture_palette */ 736 #define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB 737 738 #if 0 739 /* GL_SGIS_texture_lod */ 740 #define GL_TEXTURE_MIN_LOD_SGIS 0x813A 741 #define GL_TEXTURE_MAX_LOD_SGIS 0x813B 742 #define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C 743 #define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D 744 #endif 745 746 /* GL_EXT_point_parameters */ 747 #define GL_POINT_SIZE_MIN_EXT 0x8126 748 #define GL_POINT_SIZE_MAX_EXT 0x8127 749 #define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128 750 #define GL_DISTANCE_ATTENUATION_EXT 0x8129 751 752 753 #define GL_CURRENT_BIT 0x00000001L 754 #define GL_POINT_BIT 0x00000002L 755 #define GL_LINE_BIT 0x00000004L 756 #define GL_POLYGON_BIT 0x00000008L 757 #define GL_POLYGON_STIPPLE_BIT 0x00000010L 758 #define GL_PIXEL_MODE_BIT 0x00000020L 759 #define GL_LIGHTING_BIT 0x00000040L 760 #define GL_FOG_BIT 0x00000080L 761 #define GL_DEPTH_BUFFER_BIT 0x00000100L 762 #define GL_ACCUM_BUFFER_BIT 0x00000200L 763 #define GL_STENCIL_BUFFER_BIT 0x00000400L 764 #define GL_VIEWPORT_BIT 0x00000800L 765 #define GL_TRANSFORM_BIT 0x00001000L 766 #define GL_ENABLE_BIT 0x00002000L 767 #define GL_COLOR_BUFFER_BIT 0x00004000L 768 #define GL_HINT_BIT 0x00008000L 769 #define GL_EVAL_BIT 0x00010000L 770 #define GL_LIST_BIT 0x00020000L 771 #define GL_TEXTURE_BIT 0x00040000L 772 #define GL_SCISSOR_BIT 0x00080000L 773 #define GL_ALL_ATTRIB_BITS 0x000fffffL 774 775 #define GL_CLIENT_PIXEL_STORE_BIT 0x00000001L 776 #define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002L 777 #define GL_CLIENT_ALL_ATTRIB_BITS 0x0000FFFFL 778 779 780 GLAPI void GLAPIENTRY glEnable(GLenum cap); 781 GLAPI void GLAPIENTRY glDisable(GLenum cap); 782 783 GLAPI void GLAPIENTRY glShadeModel(GLenum mode); 784 GLAPI void GLAPIENTRY glCullFace(GLenum mode); 785 GLAPI void GLAPIENTRY glPolygonMode(GLenum face, GLenum mode); 786 787 GLAPI void GLAPIENTRY glBegin(GLenum mode); 788 GLAPI void GLAPIENTRY glEnd(void); 789 790 GLAPI void GLAPIENTRY glVertex2f(GLfloat x, GLfloat y); 791 GLAPI void GLAPIENTRY glVertex2d(GLdouble x, GLdouble y); 792 GLAPI void GLAPIENTRY glVertex2fv(const GLfloat *v); 793 GLAPI void GLAPIENTRY glVertex2dv(const GLdouble *v); 794 795 GLAPI void GLAPIENTRY glVertex3f(GLfloat x, GLfloat y, GLfloat z); 796 GLAPI void GLAPIENTRY glVertex3d(GLdouble x, GLdouble y, GLdouble z); 797 GLAPI void GLAPIENTRY glVertex3fv(const GLfloat *v); 798 GLAPI void GLAPIENTRY glVertex3dv(const GLdouble *v); 799 800 GLAPI void GLAPIENTRY glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w); 801 GLAPI void GLAPIENTRY glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w); 802 GLAPI void GLAPIENTRY glVertex4fv(const GLfloat *v); 803 GLAPI void GLAPIENTRY glVertex4dv(const GLdouble *v); 804 805 GLAPI void GLAPIENTRY glColor3f(GLfloat red, GLfloat green, GLfloat blue); 806 GLAPI void GLAPIENTRY glColor3d(GLdouble red, GLdouble green, GLdouble blue); 807 GLAPI void GLAPIENTRY glColor3fv(const GLfloat *v); 808 GLAPI void GLAPIENTRY glColor3dv(const GLdouble *v); 809 810 GLAPI void GLAPIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); 811 GLAPI void GLAPIENTRY glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); 812 GLAPI void GLAPIENTRY glColor4fv(const GLfloat *v); 813 GLAPI void GLAPIENTRY glColor4dv(const GLdouble *v); 814 815 GLAPI void GLAPIENTRY glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz); 816 GLAPI void GLAPIENTRY glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz); 817 GLAPI void GLAPIENTRY glNormal3fv(const GLfloat *v); 818 GLAPI void GLAPIENTRY glNormal3dv(const GLdouble *v); 819 820 GLAPI void GLAPIENTRY glTexCoord1f(GLfloat s); 821 GLAPI void GLAPIENTRY glTexCoord1d(GLdouble s); 822 GLAPI void GLAPIENTRY glTexCoord1fv(const GLfloat *v); 823 GLAPI void GLAPIENTRY glTexCoord1dv(const GLdouble *v); 824 825 GLAPI void GLAPIENTRY glTexCoord2f(GLfloat s, GLfloat t); 826 GLAPI void GLAPIENTRY glTexCoord2d(GLdouble s, GLdouble t); 827 GLAPI void GLAPIENTRY glTexCoord2fv(const GLfloat *v); 828 GLAPI void GLAPIENTRY glTexCoord2dv(const GLdouble *v); 829 830 GLAPI void GLAPIENTRY glTexCoord3f(GLfloat s, GLfloat t, GLfloat r); 831 GLAPI void GLAPIENTRY glTexCoord3d(GLdouble s, GLdouble t, GLdouble r); 832 GLAPI void GLAPIENTRY glTexCoord3fv(const GLfloat *v); 833 GLAPI void GLAPIENTRY glTexCoord3dv(const GLdouble *v); 834 835 GLAPI void GLAPIENTRY glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q); 836 GLAPI void GLAPIENTRY glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q); 837 GLAPI void GLAPIENTRY glTexCoord4fv(const GLfloat *v); 838 GLAPI void GLAPIENTRY glTexCoord4dv(const GLdouble *v); 839 840 GLAPI void GLAPIENTRY glEdgeFlag(GLboolean flag); 841 842 /* matrix */ 843 GLAPI void GLAPIENTRY glMatrixMode(GLenum mode); 844 GLAPI void GLAPIENTRY glLoadMatrixf(const GLfloat *m); 845 GLAPI void GLAPIENTRY glLoadIdentity(void); 846 GLAPI void GLAPIENTRY glMultMatrixf(const GLfloat *m); 847 GLAPI void GLAPIENTRY glPushMatrix(void); 848 GLAPI void GLAPIENTRY glPopMatrix(void); 849 GLAPI void GLAPIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); 850 GLAPI void GLAPIENTRY glTranslatef(GLfloat x, GLfloat y, GLfloat z); 851 GLAPI void GLAPIENTRY glScalef(GLfloat x, GLfloat y, GLfloat z); 852 853 GLAPI void GLAPIENTRY glViewport(GLint x, GLint y, GLint width, GLint height); 854 GLAPI void GLAPIENTRY glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val); 855 GLAPI void GLAPIENTRY glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val); 856 857 /* lists */ 858 GLAPI GLuint GLAPIENTRY glGenLists(GLsizei range); 859 GLAPI GLboolean GLAPIENTRY glIsList(GLuint list); 860 GLAPI void GLAPIENTRY glNewList(GLuint list, GLenum mode); 861 GLAPI void GLAPIENTRY glEndList(void); 862 GLAPI void GLAPIENTRY glCallList(GLuint list); 863 GLAPI void GLAPIENTRY glDeleteLists(GLuint list, GLsizei range); 864 865 /* clear */ 866 GLAPI void GLAPIENTRY glClear(GLbitfield mask); 867 GLAPI void GLAPIENTRY glClearColor(GLfloat r, GLfloat g, GLfloat b, GLfloat a); 868 GLAPI void GLAPIENTRY glClearDepth(GLdouble depth); 869 GLAPI void GLAPIENTRY glClearDepthf(GLfloat depth); 870 871 /* selection */ 872 GLAPI GLint GLAPIENTRY glRenderMode(GLenum mode); 873 GLAPI void GLAPIENTRY glSelectBuffer(GLsizei size, GLuint *buf); 874 875 GLAPI void GLAPIENTRY glInitNames(void); 876 GLAPI void GLAPIENTRY glPushName(GLuint name); 877 GLAPI void GLAPIENTRY glPopName(void); 878 GLAPI void GLAPIENTRY glLoadName(GLuint name); 879 880 /* textures */ 881 GLAPI void GLAPIENTRY glGenTextures(GLsizei n, GLuint *textures); 882 GLAPI void GLAPIENTRY glDeleteTextures(GLsizei n, const GLuint *textures); 883 GLAPI void GLAPIENTRY glBindTexture(GLenum target, GLuint texture); 884 GLAPI void GLAPIENTRY glTexImage2D(GLenum target, GLint level, GLint components, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); 885 GLAPI void GLAPIENTRY glTexEnvi(GLenum target, GLenum pname, GLint param); 886 GLAPI void GLAPIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param); 887 GLAPI void GLAPIENTRY glPixelStorei(GLenum pname, GLint param); 888 889 /* lighting */ 890 891 GLAPI void GLAPIENTRY glMaterialfv(GLenum face, GLenum pname, const GLfloat *v); 892 GLAPI void GLAPIENTRY glMaterialf(GLenum mode, GLenum pname, GLfloat v); 893 GLAPI void GLAPIENTRY glColorMaterial(GLenum face, GLenum mode); 894 895 GLAPI void GLAPIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *v); 896 GLAPI void GLAPIENTRY glLightf(GLenum light, GLenum pname, GLfloat v); 897 GLAPI void GLAPIENTRY glLightModeli(GLenum pname, GLint param); 898 GLAPI void GLAPIENTRY glLightModelfv(GLenum pname, const GLfloat *param); 899 900 /* misc */ 901 902 GLAPI void GLAPIENTRY glFlush(void); 903 GLAPI void GLAPIENTRY glHint(GLenum target, GLenum mode); 904 GLAPI void GLAPIENTRY glGetIntegerv(GLenum pname, GLint *params); 905 GLAPI void GLAPIENTRY glGetFloatv(GLenum pname, GLfloat *v); 906 GLAPI void GLAPIENTRY glFrontFace(GLenum mode); 907 908 /* opengl 1.2 arrays */ 909 GLAPI void GLAPIENTRY glEnableClientState(GLenum array); 910 GLAPI void GLAPIENTRY glDisableClientState(GLenum array); 911 GLAPI void GLAPIENTRY glArrayElement(GLint i); 912 GLAPI void GLAPIENTRY glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 913 GLAPI void GLAPIENTRY glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 914 GLAPI void GLAPIENTRY glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer); 915 GLAPI void GLAPIENTRY glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 916 917 /* opengl 1.2 polygon offset */ 918 GLAPI void GLAPIENTRY glPolygonOffset(GLfloat factor, GLfloat units); 919 920 #endif /* GL_VERSION_1_1 */ 921 922 #ifndef GL_VERSION_1_5 923 #ifndef __GLintptr_defined 924 #include <stddef.h> 925 #ifdef __APPLE__ 926 typedef intptr_t GLsizeiptr; 927 typedef intptr_t GLintptr; 928 #else 929 typedef ptrdiff_t GLsizeiptr; 930 typedef ptrdiff_t GLintptr; 931 #endif 932 #define __GLintptr_defined 933 #endif 934 #endif 935 936 #ifdef __NFOSMESA_H__ 937 #include <GL/glext.h> 938 #endif 939 940 #ifndef GL_VERSION_2_0 941 #define GL_VERSION_2_0 1 942 typedef char GLchar; 943 #endif 944 945 #ifndef GL_ARB_vertex_buffer_object 946 #define GL_ARB_vertex_buffer_object 1 947 #ifdef __APPLE__ 948 typedef intptr_t GLsizeiptrARB; 949 typedef intptr_t GLintptrARB; 950 #else 951 typedef ptrdiff_t GLsizeiptrARB; 952 typedef ptrdiff_t GLintptrARB; 953 #endif 954 #endif 955 956 #ifndef GL_NV_half_float 957 #define GL_NV_half_float 1 958 typedef unsigned short GLhalfNV; 959 #endif 960 961 #ifndef GL_NV_vdpau_interop 962 #define GL_NV_vdpau_interop 1 963 typedef GLintptr GLvdpauSurfaceNV; 964 #endif 965 966 #ifndef GL_ARB_cl_event 967 #define GL_ARB_cl_event 1 968 #ifdef __PUREC__ 969 struct _cl_context { int dummy; }; 970 struct _cl_event { int dummy; }; 971 #else 972 struct _cl_context; 973 struct _cl_event; 974 #endif 975 #endif 976 977 #if !defined(GL_ARB_sync) && !defined(__TINY_GL_H__) 978 #define GL_ARB_sync 1 979 #if defined(__GNUC__) || (defined(LLONG_MAX) && LLONG_MAX > 2147483647L) 980 typedef int64_t GLint64; 981 typedef uint64_t GLuint64; 982 #else 983 typedef struct { long hi; unsigned long lo; } GLint64; 984 typedef struct { unsigned long hi; unsigned long lo; } GLuint64; 985 #endif 986 #ifdef __PUREC__ 987 struct __GLsync { int dummy; }; 988 #endif 989 typedef struct __GLsync *GLsync; 990 #endif 991 992 #if !defined(GL_EXT_timer_query) && !defined(__TINY_GL_H__) 993 #define GL_EXT_timer_query 1 994 typedef GLint64 GLint64EXT; 995 typedef GLuint64 GLuint64EXT; 996 #endif 997 998 #ifndef GL_OES_fixed_point 999 #define GL_OES_fixed_point 1 1000 typedef GLint GLfixed; 1001 #endif 1002 1003 #ifndef GL_ARB_shader_objects 1004 #define GL_ARB_shader_objects 1 1005 typedef char GLcharARB; 1006 #ifdef __APPLE__ 1007 typedef void *GLhandleARB; 1008 #else 1009 typedef GLuint GLhandleARB; 1010 #endif 1011 #endif 1012 1013 #ifndef GL_KHR_debug 1014 #define GL_KHR_debug 1 1015 typedef void CALLBACK (*GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message, const void *userParam); 1016 #endif 1017 #ifndef GL_ARB_debug_output 1018 #define GL_ARB_debug_output 1 1019 typedef void CALLBACK (*GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message, const void *userParam); 1020 #endif 1021 #ifndef GL_AMD_debug_output 1022 #define GL_AMD_debug_output 1023 typedef void CALLBACK (*GLDEBUGPROCAMD)(GLuint id,GLenum category, GLenum severity, GLsizei length, const GLchar *message, void *userParam); 1024 #endif 1025 #ifndef GL_MESA_program_debug 1026 #define GL_MESA_program_debug 1 1027 typedef void CALLBACK (*GLprogramcallbackMESA)(GLenum target, GLvoid *data); 1028 #endif 1029 #ifndef GL_EXT_external_buffer 1030 #define GL_EXT_external_buffer 1 1031 typedef void *GLeglClientBufferEXT; 1032 #endif 1033 #ifndef GL_NV_draw_vulkan_image 1034 #define GL_NV_draw_vulkan_image 1 1035 typedef void (APIENTRY *GLVULKANPROCNV)(void); 1036 #endif 1037 1038 1039 /* 1040 * Mesa Off-Screen rendering interface. 1041 * 1042 * Copyright (C) 1999-2005 Brian Paul All Rights Reserved. 1043 * 1044 */ 1045 1046 #define OSMESA_VERSION_NUMBER(major, minor, patch) ((major) * 10000 + (minor) * 100 + patch) 1047 #define OSMESA_VERSION OSMESA_VERSION_NUMBER(OSMESA_MAJOR_VERSION, OSMESA_MINOR_VERSION, OSMESA_PATCH_VERSION) 1048 1049 #if !defined(OSMESA_MAJOR_VERSION) 1050 #define OSMESA_MAJOR_VERSION 6 1051 #define OSMESA_MINOR_VERSION 3 1052 #define OSMESA_PATCH_VERSION 0 1053 1054 /* 1055 * Values for the format parameter of OSMesaCreateLDG() 1056 * Mesa_gl.ldg version 0.8 (Mesa 2.6) 1057 */ 1058 #define OSMESA_COLOR_INDEX GL_COLOR_INDEX 1059 #define OSMESA_RGBA GL_RGBA 1060 #define OSMESA_BGRA 0x1 1061 #define OSMESA_ARGB 0x2 1062 #define OSMESA_RGB GL_RGB 1063 #define OSMESA_BGR 0x4 1064 #define OSMESA_RGB_565 0x5 1065 #define VDI_ARGB 0x8 1066 #define VDI_RGB 0xf 1067 #define DIRECT_VDI_ARGB 0x10 1068 1069 /* 1070 * OSMesaPixelStore() parameters: 1071 */ 1072 #define OSMESA_ROW_LENGTH 0x10 1073 #define OSMESA_Y_UP 0x11 1074 1075 /* 1076 * Accepted by OSMesaGetIntegerv: 1077 */ 1078 #define OSMESA_WIDTH 0x20 1079 #define OSMESA_HEIGHT 0x21 1080 #define OSMESA_FORMAT 0x22 1081 #define OSMESA_TYPE 0x23 1082 #define OSMESA_MAX_WIDTH 0x24 /* new in 4.0 */ 1083 #define OSMESA_MAX_HEIGHT 0x25 /* new in 4.0 */ 1084 1085 #ifdef __PUREC__ 1086 struct osmesa_context { int dummy; }; 1087 #endif 1088 typedef struct osmesa_context *OSMesaContext; 1089 1090 typedef void (APIENTRY *OSMESAproc)(void); 1091 1092 GLAPI OSMesaContext GLAPIENTRY OSMesaCreateContext( GLenum format, OSMesaContext sharelist ); 1093 GLAPI OSMesaContext GLAPIENTRY OSMesaCreateContextExt( GLenum format, GLint depthBits, GLint stencilBits, GLint accumBits, OSMesaContext sharelist); 1094 GLAPI void GLAPIENTRY OSMesaDestroyContext( OSMesaContext ctx ); 1095 GLAPI GLboolean GLAPIENTRY OSMesaMakeCurrent( OSMesaContext ctx, void *buffer, GLenum type, GLsizei width, GLsizei height ); 1096 GLAPI OSMesaContext GLAPIENTRY OSMesaGetCurrentContext( void ); 1097 GLAPI void GLAPIENTRY OSMesaPixelStore( GLint pname, GLint value ); 1098 GLAPI void GLAPIENTRY OSMesaGetIntegerv( GLint pname, GLint *value ); 1099 GLAPI GLboolean GLAPIENTRY OSMesaGetDepthBuffer( OSMesaContext c, GLint *width, GLint *height, GLint *bytesPerValue, void **buffer ); 1100 GLAPI GLboolean GLAPIENTRY OSMesaGetColorBuffer( OSMesaContext c, GLint *width, GLint *height, GLint *format, void **buffer ); 1101 GLAPI OSMESAproc GLAPIENTRY OSMesaGetProcAddress( const char *funcName ); 1102 GLAPI void GLAPIENTRY OSMesaColorClamp(GLboolean enable); 1103 GLAPI void GLAPIENTRY OSMesaPostprocess(OSMesaContext osmesa, const char *filter, GLuint enable_value); 1104 1105 1106 #elif OSMESA_VERSION < OSMESA_VERSION_NUMBER(6, 3, 0) 1107 typedef void (APIENTRY *OSMESAproc)(void); 1108 #endif 1109 1110 /* 1111 * integral types that need to be promoted to 1112 * 32bit type when passed by value 1113 */ 1114 #ifndef GL_nfosmesa_short_promotions 1115 #define GL_nfosmesa_short_promotions 1 1116 #ifdef __MSHORT__ 1117 typedef long GLshort32; 1118 typedef unsigned long GLushort32; 1119 typedef unsigned long GLboolean32; 1120 typedef long GLchar32; 1121 typedef unsigned long GLubyte32; 1122 typedef signed long GLbyte32; 1123 typedef unsigned long GLhalfNV32; 1124 #else 1125 typedef GLshort GLshort32; 1126 typedef GLushort GLushort32; 1127 typedef GLboolean GLboolean32; 1128 typedef GLchar GLchar32; 1129 typedef GLubyte GLubyte32; 1130 typedef GLbyte GLbyte32; 1131 typedef GLhalfNV GLhalfNV32; 1132 #endif 1133 #endif 1134 1135 /* 1136 * Atari-specific structure for the shared libraries 1137 */ 1138 struct gl_public { 1139 void *libhandle; 1140 void *libexec; 1141 void *(*m_alloc)(size_t); 1142 void (*m_free)(void *); 1143 }; 1144 1145 #ifdef __cplusplus 1146 } 1147 #endif 1148