Atlas - SDL_opengl.h
Home / ext / SDL / include / SDL3 Lines: 1 | Size: 126683 bytes [Download] [Show on GitHub] [Search similar files] [Raw] [Raw (proxy)][FILE BEGIN]1/* 2 Simple DirectMedia Layer 3 Copyright (C) 1997-2025 Sam Lantinga <[email protected]> 4 5 This software is provided 'as-is', without any express or implied 6 warranty. In no event will the authors be held liable for any damages 7 arising from the use of this software. 8 9 Permission is granted to anyone to use this software for any purpose, 10 including commercial applications, and to alter it and redistribute it 11 freely, subject to the following restrictions: 12 13 1. The origin of this software must not be misrepresented; you must not 14 claim that you wrote the original software. If you use this software 15 in a product, an acknowledgment in the product documentation would be 16 appreciated but is not required. 17 2. Altered source versions must be plainly marked as such, and must not be 18 misrepresented as being the original software. 19 3. This notice may not be removed or altered from any source distribution. 20*/ 21 22/* 23 * This is a simple file to encapsulate the OpenGL API headers. 24 * 25 * Define NO_SDL_GLEXT if you have your own version of glext.h and want 26 * to disable the version included in SDL_opengl.h. 27 */ 28 29#ifndef SDL_opengl_h_ 30#define SDL_opengl_h_ 31 32#include <SDL3/SDL_platform.h> 33 34#ifndef SDL_PLATFORM_IOS /* No OpenGL on iOS. */ 35 36/* 37 * Mesa 3-D graphics library 38 * 39 * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. 40 * Copyright (C) 2009 VMware, Inc. All Rights Reserved. 41 * 42 * Permission is hereby granted, free of charge, to any person obtaining a 43 * copy of this software and associated documentation files (the "Software"), 44 * to deal in the Software without restriction, including without limitation 45 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 46 * and/or sell copies of the Software, and to permit persons to whom the 47 * Software is furnished to do so, subject to the following conditions: 48 * 49 * The above copyright notice and this permission notice shall be included 50 * in all copies or substantial portions of the Software. 51 * 52 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 53 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 54 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 55 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 56 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 57 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 58 * OTHER DEALINGS IN THE SOFTWARE. 59 */ 60 61 62#ifndef __gl_h_ 63#define __gl_h_ 64 65#ifdef USE_MGL_NAMESPACE 66#include <SDL3/gl_mangle.h> 67#endif 68 69 70/********************************************************************** 71 * Begin system-specific stuff. 72 */ 73 74#if defined(_WIN32) && !defined(__CYGWIN__) 75# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ 76# define GLAPI __declspec(dllexport) 77# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ 78# define GLAPI __declspec(dllimport) 79# else /* for use with static link lib build of Win32 edition only */ 80# define GLAPI extern 81# endif /* _STATIC_MESA support */ 82# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */ 83# define GLAPIENTRY 84# else 85# define GLAPIENTRY __stdcall 86# endif 87#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ 88# define GLAPI extern 89# define GLAPIENTRY __stdcall 90#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) 91# define GLAPI __attribute__((visibility("default"))) 92# define GLAPIENTRY 93#endif /* WIN32 && !CYGWIN */ 94 95/* 96 * WINDOWS: Include windows.h here to define APIENTRY. 97 * It is also useful when applications include this file by 98 * including only glut.h, since glut.h depends on windows.h. 99 * Applications needing to include windows.h with parms other 100 * than "WIN32_LEAN_AND_MEAN" may include windows.h before 101 * glut.h or gl.h. 102 */ 103#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) 104#ifndef WIN32_LEAN_AND_MEAN 105#define WIN32_LEAN_AND_MEAN 1 106#endif 107#ifndef NOMINMAX /* don't define min() and max(). */ 108#define NOMINMAX 109#endif 110#include <windows.h> 111#endif 112 113#ifndef GLAPI 114#define GLAPI extern 115#endif 116 117#ifndef GLAPIENTRY 118#define GLAPIENTRY 119#endif 120 121#ifndef APIENTRY 122#define APIENTRY GLAPIENTRY 123#endif 124 125/* "P" suffix to be used for a pointer to a function */ 126#ifndef APIENTRYP 127#define APIENTRYP APIENTRY * 128#endif 129 130#ifndef GLAPIENTRYP 131#define GLAPIENTRYP GLAPIENTRY * 132#endif 133 134#if defined(PRAGMA_EXPORT_SUPPORTED) 135#pragma export on 136#endif 137 138/* 139 * End system-specific stuff. 140 **********************************************************************/ 141 142 143 144#ifdef __cplusplus 145extern "C" { 146#endif 147 148 149 150#define GL_VERSION_1_1 1 151#define GL_VERSION_1_2 1 152#define GL_VERSION_1_3 1 153#define GL_ARB_imaging 1 154 155 156/* 157 * Datatypes 158 */ 159typedef unsigned int GLenum; 160typedef unsigned char GLboolean; 161typedef unsigned int GLbitfield; 162typedef void GLvoid; 163typedef signed char GLbyte; /* 1-byte signed */ 164typedef short GLshort; /* 2-byte signed */ 165typedef int GLint; /* 4-byte signed */ 166typedef unsigned char GLubyte; /* 1-byte unsigned */ 167typedef unsigned short GLushort; /* 2-byte unsigned */ 168typedef unsigned int GLuint; /* 4-byte unsigned */ 169typedef int GLsizei; /* 4-byte signed */ 170typedef float GLfloat; /* single precision float */ 171typedef float GLclampf; /* single precision float in [0,1] */ 172typedef double GLdouble; /* double precision float */ 173typedef double GLclampd; /* double precision float in [0,1] */ 174 175 176 177/* 178 * Constants 179 */ 180 181/* Boolean values */ 182#define GL_FALSE 0 183#define GL_TRUE 1 184 185/* Data types */ 186#define GL_BYTE 0x1400 187#define GL_UNSIGNED_BYTE 0x1401 188#define GL_SHORT 0x1402 189#define GL_UNSIGNED_SHORT 0x1403 190#define GL_INT 0x1404 191#define GL_UNSIGNED_INT 0x1405 192#define GL_FLOAT 0x1406 193#define GL_2_BYTES 0x1407 194#define GL_3_BYTES 0x1408 195#define GL_4_BYTES 0x1409 196#define GL_DOUBLE 0x140A 197 198/* Primitives */ 199#define GL_POINTS 0x0000 200#define GL_LINES 0x0001 201#define GL_LINE_LOOP 0x0002 202#define GL_LINE_STRIP 0x0003 203#define GL_TRIANGLES 0x0004 204#define GL_TRIANGLE_STRIP 0x0005 205#define GL_TRIANGLE_FAN 0x0006 206#define GL_QUADS 0x0007 207#define GL_QUAD_STRIP 0x0008 208#define GL_POLYGON 0x0009 209 210/* Vertex Arrays */ 211#define GL_VERTEX_ARRAY 0x8074 212#define GL_NORMAL_ARRAY 0x8075 213#define GL_COLOR_ARRAY 0x8076 214#define GL_INDEX_ARRAY 0x8077 215#define GL_TEXTURE_COORD_ARRAY 0x8078 216#define GL_EDGE_FLAG_ARRAY 0x8079 217#define GL_VERTEX_ARRAY_SIZE 0x807A 218#define GL_VERTEX_ARRAY_TYPE 0x807B 219#define GL_VERTEX_ARRAY_STRIDE 0x807C 220#define GL_NORMAL_ARRAY_TYPE 0x807E 221#define GL_NORMAL_ARRAY_STRIDE 0x807F 222#define GL_COLOR_ARRAY_SIZE 0x8081 223#define GL_COLOR_ARRAY_TYPE 0x8082 224#define GL_COLOR_ARRAY_STRIDE 0x8083 225#define GL_INDEX_ARRAY_TYPE 0x8085 226#define GL_INDEX_ARRAY_STRIDE 0x8086 227#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 228#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 229#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A 230#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C 231#define GL_VERTEX_ARRAY_POINTER 0x808E 232#define GL_NORMAL_ARRAY_POINTER 0x808F 233#define GL_COLOR_ARRAY_POINTER 0x8090 234#define GL_INDEX_ARRAY_POINTER 0x8091 235#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 236#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 237#define GL_V2F 0x2A20 238#define GL_V3F 0x2A21 239#define GL_C4UB_V2F 0x2A22 240#define GL_C4UB_V3F 0x2A23 241#define GL_C3F_V3F 0x2A24 242#define GL_N3F_V3F 0x2A25 243#define GL_C4F_N3F_V3F 0x2A26 244#define GL_T2F_V3F 0x2A27 245#define GL_T4F_V4F 0x2A28 246#define GL_T2F_C4UB_V3F 0x2A29 247#define GL_T2F_C3F_V3F 0x2A2A 248#define GL_T2F_N3F_V3F 0x2A2B 249#define GL_T2F_C4F_N3F_V3F 0x2A2C 250#define GL_T4F_C4F_N3F_V4F 0x2A2D 251 252/* Matrix Mode */ 253#define GL_MATRIX_MODE 0x0BA0 254#define GL_MODELVIEW 0x1700 255#define GL_PROJECTION 0x1701 256#define GL_TEXTURE 0x1702 257 258/* Points */ 259#define GL_POINT_SMOOTH 0x0B10 260#define GL_POINT_SIZE 0x0B11 261#define GL_POINT_SIZE_GRANULARITY 0x0B13 262#define GL_POINT_SIZE_RANGE 0x0B12 263 264/* Lines */ 265#define GL_LINE_SMOOTH 0x0B20 266#define GL_LINE_STIPPLE 0x0B24 267#define GL_LINE_STIPPLE_PATTERN 0x0B25 268#define GL_LINE_STIPPLE_REPEAT 0x0B26 269#define GL_LINE_WIDTH 0x0B21 270#define GL_LINE_WIDTH_GRANULARITY 0x0B23 271#define GL_LINE_WIDTH_RANGE 0x0B22 272 273/* Polygons */ 274#define GL_POINT 0x1B00 275#define GL_LINE 0x1B01 276#define GL_FILL 0x1B02 277#define GL_CW 0x0900 278#define GL_CCW 0x0901 279#define GL_FRONT 0x0404 280#define GL_BACK 0x0405 281#define GL_POLYGON_MODE 0x0B40 282#define GL_POLYGON_SMOOTH 0x0B41 283#define GL_POLYGON_STIPPLE 0x0B42 284#define GL_EDGE_FLAG 0x0B43 285#define GL_CULL_FACE 0x0B44 286#define GL_CULL_FACE_MODE 0x0B45 287#define GL_FRONT_FACE 0x0B46 288#define GL_POLYGON_OFFSET_FACTOR 0x8038 289#define GL_POLYGON_OFFSET_UNITS 0x2A00 290#define GL_POLYGON_OFFSET_POINT 0x2A01 291#define GL_POLYGON_OFFSET_LINE 0x2A02 292#define GL_POLYGON_OFFSET_FILL 0x8037 293 294/* Display Lists */ 295#define GL_COMPILE 0x1300 296#define GL_COMPILE_AND_EXECUTE 0x1301 297#define GL_LIST_BASE 0x0B32 298#define GL_LIST_INDEX 0x0B33 299#define GL_LIST_MODE 0x0B30 300 301/* Depth buffer */ 302#define GL_NEVER 0x0200 303#define GL_LESS 0x0201 304#define GL_EQUAL 0x0202 305#define GL_LEQUAL 0x0203 306#define GL_GREATER 0x0204 307#define GL_NOTEQUAL 0x0205 308#define GL_GEQUAL 0x0206 309#define GL_ALWAYS 0x0207 310#define GL_DEPTH_TEST 0x0B71 311#define GL_DEPTH_BITS 0x0D56 312#define GL_DEPTH_CLEAR_VALUE 0x0B73 313#define GL_DEPTH_FUNC 0x0B74 314#define GL_DEPTH_RANGE 0x0B70 315#define GL_DEPTH_WRITEMASK 0x0B72 316#define GL_DEPTH_COMPONENT 0x1902 317 318/* Lighting */ 319#define GL_LIGHTING 0x0B50 320#define GL_LIGHT0 0x4000 321#define GL_LIGHT1 0x4001 322#define GL_LIGHT2 0x4002 323#define GL_LIGHT3 0x4003 324#define GL_LIGHT4 0x4004 325#define GL_LIGHT5 0x4005 326#define GL_LIGHT6 0x4006 327#define GL_LIGHT7 0x4007 328#define GL_SPOT_EXPONENT 0x1205 329#define GL_SPOT_CUTOFF 0x1206 330#define GL_CONSTANT_ATTENUATION 0x1207 331#define GL_LINEAR_ATTENUATION 0x1208 332#define GL_QUADRATIC_ATTENUATION 0x1209 333#define GL_AMBIENT 0x1200 334#define GL_DIFFUSE 0x1201 335#define GL_SPECULAR 0x1202 336#define GL_SHININESS 0x1601 337#define GL_EMISSION 0x1600 338#define GL_POSITION 0x1203 339#define GL_SPOT_DIRECTION 0x1204 340#define GL_AMBIENT_AND_DIFFUSE 0x1602 341#define GL_COLOR_INDEXES 0x1603 342#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 343#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 344#define GL_LIGHT_MODEL_AMBIENT 0x0B53 345#define GL_FRONT_AND_BACK 0x0408 346#define GL_SHADE_MODEL 0x0B54 347#define GL_FLAT 0x1D00 348#define GL_SMOOTH 0x1D01 349#define GL_COLOR_MATERIAL 0x0B57 350#define GL_COLOR_MATERIAL_FACE 0x0B55 351#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 352#define GL_NORMALIZE 0x0BA1 353 354/* User clipping planes */ 355#define GL_CLIP_PLANE0 0x3000 356#define GL_CLIP_PLANE1 0x3001 357#define GL_CLIP_PLANE2 0x3002 358#define GL_CLIP_PLANE3 0x3003 359#define GL_CLIP_PLANE4 0x3004 360#define GL_CLIP_PLANE5 0x3005 361 362/* Accumulation buffer */ 363#define GL_ACCUM_RED_BITS 0x0D58 364#define GL_ACCUM_GREEN_BITS 0x0D59 365#define GL_ACCUM_BLUE_BITS 0x0D5A 366#define GL_ACCUM_ALPHA_BITS 0x0D5B 367#define GL_ACCUM_CLEAR_VALUE 0x0B80 368#define GL_ACCUM 0x0100 369#define GL_ADD 0x0104 370#define GL_LOAD 0x0101 371#define GL_MULT 0x0103 372#define GL_RETURN 0x0102 373 374/* Alpha testing */ 375#define GL_ALPHA_TEST 0x0BC0 376#define GL_ALPHA_TEST_REF 0x0BC2 377#define GL_ALPHA_TEST_FUNC 0x0BC1 378 379/* Blending */ 380#define GL_BLEND 0x0BE2 381#define GL_BLEND_SRC 0x0BE1 382#define GL_BLEND_DST 0x0BE0 383#define GL_ZERO 0 384#define GL_ONE 1 385#define GL_SRC_COLOR 0x0300 386#define GL_ONE_MINUS_SRC_COLOR 0x0301 387#define GL_SRC_ALPHA 0x0302 388#define GL_ONE_MINUS_SRC_ALPHA 0x0303 389#define GL_DST_ALPHA 0x0304 390#define GL_ONE_MINUS_DST_ALPHA 0x0305 391#define GL_DST_COLOR 0x0306 392#define GL_ONE_MINUS_DST_COLOR 0x0307 393#define GL_SRC_ALPHA_SATURATE 0x0308 394 395/* Render Mode */ 396#define GL_FEEDBACK 0x1C01 397#define GL_RENDER 0x1C00 398#define GL_SELECT 0x1C02 399 400/* Feedback */ 401#define GL_2D 0x0600 402#define GL_3D 0x0601 403#define GL_3D_COLOR 0x0602 404#define GL_3D_COLOR_TEXTURE 0x0603 405#define GL_4D_COLOR_TEXTURE 0x0604 406#define GL_POINT_TOKEN 0x0701 407#define GL_LINE_TOKEN 0x0702 408#define GL_LINE_RESET_TOKEN 0x0707 409#define GL_POLYGON_TOKEN 0x0703 410#define GL_BITMAP_TOKEN 0x0704 411#define GL_DRAW_PIXEL_TOKEN 0x0705 412#define GL_COPY_PIXEL_TOKEN 0x0706 413#define GL_PASS_THROUGH_TOKEN 0x0700 414#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 415#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 416#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 417 418/* Selection */ 419#define GL_SELECTION_BUFFER_POINTER 0x0DF3 420#define GL_SELECTION_BUFFER_SIZE 0x0DF4 421 422/* Fog */ 423#define GL_FOG 0x0B60 424#define GL_FOG_MODE 0x0B65 425#define GL_FOG_DENSITY 0x0B62 426#define GL_FOG_COLOR 0x0B66 427#define GL_FOG_INDEX 0x0B61 428#define GL_FOG_START 0x0B63 429#define GL_FOG_END 0x0B64 430#define GL_LINEAR 0x2601 431#define GL_EXP 0x0800 432#define GL_EXP2 0x0801 433 434/* Logic Ops */ 435#define GL_LOGIC_OP 0x0BF1 436#define GL_INDEX_LOGIC_OP 0x0BF1 437#define GL_COLOR_LOGIC_OP 0x0BF2 438#define GL_LOGIC_OP_MODE 0x0BF0 439#define GL_CLEAR 0x1500 440#define GL_SET 0x150F 441#define GL_COPY 0x1503 442#define GL_COPY_INVERTED 0x150C 443#define GL_NOOP 0x1505 444#define GL_INVERT 0x150A 445#define GL_AND 0x1501 446#define GL_NAND 0x150E 447#define GL_OR 0x1507 448#define GL_NOR 0x1508 449#define GL_XOR 0x1506 450#define GL_EQUIV 0x1509 451#define GL_AND_REVERSE 0x1502 452#define GL_AND_INVERTED 0x1504 453#define GL_OR_REVERSE 0x150B 454#define GL_OR_INVERTED 0x150D 455 456/* Stencil */ 457#define GL_STENCIL_BITS 0x0D57 458#define GL_STENCIL_TEST 0x0B90 459#define GL_STENCIL_CLEAR_VALUE 0x0B91 460#define GL_STENCIL_FUNC 0x0B92 461#define GL_STENCIL_VALUE_MASK 0x0B93 462#define GL_STENCIL_FAIL 0x0B94 463#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 464#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 465#define GL_STENCIL_REF 0x0B97 466#define GL_STENCIL_WRITEMASK 0x0B98 467#define GL_STENCIL_INDEX 0x1901 468#define GL_KEEP 0x1E00 469#define GL_REPLACE 0x1E01 470#define GL_INCR 0x1E02 471#define GL_DECR 0x1E03 472 473/* Buffers, Pixel Drawing/Reading */ 474#define GL_NONE 0 475#define GL_LEFT 0x0406 476#define GL_RIGHT 0x0407 477/*GL_FRONT 0x0404 */ 478/*GL_BACK 0x0405 */ 479/*GL_FRONT_AND_BACK 0x0408 */ 480#define GL_FRONT_LEFT 0x0400 481#define GL_FRONT_RIGHT 0x0401 482#define GL_BACK_LEFT 0x0402 483#define GL_BACK_RIGHT 0x0403 484#define GL_AUX0 0x0409 485#define GL_AUX1 0x040A 486#define GL_AUX2 0x040B 487#define GL_AUX3 0x040C 488#define GL_COLOR_INDEX 0x1900 489#define GL_RED 0x1903 490#define GL_GREEN 0x1904 491#define GL_BLUE 0x1905 492#define GL_ALPHA 0x1906 493#define GL_LUMINANCE 0x1909 494#define GL_LUMINANCE_ALPHA 0x190A 495#define GL_ALPHA_BITS 0x0D55 496#define GL_RED_BITS 0x0D52 497#define GL_GREEN_BITS 0x0D53 498#define GL_BLUE_BITS 0x0D54 499#define GL_INDEX_BITS 0x0D51 500#define GL_SUBPIXEL_BITS 0x0D50 501#define GL_AUX_BUFFERS 0x0C00 502#define GL_READ_BUFFER 0x0C02 503#define GL_DRAW_BUFFER 0x0C01 504#define GL_DOUBLEBUFFER 0x0C32 505#define GL_STEREO 0x0C33 506#define GL_BITMAP 0x1A00 507#define GL_COLOR 0x1800 508#define GL_DEPTH 0x1801 509#define GL_STENCIL 0x1802 510#define GL_DITHER 0x0BD0 511#define GL_RGB 0x1907 512#define GL_RGBA 0x1908 513 514/* Implementation limits */ 515#define GL_MAX_LIST_NESTING 0x0B31 516#define GL_MAX_EVAL_ORDER 0x0D30 517#define GL_MAX_LIGHTS 0x0D31 518#define GL_MAX_CLIP_PLANES 0x0D32 519#define GL_MAX_TEXTURE_SIZE 0x0D33 520#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 521#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 522#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 523#define GL_MAX_NAME_STACK_DEPTH 0x0D37 524#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 525#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 526#define GL_MAX_VIEWPORT_DIMS 0x0D3A 527#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B 528 529/* Gets */ 530#define GL_ATTRIB_STACK_DEPTH 0x0BB0 531#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 532#define GL_COLOR_CLEAR_VALUE 0x0C22 533#define GL_COLOR_WRITEMASK 0x0C23 534#define GL_CURRENT_INDEX 0x0B01 535#define GL_CURRENT_COLOR 0x0B00 536#define GL_CURRENT_NORMAL 0x0B02 537#define GL_CURRENT_RASTER_COLOR 0x0B04 538#define GL_CURRENT_RASTER_DISTANCE 0x0B09 539#define GL_CURRENT_RASTER_INDEX 0x0B05 540#define GL_CURRENT_RASTER_POSITION 0x0B07 541#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 542#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 543#define GL_CURRENT_TEXTURE_COORDS 0x0B03 544#define GL_INDEX_CLEAR_VALUE 0x0C20 545#define GL_INDEX_MODE 0x0C30 546#define GL_INDEX_WRITEMASK 0x0C21 547#define GL_MODELVIEW_MATRIX 0x0BA6 548#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 549#define GL_NAME_STACK_DEPTH 0x0D70 550#define GL_PROJECTION_MATRIX 0x0BA7 551#define GL_PROJECTION_STACK_DEPTH 0x0BA4 552#define GL_RENDER_MODE 0x0C40 553#define GL_RGBA_MODE 0x0C31 554#define GL_TEXTURE_MATRIX 0x0BA8 555#define GL_TEXTURE_STACK_DEPTH 0x0BA5 556#define GL_VIEWPORT 0x0BA2 557 558/* Evaluators */ 559#define GL_AUTO_NORMAL 0x0D80 560#define GL_MAP1_COLOR_4 0x0D90 561#define GL_MAP1_INDEX 0x0D91 562#define GL_MAP1_NORMAL 0x0D92 563#define GL_MAP1_TEXTURE_COORD_1 0x0D93 564#define GL_MAP1_TEXTURE_COORD_2 0x0D94 565#define GL_MAP1_TEXTURE_COORD_3 0x0D95 566#define GL_MAP1_TEXTURE_COORD_4 0x0D96 567#define GL_MAP1_VERTEX_3 0x0D97 568#define GL_MAP1_VERTEX_4 0x0D98 569#define GL_MAP2_COLOR_4 0x0DB0 570#define GL_MAP2_INDEX 0x0DB1 571#define GL_MAP2_NORMAL 0x0DB2 572#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 573#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 574#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 575#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 576#define GL_MAP2_VERTEX_3 0x0DB7 577#define GL_MAP2_VERTEX_4 0x0DB8 578#define GL_MAP1_GRID_DOMAIN 0x0DD0 579#define GL_MAP1_GRID_SEGMENTS 0x0DD1 580#define GL_MAP2_GRID_DOMAIN 0x0DD2 581#define GL_MAP2_GRID_SEGMENTS 0x0DD3 582#define GL_COEFF 0x0A00 583#define GL_ORDER 0x0A01 584#define GL_DOMAIN 0x0A02 585 586/* Hints */ 587#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 588#define GL_POINT_SMOOTH_HINT 0x0C51 589#define GL_LINE_SMOOTH_HINT 0x0C52 590#define GL_POLYGON_SMOOTH_HINT 0x0C53 591#define GL_FOG_HINT 0x0C54 592#define GL_DONT_CARE 0x1100 593#define GL_FASTEST 0x1101 594#define GL_NICEST 0x1102 595 596/* Scissor box */ 597#define GL_SCISSOR_BOX 0x0C10 598#define GL_SCISSOR_TEST 0x0C11 599 600/* Pixel Mode / Transfer */ 601#define GL_MAP_COLOR 0x0D10 602#define GL_MAP_STENCIL 0x0D11 603#define GL_INDEX_SHIFT 0x0D12 604#define GL_INDEX_OFFSET 0x0D13 605#define GL_RED_SCALE 0x0D14 606#define GL_RED_BIAS 0x0D15 607#define GL_GREEN_SCALE 0x0D18 608#define GL_GREEN_BIAS 0x0D19 609#define GL_BLUE_SCALE 0x0D1A 610#define GL_BLUE_BIAS 0x0D1B 611#define GL_ALPHA_SCALE 0x0D1C 612#define GL_ALPHA_BIAS 0x0D1D 613#define GL_DEPTH_SCALE 0x0D1E 614#define GL_DEPTH_BIAS 0x0D1F 615#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 616#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 617#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 618#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 619#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 620#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 621#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 622#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 623#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 624#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 625#define GL_PIXEL_MAP_S_TO_S 0x0C71 626#define GL_PIXEL_MAP_I_TO_I 0x0C70 627#define GL_PIXEL_MAP_I_TO_R 0x0C72 628#define GL_PIXEL_MAP_I_TO_G 0x0C73 629#define GL_PIXEL_MAP_I_TO_B 0x0C74 630#define GL_PIXEL_MAP_I_TO_A 0x0C75 631#define GL_PIXEL_MAP_R_TO_R 0x0C76 632#define GL_PIXEL_MAP_G_TO_G 0x0C77 633#define GL_PIXEL_MAP_B_TO_B 0x0C78 634#define GL_PIXEL_MAP_A_TO_A 0x0C79 635#define GL_PACK_ALIGNMENT 0x0D05 636#define GL_PACK_LSB_FIRST 0x0D01 637#define GL_PACK_ROW_LENGTH 0x0D02 638#define GL_PACK_SKIP_PIXELS 0x0D04 639#define GL_PACK_SKIP_ROWS 0x0D03 640#define GL_PACK_SWAP_BYTES 0x0D00 641#define GL_UNPACK_ALIGNMENT 0x0CF5 642#define GL_UNPACK_LSB_FIRST 0x0CF1 643#define GL_UNPACK_ROW_LENGTH 0x0CF2 644#define GL_UNPACK_SKIP_PIXELS 0x0CF4 645#define GL_UNPACK_SKIP_ROWS 0x0CF3 646#define GL_UNPACK_SWAP_BYTES 0x0CF0 647#define GL_ZOOM_X 0x0D16 648#define GL_ZOOM_Y 0x0D17 649 650/* Texture mapping */ 651#define GL_TEXTURE_ENV 0x2300 652#define GL_TEXTURE_ENV_MODE 0x2200 653#define GL_TEXTURE_1D 0x0DE0 654#define GL_TEXTURE_2D 0x0DE1 655#define GL_TEXTURE_WRAP_S 0x2802 656#define GL_TEXTURE_WRAP_T 0x2803 657#define GL_TEXTURE_MAG_FILTER 0x2800 658#define GL_TEXTURE_MIN_FILTER 0x2801 659#define GL_TEXTURE_ENV_COLOR 0x2201 660#define GL_TEXTURE_GEN_S 0x0C60 661#define GL_TEXTURE_GEN_T 0x0C61 662#define GL_TEXTURE_GEN_R 0x0C62 663#define GL_TEXTURE_GEN_Q 0x0C63 664#define GL_TEXTURE_GEN_MODE 0x2500 665#define GL_TEXTURE_BORDER_COLOR 0x1004 666#define GL_TEXTURE_WIDTH 0x1000 667#define GL_TEXTURE_HEIGHT 0x1001 668#define GL_TEXTURE_BORDER 0x1005 669#define GL_TEXTURE_COMPONENTS 0x1003 670#define GL_TEXTURE_RED_SIZE 0x805C 671#define GL_TEXTURE_GREEN_SIZE 0x805D 672#define GL_TEXTURE_BLUE_SIZE 0x805E 673#define GL_TEXTURE_ALPHA_SIZE 0x805F 674#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 675#define GL_TEXTURE_INTENSITY_SIZE 0x8061 676#define GL_NEAREST_MIPMAP_NEAREST 0x2700 677#define GL_NEAREST_MIPMAP_LINEAR 0x2702 678#define GL_LINEAR_MIPMAP_NEAREST 0x2701 679#define GL_LINEAR_MIPMAP_LINEAR 0x2703 680#define GL_OBJECT_LINEAR 0x2401 681#define GL_OBJECT_PLANE 0x2501 682#define GL_EYE_LINEAR 0x2400 683#define GL_EYE_PLANE 0x2502 684#define GL_SPHERE_MAP 0x2402 685#define GL_DECAL 0x2101 686#define GL_MODULATE 0x2100 687#define GL_NEAREST 0x2600 688#define GL_REPEAT 0x2901 689#define GL_CLAMP 0x2900 690#define GL_S 0x2000 691#define GL_T 0x2001 692#define GL_R 0x2002 693#define GL_Q 0x2003 694 695/* Utility */ 696#define GL_VENDOR 0x1F00 697#define GL_RENDERER 0x1F01 698#define GL_VERSION 0x1F02 699#define GL_EXTENSIONS 0x1F03 700 701/* Errors */ 702#define GL_NO_ERROR 0 703#define GL_INVALID_ENUM 0x0500 704#define GL_INVALID_VALUE 0x0501 705#define GL_INVALID_OPERATION 0x0502 706#define GL_STACK_OVERFLOW 0x0503 707#define GL_STACK_UNDERFLOW 0x0504 708#define GL_OUT_OF_MEMORY 0x0505 709 710/* glPush/PopAttrib bits */ 711#define GL_CURRENT_BIT 0x00000001 712#define GL_POINT_BIT 0x00000002 713#define GL_LINE_BIT 0x00000004 714#define GL_POLYGON_BIT 0x00000008 715#define GL_POLYGON_STIPPLE_BIT 0x00000010 716#define GL_PIXEL_MODE_BIT 0x00000020 717#define GL_LIGHTING_BIT 0x00000040 718#define GL_FOG_BIT 0x00000080 719#define GL_DEPTH_BUFFER_BIT 0x00000100 720#define GL_ACCUM_BUFFER_BIT 0x00000200 721#define GL_STENCIL_BUFFER_BIT 0x00000400 722#define GL_VIEWPORT_BIT 0x00000800 723#define GL_TRANSFORM_BIT 0x00001000 724#define GL_ENABLE_BIT 0x00002000 725#define GL_COLOR_BUFFER_BIT 0x00004000 726#define GL_HINT_BIT 0x00008000 727#define GL_EVAL_BIT 0x00010000 728#define GL_LIST_BIT 0x00020000 729#define GL_TEXTURE_BIT 0x00040000 730#define GL_SCISSOR_BIT 0x00080000 731#define GL_ALL_ATTRIB_BITS 0x000FFFFF 732 733 734/* OpenGL 1.1 */ 735#define GL_PROXY_TEXTURE_1D 0x8063 736#define GL_PROXY_TEXTURE_2D 0x8064 737#define GL_TEXTURE_PRIORITY 0x8066 738#define GL_TEXTURE_RESIDENT 0x8067 739#define GL_TEXTURE_BINDING_1D 0x8068 740#define GL_TEXTURE_BINDING_2D 0x8069 741#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 742#define GL_ALPHA4 0x803B 743#define GL_ALPHA8 0x803C 744#define GL_ALPHA12 0x803D 745#define GL_ALPHA16 0x803E 746#define GL_LUMINANCE4 0x803F 747#define GL_LUMINANCE8 0x8040 748#define GL_LUMINANCE12 0x8041 749#define GL_LUMINANCE16 0x8042 750#define GL_LUMINANCE4_ALPHA4 0x8043 751#define GL_LUMINANCE6_ALPHA2 0x8044 752#define GL_LUMINANCE8_ALPHA8 0x8045 753#define GL_LUMINANCE12_ALPHA4 0x8046 754#define GL_LUMINANCE12_ALPHA12 0x8047 755#define GL_LUMINANCE16_ALPHA16 0x8048 756#define GL_INTENSITY 0x8049 757#define GL_INTENSITY4 0x804A 758#define GL_INTENSITY8 0x804B 759#define GL_INTENSITY12 0x804C 760#define GL_INTENSITY16 0x804D 761#define GL_R3_G3_B2 0x2A10 762#define GL_RGB4 0x804F 763#define GL_RGB5 0x8050 764#define GL_RGB8 0x8051 765#define GL_RGB10 0x8052 766#define GL_RGB12 0x8053 767#define GL_RGB16 0x8054 768#define GL_RGBA2 0x8055 769#define GL_RGBA4 0x8056 770#define GL_RGB5_A1 0x8057 771#define GL_RGBA8 0x8058 772#define GL_RGB10_A2 0x8059 773#define GL_RGBA12 0x805A 774#define GL_RGBA16 0x805B 775#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 776#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 777#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF 778#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF 779 780 781 782/* 783 * Miscellaneous 784 */ 785 786#ifndef SDL_OPENGL_1_NO_PROTOTYPES 787GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); 788 789GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); 790 791GLAPI void GLAPIENTRY glClear( GLbitfield mask ); 792 793GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); 794 795GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); 796 797GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); 798 799GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); 800 801GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); 802 803GLAPI void GLAPIENTRY glCullFace( GLenum mode ); 804 805GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); 806 807GLAPI void GLAPIENTRY glPointSize( GLfloat size ); 808 809GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); 810 811GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); 812 813GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); 814 815GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); 816 817GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); 818 819GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); 820 821GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); 822 823GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); 824 825GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height); 826 827GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); 828 829GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); 830 831GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); 832 833GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); 834 835GLAPI void GLAPIENTRY glEnable( GLenum cap ); 836 837GLAPI void GLAPIENTRY glDisable( GLenum cap ); 838 839GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); 840 841 842GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ 843 844GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ 845 846 847GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); 848 849GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); 850 851GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); 852 853GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); 854 855 856GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); 857 858GLAPI void GLAPIENTRY glPopAttrib( void ); 859 860 861GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ 862 863GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ 864 865 866GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); 867 868GLAPI GLenum GLAPIENTRY glGetError( void ); 869 870GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); 871 872GLAPI void GLAPIENTRY glFinish( void ); 873 874GLAPI void GLAPIENTRY glFlush( void ); 875 876GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); 877 878 879/* 880 * Depth Buffer 881 */ 882 883GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); 884 885GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); 886 887GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); 888 889GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); 890 891 892/* 893 * Accumulation Buffer 894 */ 895 896GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); 897 898GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); 899 900 901/* 902 * Transformation 903 */ 904 905GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); 906 907GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, 908 GLdouble bottom, GLdouble top, 909 GLdouble near_val, GLdouble far_val ); 910 911GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, 912 GLdouble bottom, GLdouble top, 913 GLdouble near_val, GLdouble far_val ); 914 915GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, 916 GLsizei width, GLsizei height ); 917 918GLAPI void GLAPIENTRY glPushMatrix( void ); 919 920GLAPI void GLAPIENTRY glPopMatrix( void ); 921 922GLAPI void GLAPIENTRY glLoadIdentity( void ); 923 924GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); 925GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); 926 927GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); 928GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); 929 930GLAPI void GLAPIENTRY glRotated( GLdouble angle, 931 GLdouble x, GLdouble y, GLdouble z ); 932GLAPI void GLAPIENTRY glRotatef( GLfloat angle, 933 GLfloat x, GLfloat y, GLfloat z ); 934 935GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); 936GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); 937 938GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); 939GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); 940 941 942/* 943 * Display Lists 944 */ 945 946GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); 947 948GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); 949 950GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); 951 952GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); 953 954GLAPI void GLAPIENTRY glEndList( void ); 955 956GLAPI void GLAPIENTRY glCallList( GLuint list ); 957 958GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, 959 const GLvoid *lists ); 960 961GLAPI void GLAPIENTRY glListBase( GLuint base ); 962 963 964/* 965 * Drawing Functions 966 */ 967 968GLAPI void GLAPIENTRY glBegin( GLenum mode ); 969 970GLAPI void GLAPIENTRY glEnd( void ); 971 972 973GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); 974GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); 975GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); 976GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); 977 978GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); 979GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); 980GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); 981GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); 982 983GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 984GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 985GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); 986GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); 987 988GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); 989GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); 990GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); 991GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); 992 993GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); 994GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); 995GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); 996GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); 997 998GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); 999GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); 1000GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); 1001GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); 1002 1003 1004GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); 1005GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); 1006GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); 1007GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); 1008GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); 1009 1010GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); 1011GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); 1012GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); 1013GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); 1014GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); 1015 1016 1017GLAPI void GLAPIENTRY glIndexd( GLdouble c ); 1018GLAPI void GLAPIENTRY glIndexf( GLfloat c ); 1019GLAPI void GLAPIENTRY glIndexi( GLint c ); 1020GLAPI void GLAPIENTRY glIndexs( GLshort c ); 1021GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ 1022 1023GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); 1024GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); 1025GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); 1026GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); 1027GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ 1028 1029GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); 1030GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); 1031GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); 1032GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); 1033GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); 1034GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); 1035GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); 1036GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); 1037 1038GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, 1039 GLbyte blue, GLbyte alpha ); 1040GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, 1041 GLdouble blue, GLdouble alpha ); 1042GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, 1043 GLfloat blue, GLfloat alpha ); 1044GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, 1045 GLint blue, GLint alpha ); 1046GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, 1047 GLshort blue, GLshort alpha ); 1048GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, 1049 GLubyte blue, GLubyte alpha ); 1050GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, 1051 GLuint blue, GLuint alpha ); 1052GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, 1053 GLushort blue, GLushort alpha ); 1054 1055 1056GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); 1057GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); 1058GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); 1059GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); 1060GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); 1061GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); 1062GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); 1063GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); 1064 1065GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); 1066GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); 1067GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); 1068GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); 1069GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); 1070GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); 1071GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); 1072GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); 1073 1074 1075GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); 1076GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); 1077GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); 1078GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); 1079 1080GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); 1081GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); 1082GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); 1083GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); 1084 1085GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); 1086GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); 1087GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); 1088GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); 1089 1090GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 1091GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 1092GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); 1093GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); 1094 1095GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); 1096GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); 1097GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); 1098GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); 1099 1100GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); 1101GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); 1102GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); 1103GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); 1104 1105GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); 1106GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); 1107GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); 1108GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); 1109 1110GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); 1111GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); 1112GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); 1113GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); 1114 1115 1116GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); 1117GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); 1118GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); 1119GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); 1120 1121GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); 1122GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); 1123GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); 1124GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); 1125 1126GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 1127GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 1128GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); 1129GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); 1130 1131GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); 1132GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); 1133GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); 1134GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); 1135 1136GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); 1137GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); 1138GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); 1139GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); 1140 1141GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); 1142GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); 1143GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); 1144GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); 1145 1146 1147GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); 1148GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); 1149GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); 1150GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); 1151 1152 1153GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); 1154GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); 1155GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); 1156GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); 1157 1158 1159/* 1160 * Vertex Arrays (1.1) 1161 */ 1162 1163GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, 1164 GLsizei stride, const GLvoid *ptr ); 1165 1166GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, 1167 const GLvoid *ptr ); 1168 1169GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, 1170 GLsizei stride, const GLvoid *ptr ); 1171 1172GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, 1173 const GLvoid *ptr ); 1174 1175GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, 1176 GLsizei stride, const GLvoid *ptr ); 1177 1178GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); 1179 1180GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); 1181 1182GLAPI void GLAPIENTRY glArrayElement( GLint i ); 1183 1184GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); 1185 1186GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, 1187 GLenum type, const GLvoid *indices ); 1188 1189GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, 1190 const GLvoid *pointer ); 1191 1192/* 1193 * Lighting 1194 */ 1195 1196GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); 1197 1198GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); 1199GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); 1200GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, 1201 const GLfloat *params ); 1202GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, 1203 const GLint *params ); 1204 1205GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, 1206 GLfloat *params ); 1207GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, 1208 GLint *params ); 1209 1210GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); 1211GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); 1212GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); 1213GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); 1214 1215GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); 1216GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); 1217GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); 1218GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); 1219 1220GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); 1221GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); 1222 1223GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); 1224 1225 1226/* 1227 * Raster functions 1228 */ 1229 1230GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); 1231 1232GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); 1233GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); 1234 1235GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); 1236GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); 1237 1238GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, 1239 const GLfloat *values ); 1240GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, 1241 const GLuint *values ); 1242GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, 1243 const GLushort *values ); 1244 1245GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); 1246GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); 1247GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); 1248 1249GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, 1250 GLfloat xorig, GLfloat yorig, 1251 GLfloat xmove, GLfloat ymove, 1252 const GLubyte *bitmap ); 1253 1254GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, 1255 GLsizei width, GLsizei height, 1256 GLenum format, GLenum type, 1257 GLvoid *pixels ); 1258 1259GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, 1260 GLenum format, GLenum type, 1261 const GLvoid *pixels ); 1262 1263GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, 1264 GLsizei width, GLsizei height, 1265 GLenum type ); 1266 1267/* 1268 * Stenciling 1269 */ 1270 1271GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); 1272 1273GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); 1274 1275GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); 1276 1277GLAPI void GLAPIENTRY glClearStencil( GLint s ); 1278 1279 1280 1281/* 1282 * Texture mapping 1283 */ 1284 1285GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); 1286GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); 1287GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); 1288 1289GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); 1290GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); 1291GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); 1292 1293GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); 1294GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); 1295GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); 1296 1297 1298GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); 1299GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); 1300 1301GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); 1302GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); 1303 1304GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); 1305GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); 1306 1307 1308GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); 1309GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); 1310 1311GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, 1312 const GLfloat *params ); 1313GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, 1314 const GLint *params ); 1315 1316GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, 1317 GLenum pname, GLfloat *params); 1318GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, 1319 GLenum pname, GLint *params ); 1320 1321GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, 1322 GLenum pname, GLfloat *params ); 1323GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, 1324 GLenum pname, GLint *params ); 1325 1326 1327GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, 1328 GLint internalFormat, 1329 GLsizei width, GLint border, 1330 GLenum format, GLenum type, 1331 const GLvoid *pixels ); 1332 1333GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, 1334 GLint internalFormat, 1335 GLsizei width, GLsizei height, 1336 GLint border, GLenum format, GLenum type, 1337 const GLvoid *pixels ); 1338 1339GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, 1340 GLenum format, GLenum type, 1341 GLvoid *pixels ); 1342 1343 1344/* 1.1 functions */ 1345 1346GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); 1347 1348GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); 1349 1350GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); 1351 1352GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, 1353 const GLuint *textures, 1354 const GLclampf *priorities ); 1355 1356GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, 1357 const GLuint *textures, 1358 GLboolean *residences ); 1359 1360GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); 1361 1362 1363GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, 1364 GLint xoffset, 1365 GLsizei width, GLenum format, 1366 GLenum type, const GLvoid *pixels ); 1367 1368 1369GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, 1370 GLint xoffset, GLint yoffset, 1371 GLsizei width, GLsizei height, 1372 GLenum format, GLenum type, 1373 const GLvoid *pixels ); 1374 1375 1376GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, 1377 GLenum internalformat, 1378 GLint x, GLint y, 1379 GLsizei width, GLint border ); 1380 1381 1382GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, 1383 GLenum internalformat, 1384 GLint x, GLint y, 1385 GLsizei width, GLsizei height, 1386 GLint border ); 1387 1388 1389GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, 1390 GLint xoffset, GLint x, GLint y, 1391 GLsizei width ); 1392 1393 1394GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, 1395 GLint xoffset, GLint yoffset, 1396 GLint x, GLint y, 1397 GLsizei width, GLsizei height ); 1398 1399 1400/* 1401 * Evaluators 1402 */ 1403 1404GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, 1405 GLint stride, 1406 GLint order, const GLdouble *points ); 1407GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, 1408 GLint stride, 1409 GLint order, const GLfloat *points ); 1410 1411GLAPI void GLAPIENTRY glMap2d( GLenum target, 1412 GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, 1413 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, 1414 const GLdouble *points ); 1415GLAPI void GLAPIENTRY glMap2f( GLenum target, 1416 GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, 1417 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, 1418 const GLfloat *points ); 1419 1420GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); 1421GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); 1422GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); 1423 1424GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); 1425GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); 1426 1427GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); 1428GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); 1429 1430GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); 1431GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); 1432 1433GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); 1434GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); 1435 1436GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); 1437GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); 1438 1439GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, 1440 GLint vn, GLdouble v1, GLdouble v2 ); 1441GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, 1442 GLint vn, GLfloat v1, GLfloat v2 ); 1443 1444GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); 1445 1446GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); 1447 1448GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); 1449 1450GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); 1451 1452 1453/* 1454 * Fog 1455 */ 1456 1457GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); 1458 1459GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); 1460 1461GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); 1462 1463GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); 1464 1465 1466/* 1467 * Selection and Feedback 1468 */ 1469 1470GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); 1471 1472GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); 1473 1474GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); 1475 1476GLAPI void GLAPIENTRY glInitNames( void ); 1477 1478GLAPI void GLAPIENTRY glLoadName( GLuint name ); 1479 1480GLAPI void GLAPIENTRY glPushName( GLuint name ); 1481 1482GLAPI void GLAPIENTRY glPopName( void ); 1483 1484#endif 1485#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS 1486 1487typedef void (APIENTRYP PFNGLCLEARINDEXPROC) ( GLfloat c ); 1488 1489typedef void (APIENTRYP PFNGLCLEARCOLORPROC) ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); 1490 1491typedef void (APIENTRYP PFNGLCLEARPROC) ( GLbitfield mask ); 1492 1493typedef void (APIENTRYP PFNGLINDEXMASKPROC) ( GLuint mask ); 1494 1495typedef void (APIENTRYP PFNGLCOLORMASKPROC) ( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); 1496 1497typedef void (APIENTRYP PFNGLALPHAFUNCPROC) ( GLenum func, GLclampf ref ); 1498 1499typedef void (APIENTRYP PFNGLBLENDFUNCPROC) ( GLenum sfactor, GLenum dfactor ); 1500 1501typedef void (APIENTRYP PFNGLLOGICOPPROC) ( GLenum opcode ); 1502 1503typedef void (APIENTRYP PFNGLCULLFACEPROC) ( GLenum mode ); 1504 1505typedef void (APIENTRYP PFNGLFRONTFACEPROC) ( GLenum mode ); 1506 1507typedef void (APIENTRYP PFNGLPOINTSIZEPROC) ( GLfloat size ); 1508 1509typedef void (APIENTRYP PFNGLLINEWIDTHPROC) ( GLfloat width ); 1510 1511typedef void (APIENTRYP PFNGLLINESTIPPLEPROC) ( GLint factor, GLushort pattern ); 1512 1513typedef void (APIENTRYP PFNGLPOLYGONMODEPROC) ( GLenum face, GLenum mode ); 1514 1515typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC) ( GLfloat factor, GLfloat units ); 1516 1517typedef void (APIENTRYP PFNGLPOLYGONSTIPPLEPROC) ( const GLubyte *mask ); 1518 1519typedef void (APIENTRYP PFNGLGETPOLYGONSTIPPLEPROC) ( GLubyte *mask ); 1520 1521typedef void (APIENTRYP PFNGLEDGEFLAGPROC) ( GLboolean flag ); 1522 1523typedef void (APIENTRYP PFNGLEDGEFLAGVPROC) ( const GLboolean *flag ); 1524 1525typedef void (APIENTRYP PFNGLSCISSORPROC) ( GLint x, GLint y, GLsizei width, GLsizei height); 1526 1527typedef void (APIENTRYP PFNGLCLIPPLANEPROC) ( GLenum plane, const GLdouble *equation ); 1528 1529typedef void (APIENTRYP PFNGLGETCLIPPLANEPROC) ( GLenum plane, GLdouble *equation ); 1530 1531typedef void (APIENTRYP PFNGLDRAWBUFFERPROC) ( GLenum mode ); 1532 1533typedef void (APIENTRYP PFNGLREADBUFFERPROC) ( GLenum mode ); 1534 1535typedef void (APIENTRYP PFNGLENABLEPROC) ( GLenum cap ); 1536 1537typedef void (APIENTRYP PFNGLDISABLEPROC) ( GLenum cap ); 1538 1539typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC) ( GLenum cap ); 1540 1541 1542typedef void (APIENTRYP PFNGLENABLECLIENTSTATEPROC) ( GLenum cap ); /* 1.1 */ 1543 1544typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEPROC) ( GLenum cap ); /* 1.1 */ 1545 1546 1547typedef void (APIENTRYP PFNGLGETBOOLEANVPROC) ( GLenum pname, GLboolean *params ); 1548 1549typedef void (APIENTRYP PFNGLGETDOUBLEVPROC) ( GLenum pname, GLdouble *params ); 1550 1551typedef void (APIENTRYP PFNGLGETFLOATVPROC) ( GLenum pname, GLfloat *params ); 1552 1553typedef void (APIENTRYP PFNGLGETINTEGERVPROC) ( GLenum pname, GLint *params ); 1554 1555 1556typedef void (APIENTRYP PFNGLPUSHATTRIBPROC) ( GLbitfield mask ); 1557 1558typedef void (APIENTRYP PFNGLPOPATTRIBPROC) ( void ); 1559 1560 1561typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBPROC) ( GLbitfield mask ); /* 1.1 */ 1562 1563typedef void (APIENTRYP PFNGLPOPCLIENTATTRIBPROC) ( void ); /* 1.1 */ 1564 1565 1566typedef GLint (APIENTRYP PFNGLRENDERMODEPROC) ( GLenum mode ); 1567 1568typedef GLenum (APIENTRYP PFNGLGETERRORPROC) ( void ); 1569 1570typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGPROC) ( GLenum name ); 1571 1572typedef void (APIENTRYP PFNGLFINISHPROC) ( void ); 1573 1574typedef void (APIENTRYP PFNGLFLUSHPROC) ( void ); 1575 1576typedef void (APIENTRYP PFNGLHINTPROC) ( GLenum target, GLenum mode ); 1577 1578 1579/* 1580 * Depth Buffer 1581 */ 1582 1583typedef void (APIENTRYP PFNGLCLEARDEPTHPROC) ( GLclampd depth ); 1584 1585typedef void (APIENTRYP PFNGLDEPTHFUNCPROC) ( GLenum func ); 1586 1587typedef void (APIENTRYP PFNGLDEPTHMASKPROC) ( GLboolean flag ); 1588 1589typedef void (APIENTRYP PFNGLDEPTHRANGEPROC) ( GLclampd near_val, GLclampd far_val ); 1590 1591 1592/* 1593 * Accumulation Buffer 1594 */ 1595 1596typedef void (APIENTRYP PFNGLCLEARACCUMPROC) ( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); 1597 1598typedef void (APIENTRYP PFNGLACCUMPROC) ( GLenum op, GLfloat value ); 1599 1600 1601/* 1602 * Transformation 1603 */ 1604 1605typedef void (APIENTRYP PFNGLMATRIXMODEPROC) ( GLenum mode ); 1606 1607typedef void (APIENTRYP PFNGLORTHOPROC) ( GLdouble left, GLdouble right, 1608 GLdouble bottom, GLdouble top, 1609 GLdouble near_val, GLdouble far_val ); 1610 1611typedef void (APIENTRYP PFNGLFRUSTUMPROC) ( GLdouble left, GLdouble right, 1612 GLdouble bottom, GLdouble top, 1613 GLdouble near_val, GLdouble far_val ); 1614 1615typedef void (APIENTRYP PFNGLVIEWPORTPROC) ( GLint x, GLint y, 1616 GLsizei width, GLsizei height ); 1617 1618typedef void (APIENTRYP PFNGLPUSHMATRIXPROC) ( void ); 1619 1620typedef void (APIENTRYP PFNGLPOPMATRIXPROC) ( void ); 1621 1622typedef void (APIENTRYP PFNGLLOADIDENTITYPROC) ( void ); 1623 1624typedef void (APIENTRYP PFNGLLOADMATRIXDPROC) ( const GLdouble *m ); 1625typedef void (APIENTRYP PFNGLLOADMATRIXFPROC) ( const GLfloat *m ); 1626 1627typedef void (APIENTRYP PFNGLMULTMATRIXDPROC) ( const GLdouble *m ); 1628typedef void (APIENTRYP PFNGLMULTMATRIXFPROC) ( const GLfloat *m ); 1629 1630typedef void (APIENTRYP PFNGLROTATEDPROC) ( GLdouble angle, 1631 GLdouble x, GLdouble y, GLdouble z ); 1632typedef void (APIENTRYP PFNGLROTATEFPROC) ( GLfloat angle, 1633 GLfloat x, GLfloat y, GLfloat z ); 1634 1635typedef void (APIENTRYP PFNGLSCALEDPROC) ( GLdouble x, GLdouble y, GLdouble z ); 1636typedef void (APIENTRYP PFNGLSCALEFPROC) ( GLfloat x, GLfloat y, GLfloat z ); 1637 1638typedef void (APIENTRYP PFNGLTRANSLATEDPROC) ( GLdouble x, GLdouble y, GLdouble z ); 1639typedef void (APIENTRYP PFNGLTRANSLATEFPROC) ( GLfloat x, GLfloat y, GLfloat z ); 1640 1641 1642/* 1643 * Display Lists 1644 */ 1645 1646typedef GLboolean (APIENTRYP PFNGLISLISTPROC) ( GLuint list ); 1647 1648typedef void (APIENTRYP PFNGLDELETELISTSPROC) ( GLuint list, GLsizei range ); 1649 1650typedef GLuint (APIENTRYP PFNGLGENLISTSPROC) ( GLsizei range ); 1651 1652typedef void (APIENTRYP PFNGLNEWLISTPROC) ( GLuint list, GLenum mode ); 1653 1654typedef void (APIENTRYP PFNGLENDLISTPROC) ( void ); 1655 1656typedef void (APIENTRYP PFNGLCALLLISTPROC) ( GLuint list ); 1657 1658typedef void (APIENTRYP PFNGLCALLLISTSPROC) ( GLsizei n, GLenum type, 1659 const GLvoid *lists ); 1660 1661typedef void (APIENTRYP PFNGLLISTBASEPROC) ( GLuint base ); 1662 1663 1664/* 1665 * Drawing Functions 1666 */ 1667 1668typedef void (APIENTRYP PFNGLBEGINPROC) ( GLenum mode ); 1669 1670typedef void (APIENTRYP PFNGLENDPROC) ( void ); 1671 1672 1673typedef void (APIENTRYP PFNGLVERTEX2DPROC) ( GLdouble x, GLdouble y ); 1674typedef void (APIENTRYP PFNGLVERTEX2FPROC) ( GLfloat x, GLfloat y ); 1675typedef void (APIENTRYP PFNGLVERTEX2IPROC) ( GLint x, GLint y ); 1676typedef void (APIENTRYP PFNGLVERTEX2SPROC) ( GLshort x, GLshort y ); 1677 1678typedef void (APIENTRYP PFNGLVERTEX3DPROC) ( GLdouble x, GLdouble y, GLdouble z ); 1679typedef void (APIENTRYP PFNGLVERTEX3FPROC) ( GLfloat x, GLfloat y, GLfloat z ); 1680typedef void (APIENTRYP PFNGLVERTEX3IPROC) ( GLint x, GLint y, GLint z ); 1681typedef void (APIENTRYP PFNGLVERTEX3SPROC) ( GLshort x, GLshort y, GLshort z ); 1682 1683typedef void (APIENTRYP PFNGLVERTEX4DPROC) ( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 1684typedef void (APIENTRYP PFNGLVERTEX4FPROC) ( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 1685typedef void (APIENTRYP PFNGLVERTEX4IPROC) ( GLint x, GLint y, GLint z, GLint w ); 1686typedef void (APIENTRYP PFNGLVERTEX4SPROC) ( GLshort x, GLshort y, GLshort z, GLshort w ); 1687 1688typedef void (APIENTRYP PFNGLVERTEX2DVPROC) ( const GLdouble *v ); 1689typedef void (APIENTRYP PFNGLVERTEX2FVPROC) ( const GLfloat *v ); 1690typedef void (APIENTRYP PFNGLVERTEX2IVPROC) ( const GLint *v ); 1691typedef void (APIENTRYP PFNGLVERTEX2SVPROC) ( const GLshort *v ); 1692 1693typedef void (APIENTRYP PFNGLVERTEX3DVPROC) ( const GLdouble *v ); 1694typedef void (APIENTRYP PFNGLVERTEX3FVPROC) ( const GLfloat *v ); 1695typedef void (APIENTRYP PFNGLVERTEX3IVPROC) ( const GLint *v ); 1696typedef void (APIENTRYP PFNGLVERTEX3SVPROC) ( const GLshort *v ); 1697 1698typedef void (APIENTRYP PFNGLVERTEX4DVPROC) ( const GLdouble *v ); 1699typedef void (APIENTRYP PFNGLVERTEX4FVPROC) ( const GLfloat *v ); 1700typedef void (APIENTRYP PFNGLVERTEX4IVPROC) ( const GLint *v ); 1701typedef void (APIENTRYP PFNGLVERTEX4SVPROC) ( const GLshort *v ); 1702 1703 1704typedef void (APIENTRYP PFNGLNORMAL3BPROC) ( GLbyte nx, GLbyte ny, GLbyte nz ); 1705typedef void (APIENTRYP PFNGLNORMAL3DPROC) ( GLdouble nx, GLdouble ny, GLdouble nz ); 1706typedef void (APIENTRYP PFNGLNORMAL3FPROC) ( GLfloat nx, GLfloat ny, GLfloat nz ); 1707typedef void (APIENTRYP PFNGLNORMAL3IPROC) ( GLint nx, GLint ny, GLint nz ); 1708typedef void (APIENTRYP PFNGLNORMAL3SPROC) ( GLshort nx, GLshort ny, GLshort nz ); 1709 1710typedef void (APIENTRYP PFNGLNORMAL3BVPROC) ( const GLbyte *v ); 1711typedef void (APIENTRYP PFNGLNORMAL3DVPROC) ( const GLdouble *v ); 1712typedef void (APIENTRYP PFNGLNORMAL3FVPROC) ( const GLfloat *v ); 1713typedef void (APIENTRYP PFNGLNORMAL3IVPROC) ( const GLint *v ); 1714typedef void (APIENTRYP PFNGLNORMAL3SVPROC) ( const GLshort *v ); 1715 1716 1717typedef void (APIENTRYP PFNGLINDEXDPROC) ( GLdouble c ); 1718typedef void (APIENTRYP PFNGLINDEXFPROC) ( GLfloat c ); 1719typedef void (APIENTRYP PFNGLINDEXIPROC) ( GLint c ); 1720typedef void (APIENTRYP PFNGLINDEXSPROC) ( GLshort c ); 1721typedef void (APIENTRYP PFNGLINDEXUBPROC) ( GLubyte c ); /* 1.1 */ 1722 1723typedef void (APIENTRYP PFNGLINDEXDVPROC) ( const GLdouble *c ); 1724typedef void (APIENTRYP PFNGLINDEXFVPROC) ( const GLfloat *c ); 1725typedef void (APIENTRYP PFNGLINDEXIVPROC) ( const GLint *c ); 1726typedef void (APIENTRYP PFNGLINDEXSVPROC) ( const GLshort *c ); 1727typedef void (APIENTRYP PFNGLINDEXUBVPROC) ( const GLubyte *c ); /* 1.1 */ 1728 1729typedef void (APIENTRYP PFNGLCOLOR3BPROC) ( GLbyte red, GLbyte green, GLbyte blue ); 1730typedef void (APIENTRYP PFNGLCOLOR3DPROC) ( GLdouble red, GLdouble green, GLdouble blue ); 1731typedef void (APIENTRYP PFNGLCOLOR3FPROC) ( GLfloat red, GLfloat green, GLfloat blue ); 1732typedef void (APIENTRYP PFNGLCOLOR3IPROC) ( GLint red, GLint green, GLint blue ); 1733typedef void (APIENTRYP PFNGLCOLOR3SPROC) ( GLshort red, GLshort green, GLshort blue ); 1734typedef void (APIENTRYP PFNGLCOLOR3UBPROC) ( GLubyte red, GLubyte green, GLubyte blue ); 1735typedef void (APIENTRYP PFNGLCOLOR3UIPROC) ( GLuint red, GLuint green, GLuint blue ); 1736typedef void (APIENTRYP PFNGLCOLOR3USPROC) ( GLushort red, GLushort green, GLushort blue ); 1737 1738typedef void (APIENTRYP PFNGLCOLOR4BPROC) ( GLbyte red, GLbyte green, 1739 GLbyte blue, GLbyte alpha ); 1740typedef void (APIENTRYP PFNGLCOLOR4DPROC) ( GLdouble red, GLdouble green, 1741 GLdouble blue, GLdouble alpha ); 1742typedef void (APIENTRYP PFNGLCOLOR4FPROC) ( GLfloat red, GLfloat green, 1743 GLfloat blue, GLfloat alpha ); 1744typedef void (APIENTRYP PFNGLCOLOR4IPROC) ( GLint red, GLint green, 1745 GLint blue, GLint alpha ); 1746typedef void (APIENTRYP PFNGLCOLOR4SPROC) ( GLshort red, GLshort green, 1747 GLshort blue, GLshort alpha ); 1748typedef void (APIENTRYP PFNGLCOLOR4UBPROC) ( GLubyte red, GLubyte green, 1749 GLubyte blue, GLubyte alpha ); 1750typedef void (APIENTRYP PFNGLCOLOR4UIPROC) ( GLuint red, GLuint green, 1751 GLuint blue, GLuint alpha ); 1752typedef void (APIENTRYP PFNGLCOLOR4USPROC) ( GLushort red, GLushort green, 1753 GLushort blue, GLushort alpha ); 1754 1755 1756typedef void (APIENTRYP PFNGLCOLOR3BVPROC) ( const GLbyte *v ); 1757typedef void (APIENTRYP PFNGLCOLOR3DVPROC) ( const GLdouble *v ); 1758typedef void (APIENTRYP PFNGLCOLOR3FVPROC) ( const GLfloat *v ); 1759typedef void (APIENTRYP PFNGLCOLOR3IVPROC) ( const GLint *v ); 1760typedef void (APIENTRYP PFNGLCOLOR3SVPROC) ( const GLshort *v ); 1761typedef void (APIENTRYP PFNGLCOLOR3UBVPROC) ( const GLubyte *v ); 1762typedef void (APIENTRYP PFNGLCOLOR3UIVPROC) ( const GLuint *v ); 1763typedef void (APIENTRYP PFNGLCOLOR3USVPROC) ( const GLushort *v ); 1764 1765typedef void (APIENTRYP PFNGLCOLOR4BVPROC) ( const GLbyte *v ); 1766typedef void (APIENTRYP PFNGLCOLOR4DVPROC) ( const GLdouble *v ); 1767typedef void (APIENTRYP PFNGLCOLOR4FVPROC) ( const GLfloat *v ); 1768typedef void (APIENTRYP PFNGLCOLOR4IVPROC) ( const GLint *v ); 1769typedef void (APIENTRYP PFNGLCOLOR4SVPROC) ( const GLshort *v ); 1770typedef void (APIENTRYP PFNGLCOLOR4UBVPROC) ( const GLubyte *v ); 1771typedef void (APIENTRYP PFNGLCOLOR4UIVPROC) ( const GLuint *v ); 1772typedef void (APIENTRYP PFNGLCOLOR4USVPROC) ( const GLushort *v ); 1773 1774 1775typedef void (APIENTRYP PFNGLTEXCOORD1DPROC) ( GLdouble s ); 1776typedef void (APIENTRYP PFNGLTEXCOORD1FPROC) ( GLfloat s ); 1777typedef void (APIENTRYP PFNGLTEXCOORD1IPROC) ( GLint s ); 1778typedef void (APIENTRYP PFNGLTEXCOORD1SPROC) ( GLshort s ); 1779 1780typedef void (APIENTRYP PFNGLTEXCOORD2DPROC) ( GLdouble s, GLdouble t ); 1781typedef void (APIENTRYP PFNGLTEXCOORD2FPROC) ( GLfloat s, GLfloat t ); 1782typedef void (APIENTRYP PFNGLTEXCOORD2IPROC) ( GLint s, GLint t ); 1783typedef void (APIENTRYP PFNGLTEXCOORD2SPROC) ( GLshort s, GLshort t ); 1784 1785typedef void (APIENTRYP PFNGLTEXCOORD3DPROC) ( GLdouble s, GLdouble t, GLdouble r ); 1786typedef void (APIENTRYP PFNGLTEXCOORD3FPROC) ( GLfloat s, GLfloat t, GLfloat r ); 1787typedef void (APIENTRYP PFNGLTEXCOORD3IPROC) ( GLint s, GLint t, GLint r ); 1788typedef void (APIENTRYP PFNGLTEXCOORD3SPROC) ( GLshort s, GLshort t, GLshort r ); 1789 1790typedef void (APIENTRYP PFNGLTEXCOORD4DPROC) ( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 1791typedef void (APIENTRYP PFNGLTEXCOORD4FPROC) ( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 1792typedef void (APIENTRYP PFNGLTEXCOORD4IPROC) ( GLint s, GLint t, GLint r, GLint q ); 1793typedef void (APIENTRYP PFNGLTEXCOORD4SPROC) ( GLshort s, GLshort t, GLshort r, GLshort q ); 1794 1795typedef void (APIENTRYP PFNGLTEXCOORD1DVPROC) ( const GLdouble *v ); 1796typedef void (APIENTRYP PFNGLTEXCOORD1FVPROC) ( const GLfloat *v ); 1797typedef void (APIENTRYP PFNGLTEXCOORD1IVPROC) ( const GLint *v ); 1798typedef void (APIENTRYP PFNGLTEXCOORD1SVPROC) ( const GLshort *v ); 1799 1800typedef void (APIENTRYP PFNGLTEXCOORD2DVPROC) ( const GLdouble *v ); 1801typedef void (APIENTRYP PFNGLTEXCOORD2FVPROC) ( const GLfloat *v ); 1802typedef void (APIENTRYP PFNGLTEXCOORD2IVPROC) ( const GLint *v ); 1803typedef void (APIENTRYP PFNGLTEXCOORD2SVPROC) ( const GLshort *v ); 1804 1805typedef void (APIENTRYP PFNGLTEXCOORD3DVPROC) ( const GLdouble *v ); 1806typedef void (APIENTRYP PFNGLTEXCOORD3FVPROC) ( const GLfloat *v ); 1807typedef void (APIENTRYP PFNGLTEXCOORD3IVPROC) ( const GLint *v ); 1808typedef void (APIENTRYP PFNGLTEXCOORD3SVPROC) ( const GLshort *v ); 1809 1810typedef void (APIENTRYP PFNGLTEXCOORD4DVPROC) ( const GLdouble *v ); 1811typedef void (APIENTRYP PFNGLTEXCOORD4FVPROC) ( const GLfloat *v ); 1812typedef void (APIENTRYP PFNGLTEXCOORD4IVPROC) ( const GLint *v ); 1813typedef void (APIENTRYP PFNGLTEXCOORD4SVPROC) ( const GLshort *v ); 1814 1815 1816typedef void (APIENTRYP PFNGLRASTERPOS2DPROC) ( GLdouble x, GLdouble y ); 1817typedef void (APIENTRYP PFNGLRASTERPOS2FPROC) ( GLfloat x, GLfloat y ); 1818typedef void (APIENTRYP PFNGLRASTERPOS2IPROC) ( GLint x, GLint y ); 1819typedef void (APIENTRYP PFNGLRASTERPOS2SPROC) ( GLshort x, GLshort y ); 1820 1821typedef void (APIENTRYP PFNGLRASTERPOS3DPROC) ( GLdouble x, GLdouble y, GLdouble z ); 1822typedef void (APIENTRYP PFNGLRASTERPOS3FPROC) ( GLfloat x, GLfloat y, GLfloat z ); 1823typedef void (APIENTRYP PFNGLRASTERPOS3IPROC) ( GLint x, GLint y, GLint z ); 1824typedef void (APIENTRYP PFNGLRASTERPOS3SPROC) ( GLshort x, GLshort y, GLshort z ); 1825 1826typedef void (APIENTRYP PFNGLRASTERPOS4DPROC) ( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); 1827typedef void (APIENTRYP PFNGLRASTERPOS4FPROC) ( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); 1828typedef void (APIENTRYP PFNGLRASTERPOS4IPROC) ( GLint x, GLint y, GLint z, GLint w ); 1829typedef void (APIENTRYP PFNGLRASTERPOS4SPROC) ( GLshort x, GLshort y, GLshort z, GLshort w ); 1830 1831typedef void (APIENTRYP PFNGLRASTERPOS2DVPROC) ( const GLdouble *v ); 1832typedef void (APIENTRYP PFNGLRASTERPOS2FVPROC) ( const GLfloat *v ); 1833typedef void (APIENTRYP PFNGLRASTERPOS2IVPROC) ( const GLint *v ); 1834typedef void (APIENTRYP PFNGLRASTERPOS2SVPROC) ( const GLshort *v ); 1835 1836typedef void (APIENTRYP PFNGLRASTERPOS3DVPROC) ( const GLdouble *v ); 1837typedef void (APIENTRYP PFNGLRASTERPOS3FVPROC) ( const GLfloat *v ); 1838typedef void (APIENTRYP PFNGLRASTERPOS3IVPROC) ( const GLint *v ); 1839typedef void (APIENTRYP PFNGLRASTERPOS3SVPROC) ( const GLshort *v ); 1840 1841typedef void (APIENTRYP PFNGLRASTERPOS4DVPROC) ( const GLdouble *v ); 1842typedef void (APIENTRYP PFNGLRASTERPOS4FVPROC) ( const GLfloat *v ); 1843typedef void (APIENTRYP PFNGLRASTERPOS4IVPROC) ( const GLint *v ); 1844typedef void (APIENTRYP PFNGLRASTERPOS4SVPROC) ( const GLshort *v ); 1845 1846 1847typedef void (APIENTRYP PFNGLRECTDPROC) ( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); 1848typedef void (APIENTRYP PFNGLRECTFPROC) ( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); 1849typedef void (APIENTRYP PFNGLRECTIPROC) ( GLint x1, GLint y1, GLint x2, GLint y2 ); 1850typedef void (APIENTRYP PFNGLRECTSPROC) ( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); 1851 1852 1853typedef void (APIENTRYP PFNGLRECTDVPROC) ( const GLdouble *v1, const GLdouble *v2 ); 1854typedef void (APIENTRYP PFNGLRECTFVPROC) ( const GLfloat *v1, const GLfloat *v2 ); 1855typedef void (APIENTRYP PFNGLRECTIVPROC) ( const GLint *v1, const GLint *v2 ); 1856typedef void (APIENTRYP PFNGLRECTSVPROC) ( const GLshort *v1, const GLshort *v2 ); 1857 1858 1859/* 1860 * Vertex Arrays (1.1) 1861 */ 1862 1863typedef void (APIENTRYP PFNGLVERTEXPOINTERPROC) ( GLint size, GLenum type, 1864 GLsizei stride, const GLvoid *ptr ); 1865 1866typedef void (APIENTRYP PFNGLNORMALPOINTERPROC) ( GLenum type, GLsizei stride, 1867 const GLvoid *ptr ); 1868 1869typedef void (APIENTRYP PFNGLCOLORPOINTERPROC) ( GLint size, GLenum type, 1870 GLsizei stride, const GLvoid *ptr ); 1871 1872typedef void (APIENTRYP PFNGLINDEXPOINTERPROC) ( GLenum type, GLsizei stride, 1873 const GLvoid *ptr ); 1874 1875typedef void (APIENTRYP PFNGLTEXCOORDPOINTERPROC) ( GLint size, GLenum type, 1876 GLsizei stride, const GLvoid *ptr ); 1877 1878typedef void (APIENTRYP PFNGLEDGEFLAGPOINTERPROC) ( GLsizei stride, const GLvoid *ptr ); 1879 1880typedef void (APIENTRYP PFNGLGETPOINTERVPROC) ( GLenum pname, GLvoid **params ); 1881 1882typedef void (APIENTRYP PFNGLARRAYELEMENTPROC) ( GLint i ); 1883 1884typedef void (APIENTRYP PFNGLDRAWARRAYSPROC) ( GLenum mode, GLint first, GLsizei count ); 1885 1886typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC) ( GLenum mode, GLsizei count, 1887 GLenum type, const GLvoid *indices ); 1888 1889typedef void (APIENTRYP PFNGLINTERLEAVEDARRAYSPROC) ( GLenum format, GLsizei stride, 1890 const GLvoid *pointer ); 1891 1892/* 1893 * Lighting 1894 */ 1895 1896typedef void (APIENTRYP PFNGLSHADEMODELPROC) ( GLenum mode ); 1897 1898typedef void (APIENTRYP PFNGLLIGHTFPROC) ( GLenum light, GLenum pname, GLfloat param ); 1899typedef void (APIENTRYP PFNGLLIGHTIPROC) ( GLenum light, GLenum pname, GLint param ); 1900typedef void (APIENTRYP PFNGLLIGHTFVPROC) ( GLenum light, GLenum pname, 1901 const GLfloat *params ); 1902typedef void (APIENTRYP PFNGLLIGHTIVPROC) ( GLenum light, GLenum pname, 1903 const GLint *params ); 1904 1905typedef void (APIENTRYP PFNGLGETLIGHTFVPROC) ( GLenum light, GLenum pname, 1906 GLfloat *params ); 1907typedef void (APIENTRYP PFNGLGETLIGHTIVPROC) ( GLenum light, GLenum pname, 1908 GLint *params ); 1909 1910typedef void (APIENTRYP PFNGLLIGHTMODELFPROC) ( GLenum pname, GLfloat param ); 1911typedef void (APIENTRYP PFNGLLIGHTMODELIPROC) ( GLenum pname, GLint param ); 1912typedef void (APIENTRYP PFNGLLIGHTMODELFVPROC) ( GLenum pname, const GLfloat *params ); 1913typedef void (APIENTRYP PFNGLLIGHTMODELIVPROC) ( GLenum pname, const GLint *params ); 1914 1915typedef void (APIENTRYP PFNGLMATERIALFPROC) ( GLenum face, GLenum pname, GLfloat param ); 1916typedef void (APIENTRYP PFNGLMATERIALIPROC) ( GLenum face, GLenum pname, GLint param ); 1917typedef void (APIENTRYP PFNGLMATERIALFVPROC) ( GLenum face, GLenum pname, const GLfloat *params ); 1918typedef void (APIENTRYP PFNGLMATERIALIVPROC) ( GLenum face, GLenum pname, const GLint *params ); 1919 1920typedef void (APIENTRYP PFNGLGETMATERIALFVPROC) ( GLenum face, GLenum pname, GLfloat *params ); 1921typedef void (APIENTRYP PFNGLGETMATERIALIVPROC) ( GLenum face, GLenum pname, GLint *params ); 1922 1923typedef void (APIENTRYP PFNGLCOLORMATERIALPROC) ( GLenum face, GLenum mode ); 1924 1925 1926/* 1927 * Raster functions 1928 */ 1929 1930typedef void (APIENTRYP PFNGLPIXELZOOMPROC) ( GLfloat xfactor, GLfloat yfactor ); 1931 1932typedef void (APIENTRYP PFNGLPIXELSTOREFPROC) ( GLenum pname, GLfloat param ); 1933typedef void (APIENTRYP PFNGLPIXELSTOREIPROC) ( GLenum pname, GLint param ); 1934 1935typedef void (APIENTRYP PFNGLPIXELTRANSFERFPROC) ( GLenum pname, GLfloat param ); 1936typedef void (APIENTRYP PFNGLPIXELTRANSFERIPROC) ( GLenum pname, GLint param ); 1937 1938typedef void (APIENTRYP PFNGLPIXELMAPFVPROC) ( GLenum map, GLsizei mapsize, 1939 const GLfloat *values ); 1940typedef void (APIENTRYP PFNGLPIXELMAPUIVPROC) ( GLenum map, GLsizei mapsize, 1941 const GLuint *values ); 1942typedef void (APIENTRYP PFNGLPIXELMAPUSVPROC) ( GLenum map, GLsizei mapsize, 1943 const GLushort *values ); 1944 1945typedef void (APIENTRYP PFNGLGETPIXELMAPFVPROC) ( GLenum map, GLfloat *values ); 1946typedef void (APIENTRYP PFNGLGETPIXELMAPUIVPROC) ( GLenum map, GLuint *values ); 1947typedef void (APIENTRYP PFNGLGETPIXELMAPUSVPROC) ( GLenum map, GLushort *values ); 1948 1949typedef void (APIENTRYP PFNGLBITMAPPROC) ( GLsizei width, GLsizei height, 1950 GLfloat xorig, GLfloat yorig, 1951 GLfloat xmove, GLfloat ymove, 1952 const GLubyte *bitmap ); 1953 1954typedef void (APIENTRYP PFNGLREADPIXELSPROC) ( GLint x, GLint y, 1955 GLsizei width, GLsizei height, 1956 GLenum format, GLenum type, 1957 GLvoid *pixels ); 1958 1959typedef void (APIENTRYP PFNGLDRAWPIXELSPROC) ( GLsizei width, GLsizei height, 1960 GLenum format, GLenum type, 1961 const GLvoid *pixels ); 1962 1963typedef void (APIENTRYP PFNGLCOPYPIXELSPROC) ( GLint x, GLint y, 1964 GLsizei width, GLsizei height, 1965 GLenum type ); 1966 1967/* 1968 * Stenciling 1969 */ 1970 1971typedef void (APIENTRYP PFNGLSTENCILFUNCPROC) ( GLenum func, GLint ref, GLuint mask ); 1972 1973typedef void (APIENTRYP PFNGLSTENCILMASKPROC) ( GLuint mask ); 1974 1975typedef void (APIENTRYP PFNGLSTENCILOPPROC) ( GLenum fail, GLenum zfail, GLenum zpass ); 1976 1977typedef void (APIENTRYP PFNGLCLEARSTENCILPROC) ( GLint s ); 1978 1979 1980 1981/* 1982 * Texture mapping 1983 */ 1984 1985typedef void (APIENTRYP PFNGLTEXGENDPROC) ( GLenum coord, GLenum pname, GLdouble param ); 1986typedef void (APIENTRYP PFNGLTEXGENFPROC) ( GLenum coord, GLenum pname, GLfloat param ); 1987typedef void (APIENTRYP PFNGLTEXGENIPROC) ( GLenum coord, GLenum pname, GLint param ); 1988 1989typedef void (APIENTRYP PFNGLTEXGENDVPROC) ( GLenum coord, GLenum pname, const GLdouble *params ); 1990typedef void (APIENTRYP PFNGLTEXGENFVPROC) ( GLenum coord, GLenum pname, const GLfloat *params ); 1991typedef void (APIENTRYP PFNGLTEXGENIVPROC) ( GLenum coord, GLenum pname, const GLint *params ); 1992 1993typedef void (APIENTRYP PFNGLGETTEXGENDVPROC) ( GLenum coord, GLenum pname, GLdouble *params ); 1994typedef void (APIENTRYP PFNGLGETTEXGENFVPROC) ( GLenum coord, GLenum pname, GLfloat *params ); 1995typedef void (APIENTRYP PFNGLGETTEXGENIVPROC) ( GLenum coord, GLenum pname, GLint *params ); 1996 1997 1998typedef void (APIENTRYP PFNGLTEXENVFPROC) ( GLenum target, GLenum pname, GLfloat param ); 1999typedef void (APIENTRYP PFNGLTEXENVIPROC) ( GLenum target, GLenum pname, GLint param ); 2000 2001typedef void (APIENTRYP PFNGLTEXENVFVPROC) ( GLenum target, GLenum pname, const GLfloat *params ); 2002typedef void (APIENTRYP PFNGLTEXENVIVPROC) ( GLenum target, GLenum pname, const GLint *params ); 2003 2004typedef void (APIENTRYP PFNGLGETTEXENVFVPROC) ( GLenum target, GLenum pname, GLfloat *params ); 2005typedef void (APIENTRYP PFNGLGETTEXENVIVPROC) ( GLenum target, GLenum pname, GLint *params ); 2006 2007 2008typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC) ( GLenum target, GLenum pname, GLfloat param ); 2009typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC) ( GLenum target, GLenum pname, GLint param ); 2010 2011typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC) ( GLenum target, GLenum pname, 2012 const GLfloat *params ); 2013typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC) ( GLenum target, GLenum pname, 2014 const GLint *params ); 2015 2016typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC) ( GLenum target, 2017 GLenum pname, GLfloat *params); 2018typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC) ( GLenum target, 2019 GLenum pname, GLint *params ); 2020 2021typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC) ( GLenum target, GLint level, 2022 GLenum pname, GLfloat *params ); 2023typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC) ( GLenum target, GLint level, 2024 GLenum pname, GLint *params ); 2025 2026 2027typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC) ( GLenum target, GLint level, 2028 GLint internalFormat, 2029 GLsizei width, GLint border, 2030 GLenum format, GLenum type, 2031 const GLvoid *pixels ); 2032 2033typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC) ( GLenum target, GLint level, 2034 GLint internalFormat, 2035 GLsizei width, GLsizei height, 2036 GLint border, GLenum format, GLenum type, 2037 const GLvoid *pixels ); 2038 2039typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC) ( GLenum target, GLint level, 2040 GLenum format, GLenum type, 2041 GLvoid *pixels ); 2042 2043 2044/* 1.1 functions */ 2045 2046typedef void (APIENTRYP PFNGLGENTEXTURESPROC) ( GLsizei n, GLuint *textures ); 2047 2048typedef void (APIENTRYP PFNGLDELETETEXTURESPROC) ( GLsizei n, const GLuint *textures); 2049 2050typedef void (APIENTRYP PFNGLBINDTEXTUREPROC) ( GLenum target, GLuint texture ); 2051 2052typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESPROC) ( GLsizei n, 2053 const GLuint *textures, 2054 const GLclampf *priorities ); 2055 2056typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTPROC) ( GLsizei n, 2057 const GLuint *textures, 2058 GLboolean *residences ); 2059 2060typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC) ( GLuint texture ); 2061 2062 2063typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC) ( GLenum target, GLint level, 2064 GLint xoffset, 2065 GLsizei width, GLenum format, 2066 GLenum type, const GLvoid *pixels ); 2067 2068 2069typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC) ( GLenum target, GLint level, 2070 GLint xoffset, GLint yoffset, 2071 GLsizei width, GLsizei height, 2072 GLenum format, GLenum type, 2073 const GLvoid *pixels ); 2074 2075 2076typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC) ( GLenum target, GLint level, 2077 GLenum internalformat, 2078 GLint x, GLint y, 2079 GLsizei width, GLint border ); 2080 2081 2082typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC) ( GLenum target, GLint level, 2083 GLenum internalformat, 2084 GLint x, GLint y, 2085 GLsizei width, GLsizei height, 2086 GLint border ); 2087 2088 2089typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC) ( GLenum target, GLint level, 2090 GLint xoffset, GLint x, GLint y, 2091 GLsizei width ); 2092 2093 2094typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC) ( GLenum target, GLint level, 2095 GLint xoffset, GLint yoffset, 2096 GLint x, GLint y, 2097 GLsizei width, GLsizei height ); 2098 2099 2100/* 2101 * Evaluators 2102 */ 2103 2104typedef void (APIENTRYP PFNGLMAP1DPROC) ( GLenum target, GLdouble u1, GLdouble u2, 2105 GLint stride, 2106 GLint order, const GLdouble *points ); 2107typedef void (APIENTRYP PFNGLMAP1FPROC) ( GLenum target, GLfloat u1, GLfloat u2, 2108 GLint stride, 2109 GLint order, const GLfloat *points ); 2110 2111typedef void (APIENTRYP PFNGLMAP2DPROC) ( GLenum target, 2112 GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, 2113 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, 2114 const GLdouble *points ); 2115typedef void (APIENTRYP PFNGLMAP2FPROC) ( GLenum target, 2116 GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, 2117 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, 2118 const GLfloat *points ); 2119 2120typedef void (APIENTRYP PFNGLGETMAPDVPROC) ( GLenum target, GLenum query, GLdouble *v ); 2121typedef void (APIENTRYP PFNGLGETMAPFVPROC) ( GLenum target, GLenum query, GLfloat *v ); 2122typedef void (APIENTRYP PFNGLGETMAPIVPROC) ( GLenum target, GLenum query, GLint *v ); 2123 2124typedef void (APIENTRYP PFNGLEVALCOORD1DPROC) ( GLdouble u ); 2125typedef void (APIENTRYP PFNGLEVALCOORD1FPROC) ( GLfloat u ); 2126 2127typedef void (APIENTRYP PFNGLEVALCOORD1DVPROC) ( const GLdouble *u ); 2128typedef void (APIENTRYP PFNGLEVALCOORD1FVPROC) ( const GLfloat *u ); 2129 2130typedef void (APIENTRYP PFNGLEVALCOORD2DPROC) ( GLdouble u, GLdouble v ); 2131typedef void (APIENTRYP PFNGLEVALCOORD2FPROC) ( GLfloat u, GLfloat v ); 2132 2133typedef void (APIENTRYP PFNGLEVALCOORD2DVPROC) ( const GLdouble *u ); 2134typedef void (APIENTRYP PFNGLEVALCOORD2FVPROC) ( const GLfloat *u ); 2135 2136typedef void (APIENTRYP PFNGLMAPGRID1DPROC) ( GLint un, GLdouble u1, GLdouble u2 ); 2137typedef void (APIENTRYP PFNGLMAPGRID1FPROC) ( GLint un, GLfloat u1, GLfloat u2 ); 2138 2139typedef void (APIENTRYP PFNGLMAPGRID2DPROC) ( GLint un, GLdouble u1, GLdouble u2, 2140 GLint vn, GLdouble v1, GLdouble v2 ); 2141typedef void (APIENTRYP PFNGLMAPGRID2FPROC) ( GLint un, GLfloat u1, GLfloat u2, 2142 GLint vn, GLfloat v1, GLfloat v2 ); 2143 2144typedef void (APIENTRYP PFNGLEVALPOINT1PROC) ( GLint i ); 2145 2146typedef void (APIENTRYP PFNGLEVALPOINT2PROC) ( GLint i, GLint j ); 2147 2148typedef void (APIENTRYP PFNGLEVALMESH1PROC) ( GLenum mode, GLint i1, GLint i2 ); 2149 2150typedef void (APIENTRYP PFNGLEVALMESH2PROC) ( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); 2151 2152 2153/* 2154 * Fog 2155 */ 2156 2157typedef void (APIENTRYP PFNGLFOGFPROC) ( GLenum pname, GLfloat param ); 2158 2159typedef void (APIENTRYP PFNGLFOGIPROC) ( GLenum pname, GLint param ); 2160 2161typedef void (APIENTRYP PFNGLFOGFVPROC) ( GLenum pname, const GLfloat *params ); 2162 2163typedef void (APIENTRYP PFNGLFOGIVPROC) ( GLenum pname, const GLint *params ); 2164 2165 2166/* 2167 * Selection and Feedback 2168 */ 2169 2170typedef void (APIENTRYP PFNGLFEEDBACKBUFFERPROC) ( GLsizei size, GLenum type, GLfloat *buffer ); 2171 2172typedef void (APIENTRYP PFNGLPASSTHROUGHPROC) ( GLfloat token ); 2173 2174typedef void (APIENTRYP PFNGLSELECTBUFFERPROC) ( GLsizei size, GLuint *buffer ); 2175 2176typedef void (APIENTRYP PFNGLINITNAMESPROC) ( void ); 2177 2178typedef void (APIENTRYP PFNGLLOADNAMEPROC) ( GLuint name ); 2179 2180typedef void (APIENTRYP PFNGLPUSHNAMEPROC) ( GLuint name ); 2181 2182typedef void (APIENTRYP PFNGLPOPNAMEPROC) ( void ); 2183#endif 2184 2185 2186/* 2187 * OpenGL 1.2 2188 */ 2189 2190#define GL_RESCALE_NORMAL 0x803A 2191#define GL_CLAMP_TO_EDGE 0x812F 2192#define GL_MAX_ELEMENTS_VERTICES 0x80E8 2193#define GL_MAX_ELEMENTS_INDICES 0x80E9 2194#define GL_BGR 0x80E0 2195#define GL_BGRA 0x80E1 2196#define GL_UNSIGNED_BYTE_3_3_2 0x8032 2197#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 2198#define GL_UNSIGNED_SHORT_5_6_5 0x8363 2199#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 2200#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 2201#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 2202#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 2203#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 2204#define GL_UNSIGNED_INT_8_8_8_8 0x8035 2205#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 2206#define GL_UNSIGNED_INT_10_10_10_2 0x8036 2207#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 2208#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 2209#define GL_SINGLE_COLOR 0x81F9 2210#define GL_SEPARATE_SPECULAR_COLOR 0x81FA 2211#define GL_TEXTURE_MIN_LOD 0x813A 2212#define GL_TEXTURE_MAX_LOD 0x813B 2213#define GL_TEXTURE_BASE_LEVEL 0x813C 2214#define GL_TEXTURE_MAX_LEVEL 0x813D 2215#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 2216#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 2217#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 2218#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 2219#define GL_ALIASED_POINT_SIZE_RANGE 0x846D 2220#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E 2221#define GL_PACK_SKIP_IMAGES 0x806B 2222#define GL_PACK_IMAGE_HEIGHT 0x806C 2223#define GL_UNPACK_SKIP_IMAGES 0x806D 2224#define GL_UNPACK_IMAGE_HEIGHT 0x806E 2225#define GL_TEXTURE_3D 0x806F 2226#define GL_PROXY_TEXTURE_3D 0x8070 2227#define GL_TEXTURE_DEPTH 0x8071 2228#define GL_TEXTURE_WRAP_R 0x8072 2229#define GL_MAX_3D_TEXTURE_SIZE 0x8073 2230#define GL_TEXTURE_BINDING_3D 0x806A 2231 2232#ifndef SDL_OPENGL_1_NO_PROTOTYPES 2233 2234GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, 2235 GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); 2236 2237GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, 2238 GLint internalFormat, 2239 GLsizei width, GLsizei height, 2240 GLsizei depth, GLint border, 2241 GLenum format, GLenum type, 2242 const GLvoid *pixels ); 2243 2244GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, 2245 GLint xoffset, GLint yoffset, 2246 GLint zoffset, GLsizei width, 2247 GLsizei height, GLsizei depth, 2248 GLenum format, 2249 GLenum type, const GLvoid *pixels); 2250 2251GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, 2252 GLint xoffset, GLint yoffset, 2253 GLint zoffset, GLint x, 2254 GLint y, GLsizei width, 2255 GLsizei height ); 2256 2257#endif 2258#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS 2259 2260typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) ( GLenum mode, GLuint start, 2261 GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); 2262 2263typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) ( GLenum target, GLint level, 2264 GLint internalFormat, 2265 GLsizei width, GLsizei height, 2266 GLsizei depth, GLint border, 2267 GLenum format, GLenum type, 2268 const GLvoid *pixels ); 2269 2270typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) ( GLenum target, GLint level, 2271 GLint xoffset, GLint yoffset, 2272 GLint zoffset, GLsizei width, 2273 GLsizei height, GLsizei depth, 2274 GLenum format, 2275 GLenum type, const GLvoid *pixels); 2276 2277typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) ( GLenum target, GLint level, 2278 GLint xoffset, GLint yoffset, 2279 GLint zoffset, GLint x, 2280 GLint y, GLsizei width, 2281 GLsizei height ); 2282 2283#endif 2284 2285typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); 2286typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); 2287typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); 2288typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 2289 2290 2291/* 2292 * GL_ARB_imaging 2293 */ 2294 2295#define GL_CONSTANT_COLOR 0x8001 2296#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 2297#define GL_CONSTANT_ALPHA 0x8003 2298#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 2299#define GL_COLOR_TABLE 0x80D0 2300#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 2301#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 2302#define GL_PROXY_COLOR_TABLE 0x80D3 2303#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 2304#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 2305#define GL_COLOR_TABLE_SCALE 0x80D6 2306#define GL_COLOR_TABLE_BIAS 0x80D7 2307#define GL_COLOR_TABLE_FORMAT 0x80D8 2308#define GL_COLOR_TABLE_WIDTH 0x80D9 2309#define GL_COLOR_TABLE_RED_SIZE 0x80DA 2310#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB 2311#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC 2312#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD 2313#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE 2314#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF 2315#define GL_CONVOLUTION_1D 0x8010 2316#define GL_CONVOLUTION_2D 0x8011 2317#define GL_SEPARABLE_2D 0x8012 2318#define GL_CONVOLUTION_BORDER_MODE 0x8013 2319#define GL_CONVOLUTION_FILTER_SCALE 0x8014 2320#define GL_CONVOLUTION_FILTER_BIAS 0x8015 2321#define GL_REDUCE 0x8016 2322#define GL_CONVOLUTION_FORMAT 0x8017 2323#define GL_CONVOLUTION_WIDTH 0x8018 2324#define GL_CONVOLUTION_HEIGHT 0x8019 2325#define GL_MAX_CONVOLUTION_WIDTH 0x801A 2326#define GL_MAX_CONVOLUTION_HEIGHT 0x801B 2327#define GL_POST_CONVOLUTION_RED_SCALE 0x801C 2328#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D 2329#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E 2330#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F 2331#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 2332#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 2333#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 2334#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 2335#define GL_CONSTANT_BORDER 0x8151 2336#define GL_REPLICATE_BORDER 0x8153 2337#define GL_CONVOLUTION_BORDER_COLOR 0x8154 2338#define GL_COLOR_MATRIX 0x80B1 2339#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 2340#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 2341#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 2342#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 2343#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 2344#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 2345#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 2346#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 2347#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA 2348#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB 2349#define GL_HISTOGRAM 0x8024 2350#define GL_PROXY_HISTOGRAM 0x8025 2351#define GL_HISTOGRAM_WIDTH 0x8026 2352#define GL_HISTOGRAM_FORMAT 0x8027 2353#define GL_HISTOGRAM_RED_SIZE 0x8028 2354#define GL_HISTOGRAM_GREEN_SIZE 0x8029 2355#define GL_HISTOGRAM_BLUE_SIZE 0x802A 2356#define GL_HISTOGRAM_ALPHA_SIZE 0x802B 2357#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C 2358#define GL_HISTOGRAM_SINK 0x802D 2359#define GL_MINMAX 0x802E 2360#define GL_MINMAX_FORMAT 0x802F 2361#define GL_MINMAX_SINK 0x8030 2362#define GL_TABLE_TOO_LARGE 0x8031 2363#define GL_BLEND_EQUATION 0x8009 2364#define GL_MIN 0x8007 2365#define GL_MAX 0x8008 2366#define GL_FUNC_ADD 0x8006 2367#define GL_FUNC_SUBTRACT 0x800A 2368#define GL_FUNC_REVERSE_SUBTRACT 0x800B 2369#define GL_BLEND_COLOR 0x8005 2370 2371 2372#ifndef SDL_OPENGL_1_NO_PROTOTYPES 2373 2374GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, 2375 GLsizei width, GLenum format, 2376 GLenum type, const GLvoid *table ); 2377 2378GLAPI void GLAPIENTRY glColorSubTable( GLenum target, 2379 GLsizei start, GLsizei count, 2380 GLenum format, GLenum type, 2381 const GLvoid *data ); 2382 2383GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, 2384 const GLint *params); 2385 2386GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, 2387 const GLfloat *params); 2388 2389GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, 2390 GLint x, GLint y, GLsizei width ); 2391 2392GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, 2393 GLint x, GLint y, GLsizei width ); 2394 2395GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, 2396 GLenum type, GLvoid *table ); 2397 2398GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, 2399 GLfloat *params ); 2400 2401GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, 2402 GLint *params ); 2403 2404GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); 2405 2406GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, 2407 GLclampf blue, GLclampf alpha ); 2408 2409GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, 2410 GLenum internalformat, GLboolean sink ); 2411 2412GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); 2413 2414GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, 2415 GLenum format, GLenum type, 2416 GLvoid *values ); 2417 2418GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, 2419 GLfloat *params ); 2420 2421GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, 2422 GLint *params ); 2423 2424GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, 2425 GLboolean sink ); 2426 2427GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); 2428 2429GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, 2430 GLenum format, GLenum types, 2431 GLvoid *values ); 2432 2433GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, 2434 GLfloat *params ); 2435 2436GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, 2437 GLint *params ); 2438 2439GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, 2440 GLenum internalformat, GLsizei width, GLenum format, GLenum type, 2441 const GLvoid *image ); 2442 2443GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, 2444 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2445 GLenum type, const GLvoid *image ); 2446 2447GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, 2448 GLfloat params ); 2449 2450GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, 2451 const GLfloat *params ); 2452 2453GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, 2454 GLint params ); 2455 2456GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, 2457 const GLint *params ); 2458 2459GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, 2460 GLenum internalformat, GLint x, GLint y, GLsizei width ); 2461 2462GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, 2463 GLenum internalformat, GLint x, GLint y, GLsizei width, 2464 GLsizei height); 2465 2466GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, 2467 GLenum type, GLvoid *image ); 2468 2469GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, 2470 GLfloat *params ); 2471 2472GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, 2473 GLint *params ); 2474 2475GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, 2476 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2477 GLenum type, const GLvoid *row, const GLvoid *column ); 2478 2479GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, 2480 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); 2481 2482#endif 2483#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS 2484 2485typedef void (APIENTRYP PFNGLCOLORTABLEPROC) ( GLenum target, GLenum internalformat, 2486 GLsizei width, GLenum format, 2487 GLenum type, const GLvoid *table ); 2488 2489typedef void (APIENTRYP PFNGLCOLORSUBTABLEPROC) ( GLenum target, 2490 GLsizei start, GLsizei count, 2491 GLenum format, GLenum type, 2492 const GLvoid *data ); 2493 2494typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, 2495 const GLint *params); 2496 2497typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, 2498 const GLfloat *params); 2499 2500typedef void (APIENTRYP PFNGLCOPYCOLORSUBTABLEPROC) ( GLenum target, GLsizei start, 2501 GLint x, GLint y, GLsizei width ); 2502 2503typedef void (APIENTRYP PFNGLCOPYCOLORTABLEPROC) ( GLenum target, GLenum internalformat, 2504 GLint x, GLint y, GLsizei width ); 2505 2506typedef void (APIENTRYP PFNGLGETCOLORTABLEPROC) ( GLenum target, GLenum format, 2507 GLenum type, GLvoid *table ); 2508 2509typedef void (APIENTRYP PFNGLGETCOLORTABLEPARAMETERFVPROC) ( GLenum target, GLenum pname, 2510 GLfloat *params ); 2511 2512typedef void (APIENTRYP PFNGLGETCOLORTABLEPARAMETERIVPROC) ( GLenum target, GLenum pname, 2513 GLint *params ); 2514 2515typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) ( GLenum mode ); 2516 2517typedef void (APIENTRYP PFNGLBLENDCOLORPROC) ( GLclampf red, GLclampf green, 2518 GLclampf blue, GLclampf alpha ); 2519 2520typedef void (APIENTRYP PFNGLHISTOGRAMPROC) ( GLenum target, GLsizei width, 2521 GLenum internalformat, GLboolean sink ); 2522 2523typedef void (APIENTRYP PFNGLRESETHISTOGRAMPROC) ( GLenum target ); 2524 2525typedef void (APIENTRYP PFNGLGETHISTOGRAMPROC) ( GLenum target, GLboolean reset, 2526 GLenum format, GLenum type, 2527 GLvoid *values ); 2528 2529typedef void (APIENTRYP PFNGLGETHISTOGRAMPARAMETERFVPROC) ( GLenum target, GLenum pname, 2530 GLfloat *params ); 2531 2532typedef void (APIENTRYP PFNGLGETHISTOGRAMPARAMETERIVPROC) ( GLenum target, GLenum pname, 2533 GLint *params ); 2534 2535typedef void (APIENTRYP PFNGLMINMAXPROC) ( GLenum target, GLenum internalformat, 2536 GLboolean sink ); 2537 2538typedef void (APIENTRYP PFNGLRESETMINMAXPROC) ( GLenum target ); 2539 2540typedef void (APIENTRYP PFNGLGETMINMAXPROC) ( GLenum target, GLboolean reset, 2541 GLenum format, GLenum types, 2542 GLvoid *values ); 2543 2544typedef void (APIENTRYP PFNGLGETMINMAXPARAMETERFVPROC) ( GLenum target, GLenum pname, 2545 GLfloat *params ); 2546 2547typedef void (APIENTRYP PFNGLGETMINMAXPARAMETERIVPROC) ( GLenum target, GLenum pname, 2548 GLint *params ); 2549 2550typedef void (APIENTRYP PFNGLCONVOLUTIONFILTER1DPROC) ( GLenum target, 2551 GLenum internalformat, GLsizei width, GLenum format, GLenum type, 2552 const GLvoid *image ); 2553 2554typedef void (APIENTRYP PFNGLCONVOLUTIONFILTER2DPROC) ( GLenum target, 2555 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2556 GLenum type, const GLvoid *image ); 2557 2558typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERFPROC) ( GLenum target, GLenum pname, 2559 GLfloat params ); 2560 2561typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERFVPROC) ( GLenum target, GLenum pname, 2562 const GLfloat *params ); 2563 2564typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERIPROC) ( GLenum target, GLenum pname, 2565 GLint params ); 2566 2567typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERIVPROC) ( GLenum target, GLenum pname, 2568 const GLint *params ); 2569 2570typedef void (APIENTRYP PFNGLCOPYCONVOLUTIONFILTER1DPROC) ( GLenum target, 2571 GLenum internalformat, GLint x, GLint y, GLsizei width ); 2572 2573typedef void (APIENTRYP PFNGLCOPYCONVOLUTIONFILTER2DPROC) ( GLenum target, 2574 GLenum internalformat, GLint x, GLint y, GLsizei width, 2575 GLsizei height); 2576 2577typedef void (APIENTRYP PFNGLGETCONVOLUTIONFILTERPROC) ( GLenum target, GLenum format, 2578 GLenum type, GLvoid *image ); 2579 2580typedef void (APIENTRYP PFNGLGETCONVOLUTIONPARAMETERFVPROC) ( GLenum target, GLenum pname, 2581 GLfloat *params ); 2582 2583typedef void (APIENTRYP PFNGLGETCONVOLUTIONPARAMETERIVPROC) ( GLenum target, GLenum pname, 2584 GLint *params ); 2585 2586typedef void (APIENTRYP PFNGLSEPARABLEFILTER2DPROC) ( GLenum target, 2587 GLenum internalformat, GLsizei width, GLsizei height, GLenum format, 2588 GLenum type, const GLvoid *row, const GLvoid *column ); 2589 2590typedef void (APIENTRYP PFNGLGETSEPARABLEFILTERPROC) ( GLenum target, GLenum format, 2591 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); 2592 2593#endif 2594 2595 2596 2597 2598/* 2599 * OpenGL 1.3 2600 */ 2601 2602/* multitexture */ 2603#define GL_TEXTURE0 0x84C0 2604#define GL_TEXTURE1 0x84C1 2605#define GL_TEXTURE2 0x84C2 2606#define GL_TEXTURE3 0x84C3 2607#define GL_TEXTURE4 0x84C4 2608#define GL_TEXTURE5 0x84C5 2609#define GL_TEXTURE6 0x84C6 2610#define GL_TEXTURE7 0x84C7 2611#define GL_TEXTURE8 0x84C8 2612#define GL_TEXTURE9 0x84C9 2613#define GL_TEXTURE10 0x84CA 2614#define GL_TEXTURE11 0x84CB 2615#define GL_TEXTURE12 0x84CC 2616#define GL_TEXTURE13 0x84CD 2617#define GL_TEXTURE14 0x84CE 2618#define GL_TEXTURE15 0x84CF 2619#define GL_TEXTURE16 0x84D0 2620#define GL_TEXTURE17 0x84D1 2621#define GL_TEXTURE18 0x84D2 2622#define GL_TEXTURE19 0x84D3 2623#define GL_TEXTURE20 0x84D4 2624#define GL_TEXTURE21 0x84D5 2625#define GL_TEXTURE22 0x84D6 2626#define GL_TEXTURE23 0x84D7 2627#define GL_TEXTURE24 0x84D8 2628#define GL_TEXTURE25 0x84D9 2629#define GL_TEXTURE26 0x84DA 2630#define GL_TEXTURE27 0x84DB 2631#define GL_TEXTURE28 0x84DC 2632#define GL_TEXTURE29 0x84DD 2633#define GL_TEXTURE30 0x84DE 2634#define GL_TEXTURE31 0x84DF 2635#define GL_ACTIVE_TEXTURE 0x84E0 2636#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 2637#define GL_MAX_TEXTURE_UNITS 0x84E2 2638/* texture_cube_map */ 2639#define GL_NORMAL_MAP 0x8511 2640#define GL_REFLECTION_MAP 0x8512 2641#define GL_TEXTURE_CUBE_MAP 0x8513 2642#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 2643#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 2644#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 2645#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 2646#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 2647#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 2648#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A 2649#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B 2650#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C 2651/* texture_compression */ 2652#define GL_COMPRESSED_ALPHA 0x84E9 2653#define GL_COMPRESSED_LUMINANCE 0x84EA 2654#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB 2655#define GL_COMPRESSED_INTENSITY 0x84EC 2656#define GL_COMPRESSED_RGB 0x84ED 2657#define GL_COMPRESSED_RGBA 0x84EE 2658#define GL_TEXTURE_COMPRESSION_HINT 0x84EF 2659#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 2660#define GL_TEXTURE_COMPRESSED 0x86A1 2661#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 2662#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 2663/* multisample */ 2664#define GL_MULTISAMPLE 0x809D 2665#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E 2666#define GL_SAMPLE_ALPHA_TO_ONE 0x809F 2667#define GL_SAMPLE_COVERAGE 0x80A0 2668#define GL_SAMPLE_BUFFERS 0x80A8 2669#define GL_SAMPLES 0x80A9 2670#define GL_SAMPLE_COVERAGE_VALUE 0x80AA 2671#define GL_SAMPLE_COVERAGE_INVERT 0x80AB 2672#define GL_MULTISAMPLE_BIT 0x20000000 2673/* transpose_matrix */ 2674#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 2675#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 2676#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 2677#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 2678/* texture_env_combine */ 2679#define GL_COMBINE 0x8570 2680#define GL_COMBINE_RGB 0x8571 2681#define GL_COMBINE_ALPHA 0x8572 2682#define GL_SOURCE0_RGB 0x8580 2683#define GL_SOURCE1_RGB 0x8581 2684#define GL_SOURCE2_RGB 0x8582 2685#define GL_SOURCE0_ALPHA 0x8588 2686#define GL_SOURCE1_ALPHA 0x8589 2687#define GL_SOURCE2_ALPHA 0x858A 2688#define GL_OPERAND0_RGB 0x8590 2689#define GL_OPERAND1_RGB 0x8591 2690#define GL_OPERAND2_RGB 0x8592 2691#define GL_OPERAND0_ALPHA 0x8598 2692#define GL_OPERAND1_ALPHA 0x8599 2693#define GL_OPERAND2_ALPHA 0x859A 2694#define GL_RGB_SCALE 0x8573 2695#define GL_ADD_SIGNED 0x8574 2696#define GL_INTERPOLATE 0x8575 2697#define GL_SUBTRACT 0x84E7 2698#define GL_CONSTANT 0x8576 2699#define GL_PRIMARY_COLOR 0x8577 2700#define GL_PREVIOUS 0x8578 2701/* texture_env_dot3 */ 2702#define GL_DOT3_RGB 0x86AE 2703#define GL_DOT3_RGBA 0x86AF 2704/* texture_border_clamp */ 2705#define GL_CLAMP_TO_BORDER 0x812D 2706 2707#ifndef SDL_OPENGL_1_NO_PROTOTYPES 2708 2709GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); 2710 2711GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); 2712 2713GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); 2714 2715GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); 2716 2717GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); 2718 2719GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); 2720 2721GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); 2722 2723GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); 2724 2725GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img ); 2726 2727GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s ); 2728 2729GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); 2730 2731GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); 2732 2733GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v ); 2734 2735GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s ); 2736 2737GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v ); 2738 2739GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); 2740 2741GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v ); 2742 2743GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ); 2744 2745GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v ); 2746 2747GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ); 2748 2749GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v ); 2750 2751GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t ); 2752 2753GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v ); 2754 2755GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ); 2756 2757GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v ); 2758 2759GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ); 2760 2761GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v ); 2762 2763GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ); 2764 2765GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v ); 2766 2767GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ); 2768 2769GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v ); 2770 2771GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ); 2772 2773GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v ); 2774 2775GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 2776 2777GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v ); 2778 2779GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 2780 2781GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v ); 2782 2783GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ); 2784 2785GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v ); 2786 2787GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); 2788 2789GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v ); 2790 2791 2792GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); 2793 2794GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); 2795 2796GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); 2797 2798GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); 2799 2800GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); 2801 2802#endif 2803#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS 2804 2805typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) ( GLenum texture ); 2806 2807typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC) ( GLenum texture ); 2808 2809typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); 2810 2811typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); 2812 2813typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); 2814 2815typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) ( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); 2816 2817typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); 2818 2819typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); 2820 2821typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) ( GLenum target, GLint lod, GLvoid *img ); 2822 2823typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC) ( GLenum target, GLdouble s ); 2824 2825typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC) ( GLenum target, const GLdouble *v ); 2826 2827typedef void (APIENTRYP PFNGLMULTITEXCOORD1FPROC) ( GLenum target, GLfloat s ); 2828 2829typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVPROC) ( GLenum target, const GLfloat *v ); 2830 2831typedef void (APIENTRYP PFNGLMULTITEXCOORD1IPROC) ( GLenum target, GLint s ); 2832 2833typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVPROC) ( GLenum target, const GLint *v ); 2834 2835typedef void (APIENTRYP PFNGLMULTITEXCOORD1SPROC) ( GLenum target, GLshort s ); 2836 2837typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVPROC) ( GLenum target, const GLshort *v ); 2838 2839typedef void (APIENTRYP PFNGLMULTITEXCOORD2DPROC) ( GLenum target, GLdouble s, GLdouble t ); 2840 2841typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVPROC) ( GLenum target, const GLdouble *v ); 2842 2843typedef void (APIENTRYP PFNGLMULTITEXCOORD2FPROC) ( GLenum target, GLfloat s, GLfloat t ); 2844 2845typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVPROC) ( GLenum target, const GLfloat *v ); 2846 2847typedef void (APIENTRYP PFNGLMULTITEXCOORD2IPROC) ( GLenum target, GLint s, GLint t ); 2848 2849typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVPROC) ( GLenum target, const GLint *v ); 2850 2851typedef void (APIENTRYP PFNGLMULTITEXCOORD2SPROC) ( GLenum target, GLshort s, GLshort t ); 2852 2853typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVPROC) ( GLenum target, const GLshort *v ); 2854 2855typedef void (APIENTRYP PFNGLMULTITEXCOORD3DPROC) ( GLenum target, GLdouble s, GLdouble t, GLdouble r ); 2856 2857typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVPROC) ( GLenum target, const GLdouble *v ); 2858 2859typedef void (APIENTRYP PFNGLMULTITEXCOORD3FPROC) ( GLenum target, GLfloat s, GLfloat t, GLfloat r ); 2860 2861typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVPROC) ( GLenum target, const GLfloat *v ); 2862 2863typedef void (APIENTRYP PFNGLMULTITEXCOORD3IPROC) ( GLenum target, GLint s, GLint t, GLint r ); 2864 2865typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVPROC) ( GLenum target, const GLint *v ); 2866 2867typedef void (APIENTRYP PFNGLMULTITEXCOORD3SPROC) ( GLenum target, GLshort s, GLshort t, GLshort r ); 2868 2869typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVPROC) ( GLenum target, const GLshort *v ); 2870 2871typedef void (APIENTRYP PFNGLMULTITEXCOORD4DPROC) ( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); 2872 2873typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVPROC) ( GLenum target, const GLdouble *v ); 2874 2875typedef void (APIENTRYP PFNGLMULTITEXCOORD4FPROC) ( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); 2876 2877typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVPROC) ( GLenum target, const GLfloat *v ); 2878 2879typedef void (APIENTRYP PFNGLMULTITEXCOORD4IPROC) ( GLenum target, GLint s, GLint t, GLint r, GLint q ); 2880 2881typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVPROC) ( GLenum target, const GLint *v ); 2882 2883typedef void (APIENTRYP PFNGLMULTITEXCOORD4SPROC) ( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); 2884 2885typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVPROC) ( GLenum target, const GLshort *v ); 2886 2887 2888typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXDPROC) ( const GLdouble m[16] ); 2889 2890typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXFPROC) ( const GLfloat m[16] ); 2891 2892typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC) ( const GLdouble m[16] ); 2893 2894typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXFPROC) ( const GLfloat m[16] ); 2895 2896typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) ( GLclampf value, GLboolean invert ); 2897 2898#endif 2899 2900 2901typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); 2902typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); 2903typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); 2904typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); 2905typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); 2906typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); 2907typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); 2908typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); 2909typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img); 2910 2911 2912 2913/* 2914 * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) 2915 */ 2916#ifndef GL_ARB_multitexture 2917#define GL_ARB_multitexture 1 2918 2919#define GL_TEXTURE0_ARB 0x84C0 2920#define GL_TEXTURE1_ARB 0x84C1 2921#define GL_TEXTURE2_ARB 0x84C2 2922#define GL_TEXTURE3_ARB 0x84C3 2923#define GL_TEXTURE4_ARB 0x84C4 2924#define GL_TEXTURE5_ARB 0x84C5 2925#define GL_TEXTURE6_ARB 0x84C6 2926#define GL_TEXTURE7_ARB 0x84C7 2927#define GL_TEXTURE8_ARB 0x84C8 2928#define GL_TEXTURE9_ARB 0x84C9 2929#define GL_TEXTURE10_ARB 0x84CA 2930#define GL_TEXTURE11_ARB 0x84CB 2931#define GL_TEXTURE12_ARB 0x84CC 2932#define GL_TEXTURE13_ARB 0x84CD 2933#define GL_TEXTURE14_ARB 0x84CE 2934#define GL_TEXTURE15_ARB 0x84CF 2935#define GL_TEXTURE16_ARB 0x84D0 2936#define GL_TEXTURE17_ARB 0x84D1 2937#define GL_TEXTURE18_ARB 0x84D2 2938#define GL_TEXTURE19_ARB 0x84D3 2939#define GL_TEXTURE20_ARB 0x84D4 2940#define GL_TEXTURE21_ARB 0x84D5 2941#define GL_TEXTURE22_ARB 0x84D6 2942#define GL_TEXTURE23_ARB 0x84D7 2943#define GL_TEXTURE24_ARB 0x84D8 2944#define GL_TEXTURE25_ARB 0x84D9 2945#define GL_TEXTURE26_ARB 0x84DA 2946#define GL_TEXTURE27_ARB 0x84DB 2947#define GL_TEXTURE28_ARB 0x84DC 2948#define GL_TEXTURE29_ARB 0x84DD 2949#define GL_TEXTURE30_ARB 0x84DE 2950#define GL_TEXTURE31_ARB 0x84DF 2951#define GL_ACTIVE_TEXTURE_ARB 0x84E0 2952#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 2953#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 2954 2955#ifndef SDL_OPENGL_1_NO_PROTOTYPES 2956 2957GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); 2958GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); 2959GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); 2960GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); 2961GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); 2962GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); 2963GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); 2964GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); 2965GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); 2966GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); 2967GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); 2968GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); 2969GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); 2970GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); 2971GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); 2972GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); 2973GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); 2974GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); 2975GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); 2976GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); 2977GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); 2978GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); 2979GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); 2980GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); 2981GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); 2982GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); 2983GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 2984GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); 2985GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 2986GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); 2987GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); 2988GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); 2989GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); 2990GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); 2991 2992#endif 2993#ifdef SDL_OPENGL_1_FUNCTION_TYPEDEFS 2994 2995typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); 2996typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); 2997typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); 2998typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); 2999typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); 3000typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); 3001typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); 3002typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); 3003typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); 3004typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); 3005typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); 3006typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); 3007typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); 3008typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); 3009typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); 3010typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); 3011typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); 3012typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); 3013typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); 3014typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); 3015typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); 3016typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); 3017typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); 3018typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); 3019typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); 3020typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); 3021typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 3022typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); 3023typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 3024typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); 3025typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); 3026typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); 3027typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); 3028typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); 3029 3030#endif 3031 3032typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); 3033typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); 3034typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); 3035typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); 3036typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); 3037typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); 3038typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); 3039typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); 3040typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); 3041typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); 3042typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); 3043typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); 3044typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); 3045typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); 3046typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); 3047typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); 3048typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); 3049typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); 3050typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); 3051typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); 3052typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); 3053typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); 3054typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); 3055typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); 3056typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); 3057typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); 3058typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 3059typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); 3060typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 3061typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); 3062typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); 3063typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); 3064typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); 3065typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); 3066 3067#endif /* GL_ARB_multitexture */ 3068 3069 3070 3071/* 3072 * Define this token if you want "old-style" header file behaviour (extensions 3073 * defined in gl.h). Otherwise, extensions will be included from glext.h. 3074 */ 3075#if !defined(NO_SDL_GLEXT) && !defined(GL_GLEXT_LEGACY) 3076#include <SDL3/SDL_opengl_glext.h> 3077#endif /* GL_GLEXT_LEGACY */ 3078 3079 3080 3081/********************************************************************** 3082 * Begin system-specific stuff 3083 */ 3084#if defined(PRAGMA_EXPORT_SUPPORTED) 3085#pragma export off 3086#endif 3087 3088/* 3089 * End system-specific stuff 3090 **********************************************************************/ 3091 3092 3093#ifdef __cplusplus 3094} 3095#endif 3096 3097#endif /* __gl_h_ */ 3098 3099#endif /* !SDL_PLATFORM_IOS */ 3100 3101#endif /* SDL_opengl_h_ */ 3102[FILE END](C) 2025 0x4248 (C) 2025 4248 Media and 4248 Systems, All part of 0x4248 See LICENCE files for more information. Not all files are by 0x4248 always check Licencing.