11 ** Copyright (c) 2013-2014 The Khronos Group Inc.
13 ** Permission is hereby granted, free of charge, to any person obtaining a
14 ** copy of this software and/or associated documentation files (the
15 ** "Materials"), to deal in the Materials without restriction, including
16 ** without limitation the rights to use, copy, modify, merge, publish,
17 ** distribute, sublicense, and/or sell copies of the Materials, and to
18 ** permit persons to whom the Materials are furnished to do so, subject to
19 ** the following conditions:
21 ** The above copyright notice and this permission notice shall be included
22 ** in all copies or substantial portions of the Materials.
24 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
27 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
28 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
29 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
30 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
33 ** This header is generated from the Khronos OpenGL / OpenGL ES XML
34 ** API Registry. The current version of the Registry, generator scripts
35 ** used to make the header, and the header can be found at
36 ** http://www.opengl.org/registry/
38 ** Khronos $Revision$ on $Date$
42 #define GL_APIENTRYP GL_APIENTRY*
45 /* Generated on date 20140519 */
47 /* Generated C header for:
50 * Versions considered: 2\.[0-9]
51 * Versions emitted: _nomatch_^
52 * Default extensions included: gles2
53 * Additional extensions included: _nomatch_^
54 * Extensions removed: _nomatch_^
57 #ifndef GL_KHR_blend_equation_advanced
58 #define GL_KHR_blend_equation_advanced 1
59 #define GL_BLEND_ADVANCED_COHERENT_KHR 0x9285
60 #define GL_MULTIPLY_KHR 0x9294
61 #define GL_SCREEN_KHR 0x9295
62 #define GL_OVERLAY_KHR 0x9296
63 #define GL_DARKEN_KHR 0x9297
64 #define GL_LIGHTEN_KHR 0x9298
65 #define GL_COLORDODGE_KHR 0x9299
66 #define GL_COLORBURN_KHR 0x929A
67 #define GL_HARDLIGHT_KHR 0x929B
68 #define GL_SOFTLIGHT_KHR 0x929C
69 #define GL_DIFFERENCE_KHR 0x929E
70 #define GL_EXCLUSION_KHR 0x92A0
71 #define GL_HSL_HUE_KHR 0x92AD
72 #define GL_HSL_SATURATION_KHR 0x92AE
73 #define GL_HSL_COLOR_KHR 0x92AF
74 #define GL_HSL_LUMINOSITY_KHR 0x92B0
75 typedef void (GL_APIENTRYP PFNGLBLENDBARRIERKHRPROC
) (void);
76 #ifdef GL_GLEXT_PROTOTYPES
77 GL_APICALL
void GL_APIENTRY
glBlendBarrierKHR (void);
79 #endif /* GL_KHR_blend_equation_advanced */
82 #define GL_KHR_debug 1
83 typedef void (GL_APIENTRY
*GLDEBUGPROCKHR
)(GLenum source
,GLenum type
,GLuint id
,GLenum severity
,GLsizei length
,const GLchar
*message
,const void *userParam
);
84 #define GL_SAMPLER 0x82E6
85 #define GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR 0x8242
86 #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR 0x8243
87 #define GL_DEBUG_CALLBACK_FUNCTION_KHR 0x8244
88 #define GL_DEBUG_CALLBACK_USER_PARAM_KHR 0x8245
89 #define GL_DEBUG_SOURCE_API_KHR 0x8246
90 #define GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR 0x8247
91 #define GL_DEBUG_SOURCE_SHADER_COMPILER_KHR 0x8248
92 #define GL_DEBUG_SOURCE_THIRD_PARTY_KHR 0x8249
93 #define GL_DEBUG_SOURCE_APPLICATION_KHR 0x824A
94 #define GL_DEBUG_SOURCE_OTHER_KHR 0x824B
95 #define GL_DEBUG_TYPE_ERROR_KHR 0x824C
96 #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR 0x824D
97 #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR 0x824E
98 #define GL_DEBUG_TYPE_PORTABILITY_KHR 0x824F
99 #define GL_DEBUG_TYPE_PERFORMANCE_KHR 0x8250
100 #define GL_DEBUG_TYPE_OTHER_KHR 0x8251
101 #define GL_DEBUG_TYPE_MARKER_KHR 0x8268
102 #define GL_DEBUG_TYPE_PUSH_GROUP_KHR 0x8269
103 #define GL_DEBUG_TYPE_POP_GROUP_KHR 0x826A
104 #define GL_DEBUG_SEVERITY_NOTIFICATION_KHR 0x826B
105 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR 0x826C
106 #define GL_DEBUG_GROUP_STACK_DEPTH_KHR 0x826D
107 #define GL_BUFFER_KHR 0x82E0
108 #define GL_SHADER_KHR 0x82E1
109 #define GL_PROGRAM_KHR 0x82E2
110 #define GL_VERTEX_ARRAY_KHR 0x8074
111 #define GL_QUERY_KHR 0x82E3
112 #define GL_SAMPLER_KHR 0x82E6
113 #define GL_MAX_LABEL_LENGTH_KHR 0x82E8
114 #define GL_MAX_DEBUG_MESSAGE_LENGTH_KHR 0x9143
115 #define GL_MAX_DEBUG_LOGGED_MESSAGES_KHR 0x9144
116 #define GL_DEBUG_LOGGED_MESSAGES_KHR 0x9145
117 #define GL_DEBUG_SEVERITY_HIGH_KHR 0x9146
118 #define GL_DEBUG_SEVERITY_MEDIUM_KHR 0x9147
119 #define GL_DEBUG_SEVERITY_LOW_KHR 0x9148
120 #define GL_DEBUG_OUTPUT_KHR 0x92E0
121 #define GL_CONTEXT_FLAG_DEBUG_BIT_KHR 0x00000002
122 #define GL_STACK_OVERFLOW_KHR 0x0503
123 #define GL_STACK_UNDERFLOW_KHR 0x0504
124 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLKHRPROC
) (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
125 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTKHRPROC
) (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
126 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKKHRPROC
) (GLDEBUGPROCKHR callback
, const void *userParam
);
127 typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGKHRPROC
) (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
128 typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPKHRPROC
) (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
129 typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPKHRPROC
) (void);
130 typedef void (GL_APIENTRYP PFNGLOBJECTLABELKHRPROC
) (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
131 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELKHRPROC
) (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
132 typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELKHRPROC
) (const void *ptr
, GLsizei length
, const GLchar
*label
);
133 typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELKHRPROC
) (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
134 typedef void (GL_APIENTRYP PFNGLGETPOINTERVKHRPROC
) (GLenum pname
, void **params
);
135 #ifdef GL_GLEXT_PROTOTYPES
136 GL_APICALL
void GL_APIENTRY
glDebugMessageControlKHR (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
137 GL_APICALL
void GL_APIENTRY
glDebugMessageInsertKHR (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
138 GL_APICALL
void GL_APIENTRY
glDebugMessageCallbackKHR (GLDEBUGPROCKHR callback
, const void *userParam
);
139 GL_APICALL GLuint GL_APIENTRY
glGetDebugMessageLogKHR (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
140 GL_APICALL
void GL_APIENTRY
glPushDebugGroupKHR (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
141 GL_APICALL
void GL_APIENTRY
glPopDebugGroupKHR (void);
142 GL_APICALL
void GL_APIENTRY
glObjectLabelKHR (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
143 GL_APICALL
void GL_APIENTRY
glGetObjectLabelKHR (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
144 GL_APICALL
void GL_APIENTRY
glObjectPtrLabelKHR (const void *ptr
, GLsizei length
, const GLchar
*label
);
145 GL_APICALL
void GL_APIENTRY
glGetObjectPtrLabelKHR (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
146 GL_APICALL
void GL_APIENTRY
glGetPointervKHR (GLenum pname
, void **params
);
148 #endif /* GL_KHR_debug */
150 #ifndef GL_KHR_texture_compression_astc_hdr
151 #define GL_KHR_texture_compression_astc_hdr 1
152 #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
153 #define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
154 #define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
155 #define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
156 #define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
157 #define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
158 #define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
159 #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
160 #define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
161 #define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
162 #define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
163 #define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
164 #define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
165 #define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
166 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
167 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
168 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
169 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
170 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
171 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
172 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
173 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
174 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
175 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
176 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
177 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
178 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
179 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
180 #endif /* GL_KHR_texture_compression_astc_hdr */
182 #ifndef GL_KHR_texture_compression_astc_ldr
183 #define GL_KHR_texture_compression_astc_ldr 1
184 #endif /* GL_KHR_texture_compression_astc_ldr */
186 #ifndef GL_OES_EGL_image
187 #define GL_OES_EGL_image 1
188 typedef void *GLeglImageOES
;
189 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC
) (GLenum target
, GLeglImageOES image
);
190 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC
) (GLenum target
, GLeglImageOES image
);
191 #ifdef GL_GLEXT_PROTOTYPES
192 GL_APICALL
void GL_APIENTRY
glEGLImageTargetTexture2DOES (GLenum target
, GLeglImageOES image
);
193 GL_APICALL
void GL_APIENTRY
glEGLImageTargetRenderbufferStorageOES (GLenum target
, GLeglImageOES image
);
195 #endif /* GL_OES_EGL_image */
197 #ifndef GL_OES_EGL_image_external
198 #define GL_OES_EGL_image_external 1
199 #define GL_TEXTURE_EXTERNAL_OES 0x8D65
200 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
201 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
202 #define GL_SAMPLER_EXTERNAL_OES 0x8D66
203 #endif /* GL_OES_EGL_image_external */
205 #ifndef GL_OES_compressed_ETC1_RGB8_texture
206 #define GL_OES_compressed_ETC1_RGB8_texture 1
207 #define GL_ETC1_RGB8_OES 0x8D64
208 #endif /* GL_OES_compressed_ETC1_RGB8_texture */
210 #ifndef GL_OES_compressed_paletted_texture
211 #define GL_OES_compressed_paletted_texture 1
212 #define GL_PALETTE4_RGB8_OES 0x8B90
213 #define GL_PALETTE4_RGBA8_OES 0x8B91
214 #define GL_PALETTE4_R5_G6_B5_OES 0x8B92
215 #define GL_PALETTE4_RGBA4_OES 0x8B93
216 #define GL_PALETTE4_RGB5_A1_OES 0x8B94
217 #define GL_PALETTE8_RGB8_OES 0x8B95
218 #define GL_PALETTE8_RGBA8_OES 0x8B96
219 #define GL_PALETTE8_R5_G6_B5_OES 0x8B97
220 #define GL_PALETTE8_RGBA4_OES 0x8B98
221 #define GL_PALETTE8_RGB5_A1_OES 0x8B99
222 #endif /* GL_OES_compressed_paletted_texture */
224 #ifndef GL_OES_depth24
225 #define GL_OES_depth24 1
226 #define GL_DEPTH_COMPONENT24_OES 0x81A6
227 #endif /* GL_OES_depth24 */
229 #ifndef GL_OES_depth32
230 #define GL_OES_depth32 1
231 #define GL_DEPTH_COMPONENT32_OES 0x81A7
232 #endif /* GL_OES_depth32 */
234 #ifndef GL_OES_depth_texture
235 #define GL_OES_depth_texture 1
236 #endif /* GL_OES_depth_texture */
238 #ifndef GL_OES_element_index_uint
239 #define GL_OES_element_index_uint 1
240 #endif /* GL_OES_element_index_uint */
242 #ifndef GL_OES_fbo_render_mipmap
243 #define GL_OES_fbo_render_mipmap 1
244 #endif /* GL_OES_fbo_render_mipmap */
246 #ifndef GL_OES_fragment_precision_high
247 #define GL_OES_fragment_precision_high 1
248 #endif /* GL_OES_fragment_precision_high */
250 #ifndef GL_OES_get_program_binary
251 #define GL_OES_get_program_binary 1
252 #define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
253 #define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
254 #define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
255 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC
) (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, void *binary
);
256 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC
) (GLuint program
, GLenum binaryFormat
, const void *binary
, GLint length
);
257 #ifdef GL_GLEXT_PROTOTYPES
258 GL_APICALL
void GL_APIENTRY
glGetProgramBinaryOES (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, void *binary
);
259 GL_APICALL
void GL_APIENTRY
glProgramBinaryOES (GLuint program
, GLenum binaryFormat
, const void *binary
, GLint length
);
261 #endif /* GL_OES_get_program_binary */
263 #ifndef GL_OES_mapbuffer
264 #define GL_OES_mapbuffer 1
265 #define GL_WRITE_ONLY_OES 0x88B9
266 #define GL_BUFFER_ACCESS_OES 0x88BB
267 #define GL_BUFFER_MAPPED_OES 0x88BC
268 #define GL_BUFFER_MAP_POINTER_OES 0x88BD
269 typedef void *(GL_APIENTRYP PFNGLMAPBUFFEROESPROC
) (GLenum target
, GLenum access
);
270 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC
) (GLenum target
);
271 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC
) (GLenum target
, GLenum pname
, void **params
);
272 #ifdef GL_GLEXT_PROTOTYPES
273 GL_APICALL
void *GL_APIENTRY
glMapBufferOES (GLenum target
, GLenum access
);
274 GL_APICALL GLboolean GL_APIENTRY
glUnmapBufferOES (GLenum target
);
275 GL_APICALL
void GL_APIENTRY
glGetBufferPointervOES (GLenum target
, GLenum pname
, void **params
);
277 #endif /* GL_OES_mapbuffer */
279 #ifndef GL_OES_packed_depth_stencil
280 #define GL_OES_packed_depth_stencil 1
281 #define GL_DEPTH_STENCIL_OES 0x84F9
282 #define GL_UNSIGNED_INT_24_8_OES 0x84FA
283 #define GL_DEPTH24_STENCIL8_OES 0x88F0
284 #endif /* GL_OES_packed_depth_stencil */
286 #ifndef GL_OES_required_internalformat
287 #define GL_OES_required_internalformat 1
288 #define GL_ALPHA8_OES 0x803C
289 #define GL_DEPTH_COMPONENT16_OES 0x81A5
290 #define GL_LUMINANCE4_ALPHA4_OES 0x8043
291 #define GL_LUMINANCE8_ALPHA8_OES 0x8045
292 #define GL_LUMINANCE8_OES 0x8040
293 #define GL_RGBA4_OES 0x8056
294 #define GL_RGB5_A1_OES 0x8057
295 #define GL_RGB565_OES 0x8D62
296 #define GL_RGB8_OES 0x8051
297 #define GL_RGBA8_OES 0x8058
298 #define GL_RGB10_EXT 0x8052
299 #define GL_RGB10_A2_EXT 0x8059
300 #endif /* GL_OES_required_internalformat */
302 #ifndef GL_OES_rgb8_rgba8
303 #define GL_OES_rgb8_rgba8 1
304 #endif /* GL_OES_rgb8_rgba8 */
306 #ifndef GL_OES_sample_shading
307 #define GL_OES_sample_shading 1
308 #define GL_SAMPLE_SHADING_OES 0x8C36
309 #define GL_MIN_SAMPLE_SHADING_VALUE_OES 0x8C37
310 typedef void (GL_APIENTRYP PFNGLMINSAMPLESHADINGOESPROC
) (GLfloat value
);
311 #ifdef GL_GLEXT_PROTOTYPES
312 GL_APICALL
void GL_APIENTRY
glMinSampleShadingOES (GLfloat value
);
314 #endif /* GL_OES_sample_shading */
316 #ifndef GL_OES_sample_variables
317 #define GL_OES_sample_variables 1
318 #endif /* GL_OES_sample_variables */
320 #ifndef GL_OES_shader_image_atomic
321 #define GL_OES_shader_image_atomic 1
322 #endif /* GL_OES_shader_image_atomic */
324 #ifndef GL_OES_shader_multisample_interpolation
325 #define GL_OES_shader_multisample_interpolation 1
326 #define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5B
327 #define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5C
328 #define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES 0x8E5D
329 #endif /* GL_OES_shader_multisample_interpolation */
331 #ifndef GL_OES_standard_derivatives
332 #define GL_OES_standard_derivatives 1
333 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
334 #endif /* GL_OES_standard_derivatives */
336 #ifndef GL_OES_stencil1
337 #define GL_OES_stencil1 1
338 #define GL_STENCIL_INDEX1_OES 0x8D46
339 #endif /* GL_OES_stencil1 */
341 #ifndef GL_OES_stencil4
342 #define GL_OES_stencil4 1
343 #define GL_STENCIL_INDEX4_OES 0x8D47
344 #endif /* GL_OES_stencil4 */
346 #ifndef GL_OES_surfaceless_context
347 #define GL_OES_surfaceless_context 1
348 #define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
349 #endif /* GL_OES_surfaceless_context */
351 #ifndef GL_OES_texture_3D
352 #define GL_OES_texture_3D 1
353 #define GL_TEXTURE_WRAP_R_OES 0x8072
354 #define GL_TEXTURE_3D_OES 0x806F
355 #define GL_TEXTURE_BINDING_3D_OES 0x806A
356 #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
357 #define GL_SAMPLER_3D_OES 0x8B5F
358 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
359 typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
360 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
361 typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
362 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const void *data
);
363 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
364 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOESPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
365 #ifdef GL_GLEXT_PROTOTYPES
366 GL_APICALL
void GL_APIENTRY
glTexImage3DOES (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
367 GL_APICALL
void GL_APIENTRY
glTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
368 GL_APICALL
void GL_APIENTRY
glCopyTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
369 GL_APICALL
void GL_APIENTRY
glCompressedTexImage3DOES (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const void *data
);
370 GL_APICALL
void GL_APIENTRY
glCompressedTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
371 GL_APICALL
void GL_APIENTRY
glFramebufferTexture3DOES (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
373 #endif /* GL_OES_texture_3D */
375 #ifndef GL_OES_texture_compression_astc
376 #define GL_OES_texture_compression_astc 1
377 #define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0
378 #define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1
379 #define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2
380 #define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3
381 #define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4
382 #define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5
383 #define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6
384 #define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7
385 #define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8
386 #define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9
387 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0
388 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1
389 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2
390 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3
391 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4
392 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5
393 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6
394 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7
395 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8
396 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9
397 #endif /* GL_OES_texture_compression_astc */
399 #ifndef GL_OES_texture_float
400 #define GL_OES_texture_float 1
401 #endif /* GL_OES_texture_float */
403 #ifndef GL_OES_texture_float_linear
404 #define GL_OES_texture_float_linear 1
405 #endif /* GL_OES_texture_float_linear */
407 #ifndef GL_OES_texture_half_float
408 #define GL_OES_texture_half_float 1
409 #define GL_HALF_FLOAT_OES 0x8D61
410 #endif /* GL_OES_texture_half_float */
412 #ifndef GL_OES_texture_half_float_linear
413 #define GL_OES_texture_half_float_linear 1
414 #endif /* GL_OES_texture_half_float_linear */
416 #ifndef GL_OES_texture_npot
417 #define GL_OES_texture_npot 1
418 #endif /* GL_OES_texture_npot */
420 #ifndef GL_OES_texture_stencil8
421 #define GL_OES_texture_stencil8 1
422 #define GL_STENCIL_INDEX_OES 0x1901
423 #define GL_STENCIL_INDEX8_OES 0x8D48
424 #endif /* GL_OES_texture_stencil8 */
426 #ifndef GL_OES_texture_storage_multisample_2d_array
427 #define GL_OES_texture_storage_multisample_2d_array 1
428 #define GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES 0x9102
429 #define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES 0x9105
430 #define GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910B
431 #define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910C
432 #define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910D
433 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DMULTISAMPLEOESPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
434 #ifdef GL_GLEXT_PROTOTYPES
435 GL_APICALL
void GL_APIENTRY
glTexStorage3DMultisampleOES (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
437 #endif /* GL_OES_texture_storage_multisample_2d_array */
439 #ifndef GL_OES_vertex_array_object
440 #define GL_OES_vertex_array_object 1
441 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
442 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC
) (GLuint array
);
443 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC
) (GLsizei n
, const GLuint
*arrays
);
444 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC
) (GLsizei n
, GLuint
*arrays
);
445 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC
) (GLuint array
);
446 #ifdef GL_GLEXT_PROTOTYPES
447 GL_APICALL
void GL_APIENTRY
glBindVertexArrayOES (GLuint array
);
448 GL_APICALL
void GL_APIENTRY
glDeleteVertexArraysOES (GLsizei n
, const GLuint
*arrays
);
449 GL_APICALL
void GL_APIENTRY
glGenVertexArraysOES (GLsizei n
, GLuint
*arrays
);
450 GL_APICALL GLboolean GL_APIENTRY
glIsVertexArrayOES (GLuint array
);
452 #endif /* GL_OES_vertex_array_object */
454 #ifndef GL_OES_vertex_half_float
455 #define GL_OES_vertex_half_float 1
456 #endif /* GL_OES_vertex_half_float */
458 #ifndef GL_OES_vertex_type_10_10_10_2
459 #define GL_OES_vertex_type_10_10_10_2 1
460 #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
461 #define GL_INT_10_10_10_2_OES 0x8DF7
462 #endif /* GL_OES_vertex_type_10_10_10_2 */
464 #ifndef GL_AMD_compressed_3DC_texture
465 #define GL_AMD_compressed_3DC_texture 1
466 #define GL_3DC_X_AMD 0x87F9
467 #define GL_3DC_XY_AMD 0x87FA
468 #endif /* GL_AMD_compressed_3DC_texture */
470 #ifndef GL_AMD_compressed_ATC_texture
471 #define GL_AMD_compressed_ATC_texture 1
472 #define GL_ATC_RGB_AMD 0x8C92
473 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
474 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
475 #endif /* GL_AMD_compressed_ATC_texture */
477 #ifndef GL_AMD_performance_monitor
478 #define GL_AMD_performance_monitor 1
479 #define GL_COUNTER_TYPE_AMD 0x8BC0
480 #define GL_COUNTER_RANGE_AMD 0x8BC1
481 #define GL_UNSIGNED_INT64_AMD 0x8BC2
482 #define GL_PERCENTAGE_AMD 0x8BC3
483 #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
484 #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
485 #define GL_PERFMON_RESULT_AMD 0x8BC6
486 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC
) (GLint
*numGroups
, GLsizei groupsSize
, GLuint
*groups
);
487 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC
) (GLuint group
, GLint
*numCounters
, GLint
*maxActiveCounters
, GLsizei counterSize
, GLuint
*counters
);
488 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC
) (GLuint group
, GLsizei bufSize
, GLsizei
*length
, GLchar
*groupString
);
489 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC
) (GLuint group
, GLuint counter
, GLsizei bufSize
, GLsizei
*length
, GLchar
*counterString
);
490 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC
) (GLuint group
, GLuint counter
, GLenum pname
, void *data
);
491 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC
) (GLsizei n
, GLuint
*monitors
);
492 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC
) (GLsizei n
, GLuint
*monitors
);
493 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC
) (GLuint monitor
, GLboolean enable
, GLuint group
, GLint numCounters
, GLuint
*counterList
);
494 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC
) (GLuint monitor
);
495 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC
) (GLuint monitor
);
496 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC
) (GLuint monitor
, GLenum pname
, GLsizei dataSize
, GLuint
*data
, GLint
*bytesWritten
);
497 #ifdef GL_GLEXT_PROTOTYPES
498 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorGroupsAMD (GLint
*numGroups
, GLsizei groupsSize
, GLuint
*groups
);
499 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCountersAMD (GLuint group
, GLint
*numCounters
, GLint
*maxActiveCounters
, GLsizei counterSize
, GLuint
*counters
);
500 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorGroupStringAMD (GLuint group
, GLsizei bufSize
, GLsizei
*length
, GLchar
*groupString
);
501 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterStringAMD (GLuint group
, GLuint counter
, GLsizei bufSize
, GLsizei
*length
, GLchar
*counterString
);
502 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterInfoAMD (GLuint group
, GLuint counter
, GLenum pname
, void *data
);
503 GL_APICALL
void GL_APIENTRY
glGenPerfMonitorsAMD (GLsizei n
, GLuint
*monitors
);
504 GL_APICALL
void GL_APIENTRY
glDeletePerfMonitorsAMD (GLsizei n
, GLuint
*monitors
);
505 GL_APICALL
void GL_APIENTRY
glSelectPerfMonitorCountersAMD (GLuint monitor
, GLboolean enable
, GLuint group
, GLint numCounters
, GLuint
*counterList
);
506 GL_APICALL
void GL_APIENTRY
glBeginPerfMonitorAMD (GLuint monitor
);
507 GL_APICALL
void GL_APIENTRY
glEndPerfMonitorAMD (GLuint monitor
);
508 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterDataAMD (GLuint monitor
, GLenum pname
, GLsizei dataSize
, GLuint
*data
, GLint
*bytesWritten
);
510 #endif /* GL_AMD_performance_monitor */
512 #ifndef GL_AMD_program_binary_Z400
513 #define GL_AMD_program_binary_Z400 1
514 #define GL_Z400_BINARY_AMD 0x8740
515 #endif /* GL_AMD_program_binary_Z400 */
517 #ifndef GL_ANGLE_depth_texture
518 #define GL_ANGLE_depth_texture 1
519 #endif /* GL_ANGLE_depth_texture */
521 #ifndef GL_ANGLE_framebuffer_blit
522 #define GL_ANGLE_framebuffer_blit 1
523 #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
524 #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
525 #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
526 #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
527 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC
) (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
528 #ifdef GL_GLEXT_PROTOTYPES
529 GL_APICALL
void GL_APIENTRY
glBlitFramebufferANGLE (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
531 #endif /* GL_ANGLE_framebuffer_blit */
533 #ifndef GL_ANGLE_framebuffer_multisample
534 #define GL_ANGLE_framebuffer_multisample 1
535 #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
536 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
537 #define GL_MAX_SAMPLES_ANGLE 0x8D57
538 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
539 #ifdef GL_GLEXT_PROTOTYPES
540 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleANGLE (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
542 #endif /* GL_ANGLE_framebuffer_multisample */
544 #ifndef GL_ANGLE_instanced_arrays
545 #define GL_ANGLE_instanced_arrays 1
546 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
547 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDANGLEPROC
) (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
548 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDANGLEPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
549 typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISORANGLEPROC
) (GLuint index
, GLuint divisor
);
550 #ifdef GL_GLEXT_PROTOTYPES
551 GL_APICALL
void GL_APIENTRY
glDrawArraysInstancedANGLE (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
552 GL_APICALL
void GL_APIENTRY
glDrawElementsInstancedANGLE (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
553 GL_APICALL
void GL_APIENTRY
glVertexAttribDivisorANGLE (GLuint index
, GLuint divisor
);
555 #endif /* GL_ANGLE_instanced_arrays */
557 #ifndef GL_ANGLE_pack_reverse_row_order
558 #define GL_ANGLE_pack_reverse_row_order 1
559 #define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
560 #endif /* GL_ANGLE_pack_reverse_row_order */
562 #ifndef GL_ANGLE_program_binary
563 #define GL_ANGLE_program_binary 1
564 #define GL_PROGRAM_BINARY_ANGLE 0x93A6
565 #endif /* GL_ANGLE_program_binary */
567 #ifndef GL_ANGLE_texture_compression_dxt3
568 #define GL_ANGLE_texture_compression_dxt3 1
569 #define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
570 #endif /* GL_ANGLE_texture_compression_dxt3 */
572 #ifndef GL_ANGLE_texture_compression_dxt5
573 #define GL_ANGLE_texture_compression_dxt5 1
574 #define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
575 #endif /* GL_ANGLE_texture_compression_dxt5 */
577 #ifndef GL_ANGLE_texture_usage
578 #define GL_ANGLE_texture_usage 1
579 #define GL_TEXTURE_USAGE_ANGLE 0x93A2
580 #define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
581 #endif /* GL_ANGLE_texture_usage */
583 #ifndef GL_ANGLE_translated_shader_source
584 #define GL_ANGLE_translated_shader_source 1
585 #define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
586 typedef void (GL_APIENTRYP PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC
) (GLuint shader
, GLsizei bufsize
, GLsizei
*length
, GLchar
*source
);
587 #ifdef GL_GLEXT_PROTOTYPES
588 GL_APICALL
void GL_APIENTRY
glGetTranslatedShaderSourceANGLE (GLuint shader
, GLsizei bufsize
, GLsizei
*length
, GLchar
*source
);
590 #endif /* GL_ANGLE_translated_shader_source */
592 #ifndef GL_APPLE_copy_texture_levels
593 #define GL_APPLE_copy_texture_levels 1
594 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC
) (GLuint destinationTexture
, GLuint sourceTexture
, GLint sourceBaseLevel
, GLsizei sourceLevelCount
);
595 #ifdef GL_GLEXT_PROTOTYPES
596 GL_APICALL
void GL_APIENTRY
glCopyTextureLevelsAPPLE (GLuint destinationTexture
, GLuint sourceTexture
, GLint sourceBaseLevel
, GLsizei sourceLevelCount
);
598 #endif /* GL_APPLE_copy_texture_levels */
600 #ifndef GL_APPLE_framebuffer_multisample
601 #define GL_APPLE_framebuffer_multisample 1
602 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
603 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
604 #define GL_MAX_SAMPLES_APPLE 0x8D57
605 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
606 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
607 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
608 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
609 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
610 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC
) (void);
611 #ifdef GL_GLEXT_PROTOTYPES
612 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleAPPLE (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
613 GL_APICALL
void GL_APIENTRY
glResolveMultisampleFramebufferAPPLE (void);
615 #endif /* GL_APPLE_framebuffer_multisample */
617 #ifndef GL_APPLE_rgb_422
618 #define GL_APPLE_rgb_422 1
619 #define GL_RGB_422_APPLE 0x8A1F
620 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
621 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
622 #define GL_RGB_RAW_422_APPLE 0x8A51
623 #endif /* GL_APPLE_rgb_422 */
625 #ifndef GL_APPLE_sync
626 #define GL_APPLE_sync 1
627 #define GL_SYNC_OBJECT_APPLE 0x8A53
628 #define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
629 #define GL_OBJECT_TYPE_APPLE 0x9112
630 #define GL_SYNC_CONDITION_APPLE 0x9113
631 #define GL_SYNC_STATUS_APPLE 0x9114
632 #define GL_SYNC_FLAGS_APPLE 0x9115
633 #define GL_SYNC_FENCE_APPLE 0x9116
634 #define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
635 #define GL_UNSIGNALED_APPLE 0x9118
636 #define GL_SIGNALED_APPLE 0x9119
637 #define GL_ALREADY_SIGNALED_APPLE 0x911A
638 #define GL_TIMEOUT_EXPIRED_APPLE 0x911B
639 #define GL_CONDITION_SATISFIED_APPLE 0x911C
640 #define GL_WAIT_FAILED_APPLE 0x911D
641 #define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
642 #define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
643 typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC
) (GLenum condition
, GLbitfield flags
);
644 typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC
) (GLsync sync
);
645 typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC
) (GLsync sync
);
646 typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
647 typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
648 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC
) (GLenum pname
, GLint64
*params
);
649 typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC
) (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
650 #ifdef GL_GLEXT_PROTOTYPES
651 GL_APICALL GLsync GL_APIENTRY
glFenceSyncAPPLE (GLenum condition
, GLbitfield flags
);
652 GL_APICALL GLboolean GL_APIENTRY
glIsSyncAPPLE (GLsync sync
);
653 GL_APICALL
void GL_APIENTRY
glDeleteSyncAPPLE (GLsync sync
);
654 GL_APICALL GLenum GL_APIENTRY
glClientWaitSyncAPPLE (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
655 GL_APICALL
void GL_APIENTRY
glWaitSyncAPPLE (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
656 GL_APICALL
void GL_APIENTRY
glGetInteger64vAPPLE (GLenum pname
, GLint64
*params
);
657 GL_APICALL
void GL_APIENTRY
glGetSyncivAPPLE (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
659 #endif /* GL_APPLE_sync */
661 #ifndef GL_APPLE_texture_format_BGRA8888
662 #define GL_APPLE_texture_format_BGRA8888 1
663 #define GL_BGRA_EXT 0x80E1
664 #define GL_BGRA8_EXT 0x93A1
665 #endif /* GL_APPLE_texture_format_BGRA8888 */
667 #ifndef GL_APPLE_texture_max_level
668 #define GL_APPLE_texture_max_level 1
669 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
670 #endif /* GL_APPLE_texture_max_level */
672 #ifndef GL_ARM_mali_program_binary
673 #define GL_ARM_mali_program_binary 1
674 #define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
675 #endif /* GL_ARM_mali_program_binary */
677 #ifndef GL_ARM_mali_shader_binary
678 #define GL_ARM_mali_shader_binary 1
679 #define GL_MALI_SHADER_BINARY_ARM 0x8F60
680 #endif /* GL_ARM_mali_shader_binary */
683 #define GL_ARM_rgba8 1
684 #endif /* GL_ARM_rgba8 */
686 #ifndef GL_ARM_shader_framebuffer_fetch
687 #define GL_ARM_shader_framebuffer_fetch 1
688 #define GL_FETCH_PER_SAMPLE_ARM 0x8F65
689 #define GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM 0x8F66
690 #endif /* GL_ARM_shader_framebuffer_fetch */
692 #ifndef GL_ARM_shader_framebuffer_fetch_depth_stencil
693 #define GL_ARM_shader_framebuffer_fetch_depth_stencil 1
694 #endif /* GL_ARM_shader_framebuffer_fetch_depth_stencil */
696 #ifndef GL_DMP_shader_binary
697 #define GL_DMP_shader_binary 1
698 #define GL_SHADER_BINARY_DMP 0x9250
699 #endif /* GL_DMP_shader_binary */
701 #ifndef GL_EXT_blend_minmax
702 #define GL_EXT_blend_minmax 1
703 #define GL_MIN_EXT 0x8007
704 #define GL_MAX_EXT 0x8008
705 #endif /* GL_EXT_blend_minmax */
707 #ifndef GL_EXT_color_buffer_half_float
708 #define GL_EXT_color_buffer_half_float 1
709 #define GL_RGBA16F_EXT 0x881A
710 #define GL_RGB16F_EXT 0x881B
711 #define GL_RG16F_EXT 0x822F
712 #define GL_R16F_EXT 0x822D
713 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
714 #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
715 #endif /* GL_EXT_color_buffer_half_float */
717 #ifndef GL_EXT_copy_image
718 #define GL_EXT_copy_image 1
719 typedef void (GL_APIENTRYP PFNGLCOPYIMAGESUBDATAEXTPROC
) (GLuint srcName
, GLenum srcTarget
, GLint srcLevel
, GLint srcX
, GLint srcY
, GLint srcZ
, GLuint dstName
, GLenum dstTarget
, GLint dstLevel
, GLint dstX
, GLint dstY
, GLint dstZ
, GLsizei srcWidth
, GLsizei srcHeight
, GLsizei srcDepth
);
720 #ifdef GL_GLEXT_PROTOTYPES
721 GL_APICALL
void GL_APIENTRY
glCopyImageSubDataEXT (GLuint srcName
, GLenum srcTarget
, GLint srcLevel
, GLint srcX
, GLint srcY
, GLint srcZ
, GLuint dstName
, GLenum dstTarget
, GLint dstLevel
, GLint dstX
, GLint dstY
, GLint dstZ
, GLsizei srcWidth
, GLsizei srcHeight
, GLsizei srcDepth
);
723 #endif /* GL_EXT_copy_image */
725 #ifndef GL_EXT_debug_label
726 #define GL_EXT_debug_label 1
727 #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
728 #define GL_PROGRAM_OBJECT_EXT 0x8B40
729 #define GL_SHADER_OBJECT_EXT 0x8B48
730 #define GL_BUFFER_OBJECT_EXT 0x9151
731 #define GL_QUERY_OBJECT_EXT 0x9153
732 #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
733 #define GL_TRANSFORM_FEEDBACK 0x8E22
734 typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC
) (GLenum type
, GLuint object
, GLsizei length
, const GLchar
*label
);
735 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC
) (GLenum type
, GLuint object
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
736 #ifdef GL_GLEXT_PROTOTYPES
737 GL_APICALL
void GL_APIENTRY
glLabelObjectEXT (GLenum type
, GLuint object
, GLsizei length
, const GLchar
*label
);
738 GL_APICALL
void GL_APIENTRY
glGetObjectLabelEXT (GLenum type
, GLuint object
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
740 #endif /* GL_EXT_debug_label */
742 #ifndef GL_EXT_debug_marker
743 #define GL_EXT_debug_marker 1
744 typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC
) (GLsizei length
, const GLchar
*marker
);
745 typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC
) (GLsizei length
, const GLchar
*marker
);
746 typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC
) (void);
747 #ifdef GL_GLEXT_PROTOTYPES
748 GL_APICALL
void GL_APIENTRY
glInsertEventMarkerEXT (GLsizei length
, const GLchar
*marker
);
749 GL_APICALL
void GL_APIENTRY
glPushGroupMarkerEXT (GLsizei length
, const GLchar
*marker
);
750 GL_APICALL
void GL_APIENTRY
glPopGroupMarkerEXT (void);
752 #endif /* GL_EXT_debug_marker */
754 #ifndef GL_EXT_discard_framebuffer
755 #define GL_EXT_discard_framebuffer 1
756 #define GL_COLOR_EXT 0x1800
757 #define GL_DEPTH_EXT 0x1801
758 #define GL_STENCIL_EXT 0x1802
759 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC
) (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
760 #ifdef GL_GLEXT_PROTOTYPES
761 GL_APICALL
void GL_APIENTRY
glDiscardFramebufferEXT (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
763 #endif /* GL_EXT_discard_framebuffer */
765 #ifndef GL_EXT_disjoint_timer_query
766 #define GL_EXT_disjoint_timer_query 1
767 #define GL_QUERY_COUNTER_BITS_EXT 0x8864
768 #define GL_CURRENT_QUERY_EXT 0x8865
769 #define GL_QUERY_RESULT_EXT 0x8866
770 #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
771 #define GL_TIME_ELAPSED_EXT 0x88BF
772 #define GL_TIMESTAMP_EXT 0x8E28
773 #define GL_GPU_DISJOINT_EXT 0x8FBB
774 typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC
) (GLsizei n
, GLuint
*ids
);
775 typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC
) (GLsizei n
, const GLuint
*ids
);
776 typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC
) (GLuint id
);
777 typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC
) (GLenum target
, GLuint id
);
778 typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC
) (GLenum target
);
779 typedef void (GL_APIENTRYP PFNGLQUERYCOUNTEREXTPROC
) (GLuint id
, GLenum target
);
780 typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
781 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTIVEXTPROC
) (GLuint id
, GLenum pname
, GLint
*params
);
782 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC
) (GLuint id
, GLenum pname
, GLuint
*params
);
783 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTI64VEXTPROC
) (GLuint id
, GLenum pname
, GLint64
*params
);
784 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUI64VEXTPROC
) (GLuint id
, GLenum pname
, GLuint64
*params
);
785 #ifdef GL_GLEXT_PROTOTYPES
786 GL_APICALL
void GL_APIENTRY
glGenQueriesEXT (GLsizei n
, GLuint
*ids
);
787 GL_APICALL
void GL_APIENTRY
glDeleteQueriesEXT (GLsizei n
, const GLuint
*ids
);
788 GL_APICALL GLboolean GL_APIENTRY
glIsQueryEXT (GLuint id
);
789 GL_APICALL
void GL_APIENTRY
glBeginQueryEXT (GLenum target
, GLuint id
);
790 GL_APICALL
void GL_APIENTRY
glEndQueryEXT (GLenum target
);
791 GL_APICALL
void GL_APIENTRY
glQueryCounterEXT (GLuint id
, GLenum target
);
792 GL_APICALL
void GL_APIENTRY
glGetQueryivEXT (GLenum target
, GLenum pname
, GLint
*params
);
793 GL_APICALL
void GL_APIENTRY
glGetQueryObjectivEXT (GLuint id
, GLenum pname
, GLint
*params
);
794 GL_APICALL
void GL_APIENTRY
glGetQueryObjectuivEXT (GLuint id
, GLenum pname
, GLuint
*params
);
795 GL_APICALL
void GL_APIENTRY
glGetQueryObjecti64vEXT (GLuint id
, GLenum pname
, GLint64
*params
);
796 GL_APICALL
void GL_APIENTRY
glGetQueryObjectui64vEXT (GLuint id
, GLenum pname
, GLuint64
*params
);
798 #endif /* GL_EXT_disjoint_timer_query */
800 #ifndef GL_EXT_draw_buffers
801 #define GL_EXT_draw_buffers 1
802 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
803 #define GL_MAX_DRAW_BUFFERS_EXT 0x8824
804 #define GL_DRAW_BUFFER0_EXT 0x8825
805 #define GL_DRAW_BUFFER1_EXT 0x8826
806 #define GL_DRAW_BUFFER2_EXT 0x8827
807 #define GL_DRAW_BUFFER3_EXT 0x8828
808 #define GL_DRAW_BUFFER4_EXT 0x8829
809 #define GL_DRAW_BUFFER5_EXT 0x882A
810 #define GL_DRAW_BUFFER6_EXT 0x882B
811 #define GL_DRAW_BUFFER7_EXT 0x882C
812 #define GL_DRAW_BUFFER8_EXT 0x882D
813 #define GL_DRAW_BUFFER9_EXT 0x882E
814 #define GL_DRAW_BUFFER10_EXT 0x882F
815 #define GL_DRAW_BUFFER11_EXT 0x8830
816 #define GL_DRAW_BUFFER12_EXT 0x8831
817 #define GL_DRAW_BUFFER13_EXT 0x8832
818 #define GL_DRAW_BUFFER14_EXT 0x8833
819 #define GL_DRAW_BUFFER15_EXT 0x8834
820 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
821 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
822 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
823 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
824 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
825 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
826 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
827 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
828 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
829 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
830 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
831 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
832 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
833 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED
834 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
835 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
836 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC
) (GLsizei n
, const GLenum
*bufs
);
837 #ifdef GL_GLEXT_PROTOTYPES
838 GL_APICALL
void GL_APIENTRY
glDrawBuffersEXT (GLsizei n
, const GLenum
*bufs
);
840 #endif /* GL_EXT_draw_buffers */
842 #ifndef GL_EXT_draw_buffers_indexed
843 #define GL_EXT_draw_buffers_indexed 1
844 #define GL_MIN 0x8007
845 #define GL_MAX 0x8008
846 typedef void (GL_APIENTRYP PFNGLENABLEIEXTPROC
) (GLenum target
, GLuint index
);
847 typedef void (GL_APIENTRYP PFNGLDISABLEIEXTPROC
) (GLenum target
, GLuint index
);
848 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONIEXTPROC
) (GLuint buf
, GLenum mode
);
849 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEIEXTPROC
) (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
850 typedef void (GL_APIENTRYP PFNGLBLENDFUNCIEXTPROC
) (GLuint buf
, GLenum src
, GLenum dst
);
851 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEIEXTPROC
) (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
852 typedef void (GL_APIENTRYP PFNGLCOLORMASKIEXTPROC
) (GLuint index
, GLboolean r
, GLboolean g
, GLboolean b
, GLboolean a
);
853 typedef GLboolean (GL_APIENTRYP PFNGLISENABLEDIEXTPROC
) (GLenum target
, GLuint index
);
854 #ifdef GL_GLEXT_PROTOTYPES
855 GL_APICALL
void GL_APIENTRY
glEnableiEXT (GLenum target
, GLuint index
);
856 GL_APICALL
void GL_APIENTRY
glDisableiEXT (GLenum target
, GLuint index
);
857 GL_APICALL
void GL_APIENTRY
glBlendEquationiEXT (GLuint buf
, GLenum mode
);
858 GL_APICALL
void GL_APIENTRY
glBlendEquationSeparateiEXT (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
859 GL_APICALL
void GL_APIENTRY
glBlendFunciEXT (GLuint buf
, GLenum src
, GLenum dst
);
860 GL_APICALL
void GL_APIENTRY
glBlendFuncSeparateiEXT (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
861 GL_APICALL
void GL_APIENTRY
glColorMaskiEXT (GLuint index
, GLboolean r
, GLboolean g
, GLboolean b
, GLboolean a
);
862 GL_APICALL GLboolean GL_APIENTRY
glIsEnablediEXT (GLenum target
, GLuint index
);
864 #endif /* GL_EXT_draw_buffers_indexed */
866 #ifndef GL_EXT_draw_instanced
867 #define GL_EXT_draw_instanced 1
868 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDEXTPROC
) (GLenum mode
, GLint start
, GLsizei count
, GLsizei primcount
);
869 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDEXTPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
870 #ifdef GL_GLEXT_PROTOTYPES
871 GL_APICALL
void GL_APIENTRY
glDrawArraysInstancedEXT (GLenum mode
, GLint start
, GLsizei count
, GLsizei primcount
);
872 GL_APICALL
void GL_APIENTRY
glDrawElementsInstancedEXT (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
874 #endif /* GL_EXT_draw_instanced */
876 #ifndef GL_EXT_geometry_shader
877 #define GL_EXT_geometry_shader 1
878 #define GL_GEOMETRY_SHADER_EXT 0x8DD9
879 #define GL_GEOMETRY_SHADER_BIT_EXT 0x00000004
880 #define GL_GEOMETRY_LINKED_VERTICES_OUT_EXT 0x8916
881 #define GL_GEOMETRY_LINKED_INPUT_TYPE_EXT 0x8917
882 #define GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT 0x8918
883 #define GL_GEOMETRY_SHADER_INVOCATIONS_EXT 0x887F
884 #define GL_LAYER_PROVOKING_VERTEX_EXT 0x825E
885 #define GL_LINES_ADJACENCY_EXT 0x000A
886 #define GL_LINE_STRIP_ADJACENCY_EXT 0x000B
887 #define GL_TRIANGLES_ADJACENCY_EXT 0x000C
888 #define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0x000D
889 #define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF
890 #define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT 0x8A2C
891 #define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8A32
892 #define GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT 0x9123
893 #define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT 0x9124
894 #define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0
895 #define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1
896 #define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT 0x8E5A
897 #define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29
898 #define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT 0x92CF
899 #define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT 0x92D5
900 #define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT 0x90CD
901 #define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT 0x90D7
902 #define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D
903 #define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E
904 #define GL_UNDEFINED_VERTEX_EXT 0x8260
905 #define GL_PRIMITIVES_GENERATED_EXT 0x8C87
906 #define GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT 0x9312
907 #define GL_MAX_FRAMEBUFFER_LAYERS_EXT 0x9317
908 #define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8
909 #define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7
910 #define GL_REFERENCED_BY_GEOMETRY_SHADER_EXT 0x9309
911 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTUREEXTPROC
) (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
);
912 #ifdef GL_GLEXT_PROTOTYPES
913 GL_APICALL
void GL_APIENTRY
glFramebufferTextureEXT (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
);
915 #endif /* GL_EXT_geometry_shader */
917 #ifndef GL_EXT_gpu_shader5
918 #define GL_EXT_gpu_shader5 1
919 #endif /* GL_EXT_gpu_shader5 */
921 #ifndef GL_EXT_instanced_arrays
922 #define GL_EXT_instanced_arrays 1
923 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT 0x88FE
924 typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISOREXTPROC
) (GLuint index
, GLuint divisor
);
925 #ifdef GL_GLEXT_PROTOTYPES
926 GL_APICALL
void GL_APIENTRY
glVertexAttribDivisorEXT (GLuint index
, GLuint divisor
);
928 #endif /* GL_EXT_instanced_arrays */
930 #ifndef GL_EXT_map_buffer_range
931 #define GL_EXT_map_buffer_range 1
932 #define GL_MAP_READ_BIT_EXT 0x0001
933 #define GL_MAP_WRITE_BIT_EXT 0x0002
934 #define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
935 #define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
936 #define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
937 #define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
938 typedef void *(GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
939 typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
);
940 #ifdef GL_GLEXT_PROTOTYPES
941 GL_APICALL
void *GL_APIENTRY
glMapBufferRangeEXT (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
942 GL_APICALL
void GL_APIENTRY
glFlushMappedBufferRangeEXT (GLenum target
, GLintptr offset
, GLsizeiptr length
);
944 #endif /* GL_EXT_map_buffer_range */
946 #ifndef GL_EXT_multi_draw_arrays
947 #define GL_EXT_multi_draw_arrays 1
948 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC
) (GLenum mode
, const GLint
*first
, const GLsizei
*count
, GLsizei primcount
);
949 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC
) (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei primcount
);
950 #ifdef GL_GLEXT_PROTOTYPES
951 GL_APICALL
void GL_APIENTRY
glMultiDrawArraysEXT (GLenum mode
, const GLint
*first
, const GLsizei
*count
, GLsizei primcount
);
952 GL_APICALL
void GL_APIENTRY
glMultiDrawElementsEXT (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei primcount
);
954 #endif /* GL_EXT_multi_draw_arrays */
956 #ifndef GL_EXT_multisampled_render_to_texture
957 #define GL_EXT_multisampled_render_to_texture 1
958 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
959 #define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
960 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
961 #define GL_MAX_SAMPLES_EXT 0x8D57
962 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
963 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
964 #ifdef GL_GLEXT_PROTOTYPES
965 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleEXT (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
966 GL_APICALL
void GL_APIENTRY
glFramebufferTexture2DMultisampleEXT (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
968 #endif /* GL_EXT_multisampled_render_to_texture */
970 #ifndef GL_EXT_multiview_draw_buffers
971 #define GL_EXT_multiview_draw_buffers 1
972 #define GL_COLOR_ATTACHMENT_EXT 0x90F0
973 #define GL_MULTIVIEW_EXT 0x90F1
974 #define GL_DRAW_BUFFER_EXT 0x0C01
975 #define GL_READ_BUFFER_EXT 0x0C02
976 #define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
977 typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC
) (GLenum src
, GLint index
);
978 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC
) (GLint n
, const GLenum
*location
, const GLint
*indices
);
979 typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC
) (GLenum target
, GLuint index
, GLint
*data
);
980 #ifdef GL_GLEXT_PROTOTYPES
981 GL_APICALL
void GL_APIENTRY
glReadBufferIndexedEXT (GLenum src
, GLint index
);
982 GL_APICALL
void GL_APIENTRY
glDrawBuffersIndexedEXT (GLint n
, const GLenum
*location
, const GLint
*indices
);
983 GL_APICALL
void GL_APIENTRY
glGetIntegeri_vEXT (GLenum target
, GLuint index
, GLint
*data
);
985 #endif /* GL_EXT_multiview_draw_buffers */
987 #ifndef GL_EXT_occlusion_query_boolean
988 #define GL_EXT_occlusion_query_boolean 1
989 #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
990 #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
991 #endif /* GL_EXT_occlusion_query_boolean */
993 #ifndef GL_EXT_primitive_bounding_box
994 #define GL_EXT_primitive_bounding_box 1
995 #define GL_PRIMITIVE_BOUNDING_BOX_EXT 0x92BE
996 typedef void (GL_APIENTRYP PFNGLPRIMITIVEBOUNDINGBOXEXTPROC
) (GLfloat minX
, GLfloat minY
, GLfloat minZ
, GLfloat minW
, GLfloat maxX
, GLfloat maxY
, GLfloat maxZ
, GLfloat maxW
);
997 #ifdef GL_GLEXT_PROTOTYPES
998 GL_APICALL
void GL_APIENTRY
glPrimitiveBoundingBoxEXT (GLfloat minX
, GLfloat minY
, GLfloat minZ
, GLfloat minW
, GLfloat maxX
, GLfloat maxY
, GLfloat maxZ
, GLfloat maxW
);
1000 #endif /* GL_EXT_primitive_bounding_box */
1002 #ifndef GL_EXT_pvrtc_sRGB
1003 #define GL_EXT_pvrtc_sRGB 1
1004 #define GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT 0x8A54
1005 #define GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT 0x8A55
1006 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT 0x8A56
1007 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT 0x8A57
1008 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG 0x93F0
1009 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG 0x93F1
1010 #endif /* GL_EXT_pvrtc_sRGB */
1012 #ifndef GL_EXT_read_format_bgra
1013 #define GL_EXT_read_format_bgra 1
1014 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
1015 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
1016 #endif /* GL_EXT_read_format_bgra */
1018 #ifndef GL_EXT_robustness
1019 #define GL_EXT_robustness 1
1020 #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
1021 #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
1022 #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
1023 #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
1024 #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
1025 #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
1026 #define GL_NO_RESET_NOTIFICATION_EXT 0x8261
1027 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC
) (void);
1028 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
1029 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
1030 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
1031 #ifdef GL_GLEXT_PROTOTYPES
1032 GL_APICALL GLenum GL_APIENTRY
glGetGraphicsResetStatusEXT (void);
1033 GL_APICALL
void GL_APIENTRY
glReadnPixelsEXT (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
1034 GL_APICALL
void GL_APIENTRY
glGetnUniformfvEXT (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
1035 GL_APICALL
void GL_APIENTRY
glGetnUniformivEXT (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
1037 #endif /* GL_EXT_robustness */
1040 #define GL_EXT_sRGB 1
1041 #define GL_SRGB_EXT 0x8C40
1042 #define GL_SRGB_ALPHA_EXT 0x8C42
1043 #define GL_SRGB8_ALPHA8_EXT 0x8C43
1044 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
1045 #endif /* GL_EXT_sRGB */
1047 #ifndef GL_EXT_sRGB_write_control
1048 #define GL_EXT_sRGB_write_control 1
1049 #define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9
1050 #endif /* GL_EXT_sRGB_write_control */
1052 #ifndef GL_EXT_separate_shader_objects
1053 #define GL_EXT_separate_shader_objects 1
1054 #define GL_ACTIVE_PROGRAM_EXT 0x8259
1055 #define GL_VERTEX_SHADER_BIT_EXT 0x00000001
1056 #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
1057 #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
1058 #define GL_PROGRAM_SEPARABLE_EXT 0x8258
1059 #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
1060 typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC
) (GLuint pipeline
, GLuint program
);
1061 typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1062 typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC
) (GLenum type
, GLsizei count
, const GLchar
**strings
);
1063 typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC
) (GLsizei n
, const GLuint
*pipelines
);
1064 typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC
) (GLsizei n
, GLuint
*pipelines
);
1065 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC
) (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
1066 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC
) (GLuint pipeline
, GLenum pname
, GLint
*params
);
1067 typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1068 typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC
) (GLuint program
, GLenum pname
, GLint value
);
1069 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC
) (GLuint program
, GLint location
, GLfloat v0
);
1070 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1071 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC
) (GLuint program
, GLint location
, GLint v0
);
1072 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1073 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
);
1074 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1075 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
);
1076 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1077 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
1078 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1079 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
);
1080 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1081 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
1082 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1083 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
1084 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1085 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1086 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1087 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1088 typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC
) (GLuint pipeline
, GLbitfield stages
, GLuint program
);
1089 typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1090 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1UIEXTPROC
) (GLuint program
, GLint location
, GLuint v0
);
1091 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2UIEXTPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
);
1092 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3UIEXTPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
1093 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4UIEXTPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
1094 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1UIVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1095 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2UIVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1096 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3UIVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1097 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4UIVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1098 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1099 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1100 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1101 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1102 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1103 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1104 #ifdef GL_GLEXT_PROTOTYPES
1105 GL_APICALL
void GL_APIENTRY
glActiveShaderProgramEXT (GLuint pipeline
, GLuint program
);
1106 GL_APICALL
void GL_APIENTRY
glBindProgramPipelineEXT (GLuint pipeline
);
1107 GL_APICALL GLuint GL_APIENTRY
glCreateShaderProgramvEXT (GLenum type
, GLsizei count
, const GLchar
**strings
);
1108 GL_APICALL
void GL_APIENTRY
glDeleteProgramPipelinesEXT (GLsizei n
, const GLuint
*pipelines
);
1109 GL_APICALL
void GL_APIENTRY
glGenProgramPipelinesEXT (GLsizei n
, GLuint
*pipelines
);
1110 GL_APICALL
void GL_APIENTRY
glGetProgramPipelineInfoLogEXT (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
1111 GL_APICALL
void GL_APIENTRY
glGetProgramPipelineivEXT (GLuint pipeline
, GLenum pname
, GLint
*params
);
1112 GL_APICALL GLboolean GL_APIENTRY
glIsProgramPipelineEXT (GLuint pipeline
);
1113 GL_APICALL
void GL_APIENTRY
glProgramParameteriEXT (GLuint program
, GLenum pname
, GLint value
);
1114 GL_APICALL
void GL_APIENTRY
glProgramUniform1fEXT (GLuint program
, GLint location
, GLfloat v0
);
1115 GL_APICALL
void GL_APIENTRY
glProgramUniform1fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1116 GL_APICALL
void GL_APIENTRY
glProgramUniform1iEXT (GLuint program
, GLint location
, GLint v0
);
1117 GL_APICALL
void GL_APIENTRY
glProgramUniform1ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1118 GL_APICALL
void GL_APIENTRY
glProgramUniform2fEXT (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
);
1119 GL_APICALL
void GL_APIENTRY
glProgramUniform2fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1120 GL_APICALL
void GL_APIENTRY
glProgramUniform2iEXT (GLuint program
, GLint location
, GLint v0
, GLint v1
);
1121 GL_APICALL
void GL_APIENTRY
glProgramUniform2ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1122 GL_APICALL
void GL_APIENTRY
glProgramUniform3fEXT (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
1123 GL_APICALL
void GL_APIENTRY
glProgramUniform3fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1124 GL_APICALL
void GL_APIENTRY
glProgramUniform3iEXT (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
);
1125 GL_APICALL
void GL_APIENTRY
glProgramUniform3ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1126 GL_APICALL
void GL_APIENTRY
glProgramUniform4fEXT (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
1127 GL_APICALL
void GL_APIENTRY
glProgramUniform4fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1128 GL_APICALL
void GL_APIENTRY
glProgramUniform4iEXT (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
1129 GL_APICALL
void GL_APIENTRY
glProgramUniform4ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1130 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix2fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1131 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix3fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1132 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix4fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1133 GL_APICALL
void GL_APIENTRY
glUseProgramStagesEXT (GLuint pipeline
, GLbitfield stages
, GLuint program
);
1134 GL_APICALL
void GL_APIENTRY
glValidateProgramPipelineEXT (GLuint pipeline
);
1135 GL_APICALL
void GL_APIENTRY
glProgramUniform1uiEXT (GLuint program
, GLint location
, GLuint v0
);
1136 GL_APICALL
void GL_APIENTRY
glProgramUniform2uiEXT (GLuint program
, GLint location
, GLuint v0
, GLuint v1
);
1137 GL_APICALL
void GL_APIENTRY
glProgramUniform3uiEXT (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
1138 GL_APICALL
void GL_APIENTRY
glProgramUniform4uiEXT (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
1139 GL_APICALL
void GL_APIENTRY
glProgramUniform1uivEXT (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1140 GL_APICALL
void GL_APIENTRY
glProgramUniform2uivEXT (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1141 GL_APICALL
void GL_APIENTRY
glProgramUniform3uivEXT (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1142 GL_APICALL
void GL_APIENTRY
glProgramUniform4uivEXT (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1143 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix2x3fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1144 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix3x2fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1145 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix2x4fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1146 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix4x2fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1147 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix3x4fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1148 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix4x3fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1150 #endif /* GL_EXT_separate_shader_objects */
1152 #ifndef GL_EXT_shader_framebuffer_fetch
1153 #define GL_EXT_shader_framebuffer_fetch 1
1154 #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
1155 #endif /* GL_EXT_shader_framebuffer_fetch */
1157 #ifndef GL_EXT_shader_implicit_conversions
1158 #define GL_EXT_shader_implicit_conversions 1
1159 #endif /* GL_EXT_shader_implicit_conversions */
1161 #ifndef GL_EXT_shader_integer_mix
1162 #define GL_EXT_shader_integer_mix 1
1163 #endif /* GL_EXT_shader_integer_mix */
1165 #ifndef GL_EXT_shader_io_blocks
1166 #define GL_EXT_shader_io_blocks 1
1167 #endif /* GL_EXT_shader_io_blocks */
1169 #ifndef GL_EXT_shader_pixel_local_storage
1170 #define GL_EXT_shader_pixel_local_storage 1
1171 #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT 0x8F63
1172 #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT 0x8F67
1173 #define GL_SHADER_PIXEL_LOCAL_STORAGE_EXT 0x8F64
1174 #endif /* GL_EXT_shader_pixel_local_storage */
1176 #ifndef GL_EXT_shader_texture_lod
1177 #define GL_EXT_shader_texture_lod 1
1178 #endif /* GL_EXT_shader_texture_lod */
1180 #ifndef GL_EXT_shadow_samplers
1181 #define GL_EXT_shadow_samplers 1
1182 #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
1183 #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
1184 #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
1185 #define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
1186 #endif /* GL_EXT_shadow_samplers */
1188 #ifndef GL_EXT_tessellation_shader
1189 #define GL_EXT_tessellation_shader 1
1190 #define GL_PATCHES_EXT 0x000E
1191 #define GL_PATCH_VERTICES_EXT 0x8E72
1192 #define GL_TESS_CONTROL_OUTPUT_VERTICES_EXT 0x8E75
1193 #define GL_TESS_GEN_MODE_EXT 0x8E76
1194 #define GL_TESS_GEN_SPACING_EXT 0x8E77
1195 #define GL_TESS_GEN_VERTEX_ORDER_EXT 0x8E78
1196 #define GL_TESS_GEN_POINT_MODE_EXT 0x8E79
1197 #define GL_ISOLINES_EXT 0x8E7A
1198 #define GL_QUADS_EXT 0x0007
1199 #define GL_FRACTIONAL_ODD_EXT 0x8E7B
1200 #define GL_FRACTIONAL_EVEN_EXT 0x8E7C
1201 #define GL_MAX_PATCH_VERTICES_EXT 0x8E7D
1202 #define GL_MAX_TESS_GEN_LEVEL_EXT 0x8E7E
1203 #define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E7F
1204 #define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E80
1205 #define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT 0x8E81
1206 #define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT 0x8E82
1207 #define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT 0x8E83
1208 #define GL_MAX_TESS_PATCH_COMPONENTS_EXT 0x8E84
1209 #define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT 0x8E85
1210 #define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT 0x8E86
1211 #define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT 0x8E89
1212 #define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT 0x8E8A
1213 #define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT 0x886C
1214 #define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT 0x886D
1215 #define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E1E
1216 #define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E1F
1217 #define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT 0x92CD
1218 #define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT 0x92CE
1219 #define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT 0x92D3
1220 #define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT 0x92D4
1221 #define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT 0x90CB
1222 #define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT 0x90CC
1223 #define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT 0x90D8
1224 #define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT 0x90D9
1225 #define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221
1226 #define GL_IS_PER_PATCH_EXT 0x92E7
1227 #define GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT 0x9307
1228 #define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT 0x9308
1229 #define GL_TESS_CONTROL_SHADER_EXT 0x8E88
1230 #define GL_TESS_EVALUATION_SHADER_EXT 0x8E87
1231 #define GL_TESS_CONTROL_SHADER_BIT_EXT 0x00000008
1232 #define GL_TESS_EVALUATION_SHADER_BIT_EXT 0x00000010
1233 typedef void (GL_APIENTRYP PFNGLPATCHPARAMETERIEXTPROC
) (GLenum pname
, GLint value
);
1234 #ifdef GL_GLEXT_PROTOTYPES
1235 GL_APICALL
void GL_APIENTRY
glPatchParameteriEXT (GLenum pname
, GLint value
);
1237 #endif /* GL_EXT_tessellation_shader */
1239 #ifndef GL_EXT_texture_border_clamp
1240 #define GL_EXT_texture_border_clamp 1
1241 #define GL_TEXTURE_BORDER_COLOR_EXT 0x1004
1242 #define GL_CLAMP_TO_BORDER_EXT 0x812D
1243 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIIVEXTPROC
) (GLenum target
, GLenum pname
, const GLint
*params
);
1244 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIUIVEXTPROC
) (GLenum target
, GLenum pname
, const GLuint
*params
);
1245 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIIVEXTPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
1246 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIUIVEXTPROC
) (GLenum target
, GLenum pname
, GLuint
*params
);
1247 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIIVEXTPROC
) (GLuint sampler
, GLenum pname
, const GLint
*param
);
1248 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIUIVEXTPROC
) (GLuint sampler
, GLenum pname
, const GLuint
*param
);
1249 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIIVEXTPROC
) (GLuint sampler
, GLenum pname
, GLint
*params
);
1250 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVEXTPROC
) (GLuint sampler
, GLenum pname
, GLuint
*params
);
1251 #ifdef GL_GLEXT_PROTOTYPES
1252 GL_APICALL
void GL_APIENTRY
glTexParameterIivEXT (GLenum target
, GLenum pname
, const GLint
*params
);
1253 GL_APICALL
void GL_APIENTRY
glTexParameterIuivEXT (GLenum target
, GLenum pname
, const GLuint
*params
);
1254 GL_APICALL
void GL_APIENTRY
glGetTexParameterIivEXT (GLenum target
, GLenum pname
, GLint
*params
);
1255 GL_APICALL
void GL_APIENTRY
glGetTexParameterIuivEXT (GLenum target
, GLenum pname
, GLuint
*params
);
1256 GL_APICALL
void GL_APIENTRY
glSamplerParameterIivEXT (GLuint sampler
, GLenum pname
, const GLint
*param
);
1257 GL_APICALL
void GL_APIENTRY
glSamplerParameterIuivEXT (GLuint sampler
, GLenum pname
, const GLuint
*param
);
1258 GL_APICALL
void GL_APIENTRY
glGetSamplerParameterIivEXT (GLuint sampler
, GLenum pname
, GLint
*params
);
1259 GL_APICALL
void GL_APIENTRY
glGetSamplerParameterIuivEXT (GLuint sampler
, GLenum pname
, GLuint
*params
);
1261 #endif /* GL_EXT_texture_border_clamp */
1263 #ifndef GL_EXT_texture_buffer
1264 #define GL_EXT_texture_buffer 1
1265 #define GL_TEXTURE_BUFFER_EXT 0x8C2A
1266 #define GL_TEXTURE_BUFFER_BINDING_EXT 0x8C2A
1267 #define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B
1268 #define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C
1269 #define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D
1270 #define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT 0x919F
1271 #define GL_SAMPLER_BUFFER_EXT 0x8DC2
1272 #define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0
1273 #define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8
1274 #define GL_IMAGE_BUFFER_EXT 0x9051
1275 #define GL_INT_IMAGE_BUFFER_EXT 0x905C
1276 #define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067
1277 #define GL_TEXTURE_BUFFER_OFFSET_EXT 0x919D
1278 #define GL_TEXTURE_BUFFER_SIZE_EXT 0x919E
1279 typedef void (GL_APIENTRYP PFNGLTEXBUFFEREXTPROC
) (GLenum target
, GLenum internalformat
, GLuint buffer
);
1280 typedef void (GL_APIENTRYP PFNGLTEXBUFFERRANGEEXTPROC
) (GLenum target
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
1281 #ifdef GL_GLEXT_PROTOTYPES
1282 GL_APICALL
void GL_APIENTRY
glTexBufferEXT (GLenum target
, GLenum internalformat
, GLuint buffer
);
1283 GL_APICALL
void GL_APIENTRY
glTexBufferRangeEXT (GLenum target
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
1285 #endif /* GL_EXT_texture_buffer */
1287 #ifndef GL_EXT_texture_compression_dxt1
1288 #define GL_EXT_texture_compression_dxt1 1
1289 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
1290 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
1291 #endif /* GL_EXT_texture_compression_dxt1 */
1293 #ifndef GL_EXT_texture_compression_s3tc
1294 #define GL_EXT_texture_compression_s3tc 1
1295 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
1296 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
1297 #endif /* GL_EXT_texture_compression_s3tc */
1299 #ifndef GL_EXT_texture_cube_map_array
1300 #define GL_EXT_texture_cube_map_array 1
1301 #define GL_TEXTURE_CUBE_MAP_ARRAY_EXT 0x9009
1302 #define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT 0x900A
1303 #define GL_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900C
1304 #define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT 0x900D
1305 #define GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900E
1306 #define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900F
1307 #define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054
1308 #define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F
1309 #define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A
1310 #endif /* GL_EXT_texture_cube_map_array */
1312 #ifndef GL_EXT_texture_filter_anisotropic
1313 #define GL_EXT_texture_filter_anisotropic 1
1314 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
1315 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
1316 #endif /* GL_EXT_texture_filter_anisotropic */
1318 #ifndef GL_EXT_texture_format_BGRA8888
1319 #define GL_EXT_texture_format_BGRA8888 1
1320 #endif /* GL_EXT_texture_format_BGRA8888 */
1322 #ifndef GL_EXT_texture_rg
1323 #define GL_EXT_texture_rg 1
1324 #define GL_RED_EXT 0x1903
1325 #define GL_RG_EXT 0x8227
1326 #define GL_R8_EXT 0x8229
1327 #define GL_RG8_EXT 0x822B
1328 #endif /* GL_EXT_texture_rg */
1330 #ifndef GL_EXT_texture_sRGB_decode
1331 #define GL_EXT_texture_sRGB_decode 1
1332 #define GL_TEXTURE_SRGB_DECODE_EXT 0x8A48
1333 #define GL_DECODE_EXT 0x8A49
1334 #define GL_SKIP_DECODE_EXT 0x8A4A
1335 #endif /* GL_EXT_texture_sRGB_decode */
1337 #ifndef GL_EXT_texture_storage
1338 #define GL_EXT_texture_storage 1
1339 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
1340 #define GL_ALPHA8_EXT 0x803C
1341 #define GL_LUMINANCE8_EXT 0x8040
1342 #define GL_LUMINANCE8_ALPHA8_EXT 0x8045
1343 #define GL_RGBA32F_EXT 0x8814
1344 #define GL_RGB32F_EXT 0x8815
1345 #define GL_ALPHA32F_EXT 0x8816
1346 #define GL_LUMINANCE32F_EXT 0x8818
1347 #define GL_LUMINANCE_ALPHA32F_EXT 0x8819
1348 #define GL_ALPHA16F_EXT 0x881C
1349 #define GL_LUMINANCE16F_EXT 0x881E
1350 #define GL_LUMINANCE_ALPHA16F_EXT 0x881F
1351 #define GL_R32F_EXT 0x822E
1352 #define GL_RG32F_EXT 0x8230
1353 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1354 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1355 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1356 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1357 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1358 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1359 #ifdef GL_GLEXT_PROTOTYPES
1360 GL_APICALL
void GL_APIENTRY
glTexStorage1DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1361 GL_APICALL
void GL_APIENTRY
glTexStorage2DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1362 GL_APICALL
void GL_APIENTRY
glTexStorage3DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1363 GL_APICALL
void GL_APIENTRY
glTextureStorage1DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1364 GL_APICALL
void GL_APIENTRY
glTextureStorage2DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1365 GL_APICALL
void GL_APIENTRY
glTextureStorage3DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1367 #endif /* GL_EXT_texture_storage */
1369 #ifndef GL_EXT_texture_type_2_10_10_10_REV
1370 #define GL_EXT_texture_type_2_10_10_10_REV 1
1371 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
1372 #endif /* GL_EXT_texture_type_2_10_10_10_REV */
1374 #ifndef GL_EXT_texture_view
1375 #define GL_EXT_texture_view 1
1376 #define GL_TEXTURE_VIEW_MIN_LEVEL_EXT 0x82DB
1377 #define GL_TEXTURE_VIEW_NUM_LEVELS_EXT 0x82DC
1378 #define GL_TEXTURE_VIEW_MIN_LAYER_EXT 0x82DD
1379 #define GL_TEXTURE_VIEW_NUM_LAYERS_EXT 0x82DE
1380 #define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF
1381 typedef void (GL_APIENTRYP PFNGLTEXTUREVIEWEXTPROC
) (GLuint texture
, GLenum target
, GLuint origtexture
, GLenum internalformat
, GLuint minlevel
, GLuint numlevels
, GLuint minlayer
, GLuint numlayers
);
1382 #ifdef GL_GLEXT_PROTOTYPES
1383 GL_APICALL
void GL_APIENTRY
glTextureViewEXT (GLuint texture
, GLenum target
, GLuint origtexture
, GLenum internalformat
, GLuint minlevel
, GLuint numlevels
, GLuint minlayer
, GLuint numlayers
);
1385 #endif /* GL_EXT_texture_view */
1387 #ifndef GL_EXT_unpack_subimage
1388 #define GL_EXT_unpack_subimage 1
1389 #define GL_UNPACK_ROW_LENGTH_EXT 0x0CF2
1390 #define GL_UNPACK_SKIP_ROWS_EXT 0x0CF3
1391 #define GL_UNPACK_SKIP_PIXELS_EXT 0x0CF4
1392 #endif /* GL_EXT_unpack_subimage */
1394 #ifndef GL_FJ_shader_binary_GCCSO
1395 #define GL_FJ_shader_binary_GCCSO 1
1396 #define GL_GCCSO_SHADER_BINARY_FJ 0x9260
1397 #endif /* GL_FJ_shader_binary_GCCSO */
1399 #ifndef GL_IMG_multisampled_render_to_texture
1400 #define GL_IMG_multisampled_render_to_texture 1
1401 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
1402 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
1403 #define GL_MAX_SAMPLES_IMG 0x9135
1404 #define GL_TEXTURE_SAMPLES_IMG 0x9136
1405 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1406 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
1407 #ifdef GL_GLEXT_PROTOTYPES
1408 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleIMG (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1409 GL_APICALL
void GL_APIENTRY
glFramebufferTexture2DMultisampleIMG (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
1411 #endif /* GL_IMG_multisampled_render_to_texture */
1413 #ifndef GL_IMG_program_binary
1414 #define GL_IMG_program_binary 1
1415 #define GL_SGX_PROGRAM_BINARY_IMG 0x9130
1416 #endif /* GL_IMG_program_binary */
1418 #ifndef GL_IMG_read_format
1419 #define GL_IMG_read_format 1
1420 #define GL_BGRA_IMG 0x80E1
1421 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
1422 #endif /* GL_IMG_read_format */
1424 #ifndef GL_IMG_shader_binary
1425 #define GL_IMG_shader_binary 1
1426 #define GL_SGX_BINARY_IMG 0x8C0A
1427 #endif /* GL_IMG_shader_binary */
1429 #ifndef GL_IMG_texture_compression_pvrtc
1430 #define GL_IMG_texture_compression_pvrtc 1
1431 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
1432 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
1433 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
1434 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
1435 #endif /* GL_IMG_texture_compression_pvrtc */
1437 #ifndef GL_IMG_texture_compression_pvrtc2
1438 #define GL_IMG_texture_compression_pvrtc2 1
1439 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG 0x9137
1440 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG 0x9138
1441 #endif /* GL_IMG_texture_compression_pvrtc2 */
1443 #ifndef GL_INTEL_performance_query
1444 #define GL_INTEL_performance_query 1
1445 #define GL_PERFQUERY_SINGLE_CONTEXT_INTEL 0x00000000
1446 #define GL_PERFQUERY_GLOBAL_CONTEXT_INTEL 0x00000001
1447 #define GL_PERFQUERY_WAIT_INTEL 0x83FB
1448 #define GL_PERFQUERY_FLUSH_INTEL 0x83FA
1449 #define GL_PERFQUERY_DONOT_FLUSH_INTEL 0x83F9
1450 #define GL_PERFQUERY_COUNTER_EVENT_INTEL 0x94F0
1451 #define GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL 0x94F1
1452 #define GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL 0x94F2
1453 #define GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL 0x94F3
1454 #define GL_PERFQUERY_COUNTER_RAW_INTEL 0x94F4
1455 #define GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL 0x94F5
1456 #define GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL 0x94F8
1457 #define GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL 0x94F9
1458 #define GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL 0x94FA
1459 #define GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL 0x94FB
1460 #define GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL 0x94FC
1461 #define GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL 0x94FD
1462 #define GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL 0x94FE
1463 #define GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL 0x94FF
1464 #define GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL 0x9500
1465 typedef void (GL_APIENTRYP PFNGLBEGINPERFQUERYINTELPROC
) (GLuint queryHandle
);
1466 typedef void (GL_APIENTRYP PFNGLCREATEPERFQUERYINTELPROC
) (GLuint queryId
, GLuint
*queryHandle
);
1467 typedef void (GL_APIENTRYP PFNGLDELETEPERFQUERYINTELPROC
) (GLuint queryHandle
);
1468 typedef void (GL_APIENTRYP PFNGLENDPERFQUERYINTELPROC
) (GLuint queryHandle
);
1469 typedef void (GL_APIENTRYP PFNGLGETFIRSTPERFQUERYIDINTELPROC
) (GLuint
*queryId
);
1470 typedef void (GL_APIENTRYP PFNGLGETNEXTPERFQUERYIDINTELPROC
) (GLuint queryId
, GLuint
*nextQueryId
);
1471 typedef void (GL_APIENTRYP PFNGLGETPERFCOUNTERINFOINTELPROC
) (GLuint queryId
, GLuint counterId
, GLuint counterNameLength
, GLchar
*counterName
, GLuint counterDescLength
, GLchar
*counterDesc
, GLuint
*counterOffset
, GLuint
*counterDataSize
, GLuint
*counterTypeEnum
, GLuint
*counterDataTypeEnum
, GLuint64
*rawCounterMaxValue
);
1472 typedef void (GL_APIENTRYP PFNGLGETPERFQUERYDATAINTELPROC
) (GLuint queryHandle
, GLuint flags
, GLsizei dataSize
, GLvoid
*data
, GLuint
*bytesWritten
);
1473 typedef void (GL_APIENTRYP PFNGLGETPERFQUERYIDBYNAMEINTELPROC
) (GLchar
*queryName
, GLuint
*queryId
);
1474 typedef void (GL_APIENTRYP PFNGLGETPERFQUERYINFOINTELPROC
) (GLuint queryId
, GLuint queryNameLength
, GLchar
*queryName
, GLuint
*dataSize
, GLuint
*noCounters
, GLuint
*noInstances
, GLuint
*capsMask
);
1475 #ifdef GL_GLEXT_PROTOTYPES
1476 GL_APICALL
void GL_APIENTRY
glBeginPerfQueryINTEL (GLuint queryHandle
);
1477 GL_APICALL
void GL_APIENTRY
glCreatePerfQueryINTEL (GLuint queryId
, GLuint
*queryHandle
);
1478 GL_APICALL
void GL_APIENTRY
glDeletePerfQueryINTEL (GLuint queryHandle
);
1479 GL_APICALL
void GL_APIENTRY
glEndPerfQueryINTEL (GLuint queryHandle
);
1480 GL_APICALL
void GL_APIENTRY
glGetFirstPerfQueryIdINTEL (GLuint
*queryId
);
1481 GL_APICALL
void GL_APIENTRY
glGetNextPerfQueryIdINTEL (GLuint queryId
, GLuint
*nextQueryId
);
1482 GL_APICALL
void GL_APIENTRY
glGetPerfCounterInfoINTEL (GLuint queryId
, GLuint counterId
, GLuint counterNameLength
, GLchar
*counterName
, GLuint counterDescLength
, GLchar
*counterDesc
, GLuint
*counterOffset
, GLuint
*counterDataSize
, GLuint
*counterTypeEnum
, GLuint
*counterDataTypeEnum
, GLuint64
*rawCounterMaxValue
);
1483 GL_APICALL
void GL_APIENTRY
glGetPerfQueryDataINTEL (GLuint queryHandle
, GLuint flags
, GLsizei dataSize
, GLvoid
*data
, GLuint
*bytesWritten
);
1484 GL_APICALL
void GL_APIENTRY
glGetPerfQueryIdByNameINTEL (GLchar
*queryName
, GLuint
*queryId
);
1485 GL_APICALL
void GL_APIENTRY
glGetPerfQueryInfoINTEL (GLuint queryId
, GLuint queryNameLength
, GLchar
*queryName
, GLuint
*dataSize
, GLuint
*noCounters
, GLuint
*noInstances
, GLuint
*capsMask
);
1487 #endif /* GL_INTEL_performance_query */
1489 #ifndef GL_NV_blend_equation_advanced
1490 #define GL_NV_blend_equation_advanced 1
1491 #define GL_BLEND_OVERLAP_NV 0x9281
1492 #define GL_BLEND_PREMULTIPLIED_SRC_NV 0x9280
1493 #define GL_BLUE_NV 0x1905
1494 #define GL_COLORBURN_NV 0x929A
1495 #define GL_COLORDODGE_NV 0x9299
1496 #define GL_CONJOINT_NV 0x9284
1497 #define GL_CONTRAST_NV 0x92A1
1498 #define GL_DARKEN_NV 0x9297
1499 #define GL_DIFFERENCE_NV 0x929E
1500 #define GL_DISJOINT_NV 0x9283
1501 #define GL_DST_ATOP_NV 0x928F
1502 #define GL_DST_IN_NV 0x928B
1503 #define GL_DST_NV 0x9287
1504 #define GL_DST_OUT_NV 0x928D
1505 #define GL_DST_OVER_NV 0x9289
1506 #define GL_EXCLUSION_NV 0x92A0
1507 #define GL_GREEN_NV 0x1904
1508 #define GL_HARDLIGHT_NV 0x929B
1509 #define GL_HARDMIX_NV 0x92A9
1510 #define GL_HSL_COLOR_NV 0x92AF
1511 #define GL_HSL_HUE_NV 0x92AD
1512 #define GL_HSL_LUMINOSITY_NV 0x92B0
1513 #define GL_HSL_SATURATION_NV 0x92AE
1514 #define GL_INVERT_OVG_NV 0x92B4
1515 #define GL_INVERT_RGB_NV 0x92A3
1516 #define GL_LIGHTEN_NV 0x9298
1517 #define GL_LINEARBURN_NV 0x92A5
1518 #define GL_LINEARDODGE_NV 0x92A4
1519 #define GL_LINEARLIGHT_NV 0x92A7
1520 #define GL_MINUS_CLAMPED_NV 0x92B3
1521 #define GL_MINUS_NV 0x929F
1522 #define GL_MULTIPLY_NV 0x9294
1523 #define GL_OVERLAY_NV 0x9296
1524 #define GL_PINLIGHT_NV 0x92A8
1525 #define GL_PLUS_CLAMPED_ALPHA_NV 0x92B2
1526 #define GL_PLUS_CLAMPED_NV 0x92B1
1527 #define GL_PLUS_DARKER_NV 0x9292
1528 #define GL_PLUS_NV 0x9291
1529 #define GL_RED_NV 0x1903
1530 #define GL_SCREEN_NV 0x9295
1531 #define GL_SOFTLIGHT_NV 0x929C
1532 #define GL_SRC_ATOP_NV 0x928E
1533 #define GL_SRC_IN_NV 0x928A
1534 #define GL_SRC_NV 0x9286
1535 #define GL_SRC_OUT_NV 0x928C
1536 #define GL_SRC_OVER_NV 0x9288
1537 #define GL_UNCORRELATED_NV 0x9282
1538 #define GL_VIVIDLIGHT_NV 0x92A6
1539 #define GL_XOR_NV 0x1506
1540 typedef void (GL_APIENTRYP PFNGLBLENDPARAMETERINVPROC
) (GLenum pname
, GLint value
);
1541 typedef void (GL_APIENTRYP PFNGLBLENDBARRIERNVPROC
) (void);
1542 #ifdef GL_GLEXT_PROTOTYPES
1543 GL_APICALL
void GL_APIENTRY
glBlendParameteriNV (GLenum pname
, GLint value
);
1544 GL_APICALL
void GL_APIENTRY
glBlendBarrierNV (void);
1546 #endif /* GL_NV_blend_equation_advanced */
1548 #ifndef GL_NV_blend_equation_advanced_coherent
1549 #define GL_NV_blend_equation_advanced_coherent 1
1550 #define GL_BLEND_ADVANCED_COHERENT_NV 0x9285
1551 #endif /* GL_NV_blend_equation_advanced_coherent */
1553 #ifndef GL_NV_copy_buffer
1554 #define GL_NV_copy_buffer 1
1555 #define GL_COPY_READ_BUFFER_NV 0x8F36
1556 #define GL_COPY_WRITE_BUFFER_NV 0x8F37
1557 typedef void (GL_APIENTRYP PFNGLCOPYBUFFERSUBDATANVPROC
) (GLenum readTarget
, GLenum writeTarget
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
1558 #ifdef GL_GLEXT_PROTOTYPES
1559 GL_APICALL
void GL_APIENTRY
glCopyBufferSubDataNV (GLenum readTarget
, GLenum writeTarget
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
1561 #endif /* GL_NV_copy_buffer */
1563 #ifndef GL_NV_coverage_sample
1564 #define GL_NV_coverage_sample 1
1565 #define GL_COVERAGE_COMPONENT_NV 0x8ED0
1566 #define GL_COVERAGE_COMPONENT4_NV 0x8ED1
1567 #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
1568 #define GL_COVERAGE_BUFFERS_NV 0x8ED3
1569 #define GL_COVERAGE_SAMPLES_NV 0x8ED4
1570 #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
1571 #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
1572 #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
1573 #define GL_COVERAGE_BUFFER_BIT_NV 0x00008000
1574 typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC
) (GLboolean mask
);
1575 typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC
) (GLenum operation
);
1576 #ifdef GL_GLEXT_PROTOTYPES
1577 GL_APICALL
void GL_APIENTRY
glCoverageMaskNV (GLboolean mask
);
1578 GL_APICALL
void GL_APIENTRY
glCoverageOperationNV (GLenum operation
);
1580 #endif /* GL_NV_coverage_sample */
1582 #ifndef GL_NV_depth_nonlinear
1583 #define GL_NV_depth_nonlinear 1
1584 #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
1585 #endif /* GL_NV_depth_nonlinear */
1587 #ifndef GL_NV_draw_buffers
1588 #define GL_NV_draw_buffers 1
1589 #define GL_MAX_DRAW_BUFFERS_NV 0x8824
1590 #define GL_DRAW_BUFFER0_NV 0x8825
1591 #define GL_DRAW_BUFFER1_NV 0x8826
1592 #define GL_DRAW_BUFFER2_NV 0x8827
1593 #define GL_DRAW_BUFFER3_NV 0x8828
1594 #define GL_DRAW_BUFFER4_NV 0x8829
1595 #define GL_DRAW_BUFFER5_NV 0x882A
1596 #define GL_DRAW_BUFFER6_NV 0x882B
1597 #define GL_DRAW_BUFFER7_NV 0x882C
1598 #define GL_DRAW_BUFFER8_NV 0x882D
1599 #define GL_DRAW_BUFFER9_NV 0x882E
1600 #define GL_DRAW_BUFFER10_NV 0x882F
1601 #define GL_DRAW_BUFFER11_NV 0x8830
1602 #define GL_DRAW_BUFFER12_NV 0x8831
1603 #define GL_DRAW_BUFFER13_NV 0x8832
1604 #define GL_DRAW_BUFFER14_NV 0x8833
1605 #define GL_DRAW_BUFFER15_NV 0x8834
1606 #define GL_COLOR_ATTACHMENT0_NV 0x8CE0
1607 #define GL_COLOR_ATTACHMENT1_NV 0x8CE1
1608 #define GL_COLOR_ATTACHMENT2_NV 0x8CE2
1609 #define GL_COLOR_ATTACHMENT3_NV 0x8CE3
1610 #define GL_COLOR_ATTACHMENT4_NV 0x8CE4
1611 #define GL_COLOR_ATTACHMENT5_NV 0x8CE5
1612 #define GL_COLOR_ATTACHMENT6_NV 0x8CE6
1613 #define GL_COLOR_ATTACHMENT7_NV 0x8CE7
1614 #define GL_COLOR_ATTACHMENT8_NV 0x8CE8
1615 #define GL_COLOR_ATTACHMENT9_NV 0x8CE9
1616 #define GL_COLOR_ATTACHMENT10_NV 0x8CEA
1617 #define GL_COLOR_ATTACHMENT11_NV 0x8CEB
1618 #define GL_COLOR_ATTACHMENT12_NV 0x8CEC
1619 #define GL_COLOR_ATTACHMENT13_NV 0x8CED
1620 #define GL_COLOR_ATTACHMENT14_NV 0x8CEE
1621 #define GL_COLOR_ATTACHMENT15_NV 0x8CEF
1622 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC
) (GLsizei n
, const GLenum
*bufs
);
1623 #ifdef GL_GLEXT_PROTOTYPES
1624 GL_APICALL
void GL_APIENTRY
glDrawBuffersNV (GLsizei n
, const GLenum
*bufs
);
1626 #endif /* GL_NV_draw_buffers */
1628 #ifndef GL_NV_draw_instanced
1629 #define GL_NV_draw_instanced 1
1630 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDNVPROC
) (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
1631 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDNVPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
1632 #ifdef GL_GLEXT_PROTOTYPES
1633 GL_APICALL
void GL_APIENTRY
glDrawArraysInstancedNV (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
1634 GL_APICALL
void GL_APIENTRY
glDrawElementsInstancedNV (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
1636 #endif /* GL_NV_draw_instanced */
1638 #ifndef GL_NV_explicit_attrib_location
1639 #define GL_NV_explicit_attrib_location 1
1640 #endif /* GL_NV_explicit_attrib_location */
1642 #ifndef GL_NV_fbo_color_attachments
1643 #define GL_NV_fbo_color_attachments 1
1644 #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
1645 #endif /* GL_NV_fbo_color_attachments */
1648 #define GL_NV_fence 1
1649 #define GL_ALL_COMPLETED_NV 0x84F2
1650 #define GL_FENCE_STATUS_NV 0x84F3
1651 #define GL_FENCE_CONDITION_NV 0x84F4
1652 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC
) (GLsizei n
, const GLuint
*fences
);
1653 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC
) (GLsizei n
, GLuint
*fences
);
1654 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC
) (GLuint fence
);
1655 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC
) (GLuint fence
);
1656 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC
) (GLuint fence
, GLenum pname
, GLint
*params
);
1657 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC
) (GLuint fence
);
1658 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC
) (GLuint fence
, GLenum condition
);
1659 #ifdef GL_GLEXT_PROTOTYPES
1660 GL_APICALL
void GL_APIENTRY
glDeleteFencesNV (GLsizei n
, const GLuint
*fences
);
1661 GL_APICALL
void GL_APIENTRY
glGenFencesNV (GLsizei n
, GLuint
*fences
);
1662 GL_APICALL GLboolean GL_APIENTRY
glIsFenceNV (GLuint fence
);
1663 GL_APICALL GLboolean GL_APIENTRY
glTestFenceNV (GLuint fence
);
1664 GL_APICALL
void GL_APIENTRY
glGetFenceivNV (GLuint fence
, GLenum pname
, GLint
*params
);
1665 GL_APICALL
void GL_APIENTRY
glFinishFenceNV (GLuint fence
);
1666 GL_APICALL
void GL_APIENTRY
glSetFenceNV (GLuint fence
, GLenum condition
);
1668 #endif /* GL_NV_fence */
1670 #ifndef GL_NV_framebuffer_blit
1671 #define GL_NV_framebuffer_blit 1
1672 #define GL_READ_FRAMEBUFFER_NV 0x8CA8
1673 #define GL_DRAW_FRAMEBUFFER_NV 0x8CA9
1674 #define GL_DRAW_FRAMEBUFFER_BINDING_NV 0x8CA6
1675 #define GL_READ_FRAMEBUFFER_BINDING_NV 0x8CAA
1676 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERNVPROC
) (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1677 #ifdef GL_GLEXT_PROTOTYPES
1678 GL_APICALL
void GL_APIENTRY
glBlitFramebufferNV (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1680 #endif /* GL_NV_framebuffer_blit */
1682 #ifndef GL_NV_framebuffer_multisample
1683 #define GL_NV_framebuffer_multisample 1
1684 #define GL_RENDERBUFFER_SAMPLES_NV 0x8CAB
1685 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV 0x8D56
1686 #define GL_MAX_SAMPLES_NV 0x8D57
1687 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1688 #ifdef GL_GLEXT_PROTOTYPES
1689 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleNV (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1691 #endif /* GL_NV_framebuffer_multisample */
1693 #ifndef GL_NV_generate_mipmap_sRGB
1694 #define GL_NV_generate_mipmap_sRGB 1
1695 #endif /* GL_NV_generate_mipmap_sRGB */
1697 #ifndef GL_NV_instanced_arrays
1698 #define GL_NV_instanced_arrays 1
1699 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV 0x88FE
1700 typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISORNVPROC
) (GLuint index
, GLuint divisor
);
1701 #ifdef GL_GLEXT_PROTOTYPES
1702 GL_APICALL
void GL_APIENTRY
glVertexAttribDivisorNV (GLuint index
, GLuint divisor
);
1704 #endif /* GL_NV_instanced_arrays */
1706 #ifndef GL_NV_non_square_matrices
1707 #define GL_NV_non_square_matrices 1
1708 #define GL_FLOAT_MAT2x3_NV 0x8B65
1709 #define GL_FLOAT_MAT2x4_NV 0x8B66
1710 #define GL_FLOAT_MAT3x2_NV 0x8B67
1711 #define GL_FLOAT_MAT3x4_NV 0x8B68
1712 #define GL_FLOAT_MAT4x2_NV 0x8B69
1713 #define GL_FLOAT_MAT4x3_NV 0x8B6A
1714 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX2X3FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1715 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX3X2FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1716 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX2X4FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1717 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX4X2FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1718 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX3X4FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1719 typedef void (GL_APIENTRYP PFNGLUNIFORMMATRIX4X3FVNVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1720 #ifdef GL_GLEXT_PROTOTYPES
1721 GL_APICALL
void GL_APIENTRY
glUniformMatrix2x3fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1722 GL_APICALL
void GL_APIENTRY
glUniformMatrix3x2fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1723 GL_APICALL
void GL_APIENTRY
glUniformMatrix2x4fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1724 GL_APICALL
void GL_APIENTRY
glUniformMatrix4x2fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1725 GL_APICALL
void GL_APIENTRY
glUniformMatrix3x4fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1726 GL_APICALL
void GL_APIENTRY
glUniformMatrix4x3fvNV (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1728 #endif /* GL_NV_non_square_matrices */
1730 #ifndef GL_NV_read_buffer
1731 #define GL_NV_read_buffer 1
1732 #define GL_READ_BUFFER_NV 0x0C02
1733 typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC
) (GLenum mode
);
1734 #ifdef GL_GLEXT_PROTOTYPES
1735 GL_APICALL
void GL_APIENTRY
glReadBufferNV (GLenum mode
);
1737 #endif /* GL_NV_read_buffer */
1739 #ifndef GL_NV_read_buffer_front
1740 #define GL_NV_read_buffer_front 1
1741 #endif /* GL_NV_read_buffer_front */
1743 #ifndef GL_NV_read_depth
1744 #define GL_NV_read_depth 1
1745 #endif /* GL_NV_read_depth */
1747 #ifndef GL_NV_read_depth_stencil
1748 #define GL_NV_read_depth_stencil 1
1749 #endif /* GL_NV_read_depth_stencil */
1751 #ifndef GL_NV_read_stencil
1752 #define GL_NV_read_stencil 1
1753 #endif /* GL_NV_read_stencil */
1755 #ifndef GL_NV_sRGB_formats
1756 #define GL_NV_sRGB_formats 1
1757 #define GL_SLUMINANCE_NV 0x8C46
1758 #define GL_SLUMINANCE_ALPHA_NV 0x8C44
1759 #define GL_SRGB8_NV 0x8C41
1760 #define GL_SLUMINANCE8_NV 0x8C47
1761 #define GL_SLUMINANCE8_ALPHA8_NV 0x8C45
1762 #define GL_COMPRESSED_SRGB_S3TC_DXT1_NV 0x8C4C
1763 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV 0x8C4D
1764 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV 0x8C4E
1765 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV 0x8C4F
1766 #define GL_ETC1_SRGB8_NV 0x88EE
1767 #endif /* GL_NV_sRGB_formats */
1769 #ifndef GL_NV_shadow_samplers_array
1770 #define GL_NV_shadow_samplers_array 1
1771 #define GL_SAMPLER_2D_ARRAY_SHADOW_NV 0x8DC4
1772 #endif /* GL_NV_shadow_samplers_array */
1774 #ifndef GL_NV_shadow_samplers_cube
1775 #define GL_NV_shadow_samplers_cube 1
1776 #define GL_SAMPLER_CUBE_SHADOW_NV 0x8DC5
1777 #endif /* GL_NV_shadow_samplers_cube */
1779 #ifndef GL_NV_texture_border_clamp
1780 #define GL_NV_texture_border_clamp 1
1781 #define GL_TEXTURE_BORDER_COLOR_NV 0x1004
1782 #define GL_CLAMP_TO_BORDER_NV 0x812D
1783 #endif /* GL_NV_texture_border_clamp */
1785 #ifndef GL_NV_texture_compression_s3tc_update
1786 #define GL_NV_texture_compression_s3tc_update 1
1787 #endif /* GL_NV_texture_compression_s3tc_update */
1789 #ifndef GL_NV_texture_npot_2D_mipmap
1790 #define GL_NV_texture_npot_2D_mipmap 1
1791 #endif /* GL_NV_texture_npot_2D_mipmap */
1793 #ifndef GL_QCOM_alpha_test
1794 #define GL_QCOM_alpha_test 1
1795 #define GL_ALPHA_TEST_QCOM 0x0BC0
1796 #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
1797 #define GL_ALPHA_TEST_REF_QCOM 0x0BC2
1798 typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC
) (GLenum func
, GLclampf ref
);
1799 #ifdef GL_GLEXT_PROTOTYPES
1800 GL_APICALL
void GL_APIENTRY
glAlphaFuncQCOM (GLenum func
, GLclampf ref
);
1802 #endif /* GL_QCOM_alpha_test */
1804 #ifndef GL_QCOM_binning_control
1805 #define GL_QCOM_binning_control 1
1806 #define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
1807 #define GL_CPU_OPTIMIZED_QCOM 0x8FB1
1808 #define GL_GPU_OPTIMIZED_QCOM 0x8FB2
1809 #define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
1810 #endif /* GL_QCOM_binning_control */
1812 #ifndef GL_QCOM_driver_control
1813 #define GL_QCOM_driver_control 1
1814 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC
) (GLint
*num
, GLsizei size
, GLuint
*driverControls
);
1815 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC
) (GLuint driverControl
, GLsizei bufSize
, GLsizei
*length
, GLchar
*driverControlString
);
1816 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC
) (GLuint driverControl
);
1817 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC
) (GLuint driverControl
);
1818 #ifdef GL_GLEXT_PROTOTYPES
1819 GL_APICALL
void GL_APIENTRY
glGetDriverControlsQCOM (GLint
*num
, GLsizei size
, GLuint
*driverControls
);
1820 GL_APICALL
void GL_APIENTRY
glGetDriverControlStringQCOM (GLuint driverControl
, GLsizei bufSize
, GLsizei
*length
, GLchar
*driverControlString
);
1821 GL_APICALL
void GL_APIENTRY
glEnableDriverControlQCOM (GLuint driverControl
);
1822 GL_APICALL
void GL_APIENTRY
glDisableDriverControlQCOM (GLuint driverControl
);
1824 #endif /* GL_QCOM_driver_control */
1826 #ifndef GL_QCOM_extended_get
1827 #define GL_QCOM_extended_get 1
1828 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2
1829 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
1830 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4
1831 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
1832 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6
1833 #define GL_TEXTURE_TYPE_QCOM 0x8BD7
1834 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
1835 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
1836 #define GL_TEXTURE_TARGET_QCOM 0x8BDA
1837 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
1838 #define GL_STATE_RESTORE 0x8BDC
1839 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC
) (GLuint
*textures
, GLint maxTextures
, GLint
*numTextures
);
1840 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC
) (GLuint
*buffers
, GLint maxBuffers
, GLint
*numBuffers
);
1841 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC
) (GLuint
*renderbuffers
, GLint maxRenderbuffers
, GLint
*numRenderbuffers
);
1842 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC
) (GLuint
*framebuffers
, GLint maxFramebuffers
, GLint
*numFramebuffers
);
1843 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC
) (GLuint texture
, GLenum face
, GLint level
, GLenum pname
, GLint
*params
);
1844 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC
) (GLenum target
, GLenum pname
, GLint param
);
1845 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
, void *texels
);
1846 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC
) (GLenum target
, void **params
);
1847 #ifdef GL_GLEXT_PROTOTYPES
1848 GL_APICALL
void GL_APIENTRY
glExtGetTexturesQCOM (GLuint
*textures
, GLint maxTextures
, GLint
*numTextures
);
1849 GL_APICALL
void GL_APIENTRY
glExtGetBuffersQCOM (GLuint
*buffers
, GLint maxBuffers
, GLint
*numBuffers
);
1850 GL_APICALL
void GL_APIENTRY
glExtGetRenderbuffersQCOM (GLuint
*renderbuffers
, GLint maxRenderbuffers
, GLint
*numRenderbuffers
);
1851 GL_APICALL
void GL_APIENTRY
glExtGetFramebuffersQCOM (GLuint
*framebuffers
, GLint maxFramebuffers
, GLint
*numFramebuffers
);
1852 GL_APICALL
void GL_APIENTRY
glExtGetTexLevelParameterivQCOM (GLuint texture
, GLenum face
, GLint level
, GLenum pname
, GLint
*params
);
1853 GL_APICALL
void GL_APIENTRY
glExtTexObjectStateOverrideiQCOM (GLenum target
, GLenum pname
, GLint param
);
1854 GL_APICALL
void GL_APIENTRY
glExtGetTexSubImageQCOM (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, void *texels
);
1855 GL_APICALL
void GL_APIENTRY
glExtGetBufferPointervQCOM (GLenum target
, void **params
);
1857 #endif /* GL_QCOM_extended_get */
1859 #ifndef GL_QCOM_extended_get2
1860 #define GL_QCOM_extended_get2 1
1861 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC
) (GLuint
*shaders
, GLint maxShaders
, GLint
*numShaders
);
1862 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC
) (GLuint
*programs
, GLint maxPrograms
, GLint
*numPrograms
);
1863 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC
) (GLuint program
);
1864 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC
) (GLuint program
, GLenum shadertype
, GLchar
*source
, GLint
*length
);
1865 #ifdef GL_GLEXT_PROTOTYPES
1866 GL_APICALL
void GL_APIENTRY
glExtGetShadersQCOM (GLuint
*shaders
, GLint maxShaders
, GLint
*numShaders
);
1867 GL_APICALL
void GL_APIENTRY
glExtGetProgramsQCOM (GLuint
*programs
, GLint maxPrograms
, GLint
*numPrograms
);
1868 GL_APICALL GLboolean GL_APIENTRY
glExtIsProgramBinaryQCOM (GLuint program
);
1869 GL_APICALL
void GL_APIENTRY
glExtGetProgramBinarySourceQCOM (GLuint program
, GLenum shadertype
, GLchar
*source
, GLint
*length
);
1871 #endif /* GL_QCOM_extended_get2 */
1873 #ifndef GL_QCOM_perfmon_global_mode
1874 #define GL_QCOM_perfmon_global_mode 1
1875 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
1876 #endif /* GL_QCOM_perfmon_global_mode */
1878 #ifndef GL_QCOM_tiled_rendering
1879 #define GL_QCOM_tiled_rendering 1
1880 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
1881 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
1882 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
1883 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
1884 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
1885 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
1886 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
1887 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
1888 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
1889 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
1890 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
1891 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
1892 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
1893 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
1894 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
1895 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
1896 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
1897 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
1898 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
1899 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
1900 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
1901 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
1902 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
1903 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
1904 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
1905 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
1906 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
1907 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
1908 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
1909 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
1910 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
1911 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
1912 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC
) (GLuint x
, GLuint y
, GLuint width
, GLuint height
, GLbitfield preserveMask
);
1913 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC
) (GLbitfield preserveMask
);
1914 #ifdef GL_GLEXT_PROTOTYPES
1915 GL_APICALL
void GL_APIENTRY
glStartTilingQCOM (GLuint x
, GLuint y
, GLuint width
, GLuint height
, GLbitfield preserveMask
);
1916 GL_APICALL
void GL_APIENTRY
glEndTilingQCOM (GLbitfield preserveMask
);
1918 #endif /* GL_QCOM_tiled_rendering */
1920 #ifndef GL_QCOM_writeonly_rendering
1921 #define GL_QCOM_writeonly_rendering 1
1922 #define GL_WRITEONLY_RENDERING_QCOM 0x8823
1923 #endif /* GL_QCOM_writeonly_rendering */
1925 #ifndef GL_VIV_shader_binary
1926 #define GL_VIV_shader_binary 1
1927 #define GL_SHADER_BINARY_VIV 0x8FC4
1928 #endif /* GL_VIV_shader_binary */