1 #ifndef __gl_ATI_h_ 2 #define __gl_ATI_h_ 3 /* 4 ** Copyright (C) 1998-2002 ATI Technologies Inc. 5 */ 6 7 #ifdef __cplusplus 8 extern "C" { 9 #endif 10 11 #ifndef APIENTRY 12 #define WIN32_LEAN_AND_MEAN 1 13 #include <windows.h> 14 #endif 15 16 /* 17 ** Notes: 18 ** 19 ** Listed support is for current drivers and should really only be used 20 ** as a guideline. ISV should still use glGetString() and 21 ** wglGetExtensionsString() to determine the exact set of supported 22 ** GL and WGL extensions. 23 ** 24 */ 25 26 /* 27 ** ARB EXTENSIONS 28 */ 29 30 /* 31 ** GL_ARB_matrix_palette 32 ** 33 ** Support: 34 ** Rage 128 based : Not Supported 35 ** Radeon 7xxx based : Not Supported 36 ** Radeon 8xxx based : Not Supported 37 */ 38 #ifndef GL_ARB_matrix_palette 39 #define GL_ARB_matrix_palette 1 40 41 #define GL_MATRIX_PALETTE_ARB 0x8840 42 #define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841 43 #define GL_MAX_PALETTE_MATRICES_ARB 0x8842 44 #define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843 45 #define GL_MATRIX_INDEX_ARRAY_ARB 0x8844 46 #define GL_CURRENT_MATRIX_INDEX_ARB 0x8845 47 #define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846 48 #define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847 49 #define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848 50 #define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849 51 52 typedef void (APIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index); 53 typedef void (APIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, GLubyte *indices); 54 typedef void (APIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, GLushort *indices); 55 typedef void (APIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, GLuint *indices); 56 typedef void (APIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); 57 58 #endif /* GL_ARB_matrix_palette */ 59 60 /* 61 ** GL_ARB_multisample 62 ** 63 ** Support: 64 ** Rage 128 based : Not Supported 65 ** Radeon 7xxx based : Not Supported 66 ** Radeon 8xxx based : Not Supported 67 */ 68 #ifndef GL_ARB_multisample 69 #define GL_ARB_multisample 70 71 #define GL_MULTISAMPLE_ARB 0x809D 72 #define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E 73 #define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F 74 #define GL_SAMPLE_COVERAGE_ARB 0x80A0 75 #define GL_SAMPLE_BUFFERS_ARB 0x80A8 76 #define GL_SAMPLES_ARB 0x80A9 77 #define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA 78 #define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB 79 #define GL_MULTISAMPLE_BIT_ARB 0x20000000 80 81 typedef void (APIENTRY * PFNGLSAMPLECOVERAGEARBPROC)(GLclampf value, GLboolean invert); 82 83 #endif /* GL_ARB_multisample */ 84 85 /* 86 ** GL_ARB_multitexture 87 ** 88 ** Support: 89 ** Rage 128 based : Supported 90 ** Radeon 7xxx based : Supported 91 ** Radeon 8xxx based : Supported 92 */ 93 #ifndef GL_ARB_multitexture 94 #define GL_ARB_multitexture 1 95 96 #define GL_ACTIVE_TEXTURE_ARB 0x84E0 97 #define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 98 #define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 99 #define GL_TEXTURE0_ARB 0x84C0 100 #define GL_TEXTURE1_ARB 0x84C1 101 #define GL_TEXTURE2_ARB 0x84C2 102 #define GL_TEXTURE3_ARB 0x84C3 103 #define GL_TEXTURE4_ARB 0x84C4 104 #define GL_TEXTURE5_ARB 0x84C5 105 #define GL_TEXTURE6_ARB 0x84C6 106 #define GL_TEXTURE7_ARB 0x84C7 107 #define GL_TEXTURE8_ARB 0x84C8 108 #define GL_TEXTURE9_ARB 0x84C9 109 #define GL_TEXTURE10_ARB 0x84CA 110 #define GL_TEXTURE11_ARB 0x84CB 111 #define GL_TEXTURE12_ARB 0x84CC 112 #define GL_TEXTURE13_ARB 0x84CD 113 #define GL_TEXTURE14_ARB 0x84CE 114 #define GL_TEXTURE15_ARB 0x84CF 115 #define GL_TEXTURE16_ARB 0x84D0 116 #define GL_TEXTURE17_ARB 0x84D1 117 #define GL_TEXTURE18_ARB 0x84D2 118 #define GL_TEXTURE19_ARB 0x84D3 119 #define GL_TEXTURE20_ARB 0x84D4 120 #define GL_TEXTURE21_ARB 0x84D5 121 #define GL_TEXTURE22_ARB 0x84D6 122 #define GL_TEXTURE23_ARB 0x84D7 123 #define GL_TEXTURE24_ARB 0x84D8 124 #define GL_TEXTURE25_ARB 0x84D9 125 #define GL_TEXTURE26_ARB 0x84DA 126 #define GL_TEXTURE27_ARB 0x84DB 127 #define GL_TEXTURE28_ARB 0x84DC 128 #define GL_TEXTURE29_ARB 0x84DD 129 #define GL_TEXTURE30_ARB 0x84DE 130 #define GL_TEXTURE31_ARB 0x84DF 131 132 typedef void (APIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture); 133 typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); 134 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum texture, GLdouble s); 135 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum texture, const GLdouble *v); 136 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum texture, GLfloat s); 137 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum texture, const GLfloat *v); 138 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum texture, GLint s); 139 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum texture, const GLint *v); 140 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum texture, GLshort s); 141 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum texture, const GLshort *v); 142 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum texture, GLdouble s, GLdouble t); 143 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum texture, const GLdouble *v); 144 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum texture, GLfloat s, GLfloat t); 145 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum texture, const GLfloat *v); 146 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum texture, GLint s, GLint t); 147 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum texture, const GLint *v); 148 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum texture, GLshort s, GLshort t); 149 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum texture, const GLshort *v); 150 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum texture, GLdouble s, GLdouble t, GLdouble r); 151 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum texture, const GLdouble *v); 152 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum texture, GLfloat s, GLfloat t, GLfloat r); 153 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum texture, const GLfloat *v); 154 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum texture, GLint s, GLint t, GLint r); 155 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum texture, const GLint *v); 156 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum texture, GLshort s, GLshort t, GLshort r); 157 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum texture, const GLshort *v); 158 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum texture, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 159 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum texture, const GLdouble *v); 160 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum texture, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 161 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum texture, const GLfloat *v); 162 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum texture, GLint s, GLint t, GLint r, GLint q); 163 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum texture, const GLint *v); 164 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum texture, GLshort s, GLshort t, GLshort r, GLshort q); 165 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum texture, const GLshort *v); 166 167 #endif /* GL_ARB_multitexture */ 168 169 /* 170 ** GL_ARB_texture_border_clamp 171 ** 172 ** Support: 173 ** Rage 128 based : Supported 174 ** Radeon 7xxx based : Supported 175 ** Radeon 8xxx based : Supported 176 */ 177 #ifndef GL_ARB_texture_border_clamp 178 #define GL_ARB_texture_border_clamp 1 179 180 #define GL_CLAMP_TO_BORDER_ARB 0x812D 181 182 #endif /* GL_ARB_texture_border_clamp */ 183 184 /* 185 ** GL_ARB_texture_compression 186 ** 187 ** Support: 188 ** Rage 128 based : Not Supported 189 ** Radeon 7xxx based : Supported 190 ** Radeon 8xxx based : Supported 191 */ 192 #ifndef GL_ARB_texture_compression 193 #define GL_ARB_texture_compression 1 194 195 #define GL_COMPRESSED_ALPHA_ARB 0x84E9 196 #define GL_COMPRESSED_LUMINANCE_ARB 0x84EA 197 #define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB 198 #define GL_COMPRESSED_INTENSITY_ARB 0x84EC 199 #define GL_COMPRESSED_RGB_ARB 0x84ED 200 #define GL_COMPRESSED_RGBA_ARB 0x84EE 201 #define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF 202 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0 203 #define GL_TEXTURE_COMPRESSED_ARB 0x86A1 204 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2 205 #define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3 206 207 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC)(GLenum target, GLint level, 208 GLenum internalFormat, GLsizei width, 209 GLsizei height, GLsizei depth, 210 GLint border, GLsizei imageSize, 211 const GLvoid *data); 212 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC)(GLenum target, GLint level, 213 GLenum internalFormat, GLsizei width, 214 GLsizei height, GLint border, 215 GLsizei imageSize, const GLvoid *data); 216 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC)(GLenum target, GLint level, 217 GLenum internalFormat, GLsizei width, 218 GLint border, GLsizei imageSize, 219 const GLvoid *data); 220 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC)(GLenum target, GLint level, 221 GLint xoffset, GLint yoffset, 222 GLint zoffset, GLsizei width, 223 GLsizei height, GLsizei depth, 224 GLenum format, GLsizei imageSize, 225 const GLvoid *data); 226 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC)(GLenum target, GLint level, 227 GLint xoffset, GLint yoffset, 228 GLsizei width, GLsizei height, 229 GLenum format, GLsizei imageSize, 230 const GLvoid *data); 231 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC)(GLenum target, GLint level, 232 GLint xoffset, GLsizei width, 233 GLenum format, GLsizei imageSize, 234 const GLvoid *data); 235 typedef void (APIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC)(GLenum target, GLint lod, 236 GLvoid *img); 237 238 239 #endif /* GL_ARB_texture_compression */ 240 241 /* 242 ** GL_ARB_texture_cube_map 243 ** 244 ** Support: 245 ** Rage 128 based : Not Supported 246 ** Radeon 7xxx based : Supported 247 ** Radeon 8xxx based : Supported 248 */ 249 #ifndef GL_ARB_texture_cube_map 250 #define GL_ARB_texture_cube_map 1 251 252 #define GL_NORMAL_MAP_ARB 0x8511 253 #define GL_REFLECTION_MAP_ARB 0x8512 254 #define GL_TEXTURE_CUBE_MAP_ARB 0x8513 255 #define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514 256 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515 257 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516 258 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517 259 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518 260 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519 261 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A 262 #define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B 263 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C 264 265 #endif /* GL_ARB_texture_cube_map */ 266 267 /* 268 ** GL_ARB_texture_env_add 269 ** 270 ** Support: 271 ** Rage 128 based : Supported 272 ** Radeon 7xxx based : Supported 273 ** Radeon 8xxx based : Supported 274 */ 275 #ifndef GL_ARB_texture_env_add 276 #define GL_ARB_texture_env_add 1 277 278 #endif /* GL_ARB_texture_env_add */ 279 280 /* 281 ** GL_ARB_texture_env_combine 282 ** 283 ** Support: 284 ** Rage 128 based : Not Supported 285 ** Radeon 7xxx based : Supported 286 ** Radeon 8xxx based : Supported 287 */ 288 289 #ifndef GL_ARB_texture_env_combine 290 #define GL_ARB_texture_env_combine 1 291 292 #define GL_COMBINE_ARB 0x8570 293 #define GL_COMBINE_RGB_ARB 0x8571 294 #define GL_COMBINE_ALPHA_ARB 0x8572 295 #define GL_SOURCE0_RGB_ARB 0x8580 296 #define GL_SOURCE1_RGB_ARB 0x8581 297 #define GL_SOURCE2_RGB_ARB 0x8582 298 #define GL_SOURCE0_ALPHA_ARB 0x8588 299 #define GL_SOURCE1_ALPHA_ARB 0x8589 300 #define GL_SOURCE2_ALPHA_ARB 0x858A 301 #define GL_OPERAND0_RGB_ARB 0x8590 302 #define GL_OPERAND1_RGB_ARB 0x8591 303 #define GL_OPERAND2_RGB_ARB 0x8592 304 #define GL_OPERAND0_ALPHA_ARB 0x8598 305 #define GL_OPERAND1_ALPHA_ARB 0x8599 306 #define GL_OPERAND2_ALPHA_ARB 0x859A 307 #define GL_RGB_SCALE_ARB 0x8573 308 #define GL_ADD_SIGNED_ARB 0x8574 309 #define GL_INTERPOLATE_ARB 0x8575 310 #define GL_CONSTANT_ARB 0x8576 311 #define GL_PRIMARY_COLOR_ARB 0x8577 312 #define GL_PREVIOUS_ARB 0x8578 313 #define GL_SUBTRACT_ARB 0x84E7 314 315 #endif /* GL_ARB_texture_env_combine */ 316 317 /* 318 ** GL_ARB_texture_env_crossbar 319 ** 320 ** Support: 321 ** Rage 128 based : Not Supported 322 ** Radeon 7xxx based : Supported 323 ** Radeon 8xxx based : Supported 324 */ 325 #ifndef GL_ARB_texture_env_crossbar 326 #define GL_ARB_texture_env_crossbar 1 327 328 #endif /* GL_ARB_texture_env_crossbar */ 329 330 /* 331 ** GL_ARB_texture_env_dot3 332 ** 333 ** Support: 334 ** Rage 128 based : Not Supported 335 ** Radeon 7xxx based : Supported 336 ** Radeon 8xxx based : Supported 337 */ 338 #ifndef GL_ARB_texture_env_dot3 339 #define GL_ARB_texture_env_dot3 1 340 341 #define GL_DOT3_RGB_ARB 0x86AE 342 #define GL_DOT3_RGBA_ARB 0x86AF 343 344 #endif /* GL_ARB_texture_env_dot3 */ 345 346 /* 347 ** GL_ARB_transpose_matrix 348 ** 349 ** Support: 350 ** Rage 128 based : Supported 351 ** Radeon 7xxx based : Supported 352 ** Radeon 8xxx based : Supported 353 */ 354 #ifndef GL_ARB_transpose_matrix 355 #define GL_ARB_transpose_matrix 1 356 357 #define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3 358 #define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4 359 #define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5 360 #define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6 361 362 typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC)(const GLfloat m[16]); 363 typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC)(const GLdouble m[16]); 364 typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC)(const GLfloat m[16]); 365 typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC)(const GLdouble m[16]); 366 367 #endif /* GL_ARB_transpose_matrix */ 368 369 /* 370 ** GL_ARB_vertex_blend 371 ** 372 ** Support: 373 ** Rage 128 based : Supported 374 ** Radeon 7xxx based : Supported 375 ** Radeon 8xxx based : Supported 376 */ 377 #ifndef GL_ARB_vertex_blend 378 #define GL_ARB_vertex_blend 1 379 380 #define GL_MAX_VERTEX_UNITS_ARB 0x86A4 381 #define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5 382 #define GL_WEIGHT_SUM_UNITY_ARB 0x86A6 383 #define GL_VERTEX_BLEND_ARB 0x86A7 384 #define GL_CURRENT_WEIGHT_ARB 0x86A8 385 #define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9 386 #define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA 387 #define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB 388 #define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC 389 #define GL_WEIGHT_ARRAY_ARB 0x86AD 390 #define GL_MODELVIEW0_ARB 0x1700 391 #define GL_MODELVIEW1_ARB 0x850a 392 #define GL_MODELVIEW2_ARB 0x8722 393 #define GL_MODELVIEW3_ARB 0x8723 394 #define GL_MODELVIEW4_ARB 0x8724 395 #define GL_MODELVIEW5_ARB 0x8725 396 #define GL_MODELVIEW6_ARB 0x8726 397 #define GL_MODELVIEW7_ARB 0x8727 398 #define GL_MODELVIEW8_ARB 0x8728 399 #define GL_MODELVIEW9_ARB 0x8729 400 #define GL_MODELVIEW10_ARB 0x872A 401 #define GL_MODELVIEW11_ARB 0x872B 402 #define GL_MODELVIEW12_ARB 0x872C 403 #define GL_MODELVIEW13_ARB 0x872D 404 #define GL_MODELVIEW14_ARB 0x872E 405 #define GL_MODELVIEW15_ARB 0x872F 406 #define GL_MODELVIEW16_ARB 0x8730 407 #define GL_MODELVIEW17_ARB 0x8731 408 #define GL_MODELVIEW18_ARB 0x8732 409 #define GL_MODELVIEW19_ARB 0x8733 410 #define GL_MODELVIEW20_ARB 0x8734 411 #define GL_MODELVIEW21_ARB 0x8735 412 #define GL_MODELVIEW22_ARB 0x8736 413 #define GL_MODELVIEW23_ARB 0x8737 414 #define GL_MODELVIEW24_ARB 0x8738 415 #define GL_MODELVIEW25_ARB 0x8739 416 #define GL_MODELVIEW26_ARB 0x873A 417 #define GL_MODELVIEW27_ARB 0x873B 418 #define GL_MODELVIEW28_ARB 0x873C 419 #define GL_MODELVIEW29_ARB 0x873D 420 #define GL_MODELVIEW30_ARB 0x873E 421 #define GL_MODELVIEW31_ARB 0x873F 422 423 typedef void (APIENTRY *PFNGLWEIGHTBVARBPROC)(GLint size, GLbyte *weights); 424 typedef void (APIENTRY *PFNGLWEIGHTSVARBPROC)(GLint size, GLshort *weights); 425 typedef void (APIENTRY *PFNGLWEIGHTIVARBPROC)(GLint size, GLint *weights); 426 typedef void (APIENTRY *PFNGLWEIGHTFVARBPROC)(GLint size, GLfloat *weights); 427 typedef void (APIENTRY *PFNGLWEIGHTDVARBPROC)(GLint size, GLdouble *weights); 428 typedef void (APIENTRY *PFNGLWEIGHTUBVARBPROC)(GLint size, GLubyte *weights); 429 typedef void (APIENTRY *PFNGLWEIGHTUSVARBPROC)(GLint size, GLushort *weights); 430 typedef void (APIENTRY *PFNGLWEIGHTUIVARBPROC)(GLint size, GLuint *weights); 431 typedef void (APIENTRY *PFNGLWEIGHTPOINTERARBPROC)(GLint size, GLenum type, GLsizei stride, GLvoid *pointer); 432 typedef void (APIENTRY *PFNGLVERTEXBLENDARBPROC)(GLint count); 433 434 #endif /* GL_ARB_vertex_blend */ 435 436 /* 437 ** GL_ARB_window_pos 438 ** 439 ** Support: 440 ** Rage 128 * based : Supported 441 ** Radeon 7xxx based : Supported 442 ** Radeon 8xxx based : Supported 443 */ 444 #ifndef GL_ARB_window_pos 445 #define GL_ARB_window_pos 1 446 447 typedef void (APIENTRY * PFNGLWINDOWPOS2DARBPROC) (double x, double y); 448 typedef void (APIENTRY * PFNGLWINDOWPOS2FARBPROC) (float x, float y); 449 typedef void (APIENTRY * PFNGLWINDOWPOS2IARBPROC) (int x, int y); 450 typedef void (APIENTRY * PFNGLWINDOWPOS2SARBPROC) (short x, short y); 451 typedef void (APIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const int *p); 452 typedef void (APIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const short *p); 453 typedef void (APIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const float *p); 454 typedef void (APIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const double *p); 455 typedef void (APIENTRY * PFNGLWINDOWPOS3IARBPROC) (int x, int y, int z); 456 typedef void (APIENTRY * PFNGLWINDOWPOS3SARBPROC) (short x, short y, short z); 457 typedef void (APIENTRY * PFNGLWINDOWPOS3FARBPROC) (float x, float y, float z); 458 typedef void (APIENTRY * PFNGLWINDOWPOS3DARBPROC) (double x, double y, double z); 459 typedef void (APIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const int *p); 460 typedef void (APIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const short *p); 461 typedef void (APIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const float *p); 462 typedef void (APIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const double *p); 463 464 #endif /* GL_ARB_window_pos */ 465 466 /* 467 ** GL_ARB_depth_texture 468 ** 469 ** Support: 470 ** Rage 128 based : Not Supported 471 ** Radeon 7xxx based : Not Supported 472 ** Radeon 8xxx based : Not Supported 473 */ 474 475 #ifndef GL_ARB_depth_texture 476 #define GL_ARB_depth_texture 1 477 478 #define GL_DEPTH_COMPONENT16_ARB 0x81A5 479 #define GL_DEPTH_COMPONENT24_ARB 0x81A6 480 #define GL_DEPTH_COMPONENT32_ARB 0x81A7 481 482 #define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A 483 484 #define GL_DEPTH_TEXTURE_MODE_ARB 0x884B 485 486 #endif /* GL_ARB_depth_texture */ 487 488 #ifndef GL_ARB_shadow 489 #define GL_ARB_shadow 1 490 491 /* 492 ** GL_ARB_shadow 493 ** 494 ** Support: 495 ** Rage 128 based : Not Supported 496 ** Radeon 7xxx based : Not Supported 497 ** Radeon 8xxx based : Not Supported 498 */ 499 500 #define GL_TEXTURE_COMPARE_MODE_ARB 0x884C 501 #define GL_TEXTURE_COMPARE_FUNC_ARB 0X884D 502 #define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E 503 #endif /* GL_ARB_shadow */ 504 505 /* 506 ** GL_ARB_shadow_ambient 507 ** 508 ** Support: 509 ** Rage 128 based : Not Supported 510 ** Radeon 7xxx based : Not Supported 511 ** Radeon 8xxx based : Not Supported 512 */ 513 #ifndef GL_ARB_shadow_ambient 514 #define GL_ARB_shadow_ambient 1 515 516 #define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF 517 518 #endif /* GL_ARB_shadow_ambient */ 519 520 /* 521 ** ATI EXTENSIONS 522 */ 523 524 /* 525 ** GL_ATI_envmap_bumpmap 526 ** 527 ** Support: 528 ** Rage 128 based : Not Supported 529 ** Radeon 7xxx based : Supported 530 ** Radeon 8xxx based : Supported 531 */ 532 #ifndef GL_ATI_envmap_bumpmap 533 #define GL_ATI_envmap_bumpmap 1 534 535 #define GL_BUMP_ROT_MATRIX_ATI 0x8775 536 #define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776 537 #define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777 538 #define GL_BUMP_TEX_UNITS_ATI 0x8778 539 #define GL_DUDV_ATI 0x8779 540 #define GL_DU8DV8_ATI 0x877A 541 #define GL_BUMP_ENVMAP_ATI 0x877B 542 #define GL_BUMP_TARGET_ATI 0x877C 543 544 typedef void (APIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); 545 typedef void (APIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); 546 typedef void (APIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); 547 typedef void (APIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); 548 549 550 #endif /* GL_ATI_envmap_bumpmap */ 551 552 553 /* 554 ** GL_ATI_fragment_shader 555 ** 556 ** Support: 557 ** Rage 128 based : Not Supported 558 ** Radeon 7xxx based : Not Supported 559 ** Radeon 8xxx based : Supported 560 */ 561 #ifndef GL_ATI_fragment_shader 562 563 #define GL_FRAGMENT_SHADER_ATI 0x8920 564 #define GL_REG_0_ATI 0x8921 565 #define GL_REG_1_ATI 0x8922 566 #define GL_REG_2_ATI 0x8923 567 #define GL_REG_3_ATI 0x8924 568 #define GL_REG_4_ATI 0x8925 569 #define GL_REG_5_ATI 0x8926 570 #define GL_REG_6_ATI 0x8927 571 #define GL_REG_7_ATI 0x8928 572 #define GL_REG_8_ATI 0x8929 573 #define GL_REG_9_ATI 0x892A 574 #define GL_REG_10_ATI 0x892B 575 #define GL_REG_11_ATI 0x892C 576 #define GL_REG_12_ATI 0x892D 577 #define GL_REG_13_ATI 0x892E 578 #define GL_REG_14_ATI 0x892F 579 #define GL_REG_15_ATI 0x8930 580 #define GL_REG_16_ATI 0x8931 581 #define GL_REG_17_ATI 0x8932 582 #define GL_REG_18_ATI 0x8933 583 #define GL_REG_19_ATI 0x8934 584 #define GL_REG_20_ATI 0x8935 585 #define GL_REG_21_ATI 0x8936 586 #define GL_REG_22_ATI 0x8937 587 #define GL_REG_23_ATI 0x8938 588 #define GL_REG_24_ATI 0x8939 589 #define GL_REG_25_ATI 0x893A 590 #define GL_REG_26_ATI 0x893B 591 #define GL_REG_27_ATI 0x893C 592 #define GL_REG_28_ATI 0x893D 593 #define GL_REG_29_ATI 0x893E 594 #define GL_REG_30_ATI 0x893F 595 #define GL_REG_31_ATI 0x8940 596 #define GL_CON_0_ATI 0x8941 597 #define GL_CON_1_ATI 0x8942 598 #define GL_CON_2_ATI 0x8943 599 #define GL_CON_3_ATI 0x8944 600 #define GL_CON_4_ATI 0x8945 601 #define GL_CON_5_ATI 0x8946 602 #define GL_CON_6_ATI 0x8947 603 #define GL_CON_7_ATI 0x8948 604 #define GL_CON_8_ATI 0x8949 605 #define GL_CON_9_ATI 0x894A 606 #define GL_CON_10_ATI 0x894B 607 #define GL_CON_11_ATI 0x894C 608 #define GL_CON_12_ATI 0x894D 609 #define GL_CON_13_ATI 0x894E 610 #define GL_CON_14_ATI 0x894F 611 #define GL_CON_15_ATI 0x8950 612 #define GL_CON_16_ATI 0x8951 613 #define GL_CON_17_ATI 0x8952 614 #define GL_CON_18_ATI 0x8953 615 #define GL_CON_19_ATI 0x8954 616 #define GL_CON_20_ATI 0x8955 617 #define GL_CON_21_ATI 0x8956 618 #define GL_CON_22_ATI 0x8957 619 #define GL_CON_23_ATI 0x8958 620 #define GL_CON_24_ATI 0x8959 621 #define GL_CON_25_ATI 0x895A 622 #define GL_CON_26_ATI 0x895B 623 #define GL_CON_27_ATI 0x895C 624 #define GL_CON_28_ATI 0x895D 625 #define GL_CON_29_ATI 0x895E 626 #define GL_CON_30_ATI 0x895F 627 #define GL_CON_31_ATI 0x8960 628 #define GL_MOV_ATI 0x8961 629 #define GL_ADD_ATI 0x8963 630 #define GL_MUL_ATI 0x8964 631 #define GL_SUB_ATI 0x8965 632 #define GL_DOT3_ATI 0x8966 633 #define GL_DOT4_ATI 0x8967 634 #define GL_MAD_ATI 0x8968 635 #define GL_LERP_ATI 0x8969 636 #define GL_CND_ATI 0x896A 637 #define GL_CND0_ATI 0x896B 638 #define GL_DOT2_ADD_ATI 0x896C 639 #define GL_SECONDARY_INTERPOLATOR_ATI 0x896D 640 #define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E 641 #define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F 642 #define GL_NUM_PASSES_ATI 0x8970 643 #define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971 644 #define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972 645 #define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973 646 #define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974 647 #define GL_COLOR_ALPHA_PAIRING_ATI 0x8975 648 #define GL_SWIZZLE_STR_ATI 0x8976 649 #define GL_SWIZZLE_STQ_ATI 0x8977 650 #define GL_SWIZZLE_STR_DR_ATI 0x8978 651 #define GL_SWIZZLE_STQ_DQ_ATI 0x8979 652 #define GL_SWIZZLE_STRQ_ATI 0x897A 653 #define GL_SWIZZLE_STRQ_DQ_ATI 0x897B 654 #define GL_RED_BIT_ATI 0x00000001 655 #define GL_GREEN_BIT_ATI 0x00000002 656 #define GL_BLUE_BIT_ATI 0x00000004 657 #define GL_2X_BIT_ATI 0x00000001 658 #define GL_4X_BIT_ATI 0x00000002 659 #define GL_8X_BIT_ATI 0x00000004 660 #define GL_HALF_BIT_ATI 0x00000008 661 #define GL_QUARTER_BIT_ATI 0x00000010 662 #define GL_EIGHTH_BIT_ATI 0x00000020 663 #define GL_SATURATE_BIT_ATI 0x00000040 664 #define GL_COMP_BIT_ATI 0x00000002 665 #define GL_NEGATE_BIT_ATI 0x00000004 666 #define GL_BIAS_BIT_ATI 0x00000008 667 668 #endif /* GL_ATI_fragment_shader */ 669 670 #if !defined (GL_ATI_fragment_shader) || defined (__APPLE__) || defined (MACOSX) 671 #if !defined (GL_ATI_fragment_shader) 672 #define GL_ATI_fragment_shader 1 673 #endif /* GL_ATI_fragment_shader */ 674 typedef GLuint (APIENTRY *PFNGLGENFRAGMENTSHADERSATIPROC)(GLuint range); 675 typedef GLvoid (APIENTRY *PFNGLBINDFRAGMENTSHADERATIPROC)(GLuint id); 676 typedef GLvoid (APIENTRY *PFNGLDELETEFRAGMENTSHADERATIPROC)(GLuint id); 677 typedef GLvoid (APIENTRY *PFNGLBEGINFRAGMENTSHADERATIPROC)(GLvoid); 678 typedef GLvoid (APIENTRY *PFNGLENDFRAGMENTSHADERATIPROC)(GLvoid); 679 typedef GLvoid (APIENTRY *PFNGLPASSTEXCOORDATIPROC)(GLuint dst, GLuint coord, GLenum swizzle); 680 typedef GLvoid (APIENTRY *PFNGLSAMPLEMAPATIPROC)(GLuint dst, GLuint interp, GLenum swizzle); 681 typedef GLvoid (APIENTRY *PFNGLCOLORFRAGMENTOP1ATIPROC)(GLenum op, GLuint dst, GLuint dstMask, 682 GLuint dstMod, GLuint arg1, GLuint arg1Rep, 683 GLuint arg1Mod); 684 typedef GLvoid (APIENTRY *PFNGLCOLORFRAGMENTOP2ATIPROC)(GLenum op, GLuint dst, GLuint dstMask, 685 GLuint dstMod, GLuint arg1, GLuint arg1Rep, 686 GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, 687 GLuint arg2Mod); 688 typedef GLvoid (APIENTRY *PFNGLCOLORFRAGMENTOP3ATIPROC)(GLenum op, GLuint dst, GLuint dstMask, 689 GLuint dstMod, GLuint arg1, GLuint arg1Rep, 690 GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, 691 GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, 692 GLuint arg3Mod); 693 typedef GLvoid (APIENTRY *PFNGLALPHAFRAGMENTOP1ATIPROC)(GLenum op, GLuint dst, GLuint dstMod, 694 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); 695 typedef GLvoid (APIENTRY *PFNGLALPHAFRAGMENTOP2ATIPROC)(GLenum op, GLuint dst, GLuint dstMod, 696 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, 697 GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); 698 typedef GLvoid (APIENTRY *PFNGLALPHAFRAGMENTOP3ATIPROC)(GLenum op, GLuint dst, GLuint dstMod, 699 GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, 700 GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, 701 GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); 702 typedef GLvoid (APIENTRY *PFNGLSETFRAGMENTSHADERCONSTANTATIPROC)(GLuint dst, const GLfloat *value); 703 704 #endif /* !GL_ATI_fragment_shader || __APPLE__ || MACOSX */ 705 706 /* 707 ** GL_ATI_pn_triangles 708 ** 709 ** Support 710 ** Rage 128 based : Not Supported 711 ** Radeon 7xxx based : Not Supported 712 ** Radeon 8xxx based : Supported 713 */ 714 #ifndef GL_ATI_pn_triangles 715 #define GL_ATI_pn_triangles 1 716 717 #define GL_PN_TRIANGLES_ATI 0x87F0 718 #define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1 719 #define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2 720 #define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3 721 #define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4 722 #define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5 723 #define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6 724 #define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7 725 #define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8 726 727 typedef void (APIENTRY *PFNGLPNTRIANGLESIATIPROC)(GLenum pname, GLint param); 728 typedef void (APIENTRY *PFNGLPNTRIANGLESFATIPROC)(GLenum pname, GLfloat param); 729 730 #endif /* GL_ATI_pn_triangles */ 731 732 /* 733 ** GL_ATI_texture_mirror_once 734 ** 735 ** Support: 736 ** Rage 128 based : Supported 737 ** Radeon 7xxx based : Supported 738 ** Radeon 8xxx based : Supported 739 */ 740 #ifndef GL_ATI_texture_mirror_once 741 #define GL_ATI_texture_mirror_once 1 742 743 #define GL_MIRROR_CLAMP_ATI 0x8742 744 #define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743 745 746 #endif /* GL_ATI_texture_mirror_once */ 747 748 /* 749 ** GL_ATI_vertex_streams 750 ** 751 ** Support: 752 ** Rage 128 based : Supported 753 ** Radeon 7xxx based : Supported 754 ** Radeon 8xxx based : Supported 755 */ 756 #ifndef GL_ATI_vertex_streams 757 #define GL_ATI_vertex_streams 1 758 759 #define GL_MAX_VERTEX_STREAMS_ATI 0x876B 760 #define GL_VERTEX_SOURCE_ATI 0x876C 761 #define GL_VERTEX_STREAM0_ATI 0x876D 762 #define GL_VERTEX_STREAM1_ATI 0x876E 763 #define GL_VERTEX_STREAM2_ATI 0x876F 764 #define GL_VERTEX_STREAM3_ATI 0x8770 765 #define GL_VERTEX_STREAM4_ATI 0x8771 766 #define GL_VERTEX_STREAM5_ATI 0x8772 767 #define GL_VERTEX_STREAM6_ATI 0x8773 768 #define GL_VERTEX_STREAM7_ATI 0x8774 769 770 typedef void (APIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream); 771 typedef void (APIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param); 772 typedef void (APIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param); 773 typedef void (APIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y); 774 typedef void (APIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *v); 775 typedef void (APIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y); 776 typedef void (APIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *v); 777 typedef void (APIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y); 778 typedef void (APIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *v); 779 typedef void (APIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y); 780 typedef void (APIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *v); 781 typedef void (APIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); 782 typedef void (APIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *v); 783 typedef void (APIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); 784 typedef void (APIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *v); 785 typedef void (APIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); 786 typedef void (APIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v); 787 typedef void (APIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); 788 typedef void (APIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v); 789 typedef void (APIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); 790 typedef void (APIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *v); 791 typedef void (APIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); 792 typedef void (APIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *v); 793 typedef void (APIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 794 typedef void (APIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *v); 795 typedef void (APIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w); 796 typedef void (APIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *v); 797 typedef void (APIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); 798 typedef void (APIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *v); 799 typedef void (APIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); 800 typedef void (APIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *v); 801 typedef void (APIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); 802 typedef void (APIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *v); 803 typedef void (APIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); 804 typedef void (APIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v); 805 typedef void (APIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); 806 typedef void (APIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v); 807 808 #endif /* GL_ATI_vertex_streams */ 809 810 /* 811 ** GL_ATI_point_cull_mode 812 ** 813 ** Support: 814 ** Rage 128 based : Not Supported 815 ** Radeon 7xxx based : Not Supported 816 ** Radeon 8xxx based : Supported 817 */ 818 #ifndef GL_ATI_point_cull_mode 819 #define GL_ATI_point_cull_mode 1 820 821 #define GL_POINT_CULL_MODE_ATI 0x60b3 822 #define GL_POINT_CULL_CENTER_ATI 0x60b4 823 #define GL_POINT_CLIP_ATI 0x60b5 824 825 #endif /* GL_ATI_point_cull_mode */ 826 827 /* 828 ** GL_ATI_vertex_array_object 829 ** 830 ** Support: 831 ** Rage 128 based : Not Supported 832 ** Radeon 7xxx based : Supported 833 ** Radeon 8xxx based : Supported 834 */ 835 #ifndef GL_ATI_vertex_array_object 836 #define GL_ATI_vertex_array_object 1 837 838 #define GL_STATIC_ATI 0x8760 839 #define GL_DYNAMIC_ATI 0x8761 840 #define GL_PRESERVE_ATI 0x8762 841 #define GL_DISCARD_ATI 0x8763 842 843 #define GL_OBJECT_BUFFER_SIZE_ATI 0x8764 844 #define GL_OBJECT_BUFFER_USAGE_ATI 0x8765 845 #define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766 846 #define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767 847 848 typedef GLuint (APIENTRY * PFNGLNEWOBJECTBUFFERATIPROC)(GLsizei size, const GLvoid *pointer, GLenum usage); 849 typedef GLboolean (APIENTRY * PFNGLISOBJECTBUFFERATIPROC)(GLuint buffer); 850 typedef void (APIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC)(GLuint buffer, GLuint offset, GLsizei size, 851 const GLvoid *pointer, GLenum preserve); 852 typedef void (APIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC)(GLuint buffer, GLenum pname, GLfloat *params); 853 typedef void (APIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC)(GLuint buffer, GLenum pname, GLint *params); 854 typedef void (APIENTRY * PFNGLFREEOBJECTBUFFERATIPROC)(GLuint buffer); 855 typedef void (APIENTRY * PFNGLARRAYOBJECTATIPROC)(GLenum array, GLint size, GLenum type, 856 GLsizei stride, GLuint buffer, GLuint offset); 857 typedef void (APIENTRY * PFNGLGETARRAYOBJECTFVATIPROC)(GLenum array, GLenum pname, GLfloat *params); 858 typedef void (APIENTRY * PFNGLGETARRAYOBJECTIVATIPROC)(GLenum array, GLenum pname, GLint *params); 859 typedef void (APIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC)(GLuint id, GLenum type, 860 GLsizei stride, GLuint buffer, GLuint offset); 861 typedef void (APIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC)(GLuint id, GLenum pname, GLfloat *params); 862 typedef void (APIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC)(GLuint id, GLenum pname, GLint *params); 863 #endif /* GL_ATI_vertex_array_object */ 864 865 /* 866 ** GL_ATI_element_array 867 ** 868 ** Support: 869 ** Rage 128 based : Not Supported 870 ** Radeon 7xxx based : Not Supported 871 ** Radeon 8xxx based : Supported 872 */ 873 #ifndef GL_ATI_element_array 874 #define GL_ATI_element_array 1 875 876 #define GL_ELEMENT_ARRAY_ATI 0x8768 877 878 #define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769 879 #define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A 880 881 typedef void (APIENTRY * PFNGLELEMENTPOINTERATIPROC)(GLenum type, const GLvoid *pointer); 882 typedef void (APIENTRY * PFNGLDRAWELEMENTARRAYATIPROC)(GLenum mode, GLsizei count); 883 typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count); 884 885 #endif /* GL_ATI_element_array */ 886 887 /* 888 ** GL_ATI_map_object_buffer 889 ** 890 ** Support: 891 ** Rage 128 based : Not Supported 892 ** Radeon 7xxx based : Supported 893 ** Radeon 8xxx based : Supported 894 */ 895 #ifndef GL_ATI_map_object_buffer 896 #define GL_ATI_map_object_buffer 1 897 898 typedef void *(APIENTRY * PFNGLMAPOBJECTBUFFERATIPROC)(GLuint buffer); 899 typedef void (APIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC)(GLuint buffer); 900 901 #endif /* GL_ATI_map_object_buffer */ 902 903 /* 904 ** ATIX EXTENSIONS 905 */ 906 907 /* 908 ** GL_ATIX_texture_env_combine3 909 ** 910 ** Support: 911 ** Rage 128 based : Not Supported 912 ** Radeon 7xxx based : Supported 913 ** Radeon 8xxx based : Supported 914 */ 915 #ifndef GL_ATIX_texture_env_combine3 916 #define GL_ATIX_texture_env_combine3 917 918 #define GL_MODULATE_ADD_ATIX 0x8744 919 #define GL_MODULATE_SIGNED_ADD_ATIX 0x8745 920 #define GL_MODULATE_SUBTRACT_ATIX 0x8746 921 922 #endif /* GL_ATIX_texture_env_combine3 */ 923 924 /* 925 ** GL_ATIX_texture_env_route 926 ** 927 ** Support 928 ** Rage 128 based : Not Supported 929 ** Radeon 7xxx based : Supported 930 ** Radeon 8xxx based : Supported 931 */ 932 #ifndef GL_ATIX_texture_env_route 933 #define GL_ATIX_texture_env_route 1 934 935 #define GL_SECONDARY_COLOR_ATIX 0x8747 936 #define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748 937 #define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749 938 939 #endif /* GL_ATIX_texture_env_route */ 940 941 /* 942 ** GL_ATIX_vertex_shader_output_point_size 943 ** 944 ** Support: 945 ** Rage 128 based : Supported (software) 946 ** Radeon 7xxx based : Supported (software) 947 ** Radeon 8xxx based : Supported 948 */ 949 #ifndef GL_ATIX_vertex_shader_output_point_size 950 #define GL_ATIX_vertex_shader_output_point_size 1 951 952 #define GL_OUTPUT_POINT_SIZE_ATIX 0x610E 953 954 #endif /* GL_ATIX_vertex_shader_output_point_size */ 955 956 /* 957 ** EXT EXTENSIONS 958 */ 959 /* 960 ** GL_EXT_stencil_wrap 961 ** 962 ** Support: 963 ** Rage 128 based : Supported 964 ** Radeon 7xxx based : Supported 965 ** Radeon 8xxx based : Supported 966 */ 967 #ifndef GL_EXT_stencil_wrap 968 #define GL_EXT_stencil_wrap 1 969 970 #define GL_INCR_WRAP_EXT 0x8507 971 #define GL_DECR_WRAP_EXT 0x8508 972 973 #endif /* GL_EXT_stencil_wrap */ 974 975 /* 976 ** GL_EXT_abgr 977 ** 978 ** Support: 979 ** Rage 128 based : Supported 980 ** Radeon 7xxx based : Supported 981 ** Radeon 8xxx based : Supported 982 */ 983 #ifndef GL_EXT_abgr 984 #define GL_EXT_abgr 1 985 986 #define GL_ABGR_EXT 0x8000 987 988 #endif /* GL_EXT_abgr */ 989 990 991 /* 992 ** GL_EXT_bgra 993 ** 994 ** Support: 995 ** Rage 128 based : Supported 996 ** Radeon 7xxx based : Supported 997 ** Radeon 8xxx based : Supported 998 */ 999 #ifndef GL_EXT_bgra 1000 #define GL_EXT_bgra 1 1001 1002 #define GL_BGR_EXT 0x80E0 1003 #define GL_BGRA_EXT 0x80E1 1004 1005 #endif /* GL_EXT_bgra */ 1006 1007 /* 1008 ** GL_EXT_blend_color 1009 ** 1010 ** Support: 1011 ** Rage 128 based : Not Supported 1012 ** Radeon 7xxx based : Not Supported 1013 ** Radeon 8xxx based : Supported 1014 */ 1015 #ifndef GL_EXT_blend_color 1016 #define GL_EXT_blend_color 1 1017 1018 #define GL_CONSTANT_COLOR_EXT 0x8001 1019 #define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002 1020 #define GL_CONSTANT_ALPHA_EXT 0x8003 1021 #define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004 1022 #define GL_BLEND_COLOR_EXT 0x8005 1023 1024 typedef void (APIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); 1025 1026 #endif /* GL_EXT_blend_color */ 1027 1028 /* 1029 ** GL_EXT_blend_func_separate 1030 ** 1031 ** Support: 1032 ** Rage 128 based : Not Supported 1033 ** Radeon 7xxx based : Not Supported 1034 ** Radeon 8xxx based : Supported 1035 */ 1036 1037 #ifndef GL_EXT_blend_func_separate 1038 #define GL_EXT_blend_func_separate 1 1039 1040 #define GL_BLEND_DST_RGB_EXT 0x80C8 1041 #define GL_BLEND_SRC_RGB_EXT 0x80C9 1042 #define GL_BLEND_DST_ALPHA_EXT 0x80CA 1043 #define GL_BLEND_SRC_ALPHA_EXT 0x80CB 1044 1045 typedef void (APIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, 1046 GLenum sfactorAlpha, GLenum dfactorAlpha); 1047 #endif /* GL_EXT_blend_func_separate */ 1048 1049 /* 1050 ** GL_EXT_blend_minmax 1051 ** 1052 ** Support: 1053 ** Rage 128 based : Not Supported 1054 ** Radeon 7xxx based : Not Supported 1055 ** Radeon 8xxx based : Supported 1056 */ 1057 #ifndef GL_EXT_blend_minmax 1058 #define GL_EXT_blend_minmax 1 1059 1060 #define GL_FUNC_ADD_EXT 0x8006 1061 #define GL_MIN_EXT 0x8007 1062 #define GL_MAX_EXT 0x8008 1063 #define GL_BLEND_EQUATION_EXT 0x8009 1064 1065 typedef void (APIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode); 1066 1067 #endif /* GL_EXT_blend_minmax */ 1068 1069 /* 1070 ** GL_EXT_blend_subtract 1071 ** 1072 ** Support: 1073 ** Rage 128 based : Not Supported 1074 ** Radeon 7xxx based : Not Supported 1075 ** Radeon 8xxx based : Supported 1076 */ 1077 #ifndef GL_EXT_blend_subtract 1078 #define GL_EXT_blend_subtract 1 1079 1080 #define GL_FUNC_SUBTRACT_EXT 0x800A 1081 #define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B 1082 1083 #endif /* GL_EXT_blend_subtract */ 1084 1085 /* 1086 ** GL_EXT_clip_volume_hint 1087 ** 1088 ** Support: 1089 ** Rage 128 based : Not Supported 1090 ** Radeon 7xxx based : Supported 1091 ** Radeon 8xxx based : Supported 1092 */ 1093 #ifndef GL_EXT_clip_volume_hint 1094 #define GL_EXT_clip_volume_hint 1 1095 1096 #define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0 1097 1098 #endif /* GL_EXT_clip_volume_hint */ 1099 1100 /* 1101 ** GL_EXT_compiled_vertex_array 1102 ** 1103 ** Support: 1104 ** Rage 128 based : Supported 1105 ** Radeon 7xxx based : Supported 1106 ** Radeon 8xxx based : Supported 1107 */ 1108 #ifndef GL_EXT_compiled_vertex_array 1109 #define GL_EXT_compiled_vertex_array 1 1110 1111 #define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8 1112 #define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9 1113 1114 typedef void (APIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count); 1115 typedef void (APIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void); 1116 1117 #endif /* GL_EXT_compiled_vertex_array */ 1118 1119 /* 1120 ** GL_EXT_draw_range_elements 1121 ** 1122 ** Support: 1123 ** Rage 128 based : Supported 1124 ** Radeon 7xxx based : Supported 1125 ** Radeon 8xxx based : Supported 1126 */ 1127 #ifndef GL_EXT_draw_range_elements 1128 #define GL_EXT_draw_range_elements 1 1129 1130 #define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8 1131 #define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9 1132 1133 typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, 1134 GLuint end, GLsizei count, 1135 GLenum type, const GLvoid *indices); 1136 1137 #endif /* GL_EXT_draw_range_elements */ 1138 1139 /* 1140 ** GL_EXT_fog_coord 1141 ** 1142 ** Support: 1143 ** Rage 128 based : Supported 1144 ** Radeon 7xxx based : Supported 1145 ** Radeon 8xxx based : Supported 1146 */ 1147 #ifndef GL_EXT_fog_coord 1148 #define GL_EXT_fog_coord 1 1149 1150 #define GL_FOG_COORDINATE_SOURCE_EXT 0x8450 1151 #define GL_FOG_COORDINATE_EXT 0x8451 1152 #define GL_FRAGMENT_DEPTH_EXT 0x8452 1153 #define GL_CURRENT_FOG_COORDINATE_EXT 0x8453 1154 #define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454 1155 #define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455 1156 #define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456 1157 #define GL_FOG_COORDINATE_ARRAY_EXT 0x8457 1158 1159 typedef void (APIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat f); 1160 typedef void (APIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble f); 1161 typedef void (APIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *v); 1162 typedef void (APIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *v); 1163 typedef void (APIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, void *pointer); 1164 1165 #endif /* GL_EXT_fog_coord */ 1166 1167 /* 1168 ** GL_EXT_packed_pixels 1169 ** 1170 ** Support: 1171 ** Rage 128 based : Supported 1172 ** Radeon 7xxx based : Supported 1173 ** Radeon 8xxx based : Supported 1174 */ 1175 #ifndef GL_EXT_packed_pixels 1176 #define GL_EXT_packed_pixels 1 1177 1178 #define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032 1179 #define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033 1180 #define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034 1181 #define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035 1182 #define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036 1183 1184 #endif /* GL_EXT_packed_pixels */ 1185 1186 /* 1187 ** GL_EXT_point_parameters 1188 ** 1189 ** Support: 1190 ** Rage 128 based : Not Supported 1191 ** Radeon 7xxx based : Supported 1192 ** Radeon 8xxx based : Supported 1193 */ 1194 #ifndef GL_EXT_point_parameters 1195 #define GL_EXT_point_parameters 1 1196 1197 #define GL_POINT_SIZE_MIN_EXT 0x8126 1198 #define GL_POINT_SIZE_MAX_EXT 0x8127 1199 #define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128 1200 #define GL_DISTANCE_ATTENUATION_EXT 0x8129 1201 1202 typedef void (APIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param); 1203 typedef void (APIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, GLfloat *params); 1204 typedef void (APIENTRY * PFNGLPOINTPARAMETERIEXTPROC) (GLenum pname, GLint param); 1205 typedef void (APIENTRY * PFNGLPOINTPARAMETERIVEXTPROC) (GLenum pname, GLint *params); 1206 1207 #endif /* GL_EXT_point_parameters */ 1208 1209 /* 1210 ** GL_ARB_point_parameters 1211 ** 1212 ** Support: 1213 ** Rage 128 based : Not Supported 1214 ** Radeon 7xxx based : Supported 1215 ** Radeon 8xxx based : Supported 1216 */ 1217 #ifndef GL_ARB_point_parameters 1218 #define GL_ARB_point_parameters 1 1219 1220 #define GL_POINT_SIZE_MIN_ARB 0x8126 1221 #define GL_POINT_SIZE_MAX_ARB 0x8127 1222 #define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128 1223 #define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129 1224 1225 typedef void (APIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param); 1226 typedef void (APIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, GLfloat *params); 1227 typedef void (APIENTRY * PFNGLPOINTPARAMETERIARBPROC) (GLenum pname, GLint param); 1228 typedef void (APIENTRY * PFNGLPOINTPARAMETERIVARBPROC) (GLenum pname, GLint *params); 1229 1230 #endif /* GL_ARB_point_parameters */ 1231 1232 /* 1233 ** GL_EXT_rescale_normal 1234 ** 1235 ** Support: 1236 ** Rage 128 based : Supported 1237 ** Radeon 7xxx based : Supported 1238 ** Radeon 8xxx based : Supported 1239 */ 1240 #ifndef GL_EXT_rescale_normal 1241 #define GL_EXT_rescale_normal 1 1242 1243 #define GL_RESCALE_NORMAL_EXT 0x803A 1244 1245 #endif /* GL_EXT_rescale_normal */ 1246 1247 /* 1248 ** GL_EXT_separate_specular_color 1249 ** 1250 ** Support: 1251 ** Rage 128 based : Supported 1252 ** Radeon 7xxx based : Supported 1253 ** Radeon 8xxx based : Supported 1254 */ 1255 #ifndef GL_EXT_separate_specular_color 1256 #define GL_EXT_separate_specular_color 1 1257 1258 #define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8 1259 #define GL_SINGLE_COLOR_EXT 0x81F9 1260 #define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA 1261 1262 #endif /* GL_EXT_separate_specular_color */ 1263 1264 /* 1265 ** GL_EXT_secondary_color 1266 ** 1267 ** Support: 1268 ** Rage 128 based : Supported 1269 ** Radeon 7xxx based : Supported 1270 ** Radeon 8xxx based : Supported 1271 */ 1272 #ifndef GL_EXT_secondary_color 1273 #define GL_EXT_secondary_color 1 1274 1275 #define GL_COLOR_SUM_EXT 0x8458 1276 #define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459 1277 #define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A 1278 #define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B 1279 #define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C 1280 #define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D 1281 #define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E 1282 1283 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat r, GLfloat g, GLfloat b); 1284 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble r, GLdouble g, GLdouble b); 1285 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte r, GLbyte g, GLbyte b); 1286 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort r, GLshort g, GLshort b); 1287 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint r, GLint g, GLint b); 1288 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC)(GLubyte r, GLubyte g, GLubyte b); 1289 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC)(GLushort r, GLushort g, GLushort b); 1290 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC)(GLuint r, GLuint g, GLuint b); 1291 1292 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v); 1293 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v); 1294 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v); 1295 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v); 1296 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v); 1297 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC)(const GLubyte *v); 1298 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC)(const GLushort *v); 1299 typedef void (APIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC)(const GLuint *v); 1300 1301 typedef void (APIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC)(GLint size, GLenum type, GLsizei stride, void *pointer); 1302 1303 #endif /* GL_EXT_secondary_color */ 1304 1305 1306 /* 1307 ** GL_EXT_texgen_reflection 1308 ** 1309 ** Support: 1310 ** Rage 128 based : Supported 1311 ** Radeon 7xxx based : Supported 1312 ** Radeon 8xxx based : Supported 1313 */ 1314 #ifndef GL_EXT_texgen_reflection 1315 #define GL_EXT_texgen_reflection 1 1316 1317 #define GL_NORMAL_MAP_EXT 0x8511 1318 #define GL_REFLECTION_MAP_EXT 0x8512 1319 1320 #endif /* GL_EXT_texgen_reflection */ 1321 1322 /* 1323 ** GL_EXT_texture_cube_map 1324 ** 1325 ** Support: 1326 ** Rage 128 based : Not Supported 1327 ** Radeon 7xxx based : Supported 1328 ** Radeon 8xxx based : Supported 1329 */ 1330 #ifndef GL_EXT_texture_cube_map 1331 #define GL_EXT_texture_cube_map 1 1332 1333 #define GL_TEXTURE_CUBE_MAP_EXT 0x8513 1334 #define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514 1335 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515 1336 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516 1337 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517 1338 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518 1339 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519 1340 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A 1341 #define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B 1342 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C 1343 1344 #endif /* GL_EXT_texture_cube_map */ 1345 1346 /* 1347 ** GL_EXT_texture3D 1348 ** 1349 ** Support: 1350 ** Rage 128 based : Supported (software) 1351 ** Radeon 7xxx based : Supported 1352 ** Radeon 8xxx based : Supported 1353 */ 1354 #ifndef GL_EXT_texture3D 1355 #define GL_EXT_texture3D 1 1356 1357 #define GL_TEXTURE_BINDING_3D_EXT 0x806A 1358 #define GL_PACK_SKIP_IMAGES_EXT 0x806B 1359 #define GL_PACK_IMAGE_HEIGHT_EXT 0x806C 1360 #define GL_UNPACK_SKIP_IMAGES_EXT 0x806D 1361 #define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E 1362 #define GL_TEXTURE_3D_EXT 0x806F 1363 #define GL_PROXY_TEXTURE_3D_EXT 0x8070 1364 #define GL_TEXTURE_DEPTH_EXT 0x8071 1365 #define GL_TEXTURE_WRAP_R_EXT 0x8072 1366 #define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073 1367 1368 1369 typedef void (APIENTRY * PFNGLTEXIMAGE3DEXTPROC)(GLenum target, GLint level, GLenum internalformat, 1370 GLsizei width, GLsizei height, GLsizei depth, 1371 GLint border, GLenum format, GLenum type, 1372 const GLvoid* pixels); 1373 1374 typedef void (APIENTRY * PFNGLTEXSUBIMAGE3DPROC)(GLenum target, GLint lod, 1375 GLint xoffset, GLint yoffset, GLint zoffset, 1376 GLsizei w, GLsizei h, GLsizei d, 1377 GLenum format, GLenum type, const GLvoid *buf); 1378 1379 typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, 1380 GLint yoffset, GLint zoffset, GLint x, 1381 GLint y, GLsizei width, GLsizei height); 1382 1383 #endif /* GL_EXT_texture3D */ 1384 1385 /* 1386 ** GL_EXT_texture_compression_s3tc 1387 ** 1388 ** Support: 1389 ** Rage 128 based : Not Supported 1390 ** Radeon 7xxx based : Supported 1391 ** Radeon 8xxx based : Supported 1392 */ 1393 #ifndef GL_EXT_texture_compression_s3tc 1394 #define GL_EXT_texture_compression_s3tc 1 1395 1396 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 1397 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 1398 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 1399 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 1400 1401 #endif /* GL_EXT_texture_compression_s3tc */ 1402 1403 /* 1404 ** GL_EXT_texture_edge_clamp 1405 ** 1406 ** Support: 1407 ** Rage 128 based : Supported 1408 ** Radeon 7xxx based : Supported 1409 ** Radeon 8xxx based : Supported 1410 */ 1411 #ifndef GL_EXT_texture_edge_clamp 1412 #define GL_EXT_texture_edge_clamp 1 1413 1414 #define GL_CLAMP_TO_EDGE_EXT 0x812F 1415 1416 #endif /* GL_EXT_texture_edge_clamp */ 1417 1418 /* 1419 ** GL_EXT_texture_env_add 1420 ** 1421 ** Support: 1422 ** Rage 128 based : Supported 1423 ** Radeon 7xxx based : Supported 1424 ** Radeon 8xxx based : Supported 1425 ** Radeon 9xxx based : Supported 1426 */ 1427 #ifndef GL_EXT_texture_env_add 1428 #define GL_EXT_texture_env_add 1 1429 1430 #endif /* GL_EXT_texture_env_add */ 1431 1432 /* 1433 ** GL_EXT_texture_env_combine 1434 ** 1435 ** Support: 1436 ** Rage 128 based : Supported 1437 ** Radeon 7xxx based : Supported 1438 ** Radeon 8xxx based : Supported 1439 */ 1440 #ifndef GL_EXT_texture_env_combine 1441 #define GL_EXT_texture_env_combine 1 1442 1443 #define GL_COMBINE_EXT 0x8570 1444 #define GL_COMBINE_RGB_EXT 0x8571 1445 #define GL_COMBINE_ALPHA_EXT 0x8572 1446 #define GL_SOURCE0_RGB_EXT 0x8580 1447 #define GL_SOURCE1_RGB_EXT 0x8581 1448 #define GL_SOURCE2_RGB_EXT 0x8582 1449 #define GL_SOURCE0_ALPHA_EXT 0x8588 1450 #define GL_SOURCE1_ALPHA_EXT 0x8589 1451 #define GL_SOURCE2_ALPHA_EXT 0x858A 1452 #define GL_OPERAND0_RGB_EXT 0x8590 1453 #define GL_OPERAND1_RGB_EXT 0x8591 1454 #define GL_OPERAND2_RGB_EXT 0x8592 1455 #define GL_OPERAND0_ALPHA_EXT 0x8598 1456 #define GL_OPERAND1_ALPHA_EXT 0x8599 1457 #define GL_OPERAND2_ALPHA_EXT 0x859A 1458 #define GL_RGB_SCALE_EXT 0x8573 1459 #define GL_ADD_SIGNED_EXT 0x8574 1460 #define GL_INTERPOLATE_EXT 0x8575 1461 #define GL_CONSTANT_EXT 0x8576 1462 #define GL_PRIMARY_COLOR_EXT 0x8577 1463 #define GL_PREVIOUS_EXT 0x8578 1464 1465 #endif /* GL_EXT_texture_env_combine */ 1466 1467 /* 1468 ** GL_EXT_texture_env_dot3 1469 ** 1470 ** Support: 1471 ** Rage 128 based : Not Supported 1472 ** Radeon 7xxx based : Supported 1473 ** Radeon 8xxx based : Supported 1474 */ 1475 #ifndef GL_EXT_texture_env_dot3 1476 #define GL_EXT_texture_env_dot3 1 1477 1478 #define GL_DOT3_RGB_EXT 0x8740 1479 #define GL_DOT3_RGBA_EXT 0x8741 1480 1481 #endif /* GL_EXT_texture_env_dot3 */ 1482 1483 /* 1484 ** GL_EXT_texture_lod_bias 1485 ** 1486 ** Support: 1487 ** Rage 128 based : Not Supported 1488 ** Radeon 7xxx based : Supported 1489 ** Radeon 8xxx based : Supported 1490 */ 1491 #ifndef GL_EXT_texture_lod_bias 1492 #define GL_EXT_texture_lod_bias 1 1493 1494 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 1495 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 1496 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD 1497 1498 #endif /* GL_EXT_texture_lod_bias */ 1499 1500 /* 1501 ** GL_EXT_texture_filter_anisotropic 1502 ** 1503 ** Support: 1504 ** 1505 ** Rage 128 based : Not Supported 1506 ** Radeon 7xxx based : Supported 1507 ** Radeon 8xxx based : Supported 1508 */ 1509 #ifndef GL_EXT_texture_filter_anisotropic 1510 #define GL_EXT_texture_filter_anisotropic 1 1511 1512 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 1513 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 1514 1515 #endif /* GL_EXT_texture_filter_anisotropic */ 1516 1517 /* 1518 ** GL_EXT_texture_object 1519 ** 1520 ** Support: 1521 ** Rage 128 based : Supported 1522 ** Radeon 7xxx based : Supported 1523 ** Radeon 8xxx based : Supported 1524 */ 1525 #ifndef GL_EXT_texture_object 1526 #define GL_EXT_texture_object 1 1527 1528 #define GL_TEXTURE_PRIORITY_EXT 0x8066 1529 #define GL_TEXTURE_RESIDENT_EXT 0x8067 1530 #define GL_TEXTURE_1D_BINDING_EXT 0x8068 1531 #define GL_TEXTURE_2D_BINDING_EXT 0x8069 1532 #define GL_TEXTURE_3D_BINDING_EXT 0x806A 1533 1534 typedef void (APIENTRY * PFNGLGENTEXTURESEXTPROC) ( GLsizei n, GLuint *textures); 1535 typedef void (APIENTRY * PFNGLDELETETEXTURESEXTPROC) ( GLsizei n, const GLuint *textures); 1536 typedef void (APIENTRY * PFNGLBINDTEXTUREEXTPROC) ( GLenum target, GLuint texture); 1537 typedef void (APIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) ( GLsizei n, const GLuint *textures, const GLclampf *priorities); 1538 typedef GLboolean (APIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) ( GLsizei n, const GLuint *textures, GLboolean *residences); 1539 typedef GLboolean (APIENTRY * PFNGLISTEXTUREEXTPROC) ( GLuint texture); 1540 1541 #endif /* GL_EXT_texture_object */ 1542 1543 /* 1544 ** GL_EXT_texture_rectangle 1545 ** 1546 ** Support: 1547 ** Rage 128 based : Not Supported 1548 ** Radeon 7xxx based : Supported 1549 ** Radeon 8xxx based : Supported 1550 */ 1551 #ifndef GL_EXT_texture_rectangle 1552 #define GL_EXT_texture_rectangle 1 1553 1554 #define GL_TEXTURE_RECTANGLE_EXT 0x85B3 1555 #define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x85B4 1556 #define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x85B5 1557 #define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x85B6 1558 1559 #endif /* GL_EXT_texture_rectangle */ 1560 1561 1562 /* 1563 ** GL_EXT_vertex_array 1564 ** 1565 ** Support: 1566 ** Rage 128 based : Supported 1567 ** Radeon 7xxx based : Supported 1568 ** Radeon 8xxx based : Supported 1569 */ 1570 #ifndef GL_EXT_vertex_array 1571 #define GL_EXT_vertex_array 1 1572 1573 #define GL_VERTEX_ARRAY_EXT 0x8074 1574 #define GL_NORMAL_ARRAY_EXT 0x8075 1575 #define GL_COLOR_ARRAY_EXT 0x8076 1576 #define GL_INDEX_ARRAY_EXT 0x8077 1577 #define GL_TEXTURE_COORD_ARRAY_EXT 0x8078 1578 #define GL_EDGE_FLAG_ARRAY_EXT 0x8079 1579 #define GL_VERTEX_ARRAY_SIZE_EXT 0x807A 1580 #define GL_VERTEX_ARRAY_TYPE_EXT 0x807B 1581 #define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C 1582 #define GL_VERTEX_ARRAY_COUNT_EXT 0x807D 1583 #define GL_NORMAL_ARRAY_TYPE_EXT 0x807E 1584 #define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F 1585 #define GL_NORMAL_ARRAY_COUNT_EXT 0x8080 1586 #define GL_COLOR_ARRAY_SIZE_EXT 0x8081 1587 #define GL_COLOR_ARRAY_TYPE_EXT 0x8082 1588 #define GL_COLOR_ARRAY_STRIDE_EXT 0x8083 1589 #define GL_COLOR_ARRAY_COUNT_EXT 0x8084 1590 #define GL_INDEX_ARRAY_TYPE_EXT 0x8085 1591 #define GL_INDEX_ARRAY_STRIDE_EXT 0x8086 1592 #define GL_INDEX_ARRAY_COUNT_EXT 0x8087 1593 #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088 1594 #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089 1595 #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A 1596 #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B 1597 #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C 1598 #define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D 1599 #define GL_VERTEX_ARRAY_POINTER_EXT 0x808E 1600 #define GL_NORMAL_ARRAY_POINTER_EXT 0x808F 1601 #define GL_COLOR_ARRAY_POINTER_EXT 0x8090 1602 #define GL_INDEX_ARRAY_POINTER_EXT 0x8091 1603 #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092 1604 #define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093 1605 1606 typedef void (APIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i); 1607 typedef void (APIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); 1608 typedef void (APIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count); 1609 typedef void (APIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean *pointer); 1610 typedef void (APIENTRY * PFNGLGETPOINTERVEXTPROC) (GLenum pname, GLvoid* *params); 1611 typedef void (APIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); 1612 typedef void (APIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); 1613 typedef void (APIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); 1614 typedef void (APIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); 1615 1616 #endif /* GL_EXT_vertex_array */ 1617 1618 /* 1619 ** GL_EXT_vertex_shader 1620 ** 1621 ** Support: 1622 ** Rage 128 based : Supported (software) 1623 ** Radeon 7xxx based : Supported (software) 1624 ** Radeon 8xxx based : Supported 1625 */ 1626 #ifndef GL_EXT_vertex_shader 1627 #define GL_EXT_vertex_shader 1 1628 1629 #define GL_VERTEX_SHADER_EXT 0x8780 1630 #define GL_VERTEX_SHADER_BINDING_EXT 0x8781 1631 #define GL_OP_INDEX_EXT 0x8782 1632 #define GL_OP_NEGATE_EXT 0x8783 1633 #define GL_OP_DOT3_EXT 0x8784 1634 #define GL_OP_DOT4_EXT 0x8785 1635 #define GL_OP_MUL_EXT 0x8786 1636 #define GL_OP_ADD_EXT 0x8787 1637 #define GL_OP_MADD_EXT 0x8788 1638 #define GL_OP_FRAC_EXT 0x8789 1639 #define GL_OP_MAX_EXT 0x878A 1640 #define GL_OP_MIN_EXT 0x878B 1641 #define GL_OP_SET_GE_EXT 0x878C 1642 #define GL_OP_SET_LT_EXT 0x878D 1643 #define GL_OP_CLAMP_EXT 0x878E 1644 #define GL_OP_FLOOR_EXT 0x878F 1645 #define GL_OP_ROUND_EXT 0x8790 1646 #define GL_OP_EXP_BASE_2_EXT 0x8791 1647 #define GL_OP_LOG_BASE_2_EXT 0x8792 1648 #define GL_OP_POWER_EXT 0x8793 1649 #define GL_OP_RECIP_EXT 0x8794 1650 #define GL_OP_RECIP_SQRT_EXT 0x8795 1651 #define GL_OP_SUB_EXT 0x8796 1652 #define GL_OP_CROSS_PRODUCT_EXT 0x8797 1653 #define GL_OP_MULTIPLY_MATRIX_EXT 0x8798 1654 #define GL_OP_MOV_EXT 0x8799 1655 #define GL_OUTPUT_VERTEX_EXT 0x879A 1656 #define GL_OUTPUT_COLOR0_EXT 0x879B 1657 #define GL_OUTPUT_COLOR1_EXT 0x879C 1658 #define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D 1659 #define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E 1660 #define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F 1661 #define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0 1662 #define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1 1663 #define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2 1664 #define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3 1665 #define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4 1666 #define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5 1667 #define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6 1668 #define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7 1669 #define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8 1670 #define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9 1671 #define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA 1672 #define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB 1673 #define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC 1674 #define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD 1675 #define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE 1676 #define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF 1677 #define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0 1678 #define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1 1679 #define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2 1680 #define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3 1681 #define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4 1682 #define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5 1683 #define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6 1684 #define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7 1685 #define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8 1686 #define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9 1687 #define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA 1688 #define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB 1689 #define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC 1690 #define GL_OUTPUT_FOG_EXT 0x87BD 1691 #define GL_SCALAR_EXT 0x87BE 1692 #define GL_VECTOR_EXT 0x87BF 1693 #define GL_MATRIX_EXT 0x87C0 1694 #define GL_VARIANT_EXT 0x87C1 1695 #define GL_INVARIANT_EXT 0x87C2 1696 #define GL_LOCAL_CONSTANT_EXT 0x87C3 1697 #define GL_LOCAL_EXT 0x87C4 1698 #define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5 1699 #define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6 1700 #define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7 1701 #define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8 1702 #define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9 1703 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA 1704 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB 1705 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC 1706 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD 1707 #define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE 1708 #define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF 1709 #define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0 1710 #define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1 1711 #define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2 1712 #define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3 1713 #define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4 1714 #define GL_X_EXT 0x87D5 1715 #define GL_Y_EXT 0x87D6 1716 #define GL_Z_EXT 0x87D7 1717 #define GL_W_EXT 0x87D8 1718 #define GL_NEGATIVE_X_EXT 0x87D9 1719 #define GL_NEGATIVE_Y_EXT 0x87DA 1720 #define GL_NEGATIVE_Z_EXT 0x87DB 1721 #define GL_NEGATIVE_W_EXT 0x87DC 1722 #define GL_ZERO_EXT 0x87DD 1723 #define GL_ONE_EXT 0x87DE 1724 #define GL_NEGATIVE_ONE_EXT 0x87DF 1725 #define GL_NORMALIZED_RANGE_EXT 0x87E0 1726 #define GL_FULL_RANGE_EXT 0x87E1 1727 #define GL_CURRENT_VERTEX_EXT 0x87E2 1728 #define GL_MVP_MATRIX_EXT 0x87E3 1729 #define GL_VARIANT_VALUE_EXT 0x87E4 1730 #define GL_VARIANT_DATATYPE_EXT 0x87E5 1731 #define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6 1732 #define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7 1733 #define GL_VARIANT_ARRAY_EXT 0x87E8 1734 #define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9 1735 #define GL_INVARIANT_VALUE_EXT 0x87EA 1736 #define GL_INVARIANT_DATATYPE_EXT 0x87EB 1737 #define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC 1738 #define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED 1739 1740 typedef GLvoid (APIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void); 1741 typedef GLvoid (APIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void); 1742 typedef GLvoid (APIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id); 1743 typedef GLuint (APIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range); 1744 typedef GLvoid (APIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id); 1745 typedef GLvoid (APIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1); 1746 typedef GLvoid (APIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, 1747 GLuint arg2); 1748 typedef GLvoid (APIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, 1749 GLuint arg2, GLuint arg3); 1750 typedef GLvoid (APIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, 1751 GLenum outY, GLenum outZ, GLenum outW); 1752 typedef GLvoid (APIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, 1753 GLenum outY, GLenum outZ, GLenum outW); 1754 typedef GLvoid (APIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); 1755 typedef GLvoid (APIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); 1756 typedef GLuint (APIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum dataType, GLenum storageType, 1757 GLenum range, GLuint components); 1758 typedef GLvoid (APIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr); 1759 typedef GLvoid (APIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr); 1760 typedef GLvoid (APIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, GLbyte *addr); 1761 typedef GLvoid (APIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, GLshort *addr); 1762 typedef GLvoid (APIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, GLint *addr); 1763 typedef GLvoid (APIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, GLfloat *addr); 1764 typedef GLvoid (APIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, GLdouble *addr); 1765 typedef GLvoid (APIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, GLubyte *addr); 1766 typedef GLvoid (APIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, GLushort *addr); 1767 typedef GLvoid (APIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, GLuint *addr); 1768 typedef GLvoid (APIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, 1769 GLuint stride, GLvoid *addr); 1770 typedef GLvoid (APIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); 1771 typedef GLvoid (APIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); 1772 typedef GLuint (APIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value); 1773 typedef GLuint (APIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value); 1774 typedef GLuint (APIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, 1775 GLenum value); 1776 typedef GLuint (APIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value); 1777 typedef GLuint (APIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value); 1778 typedef GLboolean (APIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap); 1779 typedef GLvoid (APIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, 1780 GLboolean *data); 1781 typedef GLvoid (APIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, 1782 GLint *data); 1783 typedef GLvoid (APIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, 1784 GLfloat *data); 1785 typedef GLvoid (APIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, 1786 GLvoid **data); 1787 typedef GLvoid (APIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, 1788 GLboolean *data); 1789 typedef GLvoid (APIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, 1790 GLint *data); 1791 typedef GLvoid (APIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, 1792 GLfloat *data); 1793 typedef GLvoid (APIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, 1794 GLboolean *data); 1795 typedef GLvoid (APIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, 1796 GLint *data); 1797 typedef GLvoid (APIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, 1798 GLfloat *data); 1799 1800 #endif /* GL_EXT_vertex_shader */ 1801 1802 1803 /* 1804 ** IHV EXTENSIONS 1805 */ 1806 1807 /* 1808 ** GL_NV_occlusion_query 1809 ** 1810 ** Support: 1811 ** 1812 ** Rage 128 based : Not Supported 1813 ** Radeon 7xxx based : Not Supported 1814 ** Radeon 8xxx based : Supported 1815 */ 1816 #ifndef GL_NV_occlusion_query 1817 #define GL_NV_occlusion_query 1 1818 1819 #define GL_PIXEL_COUNTER_BITS_NV 0x8864 1820 #define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865 1821 #define GL_PIXEL_COUNT_NV 0x8866 1822 #define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867 1823 1824 typedef GLvoid (APIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint *ids); 1825 typedef GLvoid (APIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint *ids); 1826 typedef GLboolean (APIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id); 1827 typedef GLvoid (APIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id); 1828 typedef GLvoid (APIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (GLvoid); 1829 typedef GLvoid (APIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint *params); 1830 typedef GLvoid (APIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint *params); 1831 1832 #endif /* GL_NV_occlusion_query */ 1833 1834 /* 1835 ** GL_NV_texgen_reflection 1836 ** 1837 ** Support: 1838 ** Rage 128 based : Supported 1839 ** Radeon 7xxx based : Supported 1840 ** Radeon 8xxx based : Supported 1841 */ 1842 #ifndef GL_NV_texgen_reflection 1843 #define GL_NV_texgen_reflection 1 1844 1845 #define GL_NORMAL_MAP_NV 0x8511 1846 #define GL_REFLECTION_MAP_NV 0x8512 1847 1848 #endif /* GL_NV_texgen_reflection */ 1849 1850 /* 1851 ** GL_NV_point_sprite 1852 ** 1853 ** Support: 1854 ** Rage 128 based : Not Supported 1855 ** Radeon 7xxx based : Not Supported 1856 ** Radeon 8xxx based : Supported 1857 */ 1858 #ifndef GL_NV_point_sprite 1859 #define GL_NV_point_sprite 1 1860 1861 #define GL_POINT_SPRITE_NV 0x8861 1862 #define GL_COORD_REPLACE_NV 0x8862 1863 #define GL_POINT_SPRITE_R_MODE_NV 0x8863 1864 1865 typedef void (APIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param); 1866 typedef void (APIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, GLint *params); 1867 1868 #endif /* GL_NV_point_sprite */ 1869 1870 /* 1871 ** GL_NV_blend_square 1872 ** 1873 ** Support: 1874 ** Radeon * based : Supported 1875 ** Radeon 8xxx based : Supported 1876 ** Radeon 8xxx based : Supported 1877 */ 1878 #ifndef GL_NV_blend_square 1879 #define GL_NV_blend_square 1 1880 1881 #endif /* GL_NV_blend_square */ 1882 1883 /* 1884 ** GL_S3_s3tc 1885 ** 1886 ** Support: 1887 ** Rage 128 based : Not Supported 1888 ** Radeon 7xxx based : Supported 1889 ** Radeon 8xxx based : Supported 1890 */ 1891 #ifndef GL_S3_s3tc 1892 #define GL_S3_s3tc 1 1893 1894 #define GL_RGB_S3TC 0x83A0 1895 #define GL_RGB4_S3TC 0x83A1 1896 #define GL_RGBA_S3TC 0x83A2 1897 #define GL_RGBA4_S3TC 0x83A3 1898 1899 #endif /* GL_S3_s3tc */ 1900 1901 /* 1902 ** GL_SGI_texture_edge_clamp 1903 ** 1904 ** Support: 1905 ** Rage 128 based : Supported 1906 ** Radeon 7xxx based : Supported 1907 ** Radeon 8xxx based : Supported 1908 */ 1909 #ifndef GL_SGI_texture_edge_clamp 1910 #define GL_SGI_texture_edge_clamp 1 1911 1912 #define GL_CLAMP_TO_EDGE_SGI 0x812F 1913 1914 #endif /* GL_SGI_texture_edge_clamp */ 1915 1916 /* 1917 ** GL_SGIS_generate_mipmap 1918 ** 1919 ** Support: 1920 ** Rage 128 based : Not supported 1921 ** Radeon 7xxx based : Supported 1922 ** Radeon 8xxx based : Supported 1923 */ 1924 #ifndef GL_SGIS_generate_mipmap 1925 #define GL_SGIS_generate_mipmap 1 1926 1927 #define GL_GENERATE_MIPMAP_SGIS 0x8191 1928 #define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192 1929 1930 #endif /* GL_SGIS_generate_mipmap */ 1931 1932 /* 1933 ** GL_SGIS_multitexture 1934 ** 1935 ** Support: 1936 ** Rage 128 based : Supported 1937 ** Radeon 7xxx based : Supported 1938 ** Radeon 8xxx based : Supported 1939 */ 1940 #ifndef GL_SGIS_multitexture 1941 #define GL_SGIS_multitexture 1 1942 1943 #define TEXTURE0_SGIS 0x835E 1944 #define TEXTURE1_SGIS 0x835F 1945 #define GL_SELECTED_TEXTURE_SGIS 0x83C0 1946 #define GL_SELECTED_TEXTURE_COORD_SET_SGIS 0x83C1 1947 #define GL_SELECTED_TEXTURE_TRANSFORM_SGIS 0x83C2 1948 #define GL_MAX_TEXTURES_SGIS 0x83C3 1949 #define GL_MAX_TEXTURE_COORD_SETS_SGIS 0x83C4 1950 #define GL_TEXTURE_ENV_COORD_SET_SGIS 0x83C5 1951 #define GL_TEXTURE0_SGIS 0x83C6 1952 #define GL_TEXTURE1_SGIS 0x83C7 1953 #define GL_TEXTURE2_SGIS 0x83C8 1954 #define GL_TEXTURE3_SGIS 0x83C9 1955 #define GL_TEXTURE4_SGIS 0x83CA 1956 #define GL_TEXTURE5_SGIS 0x83CB 1957 #define GL_TEXTURE6_SGIS 0x83CC 1958 #define GL_TEXTURE7_SGIS 0x83CD 1959 #define GL_TEXTURE8_SGIS 0x83CE 1960 #define GL_TEXTURE9_SGIS 0x83CF 1961 #define GL_TEXTURE10_SGIS 0x83D0 1962 #define GL_TEXTURE11_SGIS 0x83D1 1963 #define GL_TEXTURE12_SGIS 0x83D2 1964 #define GL_TEXTURE13_SGIS 0x83D3 1965 #define GL_TEXTURE14_SGIS 0x83D4 1966 #define GL_TEXTURE15_SGIS 0x83D5 1967 #define GL_TEXTURE16_SGIS 0x83D6 1968 #define GL_TEXTURE17_SGIS 0x83D7 1969 #define GL_TEXTURE18_SGIS 0x83D8 1970 #define GL_TEXTURE19_SGIS 0x83D9 1971 #define GL_TEXTURE20_SGIS 0x83DA 1972 #define GL_TEXTURE21_SGIS 0x83DB 1973 #define GL_TEXTURE22_SGIS 0x83DC 1974 #define GL_TEXTURE23_SGIS 0x83DD 1975 #define GL_TEXTURE24_SGIS 0x83DE 1976 #define GL_TEXTURE25_SGIS 0x83DF 1977 #define GL_TEXTURE26_SGIS 0x83E0 1978 #define GL_TEXTURE27_SGIS 0x83E1 1979 #define GL_TEXTURE28_SGIS 0x83E2 1980 #define GL_TEXTURE29_SGIS 0x83E3 1981 #define GL_TEXTURE30_SGIS 0x83E4 1982 #define GL_TEXTURE31_SGIS 0x83E5 1983 1984 typedef void (APIENTRY * PFNGLSELECTTEXTURESGISPROC) (GLenum texture); 1985 typedef void (APIENTRY * PFNGLSELECTTEXTURETRANSFORMSGISPROC) (GLenum texture); 1986 typedef void (APIENTRY * PFNGLSELECTTEXTURECOORDSETSGISPROC) (GLenum texture); 1987 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DSGISPROC) (GLenum texture, GLdouble s); 1988 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVSGISPROC) (GLenum texture, const GLdouble *v); 1989 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FSGISPROC) (GLenum texture, GLfloat s); 1990 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVSGISPROC) (GLenum texture, const GLfloat *v); 1991 typedef void (APIENTRY * PFNGLMULTITEXCOORD1ISGISPROC) (GLenum texture, GLint s); 1992 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVSGISPROC) (GLenum texture, const GLint *v); 1993 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SSGISPROC) (GLenum texture, GLshort s); 1994 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVSGISPROC) (GLenum texture, const GLshort *v); 1995 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DSGISPROC) (GLenum texture, GLdouble s, GLdouble t); 1996 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVSGISPROC) (GLenum texture, const GLdouble *v); 1997 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FSGISPROC) (GLenum texture, GLfloat s, GLfloat t); 1998 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVSGISPROC) (GLenum texture, const GLfloat *v); 1999 typedef void (APIENTRY * PFNGLMULTITEXCOORD2ISGISPROC) (GLenum texture, GLint s, GLint t); 2000 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVSGISPROC) (GLenum texture, const GLint *v); 2001 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SSGISPROC) (GLenum texture, GLshort s, GLshort t); 2002 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVSGISPROC) (GLenum texture, const GLshort *v); 2003 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DSGISPROC) (GLenum texture, GLdouble s, GLdouble t, GLdouble r); 2004 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVSGISPROC) (GLenum texture, const GLdouble *v); 2005 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FSGISPROC) (GLenum texture, GLfloat s, GLfloat t, GLfloat r); 2006 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVSGISPROC) (GLenum texture, const GLfloat *v); 2007 typedef void (APIENTRY * PFNGLMULTITEXCOORD3ISGISPROC) (GLenum texture, GLint s, GLint t, GLint r); 2008 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVSGISPROC) (GLenum texture, const GLint *v); 2009 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SSGISPROC) (GLenum texture, GLshort s, GLshort t, GLshort r); 2010 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVSGISPROC) (GLenum texture, const GLshort *v); 2011 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DSGISPROC) (GLenum texture, GLdouble s, GLdouble t, GLdouble r, GLdouble q); 2012 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVSGISPROC) (GLenum texture, const GLdouble *v); 2013 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FSGISPROC) (GLenum texture, GLfloat s, GLfloat t, GLfloat r, GLfloat q); 2014 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVSGISPROC) (GLenum texture, const GLfloat *v); 2015 typedef void (APIENTRY * PFNGLMULTITEXCOORD4ISGISPROC) (GLenum texture, GLint s, GLint t, GLint r, GLint q); 2016 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVSGISPROC) (GLenum texture, const GLint *v); 2017 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SSGISPROC) (GLenum texture, GLshort s, GLshort t, GLshort r, GLshort q); 2018 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVSGISPROC) (GLenum texture, const GLshort *v); 2019 2020 #endif /* GL_SGIS_multitexture */ 2021 2022 /* 2023 ** GL_SGIS_texture_border_clamp 2024 ** 2025 ** Support: 2026 ** Rage 128 based : Supported 2027 ** Radeon 7xxx based : Supported 2028 ** Radeon 8xxx based : Supported 2029 */ 2030 #ifndef GL_SGIS_texture_border_clamp 2031 #define GL_SGIS_texture_border_clamp 1 2032 2033 #define GL_CLAMP_TO_BORDER_SGIS 0x812D 2034 2035 #endif 2036 2037 /* 2038 ** GL_SGIS_texture_lod 2039 ** 2040 ** Support: 2041 ** Rage 128 based : Supported 2042 ** Radeon 7xxx based : Supported 2043 ** Radeon 8xxx based : Supported 2044 */ 2045 #ifndef GL_SGIS_texture_lod 2046 #define GL_SGIS_texture_lod 1 2047 2048 #define GL_TEXTURE_MIN_LOD_SGIS 0x813A 2049 #define GL_TEXTURE_MAX_LOD_SGIS 0x813B 2050 #define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C 2051 #define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D 2052 2053 #endif /* GL_SGIS_texture_lod */ 2054 2055 2056 /* 2057 ** ISV EXTENSIONS 2058 */ 2059 2060 /* 2061 ** GL_KTX_buffer_region 2062 ** 2063 ** Support: 2064 ** Rage 128 based : Supported 2065 ** Radeon 7xxx based : Supported 2066 ** Radeon 8xxx based : Supported 2067 */ 2068 #ifndef GL_KTX_buffer_region 2069 #define GL_KTX_buffer_region 1 2070 2071 #define GL_KTX_FRONT_REGION 0x0 2072 #define GL_KTX_BACK_REGION 0x1 2073 #define GL_KTX_Z_REGION 0x2 2074 #define GL_KTX_STENCIL_REGION 0x3 2075 2076 typedef GLuint (APIENTRY * PFNGLBUFFERREGIONENABLEDEXTPROC) ( void ); 2077 typedef GLuint (APIENTRY * PFNGLNEWBUFFERREGIONEXTPROC) ( GLenum region ); 2078 typedef void (APIENTRY * PFNGLDELETEBUFFERREGIONEXTPROC) ( GLenum region ); 2079 typedef void (APIENTRY * PFNGLREADBUFFERREGIONEXTPROC) ( GLuint region, GLint x, GLint y, GLsizei width, GLsizei height); 2080 typedef void (APIENTRY * PFNGLDRAWBUFFERREGIONEXTPROC) ( GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest); 2081 2082 #endif /* GL_KTX_buffer_region */ 2083 2084 /* 2085 ** GL_WIN_swap_hint 2086 ** 2087 ** Support: 2088 ** Rage 128 based : Supported 2089 ** Radeon 7xxx based : Supported 2090 ** Radeon 8xxx based : Supported 2091 */ 2092 #ifndef GL_WIN_swap_hint 2093 #define GL_WIN_swap_hint 1 2094 2095 typedef void (APIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height); 2096 2097 #endif /* GL_WIN_swap_hint */ 2098 2099 /* 2100 ** HP_occlusion_test 2101 ** 2102 ** Support: 2103 ** Rage 128 based : Not Supported 2104 ** Radeon 7xxx based : Not Supported 2105 ** Radeon 8xxx based : Supported 2106 */ 2107 #ifndef GL_HP_occlusion_test 2108 #define GL_HP_occlusion_test 1 2109 2110 #define GL_OCCLUSION_TEST_HP 0x8165 2111 #define GL_OCCLUSION_TEST_RESULT_HP 0x8166 2112 2113 #endif /* HP_occlusion_test */ 2114 2115 #ifdef __cplusplus 2116 } 2117 #endif 2118 2119 #endif /* __gl_ATI_h_ */ 2120