1 #ifndef __glext_h_ 2 #define __glext_h_ 3 4 /* $Revision: 13240 $ on $Date:: 2010-12-17 15:16:00 -0800 #$ */ 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 10 /* 11 * This document is licensed under the SGI Free Software B License Version 12 * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 13 */ 14 15 #ifndef GL_APIENTRYP 16 # define GL_APIENTRYP GL_APIENTRY* 17 #endif 18 19 /*------------------------------------------------------------------------* 20 * OES extension tokens 21 *------------------------------------------------------------------------*/ 22 23 /* GL_OES_blend_equation_separate */ 24 #ifndef GL_OES_blend_equation_separate 25 /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */ 26 #define GL_BLEND_EQUATION_RGB_OES 0x8009 27 #define GL_BLEND_EQUATION_ALPHA_OES 0x883D 28 #endif 29 30 /* GL_OES_blend_func_separate */ 31 #ifndef GL_OES_blend_func_separate 32 #define GL_BLEND_DST_RGB_OES 0x80C8 33 #define GL_BLEND_SRC_RGB_OES 0x80C9 34 #define GL_BLEND_DST_ALPHA_OES 0x80CA 35 #define GL_BLEND_SRC_ALPHA_OES 0x80CB 36 #endif 37 38 /* GL_OES_blend_subtract */ 39 #ifndef GL_OES_blend_subtract 40 #define GL_BLEND_EQUATION_OES 0x8009 41 #define GL_FUNC_ADD_OES 0x8006 42 #define GL_FUNC_SUBTRACT_OES 0x800A 43 #define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B 44 #endif 45 46 /* GL_OES_compressed_ETC1_RGB8_texture */ 47 #ifndef GL_OES_compressed_ETC1_RGB8_texture 48 #define GL_ETC1_RGB8_OES 0x8D64 49 #endif 50 51 /* GL_OES_depth24 */ 52 #ifndef GL_OES_depth24 53 #define GL_DEPTH_COMPONENT24_OES 0x81A6 54 #endif 55 56 /* GL_OES_depth32 */ 57 #ifndef GL_OES_depth32 58 #define GL_DEPTH_COMPONENT32_OES 0x81A7 59 #endif 60 61 /* GL_OES_draw_texture */ 62 #ifndef GL_OES_draw_texture 63 #define GL_TEXTURE_CROP_RECT_OES 0x8B9D 64 #endif 65 66 /* GL_OES_EGL_image */ 67 #ifndef GL_OES_EGL_image 68 typedef void* GLeglImageOES; 69 #endif 70 71 /* GL_OES_EGL_image_external */ 72 #ifndef GL_OES_EGL_image_external 73 /* GLeglImageOES defined in GL_OES_EGL_image already. */ 74 #define GL_TEXTURE_EXTERNAL_OES 0x8D65 75 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 76 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 77 #endif 78 79 /* GL_OES_element_index_uint */ 80 #ifndef GL_OES_element_index_uint 81 #define GL_UNSIGNED_INT 0x1405 82 #endif 83 84 /* GL_OES_fixed_point */ 85 #ifndef GL_OES_fixed_point 86 #define GL_FIXED_OES 0x140C 87 #endif 88 89 /* GL_OES_framebuffer_object */ 90 #ifndef GL_OES_framebuffer_object 91 #define GL_NONE_OES 0 92 #define GL_FRAMEBUFFER_OES 0x8D40 93 #define GL_RENDERBUFFER_OES 0x8D41 94 #define GL_RGBA4_OES 0x8056 95 #define GL_RGB5_A1_OES 0x8057 96 #define GL_RGB565_OES 0x8D62 97 #define GL_DEPTH_COMPONENT16_OES 0x81A5 98 #define GL_RENDERBUFFER_WIDTH_OES 0x8D42 99 #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 100 #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 101 #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 102 #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 103 #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 104 #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 105 #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 106 #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 107 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 108 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 109 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 110 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 111 #define GL_COLOR_ATTACHMENT0_OES 0x8CE0 112 #define GL_DEPTH_ATTACHMENT_OES 0x8D00 113 #define GL_STENCIL_ATTACHMENT_OES 0x8D20 114 #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 115 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 116 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 117 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 118 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA 119 #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD 120 #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 121 #define GL_RENDERBUFFER_BINDING_OES 0x8CA7 122 #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 123 #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 124 #endif 125 126 /* GL_OES_mapbuffer */ 127 #ifndef GL_OES_mapbuffer 128 #define GL_WRITE_ONLY_OES 0x88B9 129 #define GL_BUFFER_ACCESS_OES 0x88BB 130 #define GL_BUFFER_MAPPED_OES 0x88BC 131 #define GL_BUFFER_MAP_POINTER_OES 0x88BD 132 #endif 133 134 /* GL_OES_matrix_get */ 135 #ifndef GL_OES_matrix_get 136 #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D 137 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E 138 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F 139 #endif 140 141 /* GL_OES_matrix_palette */ 142 #ifndef GL_OES_matrix_palette 143 #define GL_MAX_VERTEX_UNITS_OES 0x86A4 144 #define GL_MAX_PALETTE_MATRICES_OES 0x8842 145 #define GL_MATRIX_PALETTE_OES 0x8840 146 #define GL_MATRIX_INDEX_ARRAY_OES 0x8844 147 #define GL_WEIGHT_ARRAY_OES 0x86AD 148 #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 149 #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 150 #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 151 #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 152 #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 153 #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E 154 #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB 155 #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 156 #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA 157 #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC 158 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E 159 #endif 160 161 /* GL_OES_packed_depth_stencil */ 162 #ifndef GL_OES_packed_depth_stencil 163 #define GL_DEPTH_STENCIL_OES 0x84F9 164 #define GL_UNSIGNED_INT_24_8_OES 0x84FA 165 #define GL_DEPTH24_STENCIL8_OES 0x88F0 166 #endif 167 168 /* GL_OES_rgb8_rgba8 */ 169 #ifndef GL_OES_rgb8_rgba8 170 #define GL_RGB8_OES 0x8051 171 #define GL_RGBA8_OES 0x8058 172 #endif 173 174 /* GL_OES_stencil1 */ 175 #ifndef GL_OES_stencil1 176 #define GL_STENCIL_INDEX1_OES 0x8D46 177 #endif 178 179 /* GL_OES_stencil4 */ 180 #ifndef GL_OES_stencil4 181 #define GL_STENCIL_INDEX4_OES 0x8D47 182 #endif 183 184 /* GL_OES_stencil8 */ 185 #ifndef GL_OES_stencil8 186 #define GL_STENCIL_INDEX8_OES 0x8D48 187 #endif 188 189 /* GL_OES_stencil_wrap */ 190 #ifndef GL_OES_stencil_wrap 191 #define GL_INCR_WRAP_OES 0x8507 192 #define GL_DECR_WRAP_OES 0x8508 193 #endif 194 195 /* GL_OES_texture_cube_map */ 196 #ifndef GL_OES_texture_cube_map 197 #define GL_NORMAL_MAP_OES 0x8511 198 #define GL_REFLECTION_MAP_OES 0x8512 199 #define GL_TEXTURE_CUBE_MAP_OES 0x8513 200 #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 201 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 202 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 203 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 204 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 205 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 206 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A 207 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C 208 #define GL_TEXTURE_GEN_MODE_OES 0x2500 209 #define GL_TEXTURE_GEN_STR_OES 0x8D60 210 #endif 211 212 /* GL_OES_texture_mirrored_repeat */ 213 #ifndef GL_OES_texture_mirrored_repeat 214 #define GL_MIRRORED_REPEAT_OES 0x8370 215 #endif 216 217 /* GL_OES_vertex_array_object */ 218 #ifndef GL_OES_vertex_array_object 219 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 220 #endif 221 222 /*------------------------------------------------------------------------* 223 * AMD extension tokens 224 *------------------------------------------------------------------------*/ 225 226 /* GL_AMD_compressed_3DC_texture */ 227 #ifndef GL_AMD_compressed_3DC_texture 228 #define GL_3DC_X_AMD 0x87F9 229 #define GL_3DC_XY_AMD 0x87FA 230 #endif 231 232 /* GL_AMD_compressed_ATC_texture */ 233 #ifndef GL_AMD_compressed_ATC_texture 234 #define GL_ATC_RGB_AMD 0x8C92 235 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 236 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE 237 #endif 238 239 /*------------------------------------------------------------------------* 240 * APPLE extension tokens 241 *------------------------------------------------------------------------*/ 242 243 /* GL_APPLE_texture_2D_limited_npot */ 244 /* No new tokens introduced by this extension. */ 245 246 /* GL_APPLE_framebuffer_multisample */ 247 #ifndef GL_APPLE_framebuffer_multisample 248 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB 249 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 250 #define GL_MAX_SAMPLES_APPLE 0x8D57 251 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 252 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 253 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 254 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA 255 #endif 256 257 /* GL_APPLE_texture_format_BGRA8888 */ 258 #ifndef GL_APPLE_texture_format_BGRA8888 259 #define GL_BGRA_EXT 0x80E1 260 #endif 261 262 /* GL_APPLE_texture_max_level */ 263 #ifndef GL_APPLE_texture_max_level 264 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D 265 #endif 266 267 /*------------------------------------------------------------------------* 268 * ARM extension tokens 269 *------------------------------------------------------------------------*/ 270 271 /* GL_ARM_rgba8 */ 272 /* No new tokens introduced by this extension. */ 273 274 /*------------------------------------------------------------------------* 275 * EXT extension tokens 276 *------------------------------------------------------------------------*/ 277 278 /* GL_EXT_blend_minmax */ 279 #ifndef GL_EXT_blend_minmax 280 #define GL_MIN_EXT 0x8007 281 #define GL_MAX_EXT 0x8008 282 #endif 283 284 /* GL_EXT_discard_framebuffer */ 285 #ifndef GL_EXT_discard_framebuffer 286 #define GL_COLOR_EXT 0x1800 287 #define GL_DEPTH_EXT 0x1801 288 #define GL_STENCIL_EXT 0x1802 289 #endif 290 291 /* GL_EXT_multi_draw_arrays */ 292 /* No new tokens introduced by this extension. */ 293 294 /* GL_EXT_read_format_bgra */ 295 #ifndef GL_EXT_read_format_bgra 296 #define GL_BGRA_EXT 0x80E1 297 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 298 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 299 #endif 300 301 /* GL_EXT_texture_filter_anisotropic */ 302 #ifndef GL_EXT_texture_filter_anisotropic 303 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 304 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 305 #endif 306 307 /* GL_EXT_texture_format_BGRA8888 */ 308 #ifndef GL_EXT_texture_format_BGRA8888 309 #define GL_BGRA_EXT 0x80E1 310 #endif 311 312 /* GL_EXT_texture_lod_bias */ 313 #ifndef GL_EXT_texture_lod_bias 314 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD 315 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 316 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 317 #endif 318 319 /*------------------------------------------------------------------------* 320 * IMG extension tokens 321 *------------------------------------------------------------------------*/ 322 323 /* GL_IMG_read_format */ 324 #ifndef GL_IMG_read_format 325 #define GL_BGRA_IMG 0x80E1 326 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 327 #endif 328 329 /* GL_IMG_texture_compression_pvrtc */ 330 #ifndef GL_IMG_texture_compression_pvrtc 331 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 332 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 333 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 334 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 335 #endif 336 337 /* GL_IMG_texture_env_enhanced_fixed_function */ 338 #ifndef GL_IMG_texture_env_enhanced_fixed_function 339 #define GL_MODULATE_COLOR_IMG 0x8C04 340 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 341 #define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 342 #define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 343 #define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 344 #define GL_ADD_BLEND_IMG 0x8C09 345 #define GL_DOT3_RGBA_IMG 0x86AF 346 #endif 347 348 /* GL_IMG_user_clip_plane */ 349 #ifndef GL_IMG_user_clip_plane 350 #define GL_CLIP_PLANE0_IMG 0x3000 351 #define GL_CLIP_PLANE1_IMG 0x3001 352 #define GL_CLIP_PLANE2_IMG 0x3002 353 #define GL_CLIP_PLANE3_IMG 0x3003 354 #define GL_CLIP_PLANE4_IMG 0x3004 355 #define GL_CLIP_PLANE5_IMG 0x3005 356 #define GL_MAX_CLIP_PLANES_IMG 0x0D32 357 #endif 358 359 /* GL_IMG_multisampled_render_to_texture */ 360 #ifndef GL_IMG_multisampled_render_to_texture 361 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 362 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 363 #define GL_MAX_SAMPLES_IMG 0x9135 364 #define GL_TEXTURE_SAMPLES_IMG 0x9136 365 #endif 366 367 /*------------------------------------------------------------------------* 368 * NV extension tokens 369 *------------------------------------------------------------------------*/ 370 371 /* GL_NV_fence */ 372 #ifndef GL_NV_fence 373 #define GL_ALL_COMPLETED_NV 0x84F2 374 #define GL_FENCE_STATUS_NV 0x84F3 375 #define GL_FENCE_CONDITION_NV 0x84F4 376 #endif 377 378 /*------------------------------------------------------------------------* 379 * QCOM extension tokens 380 *------------------------------------------------------------------------*/ 381 382 /* GL_QCOM_driver_control */ 383 /* No new tokens introduced by this extension. */ 384 385 /* GL_QCOM_extended_get */ 386 #ifndef GL_QCOM_extended_get 387 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 388 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 389 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 390 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 391 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 392 #define GL_TEXTURE_TYPE_QCOM 0x8BD7 393 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 394 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 395 #define GL_TEXTURE_TARGET_QCOM 0x8BDA 396 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB 397 #define GL_STATE_RESTORE 0x8BDC 398 #endif 399 400 /* GL_QCOM_extended_get2 */ 401 /* No new tokens introduced by this extension. */ 402 403 /* GL_QCOM_perfmon_global_mode */ 404 #ifndef GL_QCOM_perfmon_global_mode 405 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 406 #endif 407 408 /* GL_QCOM_writeonly_rendering */ 409 #ifndef GL_QCOM_writeonly_rendering 410 #define GL_WRITEONLY_RENDERING_QCOM 0x8823 411 #endif 412 413 /* GL_QCOM_tiled_rendering */ 414 #ifndef GL_QCOM_tiled_rendering 415 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 416 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 417 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 418 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 419 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 420 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 421 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 422 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 423 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 424 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 425 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 426 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 427 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 428 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 429 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 430 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 431 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 432 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 433 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 434 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 435 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 436 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 437 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 438 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 439 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 440 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 441 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 442 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 443 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 444 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 445 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 446 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 447 #endif 448 449 /*------------------------------------------------------------------------* 450 * End of extension tokens, start of corresponding extension functions 451 *------------------------------------------------------------------------*/ 452 453 /*------------------------------------------------------------------------* 454 * OES extension functions 455 *------------------------------------------------------------------------*/ 456 457 /* GL_OES_blend_equation_separate */ 458 #ifndef GL_OES_blend_equation_separate 459 #define GL_OES_blend_equation_separate 1 460 #ifdef GL_GLEXT_PROTOTYPES 461 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 462 #endif 463 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); 464 #endif 465 466 /* GL_OES_blend_func_separate */ 467 #ifndef GL_OES_blend_func_separate 468 #define GL_OES_blend_func_separate 1 469 #ifdef GL_GLEXT_PROTOTYPES 470 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 471 #endif 472 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 473 #endif 474 475 /* GL_OES_blend_subtract */ 476 #ifndef GL_OES_blend_subtract 477 #define GL_OES_blend_subtract 1 478 #ifdef GL_GLEXT_PROTOTYPES 479 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 480 #endif 481 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode); 482 #endif 483 484 /* GL_OES_byte_coordinates */ 485 #ifndef GL_OES_byte_coordinates 486 #define GL_OES_byte_coordinates 1 487 #endif 488 489 /* GL_OES_compressed_ETC1_RGB8_texture */ 490 #ifndef GL_OES_compressed_ETC1_RGB8_texture 491 #define GL_OES_compressed_ETC1_RGB8_texture 1 492 #endif 493 494 /* GL_OES_depth24 */ 495 #ifndef GL_OES_depth24 496 #define GL_OES_depth24 1 497 #endif 498 499 /* GL_OES_depth32 */ 500 #ifndef GL_OES_depth32 501 #define GL_OES_depth32 1 502 #endif 503 504 /* GL_OES_draw_texture */ 505 #ifndef GL_OES_draw_texture 506 #define GL_OES_draw_texture 1 507 #ifdef GL_GLEXT_PROTOTYPES 508 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 509 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 510 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 511 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 512 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 513 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 514 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 515 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 516 #endif 517 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 518 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 519 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 520 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 521 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 522 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 523 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 524 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords); 525 #endif 526 527 /* GL_OES_EGL_image */ 528 #ifndef GL_OES_EGL_image 529 #define GL_OES_EGL_image 1 530 #ifdef GL_GLEXT_PROTOTYPES 531 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 532 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 533 #endif 534 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 535 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); 536 #endif 537 538 /* GL_OES_EGL_image_external */ 539 #ifndef GL_OES_EGL_image_external 540 #define GL_OES_EGL_image_external 1 541 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */ 542 #endif 543 544 /* GL_OES_element_index_uint */ 545 #ifndef GL_OES_element_index_uint 546 #define GL_OES_element_index_uint 1 547 #endif 548 549 /* GL_OES_extended_matrix_palette */ 550 #ifndef GL_OES_extended_matrix_palette 551 #define GL_OES_extended_matrix_palette 1 552 #endif 553 554 /* GL_OES_fbo_render_mipmap */ 555 #ifndef GL_OES_fbo_render_mipmap 556 #define GL_OES_fbo_render_mipmap 1 557 #endif 558 559 /* GL_OES_fixed_point */ 560 #ifndef GL_OES_fixed_point 561 #define GL_OES_fixed_point 1 562 #ifdef GL_GLEXT_PROTOTYPES 563 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 564 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 565 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 566 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 567 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 568 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 569 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 570 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 571 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 572 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 573 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 574 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 575 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 576 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 577 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 578 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 579 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 580 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 581 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 582 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 583 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 584 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 585 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 586 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 587 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 588 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 589 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 590 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 591 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 592 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 593 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 594 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 595 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 596 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 597 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 598 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 599 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 600 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 601 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 602 #endif 603 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 604 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 605 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 606 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 607 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 608 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 609 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 610 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 611 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 612 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 613 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 614 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 615 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 616 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 617 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 618 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 619 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 620 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 621 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 622 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 623 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 624 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 625 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 626 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 627 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 628 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 629 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 630 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 631 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 632 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 633 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 634 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 635 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 636 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 637 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 638 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 639 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 640 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 641 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 642 #endif 643 644 /* GL_OES_framebuffer_object */ 645 #ifndef GL_OES_framebuffer_object 646 #define GL_OES_framebuffer_object 1 647 #ifdef GL_GLEXT_PROTOTYPES 648 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 649 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 650 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 651 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 652 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 653 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 654 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 655 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 656 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 657 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 658 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 659 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 660 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 661 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 662 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 663 #endif 664 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 665 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 666 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 667 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 668 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 669 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 670 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 671 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 672 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 673 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 674 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 675 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 676 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 677 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 678 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target); 679 #endif 680 681 /* GL_OES_mapbuffer */ 682 #ifndef GL_OES_mapbuffer 683 #define GL_OES_mapbuffer 1 684 #ifdef GL_GLEXT_PROTOTYPES 685 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 686 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 687 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params); 688 #endif 689 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 690 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 691 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params); 692 #endif 693 694 /* GL_OES_matrix_get */ 695 #ifndef GL_OES_matrix_get 696 #define GL_OES_matrix_get 1 697 #endif 698 699 /* GL_OES_matrix_palette */ 700 #ifndef GL_OES_matrix_palette 701 #define GL_OES_matrix_palette 1 702 #ifdef GL_GLEXT_PROTOTYPES 703 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 704 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 705 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 706 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 707 #endif 708 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 709 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 710 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 711 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 712 #endif 713 714 /* GL_OES_packed_depth_stencil */ 715 #ifndef GL_OES_packed_depth_stencil 716 #define GL_OES_packed_depth_stencil 1 717 #endif 718 719 /* GL_OES_query_matrix */ 720 #ifndef GL_OES_query_matrix 721 #define GL_OES_query_matrix 1 722 #ifdef GL_GLEXT_PROTOTYPES 723 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 724 #endif 725 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]); 726 #endif 727 728 /* GL_OES_rgb8_rgba8 */ 729 #ifndef GL_OES_rgb8_rgba8 730 #define GL_OES_rgb8_rgba8 1 731 #endif 732 733 /* GL_OES_single_precision */ 734 #ifndef GL_OES_single_precision 735 #define GL_OES_single_precision 1 736 #ifdef GL_GLEXT_PROTOTYPES 737 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 738 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 739 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 740 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 741 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 742 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 743 #endif 744 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 745 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 746 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 747 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 748 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 749 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); 750 #endif 751 752 /* GL_OES_stencil1 */ 753 #ifndef GL_OES_stencil1 754 #define GL_OES_stencil1 1 755 #endif 756 757 /* GL_OES_stencil4 */ 758 #ifndef GL_OES_stencil4 759 #define GL_OES_stencil4 1 760 #endif 761 762 /* GL_OES_stencil8 */ 763 #ifndef GL_OES_stencil8 764 #define GL_OES_stencil8 1 765 #endif 766 767 /* GL_OES_stencil_wrap */ 768 #ifndef GL_OES_stencil_wrap 769 #define GL_OES_stencil_wrap 1 770 #endif 771 772 /* GL_OES_texture_cube_map */ 773 #ifndef GL_OES_texture_cube_map 774 #define GL_OES_texture_cube_map 1 775 #ifdef GL_GLEXT_PROTOTYPES 776 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 777 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 778 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 779 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 780 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 781 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 782 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 783 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 784 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 785 #endif 786 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 787 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 788 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 789 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 790 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 791 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 792 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 793 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 794 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params); 795 #endif 796 797 /* GL_OES_texture_env_crossbar */ 798 #ifndef GL_OES_texture_env_crossbar 799 #define GL_OES_texture_env_crossbar 1 800 #endif 801 802 /* GL_OES_texture_mirrored_repeat */ 803 #ifndef GL_OES_texture_mirrored_repeat 804 #define GL_OES_texture_mirrored_repeat 1 805 #endif 806 807 /* GL_OES_vertex_array_object */ 808 #ifndef GL_OES_vertex_array_object 809 #define GL_OES_vertex_array_object 1 810 #ifdef GL_GLEXT_PROTOTYPES 811 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array); 812 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 813 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 814 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 815 #endif 816 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 817 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 818 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 819 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); 820 #endif 821 822 /*------------------------------------------------------------------------* 823 * AMD extension functions 824 *------------------------------------------------------------------------*/ 825 826 /* GL_AMD_compressed_3DC_texture */ 827 #ifndef GL_AMD_compressed_3DC_texture 828 #define GL_AMD_compressed_3DC_texture 1 829 #endif 830 831 /* GL_AMD_compressed_ATC_texture */ 832 #ifndef GL_AMD_compressed_ATC_texture 833 #define GL_AMD_compressed_ATC_texture 1 834 #endif 835 836 /*------------------------------------------------------------------------* 837 * APPLE extension functions 838 *------------------------------------------------------------------------*/ 839 840 /* GL_APPLE_texture_2D_limited_npot */ 841 #ifndef GL_APPLE_texture_2D_limited_npot 842 #define GL_APPLE_texture_2D_limited_npot 1 843 #endif 844 845 /* GL_APPLE_framebuffer_multisample */ 846 #ifndef GL_APPLE_framebuffer_multisample 847 #define GL_APPLE_framebuffer_multisample 1 848 #ifdef GL_GLEXT_PROTOTYPES 849 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 850 GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 851 #endif /* GL_GLEXT_PROTOTYPES */ 852 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 853 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); 854 #endif 855 856 /* GL_APPLE_texture_format_BGRA8888 */ 857 #ifndef GL_APPLE_texture_format_BGRA8888 858 #define GL_APPLE_texture_format_BGRA8888 1 859 #endif 860 861 /* GL_APPLE_texture_max_level */ 862 #ifndef GL_APPLE_texture_max_level 863 #define GL_APPLE_texture_max_level 1 864 #endif 865 866 /*------------------------------------------------------------------------* 867 * ARM extension functions 868 *------------------------------------------------------------------------*/ 869 870 /* GL_ARM_rgba8 */ 871 #ifndef GL_ARM_rgba8 872 #define GL_ARM_rgba8 1 873 #endif 874 875 /*------------------------------------------------------------------------* 876 * EXT extension functions 877 *------------------------------------------------------------------------*/ 878 879 /* GL_EXT_blend_minmax */ 880 #ifndef GL_EXT_blend_minmax 881 #define GL_EXT_blend_minmax 1 882 #endif 883 884 /* GL_EXT_discard_framebuffer */ 885 #ifndef GL_EXT_discard_framebuffer 886 #define GL_EXT_discard_framebuffer 1 887 #ifdef GL_GLEXT_PROTOTYPES 888 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 889 #endif 890 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); 891 #endif 892 893 /* GL_EXT_multi_draw_arrays */ 894 #ifndef GL_EXT_multi_draw_arrays 895 #define GL_EXT_multi_draw_arrays 1 896 #ifdef GL_GLEXT_PROTOTYPES 897 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei); 898 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei); 899 #endif /* GL_GLEXT_PROTOTYPES */ 900 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 901 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 902 #endif 903 904 /* GL_EXT_read_format_bgra */ 905 #ifndef GL_EXT_read_format_bgra 906 #define GL_EXT_read_format_bgra 1 907 #endif 908 909 /* GL_EXT_texture_filter_anisotropic */ 910 #ifndef GL_EXT_texture_filter_anisotropic 911 #define GL_EXT_texture_filter_anisotropic 1 912 #endif 913 914 /* GL_EXT_texture_format_BGRA8888 */ 915 #ifndef GL_EXT_texture_format_BGRA8888 916 #define GL_EXT_texture_format_BGRA8888 1 917 #endif 918 919 /* GL_EXT_texture_lod_bias */ 920 #ifndef GL_EXT_texture_lod_bias 921 #define GL_EXT_texture_lod_bias 1 922 #endif 923 924 /*------------------------------------------------------------------------* 925 * IMG extension functions 926 *------------------------------------------------------------------------*/ 927 928 /* GL_IMG_read_format */ 929 #ifndef GL_IMG_read_format 930 #define GL_IMG_read_format 1 931 #endif 932 933 /* GL_IMG_texture_compression_pvrtc */ 934 #ifndef GL_IMG_texture_compression_pvrtc 935 #define GL_IMG_texture_compression_pvrtc 1 936 #endif 937 938 /* GL_IMG_texture_env_enhanced_fixed_function */ 939 #ifndef GL_IMG_texture_env_enhanced_fixed_function 940 #define GL_IMG_texture_env_enhanced_fixed_function 1 941 #endif 942 943 /* GL_IMG_user_clip_plane */ 944 #ifndef GL_IMG_user_clip_plane 945 #define GL_IMG_user_clip_plane 1 946 #ifdef GL_GLEXT_PROTOTYPES 947 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *); 948 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *); 949 #endif 950 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn); 951 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn); 952 #endif 953 954 /* GL_IMG_multisampled_render_to_texture */ 955 #ifndef GL_IMG_multisampled_render_to_texture 956 #define GL_IMG_multisampled_render_to_texture 1 957 #ifdef GL_GLEXT_PROTOTYPES 958 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 959 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); 960 #endif 961 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 962 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 963 #endif 964 965 /*------------------------------------------------------------------------* 966 * NV extension functions 967 *------------------------------------------------------------------------*/ 968 969 /* NV_fence */ 970 #ifndef GL_NV_fence 971 #define GL_NV_fence 1 972 #ifdef GL_GLEXT_PROTOTYPES 973 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); 974 GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); 975 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint); 976 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint); 977 GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); 978 GL_API void GL_APIENTRY glFinishFenceNV (GLuint); 979 GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum); 980 #endif 981 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 982 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 983 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 984 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 985 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 986 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 987 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); 988 #endif 989 990 /*------------------------------------------------------------------------* 991 * QCOM extension functions 992 *------------------------------------------------------------------------*/ 993 994 /* GL_QCOM_driver_control */ 995 #ifndef GL_QCOM_driver_control 996 #define GL_QCOM_driver_control 1 997 #ifdef GL_GLEXT_PROTOTYPES 998 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 999 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1000 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1001 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1002 #endif 1003 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1004 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1005 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1006 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1007 #endif 1008 1009 /* GL_QCOM_extended_get */ 1010 #ifndef GL_QCOM_extended_get 1011 #define GL_QCOM_extended_get 1 1012 #ifdef GL_GLEXT_PROTOTYPES 1013 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1014 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1015 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1016 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1017 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1018 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1019 GL_API void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels); 1020 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1021 #endif 1022 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1023 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1024 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1025 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1026 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1027 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1028 typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels); 1029 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); 1030 #endif 1031 1032 /* GL_QCOM_extended_get2 */ 1033 #ifndef GL_QCOM_extended_get2 1034 #define GL_QCOM_extended_get2 1 1035 #ifdef GL_GLEXT_PROTOTYPES 1036 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1037 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1038 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 1039 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1040 #endif 1041 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1042 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1043 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 1044 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1045 #endif 1046 1047 /* GL_QCOM_perfmon_global_mode */ 1048 #ifndef GL_QCOM_perfmon_global_mode 1049 #define GL_QCOM_perfmon_global_mode 1 1050 #endif 1051 1052 /* GL_QCOM_writeonly_rendering */ 1053 #ifndef GL_QCOM_writeonly_rendering 1054 #define GL_QCOM_writeonly_rendering 1 1055 #endif 1056 1057 /* GL_QCOM_tiled_rendering */ 1058 #ifndef GL_QCOM_tiled_rendering 1059 #define GL_QCOM_tiled_rendering 1 1060 #ifdef GL_GLEXT_PROTOTYPES 1061 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1062 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1063 #endif 1064 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1065 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1066 #endif 1067 1068 #ifdef __cplusplus 1069 } 1070 #endif 1071 1072 #endif /* __glext_h_ */ 1073 1074