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 7extern "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 68typedef 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 461GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 462#endif 463typedef 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 470GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 471#endif 472typedef 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 479GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 480#endif 481typedef 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 508GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 509GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 510GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 511GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 512GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 513GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 514GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 515GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 516#endif 517typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 518typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 519typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 520typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 521typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 522typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 523typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 524typedef 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 531GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 532GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 533#endif 534typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 535typedef 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 563GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 564GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 565GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 566GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 567GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 568GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 569GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 570GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 571GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 572GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 573GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 574GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 575GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 576GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 577GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 578GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 579GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 580GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 581GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 582GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 583GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 584GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 585GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 586GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 587GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 588GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 589GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 590GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 591GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 592GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 593GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 594GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 595GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 596GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 597GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 598GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 599GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 600GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 601GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 602#endif 603typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 604typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 605typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 606typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 607typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 608typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 609typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 610typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 611typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 612typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 613typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 614typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 615typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 616typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 617typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 618typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 619typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 620typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 621typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 622typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 623typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 624typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 625typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 626typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 627typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 628typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 629typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 630typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 631typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 632typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 633typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 634typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 635typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 636typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 637typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 638typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 639typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 640typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 641typedef 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 648GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 649GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 650GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 651GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 652GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 653GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 654GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 655GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 656GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 657GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 658GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 659GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 660GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 661GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 662GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 663#endif 664typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 665typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 666typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 667typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 668typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 669typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 670typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 671typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 672typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 673typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 674typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 675typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 676typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 677typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 678typedef 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 685GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 686GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 687GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params); 688#endif 689typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 690typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 691typedef 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 703GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 704GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 705GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 706GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 707#endif 708typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 709typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 710typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 711typedef 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 723GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 724#endif 725typedef 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 737GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 738GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 739GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 740GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 741GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 742GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 743#endif 744typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 745typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 746typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 747typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 748typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 749typedef 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 776GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 777GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 778GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 779GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 780GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 781GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 782GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 783GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 784GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 785#endif 786typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 787typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 788typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 789typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 790typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 791typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 792typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 793typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 794typedef 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 811GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array); 812GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 813GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 814GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 815#endif 816typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 817typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 818typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 819typedef 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 849GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 850GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 851#endif /* GL_GLEXT_PROTOTYPES */ 852typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 853typedef 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 888GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 889#endif 890typedef 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 897GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei); 898GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei); 899#endif /* GL_GLEXT_PROTOTYPES */ 900typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 901typedef 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 947GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *); 948GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *); 949#endif 950typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn); 951typedef 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 958GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 959GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); 960#endif 961typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 962typedef 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 973GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); 974GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); 975GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint); 976GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint); 977GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); 978GL_API void GL_APIENTRY glFinishFenceNV (GLuint); 979GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum); 980#endif 981typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 982typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 983typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 984typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 985typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 986typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 987typedef 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 998GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 999GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1000GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1001GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1002#endif 1003typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1004typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1005typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1006typedef 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 1013GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1014GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1015GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1016GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1017GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1018GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1019GL_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); 1020GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1021#endif 1022typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1023typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1024typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1025typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1026typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1027typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1028typedef 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); 1029typedef 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 1036GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1037GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1038GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 1039GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1040#endif 1041typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1042typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1043typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 1044typedef 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 1061GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1062GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1063#endif 1064typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1065typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1066#endif 1067 1068#ifdef __cplusplus 1069} 1070#endif 1071 1072#endif /* __glext_h_ */ 1073 1074