gl.h revision b19ba7827cded079470fc0c848124089ecb6ca5f
1/* $Id: gl.h,v 1.15 1999/10/21 06:04:20 tjump Exp $ */ 2 3/* 4 * Mesa 3-D graphics library 5 * Version: 3.1 6 * 7 * Copyright (C) 1999 Brian Paul All Rights Reserved. 8 * 9 * Permission is hereby granted, free of charge, to any person obtaining a 10 * copy of this software and associated documentation files (the "Software"), 11 * to deal in the Software without restriction, including without limitation 12 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 13 * and/or sell copies of the Software, and to permit persons to whom the 14 * Software is furnished to do so, subject to the following conditions: 15 * 16 * The above copyright notice and this permission notice shall be included 17 * in all copies or substantial portions of the Software. 18 * 19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 20 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 22 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 23 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 24 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 */ 26 27 28 29 30#ifndef GL_H 31#define GL_H 32 33#if defined(USE_MGL_NAMESPACE) 34#include "gl_mangle.h" 35#endif 36 37 38#if defined(__BEOS__) 39#include <stdlib.h> /* to get some BeOS-isms */ 40#endif 41 42 43#if !defined(OPENSTEP) && (defined(NeXT) || defined(NeXT_PDO)) 44#define OPENSTEP 45#endif 46 47 48#if defined(_WIN32) && !defined(__WIN32__) 49# define __WIN32__ 50#endif 51 52#if !defined(OPENSTEP) && (defined(__WIN32__) || defined(__CYGWIN32__)) 53# pragma warning( disable : 4068 ) /* unknown pragma */ 54# pragma warning( disable : 4244 ) /* '=' : conversion from 'const double ' to 'float ', possible loss of data */ 55# pragma warning( disable : 4018 ) /* '<' : signed/unsigned mismatch */ 56# pragma warning( disable : 4305 ) /* '=' : truncation from 'const double ' to 'float ' */ 57# pragma warning( disable : 4550 ) /* 'function' undefined; assuming extern returning int */ 58# pragma warning( disable : 4761 ) /* integral size mismatch in argument; conversion supplied */ 59# pragma warning( disable : 4711 ) /* function 'foo' selected for automatic inline expansion */ 60# if defined(_MSC_VER) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ 61# define GLAPI __declspec(dllexport) 62# define WGLAPI __declspec(dllexport) 63# elif defined(_MSC_VER) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ 64# define GLAPI __declspec(dllimport) 65# define WGLAPI __declspec(dllimport) 66# else /* for use with static link lib build of Win32 edition only */ 67# define GLAPI extern 68# define WGLAPI __declspec(dllimport) 69# endif /* _STATIC_MESA support */ 70# define GLAPIENTRY __stdcall 71# define GLCALLBACK __stdcall 72# define GLWINAPI __stdcall 73# define GLWINAPIV __cdecl 74#else 75/* non-Windows compilation */ 76# define GLAPI extern 77# define GLAPIENTRY 78# define GLCALLBACK 79# define GLWINAPI 80# define GLWINAPIV 81#endif /* WIN32 / CYGWIN32 bracket */ 82 83/* compatability guard so we don't need to change client code */ 84 85#if defined(_WIN32) && !defined(_WINDEF_) && !defined(OPENSTEP) 86# if !defined(MESA_MINWARN) 87# pragma message( "note: WINDOWS.H not included, providing Mesa definition of CALLBACK macro" ) 88# pragma message( "----: and PROC typedef. If you receive compiler warnings about either ") 89# pragma message( "----: being multiply defined you should include WINDOWS.H priot to gl/gl.h" ) 90# endif 91# define CALLBACK GLCALLBACK 92typedef int (GLAPIENTRY *PROC)(); 93typedef void *HGLRC; 94typedef void *HDC; 95typedef unsigned long COLORREF; 96#endif 97 98#if defined(_WIN32) && !defined(_WINGDI_) && !defined(OPENSTEP) 99# if !defined(MESA_MINWARN) 100# pragma message( "note: WINDOWS.H not included, providing Mesa definition of wgl functions" ) 101# pragma message( "----: and macros. If you receive compiler warnings about any being multiply ") 102# pragma message( "----: defined you should include WINDOWS.H priot to gl/gl.h" ) 103# endif 104# define WGL_FONT_LINES 0 105# define WGL_FONT_POLYGONS 1 106# ifdef UNICODE 107# define wglUseFontBitmaps wglUseFontBitmapsW 108# define wglUseFontOutlines wglUseFontOutlinesW 109# else 110# define wglUseFontBitmaps wglUseFontBitmapsA 111# define wglUseFontOutlines wglUseFontOutlinesA 112# endif /* !UNICODE */ 113typedef struct tagLAYERPLANEDESCRIPTOR LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR; 114typedef struct _GLYPHMETRICSFLOAT GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT; 115typedef struct tagPIXELFORMATDESCRIPTOR PIXELFORMATDESCRIPTOR, *PPIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR; 116#include <gl/mesa_wgl.h> 117#endif 118 119#ifdef __cplusplus 120extern "C" { 121#endif 122 123 124#ifdef macintosh 125 #pragma enumsalwaysint on 126 #if PRAGMA_IMPORT_SUPPORTED 127 #pragma import on 128 #endif 129#endif 130 131 132 133/* 134 * Apps can test for this symbol to do conditional compilation if needed. 135 */ 136#define MESA 137 138#define MESA_MAJOR_VERSION 3 139#define MESA_MINOR_VERSION 1 140 141 142#define GL_VERSION_1_1 1 143#define GL_VERSION_1_2 1 144 145 146/* 147 * 148 * Enumerations 149 * 150 */ 151 152typedef enum { 153 /* Boolean values */ 154 GL_FALSE = 0, 155 GL_TRUE = 1, 156 157 /* Data types */ 158 GL_BYTE = 0x1400, 159 GL_UNSIGNED_BYTE = 0x1401, 160 GL_SHORT = 0x1402, 161 GL_UNSIGNED_SHORT = 0x1403, 162 GL_INT = 0x1404, 163 GL_UNSIGNED_INT = 0x1405, 164 GL_FLOAT = 0x1406, 165 GL_DOUBLE = 0x140A, 166 GL_2_BYTES = 0x1407, 167 GL_3_BYTES = 0x1408, 168 GL_4_BYTES = 0x1409, 169 170 /* Primitives */ 171 GL_POINTS = 0x0000, 172 GL_LINES = 0x0001, 173 GL_LINE_LOOP = 0x0002, 174 GL_LINE_STRIP = 0x0003, 175 GL_TRIANGLES = 0x0004, 176 GL_TRIANGLE_STRIP = 0x0005, 177 GL_TRIANGLE_FAN = 0x0006, 178 GL_QUADS = 0x0007, 179 GL_QUAD_STRIP = 0x0008, 180 GL_POLYGON = 0x0009, 181 182 /* Vertex Arrays */ 183 GL_VERTEX_ARRAY = 0x8074, 184 GL_NORMAL_ARRAY = 0x8075, 185 GL_COLOR_ARRAY = 0x8076, 186 GL_INDEX_ARRAY = 0x8077, 187 GL_TEXTURE_COORD_ARRAY = 0x8078, 188 GL_EDGE_FLAG_ARRAY = 0x8079, 189 GL_VERTEX_ARRAY_SIZE = 0x807A, 190 GL_VERTEX_ARRAY_TYPE = 0x807B, 191 GL_VERTEX_ARRAY_STRIDE = 0x807C, 192 GL_NORMAL_ARRAY_TYPE = 0x807E, 193 GL_NORMAL_ARRAY_STRIDE = 0x807F, 194 GL_COLOR_ARRAY_SIZE = 0x8081, 195 GL_COLOR_ARRAY_TYPE = 0x8082, 196 GL_COLOR_ARRAY_STRIDE = 0x8083, 197 GL_INDEX_ARRAY_TYPE = 0x8085, 198 GL_INDEX_ARRAY_STRIDE = 0x8086, 199 GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088, 200 GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089, 201 GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A, 202 GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C, 203 GL_VERTEX_ARRAY_POINTER = 0x808E, 204 GL_NORMAL_ARRAY_POINTER = 0x808F, 205 GL_COLOR_ARRAY_POINTER = 0x8090, 206 GL_INDEX_ARRAY_POINTER = 0x8091, 207 GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092, 208 GL_EDGE_FLAG_ARRAY_POINTER = 0x8093, 209 GL_V2F = 0x2A20, 210 GL_V3F = 0x2A21, 211 GL_C4UB_V2F = 0x2A22, 212 GL_C4UB_V3F = 0x2A23, 213 GL_C3F_V3F = 0x2A24, 214 GL_N3F_V3F = 0x2A25, 215 GL_C4F_N3F_V3F = 0x2A26, 216 GL_T2F_V3F = 0x2A27, 217 GL_T4F_V4F = 0x2A28, 218 GL_T2F_C4UB_V3F = 0x2A29, 219 GL_T2F_C3F_V3F = 0x2A2A, 220 GL_T2F_N3F_V3F = 0x2A2B, 221 GL_T2F_C4F_N3F_V3F = 0x2A2C, 222 GL_T4F_C4F_N3F_V4F = 0x2A2D, 223 224 /* Matrix Mode */ 225 GL_MATRIX_MODE = 0x0BA0, 226 GL_MODELVIEW = 0x1700, 227 GL_PROJECTION = 0x1701, 228 GL_TEXTURE = 0x1702, 229 230 /* Points */ 231 GL_POINT_SMOOTH = 0x0B10, 232 GL_POINT_SIZE = 0x0B11, 233 GL_POINT_SIZE_GRANULARITY = 0x0B13, 234 GL_POINT_SIZE_RANGE = 0x0B12, 235 236 /* Lines */ 237 GL_LINE_SMOOTH = 0x0B20, 238 GL_LINE_STIPPLE = 0x0B24, 239 GL_LINE_STIPPLE_PATTERN = 0x0B25, 240 GL_LINE_STIPPLE_REPEAT = 0x0B26, 241 GL_LINE_WIDTH = 0x0B21, 242 GL_LINE_WIDTH_GRANULARITY = 0x0B23, 243 GL_LINE_WIDTH_RANGE = 0x0B22, 244 245 /* Polygons */ 246 GL_POINT = 0x1B00, 247 GL_LINE = 0x1B01, 248 GL_FILL = 0x1B02, 249 GL_CW = 0x0900, 250 GL_CCW = 0x0901, 251 GL_FRONT = 0x0404, 252 GL_BACK = 0x0405, 253 GL_POLYGON_MODE = 0x0B40, 254 GL_POLYGON_SMOOTH = 0x0B41, 255 GL_POLYGON_STIPPLE = 0x0B42, 256 GL_EDGE_FLAG = 0x0B43, 257 GL_CULL_FACE = 0x0B44, 258 GL_CULL_FACE_MODE = 0x0B45, 259 GL_FRONT_FACE = 0x0B46, 260 GL_POLYGON_OFFSET_FACTOR = 0x8038, 261 GL_POLYGON_OFFSET_UNITS = 0x2A00, 262 GL_POLYGON_OFFSET_POINT = 0x2A01, 263 GL_POLYGON_OFFSET_LINE = 0x2A02, 264 GL_POLYGON_OFFSET_FILL = 0x8037, 265 266 /* Display Lists */ 267 GL_COMPILE = 0x1300, 268 GL_COMPILE_AND_EXECUTE = 0x1301, 269 GL_LIST_BASE = 0x0B32, 270 GL_LIST_INDEX = 0x0B33, 271 GL_LIST_MODE = 0x0B30, 272 273 /* Depth buffer */ 274 GL_NEVER = 0x0200, 275 GL_LESS = 0x0201, 276 GL_GEQUAL = 0x0206, 277 GL_LEQUAL = 0x0203, 278 GL_GREATER = 0x0204, 279 GL_NOTEQUAL = 0x0205, 280 GL_EQUAL = 0x0202, 281 GL_ALWAYS = 0x0207, 282 GL_DEPTH_TEST = 0x0B71, 283 GL_DEPTH_BITS = 0x0D56, 284 GL_DEPTH_CLEAR_VALUE = 0x0B73, 285 GL_DEPTH_FUNC = 0x0B74, 286 GL_DEPTH_RANGE = 0x0B70, 287 GL_DEPTH_WRITEMASK = 0x0B72, 288 GL_DEPTH_COMPONENT = 0x1902, 289 290 /* Lighting */ 291 GL_LIGHTING = 0x0B50, 292 GL_LIGHT0 = 0x4000, 293 GL_LIGHT1 = 0x4001, 294 GL_LIGHT2 = 0x4002, 295 GL_LIGHT3 = 0x4003, 296 GL_LIGHT4 = 0x4004, 297 GL_LIGHT5 = 0x4005, 298 GL_LIGHT6 = 0x4006, 299 GL_LIGHT7 = 0x4007, 300 GL_SPOT_EXPONENT = 0x1205, 301 GL_SPOT_CUTOFF = 0x1206, 302 GL_CONSTANT_ATTENUATION = 0x1207, 303 GL_LINEAR_ATTENUATION = 0x1208, 304 GL_QUADRATIC_ATTENUATION = 0x1209, 305 GL_AMBIENT = 0x1200, 306 GL_DIFFUSE = 0x1201, 307 GL_SPECULAR = 0x1202, 308 GL_SHININESS = 0x1601, 309 GL_EMISSION = 0x1600, 310 GL_POSITION = 0x1203, 311 GL_SPOT_DIRECTION = 0x1204, 312 GL_AMBIENT_AND_DIFFUSE = 0x1602, 313 GL_COLOR_INDEXES = 0x1603, 314 GL_LIGHT_MODEL_TWO_SIDE = 0x0B52, 315 GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51, 316 GL_LIGHT_MODEL_AMBIENT = 0x0B53, 317 GL_FRONT_AND_BACK = 0x0408, 318 GL_SHADE_MODEL = 0x0B54, 319 GL_FLAT = 0x1D00, 320 GL_SMOOTH = 0x1D01, 321 GL_COLOR_MATERIAL = 0x0B57, 322 GL_COLOR_MATERIAL_FACE = 0x0B55, 323 GL_COLOR_MATERIAL_PARAMETER = 0x0B56, 324 GL_NORMALIZE = 0x0BA1, 325 326 /* User clipping planes */ 327 GL_CLIP_PLANE0 = 0x3000, 328 GL_CLIP_PLANE1 = 0x3001, 329 GL_CLIP_PLANE2 = 0x3002, 330 GL_CLIP_PLANE3 = 0x3003, 331 GL_CLIP_PLANE4 = 0x3004, 332 GL_CLIP_PLANE5 = 0x3005, 333 334 /* Accumulation buffer */ 335 GL_ACCUM_RED_BITS = 0x0D58, 336 GL_ACCUM_GREEN_BITS = 0x0D59, 337 GL_ACCUM_BLUE_BITS = 0x0D5A, 338 GL_ACCUM_ALPHA_BITS = 0x0D5B, 339 GL_ACCUM_CLEAR_VALUE = 0x0B80, 340 GL_ACCUM = 0x0100, 341 GL_ADD = 0x0104, 342 GL_LOAD = 0x0101, 343 GL_MULT = 0x0103, 344 GL_RETURN = 0x0102, 345 346 /* Alpha testing */ 347 GL_ALPHA_TEST = 0x0BC0, 348 GL_ALPHA_TEST_REF = 0x0BC2, 349 GL_ALPHA_TEST_FUNC = 0x0BC1, 350 351 /* Blending */ 352 GL_BLEND = 0x0BE2, 353 GL_BLEND_SRC = 0x0BE1, 354 GL_BLEND_DST = 0x0BE0, 355 GL_ZERO = 0, 356 GL_ONE = 1, 357 GL_SRC_COLOR = 0x0300, 358 GL_ONE_MINUS_SRC_COLOR = 0x0301, 359 GL_DST_COLOR = 0x0306, 360 GL_ONE_MINUS_DST_COLOR = 0x0307, 361 GL_SRC_ALPHA = 0x0302, 362 GL_ONE_MINUS_SRC_ALPHA = 0x0303, 363 GL_DST_ALPHA = 0x0304, 364 GL_ONE_MINUS_DST_ALPHA = 0x0305, 365 GL_SRC_ALPHA_SATURATE = 0x0308, 366 GL_CONSTANT_COLOR = 0x8001, 367 GL_ONE_MINUS_CONSTANT_COLOR = 0x8002, 368 GL_CONSTANT_ALPHA = 0x8003, 369 GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004, 370 371 /* Render Mode */ 372 GL_FEEDBACK = 0x1C01, 373 GL_RENDER = 0x1C00, 374 GL_SELECT = 0x1C02, 375 376 /* Feedback */ 377 GL_2D = 0x0600, 378 GL_3D = 0x0601, 379 GL_3D_COLOR = 0x0602, 380 GL_3D_COLOR_TEXTURE = 0x0603, 381 GL_4D_COLOR_TEXTURE = 0x0604, 382 GL_POINT_TOKEN = 0x0701, 383 GL_LINE_TOKEN = 0x0702, 384 GL_LINE_RESET_TOKEN = 0x0707, 385 GL_POLYGON_TOKEN = 0x0703, 386 GL_BITMAP_TOKEN = 0x0704, 387 GL_DRAW_PIXEL_TOKEN = 0x0705, 388 GL_COPY_PIXEL_TOKEN = 0x0706, 389 GL_PASS_THROUGH_TOKEN = 0x0700, 390 GL_FEEDBACK_BUFFER_POINTER = 0x0DF0, 391 GL_FEEDBACK_BUFFER_SIZE = 0x0DF1, 392 GL_FEEDBACK_BUFFER_TYPE = 0x0DF2, 393 394 /* Selection */ 395 GL_SELECTION_BUFFER_POINTER = 0x0DF3, 396 GL_SELECTION_BUFFER_SIZE = 0x0DF4, 397 398 /* Fog */ 399 GL_FOG = 0x0B60, 400 GL_FOG_MODE = 0x0B65, 401 GL_FOG_DENSITY = 0x0B62, 402 GL_FOG_COLOR = 0x0B66, 403 GL_FOG_INDEX = 0x0B61, 404 GL_FOG_START = 0x0B63, 405 GL_FOG_END = 0x0B64, 406 GL_LINEAR = 0x2601, 407 GL_EXP = 0x0800, 408 GL_EXP2 = 0x0801, 409 410 /* Logic Ops */ 411 GL_LOGIC_OP = 0x0BF1, 412 GL_INDEX_LOGIC_OP = 0x0BF1, 413 GL_COLOR_LOGIC_OP = 0x0BF2, 414 GL_LOGIC_OP_MODE = 0x0BF0, 415 GL_CLEAR = 0x1500, 416 GL_SET = 0x150F, 417 GL_COPY = 0x1503, 418 GL_COPY_INVERTED = 0x150C, 419 GL_NOOP = 0x1505, 420 GL_INVERT = 0x150A, 421 GL_AND = 0x1501, 422 GL_NAND = 0x150E, 423 GL_OR = 0x1507, 424 GL_NOR = 0x1508, 425 GL_XOR = 0x1506, 426 GL_EQUIV = 0x1509, 427 GL_AND_REVERSE = 0x1502, 428 GL_AND_INVERTED = 0x1504, 429 GL_OR_REVERSE = 0x150B, 430 GL_OR_INVERTED = 0x150D, 431 432 /* Stencil */ 433 GL_STENCIL_TEST = 0x0B90, 434 GL_STENCIL_WRITEMASK = 0x0B98, 435 GL_STENCIL_BITS = 0x0D57, 436 GL_STENCIL_FUNC = 0x0B92, 437 GL_STENCIL_VALUE_MASK = 0x0B93, 438 GL_STENCIL_REF = 0x0B97, 439 GL_STENCIL_FAIL = 0x0B94, 440 GL_STENCIL_PASS_DEPTH_PASS = 0x0B96, 441 GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95, 442 GL_STENCIL_CLEAR_VALUE = 0x0B91, 443 GL_STENCIL_INDEX = 0x1901, 444 GL_KEEP = 0x1E00, 445 GL_REPLACE = 0x1E01, 446 GL_INCR = 0x1E02, 447 GL_DECR = 0x1E03, 448 449 /* Buffers, Pixel Drawing/Reading */ 450 GL_NONE = 0, 451 GL_LEFT = 0x0406, 452 GL_RIGHT = 0x0407, 453 /*GL_FRONT = 0x0404, */ 454 /*GL_BACK = 0x0405, */ 455 /*GL_FRONT_AND_BACK = 0x0408, */ 456 GL_FRONT_LEFT = 0x0400, 457 GL_FRONT_RIGHT = 0x0401, 458 GL_BACK_LEFT = 0x0402, 459 GL_BACK_RIGHT = 0x0403, 460 GL_AUX0 = 0x0409, 461 GL_AUX1 = 0x040A, 462 GL_AUX2 = 0x040B, 463 GL_AUX3 = 0x040C, 464 GL_COLOR_INDEX = 0x1900, 465 GL_RED = 0x1903, 466 GL_GREEN = 0x1904, 467 GL_BLUE = 0x1905, 468 GL_ALPHA = 0x1906, 469 GL_LUMINANCE = 0x1909, 470 GL_LUMINANCE_ALPHA = 0x190A, 471 GL_ALPHA_BITS = 0x0D55, 472 GL_RED_BITS = 0x0D52, 473 GL_GREEN_BITS = 0x0D53, 474 GL_BLUE_BITS = 0x0D54, 475 GL_INDEX_BITS = 0x0D51, 476 GL_SUBPIXEL_BITS = 0x0D50, 477 GL_AUX_BUFFERS = 0x0C00, 478 GL_READ_BUFFER = 0x0C02, 479 GL_DRAW_BUFFER = 0x0C01, 480 GL_DOUBLEBUFFER = 0x0C32, 481 GL_STEREO = 0x0C33, 482 GL_BITMAP = 0x1A00, 483 GL_COLOR = 0x1800, 484 GL_DEPTH = 0x1801, 485 GL_STENCIL = 0x1802, 486 GL_DITHER = 0x0BD0, 487 GL_RGB = 0x1907, 488 GL_RGBA = 0x1908, 489 490 /* Implementation limits */ 491 GL_MAX_LIST_NESTING = 0x0B31, 492 GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35, 493 GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36, 494 GL_MAX_NAME_STACK_DEPTH = 0x0D37, 495 GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38, 496 GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39, 497 GL_MAX_EVAL_ORDER = 0x0D30, 498 GL_MAX_LIGHTS = 0x0D31, 499 GL_MAX_CLIP_PLANES = 0x0D32, 500 GL_MAX_TEXTURE_SIZE = 0x0D33, 501 GL_MAX_PIXEL_MAP_TABLE = 0x0D34, 502 GL_MAX_VIEWPORT_DIMS = 0x0D3A, 503 GL_MAX_CLIENT_ATTRIB_STACK_DEPTH= 0x0D3B, 504 505 /* Gets */ 506 GL_ATTRIB_STACK_DEPTH = 0x0BB0, 507 GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1, 508 GL_COLOR_CLEAR_VALUE = 0x0C22, 509 GL_COLOR_WRITEMASK = 0x0C23, 510 GL_CURRENT_INDEX = 0x0B01, 511 GL_CURRENT_COLOR = 0x0B00, 512 GL_CURRENT_NORMAL = 0x0B02, 513 GL_CURRENT_RASTER_COLOR = 0x0B04, 514 GL_CURRENT_RASTER_DISTANCE = 0x0B09, 515 GL_CURRENT_RASTER_INDEX = 0x0B05, 516 GL_CURRENT_RASTER_POSITION = 0x0B07, 517 GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06, 518 GL_CURRENT_RASTER_POSITION_VALID = 0x0B08, 519 GL_CURRENT_TEXTURE_COORDS = 0x0B03, 520 GL_INDEX_CLEAR_VALUE = 0x0C20, 521 GL_INDEX_MODE = 0x0C30, 522 GL_INDEX_WRITEMASK = 0x0C21, 523 GL_MODELVIEW_MATRIX = 0x0BA6, 524 GL_MODELVIEW_STACK_DEPTH = 0x0BA3, 525 GL_NAME_STACK_DEPTH = 0x0D70, 526 GL_PROJECTION_MATRIX = 0x0BA7, 527 GL_PROJECTION_STACK_DEPTH = 0x0BA4, 528 GL_RENDER_MODE = 0x0C40, 529 GL_RGBA_MODE = 0x0C31, 530 GL_TEXTURE_MATRIX = 0x0BA8, 531 GL_TEXTURE_STACK_DEPTH = 0x0BA5, 532 GL_VIEWPORT = 0x0BA2, 533 534 /* Evaluators */ 535 GL_AUTO_NORMAL = 0x0D80, 536 GL_MAP1_COLOR_4 = 0x0D90, 537 GL_MAP1_GRID_DOMAIN = 0x0DD0, 538 GL_MAP1_GRID_SEGMENTS = 0x0DD1, 539 GL_MAP1_INDEX = 0x0D91, 540 GL_MAP1_NORMAL = 0x0D92, 541 GL_MAP1_TEXTURE_COORD_1 = 0x0D93, 542 GL_MAP1_TEXTURE_COORD_2 = 0x0D94, 543 GL_MAP1_TEXTURE_COORD_3 = 0x0D95, 544 GL_MAP1_TEXTURE_COORD_4 = 0x0D96, 545 GL_MAP1_VERTEX_3 = 0x0D97, 546 GL_MAP1_VERTEX_4 = 0x0D98, 547 GL_MAP2_COLOR_4 = 0x0DB0, 548 GL_MAP2_GRID_DOMAIN = 0x0DD2, 549 GL_MAP2_GRID_SEGMENTS = 0x0DD3, 550 GL_MAP2_INDEX = 0x0DB1, 551 GL_MAP2_NORMAL = 0x0DB2, 552 GL_MAP2_TEXTURE_COORD_1 = 0x0DB3, 553 GL_MAP2_TEXTURE_COORD_2 = 0x0DB4, 554 GL_MAP2_TEXTURE_COORD_3 = 0x0DB5, 555 GL_MAP2_TEXTURE_COORD_4 = 0x0DB6, 556 GL_MAP2_VERTEX_3 = 0x0DB7, 557 GL_MAP2_VERTEX_4 = 0x0DB8, 558 GL_COEFF = 0x0A00, 559 GL_DOMAIN = 0x0A02, 560 GL_ORDER = 0x0A01, 561 562 /* Hints */ 563 GL_FOG_HINT = 0x0C54, 564 GL_LINE_SMOOTH_HINT = 0x0C52, 565 GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50, 566 GL_POINT_SMOOTH_HINT = 0x0C51, 567 GL_POLYGON_SMOOTH_HINT = 0x0C53, 568 GL_DONT_CARE = 0x1100, 569 GL_FASTEST = 0x1101, 570 GL_NICEST = 0x1102, 571 572 /* Scissor box */ 573 GL_SCISSOR_TEST = 0x0C11, 574 GL_SCISSOR_BOX = 0x0C10, 575 576 /* Pixel Mode / Transfer */ 577 GL_MAP_COLOR = 0x0D10, 578 GL_MAP_STENCIL = 0x0D11, 579 GL_INDEX_SHIFT = 0x0D12, 580 GL_INDEX_OFFSET = 0x0D13, 581 GL_RED_SCALE = 0x0D14, 582 GL_RED_BIAS = 0x0D15, 583 GL_GREEN_SCALE = 0x0D18, 584 GL_GREEN_BIAS = 0x0D19, 585 GL_BLUE_SCALE = 0x0D1A, 586 GL_BLUE_BIAS = 0x0D1B, 587 GL_ALPHA_SCALE = 0x0D1C, 588 GL_ALPHA_BIAS = 0x0D1D, 589 GL_DEPTH_SCALE = 0x0D1E, 590 GL_DEPTH_BIAS = 0x0D1F, 591 GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1, 592 GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0, 593 GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2, 594 GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3, 595 GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4, 596 GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5, 597 GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6, 598 GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7, 599 GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8, 600 GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9, 601 GL_PIXEL_MAP_S_TO_S = 0x0C71, 602 GL_PIXEL_MAP_I_TO_I = 0x0C70, 603 GL_PIXEL_MAP_I_TO_R = 0x0C72, 604 GL_PIXEL_MAP_I_TO_G = 0x0C73, 605 GL_PIXEL_MAP_I_TO_B = 0x0C74, 606 GL_PIXEL_MAP_I_TO_A = 0x0C75, 607 GL_PIXEL_MAP_R_TO_R = 0x0C76, 608 GL_PIXEL_MAP_G_TO_G = 0x0C77, 609 GL_PIXEL_MAP_B_TO_B = 0x0C78, 610 GL_PIXEL_MAP_A_TO_A = 0x0C79, 611 GL_PACK_ALIGNMENT = 0x0D05, 612 GL_PACK_LSB_FIRST = 0x0D01, 613 GL_PACK_ROW_LENGTH = 0x0D02, 614 GL_PACK_SKIP_PIXELS = 0x0D04, 615 GL_PACK_SKIP_ROWS = 0x0D03, 616 GL_PACK_SWAP_BYTES = 0x0D00, 617 GL_UNPACK_ALIGNMENT = 0x0CF5, 618 GL_UNPACK_LSB_FIRST = 0x0CF1, 619 GL_UNPACK_ROW_LENGTH = 0x0CF2, 620 GL_UNPACK_SKIP_PIXELS = 0x0CF4, 621 GL_UNPACK_SKIP_ROWS = 0x0CF3, 622 GL_UNPACK_SWAP_BYTES = 0x0CF0, 623 GL_ZOOM_X = 0x0D16, 624 GL_ZOOM_Y = 0x0D17, 625 626 /* Texture mapping */ 627 GL_TEXTURE_ENV = 0x2300, 628 GL_TEXTURE_ENV_MODE = 0x2200, 629 GL_TEXTURE_1D = 0x0DE0, 630 GL_TEXTURE_2D = 0x0DE1, 631 GL_TEXTURE_WRAP_S = 0x2802, 632 GL_TEXTURE_WRAP_T = 0x2803, 633 GL_TEXTURE_MAG_FILTER = 0x2800, 634 GL_TEXTURE_MIN_FILTER = 0x2801, 635 GL_TEXTURE_ENV_COLOR = 0x2201, 636 GL_TEXTURE_GEN_S = 0x0C60, 637 GL_TEXTURE_GEN_T = 0x0C61, 638 GL_TEXTURE_GEN_MODE = 0x2500, 639 GL_TEXTURE_BORDER_COLOR = 0x1004, 640 GL_TEXTURE_WIDTH = 0x1000, 641 GL_TEXTURE_HEIGHT = 0x1001, 642 GL_TEXTURE_BORDER = 0x1005, 643 GL_TEXTURE_COMPONENTS = 0x1003, 644 GL_TEXTURE_RED_SIZE = 0x805C, 645 GL_TEXTURE_GREEN_SIZE = 0x805D, 646 GL_TEXTURE_BLUE_SIZE = 0x805E, 647 GL_TEXTURE_ALPHA_SIZE = 0x805F, 648 GL_TEXTURE_LUMINANCE_SIZE = 0x8060, 649 GL_TEXTURE_INTENSITY_SIZE = 0x8061, 650 GL_NEAREST_MIPMAP_NEAREST = 0x2700, 651 GL_NEAREST_MIPMAP_LINEAR = 0x2702, 652 GL_LINEAR_MIPMAP_NEAREST = 0x2701, 653 GL_LINEAR_MIPMAP_LINEAR = 0x2703, 654 GL_OBJECT_LINEAR = 0x2401, 655 GL_OBJECT_PLANE = 0x2501, 656 GL_EYE_LINEAR = 0x2400, 657 GL_EYE_PLANE = 0x2502, 658 GL_SPHERE_MAP = 0x2402, 659 GL_DECAL = 0x2101, 660 GL_MODULATE = 0x2100, 661 GL_NEAREST = 0x2600, 662 GL_REPEAT = 0x2901, 663 GL_CLAMP = 0x2900, 664 GL_S = 0x2000, 665 GL_T = 0x2001, 666 GL_R = 0x2002, 667 GL_Q = 0x2003, 668 GL_TEXTURE_GEN_R = 0x0C62, 669 GL_TEXTURE_GEN_Q = 0x0C63, 670 671 /* GL 1.1 texturing */ 672 GL_PROXY_TEXTURE_1D = 0x8063, 673 GL_PROXY_TEXTURE_2D = 0x8064, 674 GL_TEXTURE_PRIORITY = 0x8066, 675 GL_TEXTURE_RESIDENT = 0x8067, 676 GL_TEXTURE_BINDING_1D = 0x8068, 677 GL_TEXTURE_BINDING_2D = 0x8069, 678 GL_TEXTURE_INTERNAL_FORMAT = 0x1003, 679 680 /* GL 1.2 texturing */ 681 GL_PACK_SKIP_IMAGES = 0x806B, 682 GL_PACK_IMAGE_HEIGHT = 0x806C, 683 GL_UNPACK_SKIP_IMAGES = 0x806D, 684 GL_UNPACK_IMAGE_HEIGHT = 0x806E, 685 GL_TEXTURE_3D = 0x806F, 686 GL_PROXY_TEXTURE_3D = 0x8070, 687 GL_TEXTURE_DEPTH = 0x8071, 688 GL_TEXTURE_WRAP_R = 0x8072, 689 GL_MAX_3D_TEXTURE_SIZE = 0x8073, 690 GL_TEXTURE_BINDING_3D = 0x806A, 691 692 /* Internal texture formats (GL 1.1) */ 693 GL_ALPHA4 = 0x803B, 694 GL_ALPHA8 = 0x803C, 695 GL_ALPHA12 = 0x803D, 696 GL_ALPHA16 = 0x803E, 697 GL_LUMINANCE4 = 0x803F, 698 GL_LUMINANCE8 = 0x8040, 699 GL_LUMINANCE12 = 0x8041, 700 GL_LUMINANCE16 = 0x8042, 701 GL_LUMINANCE4_ALPHA4 = 0x8043, 702 GL_LUMINANCE6_ALPHA2 = 0x8044, 703 GL_LUMINANCE8_ALPHA8 = 0x8045, 704 GL_LUMINANCE12_ALPHA4 = 0x8046, 705 GL_LUMINANCE12_ALPHA12 = 0x8047, 706 GL_LUMINANCE16_ALPHA16 = 0x8048, 707 GL_INTENSITY = 0x8049, 708 GL_INTENSITY4 = 0x804A, 709 GL_INTENSITY8 = 0x804B, 710 GL_INTENSITY12 = 0x804C, 711 GL_INTENSITY16 = 0x804D, 712 GL_R3_G3_B2 = 0x2A10, 713 GL_RGB4 = 0x804F, 714 GL_RGB5 = 0x8050, 715 GL_RGB8 = 0x8051, 716 GL_RGB10 = 0x8052, 717 GL_RGB12 = 0x8053, 718 GL_RGB16 = 0x8054, 719 GL_RGBA2 = 0x8055, 720 GL_RGBA4 = 0x8056, 721 GL_RGB5_A1 = 0x8057, 722 GL_RGBA8 = 0x8058, 723 GL_RGB10_A2 = 0x8059, 724 GL_RGBA12 = 0x805A, 725 GL_RGBA16 = 0x805B, 726 727 /* Utility */ 728 GL_VENDOR = 0x1F00, 729 GL_RENDERER = 0x1F01, 730 GL_VERSION = 0x1F02, 731 GL_EXTENSIONS = 0x1F03, 732 733 /* Errors */ 734 GL_INVALID_VALUE = 0x0501, 735 GL_INVALID_ENUM = 0x0500, 736 GL_INVALID_OPERATION = 0x0502, 737 GL_STACK_OVERFLOW = 0x0503, 738 GL_STACK_UNDERFLOW = 0x0504, 739 GL_OUT_OF_MEMORY = 0x0505, 740 741 /* 742 * Extensions 743 */ 744 745 /* GL_EXT_blend_minmax and GL_EXT_blend_color */ 746 GL_CONSTANT_COLOR_EXT = 0x8001, 747 GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002, 748 GL_CONSTANT_ALPHA_EXT = 0x8003, 749 GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004, 750 GL_BLEND_EQUATION_EXT = 0x8009, 751 GL_MIN_EXT = 0x8007, 752 GL_MAX_EXT = 0x8008, 753 GL_FUNC_ADD_EXT = 0x8006, 754 GL_FUNC_SUBTRACT_EXT = 0x800A, 755 GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B, 756 GL_BLEND_COLOR_EXT = 0x8005, 757 758 /* GL_EXT_polygon_offset */ 759 GL_POLYGON_OFFSET_EXT = 0x8037, 760 GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038, 761 GL_POLYGON_OFFSET_BIAS_EXT = 0x8039, 762 763 /* GL_EXT_vertex_array */ 764 GL_VERTEX_ARRAY_EXT = 0x8074, 765 GL_NORMAL_ARRAY_EXT = 0x8075, 766 GL_COLOR_ARRAY_EXT = 0x8076, 767 GL_INDEX_ARRAY_EXT = 0x8077, 768 GL_TEXTURE_COORD_ARRAY_EXT = 0x8078, 769 GL_EDGE_FLAG_ARRAY_EXT = 0x8079, 770 GL_VERTEX_ARRAY_SIZE_EXT = 0x807A, 771 GL_VERTEX_ARRAY_TYPE_EXT = 0x807B, 772 GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C, 773 GL_VERTEX_ARRAY_COUNT_EXT = 0x807D, 774 GL_NORMAL_ARRAY_TYPE_EXT = 0x807E, 775 GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F, 776 GL_NORMAL_ARRAY_COUNT_EXT = 0x8080, 777 GL_COLOR_ARRAY_SIZE_EXT = 0x8081, 778 GL_COLOR_ARRAY_TYPE_EXT = 0x8082, 779 GL_COLOR_ARRAY_STRIDE_EXT = 0x8083, 780 GL_COLOR_ARRAY_COUNT_EXT = 0x8084, 781 GL_INDEX_ARRAY_TYPE_EXT = 0x8085, 782 GL_INDEX_ARRAY_STRIDE_EXT = 0x8086, 783 GL_INDEX_ARRAY_COUNT_EXT = 0x8087, 784 GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088, 785 GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089, 786 GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A, 787 GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B, 788 GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C, 789 GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D, 790 GL_VERTEX_ARRAY_POINTER_EXT = 0x808E, 791 GL_NORMAL_ARRAY_POINTER_EXT = 0x808F, 792 GL_COLOR_ARRAY_POINTER_EXT = 0x8090, 793 GL_INDEX_ARRAY_POINTER_EXT = 0x8091, 794 GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092, 795 GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093, 796 797 /* GL_EXT_texture_object */ 798 GL_TEXTURE_PRIORITY_EXT = 0x8066, 799 GL_TEXTURE_RESIDENT_EXT = 0x8067, 800 GL_TEXTURE_1D_BINDING_EXT = 0x8068, 801 GL_TEXTURE_2D_BINDING_EXT = 0x8069, 802 803 /* GL_EXT_texture3D */ 804 GL_PACK_SKIP_IMAGES_EXT = 0x806B, 805 GL_PACK_IMAGE_HEIGHT_EXT = 0x806C, 806 GL_UNPACK_SKIP_IMAGES_EXT = 0x806D, 807 GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E, 808 GL_TEXTURE_3D_EXT = 0x806F, 809 GL_PROXY_TEXTURE_3D_EXT = 0x8070, 810 GL_TEXTURE_DEPTH_EXT = 0x8071, 811 GL_TEXTURE_WRAP_R_EXT = 0x8072, 812 GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073, 813 GL_TEXTURE_3D_BINDING_EXT = 0x806A, 814 815 /* GL_EXT_paletted_texture */ 816 GL_TABLE_TOO_LARGE_EXT = 0x8031, 817 GL_COLOR_TABLE_FORMAT_EXT = 0x80D8, 818 GL_COLOR_TABLE_WIDTH_EXT = 0x80D9, 819 GL_COLOR_TABLE_RED_SIZE_EXT = 0x80DA, 820 GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80DB, 821 GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80DC, 822 GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80DD, 823 GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80DE, 824 GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80DF, 825 GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED, 826 GL_COLOR_INDEX1_EXT = 0x80E2, 827 GL_COLOR_INDEX2_EXT = 0x80E3, 828 GL_COLOR_INDEX4_EXT = 0x80E4, 829 GL_COLOR_INDEX8_EXT = 0x80E5, 830 GL_COLOR_INDEX12_EXT = 0x80E6, 831 GL_COLOR_INDEX16_EXT = 0x80E7, 832 833 /* GL_EXT_shared_texture_palette */ 834 GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB, 835 836 /* GL_EXT_point_parameters */ 837 GL_POINT_SIZE_MIN_EXT = 0x8126, 838 GL_POINT_SIZE_MAX_EXT = 0x8127, 839 GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128, 840 GL_DISTANCE_ATTENUATION_EXT = 0x8129, 841 842 /* GL_EXT_rescale_normal */ 843 GL_RESCALE_NORMAL_EXT = 0x803A, 844 845 /* GL_EXT_abgr */ 846 GL_ABGR_EXT = 0x8000, 847 848 /* GL_EXT_stencil_wrap */ 849 GL_INCR_WRAP_EXT = 0x8507, 850 GL_DECR_WRAP_EXT = 0x8508, 851 852 /* GL_SGIS_texture_edge_clamp */ 853 GL_CLAMP_TO_EDGE_SGIS = 0x812F, 854 855 /* GL_INGR_blend_func_separate */ 856 GL_BLEND_DST_RGB_INGR = 0x80C8, 857 GL_BLEND_SRC_RGB_INGR = 0x80C9, 858 GL_BLEND_DST_ALPHA_INGR = 0x80CA, 859 GL_BLEND_SRC_ALPHA_INGR = 0x80CB, 860 861 /* OpenGL 1.2 */ 862 GL_RESCALE_NORMAL = 0x803A, 863 GL_CLAMP_TO_EDGE = 0x812F, 864 GL_MAX_ELEMENTS_VERTICES = 0x80E8, 865 GL_MAX_ELEMENTS_INDICES = 0x80E9, 866 GL_BGR = 0x80E0, 867 GL_BGRA = 0x80E1, 868 GL_UNSIGNED_BYTE_3_3_2 = 0x8032, 869 GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362, 870 GL_UNSIGNED_SHORT_5_6_5 = 0x8363, 871 GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364, 872 GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033, 873 GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365, 874 GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034, 875 GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366, 876 GL_UNSIGNED_INT_8_8_8_8 = 0x8035, 877 GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367, 878 GL_UNSIGNED_INT_10_10_10_2 = 0x8036, 879 GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368, 880 GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8, 881 GL_SINGLE_COLOR = 0x81F9, 882 GL_SEPARATE_SPECULAR_COLOR = 0x81FA, 883 GL_TEXTURE_MIN_LOD = 0x813A, 884 GL_TEXTURE_MAX_LOD = 0x813B, 885 GL_TEXTURE_BASE_LEVEL = 0x813C, 886 GL_TEXTURE_MAX_LEVEL = 0x813D, 887 888 /* GL_ARB_multitexture */ 889 GL_TEXTURE0_ARB = 0x84C0, 890 GL_TEXTURE1_ARB = 0x84C1, 891 GL_TEXTURE2_ARB = 0x84C2, 892 GL_TEXTURE3_ARB = 0x84C3, 893 GL_TEXTURE4_ARB = 0x84C4, 894 GL_TEXTURE5_ARB = 0x84C5, 895 GL_TEXTURE6_ARB = 0x84C6, 896 GL_TEXTURE7_ARB = 0x84C7, 897 GL_TEXTURE8_ARB = 0x84C8, 898 GL_TEXTURE9_ARB = 0x84C9, 899 GL_TEXTURE10_ARB = 0x84CA, 900 GL_TEXTURE11_ARB = 0x84CB, 901 GL_TEXTURE12_ARB = 0x84CC, 902 GL_TEXTURE13_ARB = 0x84CD, 903 GL_TEXTURE14_ARB = 0x84CE, 904 GL_TEXTURE15_ARB = 0x84CF, 905 GL_TEXTURE16_ARB = 0x84D0, 906 GL_TEXTURE17_ARB = 0x84D1, 907 GL_TEXTURE18_ARB = 0x84D2, 908 GL_TEXTURE19_ARB = 0x84D3, 909 GL_TEXTURE20_ARB = 0x84D4, 910 GL_TEXTURE21_ARB = 0x84D5, 911 GL_TEXTURE22_ARB = 0x84D6, 912 GL_TEXTURE23_ARB = 0x84D7, 913 GL_TEXTURE24_ARB = 0x84D8, 914 GL_TEXTURE25_ARB = 0x84D9, 915 GL_TEXTURE26_ARB = 0x84DA, 916 GL_TEXTURE27_ARB = 0x84DB, 917 GL_TEXTURE28_ARB = 0x84DC, 918 GL_TEXTURE29_ARB = 0x84DD, 919 GL_TEXTURE30_ARB = 0x84DE, 920 GL_TEXTURE31_ARB = 0x84DF, 921 GL_ACTIVE_TEXTURE_ARB = 0x84E0, 922 GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1, 923 GL_MAX_TEXTURE_UNITS_ARB = 0x84E2, 924 925 /* 926 * OpenGL 1.2 imaging subset (NOT IMPLEMENTED BY MESA) 927 */ 928 /* GL_EXT_color_table */ 929 GL_COLOR_TABLE = 0x80D0, 930 GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1, 931 GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2, 932 GL_PROXY_COLOR_TABLE = 0x80D3, 933 GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4, 934 GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5, 935 GL_COLOR_TABLE_SCALE = 0x80D6, 936 GL_COLOR_TABLE_BIAS = 0x80D7, 937 GL_COLOR_TABLE_FORMAT = 0x80D8, 938 GL_COLOR_TABLE_WIDTH = 0x80D9, 939 GL_COLOR_TABLE_RED_SIZE = 0x80DA, 940 GL_COLOR_TABLE_GREEN_SIZE = 0x80DB, 941 GL_COLOR_TABLE_BLUE_SIZE = 0x80DC, 942 GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD, 943 GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE, 944 GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF, 945 /* GL_EXT_convolution and GL_HP_convolution_border_modes */ 946 GL_CONVOLUTION_1D = 0x8010, 947 GL_CONVOLUTION_2D = 0x8011, 948 GL_SEPARABLE_2D = 0x8012, 949 GL_CONVOLUTION_BORDER_MODE = 0x8013, 950 GL_CONVOLUTION_FILTER_SCALE = 0x8014, 951 GL_CONVOLUTION_FILTER_BIAS = 0x8015, 952 GL_REDUCE = 0x8016, 953 GL_CONVOLUTION_FORMAT = 0x8017, 954 GL_CONVOLUTION_WIDTH = 0x8018, 955 GL_CONVOLUTION_HEIGHT = 0x8019, 956 GL_MAX_CONVOLUTION_WIDTH = 0x801A, 957 GL_MAX_CONVOLUTION_HEIGHT = 0x801B, 958 GL_POST_CONVOLUTION_RED_SCALE = 0x801C, 959 GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D, 960 GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E, 961 GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F, 962 GL_POST_CONVOLUTION_RED_BIAS = 0x8020, 963 GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021, 964 GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022, 965 GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023, 966 GL_CONSTANT_BORDER = 0x8151, 967 GL_REPLICATE_BORDER = 0x8153, 968 GL_CONVOLUTION_BORDER_COLOR = 0x8154, 969 /* GL_SGI_color_matrix */ 970 GL_COLOR_MATRIX = 0x80B1, 971 GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2, 972 GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3, 973 GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4, 974 GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5, 975 GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6, 976 GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7, 977 GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8, 978 GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9, 979 GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA, 980 GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB, 981 /* GL_EXT_histogram */ 982 GL_HISTOGRAM = 0x8024, 983 GL_PROXY_HISTOGRAM = 0x8025, 984 GL_HISTOGRAM_WIDTH = 0x8026, 985 GL_HISTOGRAM_FORMAT = 0x8027, 986 GL_HISTOGRAM_RED_SIZE = 0x8028, 987 GL_HISTOGRAM_GREEN_SIZE = 0x8029, 988 GL_HISTOGRAM_BLUE_SIZE = 0x802A, 989 GL_HISTOGRAM_ALPHA_SIZE = 0x802B, 990 GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C, 991 GL_HISTOGRAM_SINK = 0x802D, 992 GL_MINMAX = 0x802E, 993 GL_MINMAX_FORMAT = 0x802F, 994 GL_MINMAX_SINK = 0x8030, 995 GL_TABLE_TOO_LARGE = 0x8031, 996 /* GL_EXT_blend_color, GL_EXT_blend_minmax */ 997 GL_BLEND_EQUATION = 0x8009, 998 GL_MIN = 0x8007, 999 GL_MAX = 0x8008, 1000 GL_FUNC_ADD = 0x8006, 1001 GL_FUNC_SUBTRACT = 0x800A, 1002 GL_FUNC_REVERSE_SUBTRACT = 0x800B, 1003 GL_BLEND_COLOR = 0x8005, 1004 1005 /* GL_NV_texgen_reflection (nVidia) */ 1006 GL_NORMAL_MAP_NV = 0x8511, 1007 GL_REFLECTION_MAP_NV = 0x8512, 1008 1009 /* GL_PGI_misc_hints */ 1010 GL_PREFER_DOUBLEBUFFER_HINT_PGI = 107000, 1011 GL_STRICT_DEPTHFUNC_HINT_PGI = 107030, 1012 GL_STRICT_LIGHTING_HINT_PGI = 107031, 1013 GL_STRICT_SCISSOR_HINT_PGI = 107032, 1014 GL_FULL_STIPPLE_HINT_PGI = 107033, 1015 GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = 107011, 1016 GL_NATIVE_GRAPHICS_END_HINT_PGI = 107012, 1017 GL_CONSERVE_MEMORY_HINT_PGI = 107005, 1018 GL_RECLAIM_MEMORY_HINT_PGI = 107006, 1019 GL_ALWAYS_FAST_HINT_PGI = 107020, 1020 GL_ALWAYS_SOFT_HINT_PGI = 107021, 1021 GL_ALLOW_DRAW_OBJ_HINT_PGI = 107022, 1022 GL_ALLOW_DRAW_WIN_HINT_PGI = 107023, 1023 GL_ALLOW_DRAW_FRG_HINT_PGI = 107024, 1024 GL_ALLOW_DRAW_SPN_HINT_PGI = 107024, 1025 GL_ALLOW_DRAW_MEM_HINT_PGI = 107025, 1026 GL_CLIP_NEAR_HINT_PGI = 107040, 1027 GL_CLIP_FAR_HINT_PGI = 107041, 1028 GL_WIDE_LINE_HINT_PGI = 107042, 1029 GL_BACK_NORMALS_HINT_PGI = 107043, 1030 GL_NATIVE_GRAPHICS_HANDLE_PGI = 107010, 1031 1032 /* GL_EXT_compiled_vertex_array */ 1033 GL_ARRAY_ELEMENT_LOCK_FIRST_SGI = 0x81A8, 1034 GL_ARRAY_ELEMENT_LOCK_COUNT_SGI = 0x81A9, 1035 1036 /* GL_EXT_clip_volume_hint */ 1037 GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0 1038 1039 1040/* When you add new enums, please make sure you update the strings 1041 * in enums.c as well... 1042 */ 1043 1044} 1045#ifdef CENTERLINE_CLPP 1046 /* CenterLine C++ workaround: */ 1047 gl_enum; 1048 typedef int GLenum; 1049#else 1050 /* all other compilers */ 1051 GLenum; 1052#endif 1053 1054 1055/* GL_NO_ERROR must be zero */ 1056#define GL_NO_ERROR 0 1057 1058 1059 1060enum { 1061 GL_CURRENT_BIT = 0x00000001, 1062 GL_POINT_BIT = 0x00000002, 1063 GL_LINE_BIT = 0x00000004, 1064 GL_POLYGON_BIT = 0x00000008, 1065 GL_POLYGON_STIPPLE_BIT = 0x00000010, 1066 GL_PIXEL_MODE_BIT = 0x00000020, 1067 GL_LIGHTING_BIT = 0x00000040, 1068 GL_FOG_BIT = 0x00000080, 1069 GL_DEPTH_BUFFER_BIT = 0x00000100, 1070 GL_ACCUM_BUFFER_BIT = 0x00000200, 1071 GL_STENCIL_BUFFER_BIT = 0x00000400, 1072 GL_VIEWPORT_BIT = 0x00000800, 1073 GL_TRANSFORM_BIT = 0x00001000, 1074 GL_ENABLE_BIT = 0x00002000, 1075 GL_COLOR_BUFFER_BIT = 0x00004000, 1076 GL_HINT_BIT = 0x00008000, 1077 GL_EVAL_BIT = 0x00010000, 1078 GL_LIST_BIT = 0x00020000, 1079 GL_TEXTURE_BIT = 0x00040000, 1080 GL_SCISSOR_BIT = 0x00080000, 1081 GL_ALL_ATTRIB_BITS = 0x000FFFFF 1082}; 1083 1084 1085enum { 1086 GL_CLIENT_PIXEL_STORE_BIT = 0x00000001, 1087 GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002 1088}; 1089#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF 1090 1091 1092typedef unsigned int GLbitfield; 1093 1094 1095#ifdef CENTERLINE_CLPP 1096#define signed 1097#endif 1098 1099 1100/* 1101 * 1102 * Data types (may be architecture dependent in some cases) 1103 * 1104 */ 1105 1106/* C type GL type storage */ 1107/*-------------------------------------------------------------------------*/ 1108typedef void GLvoid; 1109typedef unsigned char GLboolean; 1110typedef signed char GLbyte; /* 1-byte signed */ 1111typedef short GLshort; /* 2-byte signed */ 1112typedef int GLint; /* 4-byte signed */ 1113typedef unsigned char GLubyte; /* 1-byte unsigned */ 1114typedef unsigned short GLushort; /* 2-byte unsigned */ 1115typedef unsigned int GLuint; /* 4-byte unsigned */ 1116typedef int GLsizei; /* 4-byte signed */ 1117typedef float GLfloat; /* single precision float */ 1118typedef float GLclampf; /* single precision float in [0,1] */ 1119typedef double GLdouble; /* double precision float */ 1120typedef double GLclampd; /* double precision float in [0,1] */ 1121 1122 1123 1124#if defined(__BEOS__) || defined(__QUICKDRAW__) 1125#pragma export on 1126#endif 1127 1128 1129/* 1130 * Miscellaneous 1131 */ 1132 1133GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); 1134 1135GLAPI void GLAPIENTRY glClearColor( GLclampf red, 1136 GLclampf green, 1137 GLclampf blue, 1138 GLclampf alpha ); 1139 1140GLAPI void GLAPIENTRY glClear( GLbitfield mask ); 1141 1142GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); 1143 1144GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, 1145 GLboolean blue, GLboolean alpha ); 1146 1147GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); 1148 1149GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); 1150 1151GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); 1152 1153GLAPI void GLAPIENTRY glCullFace( GLenum mode ); 1154 1155GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); 1156 1157GLAPI void GLAPIENTRY glPointSize( GLfloat size ); 1158 1159GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); 1160 1161GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); 1162 1163GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); 1164 1165GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); 1166 1167GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); 1168 1169GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); 1170 1171GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); 1172 1173GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); 1174 1175GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, 1176 GLsizei width, GLsizei height); 1177 1178GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); 1179 1180GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); 1181 1182GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); 1183 1184GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); 1185 1186GLAPI void GLAPIENTRY glEnable( GLenum cap ); 1187 1188GLAPI void GLAPIENTRY glDisable( GLenum cap ); 1189 1190GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); 1191 1192 1193GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ 1194 1195GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ 1196 1197 1198GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); 1199 1200GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); 1201 1202GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); 1203 1204GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); 1205 1206 1207GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); 1208 1209GLAPI void GLAPIENTRY glPopAttrib( void ); 1210 1211 1212GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ 1213 1214GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ 1215 1216 1217GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); 1218 1219GLAPI GLenum GLAPIENTRY glGetError( void ); 1220 1221GLAPI const GLubyte* GLAPIENTRY glGetString( GLenum name ); 1222 1223GLAPI void GLAPIENTRY glFinish( void ); 1224 1225GLAPI void GLAPIENTRY glFlush( void ); 1226 1227GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); 1228 1229 1230 1231/* 1232 * Depth Buffer 1233 */ 1234 1235GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); 1236 1237GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); 1238 1239GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); 1240 1241GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); 1242 1243 1244/* 1245 * Accumulation Buffer 1246 */ 1247 1248GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, 1249 GLfloat blue, GLfloat alpha ); 1250 1251GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); 1252 1253 1254 1255/* 1256 * Transformation 1257 */ 1258 1259GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); 1260 1261GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, 1262 GLdouble bottom, GLdouble top, 1263 GLdouble near_val, GLdouble far_val ); 1264 1265GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, 1266 GLdouble bottom, GLdouble top, 1267 GLdouble near_val, GLdouble far_val ); 1268 1269GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, 1270 GLsizei width, GLsizei height ); 1271 1272GLAPI void GLAPIENTRY glPushMatrix( void ); 1273 1274GLAPI void GLAPIENTRY glPopMatrix( void ); 1275 1276GLAPI void GLAPIENTRY glLoadIdentity( void ); 1277 1278GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); 1279GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); 1280 1281GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); 1282GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); 1283 1284GLAPI void GLAPIENTRY glRotated( GLdouble angle, 1285 GLdouble x, GLdouble y, GLdouble z ); 1286GLAPI void GLAPIENTRY glRotatef( GLfloat angle, 1287 GLfloat x, GLfloat y, GLfloat z ); 1288 1289GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); 1290GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); 1291 1292GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); 1293GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); 1294 1295 1296 1297/* 1298 * Display Lists 1299 */ 1300 1301GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); 1302 1303GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); 1304 1305GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); 1306 1307GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); 1308 1309GLAPI void GLAPIENTRY glEndList( void ); 1310 1311GLAPI void GLAPIENTRY glCallList( GLuint list ); 1312 1313GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, 1314 const GLvoid *lists ); 1315 1316GLAPI void GLAPIENTRY glListBase( GLuint base ); 1317 1318 1319 1320/* 1321 * Drawing Functions 1322 */ 1323 1324GLAPI void GLAPIENTRY glBegin( GLenum mode ); 1325 1326GLAPI void GLAPIENTRY glEnd( void ); 1327 1328 1329GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); 1330GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); 1331GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); 1332GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); 1333 1334GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); 1335GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); 1336GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); 1337GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); 1338 1339GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 1340GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 1341GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); 1342GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); 1343 1344GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); 1345GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); 1346GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); 1347GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); 1348 1349GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); 1350GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); 1351GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); 1352GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); 1353 1354GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); 1355GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); 1356GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); 1357GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); 1358 1359 1360GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); 1361GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); 1362GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); 1363GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); 1364GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); 1365 1366GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); 1367GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); 1368GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); 1369GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); 1370GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); 1371 1372 1373GLAPI void GLAPIENTRY glIndexd( GLdouble c ); 1374GLAPI void GLAPIENTRY glIndexf( GLfloat c ); 1375GLAPI void GLAPIENTRY glIndexi( GLint c ); 1376GLAPI void GLAPIENTRY glIndexs( GLshort c ); 1377GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ 1378 1379GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); 1380GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); 1381GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); 1382GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); 1383GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ 1384 1385GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); 1386GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); 1387GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); 1388GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); 1389GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); 1390GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); 1391GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); 1392GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); 1393 1394GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, 1395 GLbyte blue, GLbyte alpha ); 1396GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, 1397 GLdouble blue, GLdouble alpha ); 1398GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, 1399 GLfloat blue, GLfloat alpha ); 1400GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, 1401 GLint blue, GLint alpha ); 1402GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, 1403 GLshort blue, GLshort alpha ); 1404GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, 1405 GLubyte blue, GLubyte alpha ); 1406GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, 1407 GLuint blue, GLuint alpha ); 1408GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, 1409 GLushort blue, GLushort alpha ); 1410 1411 1412GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); 1413GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); 1414GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); 1415GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); 1416GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); 1417GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); 1418GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); 1419GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); 1420 1421GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); 1422GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); 1423GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); 1424GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); 1425GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); 1426GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); 1427GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); 1428GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); 1429 1430 1431GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); 1432GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); 1433GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); 1434GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); 1435 1436GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); 1437GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); 1438GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); 1439GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); 1440 1441GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); 1442GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); 1443GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); 1444GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); 1445 1446GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 1447GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 1448GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); 1449GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); 1450 1451GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); 1452GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); 1453GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); 1454GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); 1455 1456GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); 1457GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); 1458GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); 1459GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); 1460 1461GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); 1462GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); 1463GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); 1464GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); 1465 1466GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); 1467GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); 1468GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); 1469GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); 1470 1471 1472GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); 1473GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); 1474GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); 1475GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); 1476 1477GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); 1478GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); 1479GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); 1480GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); 1481 1482GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 1483GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 1484GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); 1485GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); 1486 1487GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); 1488GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); 1489GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); 1490GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); 1491 1492GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); 1493GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); 1494GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); 1495GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); 1496 1497GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); 1498GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); 1499GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); 1500GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); 1501 1502 1503GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); 1504GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); 1505GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); 1506GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); 1507 1508 1509GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); 1510GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); 1511GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); 1512GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); 1513 1514 1515 1516/* 1517 * Vertex Arrays (1.1) 1518 */ 1519 1520GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, 1521 GLsizei stride, const GLvoid *ptr ); 1522 1523GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, 1524 const GLvoid *ptr ); 1525 1526GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, 1527 GLsizei stride, const GLvoid *ptr ); 1528 1529GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, 1530 const GLvoid *ptr ); 1531 1532GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, 1533 GLsizei stride, const GLvoid *ptr ); 1534 1535GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); 1536 1537GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, void **params ); 1538 1539GLAPI void GLAPIENTRY glArrayElement( GLint i ); 1540 1541GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); 1542 1543GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, 1544 GLenum type, const GLvoid *indices ); 1545 1546GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, 1547 const GLvoid *pointer ); 1548 1549 1550/* 1551 * Lighting 1552 */ 1553 1554GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); 1555 1556GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); 1557GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); 1558GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, 1559 const GLfloat *params ); 1560GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, 1561 const GLint *params ); 1562 1563GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, 1564 GLfloat *params ); 1565GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, 1566 GLint *params ); 1567 1568GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); 1569GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); 1570GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); 1571GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); 1572 1573GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); 1574GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); 1575GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); 1576GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); 1577 1578GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); 1579GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); 1580 1581GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); 1582 1583 1584 1585 1586/* 1587 * Raster functions 1588 */ 1589 1590GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); 1591 1592GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); 1593GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); 1594 1595GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); 1596GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); 1597 1598GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLint mapsize, 1599 const GLfloat *values ); 1600GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLint mapsize, 1601 const GLuint *values ); 1602GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLint mapsize, 1603 const GLushort *values ); 1604 1605GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); 1606GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); 1607GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); 1608 1609GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, 1610 GLfloat xorig, GLfloat yorig, 1611 GLfloat xmove, GLfloat ymove, 1612 const GLubyte *bitmap ); 1613 1614GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, 1615 GLsizei width, GLsizei height, 1616 GLenum format, GLenum type, 1617 GLvoid *pixels ); 1618 1619GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, 1620 GLenum format, GLenum type, 1621 const GLvoid *pixels ); 1622 1623GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, 1624 GLsizei width, GLsizei height, 1625 GLenum type ); 1626 1627 1628 1629/* 1630 * Stenciling 1631 */ 1632 1633GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); 1634 1635GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); 1636 1637GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); 1638 1639GLAPI void GLAPIENTRY glClearStencil( GLint s ); 1640 1641 1642 1643/* 1644 * Texture mapping 1645 */ 1646 1647GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); 1648GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); 1649GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); 1650 1651GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); 1652GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); 1653GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); 1654 1655GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); 1656GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); 1657GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); 1658 1659 1660GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); 1661GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); 1662 1663GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); 1664GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); 1665 1666GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); 1667GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); 1668 1669 1670GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); 1671GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); 1672 1673GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, 1674 const GLfloat *params ); 1675GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, 1676 const GLint *params ); 1677 1678GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, 1679 GLenum pname, GLfloat *params); 1680GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, 1681 GLenum pname, GLint *params ); 1682 1683GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, 1684 GLenum pname, GLfloat *params ); 1685GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, 1686 GLenum pname, GLint *params ); 1687 1688 1689GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, 1690 GLint internalFormat, 1691 GLsizei width, GLint border, 1692 GLenum format, GLenum type, 1693 const GLvoid *pixels ); 1694 1695GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, 1696 GLint internalFormat, 1697 GLsizei width, GLsizei height, 1698 GLint border, GLenum format, GLenum type, 1699 const GLvoid *pixels ); 1700 1701GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, 1702 GLenum format, GLenum type, 1703 GLvoid *pixels ); 1704 1705 1706 1707/* 1.1 functions */ 1708 1709GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); 1710 1711GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); 1712 1713GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); 1714 1715GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, 1716 const GLuint *textures, 1717 const GLclampf *priorities ); 1718 1719GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, 1720 const GLuint *textures, 1721 GLboolean *residences ); 1722 1723GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); 1724 1725 1726GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, 1727 GLint xoffset, 1728 GLsizei width, GLenum format, 1729 GLenum type, const GLvoid *pixels ); 1730 1731 1732GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, 1733 GLint xoffset, GLint yoffset, 1734 GLsizei width, GLsizei height, 1735 GLenum format, GLenum type, 1736 const GLvoid *pixels ); 1737 1738 1739GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, 1740 GLenum internalformat, 1741 GLint x, GLint y, 1742 GLsizei width, GLint border ); 1743 1744 1745GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, 1746 GLenum internalformat, 1747 GLint x, GLint y, 1748 GLsizei width, GLsizei height, 1749 GLint border ); 1750 1751 1752GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, 1753 GLint xoffset, GLint x, GLint y, 1754 GLsizei width ); 1755 1756 1757GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, 1758 GLint xoffset, GLint yoffset, 1759 GLint x, GLint y, 1760 GLsizei width, GLsizei height ); 1761 1762 1763 1764 1765/* 1766 * Evaluators 1767 */ 1768 1769GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, 1770 GLint stride, 1771 GLint order, const GLdouble *points ); 1772GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, 1773 GLint stride, 1774 GLint order, const GLfloat *points ); 1775 1776GLAPI void GLAPIENTRY glMap2d( GLenum target, 1777 GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, 1778 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, 1779 const GLdouble *points ); 1780GLAPI void GLAPIENTRY glMap2f( GLenum target, 1781 GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, 1782 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, 1783 const GLfloat *points ); 1784 1785GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); 1786GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); 1787GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); 1788 1789GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); 1790GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); 1791 1792GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); 1793GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); 1794 1795GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); 1796GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); 1797 1798GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); 1799GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); 1800 1801GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); 1802GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); 1803 1804GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, 1805 GLint vn, GLdouble v1, GLdouble v2 ); 1806GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, 1807 GLint vn, GLfloat v1, GLfloat v2 ); 1808 1809GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); 1810 1811GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); 1812 1813GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); 1814 1815GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); 1816 1817 1818 1819/* 1820 * Fog 1821 */ 1822 1823GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); 1824 1825GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); 1826 1827GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); 1828 1829GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); 1830 1831 1832 1833/* 1834 * Selection and Feedback 1835 */ 1836 1837GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); 1838 1839GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); 1840 1841GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); 1842 1843GLAPI void GLAPIENTRY glInitNames( void ); 1844 1845GLAPI void GLAPIENTRY glLoadName( GLuint name ); 1846 1847GLAPI void GLAPIENTRY glPushName( GLuint name ); 1848 1849GLAPI void GLAPIENTRY glPopName( void ); 1850 1851 1852 1853/* 1854 * Extensions 1855 */ 1856 1857/* GL_EXT_blend_minmax */ 1858GLAPI void GLAPIENTRY glBlendEquationEXT( GLenum mode ); 1859 1860 1861 1862/* GL_EXT_blend_color */ 1863GLAPI void GLAPIENTRY glBlendColorEXT( GLclampf red, GLclampf green, 1864 GLclampf blue, GLclampf alpha ); 1865 1866 1867 1868/* GL_EXT_polygon_offset */ 1869GLAPI void GLAPIENTRY glPolygonOffsetEXT( GLfloat factor, GLfloat bias ); 1870 1871 1872 1873/* GL_EXT_vertex_array */ 1874 1875GLAPI void GLAPIENTRY glVertexPointerEXT( GLint size, GLenum type, 1876 GLsizei stride, 1877 GLsizei count, const GLvoid *ptr ); 1878 1879GLAPI void GLAPIENTRY glNormalPointerEXT( GLenum type, GLsizei stride, 1880 GLsizei count, const GLvoid *ptr ); 1881 1882GLAPI void GLAPIENTRY glColorPointerEXT( GLint size, GLenum type, 1883 GLsizei stride, 1884 GLsizei count, const GLvoid *ptr ); 1885 1886GLAPI void GLAPIENTRY glIndexPointerEXT( GLenum type, GLsizei stride, 1887 GLsizei count, const GLvoid *ptr ); 1888 1889GLAPI void GLAPIENTRY glTexCoordPointerEXT( GLint size, GLenum type, 1890 GLsizei stride, GLsizei count, 1891 const GLvoid *ptr ); 1892 1893GLAPI void GLAPIENTRY glEdgeFlagPointerEXT( GLsizei stride, GLsizei count, 1894 const GLboolean *ptr ); 1895 1896GLAPI void GLAPIENTRY glGetPointervEXT( GLenum pname, void **params ); 1897 1898GLAPI void GLAPIENTRY glArrayElementEXT( GLint i ); 1899 1900GLAPI void GLAPIENTRY glDrawArraysEXT( GLenum mode, GLint first, 1901 GLsizei count ); 1902 1903 1904 1905/* GL_EXT_texture_object */ 1906 1907GLAPI void GLAPIENTRY glGenTexturesEXT( GLsizei n, GLuint *textures ); 1908 1909GLAPI void GLAPIENTRY glDeleteTexturesEXT( GLsizei n, const GLuint *textures); 1910 1911GLAPI void GLAPIENTRY glBindTextureEXT( GLenum target, GLuint texture ); 1912 1913GLAPI void GLAPIENTRY glPrioritizeTexturesEXT( GLsizei n, 1914 const GLuint *textures, 1915 const GLclampf *priorities ); 1916 1917GLAPI GLboolean GLAPIENTRY glAreTexturesResidentEXT( GLsizei n, 1918 const GLuint *textures, 1919 GLboolean *residences ); 1920 1921GLAPI GLboolean GLAPIENTRY glIsTextureEXT( GLuint texture ); 1922 1923 1924 1925/* GL_EXT_texture3D */ 1926 1927GLAPI void GLAPIENTRY glTexImage3DEXT( GLenum target, GLint level, 1928 GLenum internalFormat, 1929 GLsizei width, GLsizei height, 1930 GLsizei depth, GLint border, 1931 GLenum format, GLenum type, 1932 const GLvoid *pixels ); 1933 1934GLAPI void GLAPIENTRY glTexSubImage3DEXT( GLenum target, GLint level, 1935 GLint xoffset, GLint yoffset, 1936 GLint zoffset, GLsizei width, 1937 GLsizei height, GLsizei depth, 1938 GLenum format, 1939 GLenum type, const GLvoid *pixels); 1940 1941GLAPI void GLAPIENTRY glCopyTexSubImage3DEXT( GLenum target, GLint level, 1942 GLint xoffset, GLint yoffset, 1943 GLint zoffset, GLint x, 1944 GLint y, GLsizei width, 1945 GLsizei height ); 1946 1947 1948 1949/* GL_EXT_color_table */ 1950 1951GLAPI void GLAPIENTRY glColorTableEXT( GLenum target, GLenum internalformat, 1952 GLsizei width, GLenum format, 1953 GLenum type, const GLvoid *table ); 1954 1955GLAPI void GLAPIENTRY glColorSubTableEXT( GLenum target, 1956 GLsizei start, GLsizei count, 1957 GLenum format, GLenum type, 1958 const GLvoid *data ); 1959 1960GLAPI void GLAPIENTRY glGetColorTableEXT( GLenum target, GLenum format, 1961 GLenum type, GLvoid *table ); 1962 1963GLAPI void GLAPIENTRY glGetColorTableParameterfvEXT( GLenum target, 1964 GLenum pname, 1965 GLfloat *params ); 1966 1967GLAPI void GLAPIENTRY glGetColorTableParameterivEXT( GLenum target, 1968 GLenum pname, 1969 GLint *params ); 1970 1971 1972/* GL_ARB_multitexture */ 1973 1974GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); 1975GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); 1976GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); 1977GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); 1978GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); 1979GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); 1980GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); 1981GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); 1982GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); 1983GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); 1984GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); 1985GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); 1986GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); 1987GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); 1988GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); 1989GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); 1990GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); 1991GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); 1992GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); 1993GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); 1994GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); 1995GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); 1996GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); 1997GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); 1998GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); 1999GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); 2000GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 2001GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); 2002GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 2003GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); 2004GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); 2005GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); 2006GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); 2007GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); 2008 2009 2010 2011/* GL_EXT_point_parameters */ 2012GLAPI void GLAPIENTRY glPointParameterfEXT( GLenum pname, GLfloat param ); 2013GLAPI void GLAPIENTRY glPointParameterfvEXT( GLenum pname, 2014 const GLfloat *params ); 2015 2016 2017 2018/* GL_INGR_blend_func_separate */ 2019GLAPI void GLAPIENTRY glBlendFuncSeparateINGR( GLenum sfactorRGB, 2020 GLenum dfactorRGB, 2021 GLenum sfactorAlpha, 2022 GLenum dfactorAlpha ); 2023 2024 2025 2026/* GL_MESA_window_pos */ 2027 2028GLAPI void GLAPIENTRY glWindowPos2iMESA( GLint x, GLint y ); 2029GLAPI void GLAPIENTRY glWindowPos2sMESA( GLshort x, GLshort y ); 2030GLAPI void GLAPIENTRY glWindowPos2fMESA( GLfloat x, GLfloat y ); 2031GLAPI void GLAPIENTRY glWindowPos2dMESA( GLdouble x, GLdouble y ); 2032 2033GLAPI void GLAPIENTRY glWindowPos2ivMESA( const GLint *p ); 2034GLAPI void GLAPIENTRY glWindowPos2svMESA( const GLshort *p ); 2035GLAPI void GLAPIENTRY glWindowPos2fvMESA( const GLfloat *p ); 2036GLAPI void GLAPIENTRY glWindowPos2dvMESA( const GLdouble *p ); 2037 2038GLAPI void GLAPIENTRY glWindowPos3iMESA( GLint x, GLint y, GLint z ); 2039GLAPI void GLAPIENTRY glWindowPos3sMESA( GLshort x, GLshort y, GLshort z ); 2040GLAPI void GLAPIENTRY glWindowPos3fMESA( GLfloat x, GLfloat y, GLfloat z ); 2041GLAPI void GLAPIENTRY glWindowPos3dMESA( GLdouble x, GLdouble y, GLdouble z ); 2042 2043GLAPI void GLAPIENTRY glWindowPos3ivMESA( const GLint *p ); 2044GLAPI void GLAPIENTRY glWindowPos3svMESA( const GLshort *p ); 2045GLAPI void GLAPIENTRY glWindowPos3fvMESA( const GLfloat *p ); 2046GLAPI void GLAPIENTRY glWindowPos3dvMESA( const GLdouble *p ); 2047 2048GLAPI void GLAPIENTRY glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w ); 2049GLAPI void GLAPIENTRY glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w ); 2050GLAPI void GLAPIENTRY glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 2051GLAPI void GLAPIENTRY glWindowPos4dMESA( GLdouble x, GLdouble y, GLdouble z, GLdouble w); 2052 2053GLAPI void GLAPIENTRY glWindowPos4ivMESA( const GLint *p ); 2054GLAPI void GLAPIENTRY glWindowPos4svMESA( const GLshort *p ); 2055GLAPI void GLAPIENTRY glWindowPos4fvMESA( const GLfloat *p ); 2056GLAPI void GLAPIENTRY glWindowPos4dvMESA( const GLdouble *p ); 2057 2058 2059/* GL_MESA_resize_buffers */ 2060 2061GLAPI void GLAPIENTRY glResizeBuffersMESA( void ); 2062 2063 2064/* 1.2 functions */ 2065GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, 2066 GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); 2067 2068GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, 2069 GLint internalFormat, 2070 GLsizei width, GLsizei height, 2071 GLsizei depth, GLint border, 2072 GLenum format, GLenum type, 2073 const GLvoid *pixels ); 2074 2075GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, 2076 GLint xoffset, GLint yoffset, 2077 GLint zoffset, GLsizei width, 2078 GLsizei height, GLsizei depth, 2079 GLenum format, 2080 GLenum type, const GLvoid *pixels); 2081 2082GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, 2083 GLint xoffset, GLint yoffset, 2084 GLint zoffset, GLint x, 2085 GLint y, GLsizei width, 2086 GLsizei height ); 2087 2088 2089/* 1.2 imaging extension functions */ 2090 2091GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, 2092 GLsizei width, GLenum format, 2093 GLenum type, const GLvoid *table ); 2094 2095GLAPI void GLAPIENTRY glColorSubTable( GLenum target, 2096 GLsizei start, GLsizei count, 2097 GLenum format, GLenum type, 2098 const GLvoid *data ); 2099 2100GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, 2101 const GLint *params); 2102 2103GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, 2104 const GLfloat *params); 2105 2106GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, 2107 GLint x, GLint y, GLsizei width ); 2108 2109GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, 2110 GLint x, GLint y, GLsizei width ); 2111 2112GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, 2113 GLenum type, GLvoid *table ); 2114 2115GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, 2116 GLfloat *params ); 2117 2118GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, 2119 GLint *params ); 2120 2121GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); 2122 2123GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, 2124 GLclampf blue, GLclampf alpha ); 2125 2126GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, 2127 GLenum internalformat, GLboolean sink ); 2128 2129GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); 2130 2131GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, 2132 GLenum format, GLenum type, 2133 GLvoid *values ); 2134 2135GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, 2136 GLfloat *params ); 2137 2138GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, 2139 GLint *params ); 2140 2141GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, 2142 GLboolean sink ); 2143 2144GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); 2145 2146GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, 2147 GLenum format, GLenum types, 2148 GLvoid *values ); 2149 2150GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, 2151 GLfloat *params ); 2152 2153GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, 2154 GLint *params ); 2155 2156GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, 2157 GLenum internalformat, GLsizei width, GLenum format, GLenum type, 2158 const GLvoid *image ); 2159 2160GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, 2161 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2162 GLenum type, const GLvoid *image ); 2163 2164GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, 2165 GLfloat params ); 2166 2167GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, 2168 const GLfloat *params ); 2169 2170GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, 2171 GLint params ); 2172 2173GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, 2174 const GLint *params ); 2175 2176GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, 2177 GLenum internalformat, GLint x, GLint y, GLsizei width ); 2178 2179GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, 2180 GLenum internalformat, GLint x, GLint y, GLsizei width, 2181 GLsizei height); 2182 2183GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, 2184 GLenum type, GLvoid *image ); 2185 2186GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, 2187 GLfloat *params ); 2188 2189GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, 2190 GLint *params ); 2191 2192GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, 2193 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2194 GLenum type, const GLvoid *row, const GLvoid *column ); 2195 2196GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, 2197 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); 2198 2199 2200 2201/* GL_EXT_compiled_vertex_array */ 2202GLAPI void GLAPIENTRY glLockArraysEXT( GLint first, GLsizei count ); 2203GLAPI void GLAPIENTRY glUnlockArraysEXT( void ); 2204 2205 2206 2207#if defined(__BEOS__) || defined(__QUICKDRAW__) 2208#pragma export off 2209#endif 2210 2211 2212/* 2213 * Compile-time tests for extensions: 2214 */ 2215#define GL_EXT_blend_color 1 2216#define GL_EXT_blend_logic_op 1 2217#define GL_EXT_blend_minmax 1 2218#define GL_EXT_blend_subtract 1 2219#define GL_EXT_polygon_offset 1 2220#define GL_EXT_vertex_array 1 2221#define GL_EXT_texture_object 1 2222#define GL_EXT_texture3D 1 2223#define GL_EXT_paletted_texture 1 2224#define GL_EXT_shared_texture_palette 1 2225#define GL_EXT_point_parameters 1 2226#define GL_EXT_rescale_normal 1 2227#define GL_EXT_abgr 1 2228#define GL_EXT_stencil_wrap 1 2229#define GL_MESA_window_pos 1 2230#define GL_MESA_resize_buffers 1 2231#define GL_SGIS_texture_edge_clamp 1 2232#define GL_INGR_blend_func_separate 1 2233#define GL_ARB_multitexture 1 2234#define GL_NV_texgen_reflection 1 2235#define GL_PGI_misc_hints 1 2236#define GL_EXT_compiled_vertex_array 1 2237#define GL_EXT_clip_volume_hint 1 2238 2239 2240#ifdef macintosh 2241 #pragma enumsalwaysint reset 2242 #if PRAGMA_IMPORT_SUPPORTED 2243 #pragma import off 2244 #endif 2245#endif 2246 2247 2248#ifdef __cplusplus 2249} 2250#endif 2251 2252#endif 2253