2 #define __glcorearb_h_ 1
9 ** Copyright (c) 2013-2016 The Khronos Group Inc.
11 ** Permission is hereby granted, free of charge, to any person obtaining a
12 ** copy of this software and/or associated documentation files (the
13 ** "Materials"), to deal in the Materials without restriction, including
14 ** without limitation the rights to use, copy, modify, merge, publish,
15 ** distribute, sublicense, and/or sell copies of the Materials, and to
16 ** permit persons to whom the Materials are furnished to do so, subject to
17 ** the following conditions:
19 ** The above copyright notice and this permission notice shall be included
20 ** in all copies or substantial portions of the Materials.
22 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
26 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
28 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
31 ** This header is generated from the Khronos OpenGL / OpenGL ES XML
32 ** API Registry. The current version of the Registry, generator scripts
33 ** used to make the header, and the header can be found at
34 ** http://www.opengl.org/registry/
36 ** Khronos $Revision: 32433 $ on $Date: 2016-02-10 02:02:08 -0500 (Wed, 10 Feb 2016) $
39 #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
40 #ifndef WIN32_LEAN_AND_MEAN
41 #define WIN32_LEAN_AND_MEAN 1
50 #define APIENTRYP APIENTRY *
56 /* glcorearb.h is for use with OpenGL core profile implementations.
57 ** It should should be placed in the same directory as gl.h and
58 ** included as <GL/glcorearb.h>.
60 ** glcorearb.h includes only APIs in the latest OpenGL core profile
61 ** implementation together with APIs in newer ARB extensions which
62 ** can be supported by the core profile. It does not, and never will
63 ** include functionality removed from the core profile, such as
64 ** fixed-function vertex and fragment processing.
66 ** Do not #include both <GL/glcorearb.h> and either of <GL/gl.h> or
67 ** <GL/glext.h> in the same source file.
70 /* Generated C header for:
73 * Versions considered: .*
74 * Versions emitted: .*
75 * Default extensions included: glcore
76 * Additional extensions included: _nomatch_^
77 * Extensions removed: _nomatch_^
80 #ifndef GL_VERSION_1_0
81 #define GL_VERSION_1_0 1
83 typedef unsigned int GLenum
;
84 typedef float GLfloat
;
87 typedef unsigned int GLbitfield
;
88 typedef double GLdouble
;
89 typedef unsigned int GLuint
;
90 typedef unsigned char GLboolean
;
91 typedef unsigned char GLubyte
;
92 typedef void (APIENTRYP PFNGLCULLFACEPROC
) (GLenum mode
);
93 typedef void (APIENTRYP PFNGLFRONTFACEPROC
) (GLenum mode
);
94 typedef void (APIENTRYP PFNGLHINTPROC
) (GLenum target
, GLenum mode
);
95 typedef void (APIENTRYP PFNGLLINEWIDTHPROC
) (GLfloat width
);
96 typedef void (APIENTRYP PFNGLPOINTSIZEPROC
) (GLfloat size
);
97 typedef void (APIENTRYP PFNGLPOLYGONMODEPROC
) (GLenum face
, GLenum mode
);
98 typedef void (APIENTRYP PFNGLSCISSORPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
);
99 typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC
) (GLenum target
, GLenum pname
, GLfloat param
);
100 typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC
) (GLenum target
, GLenum pname
, const GLfloat
*params
);
101 typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC
) (GLenum target
, GLenum pname
, GLint param
);
102 typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC
) (GLenum target
, GLenum pname
, const GLint
*params
);
103 typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC
) (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
104 typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC
) (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLsizei height
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
105 typedef void (APIENTRYP PFNGLDRAWBUFFERPROC
) (GLenum buf
);
106 typedef void (APIENTRYP PFNGLCLEARPROC
) (GLbitfield mask
);
107 typedef void (APIENTRYP PFNGLCLEARCOLORPROC
) (GLfloat red
, GLfloat green
, GLfloat blue
, GLfloat alpha
);
108 typedef void (APIENTRYP PFNGLCLEARSTENCILPROC
) (GLint s
);
109 typedef void (APIENTRYP PFNGLCLEARDEPTHPROC
) (GLdouble depth
);
110 typedef void (APIENTRYP PFNGLSTENCILMASKPROC
) (GLuint mask
);
111 typedef void (APIENTRYP PFNGLCOLORMASKPROC
) (GLboolean red
, GLboolean green
, GLboolean blue
, GLboolean alpha
);
112 typedef void (APIENTRYP PFNGLDEPTHMASKPROC
) (GLboolean flag
);
113 typedef void (APIENTRYP PFNGLDISABLEPROC
) (GLenum cap
);
114 typedef void (APIENTRYP PFNGLENABLEPROC
) (GLenum cap
);
115 typedef void (APIENTRYP PFNGLFINISHPROC
) (void);
116 typedef void (APIENTRYP PFNGLFLUSHPROC
) (void);
117 typedef void (APIENTRYP PFNGLBLENDFUNCPROC
) (GLenum sfactor
, GLenum dfactor
);
118 typedef void (APIENTRYP PFNGLLOGICOPPROC
) (GLenum opcode
);
119 typedef void (APIENTRYP PFNGLSTENCILFUNCPROC
) (GLenum func
, GLint ref
, GLuint mask
);
120 typedef void (APIENTRYP PFNGLSTENCILOPPROC
) (GLenum fail
, GLenum zfail
, GLenum zpass
);
121 typedef void (APIENTRYP PFNGLDEPTHFUNCPROC
) (GLenum func
);
122 typedef void (APIENTRYP PFNGLPIXELSTOREFPROC
) (GLenum pname
, GLfloat param
);
123 typedef void (APIENTRYP PFNGLPIXELSTOREIPROC
) (GLenum pname
, GLint param
);
124 typedef void (APIENTRYP PFNGLREADBUFFERPROC
) (GLenum src
);
125 typedef void (APIENTRYP PFNGLREADPIXELSPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, void *pixels
);
126 typedef void (APIENTRYP PFNGLGETBOOLEANVPROC
) (GLenum pname
, GLboolean
*data
);
127 typedef void (APIENTRYP PFNGLGETDOUBLEVPROC
) (GLenum pname
, GLdouble
*data
);
128 typedef GLenum (APIENTRYP PFNGLGETERRORPROC
) (void);
129 typedef void (APIENTRYP PFNGLGETFLOATVPROC
) (GLenum pname
, GLfloat
*data
);
130 typedef void (APIENTRYP PFNGLGETINTEGERVPROC
) (GLenum pname
, GLint
*data
);
131 typedef const GLubyte
*(APIENTRYP PFNGLGETSTRINGPROC
) (GLenum name
);
132 typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC
) (GLenum target
, GLint level
, GLenum format
, GLenum type
, void *pixels
);
133 typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC
) (GLenum target
, GLenum pname
, GLfloat
*params
);
134 typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
135 typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC
) (GLenum target
, GLint level
, GLenum pname
, GLfloat
*params
);
136 typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC
) (GLenum target
, GLint level
, GLenum pname
, GLint
*params
);
137 typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC
) (GLenum cap
);
138 typedef void (APIENTRYP PFNGLDEPTHRANGEPROC
) (GLdouble near
, GLdouble far
);
139 typedef void (APIENTRYP PFNGLVIEWPORTPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
);
140 #ifdef GL_GLEXT_PROTOTYPES
141 GLAPI
void APIENTRY
glCullFace (GLenum mode
);
142 GLAPI
void APIENTRY
glFrontFace (GLenum mode
);
143 GLAPI
void APIENTRY
glHint (GLenum target
, GLenum mode
);
144 GLAPI
void APIENTRY
glLineWidth (GLfloat width
);
145 GLAPI
void APIENTRY
glPointSize (GLfloat size
);
146 GLAPI
void APIENTRY
glPolygonMode (GLenum face
, GLenum mode
);
147 GLAPI
void APIENTRY
glScissor (GLint x
, GLint y
, GLsizei width
, GLsizei height
);
148 GLAPI
void APIENTRY
glTexParameterf (GLenum target
, GLenum pname
, GLfloat param
);
149 GLAPI
void APIENTRY
glTexParameterfv (GLenum target
, GLenum pname
, const GLfloat
*params
);
150 GLAPI
void APIENTRY
glTexParameteri (GLenum target
, GLenum pname
, GLint param
);
151 GLAPI
void APIENTRY
glTexParameteriv (GLenum target
, GLenum pname
, const GLint
*params
);
152 GLAPI
void APIENTRY
glTexImage1D (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
153 GLAPI
void APIENTRY
glTexImage2D (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLsizei height
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
154 GLAPI
void APIENTRY
glDrawBuffer (GLenum buf
);
155 GLAPI
void APIENTRY
glClear (GLbitfield mask
);
156 GLAPI
void APIENTRY
glClearColor (GLfloat red
, GLfloat green
, GLfloat blue
, GLfloat alpha
);
157 GLAPI
void APIENTRY
glClearStencil (GLint s
);
158 GLAPI
void APIENTRY
glClearDepth (GLdouble depth
);
159 GLAPI
void APIENTRY
glStencilMask (GLuint mask
);
160 GLAPI
void APIENTRY
glColorMask (GLboolean red
, GLboolean green
, GLboolean blue
, GLboolean alpha
);
161 GLAPI
void APIENTRY
glDepthMask (GLboolean flag
);
162 GLAPI
void APIENTRY
glDisable (GLenum cap
);
163 GLAPI
void APIENTRY
glEnable (GLenum cap
);
164 GLAPI
void APIENTRY
glFinish (void);
165 GLAPI
void APIENTRY
glFlush (void);
166 GLAPI
void APIENTRY
glBlendFunc (GLenum sfactor
, GLenum dfactor
);
167 GLAPI
void APIENTRY
glLogicOp (GLenum opcode
);
168 GLAPI
void APIENTRY
glStencilFunc (GLenum func
, GLint ref
, GLuint mask
);
169 GLAPI
void APIENTRY
glStencilOp (GLenum fail
, GLenum zfail
, GLenum zpass
);
170 GLAPI
void APIENTRY
glDepthFunc (GLenum func
);
171 GLAPI
void APIENTRY
glPixelStoref (GLenum pname
, GLfloat param
);
172 GLAPI
void APIENTRY
glPixelStorei (GLenum pname
, GLint param
);
173 GLAPI
void APIENTRY
glReadBuffer (GLenum src
);
174 GLAPI
void APIENTRY
glReadPixels (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, void *pixels
);
175 GLAPI
void APIENTRY
glGetBooleanv (GLenum pname
, GLboolean
*data
);
176 GLAPI
void APIENTRY
glGetDoublev (GLenum pname
, GLdouble
*data
);
177 GLAPI GLenum APIENTRY
glGetError (void);
178 GLAPI
void APIENTRY
glGetFloatv (GLenum pname
, GLfloat
*data
);
179 GLAPI
void APIENTRY
glGetIntegerv (GLenum pname
, GLint
*data
);
180 GLAPI
const GLubyte
*APIENTRY
glGetString (GLenum name
);
181 GLAPI
void APIENTRY
glGetTexImage (GLenum target
, GLint level
, GLenum format
, GLenum type
, void *pixels
);
182 GLAPI
void APIENTRY
glGetTexParameterfv (GLenum target
, GLenum pname
, GLfloat
*params
);
183 GLAPI
void APIENTRY
glGetTexParameteriv (GLenum target
, GLenum pname
, GLint
*params
);
184 GLAPI
void APIENTRY
glGetTexLevelParameterfv (GLenum target
, GLint level
, GLenum pname
, GLfloat
*params
);
185 GLAPI
void APIENTRY
glGetTexLevelParameteriv (GLenum target
, GLint level
, GLenum pname
, GLint
*params
);
186 GLAPI GLboolean APIENTRY
glIsEnabled (GLenum cap
);
187 GLAPI
void APIENTRY
glDepthRange (GLdouble near
, GLdouble far
);
188 GLAPI
void APIENTRY
glViewport (GLint x
, GLint y
, GLsizei width
, GLsizei height
);
190 #endif /* GL_VERSION_1_0 */
192 #ifndef GL_VERSION_1_1
193 #define GL_VERSION_1_1 1
194 typedef float GLclampf
;
195 typedef double GLclampd
;
196 #define GL_DEPTH_BUFFER_BIT 0x00000100
197 #define GL_STENCIL_BUFFER_BIT 0x00000400
198 #define GL_COLOR_BUFFER_BIT 0x00004000
201 #define GL_POINTS 0x0000
202 #define GL_LINES 0x0001
203 #define GL_LINE_LOOP 0x0002
204 #define GL_LINE_STRIP 0x0003
205 #define GL_TRIANGLES 0x0004
206 #define GL_TRIANGLE_STRIP 0x0005
207 #define GL_TRIANGLE_FAN 0x0006
208 #define GL_QUADS 0x0007
209 #define GL_NEVER 0x0200
210 #define GL_LESS 0x0201
211 #define GL_EQUAL 0x0202
212 #define GL_LEQUAL 0x0203
213 #define GL_GREATER 0x0204
214 #define GL_NOTEQUAL 0x0205
215 #define GL_GEQUAL 0x0206
216 #define GL_ALWAYS 0x0207
219 #define GL_SRC_COLOR 0x0300
220 #define GL_ONE_MINUS_SRC_COLOR 0x0301
221 #define GL_SRC_ALPHA 0x0302
222 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
223 #define GL_DST_ALPHA 0x0304
224 #define GL_ONE_MINUS_DST_ALPHA 0x0305
225 #define GL_DST_COLOR 0x0306
226 #define GL_ONE_MINUS_DST_COLOR 0x0307
227 #define GL_SRC_ALPHA_SATURATE 0x0308
229 #define GL_FRONT_LEFT 0x0400
230 #define GL_FRONT_RIGHT 0x0401
231 #define GL_BACK_LEFT 0x0402
232 #define GL_BACK_RIGHT 0x0403
233 #define GL_FRONT 0x0404
234 #define GL_BACK 0x0405
235 #define GL_LEFT 0x0406
236 #define GL_RIGHT 0x0407
237 #define GL_FRONT_AND_BACK 0x0408
238 #define GL_NO_ERROR 0
239 #define GL_INVALID_ENUM 0x0500
240 #define GL_INVALID_VALUE 0x0501
241 #define GL_INVALID_OPERATION 0x0502
242 #define GL_OUT_OF_MEMORY 0x0505
244 #define GL_CCW 0x0901
245 #define GL_POINT_SIZE 0x0B11
246 #define GL_POINT_SIZE_RANGE 0x0B12
247 #define GL_POINT_SIZE_GRANULARITY 0x0B13
248 #define GL_LINE_SMOOTH 0x0B20
249 #define GL_LINE_WIDTH 0x0B21
250 #define GL_LINE_WIDTH_RANGE 0x0B22
251 #define GL_LINE_WIDTH_GRANULARITY 0x0B23
252 #define GL_POLYGON_MODE 0x0B40
253 #define GL_POLYGON_SMOOTH 0x0B41
254 #define GL_CULL_FACE 0x0B44
255 #define GL_CULL_FACE_MODE 0x0B45
256 #define GL_FRONT_FACE 0x0B46
257 #define GL_DEPTH_RANGE 0x0B70
258 #define GL_DEPTH_TEST 0x0B71
259 #define GL_DEPTH_WRITEMASK 0x0B72
260 #define GL_DEPTH_CLEAR_VALUE 0x0B73
261 #define GL_DEPTH_FUNC 0x0B74
262 #define GL_STENCIL_TEST 0x0B90
263 #define GL_STENCIL_CLEAR_VALUE 0x0B91
264 #define GL_STENCIL_FUNC 0x0B92
265 #define GL_STENCIL_VALUE_MASK 0x0B93
266 #define GL_STENCIL_FAIL 0x0B94
267 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
268 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
269 #define GL_STENCIL_REF 0x0B97
270 #define GL_STENCIL_WRITEMASK 0x0B98
271 #define GL_VIEWPORT 0x0BA2
272 #define GL_DITHER 0x0BD0
273 #define GL_BLEND_DST 0x0BE0
274 #define GL_BLEND_SRC 0x0BE1
275 #define GL_BLEND 0x0BE2
276 #define GL_LOGIC_OP_MODE 0x0BF0
277 #define GL_COLOR_LOGIC_OP 0x0BF2
278 #define GL_DRAW_BUFFER 0x0C01
279 #define GL_READ_BUFFER 0x0C02
280 #define GL_SCISSOR_BOX 0x0C10
281 #define GL_SCISSOR_TEST 0x0C11
282 #define GL_COLOR_CLEAR_VALUE 0x0C22
283 #define GL_COLOR_WRITEMASK 0x0C23
284 #define GL_DOUBLEBUFFER 0x0C32
285 #define GL_STEREO 0x0C33
286 #define GL_LINE_SMOOTH_HINT 0x0C52
287 #define GL_POLYGON_SMOOTH_HINT 0x0C53
288 #define GL_UNPACK_SWAP_BYTES 0x0CF0
289 #define GL_UNPACK_LSB_FIRST 0x0CF1
290 #define GL_UNPACK_ROW_LENGTH 0x0CF2
291 #define GL_UNPACK_SKIP_ROWS 0x0CF3
292 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
293 #define GL_UNPACK_ALIGNMENT 0x0CF5
294 #define GL_PACK_SWAP_BYTES 0x0D00
295 #define GL_PACK_LSB_FIRST 0x0D01
296 #define GL_PACK_ROW_LENGTH 0x0D02
297 #define GL_PACK_SKIP_ROWS 0x0D03
298 #define GL_PACK_SKIP_PIXELS 0x0D04
299 #define GL_PACK_ALIGNMENT 0x0D05
300 #define GL_MAX_TEXTURE_SIZE 0x0D33
301 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
302 #define GL_SUBPIXEL_BITS 0x0D50
303 #define GL_TEXTURE_1D 0x0DE0
304 #define GL_TEXTURE_2D 0x0DE1
305 #define GL_POLYGON_OFFSET_UNITS 0x2A00
306 #define GL_POLYGON_OFFSET_POINT 0x2A01
307 #define GL_POLYGON_OFFSET_LINE 0x2A02
308 #define GL_POLYGON_OFFSET_FILL 0x8037
309 #define GL_POLYGON_OFFSET_FACTOR 0x8038
310 #define GL_TEXTURE_BINDING_1D 0x8068
311 #define GL_TEXTURE_BINDING_2D 0x8069
312 #define GL_TEXTURE_WIDTH 0x1000
313 #define GL_TEXTURE_HEIGHT 0x1001
314 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
315 #define GL_TEXTURE_BORDER_COLOR 0x1004
316 #define GL_TEXTURE_RED_SIZE 0x805C
317 #define GL_TEXTURE_GREEN_SIZE 0x805D
318 #define GL_TEXTURE_BLUE_SIZE 0x805E
319 #define GL_TEXTURE_ALPHA_SIZE 0x805F
320 #define GL_DONT_CARE 0x1100
321 #define GL_FASTEST 0x1101
322 #define GL_NICEST 0x1102
323 #define GL_BYTE 0x1400
324 #define GL_UNSIGNED_BYTE 0x1401
325 #define GL_SHORT 0x1402
326 #define GL_UNSIGNED_SHORT 0x1403
327 #define GL_INT 0x1404
328 #define GL_UNSIGNED_INT 0x1405
329 #define GL_FLOAT 0x1406
330 #define GL_DOUBLE 0x140A
331 #define GL_STACK_OVERFLOW 0x0503
332 #define GL_STACK_UNDERFLOW 0x0504
333 #define GL_CLEAR 0x1500
334 #define GL_AND 0x1501
335 #define GL_AND_REVERSE 0x1502
336 #define GL_COPY 0x1503
337 #define GL_AND_INVERTED 0x1504
338 #define GL_NOOP 0x1505
339 #define GL_XOR 0x1506
341 #define GL_NOR 0x1508
342 #define GL_EQUIV 0x1509
343 #define GL_INVERT 0x150A
344 #define GL_OR_REVERSE 0x150B
345 #define GL_COPY_INVERTED 0x150C
346 #define GL_OR_INVERTED 0x150D
347 #define GL_NAND 0x150E
348 #define GL_SET 0x150F
349 #define GL_TEXTURE 0x1702
350 #define GL_COLOR 0x1800
351 #define GL_DEPTH 0x1801
352 #define GL_STENCIL 0x1802
353 #define GL_STENCIL_INDEX 0x1901
354 #define GL_DEPTH_COMPONENT 0x1902
355 #define GL_RED 0x1903
356 #define GL_GREEN 0x1904
357 #define GL_BLUE 0x1905
358 #define GL_ALPHA 0x1906
359 #define GL_RGB 0x1907
360 #define GL_RGBA 0x1908
361 #define GL_POINT 0x1B00
362 #define GL_LINE 0x1B01
363 #define GL_FILL 0x1B02
364 #define GL_KEEP 0x1E00
365 #define GL_REPLACE 0x1E01
366 #define GL_INCR 0x1E02
367 #define GL_DECR 0x1E03
368 #define GL_VENDOR 0x1F00
369 #define GL_RENDERER 0x1F01
370 #define GL_VERSION 0x1F02
371 #define GL_EXTENSIONS 0x1F03
372 #define GL_NEAREST 0x2600
373 #define GL_LINEAR 0x2601
374 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
375 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
376 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
377 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
378 #define GL_TEXTURE_MAG_FILTER 0x2800
379 #define GL_TEXTURE_MIN_FILTER 0x2801
380 #define GL_TEXTURE_WRAP_S 0x2802
381 #define GL_TEXTURE_WRAP_T 0x2803
382 #define GL_PROXY_TEXTURE_1D 0x8063
383 #define GL_PROXY_TEXTURE_2D 0x8064
384 #define GL_REPEAT 0x2901
385 #define GL_R3_G3_B2 0x2A10
386 #define GL_RGB4 0x804F
387 #define GL_RGB5 0x8050
388 #define GL_RGB8 0x8051
389 #define GL_RGB10 0x8052
390 #define GL_RGB12 0x8053
391 #define GL_RGB16 0x8054
392 #define GL_RGBA2 0x8055
393 #define GL_RGBA4 0x8056
394 #define GL_RGB5_A1 0x8057
395 #define GL_RGBA8 0x8058
396 #define GL_RGB10_A2 0x8059
397 #define GL_RGBA12 0x805A
398 #define GL_RGBA16 0x805B
399 #define GL_VERTEX_ARRAY 0x8074
400 typedef void (APIENTRYP PFNGLDRAWARRAYSPROC
) (GLenum mode
, GLint first
, GLsizei count
);
401 typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
);
402 typedef void (APIENTRYP PFNGLGETPOINTERVPROC
) (GLenum pname
, void **params
);
403 typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC
) (GLfloat factor
, GLfloat units
);
404 typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLint x
, GLint y
, GLsizei width
, GLint border
);
405 typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLint border
);
406 typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint x
, GLint y
, GLsizei width
);
407 typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
408 typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLenum type
, const void *pixels
);
409 typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, const void *pixels
);
410 typedef void (APIENTRYP PFNGLBINDTEXTUREPROC
) (GLenum target
, GLuint texture
);
411 typedef void (APIENTRYP PFNGLDELETETEXTURESPROC
) (GLsizei n
, const GLuint
*textures
);
412 typedef void (APIENTRYP PFNGLGENTEXTURESPROC
) (GLsizei n
, GLuint
*textures
);
413 typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC
) (GLuint texture
);
414 #ifdef GL_GLEXT_PROTOTYPES
415 GLAPI
void APIENTRY
glDrawArrays (GLenum mode
, GLint first
, GLsizei count
);
416 GLAPI
void APIENTRY
glDrawElements (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
);
417 GLAPI
void APIENTRY
glGetPointerv (GLenum pname
, void **params
);
418 GLAPI
void APIENTRY
glPolygonOffset (GLfloat factor
, GLfloat units
);
419 GLAPI
void APIENTRY
glCopyTexImage1D (GLenum target
, GLint level
, GLenum internalformat
, GLint x
, GLint y
, GLsizei width
, GLint border
);
420 GLAPI
void APIENTRY
glCopyTexImage2D (GLenum target
, GLint level
, GLenum internalformat
, GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLint border
);
421 GLAPI
void APIENTRY
glCopyTexSubImage1D (GLenum target
, GLint level
, GLint xoffset
, GLint x
, GLint y
, GLsizei width
);
422 GLAPI
void APIENTRY
glCopyTexSubImage2D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
423 GLAPI
void APIENTRY
glTexSubImage1D (GLenum target
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLenum type
, const void *pixels
);
424 GLAPI
void APIENTRY
glTexSubImage2D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, const void *pixels
);
425 GLAPI
void APIENTRY
glBindTexture (GLenum target
, GLuint texture
);
426 GLAPI
void APIENTRY
glDeleteTextures (GLsizei n
, const GLuint
*textures
);
427 GLAPI
void APIENTRY
glGenTextures (GLsizei n
, GLuint
*textures
);
428 GLAPI GLboolean APIENTRY
glIsTexture (GLuint texture
);
430 #endif /* GL_VERSION_1_1 */
432 #ifndef GL_VERSION_1_2
433 #define GL_VERSION_1_2 1
434 #define GL_UNSIGNED_BYTE_3_3_2 0x8032
435 #define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
436 #define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
437 #define GL_UNSIGNED_INT_8_8_8_8 0x8035
438 #define GL_UNSIGNED_INT_10_10_10_2 0x8036
439 #define GL_TEXTURE_BINDING_3D 0x806A
440 #define GL_PACK_SKIP_IMAGES 0x806B
441 #define GL_PACK_IMAGE_HEIGHT 0x806C
442 #define GL_UNPACK_SKIP_IMAGES 0x806D
443 #define GL_UNPACK_IMAGE_HEIGHT 0x806E
444 #define GL_TEXTURE_3D 0x806F
445 #define GL_PROXY_TEXTURE_3D 0x8070
446 #define GL_TEXTURE_DEPTH 0x8071
447 #define GL_TEXTURE_WRAP_R 0x8072
448 #define GL_MAX_3D_TEXTURE_SIZE 0x8073
449 #define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
450 #define GL_UNSIGNED_SHORT_5_6_5 0x8363
451 #define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
452 #define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
453 #define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
454 #define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
455 #define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
456 #define GL_BGR 0x80E0
457 #define GL_BGRA 0x80E1
458 #define GL_MAX_ELEMENTS_VERTICES 0x80E8
459 #define GL_MAX_ELEMENTS_INDICES 0x80E9
460 #define GL_CLAMP_TO_EDGE 0x812F
461 #define GL_TEXTURE_MIN_LOD 0x813A
462 #define GL_TEXTURE_MAX_LOD 0x813B
463 #define GL_TEXTURE_BASE_LEVEL 0x813C
464 #define GL_TEXTURE_MAX_LEVEL 0x813D
465 #define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
466 #define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
467 #define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
468 #define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
469 #define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
470 typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC
) (GLenum mode
, GLuint start
, GLuint end
, GLsizei count
, GLenum type
, const void *indices
);
471 typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC
) (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
472 typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
473 typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
474 #ifdef GL_GLEXT_PROTOTYPES
475 GLAPI
void APIENTRY
glDrawRangeElements (GLenum mode
, GLuint start
, GLuint end
, GLsizei count
, GLenum type
, const void *indices
);
476 GLAPI
void APIENTRY
glTexImage3D (GLenum target
, GLint level
, GLint internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const void *pixels
);
477 GLAPI
void APIENTRY
glTexSubImage3D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
478 GLAPI
void APIENTRY
glCopyTexSubImage3D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
480 #endif /* GL_VERSION_1_2 */
482 #ifndef GL_VERSION_1_3
483 #define GL_VERSION_1_3 1
484 #define GL_TEXTURE0 0x84C0
485 #define GL_TEXTURE1 0x84C1
486 #define GL_TEXTURE2 0x84C2
487 #define GL_TEXTURE3 0x84C3
488 #define GL_TEXTURE4 0x84C4
489 #define GL_TEXTURE5 0x84C5
490 #define GL_TEXTURE6 0x84C6
491 #define GL_TEXTURE7 0x84C7
492 #define GL_TEXTURE8 0x84C8
493 #define GL_TEXTURE9 0x84C9
494 #define GL_TEXTURE10 0x84CA
495 #define GL_TEXTURE11 0x84CB
496 #define GL_TEXTURE12 0x84CC
497 #define GL_TEXTURE13 0x84CD
498 #define GL_TEXTURE14 0x84CE
499 #define GL_TEXTURE15 0x84CF
500 #define GL_TEXTURE16 0x84D0
501 #define GL_TEXTURE17 0x84D1
502 #define GL_TEXTURE18 0x84D2
503 #define GL_TEXTURE19 0x84D3
504 #define GL_TEXTURE20 0x84D4
505 #define GL_TEXTURE21 0x84D5
506 #define GL_TEXTURE22 0x84D6
507 #define GL_TEXTURE23 0x84D7
508 #define GL_TEXTURE24 0x84D8
509 #define GL_TEXTURE25 0x84D9
510 #define GL_TEXTURE26 0x84DA
511 #define GL_TEXTURE27 0x84DB
512 #define GL_TEXTURE28 0x84DC
513 #define GL_TEXTURE29 0x84DD
514 #define GL_TEXTURE30 0x84DE
515 #define GL_TEXTURE31 0x84DF
516 #define GL_ACTIVE_TEXTURE 0x84E0
517 #define GL_MULTISAMPLE 0x809D
518 #define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
519 #define GL_SAMPLE_ALPHA_TO_ONE 0x809F
520 #define GL_SAMPLE_COVERAGE 0x80A0
521 #define GL_SAMPLE_BUFFERS 0x80A8
522 #define GL_SAMPLES 0x80A9
523 #define GL_SAMPLE_COVERAGE_VALUE 0x80AA
524 #define GL_SAMPLE_COVERAGE_INVERT 0x80AB
525 #define GL_TEXTURE_CUBE_MAP 0x8513
526 #define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
527 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
528 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
529 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
530 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
531 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
532 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
533 #define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
534 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
535 #define GL_COMPRESSED_RGB 0x84ED
536 #define GL_COMPRESSED_RGBA 0x84EE
537 #define GL_TEXTURE_COMPRESSION_HINT 0x84EF
538 #define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
539 #define GL_TEXTURE_COMPRESSED 0x86A1
540 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
541 #define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
542 #define GL_CLAMP_TO_BORDER 0x812D
543 typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC
) (GLenum texture
);
544 typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC
) (GLfloat value
, GLboolean invert
);
545 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const void *data
);
546 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLint border
, GLsizei imageSize
, const void *data
);
547 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLint border
, GLsizei imageSize
, const void *data
);
548 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
549 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLsizei imageSize
, const void *data
);
550 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLsizei imageSize
, const void *data
);
551 typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC
) (GLenum target
, GLint level
, void *img
);
552 #ifdef GL_GLEXT_PROTOTYPES
553 GLAPI
void APIENTRY
glActiveTexture (GLenum texture
);
554 GLAPI
void APIENTRY
glSampleCoverage (GLfloat value
, GLboolean invert
);
555 GLAPI
void APIENTRY
glCompressedTexImage3D (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const void *data
);
556 GLAPI
void APIENTRY
glCompressedTexImage2D (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLint border
, GLsizei imageSize
, const void *data
);
557 GLAPI
void APIENTRY
glCompressedTexImage1D (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLint border
, GLsizei imageSize
, const void *data
);
558 GLAPI
void APIENTRY
glCompressedTexSubImage3D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
559 GLAPI
void APIENTRY
glCompressedTexSubImage2D (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLsizei imageSize
, const void *data
);
560 GLAPI
void APIENTRY
glCompressedTexSubImage1D (GLenum target
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLsizei imageSize
, const void *data
);
561 GLAPI
void APIENTRY
glGetCompressedTexImage (GLenum target
, GLint level
, void *img
);
563 #endif /* GL_VERSION_1_3 */
565 #ifndef GL_VERSION_1_4
566 #define GL_VERSION_1_4 1
567 #define GL_BLEND_DST_RGB 0x80C8
568 #define GL_BLEND_SRC_RGB 0x80C9
569 #define GL_BLEND_DST_ALPHA 0x80CA
570 #define GL_BLEND_SRC_ALPHA 0x80CB
571 #define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
572 #define GL_DEPTH_COMPONENT16 0x81A5
573 #define GL_DEPTH_COMPONENT24 0x81A6
574 #define GL_DEPTH_COMPONENT32 0x81A7
575 #define GL_MIRRORED_REPEAT 0x8370
576 #define GL_MAX_TEXTURE_LOD_BIAS 0x84FD
577 #define GL_TEXTURE_LOD_BIAS 0x8501
578 #define GL_INCR_WRAP 0x8507
579 #define GL_DECR_WRAP 0x8508
580 #define GL_TEXTURE_DEPTH_SIZE 0x884A
581 #define GL_TEXTURE_COMPARE_MODE 0x884C
582 #define GL_TEXTURE_COMPARE_FUNC 0x884D
583 #define GL_FUNC_ADD 0x8006
584 #define GL_FUNC_SUBTRACT 0x800A
585 #define GL_FUNC_REVERSE_SUBTRACT 0x800B
586 #define GL_MIN 0x8007
587 #define GL_MAX 0x8008
588 #define GL_CONSTANT_COLOR 0x8001
589 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
590 #define GL_CONSTANT_ALPHA 0x8003
591 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
592 typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC
) (GLenum sfactorRGB
, GLenum dfactorRGB
, GLenum sfactorAlpha
, GLenum dfactorAlpha
);
593 typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC
) (GLenum mode
, const GLint
*first
, const GLsizei
*count
, GLsizei drawcount
);
594 typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC
) (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei drawcount
);
595 typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC
) (GLenum pname
, GLfloat param
);
596 typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC
) (GLenum pname
, const GLfloat
*params
);
597 typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC
) (GLenum pname
, GLint param
);
598 typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC
) (GLenum pname
, const GLint
*params
);
599 typedef void (APIENTRYP PFNGLBLENDCOLORPROC
) (GLfloat red
, GLfloat green
, GLfloat blue
, GLfloat alpha
);
600 typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC
) (GLenum mode
);
601 #ifdef GL_GLEXT_PROTOTYPES
602 GLAPI
void APIENTRY
glBlendFuncSeparate (GLenum sfactorRGB
, GLenum dfactorRGB
, GLenum sfactorAlpha
, GLenum dfactorAlpha
);
603 GLAPI
void APIENTRY
glMultiDrawArrays (GLenum mode
, const GLint
*first
, const GLsizei
*count
, GLsizei drawcount
);
604 GLAPI
void APIENTRY
glMultiDrawElements (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei drawcount
);
605 GLAPI
void APIENTRY
glPointParameterf (GLenum pname
, GLfloat param
);
606 GLAPI
void APIENTRY
glPointParameterfv (GLenum pname
, const GLfloat
*params
);
607 GLAPI
void APIENTRY
glPointParameteri (GLenum pname
, GLint param
);
608 GLAPI
void APIENTRY
glPointParameteriv (GLenum pname
, const GLint
*params
);
609 GLAPI
void APIENTRY
glBlendColor (GLfloat red
, GLfloat green
, GLfloat blue
, GLfloat alpha
);
610 GLAPI
void APIENTRY
glBlendEquation (GLenum mode
);
612 #endif /* GL_VERSION_1_4 */
614 #ifndef GL_VERSION_1_5
615 #define GL_VERSION_1_5 1
617 typedef ptrdiff_t GLsizeiptr
;
618 typedef ptrdiff_t GLintptr
;
619 #define GL_BUFFER_SIZE 0x8764
620 #define GL_BUFFER_USAGE 0x8765
621 #define GL_QUERY_COUNTER_BITS 0x8864
622 #define GL_CURRENT_QUERY 0x8865
623 #define GL_QUERY_RESULT 0x8866
624 #define GL_QUERY_RESULT_AVAILABLE 0x8867
625 #define GL_ARRAY_BUFFER 0x8892
626 #define GL_ELEMENT_ARRAY_BUFFER 0x8893
627 #define GL_ARRAY_BUFFER_BINDING 0x8894
628 #define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
629 #define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
630 #define GL_READ_ONLY 0x88B8
631 #define GL_WRITE_ONLY 0x88B9
632 #define GL_READ_WRITE 0x88BA
633 #define GL_BUFFER_ACCESS 0x88BB
634 #define GL_BUFFER_MAPPED 0x88BC
635 #define GL_BUFFER_MAP_POINTER 0x88BD
636 #define GL_STREAM_DRAW 0x88E0
637 #define GL_STREAM_READ 0x88E1
638 #define GL_STREAM_COPY 0x88E2
639 #define GL_STATIC_DRAW 0x88E4
640 #define GL_STATIC_READ 0x88E5
641 #define GL_STATIC_COPY 0x88E6
642 #define GL_DYNAMIC_DRAW 0x88E8
643 #define GL_DYNAMIC_READ 0x88E9
644 #define GL_DYNAMIC_COPY 0x88EA
645 #define GL_SAMPLES_PASSED 0x8914
646 #define GL_SRC1_ALPHA 0x8589
647 typedef void (APIENTRYP PFNGLGENQUERIESPROC
) (GLsizei n
, GLuint
*ids
);
648 typedef void (APIENTRYP PFNGLDELETEQUERIESPROC
) (GLsizei n
, const GLuint
*ids
);
649 typedef GLboolean (APIENTRYP PFNGLISQUERYPROC
) (GLuint id
);
650 typedef void (APIENTRYP PFNGLBEGINQUERYPROC
) (GLenum target
, GLuint id
);
651 typedef void (APIENTRYP PFNGLENDQUERYPROC
) (GLenum target
);
652 typedef void (APIENTRYP PFNGLGETQUERYIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
653 typedef void (APIENTRYP PFNGLGETQUERYOBJECTIVPROC
) (GLuint id
, GLenum pname
, GLint
*params
);
654 typedef void (APIENTRYP PFNGLGETQUERYOBJECTUIVPROC
) (GLuint id
, GLenum pname
, GLuint
*params
);
655 typedef void (APIENTRYP PFNGLBINDBUFFERPROC
) (GLenum target
, GLuint buffer
);
656 typedef void (APIENTRYP PFNGLDELETEBUFFERSPROC
) (GLsizei n
, const GLuint
*buffers
);
657 typedef void (APIENTRYP PFNGLGENBUFFERSPROC
) (GLsizei n
, GLuint
*buffers
);
658 typedef GLboolean (APIENTRYP PFNGLISBUFFERPROC
) (GLuint buffer
);
659 typedef void (APIENTRYP PFNGLBUFFERDATAPROC
) (GLenum target
, GLsizeiptr size
, const void *data
, GLenum usage
);
660 typedef void (APIENTRYP PFNGLBUFFERSUBDATAPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr size
, const void *data
);
661 typedef void (APIENTRYP PFNGLGETBUFFERSUBDATAPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr size
, void *data
);
662 typedef void *(APIENTRYP PFNGLMAPBUFFERPROC
) (GLenum target
, GLenum access
);
663 typedef GLboolean (APIENTRYP PFNGLUNMAPBUFFERPROC
) (GLenum target
);
664 typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
665 typedef void (APIENTRYP PFNGLGETBUFFERPOINTERVPROC
) (GLenum target
, GLenum pname
, void **params
);
666 #ifdef GL_GLEXT_PROTOTYPES
667 GLAPI
void APIENTRY
glGenQueries (GLsizei n
, GLuint
*ids
);
668 GLAPI
void APIENTRY
glDeleteQueries (GLsizei n
, const GLuint
*ids
);
669 GLAPI GLboolean APIENTRY
glIsQuery (GLuint id
);
670 GLAPI
void APIENTRY
glBeginQuery (GLenum target
, GLuint id
);
671 GLAPI
void APIENTRY
glEndQuery (GLenum target
);
672 GLAPI
void APIENTRY
glGetQueryiv (GLenum target
, GLenum pname
, GLint
*params
);
673 GLAPI
void APIENTRY
glGetQueryObjectiv (GLuint id
, GLenum pname
, GLint
*params
);
674 GLAPI
void APIENTRY
glGetQueryObjectuiv (GLuint id
, GLenum pname
, GLuint
*params
);
675 GLAPI
void APIENTRY
glBindBuffer (GLenum target
, GLuint buffer
);
676 GLAPI
void APIENTRY
glDeleteBuffers (GLsizei n
, const GLuint
*buffers
);
677 GLAPI
void APIENTRY
glGenBuffers (GLsizei n
, GLuint
*buffers
);
678 GLAPI GLboolean APIENTRY
glIsBuffer (GLuint buffer
);
679 GLAPI
void APIENTRY
glBufferData (GLenum target
, GLsizeiptr size
, const void *data
, GLenum usage
);
680 GLAPI
void APIENTRY
glBufferSubData (GLenum target
, GLintptr offset
, GLsizeiptr size
, const void *data
);
681 GLAPI
void APIENTRY
glGetBufferSubData (GLenum target
, GLintptr offset
, GLsizeiptr size
, void *data
);
682 GLAPI
void *APIENTRY
glMapBuffer (GLenum target
, GLenum access
);
683 GLAPI GLboolean APIENTRY
glUnmapBuffer (GLenum target
);
684 GLAPI
void APIENTRY
glGetBufferParameteriv (GLenum target
, GLenum pname
, GLint
*params
);
685 GLAPI
void APIENTRY
glGetBufferPointerv (GLenum target
, GLenum pname
, void **params
);
687 #endif /* GL_VERSION_1_5 */
689 #ifndef GL_VERSION_2_0
690 #define GL_VERSION_2_0 1
692 typedef short GLshort
;
693 typedef signed char GLbyte
;
694 typedef unsigned short GLushort
;
695 #define GL_BLEND_EQUATION_RGB 0x8009
696 #define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
697 #define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
698 #define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
699 #define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
700 #define GL_CURRENT_VERTEX_ATTRIB 0x8626
701 #define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
702 #define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
703 #define GL_STENCIL_BACK_FUNC 0x8800
704 #define GL_STENCIL_BACK_FAIL 0x8801
705 #define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
706 #define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
707 #define GL_MAX_DRAW_BUFFERS 0x8824
708 #define GL_DRAW_BUFFER0 0x8825
709 #define GL_DRAW_BUFFER1 0x8826
710 #define GL_DRAW_BUFFER2 0x8827
711 #define GL_DRAW_BUFFER3 0x8828
712 #define GL_DRAW_BUFFER4 0x8829
713 #define GL_DRAW_BUFFER5 0x882A
714 #define GL_DRAW_BUFFER6 0x882B
715 #define GL_DRAW_BUFFER7 0x882C
716 #define GL_DRAW_BUFFER8 0x882D
717 #define GL_DRAW_BUFFER9 0x882E
718 #define GL_DRAW_BUFFER10 0x882F
719 #define GL_DRAW_BUFFER11 0x8830
720 #define GL_DRAW_BUFFER12 0x8831
721 #define GL_DRAW_BUFFER13 0x8832
722 #define GL_DRAW_BUFFER14 0x8833
723 #define GL_DRAW_BUFFER15 0x8834
724 #define GL_BLEND_EQUATION_ALPHA 0x883D
725 #define GL_MAX_VERTEX_ATTRIBS 0x8869
726 #define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
727 #define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
728 #define GL_FRAGMENT_SHADER 0x8B30
729 #define GL_VERTEX_SHADER 0x8B31
730 #define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
731 #define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
732 #define GL_MAX_VARYING_FLOATS 0x8B4B
733 #define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
734 #define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
735 #define GL_SHADER_TYPE 0x8B4F
736 #define GL_FLOAT_VEC2 0x8B50
737 #define GL_FLOAT_VEC3 0x8B51
738 #define GL_FLOAT_VEC4 0x8B52
739 #define GL_INT_VEC2 0x8B53
740 #define GL_INT_VEC3 0x8B54
741 #define GL_INT_VEC4 0x8B55
742 #define GL_BOOL 0x8B56
743 #define GL_BOOL_VEC2 0x8B57
744 #define GL_BOOL_VEC3 0x8B58
745 #define GL_BOOL_VEC4 0x8B59
746 #define GL_FLOAT_MAT2 0x8B5A
747 #define GL_FLOAT_MAT3 0x8B5B
748 #define GL_FLOAT_MAT4 0x8B5C
749 #define GL_SAMPLER_1D 0x8B5D
750 #define GL_SAMPLER_2D 0x8B5E
751 #define GL_SAMPLER_3D 0x8B5F
752 #define GL_SAMPLER_CUBE 0x8B60
753 #define GL_SAMPLER_1D_SHADOW 0x8B61
754 #define GL_SAMPLER_2D_SHADOW 0x8B62
755 #define GL_DELETE_STATUS 0x8B80
756 #define GL_COMPILE_STATUS 0x8B81
757 #define GL_LINK_STATUS 0x8B82
758 #define GL_VALIDATE_STATUS 0x8B83
759 #define GL_INFO_LOG_LENGTH 0x8B84
760 #define GL_ATTACHED_SHADERS 0x8B85
761 #define GL_ACTIVE_UNIFORMS 0x8B86
762 #define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
763 #define GL_SHADER_SOURCE_LENGTH 0x8B88
764 #define GL_ACTIVE_ATTRIBUTES 0x8B89
765 #define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
766 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
767 #define GL_SHADING_LANGUAGE_VERSION 0x8B8C
768 #define GL_CURRENT_PROGRAM 0x8B8D
769 #define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0
770 #define GL_LOWER_LEFT 0x8CA1
771 #define GL_UPPER_LEFT 0x8CA2
772 #define GL_STENCIL_BACK_REF 0x8CA3
773 #define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
774 #define GL_STENCIL_BACK_WRITEMASK 0x8CA5
775 typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEPROC
) (GLenum modeRGB
, GLenum modeAlpha
);
776 typedef void (APIENTRYP PFNGLDRAWBUFFERSPROC
) (GLsizei n
, const GLenum
*bufs
);
777 typedef void (APIENTRYP PFNGLSTENCILOPSEPARATEPROC
) (GLenum face
, GLenum sfail
, GLenum dpfail
, GLenum dppass
);
778 typedef void (APIENTRYP PFNGLSTENCILFUNCSEPARATEPROC
) (GLenum face
, GLenum func
, GLint ref
, GLuint mask
);
779 typedef void (APIENTRYP PFNGLSTENCILMASKSEPARATEPROC
) (GLenum face
, GLuint mask
);
780 typedef void (APIENTRYP PFNGLATTACHSHADERPROC
) (GLuint program
, GLuint shader
);
781 typedef void (APIENTRYP PFNGLBINDATTRIBLOCATIONPROC
) (GLuint program
, GLuint index
, const GLchar
*name
);
782 typedef void (APIENTRYP PFNGLCOMPILESHADERPROC
) (GLuint shader
);
783 typedef GLuint (APIENTRYP PFNGLCREATEPROGRAMPROC
) (void);
784 typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC
) (GLenum type
);
785 typedef void (APIENTRYP PFNGLDELETEPROGRAMPROC
) (GLuint program
);
786 typedef void (APIENTRYP PFNGLDELETESHADERPROC
) (GLuint shader
);
787 typedef void (APIENTRYP PFNGLDETACHSHADERPROC
) (GLuint program
, GLuint shader
);
788 typedef void (APIENTRYP PFNGLDISABLEVERTEXATTRIBARRAYPROC
) (GLuint index
);
789 typedef void (APIENTRYP PFNGLENABLEVERTEXATTRIBARRAYPROC
) (GLuint index
);
790 typedef void (APIENTRYP PFNGLGETACTIVEATTRIBPROC
) (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLint
*size
, GLenum
*type
, GLchar
*name
);
791 typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMPROC
) (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLint
*size
, GLenum
*type
, GLchar
*name
);
792 typedef void (APIENTRYP PFNGLGETATTACHEDSHADERSPROC
) (GLuint program
, GLsizei maxCount
, GLsizei
*count
, GLuint
*shaders
);
793 typedef GLint (APIENTRYP PFNGLGETATTRIBLOCATIONPROC
) (GLuint program
, const GLchar
*name
);
794 typedef void (APIENTRYP PFNGLGETPROGRAMIVPROC
) (GLuint program
, GLenum pname
, GLint
*params
);
795 typedef void (APIENTRYP PFNGLGETPROGRAMINFOLOGPROC
) (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
796 typedef void (APIENTRYP PFNGLGETSHADERIVPROC
) (GLuint shader
, GLenum pname
, GLint
*params
);
797 typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC
) (GLuint shader
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
798 typedef void (APIENTRYP PFNGLGETSHADERSOURCEPROC
) (GLuint shader
, GLsizei bufSize
, GLsizei
*length
, GLchar
*source
);
799 typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC
) (GLuint program
, const GLchar
*name
);
800 typedef void (APIENTRYP PFNGLGETUNIFORMFVPROC
) (GLuint program
, GLint location
, GLfloat
*params
);
801 typedef void (APIENTRYP PFNGLGETUNIFORMIVPROC
) (GLuint program
, GLint location
, GLint
*params
);
802 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBDVPROC
) (GLuint index
, GLenum pname
, GLdouble
*params
);
803 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBFVPROC
) (GLuint index
, GLenum pname
, GLfloat
*params
);
804 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC
) (GLuint index
, GLenum pname
, GLint
*params
);
805 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC
) (GLuint index
, GLenum pname
, void **pointer
);
806 typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC
) (GLuint program
);
807 typedef GLboolean (APIENTRYP PFNGLISSHADERPROC
) (GLuint shader
);
808 typedef void (APIENTRYP PFNGLLINKPROGRAMPROC
) (GLuint program
);
809 typedef void (APIENTRYP PFNGLSHADERSOURCEPROC
) (GLuint shader
, GLsizei count
, const GLchar
*const*string
, const GLint
*length
);
810 typedef void (APIENTRYP PFNGLUSEPROGRAMPROC
) (GLuint program
);
811 typedef void (APIENTRYP PFNGLUNIFORM1FPROC
) (GLint location
, GLfloat v0
);
812 typedef void (APIENTRYP PFNGLUNIFORM2FPROC
) (GLint location
, GLfloat v0
, GLfloat v1
);
813 typedef void (APIENTRYP PFNGLUNIFORM3FPROC
) (GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
814 typedef void (APIENTRYP PFNGLUNIFORM4FPROC
) (GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
815 typedef void (APIENTRYP PFNGLUNIFORM1IPROC
) (GLint location
, GLint v0
);
816 typedef void (APIENTRYP PFNGLUNIFORM2IPROC
) (GLint location
, GLint v0
, GLint v1
);
817 typedef void (APIENTRYP PFNGLUNIFORM3IPROC
) (GLint location
, GLint v0
, GLint v1
, GLint v2
);
818 typedef void (APIENTRYP PFNGLUNIFORM4IPROC
) (GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
819 typedef void (APIENTRYP PFNGLUNIFORM1FVPROC
) (GLint location
, GLsizei count
, const GLfloat
*value
);
820 typedef void (APIENTRYP PFNGLUNIFORM2FVPROC
) (GLint location
, GLsizei count
, const GLfloat
*value
);
821 typedef void (APIENTRYP PFNGLUNIFORM3FVPROC
) (GLint location
, GLsizei count
, const GLfloat
*value
);
822 typedef void (APIENTRYP PFNGLUNIFORM4FVPROC
) (GLint location
, GLsizei count
, const GLfloat
*value
);
823 typedef void (APIENTRYP PFNGLUNIFORM1IVPROC
) (GLint location
, GLsizei count
, const GLint
*value
);
824 typedef void (APIENTRYP PFNGLUNIFORM2IVPROC
) (GLint location
, GLsizei count
, const GLint
*value
);
825 typedef void (APIENTRYP PFNGLUNIFORM3IVPROC
) (GLint location
, GLsizei count
, const GLint
*value
);
826 typedef void (APIENTRYP PFNGLUNIFORM4IVPROC
) (GLint location
, GLsizei count
, const GLint
*value
);
827 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
828 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
829 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
830 typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPROC
) (GLuint program
);
831 typedef void (APIENTRYP PFNGLVERTEXATTRIB1DPROC
) (GLuint index
, GLdouble x
);
832 typedef void (APIENTRYP PFNGLVERTEXATTRIB1DVPROC
) (GLuint index
, const GLdouble
*v
);
833 typedef void (APIENTRYP PFNGLVERTEXATTRIB1FPROC
) (GLuint index
, GLfloat x
);
834 typedef void (APIENTRYP PFNGLVERTEXATTRIB1FVPROC
) (GLuint index
, const GLfloat
*v
);
835 typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC
) (GLuint index
, GLshort x
);
836 typedef void (APIENTRYP PFNGLVERTEXATTRIB1SVPROC
) (GLuint index
, const GLshort
*v
);
837 typedef void (APIENTRYP PFNGLVERTEXATTRIB2DPROC
) (GLuint index
, GLdouble x
, GLdouble y
);
838 typedef void (APIENTRYP PFNGLVERTEXATTRIB2DVPROC
) (GLuint index
, const GLdouble
*v
);
839 typedef void (APIENTRYP PFNGLVERTEXATTRIB2FPROC
) (GLuint index
, GLfloat x
, GLfloat y
);
840 typedef void (APIENTRYP PFNGLVERTEXATTRIB2FVPROC
) (GLuint index
, const GLfloat
*v
);
841 typedef void (APIENTRYP PFNGLVERTEXATTRIB2SPROC
) (GLuint index
, GLshort x
, GLshort y
);
842 typedef void (APIENTRYP PFNGLVERTEXATTRIB2SVPROC
) (GLuint index
, const GLshort
*v
);
843 typedef void (APIENTRYP PFNGLVERTEXATTRIB3DPROC
) (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
);
844 typedef void (APIENTRYP PFNGLVERTEXATTRIB3DVPROC
) (GLuint index
, const GLdouble
*v
);
845 typedef void (APIENTRYP PFNGLVERTEXATTRIB3FPROC
) (GLuint index
, GLfloat x
, GLfloat y
, GLfloat z
);
846 typedef void (APIENTRYP PFNGLVERTEXATTRIB3FVPROC
) (GLuint index
, const GLfloat
*v
);
847 typedef void (APIENTRYP PFNGLVERTEXATTRIB3SPROC
) (GLuint index
, GLshort x
, GLshort y
, GLshort z
);
848 typedef void (APIENTRYP PFNGLVERTEXATTRIB3SVPROC
) (GLuint index
, const GLshort
*v
);
849 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NBVPROC
) (GLuint index
, const GLbyte
*v
);
850 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NIVPROC
) (GLuint index
, const GLint
*v
);
851 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NSVPROC
) (GLuint index
, const GLshort
*v
);
852 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBPROC
) (GLuint index
, GLubyte x
, GLubyte y
, GLubyte z
, GLubyte w
);
853 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBVPROC
) (GLuint index
, const GLubyte
*v
);
854 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUIVPROC
) (GLuint index
, const GLuint
*v
);
855 typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUSVPROC
) (GLuint index
, const GLushort
*v
);
856 typedef void (APIENTRYP PFNGLVERTEXATTRIB4BVPROC
) (GLuint index
, const GLbyte
*v
);
857 typedef void (APIENTRYP PFNGLVERTEXATTRIB4DPROC
) (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
858 typedef void (APIENTRYP PFNGLVERTEXATTRIB4DVPROC
) (GLuint index
, const GLdouble
*v
);
859 typedef void (APIENTRYP PFNGLVERTEXATTRIB4FPROC
) (GLuint index
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
);
860 typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC
) (GLuint index
, const GLfloat
*v
);
861 typedef void (APIENTRYP PFNGLVERTEXATTRIB4IVPROC
) (GLuint index
, const GLint
*v
);
862 typedef void (APIENTRYP PFNGLVERTEXATTRIB4SPROC
) (GLuint index
, GLshort x
, GLshort y
, GLshort z
, GLshort w
);
863 typedef void (APIENTRYP PFNGLVERTEXATTRIB4SVPROC
) (GLuint index
, const GLshort
*v
);
864 typedef void (APIENTRYP PFNGLVERTEXATTRIB4UBVPROC
) (GLuint index
, const GLubyte
*v
);
865 typedef void (APIENTRYP PFNGLVERTEXATTRIB4UIVPROC
) (GLuint index
, const GLuint
*v
);
866 typedef void (APIENTRYP PFNGLVERTEXATTRIB4USVPROC
) (GLuint index
, const GLushort
*v
);
867 typedef void (APIENTRYP PFNGLVERTEXATTRIBPOINTERPROC
) (GLuint index
, GLint size
, GLenum type
, GLboolean normalized
, GLsizei stride
, const void *pointer
);
868 #ifdef GL_GLEXT_PROTOTYPES
869 GLAPI
void APIENTRY
glBlendEquationSeparate (GLenum modeRGB
, GLenum modeAlpha
);
870 GLAPI
void APIENTRY
glDrawBuffers (GLsizei n
, const GLenum
*bufs
);
871 GLAPI
void APIENTRY
glStencilOpSeparate (GLenum face
, GLenum sfail
, GLenum dpfail
, GLenum dppass
);
872 GLAPI
void APIENTRY
glStencilFuncSeparate (GLenum face
, GLenum func
, GLint ref
, GLuint mask
);
873 GLAPI
void APIENTRY
glStencilMaskSeparate (GLenum face
, GLuint mask
);
874 GLAPI
void APIENTRY
glAttachShader (GLuint program
, GLuint shader
);
875 GLAPI
void APIENTRY
glBindAttribLocation (GLuint program
, GLuint index
, const GLchar
*name
);
876 GLAPI
void APIENTRY
glCompileShader (GLuint shader
);
877 GLAPI GLuint APIENTRY
glCreateProgram (void);
878 GLAPI GLuint APIENTRY
glCreateShader (GLenum type
);
879 GLAPI
void APIENTRY
glDeleteProgram (GLuint program
);
880 GLAPI
void APIENTRY
glDeleteShader (GLuint shader
);
881 GLAPI
void APIENTRY
glDetachShader (GLuint program
, GLuint shader
);
882 GLAPI
void APIENTRY
glDisableVertexAttribArray (GLuint index
);
883 GLAPI
void APIENTRY
glEnableVertexAttribArray (GLuint index
);
884 GLAPI
void APIENTRY
glGetActiveAttrib (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLint
*size
, GLenum
*type
, GLchar
*name
);
885 GLAPI
void APIENTRY
glGetActiveUniform (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLint
*size
, GLenum
*type
, GLchar
*name
);
886 GLAPI
void APIENTRY
glGetAttachedShaders (GLuint program
, GLsizei maxCount
, GLsizei
*count
, GLuint
*shaders
);
887 GLAPI GLint APIENTRY
glGetAttribLocation (GLuint program
, const GLchar
*name
);
888 GLAPI
void APIENTRY
glGetProgramiv (GLuint program
, GLenum pname
, GLint
*params
);
889 GLAPI
void APIENTRY
glGetProgramInfoLog (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
890 GLAPI
void APIENTRY
glGetShaderiv (GLuint shader
, GLenum pname
, GLint
*params
);
891 GLAPI
void APIENTRY
glGetShaderInfoLog (GLuint shader
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
892 GLAPI
void APIENTRY
glGetShaderSource (GLuint shader
, GLsizei bufSize
, GLsizei
*length
, GLchar
*source
);
893 GLAPI GLint APIENTRY
glGetUniformLocation (GLuint program
, const GLchar
*name
);
894 GLAPI
void APIENTRY
glGetUniformfv (GLuint program
, GLint location
, GLfloat
*params
);
895 GLAPI
void APIENTRY
glGetUniformiv (GLuint program
, GLint location
, GLint
*params
);
896 GLAPI
void APIENTRY
glGetVertexAttribdv (GLuint index
, GLenum pname
, GLdouble
*params
);
897 GLAPI
void APIENTRY
glGetVertexAttribfv (GLuint index
, GLenum pname
, GLfloat
*params
);
898 GLAPI
void APIENTRY
glGetVertexAttribiv (GLuint index
, GLenum pname
, GLint
*params
);
899 GLAPI
void APIENTRY
glGetVertexAttribPointerv (GLuint index
, GLenum pname
, void **pointer
);
900 GLAPI GLboolean APIENTRY
glIsProgram (GLuint program
);
901 GLAPI GLboolean APIENTRY
glIsShader (GLuint shader
);
902 GLAPI
void APIENTRY
glLinkProgram (GLuint program
);
903 GLAPI
void APIENTRY
glShaderSource (GLuint shader
, GLsizei count
, const GLchar
*const*string
, const GLint
*length
);
904 GLAPI
void APIENTRY
glUseProgram (GLuint program
);
905 GLAPI
void APIENTRY
glUniform1f (GLint location
, GLfloat v0
);
906 GLAPI
void APIENTRY
glUniform2f (GLint location
, GLfloat v0
, GLfloat v1
);
907 GLAPI
void APIENTRY
glUniform3f (GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
908 GLAPI
void APIENTRY
glUniform4f (GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
909 GLAPI
void APIENTRY
glUniform1i (GLint location
, GLint v0
);
910 GLAPI
void APIENTRY
glUniform2i (GLint location
, GLint v0
, GLint v1
);
911 GLAPI
void APIENTRY
glUniform3i (GLint location
, GLint v0
, GLint v1
, GLint v2
);
912 GLAPI
void APIENTRY
glUniform4i (GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
913 GLAPI
void APIENTRY
glUniform1fv (GLint location
, GLsizei count
, const GLfloat
*value
);
914 GLAPI
void APIENTRY
glUniform2fv (GLint location
, GLsizei count
, const GLfloat
*value
);
915 GLAPI
void APIENTRY
glUniform3fv (GLint location
, GLsizei count
, const GLfloat
*value
);
916 GLAPI
void APIENTRY
glUniform4fv (GLint location
, GLsizei count
, const GLfloat
*value
);
917 GLAPI
void APIENTRY
glUniform1iv (GLint location
, GLsizei count
, const GLint
*value
);
918 GLAPI
void APIENTRY
glUniform2iv (GLint location
, GLsizei count
, const GLint
*value
);
919 GLAPI
void APIENTRY
glUniform3iv (GLint location
, GLsizei count
, const GLint
*value
);
920 GLAPI
void APIENTRY
glUniform4iv (GLint location
, GLsizei count
, const GLint
*value
);
921 GLAPI
void APIENTRY
glUniformMatrix2fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
922 GLAPI
void APIENTRY
glUniformMatrix3fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
923 GLAPI
void APIENTRY
glUniformMatrix4fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
924 GLAPI
void APIENTRY
glValidateProgram (GLuint program
);
925 GLAPI
void APIENTRY
glVertexAttrib1d (GLuint index
, GLdouble x
);
926 GLAPI
void APIENTRY
glVertexAttrib1dv (GLuint index
, const GLdouble
*v
);
927 GLAPI
void APIENTRY
glVertexAttrib1f (GLuint index
, GLfloat x
);
928 GLAPI
void APIENTRY
glVertexAttrib1fv (GLuint index
, const GLfloat
*v
);
929 GLAPI
void APIENTRY
glVertexAttrib1s (GLuint index
, GLshort x
);
930 GLAPI
void APIENTRY
glVertexAttrib1sv (GLuint index
, const GLshort
*v
);
931 GLAPI
void APIENTRY
glVertexAttrib2d (GLuint index
, GLdouble x
, GLdouble y
);
932 GLAPI
void APIENTRY
glVertexAttrib2dv (GLuint index
, const GLdouble
*v
);
933 GLAPI
void APIENTRY
glVertexAttrib2f (GLuint index
, GLfloat x
, GLfloat y
);
934 GLAPI
void APIENTRY
glVertexAttrib2fv (GLuint index
, const GLfloat
*v
);
935 GLAPI
void APIENTRY
glVertexAttrib2s (GLuint index
, GLshort x
, GLshort y
);
936 GLAPI
void APIENTRY
glVertexAttrib2sv (GLuint index
, const GLshort
*v
);
937 GLAPI
void APIENTRY
glVertexAttrib3d (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
);
938 GLAPI
void APIENTRY
glVertexAttrib3dv (GLuint index
, const GLdouble
*v
);
939 GLAPI
void APIENTRY
glVertexAttrib3f (GLuint index
, GLfloat x
, GLfloat y
, GLfloat z
);
940 GLAPI
void APIENTRY
glVertexAttrib3fv (GLuint index
, const GLfloat
*v
);
941 GLAPI
void APIENTRY
glVertexAttrib3s (GLuint index
, GLshort x
, GLshort y
, GLshort z
);
942 GLAPI
void APIENTRY
glVertexAttrib3sv (GLuint index
, const GLshort
*v
);
943 GLAPI
void APIENTRY
glVertexAttrib4Nbv (GLuint index
, const GLbyte
*v
);
944 GLAPI
void APIENTRY
glVertexAttrib4Niv (GLuint index
, const GLint
*v
);
945 GLAPI
void APIENTRY
glVertexAttrib4Nsv (GLuint index
, const GLshort
*v
);
946 GLAPI
void APIENTRY
glVertexAttrib4Nub (GLuint index
, GLubyte x
, GLubyte y
, GLubyte z
, GLubyte w
);
947 GLAPI
void APIENTRY
glVertexAttrib4Nubv (GLuint index
, const GLubyte
*v
);
948 GLAPI
void APIENTRY
glVertexAttrib4Nuiv (GLuint index
, const GLuint
*v
);
949 GLAPI
void APIENTRY
glVertexAttrib4Nusv (GLuint index
, const GLushort
*v
);
950 GLAPI
void APIENTRY
glVertexAttrib4bv (GLuint index
, const GLbyte
*v
);
951 GLAPI
void APIENTRY
glVertexAttrib4d (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
952 GLAPI
void APIENTRY
glVertexAttrib4dv (GLuint index
, const GLdouble
*v
);
953 GLAPI
void APIENTRY
glVertexAttrib4f (GLuint index
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
);
954 GLAPI
void APIENTRY
glVertexAttrib4fv (GLuint index
, const GLfloat
*v
);
955 GLAPI
void APIENTRY
glVertexAttrib4iv (GLuint index
, const GLint
*v
);
956 GLAPI
void APIENTRY
glVertexAttrib4s (GLuint index
, GLshort x
, GLshort y
, GLshort z
, GLshort w
);
957 GLAPI
void APIENTRY
glVertexAttrib4sv (GLuint index
, const GLshort
*v
);
958 GLAPI
void APIENTRY
glVertexAttrib4ubv (GLuint index
, const GLubyte
*v
);
959 GLAPI
void APIENTRY
glVertexAttrib4uiv (GLuint index
, const GLuint
*v
);
960 GLAPI
void APIENTRY
glVertexAttrib4usv (GLuint index
, const GLushort
*v
);
961 GLAPI
void APIENTRY
glVertexAttribPointer (GLuint index
, GLint size
, GLenum type
, GLboolean normalized
, GLsizei stride
, const void *pointer
);
963 #endif /* GL_VERSION_2_0 */
965 #ifndef GL_VERSION_2_1
966 #define GL_VERSION_2_1 1
967 #define GL_PIXEL_PACK_BUFFER 0x88EB
968 #define GL_PIXEL_UNPACK_BUFFER 0x88EC
969 #define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED
970 #define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF
971 #define GL_FLOAT_MAT2x3 0x8B65
972 #define GL_FLOAT_MAT2x4 0x8B66
973 #define GL_FLOAT_MAT3x2 0x8B67
974 #define GL_FLOAT_MAT3x4 0x8B68
975 #define GL_FLOAT_MAT4x2 0x8B69
976 #define GL_FLOAT_MAT4x3 0x8B6A
977 #define GL_SRGB 0x8C40
978 #define GL_SRGB8 0x8C41
979 #define GL_SRGB_ALPHA 0x8C42
980 #define GL_SRGB8_ALPHA8 0x8C43
981 #define GL_COMPRESSED_SRGB 0x8C48
982 #define GL_COMPRESSED_SRGB_ALPHA 0x8C49
983 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
984 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
985 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
986 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
987 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
988 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3FVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
989 #ifdef GL_GLEXT_PROTOTYPES
990 GLAPI
void APIENTRY
glUniformMatrix2x3fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
991 GLAPI
void APIENTRY
glUniformMatrix3x2fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
992 GLAPI
void APIENTRY
glUniformMatrix2x4fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
993 GLAPI
void APIENTRY
glUniformMatrix4x2fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
994 GLAPI
void APIENTRY
glUniformMatrix3x4fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
995 GLAPI
void APIENTRY
glUniformMatrix4x3fv (GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
997 #endif /* GL_VERSION_2_1 */
999 #ifndef GL_VERSION_3_0
1000 #define GL_VERSION_3_0 1
1001 typedef unsigned short GLhalf
;
1002 #define GL_COMPARE_REF_TO_TEXTURE 0x884E
1003 #define GL_CLIP_DISTANCE0 0x3000
1004 #define GL_CLIP_DISTANCE1 0x3001
1005 #define GL_CLIP_DISTANCE2 0x3002
1006 #define GL_CLIP_DISTANCE3 0x3003
1007 #define GL_CLIP_DISTANCE4 0x3004
1008 #define GL_CLIP_DISTANCE5 0x3005
1009 #define GL_CLIP_DISTANCE6 0x3006
1010 #define GL_CLIP_DISTANCE7 0x3007
1011 #define GL_MAX_CLIP_DISTANCES 0x0D32
1012 #define GL_MAJOR_VERSION 0x821B
1013 #define GL_MINOR_VERSION 0x821C
1014 #define GL_NUM_EXTENSIONS 0x821D
1015 #define GL_CONTEXT_FLAGS 0x821E
1016 #define GL_COMPRESSED_RED 0x8225
1017 #define GL_COMPRESSED_RG 0x8226
1018 #define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x00000001
1019 #define GL_RGBA32F 0x8814
1020 #define GL_RGB32F 0x8815
1021 #define GL_RGBA16F 0x881A
1022 #define GL_RGB16F 0x881B
1023 #define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD
1024 #define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF
1025 #define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904
1026 #define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905
1027 #define GL_CLAMP_READ_COLOR 0x891C
1028 #define GL_FIXED_ONLY 0x891D
1029 #define GL_MAX_VARYING_COMPONENTS 0x8B4B
1030 #define GL_TEXTURE_1D_ARRAY 0x8C18
1031 #define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19
1032 #define GL_TEXTURE_2D_ARRAY 0x8C1A
1033 #define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B
1034 #define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
1035 #define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D
1036 #define GL_R11F_G11F_B10F 0x8C3A
1037 #define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B
1038 #define GL_RGB9_E5 0x8C3D
1039 #define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E
1040 #define GL_TEXTURE_SHARED_SIZE 0x8C3F
1041 #define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
1042 #define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
1043 #define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
1044 #define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83
1045 #define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
1046 #define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
1047 #define GL_PRIMITIVES_GENERATED 0x8C87
1048 #define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
1049 #define GL_RASTERIZER_DISCARD 0x8C89
1050 #define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
1051 #define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
1052 #define GL_INTERLEAVED_ATTRIBS 0x8C8C
1053 #define GL_SEPARATE_ATTRIBS 0x8C8D
1054 #define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
1055 #define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
1056 #define GL_RGBA32UI 0x8D70
1057 #define GL_RGB32UI 0x8D71
1058 #define GL_RGBA16UI 0x8D76
1059 #define GL_RGB16UI 0x8D77
1060 #define GL_RGBA8UI 0x8D7C
1061 #define GL_RGB8UI 0x8D7D
1062 #define GL_RGBA32I 0x8D82
1063 #define GL_RGB32I 0x8D83
1064 #define GL_RGBA16I 0x8D88
1065 #define GL_RGB16I 0x8D89
1066 #define GL_RGBA8I 0x8D8E
1067 #define GL_RGB8I 0x8D8F
1068 #define GL_RED_INTEGER 0x8D94
1069 #define GL_GREEN_INTEGER 0x8D95
1070 #define GL_BLUE_INTEGER 0x8D96
1071 #define GL_RGB_INTEGER 0x8D98
1072 #define GL_RGBA_INTEGER 0x8D99
1073 #define GL_BGR_INTEGER 0x8D9A
1074 #define GL_BGRA_INTEGER 0x8D9B
1075 #define GL_SAMPLER_1D_ARRAY 0x8DC0
1076 #define GL_SAMPLER_2D_ARRAY 0x8DC1
1077 #define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
1078 #define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4
1079 #define GL_SAMPLER_CUBE_SHADOW 0x8DC5
1080 #define GL_UNSIGNED_INT_VEC2 0x8DC6
1081 #define GL_UNSIGNED_INT_VEC3 0x8DC7
1082 #define GL_UNSIGNED_INT_VEC4 0x8DC8
1083 #define GL_INT_SAMPLER_1D 0x8DC9
1084 #define GL_INT_SAMPLER_2D 0x8DCA
1085 #define GL_INT_SAMPLER_3D 0x8DCB
1086 #define GL_INT_SAMPLER_CUBE 0x8DCC
1087 #define GL_INT_SAMPLER_1D_ARRAY 0x8DCE
1088 #define GL_INT_SAMPLER_2D_ARRAY 0x8DCF
1089 #define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
1090 #define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2
1091 #define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3
1092 #define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4
1093 #define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
1094 #define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7
1095 #define GL_QUERY_WAIT 0x8E13
1096 #define GL_QUERY_NO_WAIT 0x8E14
1097 #define GL_QUERY_BY_REGION_WAIT 0x8E15
1098 #define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
1099 #define GL_BUFFER_ACCESS_FLAGS 0x911F
1100 #define GL_BUFFER_MAP_LENGTH 0x9120
1101 #define GL_BUFFER_MAP_OFFSET 0x9121
1102 #define GL_DEPTH_COMPONENT32F 0x8CAC
1103 #define GL_DEPTH32F_STENCIL8 0x8CAD
1104 #define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
1105 #define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
1106 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
1107 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
1108 #define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
1109 #define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
1110 #define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
1111 #define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
1112 #define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
1113 #define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
1114 #define GL_FRAMEBUFFER_DEFAULT 0x8218
1115 #define GL_FRAMEBUFFER_UNDEFINED 0x8219
1116 #define GL_DEPTH_STENCIL_ATTACHMENT 0x821A
1117 #define GL_MAX_RENDERBUFFER_SIZE 0x84E8
1118 #define GL_DEPTH_STENCIL 0x84F9
1119 #define GL_UNSIGNED_INT_24_8 0x84FA
1120 #define GL_DEPTH24_STENCIL8 0x88F0
1121 #define GL_TEXTURE_STENCIL_SIZE 0x88F1
1122 #define GL_TEXTURE_RED_TYPE 0x8C10
1123 #define GL_TEXTURE_GREEN_TYPE 0x8C11
1124 #define GL_TEXTURE_BLUE_TYPE 0x8C12
1125 #define GL_TEXTURE_ALPHA_TYPE 0x8C13
1126 #define GL_TEXTURE_DEPTH_TYPE 0x8C16
1127 #define GL_UNSIGNED_NORMALIZED 0x8C17
1128 #define GL_FRAMEBUFFER_BINDING 0x8CA6
1129 #define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
1130 #define GL_RENDERBUFFER_BINDING 0x8CA7
1131 #define GL_READ_FRAMEBUFFER 0x8CA8
1132 #define GL_DRAW_FRAMEBUFFER 0x8CA9
1133 #define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
1134 #define GL_RENDERBUFFER_SAMPLES 0x8CAB
1135 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
1136 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
1137 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
1138 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
1139 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
1140 #define GL_FRAMEBUFFER_COMPLETE 0x8CD5
1141 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
1142 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
1143 #define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB
1144 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
1145 #define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
1146 #define GL_MAX_COLOR_ATTACHMENTS 0x8CDF
1147 #define GL_COLOR_ATTACHMENT0 0x8CE0
1148 #define GL_COLOR_ATTACHMENT1 0x8CE1
1149 #define GL_COLOR_ATTACHMENT2 0x8CE2
1150 #define GL_COLOR_ATTACHMENT3 0x8CE3
1151 #define GL_COLOR_ATTACHMENT4 0x8CE4
1152 #define GL_COLOR_ATTACHMENT5 0x8CE5
1153 #define GL_COLOR_ATTACHMENT6 0x8CE6
1154 #define GL_COLOR_ATTACHMENT7 0x8CE7
1155 #define GL_COLOR_ATTACHMENT8 0x8CE8
1156 #define GL_COLOR_ATTACHMENT9 0x8CE9
1157 #define GL_COLOR_ATTACHMENT10 0x8CEA
1158 #define GL_COLOR_ATTACHMENT11 0x8CEB
1159 #define GL_COLOR_ATTACHMENT12 0x8CEC
1160 #define GL_COLOR_ATTACHMENT13 0x8CED
1161 #define GL_COLOR_ATTACHMENT14 0x8CEE
1162 #define GL_COLOR_ATTACHMENT15 0x8CEF
1163 #define GL_COLOR_ATTACHMENT16 0x8CF0
1164 #define GL_COLOR_ATTACHMENT17 0x8CF1
1165 #define GL_COLOR_ATTACHMENT18 0x8CF2
1166 #define GL_COLOR_ATTACHMENT19 0x8CF3
1167 #define GL_COLOR_ATTACHMENT20 0x8CF4
1168 #define GL_COLOR_ATTACHMENT21 0x8CF5
1169 #define GL_COLOR_ATTACHMENT22 0x8CF6
1170 #define GL_COLOR_ATTACHMENT23 0x8CF7
1171 #define GL_COLOR_ATTACHMENT24 0x8CF8
1172 #define GL_COLOR_ATTACHMENT25 0x8CF9
1173 #define GL_COLOR_ATTACHMENT26 0x8CFA
1174 #define GL_COLOR_ATTACHMENT27 0x8CFB
1175 #define GL_COLOR_ATTACHMENT28 0x8CFC
1176 #define GL_COLOR_ATTACHMENT29 0x8CFD
1177 #define GL_COLOR_ATTACHMENT30 0x8CFE
1178 #define GL_COLOR_ATTACHMENT31 0x8CFF
1179 #define GL_DEPTH_ATTACHMENT 0x8D00
1180 #define GL_STENCIL_ATTACHMENT 0x8D20
1181 #define GL_FRAMEBUFFER 0x8D40
1182 #define GL_RENDERBUFFER 0x8D41
1183 #define GL_RENDERBUFFER_WIDTH 0x8D42
1184 #define GL_RENDERBUFFER_HEIGHT 0x8D43
1185 #define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
1186 #define GL_STENCIL_INDEX1 0x8D46
1187 #define GL_STENCIL_INDEX4 0x8D47
1188 #define GL_STENCIL_INDEX8 0x8D48
1189 #define GL_STENCIL_INDEX16 0x8D49
1190 #define GL_RENDERBUFFER_RED_SIZE 0x8D50
1191 #define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
1192 #define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
1193 #define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
1194 #define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
1195 #define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
1196 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
1197 #define GL_MAX_SAMPLES 0x8D57
1198 #define GL_FRAMEBUFFER_SRGB 0x8DB9
1199 #define GL_HALF_FLOAT 0x140B
1200 #define GL_MAP_READ_BIT 0x0001
1201 #define GL_MAP_WRITE_BIT 0x0002
1202 #define GL_MAP_INVALIDATE_RANGE_BIT 0x0004
1203 #define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
1204 #define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
1205 #define GL_MAP_UNSYNCHRONIZED_BIT 0x0020
1206 #define GL_COMPRESSED_RED_RGTC1 0x8DBB
1207 #define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
1208 #define GL_COMPRESSED_RG_RGTC2 0x8DBD
1209 #define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
1210 #define GL_RG 0x8227
1211 #define GL_RG_INTEGER 0x8228
1212 #define GL_R8 0x8229
1213 #define GL_R16 0x822A
1214 #define GL_RG8 0x822B
1215 #define GL_RG16 0x822C
1216 #define GL_R16F 0x822D
1217 #define GL_R32F 0x822E
1218 #define GL_RG16F 0x822F
1219 #define GL_RG32F 0x8230
1220 #define GL_R8I 0x8231
1221 #define GL_R8UI 0x8232
1222 #define GL_R16I 0x8233
1223 #define GL_R16UI 0x8234
1224 #define GL_R32I 0x8235
1225 #define GL_R32UI 0x8236
1226 #define GL_RG8I 0x8237
1227 #define GL_RG8UI 0x8238
1228 #define GL_RG16I 0x8239
1229 #define GL_RG16UI 0x823A
1230 #define GL_RG32I 0x823B
1231 #define GL_RG32UI 0x823C
1232 #define GL_VERTEX_ARRAY_BINDING 0x85B5
1233 typedef void (APIENTRYP PFNGLCOLORMASKIPROC
) (GLuint index
, GLboolean r
, GLboolean g
, GLboolean b
, GLboolean a
);
1234 typedef void (APIENTRYP PFNGLGETBOOLEANI_VPROC
) (GLenum target
, GLuint index
, GLboolean
*data
);
1235 typedef void (APIENTRYP PFNGLGETINTEGERI_VPROC
) (GLenum target
, GLuint index
, GLint
*data
);
1236 typedef void (APIENTRYP PFNGLENABLEIPROC
) (GLenum target
, GLuint index
);
1237 typedef void (APIENTRYP PFNGLDISABLEIPROC
) (GLenum target
, GLuint index
);
1238 typedef GLboolean (APIENTRYP PFNGLISENABLEDIPROC
) (GLenum target
, GLuint index
);
1239 typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKPROC
) (GLenum primitiveMode
);
1240 typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKPROC
) (void);
1241 typedef void (APIENTRYP PFNGLBINDBUFFERRANGEPROC
) (GLenum target
, GLuint index
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
1242 typedef void (APIENTRYP PFNGLBINDBUFFERBASEPROC
) (GLenum target
, GLuint index
, GLuint buffer
);
1243 typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSPROC
) (GLuint program
, GLsizei count
, const GLchar
*const*varyings
, GLenum bufferMode
);
1244 typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGPROC
) (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLsizei
*size
, GLenum
*type
, GLchar
*name
);
1245 typedef void (APIENTRYP PFNGLCLAMPCOLORPROC
) (GLenum target
, GLenum clamp
);
1246 typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERPROC
) (GLuint id
, GLenum mode
);
1247 typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERPROC
) (void);
1248 typedef void (APIENTRYP PFNGLVERTEXATTRIBIPOINTERPROC
) (GLuint index
, GLint size
, GLenum type
, GLsizei stride
, const void *pointer
);
1249 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIIVPROC
) (GLuint index
, GLenum pname
, GLint
*params
);
1250 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIUIVPROC
) (GLuint index
, GLenum pname
, GLuint
*params
);
1251 typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IPROC
) (GLuint index
, GLint x
);
1252 typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC
) (GLuint index
, GLint x
, GLint y
);
1253 typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IPROC
) (GLuint index
, GLint x
, GLint y
, GLint z
);
1254 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IPROC
) (GLuint index
, GLint x
, GLint y
, GLint z
, GLint w
);
1255 typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIPROC
) (GLuint index
, GLuint x
);
1256 typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIPROC
) (GLuint index
, GLuint x
, GLuint y
);
1257 typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIPROC
) (GLuint index
, GLuint x
, GLuint y
, GLuint z
);
1258 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIPROC
) (GLuint index
, GLuint x
, GLuint y
, GLuint z
, GLuint w
);
1259 typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IVPROC
) (GLuint index
, const GLint
*v
);
1260 typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IVPROC
) (GLuint index
, const GLint
*v
);
1261 typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IVPROC
) (GLuint index
, const GLint
*v
);
1262 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IVPROC
) (GLuint index
, const GLint
*v
);
1263 typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIVPROC
) (GLuint index
, const GLuint
*v
);
1264 typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIVPROC
) (GLuint index
, const GLuint
*v
);
1265 typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIVPROC
) (GLuint index
, const GLuint
*v
);
1266 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIVPROC
) (GLuint index
, const GLuint
*v
);
1267 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVPROC
) (GLuint index
, const GLbyte
*v
);
1268 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4SVPROC
) (GLuint index
, const GLshort
*v
);
1269 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UBVPROC
) (GLuint index
, const GLubyte
*v
);
1270 typedef void (APIENTRYP PFNGLVERTEXATTRIBI4USVPROC
) (GLuint index
, const GLushort
*v
);
1271 typedef void (APIENTRYP PFNGLGETUNIFORMUIVPROC
) (GLuint program
, GLint location
, GLuint
*params
);
1272 typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONPROC
) (GLuint program
, GLuint color
, const GLchar
*name
);
1273 typedef GLint (APIENTRYP PFNGLGETFRAGDATALOCATIONPROC
) (GLuint program
, const GLchar
*name
);
1274 typedef void (APIENTRYP PFNGLUNIFORM1UIPROC
) (GLint location
, GLuint v0
);
1275 typedef void (APIENTRYP PFNGLUNIFORM2UIPROC
) (GLint location
, GLuint v0
, GLuint v1
);
1276 typedef void (APIENTRYP PFNGLUNIFORM3UIPROC
) (GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
1277 typedef void (APIENTRYP PFNGLUNIFORM4UIPROC
) (GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
1278 typedef void (APIENTRYP PFNGLUNIFORM1UIVPROC
) (GLint location
, GLsizei count
, const GLuint
*value
);
1279 typedef void (APIENTRYP PFNGLUNIFORM2UIVPROC
) (GLint location
, GLsizei count
, const GLuint
*value
);
1280 typedef void (APIENTRYP PFNGLUNIFORM3UIVPROC
) (GLint location
, GLsizei count
, const GLuint
*value
);
1281 typedef void (APIENTRYP PFNGLUNIFORM4UIVPROC
) (GLint location
, GLsizei count
, const GLuint
*value
);
1282 typedef void (APIENTRYP PFNGLTEXPARAMETERIIVPROC
) (GLenum target
, GLenum pname
, const GLint
*params
);
1283 typedef void (APIENTRYP PFNGLTEXPARAMETERIUIVPROC
) (GLenum target
, GLenum pname
, const GLuint
*params
);
1284 typedef void (APIENTRYP PFNGLGETTEXPARAMETERIIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
1285 typedef void (APIENTRYP PFNGLGETTEXPARAMETERIUIVPROC
) (GLenum target
, GLenum pname
, GLuint
*params
);
1286 typedef void (APIENTRYP PFNGLCLEARBUFFERIVPROC
) (GLenum buffer
, GLint drawbuffer
, const GLint
*value
);
1287 typedef void (APIENTRYP PFNGLCLEARBUFFERUIVPROC
) (GLenum buffer
, GLint drawbuffer
, const GLuint
*value
);
1288 typedef void (APIENTRYP PFNGLCLEARBUFFERFVPROC
) (GLenum buffer
, GLint drawbuffer
, const GLfloat
*value
);
1289 typedef void (APIENTRYP PFNGLCLEARBUFFERFIPROC
) (GLenum buffer
, GLint drawbuffer
, GLfloat depth
, GLint stencil
);
1290 typedef const GLubyte
*(APIENTRYP PFNGLGETSTRINGIPROC
) (GLenum name
, GLuint index
);
1291 typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFERPROC
) (GLuint renderbuffer
);
1292 typedef void (APIENTRYP PFNGLBINDRENDERBUFFERPROC
) (GLenum target
, GLuint renderbuffer
);
1293 typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSPROC
) (GLsizei n
, const GLuint
*renderbuffers
);
1294 typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC
) (GLsizei n
, GLuint
*renderbuffers
);
1295 typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEPROC
) (GLenum target
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1296 typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
1297 typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFERPROC
) (GLuint framebuffer
);
1298 typedef void (APIENTRYP PFNGLBINDFRAMEBUFFERPROC
) (GLenum target
, GLuint framebuffer
);
1299 typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSPROC
) (GLsizei n
, const GLuint
*framebuffers
);
1300 typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSPROC
) (GLsizei n
, GLuint
*framebuffers
);
1301 typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC
) (GLenum target
);
1302 typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
);
1303 typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
);
1304 typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
1305 typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFERPROC
) (GLenum target
, GLenum attachment
, GLenum renderbuffertarget
, GLuint renderbuffer
);
1306 typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC
) (GLenum target
, GLenum attachment
, GLenum pname
, GLint
*params
);
1307 typedef void (APIENTRYP PFNGLGENERATEMIPMAPPROC
) (GLenum target
);
1308 typedef void (APIENTRYP PFNGLBLITFRAMEBUFFERPROC
) (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1309 typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1310 typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERPROC
) (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
, GLint layer
);
1311 typedef void *(APIENTRYP PFNGLMAPBUFFERRANGEPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
1312 typedef void (APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
);
1313 typedef void (APIENTRYP PFNGLBINDVERTEXARRAYPROC
) (GLuint array
);
1314 typedef void (APIENTRYP PFNGLDELETEVERTEXARRAYSPROC
) (GLsizei n
, const GLuint
*arrays
);
1315 typedef void (APIENTRYP PFNGLGENVERTEXARRAYSPROC
) (GLsizei n
, GLuint
*arrays
);
1316 typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC
) (GLuint array
);
1317 #ifdef GL_GLEXT_PROTOTYPES
1318 GLAPI
void APIENTRY
glColorMaski (GLuint index
, GLboolean r
, GLboolean g
, GLboolean b
, GLboolean a
);
1319 GLAPI
void APIENTRY
glGetBooleani_v (GLenum target
, GLuint index
, GLboolean
*data
);
1320 GLAPI
void APIENTRY
glGetIntegeri_v (GLenum target
, GLuint index
, GLint
*data
);
1321 GLAPI
void APIENTRY
glEnablei (GLenum target
, GLuint index
);
1322 GLAPI
void APIENTRY
glDisablei (GLenum target
, GLuint index
);
1323 GLAPI GLboolean APIENTRY
glIsEnabledi (GLenum target
, GLuint index
);
1324 GLAPI
void APIENTRY
glBeginTransformFeedback (GLenum primitiveMode
);
1325 GLAPI
void APIENTRY
glEndTransformFeedback (void);
1326 GLAPI
void APIENTRY
glBindBufferRange (GLenum target
, GLuint index
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
1327 GLAPI
void APIENTRY
glBindBufferBase (GLenum target
, GLuint index
, GLuint buffer
);
1328 GLAPI
void APIENTRY
glTransformFeedbackVaryings (GLuint program
, GLsizei count
, const GLchar
*const*varyings
, GLenum bufferMode
);
1329 GLAPI
void APIENTRY
glGetTransformFeedbackVarying (GLuint program
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLsizei
*size
, GLenum
*type
, GLchar
*name
);
1330 GLAPI
void APIENTRY
glClampColor (GLenum target
, GLenum clamp
);
1331 GLAPI
void APIENTRY
glBeginConditionalRender (GLuint id
, GLenum mode
);
1332 GLAPI
void APIENTRY
glEndConditionalRender (void);
1333 GLAPI
void APIENTRY
glVertexAttribIPointer (GLuint index
, GLint size
, GLenum type
, GLsizei stride
, const void *pointer
);
1334 GLAPI
void APIENTRY
glGetVertexAttribIiv (GLuint index
, GLenum pname
, GLint
*params
);
1335 GLAPI
void APIENTRY
glGetVertexAttribIuiv (GLuint index
, GLenum pname
, GLuint
*params
);
1336 GLAPI
void APIENTRY
glVertexAttribI1i (GLuint index
, GLint x
);
1337 GLAPI
void APIENTRY
glVertexAttribI2i (GLuint index
, GLint x
, GLint y
);
1338 GLAPI
void APIENTRY
glVertexAttribI3i (GLuint index
, GLint x
, GLint y
, GLint z
);
1339 GLAPI
void APIENTRY
glVertexAttribI4i (GLuint index
, GLint x
, GLint y
, GLint z
, GLint w
);
1340 GLAPI
void APIENTRY
glVertexAttribI1ui (GLuint index
, GLuint x
);
1341 GLAPI
void APIENTRY
glVertexAttribI2ui (GLuint index
, GLuint x
, GLuint y
);
1342 GLAPI
void APIENTRY
glVertexAttribI3ui (GLuint index
, GLuint x
, GLuint y
, GLuint z
);
1343 GLAPI
void APIENTRY
glVertexAttribI4ui (GLuint index
, GLuint x
, GLuint y
, GLuint z
, GLuint w
);
1344 GLAPI
void APIENTRY
glVertexAttribI1iv (GLuint index
, const GLint
*v
);
1345 GLAPI
void APIENTRY
glVertexAttribI2iv (GLuint index
, const GLint
*v
);
1346 GLAPI
void APIENTRY
glVertexAttribI3iv (GLuint index
, const GLint
*v
);
1347 GLAPI
void APIENTRY
glVertexAttribI4iv (GLuint index
, const GLint
*v
);
1348 GLAPI
void APIENTRY
glVertexAttribI1uiv (GLuint index
, const GLuint
*v
);
1349 GLAPI
void APIENTRY
glVertexAttribI2uiv (GLuint index
, const GLuint
*v
);
1350 GLAPI
void APIENTRY
glVertexAttribI3uiv (GLuint index
, const GLuint
*v
);
1351 GLAPI
void APIENTRY
glVertexAttribI4uiv (GLuint index
, const GLuint
*v
);
1352 GLAPI
void APIENTRY
glVertexAttribI4bv (GLuint index
, const GLbyte
*v
);
1353 GLAPI
void APIENTRY
glVertexAttribI4sv (GLuint index
, const GLshort
*v
);
1354 GLAPI
void APIENTRY
glVertexAttribI4ubv (GLuint index
, const GLubyte
*v
);
1355 GLAPI
void APIENTRY
glVertexAttribI4usv (GLuint index
, const GLushort
*v
);
1356 GLAPI
void APIENTRY
glGetUniformuiv (GLuint program
, GLint location
, GLuint
*params
);
1357 GLAPI
void APIENTRY
glBindFragDataLocation (GLuint program
, GLuint color
, const GLchar
*name
);
1358 GLAPI GLint APIENTRY
glGetFragDataLocation (GLuint program
, const GLchar
*name
);
1359 GLAPI
void APIENTRY
glUniform1ui (GLint location
, GLuint v0
);
1360 GLAPI
void APIENTRY
glUniform2ui (GLint location
, GLuint v0
, GLuint v1
);
1361 GLAPI
void APIENTRY
glUniform3ui (GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
1362 GLAPI
void APIENTRY
glUniform4ui (GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
1363 GLAPI
void APIENTRY
glUniform1uiv (GLint location
, GLsizei count
, const GLuint
*value
);
1364 GLAPI
void APIENTRY
glUniform2uiv (GLint location
, GLsizei count
, const GLuint
*value
);
1365 GLAPI
void APIENTRY
glUniform3uiv (GLint location
, GLsizei count
, const GLuint
*value
);
1366 GLAPI
void APIENTRY
glUniform4uiv (GLint location
, GLsizei count
, const GLuint
*value
);
1367 GLAPI
void APIENTRY
glTexParameterIiv (GLenum target
, GLenum pname
, const GLint
*params
);
1368 GLAPI
void APIENTRY
glTexParameterIuiv (GLenum target
, GLenum pname
, const GLuint
*params
);
1369 GLAPI
void APIENTRY
glGetTexParameterIiv (GLenum target
, GLenum pname
, GLint
*params
);
1370 GLAPI
void APIENTRY
glGetTexParameterIuiv (GLenum target
, GLenum pname
, GLuint
*params
);
1371 GLAPI
void APIENTRY
glClearBufferiv (GLenum buffer
, GLint drawbuffer
, const GLint
*value
);
1372 GLAPI
void APIENTRY
glClearBufferuiv (GLenum buffer
, GLint drawbuffer
, const GLuint
*value
);
1373 GLAPI
void APIENTRY
glClearBufferfv (GLenum buffer
, GLint drawbuffer
, const GLfloat
*value
);
1374 GLAPI
void APIENTRY
glClearBufferfi (GLenum buffer
, GLint drawbuffer
, GLfloat depth
, GLint stencil
);
1375 GLAPI
const GLubyte
*APIENTRY
glGetStringi (GLenum name
, GLuint index
);
1376 GLAPI GLboolean APIENTRY
glIsRenderbuffer (GLuint renderbuffer
);
1377 GLAPI
void APIENTRY
glBindRenderbuffer (GLenum target
, GLuint renderbuffer
);
1378 GLAPI
void APIENTRY
glDeleteRenderbuffers (GLsizei n
, const GLuint
*renderbuffers
);
1379 GLAPI
void APIENTRY
glGenRenderbuffers (GLsizei n
, GLuint
*renderbuffers
);
1380 GLAPI
void APIENTRY
glRenderbufferStorage (GLenum target
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1381 GLAPI
void APIENTRY
glGetRenderbufferParameteriv (GLenum target
, GLenum pname
, GLint
*params
);
1382 GLAPI GLboolean APIENTRY
glIsFramebuffer (GLuint framebuffer
);
1383 GLAPI
void APIENTRY
glBindFramebuffer (GLenum target
, GLuint framebuffer
);
1384 GLAPI
void APIENTRY
glDeleteFramebuffers (GLsizei n
, const GLuint
*framebuffers
);
1385 GLAPI
void APIENTRY
glGenFramebuffers (GLsizei n
, GLuint
*framebuffers
);
1386 GLAPI GLenum APIENTRY
glCheckFramebufferStatus (GLenum target
);
1387 GLAPI
void APIENTRY
glFramebufferTexture1D (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
);
1388 GLAPI
void APIENTRY
glFramebufferTexture2D (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
);
1389 GLAPI
void APIENTRY
glFramebufferTexture3D (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
1390 GLAPI
void APIENTRY
glFramebufferRenderbuffer (GLenum target
, GLenum attachment
, GLenum renderbuffertarget
, GLuint renderbuffer
);
1391 GLAPI
void APIENTRY
glGetFramebufferAttachmentParameteriv (GLenum target
, GLenum attachment
, GLenum pname
, GLint
*params
);
1392 GLAPI
void APIENTRY
glGenerateMipmap (GLenum target
);
1393 GLAPI
void APIENTRY
glBlitFramebuffer (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1394 GLAPI
void APIENTRY
glRenderbufferStorageMultisample (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1395 GLAPI
void APIENTRY
glFramebufferTextureLayer (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
, GLint layer
);
1396 GLAPI
void *APIENTRY
glMapBufferRange (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
1397 GLAPI
void APIENTRY
glFlushMappedBufferRange (GLenum target
, GLintptr offset
, GLsizeiptr length
);
1398 GLAPI
void APIENTRY
glBindVertexArray (GLuint array
);
1399 GLAPI
void APIENTRY
glDeleteVertexArrays (GLsizei n
, const GLuint
*arrays
);
1400 GLAPI
void APIENTRY
glGenVertexArrays (GLsizei n
, GLuint
*arrays
);
1401 GLAPI GLboolean APIENTRY
glIsVertexArray (GLuint array
);
1403 #endif /* GL_VERSION_3_0 */
1405 #ifndef GL_VERSION_3_1
1406 #define GL_VERSION_3_1 1
1407 #define GL_SAMPLER_2D_RECT 0x8B63
1408 #define GL_SAMPLER_2D_RECT_SHADOW 0x8B64
1409 #define GL_SAMPLER_BUFFER 0x8DC2
1410 #define GL_INT_SAMPLER_2D_RECT 0x8DCD
1411 #define GL_INT_SAMPLER_BUFFER 0x8DD0
1412 #define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5
1413 #define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
1414 #define GL_TEXTURE_BUFFER 0x8C2A
1415 #define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B
1416 #define GL_TEXTURE_BINDING_BUFFER 0x8C2C
1417 #define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D
1418 #define GL_TEXTURE_RECTANGLE 0x84F5
1419 #define GL_TEXTURE_BINDING_RECTANGLE 0x84F6
1420 #define GL_PROXY_TEXTURE_RECTANGLE 0x84F7
1421 #define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8
1422 #define GL_R8_SNORM 0x8F94
1423 #define GL_RG8_SNORM 0x8F95
1424 #define GL_RGB8_SNORM 0x8F96
1425 #define GL_RGBA8_SNORM 0x8F97
1426 #define GL_R16_SNORM 0x8F98
1427 #define GL_RG16_SNORM 0x8F99
1428 #define GL_RGB16_SNORM 0x8F9A
1429 #define GL_RGBA16_SNORM 0x8F9B
1430 #define GL_SIGNED_NORMALIZED 0x8F9C
1431 #define GL_PRIMITIVE_RESTART 0x8F9D
1432 #define GL_PRIMITIVE_RESTART_INDEX 0x8F9E
1433 #define GL_COPY_READ_BUFFER 0x8F36
1434 #define GL_COPY_WRITE_BUFFER 0x8F37
1435 #define GL_UNIFORM_BUFFER 0x8A11
1436 #define GL_UNIFORM_BUFFER_BINDING 0x8A28
1437 #define GL_UNIFORM_BUFFER_START 0x8A29
1438 #define GL_UNIFORM_BUFFER_SIZE 0x8A2A
1439 #define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B
1440 #define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C
1441 #define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D
1442 #define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E
1443 #define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F
1444 #define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30
1445 #define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
1446 #define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32
1447 #define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
1448 #define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
1449 #define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
1450 #define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36
1451 #define GL_UNIFORM_TYPE 0x8A37
1452 #define GL_UNIFORM_SIZE 0x8A38
1453 #define GL_UNIFORM_NAME_LENGTH 0x8A39
1454 #define GL_UNIFORM_BLOCK_INDEX 0x8A3A
1455 #define GL_UNIFORM_OFFSET 0x8A3B
1456 #define GL_UNIFORM_ARRAY_STRIDE 0x8A3C
1457 #define GL_UNIFORM_MATRIX_STRIDE 0x8A3D
1458 #define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E
1459 #define GL_UNIFORM_BLOCK_BINDING 0x8A3F
1460 #define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40
1461 #define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41
1462 #define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42
1463 #define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
1464 #define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
1465 #define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45
1466 #define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
1467 #define GL_INVALID_INDEX 0xFFFFFFFFu
1468 typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC
) (GLenum mode
, GLint first
, GLsizei count
, GLsizei instancecount
);
1469 typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
);
1470 typedef void (APIENTRYP PFNGLTEXBUFFERPROC
) (GLenum target
, GLenum internalformat
, GLuint buffer
);
1471 typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC
) (GLuint index
);
1472 typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC
) (GLenum readTarget
, GLenum writeTarget
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
1473 typedef void (APIENTRYP PFNGLGETUNIFORMINDICESPROC
) (GLuint program
, GLsizei uniformCount
, const GLchar
*const*uniformNames
, GLuint
*uniformIndices
);
1474 typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMSIVPROC
) (GLuint program
, GLsizei uniformCount
, const GLuint
*uniformIndices
, GLenum pname
, GLint
*params
);
1475 typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMNAMEPROC
) (GLuint program
, GLuint uniformIndex
, GLsizei bufSize
, GLsizei
*length
, GLchar
*uniformName
);
1476 typedef GLuint (APIENTRYP PFNGLGETUNIFORMBLOCKINDEXPROC
) (GLuint program
, const GLchar
*uniformBlockName
);
1477 typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVPROC
) (GLuint program
, GLuint uniformBlockIndex
, GLenum pname
, GLint
*params
);
1478 typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC
) (GLuint program
, GLuint uniformBlockIndex
, GLsizei bufSize
, GLsizei
*length
, GLchar
*uniformBlockName
);
1479 typedef void (APIENTRYP PFNGLUNIFORMBLOCKBINDINGPROC
) (GLuint program
, GLuint uniformBlockIndex
, GLuint uniformBlockBinding
);
1480 #ifdef GL_GLEXT_PROTOTYPES
1481 GLAPI
void APIENTRY
glDrawArraysInstanced (GLenum mode
, GLint first
, GLsizei count
, GLsizei instancecount
);
1482 GLAPI
void APIENTRY
glDrawElementsInstanced (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
);
1483 GLAPI
void APIENTRY
glTexBuffer (GLenum target
, GLenum internalformat
, GLuint buffer
);
1484 GLAPI
void APIENTRY
glPrimitiveRestartIndex (GLuint index
);
1485 GLAPI
void APIENTRY
glCopyBufferSubData (GLenum readTarget
, GLenum writeTarget
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
1486 GLAPI
void APIENTRY
glGetUniformIndices (GLuint program
, GLsizei uniformCount
, const GLchar
*const*uniformNames
, GLuint
*uniformIndices
);
1487 GLAPI
void APIENTRY
glGetActiveUniformsiv (GLuint program
, GLsizei uniformCount
, const GLuint
*uniformIndices
, GLenum pname
, GLint
*params
);
1488 GLAPI
void APIENTRY
glGetActiveUniformName (GLuint program
, GLuint uniformIndex
, GLsizei bufSize
, GLsizei
*length
, GLchar
*uniformName
);
1489 GLAPI GLuint APIENTRY
glGetUniformBlockIndex (GLuint program
, const GLchar
*uniformBlockName
);
1490 GLAPI
void APIENTRY
glGetActiveUniformBlockiv (GLuint program
, GLuint uniformBlockIndex
, GLenum pname
, GLint
*params
);
1491 GLAPI
void APIENTRY
glGetActiveUniformBlockName (GLuint program
, GLuint uniformBlockIndex
, GLsizei bufSize
, GLsizei
*length
, GLchar
*uniformBlockName
);
1492 GLAPI
void APIENTRY
glUniformBlockBinding (GLuint program
, GLuint uniformBlockIndex
, GLuint uniformBlockBinding
);
1494 #endif /* GL_VERSION_3_1 */
1496 #ifndef GL_VERSION_3_2
1497 #define GL_VERSION_3_2 1
1498 typedef struct __GLsync
*GLsync
;
1499 #ifndef GLEXT_64_TYPES_DEFINED
1500 /* This code block is duplicated in glxext.h, so must be protected */
1501 #define GLEXT_64_TYPES_DEFINED
1502 /* Define int32_t, int64_t, and uint64_t types for UST/MSC */
1503 /* (as used in the GL_EXT_timer_query extension). */
1504 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
1505 #include <inttypes.h>
1506 #elif defined(__sun__) || defined(__digital__)
1507 #include <inttypes.h>
1508 #if defined(__STDC__)
1509 #if defined(__arch64__) || defined(_LP64)
1510 typedef long int int64_t;
1511 typedef unsigned long int uint64_t;
1513 typedef long long int int64_t;
1514 typedef unsigned long long int uint64_t;
1515 #endif /* __arch64__ */
1516 #endif /* __STDC__ */
1517 #elif defined( __VMS ) || defined(__sgi)
1518 #include <inttypes.h>
1519 #elif defined(__SCO__) || defined(__USLC__)
1521 #elif defined(__UNIXOS2__) || defined(__SOL64__)
1522 typedef long int int32_t;
1523 typedef long long int int64_t;
1524 typedef unsigned long long int uint64_t;
1525 #elif defined(_WIN32) && defined(__GNUC__)
1527 #elif defined(_WIN32)
1528 typedef __int32
int32_t;
1529 typedef __int64
int64_t;
1530 typedef unsigned __int64
uint64_t;
1532 /* Fallback if nothing above works */
1533 #include <inttypes.h>
1536 typedef uint64_t GLuint64
;
1537 typedef int64_t GLint64
;
1538 #define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001
1539 #define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002
1540 #define GL_LINES_ADJACENCY 0x000A
1541 #define GL_LINE_STRIP_ADJACENCY 0x000B
1542 #define GL_TRIANGLES_ADJACENCY 0x000C
1543 #define GL_TRIANGLE_STRIP_ADJACENCY 0x000D
1544 #define GL_PROGRAM_POINT_SIZE 0x8642
1545 #define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29
1546 #define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7
1547 #define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8
1548 #define GL_GEOMETRY_SHADER 0x8DD9
1549 #define GL_GEOMETRY_VERTICES_OUT 0x8916
1550 #define GL_GEOMETRY_INPUT_TYPE 0x8917
1551 #define GL_GEOMETRY_OUTPUT_TYPE 0x8918
1552 #define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF
1553 #define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0
1554 #define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1
1555 #define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122
1556 #define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123
1557 #define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124
1558 #define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125
1559 #define GL_CONTEXT_PROFILE_MASK 0x9126
1560 #define GL_DEPTH_CLAMP 0x864F
1561 #define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C
1562 #define GL_FIRST_VERTEX_CONVENTION 0x8E4D
1563 #define GL_LAST_VERTEX_CONVENTION 0x8E4E
1564 #define GL_PROVOKING_VERTEX 0x8E4F
1565 #define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F
1566 #define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
1567 #define GL_OBJECT_TYPE 0x9112
1568 #define GL_SYNC_CONDITION 0x9113
1569 #define GL_SYNC_STATUS 0x9114
1570 #define GL_SYNC_FLAGS 0x9115
1571 #define GL_SYNC_FENCE 0x9116
1572 #define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117
1573 #define GL_UNSIGNALED 0x9118
1574 #define GL_SIGNALED 0x9119
1575 #define GL_ALREADY_SIGNALED 0x911A
1576 #define GL_TIMEOUT_EXPIRED 0x911B
1577 #define GL_CONDITION_SATISFIED 0x911C
1578 #define GL_WAIT_FAILED 0x911D
1579 #define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFFull
1580 #define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001
1581 #define GL_SAMPLE_POSITION 0x8E50
1582 #define GL_SAMPLE_MASK 0x8E51
1583 #define GL_SAMPLE_MASK_VALUE 0x8E52
1584 #define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
1585 #define GL_TEXTURE_2D_MULTISAMPLE 0x9100
1586 #define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101
1587 #define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
1588 #define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103
1589 #define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
1590 #define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105
1591 #define GL_TEXTURE_SAMPLES 0x9106
1592 #define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107
1593 #define GL_SAMPLER_2D_MULTISAMPLE 0x9108
1594 #define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109
1595 #define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
1596 #define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B
1597 #define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C
1598 #define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
1599 #define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E
1600 #define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F
1601 #define GL_MAX_INTEGER_SAMPLES 0x9110
1602 typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLint basevertex
);
1603 typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC
) (GLenum mode
, GLuint start
, GLuint end
, GLsizei count
, GLenum type
, const void *indices
, GLint basevertex
);
1604 typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLint basevertex
);
1605 typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC
) (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei drawcount
, const GLint
*basevertex
);
1606 typedef void (APIENTRYP PFNGLPROVOKINGVERTEXPROC
) (GLenum mode
);
1607 typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC
) (GLenum condition
, GLbitfield flags
);
1608 typedef GLboolean (APIENTRYP PFNGLISSYNCPROC
) (GLsync sync
);
1609 typedef void (APIENTRYP PFNGLDELETESYNCPROC
) (GLsync sync
);
1610 typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1611 typedef void (APIENTRYP PFNGLWAITSYNCPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1612 typedef void (APIENTRYP PFNGLGETINTEGER64VPROC
) (GLenum pname
, GLint64
*data
);
1613 typedef void (APIENTRYP PFNGLGETSYNCIVPROC
) (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
1614 typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC
) (GLenum target
, GLuint index
, GLint64
*data
);
1615 typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERI64VPROC
) (GLenum target
, GLenum pname
, GLint64
*params
);
1616 typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREPROC
) (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
);
1617 typedef void (APIENTRYP PFNGLTEXIMAGE2DMULTISAMPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
1618 typedef void (APIENTRYP PFNGLTEXIMAGE3DMULTISAMPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
1619 typedef void (APIENTRYP PFNGLGETMULTISAMPLEFVPROC
) (GLenum pname
, GLuint index
, GLfloat
*val
);
1620 typedef void (APIENTRYP PFNGLSAMPLEMASKIPROC
) (GLuint maskNumber
, GLbitfield mask
);
1621 #ifdef GL_GLEXT_PROTOTYPES
1622 GLAPI
void APIENTRY
glDrawElementsBaseVertex (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLint basevertex
);
1623 GLAPI
void APIENTRY
glDrawRangeElementsBaseVertex (GLenum mode
, GLuint start
, GLuint end
, GLsizei count
, GLenum type
, const void *indices
, GLint basevertex
);
1624 GLAPI
void APIENTRY
glDrawElementsInstancedBaseVertex (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLint basevertex
);
1625 GLAPI
void APIENTRY
glMultiDrawElementsBaseVertex (GLenum mode
, const GLsizei
*count
, GLenum type
, const void *const*indices
, GLsizei drawcount
, const GLint
*basevertex
);
1626 GLAPI
void APIENTRY
glProvokingVertex (GLenum mode
);
1627 GLAPI GLsync APIENTRY
glFenceSync (GLenum condition
, GLbitfield flags
);
1628 GLAPI GLboolean APIENTRY
glIsSync (GLsync sync
);
1629 GLAPI
void APIENTRY
glDeleteSync (GLsync sync
);
1630 GLAPI GLenum APIENTRY
glClientWaitSync (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1631 GLAPI
void APIENTRY
glWaitSync (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1632 GLAPI
void APIENTRY
glGetInteger64v (GLenum pname
, GLint64
*data
);
1633 GLAPI
void APIENTRY
glGetSynciv (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
1634 GLAPI
void APIENTRY
glGetInteger64i_v (GLenum target
, GLuint index
, GLint64
*data
);
1635 GLAPI
void APIENTRY
glGetBufferParameteri64v (GLenum target
, GLenum pname
, GLint64
*params
);
1636 GLAPI
void APIENTRY
glFramebufferTexture (GLenum target
, GLenum attachment
, GLuint texture
, GLint level
);
1637 GLAPI
void APIENTRY
glTexImage2DMultisample (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
1638 GLAPI
void APIENTRY
glTexImage3DMultisample (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
1639 GLAPI
void APIENTRY
glGetMultisamplefv (GLenum pname
, GLuint index
, GLfloat
*val
);
1640 GLAPI
void APIENTRY
glSampleMaski (GLuint maskNumber
, GLbitfield mask
);
1642 #endif /* GL_VERSION_3_2 */
1644 #ifndef GL_VERSION_3_3
1645 #define GL_VERSION_3_3 1
1646 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE
1647 #define GL_SRC1_COLOR 0x88F9
1648 #define GL_ONE_MINUS_SRC1_COLOR 0x88FA
1649 #define GL_ONE_MINUS_SRC1_ALPHA 0x88FB
1650 #define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC
1651 #define GL_ANY_SAMPLES_PASSED 0x8C2F
1652 #define GL_SAMPLER_BINDING 0x8919
1653 #define GL_RGB10_A2UI 0x906F
1654 #define GL_TEXTURE_SWIZZLE_R 0x8E42
1655 #define GL_TEXTURE_SWIZZLE_G 0x8E43
1656 #define GL_TEXTURE_SWIZZLE_B 0x8E44
1657 #define GL_TEXTURE_SWIZZLE_A 0x8E45
1658 #define GL_TEXTURE_SWIZZLE_RGBA 0x8E46
1659 #define GL_TIME_ELAPSED 0x88BF
1660 #define GL_TIMESTAMP 0x8E28
1661 #define GL_INT_2_10_10_10_REV 0x8D9F
1662 typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONINDEXEDPROC
) (GLuint program
, GLuint colorNumber
, GLuint index
, const GLchar
*name
);
1663 typedef GLint (APIENTRYP PFNGLGETFRAGDATAINDEXPROC
) (GLuint program
, const GLchar
*name
);
1664 typedef void (APIENTRYP PFNGLGENSAMPLERSPROC
) (GLsizei count
, GLuint
*samplers
);
1665 typedef void (APIENTRYP PFNGLDELETESAMPLERSPROC
) (GLsizei count
, const GLuint
*samplers
);
1666 typedef GLboolean (APIENTRYP PFNGLISSAMPLERPROC
) (GLuint sampler
);
1667 typedef void (APIENTRYP PFNGLBINDSAMPLERPROC
) (GLuint unit
, GLuint sampler
);
1668 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIPROC
) (GLuint sampler
, GLenum pname
, GLint param
);
1669 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIVPROC
) (GLuint sampler
, GLenum pname
, const GLint
*param
);
1670 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFPROC
) (GLuint sampler
, GLenum pname
, GLfloat param
);
1671 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFVPROC
) (GLuint sampler
, GLenum pname
, const GLfloat
*param
);
1672 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIIVPROC
) (GLuint sampler
, GLenum pname
, const GLint
*param
);
1673 typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIUIVPROC
) (GLuint sampler
, GLenum pname
, const GLuint
*param
);
1674 typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIVPROC
) (GLuint sampler
, GLenum pname
, GLint
*params
);
1675 typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIIVPROC
) (GLuint sampler
, GLenum pname
, GLint
*params
);
1676 typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERFVPROC
) (GLuint sampler
, GLenum pname
, GLfloat
*params
);
1677 typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVPROC
) (GLuint sampler
, GLenum pname
, GLuint
*params
);
1678 typedef void (APIENTRYP PFNGLQUERYCOUNTERPROC
) (GLuint id
, GLenum target
);
1679 typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VPROC
) (GLuint id
, GLenum pname
, GLint64
*params
);
1680 typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VPROC
) (GLuint id
, GLenum pname
, GLuint64
*params
);
1681 typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC
) (GLuint index
, GLuint divisor
);
1682 typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1683 typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIVPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1684 typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1685 typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIVPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1686 typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1687 typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIVPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1688 typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1689 typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIVPROC
) (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1690 #ifdef GL_GLEXT_PROTOTYPES
1691 GLAPI
void APIENTRY
glBindFragDataLocationIndexed (GLuint program
, GLuint colorNumber
, GLuint index
, const GLchar
*name
);
1692 GLAPI GLint APIENTRY
glGetFragDataIndex (GLuint program
, const GLchar
*name
);
1693 GLAPI
void APIENTRY
glGenSamplers (GLsizei count
, GLuint
*samplers
);
1694 GLAPI
void APIENTRY
glDeleteSamplers (GLsizei count
, const GLuint
*samplers
);
1695 GLAPI GLboolean APIENTRY
glIsSampler (GLuint sampler
);
1696 GLAPI
void APIENTRY
glBindSampler (GLuint unit
, GLuint sampler
);
1697 GLAPI
void APIENTRY
glSamplerParameteri (GLuint sampler
, GLenum pname
, GLint param
);
1698 GLAPI
void APIENTRY
glSamplerParameteriv (GLuint sampler
, GLenum pname
, const GLint
*param
);
1699 GLAPI
void APIENTRY
glSamplerParameterf (GLuint sampler
, GLenum pname
, GLfloat param
);
1700 GLAPI
void APIENTRY
glSamplerParameterfv (GLuint sampler
, GLenum pname
, const GLfloat
*param
);
1701 GLAPI
void APIENTRY
glSamplerParameterIiv (GLuint sampler
, GLenum pname
, const GLint
*param
);
1702 GLAPI
void APIENTRY
glSamplerParameterIuiv (GLuint sampler
, GLenum pname
, const GLuint
*param
);
1703 GLAPI
void APIENTRY
glGetSamplerParameteriv (GLuint sampler
, GLenum pname
, GLint
*params
);
1704 GLAPI
void APIENTRY
glGetSamplerParameterIiv (GLuint sampler
, GLenum pname
, GLint
*params
);
1705 GLAPI
void APIENTRY
glGetSamplerParameterfv (GLuint sampler
, GLenum pname
, GLfloat
*params
);
1706 GLAPI
void APIENTRY
glGetSamplerParameterIuiv (GLuint sampler
, GLenum pname
, GLuint
*params
);
1707 GLAPI
void APIENTRY
glQueryCounter (GLuint id
, GLenum target
);
1708 GLAPI
void APIENTRY
glGetQueryObjecti64v (GLuint id
, GLenum pname
, GLint64
*params
);
1709 GLAPI
void APIENTRY
glGetQueryObjectui64v (GLuint id
, GLenum pname
, GLuint64
*params
);
1710 GLAPI
void APIENTRY
glVertexAttribDivisor (GLuint index
, GLuint divisor
);
1711 GLAPI
void APIENTRY
glVertexAttribP1ui (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1712 GLAPI
void APIENTRY
glVertexAttribP1uiv (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1713 GLAPI
void APIENTRY
glVertexAttribP2ui (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1714 GLAPI
void APIENTRY
glVertexAttribP2uiv (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1715 GLAPI
void APIENTRY
glVertexAttribP3ui (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1716 GLAPI
void APIENTRY
glVertexAttribP3uiv (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1717 GLAPI
void APIENTRY
glVertexAttribP4ui (GLuint index
, GLenum type
, GLboolean normalized
, GLuint value
);
1718 GLAPI
void APIENTRY
glVertexAttribP4uiv (GLuint index
, GLenum type
, GLboolean normalized
, const GLuint
*value
);
1720 #endif /* GL_VERSION_3_3 */
1722 #ifndef GL_VERSION_4_0
1723 #define GL_VERSION_4_0 1
1724 #define GL_SAMPLE_SHADING 0x8C36
1725 #define GL_MIN_SAMPLE_SHADING_VALUE 0x8C37
1726 #define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E
1727 #define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F
1728 #define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009
1729 #define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A
1730 #define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B
1731 #define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C
1732 #define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D
1733 #define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E
1734 #define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F
1735 #define GL_DRAW_INDIRECT_BUFFER 0x8F3F
1736 #define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43
1737 #define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F
1738 #define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A
1739 #define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B
1740 #define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C
1741 #define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D
1742 #define GL_MAX_VERTEX_STREAMS 0x8E71
1743 #define GL_DOUBLE_VEC2 0x8FFC
1744 #define GL_DOUBLE_VEC3 0x8FFD
1745 #define GL_DOUBLE_VEC4 0x8FFE
1746 #define GL_DOUBLE_MAT2 0x8F46
1747 #define GL_DOUBLE_MAT3 0x8F47
1748 #define GL_DOUBLE_MAT4 0x8F48
1749 #define GL_DOUBLE_MAT2x3 0x8F49
1750 #define GL_DOUBLE_MAT2x4 0x8F4A
1751 #define GL_DOUBLE_MAT3x2 0x8F4B
1752 #define GL_DOUBLE_MAT3x4 0x8F4C
1753 #define GL_DOUBLE_MAT4x2 0x8F4D
1754 #define GL_DOUBLE_MAT4x3 0x8F4E
1755 #define GL_ACTIVE_SUBROUTINES 0x8DE5
1756 #define GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6
1757 #define GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47
1758 #define GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48
1759 #define GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49
1760 #define GL_MAX_SUBROUTINES 0x8DE7
1761 #define GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8
1762 #define GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A
1763 #define GL_COMPATIBLE_SUBROUTINES 0x8E4B
1764 #define GL_PATCHES 0x000E
1765 #define GL_PATCH_VERTICES 0x8E72
1766 #define GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73
1767 #define GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74
1768 #define GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75
1769 #define GL_TESS_GEN_MODE 0x8E76
1770 #define GL_TESS_GEN_SPACING 0x8E77
1771 #define GL_TESS_GEN_VERTEX_ORDER 0x8E78
1772 #define GL_TESS_GEN_POINT_MODE 0x8E79
1773 #define GL_ISOLINES 0x8E7A
1774 #define GL_FRACTIONAL_ODD 0x8E7B
1775 #define GL_FRACTIONAL_EVEN 0x8E7C
1776 #define GL_MAX_PATCH_VERTICES 0x8E7D
1777 #define GL_MAX_TESS_GEN_LEVEL 0x8E7E
1778 #define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F
1779 #define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80
1780 #define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81
1781 #define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82
1782 #define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83
1783 #define GL_MAX_TESS_PATCH_COMPONENTS 0x8E84
1784 #define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85
1785 #define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86
1786 #define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89
1787 #define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A
1788 #define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C
1789 #define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D
1790 #define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E
1791 #define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F
1792 #define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0
1793 #define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1
1794 #define GL_TESS_EVALUATION_SHADER 0x8E87
1795 #define GL_TESS_CONTROL_SHADER 0x8E88
1796 #define GL_TRANSFORM_FEEDBACK 0x8E22
1797 #define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23
1798 #define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24
1799 #define GL_TRANSFORM_FEEDBACK_BINDING 0x8E25
1800 #define GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70
1801 typedef void (APIENTRYP PFNGLMINSAMPLESHADINGPROC
) (GLfloat value
);
1802 typedef void (APIENTRYP PFNGLBLENDEQUATIONIPROC
) (GLuint buf
, GLenum mode
);
1803 typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEIPROC
) (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
1804 typedef void (APIENTRYP PFNGLBLENDFUNCIPROC
) (GLuint buf
, GLenum src
, GLenum dst
);
1805 typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEIPROC
) (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
1806 typedef void (APIENTRYP PFNGLDRAWARRAYSINDIRECTPROC
) (GLenum mode
, const void *indirect
);
1807 typedef void (APIENTRYP PFNGLDRAWELEMENTSINDIRECTPROC
) (GLenum mode
, GLenum type
, const void *indirect
);
1808 typedef void (APIENTRYP PFNGLUNIFORM1DPROC
) (GLint location
, GLdouble x
);
1809 typedef void (APIENTRYP PFNGLUNIFORM2DPROC
) (GLint location
, GLdouble x
, GLdouble y
);
1810 typedef void (APIENTRYP PFNGLUNIFORM3DPROC
) (GLint location
, GLdouble x
, GLdouble y
, GLdouble z
);
1811 typedef void (APIENTRYP PFNGLUNIFORM4DPROC
) (GLint location
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
1812 typedef void (APIENTRYP PFNGLUNIFORM1DVPROC
) (GLint location
, GLsizei count
, const GLdouble
*value
);
1813 typedef void (APIENTRYP PFNGLUNIFORM2DVPROC
) (GLint location
, GLsizei count
, const GLdouble
*value
);
1814 typedef void (APIENTRYP PFNGLUNIFORM3DVPROC
) (GLint location
, GLsizei count
, const GLdouble
*value
);
1815 typedef void (APIENTRYP PFNGLUNIFORM4DVPROC
) (GLint location
, GLsizei count
, const GLdouble
*value
);
1816 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1817 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1818 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1819 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1820 typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1821 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1822 typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1823 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1824 typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3DVPROC
) (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1825 typedef void (APIENTRYP PFNGLGETUNIFORMDVPROC
) (GLuint program
, GLint location
, GLdouble
*params
);
1826 typedef GLint (APIENTRYP PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC
) (GLuint program
, GLenum shadertype
, const GLchar
*name
);
1827 typedef GLuint (APIENTRYP PFNGLGETSUBROUTINEINDEXPROC
) (GLuint program
, GLenum shadertype
, const GLchar
*name
);
1828 typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC
) (GLuint program
, GLenum shadertype
, GLuint index
, GLenum pname
, GLint
*values
);
1829 typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC
) (GLuint program
, GLenum shadertype
, GLuint index
, GLsizei bufsize
, GLsizei
*length
, GLchar
*name
);
1830 typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINENAMEPROC
) (GLuint program
, GLenum shadertype
, GLuint index
, GLsizei bufsize
, GLsizei
*length
, GLchar
*name
);
1831 typedef void (APIENTRYP PFNGLUNIFORMSUBROUTINESUIVPROC
) (GLenum shadertype
, GLsizei count
, const GLuint
*indices
);
1832 typedef void (APIENTRYP PFNGLGETUNIFORMSUBROUTINEUIVPROC
) (GLenum shadertype
, GLint location
, GLuint
*params
);
1833 typedef void (APIENTRYP PFNGLGETPROGRAMSTAGEIVPROC
) (GLuint program
, GLenum shadertype
, GLenum pname
, GLint
*values
);
1834 typedef void (APIENTRYP PFNGLPATCHPARAMETERIPROC
) (GLenum pname
, GLint value
);
1835 typedef void (APIENTRYP PFNGLPATCHPARAMETERFVPROC
) (GLenum pname
, const GLfloat
*values
);
1836 typedef void (APIENTRYP PFNGLBINDTRANSFORMFEEDBACKPROC
) (GLenum target
, GLuint id
);
1837 typedef void (APIENTRYP PFNGLDELETETRANSFORMFEEDBACKSPROC
) (GLsizei n
, const GLuint
*ids
);
1838 typedef void (APIENTRYP PFNGLGENTRANSFORMFEEDBACKSPROC
) (GLsizei n
, GLuint
*ids
);
1839 typedef GLboolean (APIENTRYP PFNGLISTRANSFORMFEEDBACKPROC
) (GLuint id
);
1840 typedef void (APIENTRYP PFNGLPAUSETRANSFORMFEEDBACKPROC
) (void);
1841 typedef void (APIENTRYP PFNGLRESUMETRANSFORMFEEDBACKPROC
) (void);
1842 typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKPROC
) (GLenum mode
, GLuint id
);
1843 typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC
) (GLenum mode
, GLuint id
, GLuint stream
);
1844 typedef void (APIENTRYP PFNGLBEGINQUERYINDEXEDPROC
) (GLenum target
, GLuint index
, GLuint id
);
1845 typedef void (APIENTRYP PFNGLENDQUERYINDEXEDPROC
) (GLenum target
, GLuint index
);
1846 typedef void (APIENTRYP PFNGLGETQUERYINDEXEDIVPROC
) (GLenum target
, GLuint index
, GLenum pname
, GLint
*params
);
1847 #ifdef GL_GLEXT_PROTOTYPES
1848 GLAPI
void APIENTRY
glMinSampleShading (GLfloat value
);
1849 GLAPI
void APIENTRY
glBlendEquationi (GLuint buf
, GLenum mode
);
1850 GLAPI
void APIENTRY
glBlendEquationSeparatei (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
1851 GLAPI
void APIENTRY
glBlendFunci (GLuint buf
, GLenum src
, GLenum dst
);
1852 GLAPI
void APIENTRY
glBlendFuncSeparatei (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
1853 GLAPI
void APIENTRY
glDrawArraysIndirect (GLenum mode
, const void *indirect
);
1854 GLAPI
void APIENTRY
glDrawElementsIndirect (GLenum mode
, GLenum type
, const void *indirect
);
1855 GLAPI
void APIENTRY
glUniform1d (GLint location
, GLdouble x
);
1856 GLAPI
void APIENTRY
glUniform2d (GLint location
, GLdouble x
, GLdouble y
);
1857 GLAPI
void APIENTRY
glUniform3d (GLint location
, GLdouble x
, GLdouble y
, GLdouble z
);
1858 GLAPI
void APIENTRY
glUniform4d (GLint location
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
1859 GLAPI
void APIENTRY
glUniform1dv (GLint location
, GLsizei count
, const GLdouble
*value
);
1860 GLAPI
void APIENTRY
glUniform2dv (GLint location
, GLsizei count
, const GLdouble
*value
);
1861 GLAPI
void APIENTRY
glUniform3dv (GLint location
, GLsizei count
, const GLdouble
*value
);
1862 GLAPI
void APIENTRY
glUniform4dv (GLint location
, GLsizei count
, const GLdouble
*value
);
1863 GLAPI
void APIENTRY
glUniformMatrix2dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1864 GLAPI
void APIENTRY
glUniformMatrix3dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1865 GLAPI
void APIENTRY
glUniformMatrix4dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1866 GLAPI
void APIENTRY
glUniformMatrix2x3dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1867 GLAPI
void APIENTRY
glUniformMatrix2x4dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1868 GLAPI
void APIENTRY
glUniformMatrix3x2dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1869 GLAPI
void APIENTRY
glUniformMatrix3x4dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1870 GLAPI
void APIENTRY
glUniformMatrix4x2dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1871 GLAPI
void APIENTRY
glUniformMatrix4x3dv (GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1872 GLAPI
void APIENTRY
glGetUniformdv (GLuint program
, GLint location
, GLdouble
*params
);
1873 GLAPI GLint APIENTRY
glGetSubroutineUniformLocation (GLuint program
, GLenum shadertype
, const GLchar
*name
);
1874 GLAPI GLuint APIENTRY
glGetSubroutineIndex (GLuint program
, GLenum shadertype
, const GLchar
*name
);
1875 GLAPI
void APIENTRY
glGetActiveSubroutineUniformiv (GLuint program
, GLenum shadertype
, GLuint index
, GLenum pname
, GLint
*values
);
1876 GLAPI
void APIENTRY
glGetActiveSubroutineUniformName (GLuint program
, GLenum shadertype
, GLuint index
, GLsizei bufsize
, GLsizei
*length
, GLchar
*name
);
1877 GLAPI
void APIENTRY
glGetActiveSubroutineName (GLuint program
, GLenum shadertype
, GLuint index
, GLsizei bufsize
, GLsizei
*length
, GLchar
*name
);
1878 GLAPI
void APIENTRY
glUniformSubroutinesuiv (GLenum shadertype
, GLsizei count
, const GLuint
*indices
);
1879 GLAPI
void APIENTRY
glGetUniformSubroutineuiv (GLenum shadertype
, GLint location
, GLuint
*params
);
1880 GLAPI
void APIENTRY
glGetProgramStageiv (GLuint program
, GLenum shadertype
, GLenum pname
, GLint
*values
);
1881 GLAPI
void APIENTRY
glPatchParameteri (GLenum pname
, GLint value
);
1882 GLAPI
void APIENTRY
glPatchParameterfv (GLenum pname
, const GLfloat
*values
);
1883 GLAPI
void APIENTRY
glBindTransformFeedback (GLenum target
, GLuint id
);
1884 GLAPI
void APIENTRY
glDeleteTransformFeedbacks (GLsizei n
, const GLuint
*ids
);
1885 GLAPI
void APIENTRY
glGenTransformFeedbacks (GLsizei n
, GLuint
*ids
);
1886 GLAPI GLboolean APIENTRY
glIsTransformFeedback (GLuint id
);
1887 GLAPI
void APIENTRY
glPauseTransformFeedback (void);
1888 GLAPI
void APIENTRY
glResumeTransformFeedback (void);
1889 GLAPI
void APIENTRY
glDrawTransformFeedback (GLenum mode
, GLuint id
);
1890 GLAPI
void APIENTRY
glDrawTransformFeedbackStream (GLenum mode
, GLuint id
, GLuint stream
);
1891 GLAPI
void APIENTRY
glBeginQueryIndexed (GLenum target
, GLuint index
, GLuint id
);
1892 GLAPI
void APIENTRY
glEndQueryIndexed (GLenum target
, GLuint index
);
1893 GLAPI
void APIENTRY
glGetQueryIndexediv (GLenum target
, GLuint index
, GLenum pname
, GLint
*params
);
1895 #endif /* GL_VERSION_4_0 */
1897 #ifndef GL_VERSION_4_1
1898 #define GL_VERSION_4_1 1
1899 #define GL_FIXED 0x140C
1900 #define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
1901 #define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
1902 #define GL_LOW_FLOAT 0x8DF0
1903 #define GL_MEDIUM_FLOAT 0x8DF1
1904 #define GL_HIGH_FLOAT 0x8DF2
1905 #define GL_LOW_INT 0x8DF3
1906 #define GL_MEDIUM_INT 0x8DF4
1907 #define GL_HIGH_INT 0x8DF5
1908 #define GL_SHADER_COMPILER 0x8DFA
1909 #define GL_SHADER_BINARY_FORMATS 0x8DF8
1910 #define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
1911 #define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
1912 #define GL_MAX_VARYING_VECTORS 0x8DFC
1913 #define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
1914 #define GL_RGB565 0x8D62
1915 #define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257
1916 #define GL_PROGRAM_BINARY_LENGTH 0x8741
1917 #define GL_NUM_PROGRAM_BINARY_FORMATS 0x87FE
1918 #define GL_PROGRAM_BINARY_FORMATS 0x87FF
1919 #define GL_VERTEX_SHADER_BIT 0x00000001
1920 #define GL_FRAGMENT_SHADER_BIT 0x00000002
1921 #define GL_GEOMETRY_SHADER_BIT 0x00000004
1922 #define GL_TESS_CONTROL_SHADER_BIT 0x00000008
1923 #define GL_TESS_EVALUATION_SHADER_BIT 0x00000010
1924 #define GL_ALL_SHADER_BITS 0xFFFFFFFF
1925 #define GL_PROGRAM_SEPARABLE 0x8258
1926 #define GL_ACTIVE_PROGRAM 0x8259
1927 #define GL_PROGRAM_PIPELINE_BINDING 0x825A
1928 #define GL_MAX_VIEWPORTS 0x825B
1929 #define GL_VIEWPORT_SUBPIXEL_BITS 0x825C
1930 #define GL_VIEWPORT_BOUNDS_RANGE 0x825D
1931 #define GL_LAYER_PROVOKING_VERTEX 0x825E
1932 #define GL_VIEWPORT_INDEX_PROVOKING_VERTEX 0x825F
1933 #define GL_UNDEFINED_VERTEX 0x8260
1934 typedef void (APIENTRYP PFNGLRELEASESHADERCOMPILERPROC
) (void);
1935 typedef void (APIENTRYP PFNGLSHADERBINARYPROC
) (GLsizei count
, const GLuint
*shaders
, GLenum binaryformat
, const void *binary
, GLsizei length
);
1936 typedef void (APIENTRYP PFNGLGETSHADERPRECISIONFORMATPROC
) (GLenum shadertype
, GLenum precisiontype
, GLint
*range
, GLint
*precision
);
1937 typedef void (APIENTRYP PFNGLDEPTHRANGEFPROC
) (GLfloat n
, GLfloat f
);
1938 typedef void (APIENTRYP PFNGLCLEARDEPTHFPROC
) (GLfloat d
);
1939 typedef void (APIENTRYP PFNGLGETPROGRAMBINARYPROC
) (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, void *binary
);
1940 typedef void (APIENTRYP PFNGLPROGRAMBINARYPROC
) (GLuint program
, GLenum binaryFormat
, const void *binary
, GLsizei length
);
1941 typedef void (APIENTRYP PFNGLPROGRAMPARAMETERIPROC
) (GLuint program
, GLenum pname
, GLint value
);
1942 typedef void (APIENTRYP PFNGLUSEPROGRAMSTAGESPROC
) (GLuint pipeline
, GLbitfield stages
, GLuint program
);
1943 typedef void (APIENTRYP PFNGLACTIVESHADERPROGRAMPROC
) (GLuint pipeline
, GLuint program
);
1944 typedef GLuint (APIENTRYP PFNGLCREATESHADERPROGRAMVPROC
) (GLenum type
, GLsizei count
, const GLchar
*const*strings
);
1945 typedef void (APIENTRYP PFNGLBINDPROGRAMPIPELINEPROC
) (GLuint pipeline
);
1946 typedef void (APIENTRYP PFNGLDELETEPROGRAMPIPELINESPROC
) (GLsizei n
, const GLuint
*pipelines
);
1947 typedef void (APIENTRYP PFNGLGENPROGRAMPIPELINESPROC
) (GLsizei n
, GLuint
*pipelines
);
1948 typedef GLboolean (APIENTRYP PFNGLISPROGRAMPIPELINEPROC
) (GLuint pipeline
);
1949 typedef void (APIENTRYP PFNGLGETPROGRAMPIPELINEIVPROC
) (GLuint pipeline
, GLenum pname
, GLint
*params
);
1950 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IPROC
) (GLuint program
, GLint location
, GLint v0
);
1951 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1952 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FPROC
) (GLuint program
, GLint location
, GLfloat v0
);
1953 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1954 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1DPROC
) (GLuint program
, GLint location
, GLdouble v0
);
1955 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1DVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
1956 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIPROC
) (GLuint program
, GLint location
, GLuint v0
);
1957 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1958 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
);
1959 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1960 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
);
1961 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1962 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2DPROC
) (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
);
1963 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2DVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
1964 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
);
1965 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1966 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
);
1967 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1968 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
1969 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1970 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3DPROC
) (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
, GLdouble v2
);
1971 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3DVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
1972 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
1973 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1974 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IPROC
) (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
1975 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1976 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FPROC
) (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
1977 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1978 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4DPROC
) (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
, GLdouble v2
, GLdouble v3
);
1979 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4DVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
1980 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIPROC
) (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
1981 typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIVPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
1982 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1983 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1984 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1985 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1986 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1987 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1988 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1989 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1990 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1991 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1992 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1993 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1994 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1995 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1996 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1997 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1998 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
1999 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2000 typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEPROC
) (GLuint pipeline
);
2001 typedef void (APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGPROC
) (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
2002 typedef void (APIENTRYP PFNGLVERTEXATTRIBL1DPROC
) (GLuint index
, GLdouble x
);
2003 typedef void (APIENTRYP PFNGLVERTEXATTRIBL2DPROC
) (GLuint index
, GLdouble x
, GLdouble y
);
2004 typedef void (APIENTRYP PFNGLVERTEXATTRIBL3DPROC
) (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
);
2005 typedef void (APIENTRYP PFNGLVERTEXATTRIBL4DPROC
) (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
2006 typedef void (APIENTRYP PFNGLVERTEXATTRIBL1DVPROC
) (GLuint index
, const GLdouble
*v
);
2007 typedef void (APIENTRYP PFNGLVERTEXATTRIBL2DVPROC
) (GLuint index
, const GLdouble
*v
);
2008 typedef void (APIENTRYP PFNGLVERTEXATTRIBL3DVPROC
) (GLuint index
, const GLdouble
*v
);
2009 typedef void (APIENTRYP PFNGLVERTEXATTRIBL4DVPROC
) (GLuint index
, const GLdouble
*v
);
2010 typedef void (APIENTRYP PFNGLVERTEXATTRIBLPOINTERPROC
) (GLuint index
, GLint size
, GLenum type
, GLsizei stride
, const void *pointer
);
2011 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBLDVPROC
) (GLuint index
, GLenum pname
, GLdouble
*params
);
2012 typedef void (APIENTRYP PFNGLVIEWPORTARRAYVPROC
) (GLuint first
, GLsizei count
, const GLfloat
*v
);
2013 typedef void (APIENTRYP PFNGLVIEWPORTINDEXEDFPROC
) (GLuint index
, GLfloat x
, GLfloat y
, GLfloat w
, GLfloat h
);
2014 typedef void (APIENTRYP PFNGLVIEWPORTINDEXEDFVPROC
) (GLuint index
, const GLfloat
*v
);
2015 typedef void (APIENTRYP PFNGLSCISSORARRAYVPROC
) (GLuint first
, GLsizei count
, const GLint
*v
);
2016 typedef void (APIENTRYP PFNGLSCISSORINDEXEDPROC
) (GLuint index
, GLint left
, GLint bottom
, GLsizei width
, GLsizei height
);
2017 typedef void (APIENTRYP PFNGLSCISSORINDEXEDVPROC
) (GLuint index
, const GLint
*v
);
2018 typedef void (APIENTRYP PFNGLDEPTHRANGEARRAYVPROC
) (GLuint first
, GLsizei count
, const GLdouble
*v
);
2019 typedef void (APIENTRYP PFNGLDEPTHRANGEINDEXEDPROC
) (GLuint index
, GLdouble n
, GLdouble f
);
2020 typedef void (APIENTRYP PFNGLGETFLOATI_VPROC
) (GLenum target
, GLuint index
, GLfloat
*data
);
2021 typedef void (APIENTRYP PFNGLGETDOUBLEI_VPROC
) (GLenum target
, GLuint index
, GLdouble
*data
);
2022 #ifdef GL_GLEXT_PROTOTYPES
2023 GLAPI
void APIENTRY
glReleaseShaderCompiler (void);
2024 GLAPI
void APIENTRY
glShaderBinary (GLsizei count
, const GLuint
*shaders
, GLenum binaryformat
, const void *binary
, GLsizei length
);
2025 GLAPI
void APIENTRY
glGetShaderPrecisionFormat (GLenum shadertype
, GLenum precisiontype
, GLint
*range
, GLint
*precision
);
2026 GLAPI
void APIENTRY
glDepthRangef (GLfloat n
, GLfloat f
);
2027 GLAPI
void APIENTRY
glClearDepthf (GLfloat d
);
2028 GLAPI
void APIENTRY
glGetProgramBinary (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, void *binary
);
2029 GLAPI
void APIENTRY
glProgramBinary (GLuint program
, GLenum binaryFormat
, const void *binary
, GLsizei length
);
2030 GLAPI
void APIENTRY
glProgramParameteri (GLuint program
, GLenum pname
, GLint value
);
2031 GLAPI
void APIENTRY
glUseProgramStages (GLuint pipeline
, GLbitfield stages
, GLuint program
);
2032 GLAPI
void APIENTRY
glActiveShaderProgram (GLuint pipeline
, GLuint program
);
2033 GLAPI GLuint APIENTRY
glCreateShaderProgramv (GLenum type
, GLsizei count
, const GLchar
*const*strings
);
2034 GLAPI
void APIENTRY
glBindProgramPipeline (GLuint pipeline
);
2035 GLAPI
void APIENTRY
glDeleteProgramPipelines (GLsizei n
, const GLuint
*pipelines
);
2036 GLAPI
void APIENTRY
glGenProgramPipelines (GLsizei n
, GLuint
*pipelines
);
2037 GLAPI GLboolean APIENTRY
glIsProgramPipeline (GLuint pipeline
);
2038 GLAPI
void APIENTRY
glGetProgramPipelineiv (GLuint pipeline
, GLenum pname
, GLint
*params
);
2039 GLAPI
void APIENTRY
glProgramUniform1i (GLuint program
, GLint location
, GLint v0
);
2040 GLAPI
void APIENTRY
glProgramUniform1iv (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
2041 GLAPI
void APIENTRY
glProgramUniform1f (GLuint program
, GLint location
, GLfloat v0
);
2042 GLAPI
void APIENTRY
glProgramUniform1fv (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
2043 GLAPI
void APIENTRY
glProgramUniform1d (GLuint program
, GLint location
, GLdouble v0
);
2044 GLAPI
void APIENTRY
glProgramUniform1dv (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
2045 GLAPI
void APIENTRY
glProgramUniform1ui (GLuint program
, GLint location
, GLuint v0
);
2046 GLAPI
void APIENTRY
glProgramUniform1uiv (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
2047 GLAPI
void APIENTRY
glProgramUniform2i (GLuint program
, GLint location
, GLint v0
, GLint v1
);
2048 GLAPI
void APIENTRY
glProgramUniform2iv (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
2049 GLAPI
void APIENTRY
glProgramUniform2f (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
);
2050 GLAPI
void APIENTRY
glProgramUniform2fv (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
2051 GLAPI
void APIENTRY
glProgramUniform2d (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
);
2052 GLAPI
void APIENTRY
glProgramUniform2dv (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
2053 GLAPI
void APIENTRY
glProgramUniform2ui (GLuint program
, GLint location
, GLuint v0
, GLuint v1
);
2054 GLAPI
void APIENTRY
glProgramUniform2uiv (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
2055 GLAPI
void APIENTRY
glProgramUniform3i (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
);
2056 GLAPI
void APIENTRY
glProgramUniform3iv (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
2057 GLAPI
void APIENTRY
glProgramUniform3f (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
);
2058 GLAPI
void APIENTRY
glProgramUniform3fv (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
2059 GLAPI
void APIENTRY
glProgramUniform3d (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
, GLdouble v2
);
2060 GLAPI
void APIENTRY
glProgramUniform3dv (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
2061 GLAPI
void APIENTRY
glProgramUniform3ui (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
);
2062 GLAPI
void APIENTRY
glProgramUniform3uiv (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
2063 GLAPI
void APIENTRY
glProgramUniform4i (GLuint program
, GLint location
, GLint v0
, GLint v1
, GLint v2
, GLint v3
);
2064 GLAPI
void APIENTRY
glProgramUniform4iv (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
2065 GLAPI
void APIENTRY
glProgramUniform4f (GLuint program
, GLint location
, GLfloat v0
, GLfloat v1
, GLfloat v2
, GLfloat v3
);
2066 GLAPI
void APIENTRY
glProgramUniform4fv (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
2067 GLAPI
void APIENTRY
glProgramUniform4d (GLuint program
, GLint location
, GLdouble v0
, GLdouble v1
, GLdouble v2
, GLdouble v3
);
2068 GLAPI
void APIENTRY
glProgramUniform4dv (GLuint program
, GLint location
, GLsizei count
, const GLdouble
*value
);
2069 GLAPI
void APIENTRY
glProgramUniform4ui (GLuint program
, GLint location
, GLuint v0
, GLuint v1
, GLuint v2
, GLuint v3
);
2070 GLAPI
void APIENTRY
glProgramUniform4uiv (GLuint program
, GLint location
, GLsizei count
, const GLuint
*value
);
2071 GLAPI
void APIENTRY
glProgramUniformMatrix2fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2072 GLAPI
void APIENTRY
glProgramUniformMatrix3fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2073 GLAPI
void APIENTRY
glProgramUniformMatrix4fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2074 GLAPI
void APIENTRY
glProgramUniformMatrix2dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2075 GLAPI
void APIENTRY
glProgramUniformMatrix3dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2076 GLAPI
void APIENTRY
glProgramUniformMatrix4dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2077 GLAPI
void APIENTRY
glProgramUniformMatrix2x3fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2078 GLAPI
void APIENTRY
glProgramUniformMatrix3x2fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2079 GLAPI
void APIENTRY
glProgramUniformMatrix2x4fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2080 GLAPI
void APIENTRY
glProgramUniformMatrix4x2fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2081 GLAPI
void APIENTRY
glProgramUniformMatrix3x4fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2082 GLAPI
void APIENTRY
glProgramUniformMatrix4x3fv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
2083 GLAPI
void APIENTRY
glProgramUniformMatrix2x3dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2084 GLAPI
void APIENTRY
glProgramUniformMatrix3x2dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2085 GLAPI
void APIENTRY
glProgramUniformMatrix2x4dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2086 GLAPI
void APIENTRY
glProgramUniformMatrix4x2dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2087 GLAPI
void APIENTRY
glProgramUniformMatrix3x4dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2088 GLAPI
void APIENTRY
glProgramUniformMatrix4x3dv (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLdouble
*value
);
2089 GLAPI
void APIENTRY
glValidateProgramPipeline (GLuint pipeline
);
2090 GLAPI
void APIENTRY
glGetProgramPipelineInfoLog (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
2091 GLAPI
void APIENTRY
glVertexAttribL1d (GLuint index
, GLdouble x
);
2092 GLAPI
void APIENTRY
glVertexAttribL2d (GLuint index
, GLdouble x
, GLdouble y
);
2093 GLAPI
void APIENTRY
glVertexAttribL3d (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
);
2094 GLAPI
void APIENTRY
glVertexAttribL4d (GLuint index
, GLdouble x
, GLdouble y
, GLdouble z
, GLdouble w
);
2095 GLAPI
void APIENTRY
glVertexAttribL1dv (GLuint index
, const GLdouble
*v
);
2096 GLAPI
void APIENTRY
glVertexAttribL2dv (GLuint index
, const GLdouble
*v
);
2097 GLAPI
void APIENTRY
glVertexAttribL3dv (GLuint index
, const GLdouble
*v
);
2098 GLAPI
void APIENTRY
glVertexAttribL4dv (GLuint index
, const GLdouble
*v
);
2099 GLAPI
void APIENTRY
glVertexAttribLPointer (GLuint index
, GLint size
, GLenum type
, GLsizei stride
, const void *pointer
);
2100 GLAPI
void APIENTRY
glGetVertexAttribLdv (GLuint index
, GLenum pname
, GLdouble
*params
);
2101 GLAPI
void APIENTRY
glViewportArrayv (GLuint first
, GLsizei count
, const GLfloat
*v
);
2102 GLAPI
void APIENTRY
glViewportIndexedf (GLuint index
, GLfloat x
, GLfloat y
, GLfloat w
, GLfloat h
);
2103 GLAPI
void APIENTRY
glViewportIndexedfv (GLuint index
, const GLfloat
*v
);
2104 GLAPI
void APIENTRY
glScissorArrayv (GLuint first
, GLsizei count
, const GLint
*v
);
2105 GLAPI
void APIENTRY
glScissorIndexed (GLuint index
, GLint left
, GLint bottom
, GLsizei width
, GLsizei height
);
2106 GLAPI
void APIENTRY
glScissorIndexedv (GLuint index
, const GLint
*v
);
2107 GLAPI
void APIENTRY
glDepthRangeArrayv (GLuint first
, GLsizei count
, const GLdouble
*v
);
2108 GLAPI
void APIENTRY
glDepthRangeIndexed (GLuint index
, GLdouble n
, GLdouble f
);
2109 GLAPI
void APIENTRY
glGetFloati_v (GLenum target
, GLuint index
, GLfloat
*data
);
2110 GLAPI
void APIENTRY
glGetDoublei_v (GLenum target
, GLuint index
, GLdouble
*data
);
2112 #endif /* GL_VERSION_4_1 */
2114 #ifndef GL_VERSION_4_2
2115 #define GL_VERSION_4_2 1
2116 #define GL_COPY_READ_BUFFER_BINDING 0x8F36
2117 #define GL_COPY_WRITE_BUFFER_BINDING 0x8F37
2118 #define GL_TRANSFORM_FEEDBACK_ACTIVE 0x8E24
2119 #define GL_TRANSFORM_FEEDBACK_PAUSED 0x8E23
2120 #define GL_UNPACK_COMPRESSED_BLOCK_WIDTH 0x9127
2121 #define GL_UNPACK_COMPRESSED_BLOCK_HEIGHT 0x9128
2122 #define GL_UNPACK_COMPRESSED_BLOCK_DEPTH 0x9129
2123 #define GL_UNPACK_COMPRESSED_BLOCK_SIZE 0x912A
2124 #define GL_PACK_COMPRESSED_BLOCK_WIDTH 0x912B
2125 #define GL_PACK_COMPRESSED_BLOCK_HEIGHT 0x912C
2126 #define GL_PACK_COMPRESSED_BLOCK_DEPTH 0x912D
2127 #define GL_PACK_COMPRESSED_BLOCK_SIZE 0x912E
2128 #define GL_NUM_SAMPLE_COUNTS 0x9380
2129 #define GL_MIN_MAP_BUFFER_ALIGNMENT 0x90BC
2130 #define GL_ATOMIC_COUNTER_BUFFER 0x92C0
2131 #define GL_ATOMIC_COUNTER_BUFFER_BINDING 0x92C1
2132 #define GL_ATOMIC_COUNTER_BUFFER_START 0x92C2
2133 #define GL_ATOMIC_COUNTER_BUFFER_SIZE 0x92C3
2134 #define GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE 0x92C4
2135 #define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS 0x92C5
2136 #define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES 0x92C6
2137 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER 0x92C7
2138 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER 0x92C8
2139 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER 0x92C9
2140 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER 0x92CA
2141 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER 0x92CB
2142 #define GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS 0x92CC
2143 #define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS 0x92CD
2144 #define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS 0x92CE
2145 #define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS 0x92CF
2146 #define GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS 0x92D0
2147 #define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS 0x92D1
2148 #define GL_MAX_VERTEX_ATOMIC_COUNTERS 0x92D2
2149 #define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS 0x92D3
2150 #define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS 0x92D4
2151 #define GL_MAX_GEOMETRY_ATOMIC_COUNTERS 0x92D5
2152 #define GL_MAX_FRAGMENT_ATOMIC_COUNTERS 0x92D6
2153 #define GL_MAX_COMBINED_ATOMIC_COUNTERS 0x92D7
2154 #define GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE 0x92D8
2155 #define GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS 0x92DC
2156 #define GL_ACTIVE_ATOMIC_COUNTER_BUFFERS 0x92D9
2157 #define GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX 0x92DA
2158 #define GL_UNSIGNED_INT_ATOMIC_COUNTER 0x92DB
2159 #define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001
2160 #define GL_ELEMENT_ARRAY_BARRIER_BIT 0x00000002
2161 #define GL_UNIFORM_BARRIER_BIT 0x00000004
2162 #define GL_TEXTURE_FETCH_BARRIER_BIT 0x00000008
2163 #define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020
2164 #define GL_COMMAND_BARRIER_BIT 0x00000040
2165 #define GL_PIXEL_BUFFER_BARRIER_BIT 0x00000080
2166 #define GL_TEXTURE_UPDATE_BARRIER_BIT 0x00000100
2167 #define GL_BUFFER_UPDATE_BARRIER_BIT 0x00000200
2168 #define GL_FRAMEBUFFER_BARRIER_BIT 0x00000400
2169 #define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800
2170 #define GL_ATOMIC_COUNTER_BARRIER_BIT 0x00001000
2171 #define GL_ALL_BARRIER_BITS 0xFFFFFFFF
2172 #define GL_MAX_IMAGE_UNITS 0x8F38
2173 #define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS 0x8F39
2174 #define GL_IMAGE_BINDING_NAME 0x8F3A
2175 #define GL_IMAGE_BINDING_LEVEL 0x8F3B
2176 #define GL_IMAGE_BINDING_LAYERED 0x8F3C
2177 #define GL_IMAGE_BINDING_LAYER 0x8F3D
2178 #define GL_IMAGE_BINDING_ACCESS 0x8F3E
2179 #define GL_IMAGE_1D 0x904C
2180 #define GL_IMAGE_2D 0x904D
2181 #define GL_IMAGE_3D 0x904E
2182 #define GL_IMAGE_2D_RECT 0x904F
2183 #define GL_IMAGE_CUBE 0x9050
2184 #define GL_IMAGE_BUFFER 0x9051
2185 #define GL_IMAGE_1D_ARRAY 0x9052
2186 #define GL_IMAGE_2D_ARRAY 0x9053
2187 #define GL_IMAGE_CUBE_MAP_ARRAY 0x9054
2188 #define GL_IMAGE_2D_MULTISAMPLE 0x9055
2189 #define GL_IMAGE_2D_MULTISAMPLE_ARRAY 0x9056
2190 #define GL_INT_IMAGE_1D 0x9057
2191 #define GL_INT_IMAGE_2D 0x9058
2192 #define GL_INT_IMAGE_3D 0x9059
2193 #define GL_INT_IMAGE_2D_RECT 0x905A
2194 #define GL_INT_IMAGE_CUBE 0x905B
2195 #define GL_INT_IMAGE_BUFFER 0x905C
2196 #define GL_INT_IMAGE_1D_ARRAY 0x905D
2197 #define GL_INT_IMAGE_2D_ARRAY 0x905E
2198 #define GL_INT_IMAGE_CUBE_MAP_ARRAY 0x905F
2199 #define GL_INT_IMAGE_2D_MULTISAMPLE 0x9060
2200 #define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x9061
2201 #define GL_UNSIGNED_INT_IMAGE_1D 0x9062
2202 #define GL_UNSIGNED_INT_IMAGE_2D 0x9063
2203 #define GL_UNSIGNED_INT_IMAGE_3D 0x9064
2204 #define GL_UNSIGNED_INT_IMAGE_2D_RECT 0x9065
2205 #define GL_UNSIGNED_INT_IMAGE_CUBE 0x9066
2206 #define GL_UNSIGNED_INT_IMAGE_BUFFER 0x9067
2207 #define GL_UNSIGNED_INT_IMAGE_1D_ARRAY 0x9068
2208 #define GL_UNSIGNED_INT_IMAGE_2D_ARRAY 0x9069
2209 #define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY 0x906A
2210 #define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE 0x906B
2211 #define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x906C
2212 #define GL_MAX_IMAGE_SAMPLES 0x906D
2213 #define GL_IMAGE_BINDING_FORMAT 0x906E
2214 #define GL_IMAGE_FORMAT_COMPATIBILITY_TYPE 0x90C7
2215 #define GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE 0x90C8
2216 #define GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS 0x90C9
2217 #define GL_MAX_VERTEX_IMAGE_UNIFORMS 0x90CA
2218 #define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS 0x90CB
2219 #define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS 0x90CC
2220 #define GL_MAX_GEOMETRY_IMAGE_UNIFORMS 0x90CD
2221 #define GL_MAX_FRAGMENT_IMAGE_UNIFORMS 0x90CE
2222 #define GL_MAX_COMBINED_IMAGE_UNIFORMS 0x90CF
2223 #define GL_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C
2224 #define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D
2225 #define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E
2226 #define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F
2227 #define GL_TEXTURE_IMMUTABLE_FORMAT 0x912F
2228 typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC
) (GLenum mode
, GLint first
, GLsizei count
, GLsizei instancecount
, GLuint baseinstance
);
2229 typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLuint baseinstance
);
2230 typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLint basevertex
, GLuint baseinstance
);
2231 typedef void (APIENTRYP PFNGLGETINTERNALFORMATIVPROC
) (GLenum target
, GLenum internalformat
, GLenum pname
, GLsizei bufSize
, GLint
*params
);
2232 typedef void (APIENTRYP PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC
) (GLuint program
, GLuint bufferIndex
, GLenum pname
, GLint
*params
);
2233 typedef void (APIENTRYP PFNGLBINDIMAGETEXTUREPROC
) (GLuint unit
, GLuint texture
, GLint level
, GLboolean layered
, GLint layer
, GLenum access
, GLenum format
);
2234 typedef void (APIENTRYP PFNGLMEMORYBARRIERPROC
) (GLbitfield barriers
);
2235 typedef void (APIENTRYP PFNGLTEXSTORAGE1DPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
2236 typedef void (APIENTRYP PFNGLTEXSTORAGE2DPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2237 typedef void (APIENTRYP PFNGLTEXSTORAGE3DPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
2238 typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC
) (GLenum mode
, GLuint id
, GLsizei instancecount
);
2239 typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC
) (GLenum mode
, GLuint id
, GLuint stream
, GLsizei instancecount
);
2240 #ifdef GL_GLEXT_PROTOTYPES
2241 GLAPI
void APIENTRY
glDrawArraysInstancedBaseInstance (GLenum mode
, GLint first
, GLsizei count
, GLsizei instancecount
, GLuint baseinstance
);
2242 GLAPI
void APIENTRY
glDrawElementsInstancedBaseInstance (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLuint baseinstance
);
2243 GLAPI
void APIENTRY
glDrawElementsInstancedBaseVertexBaseInstance (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei instancecount
, GLint basevertex
, GLuint baseinstance
);
2244 GLAPI
void APIENTRY
glGetInternalformativ (GLenum target
, GLenum internalformat
, GLenum pname
, GLsizei bufSize
, GLint
*params
);
2245 GLAPI
void APIENTRY
glGetActiveAtomicCounterBufferiv (GLuint program
, GLuint bufferIndex
, GLenum pname
, GLint
*params
);
2246 GLAPI
void APIENTRY
glBindImageTexture (GLuint unit
, GLuint texture
, GLint level
, GLboolean layered
, GLint layer
, GLenum access
, GLenum format
);
2247 GLAPI
void APIENTRY
glMemoryBarrier (GLbitfield barriers
);
2248 GLAPI
void APIENTRY
glTexStorage1D (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
2249 GLAPI
void APIENTRY
glTexStorage2D (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2250 GLAPI
void APIENTRY
glTexStorage3D (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
2251 GLAPI
void APIENTRY
glDrawTransformFeedbackInstanced (GLenum mode
, GLuint id
, GLsizei instancecount
);
2252 GLAPI
void APIENTRY
glDrawTransformFeedbackStreamInstanced (GLenum mode
, GLuint id
, GLuint stream
, GLsizei instancecount
);
2254 #endif /* GL_VERSION_4_2 */
2256 #ifndef GL_VERSION_4_3
2257 #define GL_VERSION_4_3 1
2258 typedef void (APIENTRY
*GLDEBUGPROC
)(GLenum source
,GLenum type
,GLuint id
,GLenum severity
,GLsizei length
,const GLchar
*message
,const void *userParam
);
2259 #define GL_NUM_SHADING_LANGUAGE_VERSIONS 0x82E9
2260 #define GL_VERTEX_ATTRIB_ARRAY_LONG 0x874E
2261 #define GL_COMPRESSED_RGB8_ETC2 0x9274
2262 #define GL_COMPRESSED_SRGB8_ETC2 0x9275
2263 #define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276
2264 #define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277
2265 #define GL_COMPRESSED_RGBA8_ETC2_EAC 0x9278
2266 #define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279
2267 #define GL_COMPRESSED_R11_EAC 0x9270
2268 #define GL_COMPRESSED_SIGNED_R11_EAC 0x9271
2269 #define GL_COMPRESSED_RG11_EAC 0x9272
2270 #define GL_COMPRESSED_SIGNED_RG11_EAC 0x9273
2271 #define GL_PRIMITIVE_RESTART_FIXED_INDEX 0x8D69
2272 #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A
2273 #define GL_MAX_ELEMENT_INDEX 0x8D6B
2274 #define GL_COMPUTE_SHADER 0x91B9
2275 #define GL_MAX_COMPUTE_UNIFORM_BLOCKS 0x91BB
2276 #define GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS 0x91BC
2277 #define GL_MAX_COMPUTE_IMAGE_UNIFORMS 0x91BD
2278 #define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 0x8262
2279 #define GL_MAX_COMPUTE_UNIFORM_COMPONENTS 0x8263
2280 #define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS 0x8264
2281 #define GL_MAX_COMPUTE_ATOMIC_COUNTERS 0x8265
2282 #define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS 0x8266
2283 #define GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS 0x90EB
2284 #define GL_MAX_COMPUTE_WORK_GROUP_COUNT 0x91BE
2285 #define GL_MAX_COMPUTE_WORK_GROUP_SIZE 0x91BF
2286 #define GL_COMPUTE_WORK_GROUP_SIZE 0x8267
2287 #define GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER 0x90EC
2288 #define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER 0x90ED
2289 #define GL_DISPATCH_INDIRECT_BUFFER 0x90EE
2290 #define GL_DISPATCH_INDIRECT_BUFFER_BINDING 0x90EF
2291 #define GL_COMPUTE_SHADER_BIT 0x00000020
2292 #define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
2293 #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
2294 #define GL_DEBUG_CALLBACK_FUNCTION 0x8244
2295 #define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
2296 #define GL_DEBUG_SOURCE_API 0x8246
2297 #define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
2298 #define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
2299 #define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
2300 #define GL_DEBUG_SOURCE_APPLICATION 0x824A
2301 #define GL_DEBUG_SOURCE_OTHER 0x824B
2302 #define GL_DEBUG_TYPE_ERROR 0x824C
2303 #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
2304 #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
2305 #define GL_DEBUG_TYPE_PORTABILITY 0x824F
2306 #define GL_DEBUG_TYPE_PERFORMANCE 0x8250
2307 #define GL_DEBUG_TYPE_OTHER 0x8251
2308 #define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
2309 #define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
2310 #define GL_DEBUG_LOGGED_MESSAGES 0x9145
2311 #define GL_DEBUG_SEVERITY_HIGH 0x9146
2312 #define GL_DEBUG_SEVERITY_MEDIUM 0x9147
2313 #define GL_DEBUG_SEVERITY_LOW 0x9148
2314 #define GL_DEBUG_TYPE_MARKER 0x8268
2315 #define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
2316 #define GL_DEBUG_TYPE_POP_GROUP 0x826A
2317 #define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
2318 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
2319 #define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
2320 #define GL_BUFFER 0x82E0
2321 #define GL_SHADER 0x82E1
2322 #define GL_PROGRAM 0x82E2
2323 #define GL_QUERY 0x82E3
2324 #define GL_PROGRAM_PIPELINE 0x82E4
2325 #define GL_SAMPLER 0x82E6
2326 #define GL_MAX_LABEL_LENGTH 0x82E8
2327 #define GL_DEBUG_OUTPUT 0x92E0
2328 #define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
2329 #define GL_MAX_UNIFORM_LOCATIONS 0x826E
2330 #define GL_FRAMEBUFFER_DEFAULT_WIDTH 0x9310
2331 #define GL_FRAMEBUFFER_DEFAULT_HEIGHT 0x9311
2332 #define GL_FRAMEBUFFER_DEFAULT_LAYERS 0x9312
2333 #define GL_FRAMEBUFFER_DEFAULT_SAMPLES 0x9313
2334 #define GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS 0x9314
2335 #define GL_MAX_FRAMEBUFFER_WIDTH 0x9315
2336 #define GL_MAX_FRAMEBUFFER_HEIGHT 0x9316
2337 #define GL_MAX_FRAMEBUFFER_LAYERS 0x9317
2338 #define GL_MAX_FRAMEBUFFER_SAMPLES 0x9318
2339 #define GL_INTERNALFORMAT_SUPPORTED 0x826F
2340 #define GL_INTERNALFORMAT_PREFERRED 0x8270
2341 #define GL_INTERNALFORMAT_RED_SIZE 0x8271
2342 #define GL_INTERNALFORMAT_GREEN_SIZE 0x8272
2343 #define GL_INTERNALFORMAT_BLUE_SIZE 0x8273
2344 #define GL_INTERNALFORMAT_ALPHA_SIZE 0x8274
2345 #define GL_INTERNALFORMAT_DEPTH_SIZE 0x8275
2346 #define GL_INTERNALFORMAT_STENCIL_SIZE 0x8276
2347 #define GL_INTERNALFORMAT_SHARED_SIZE 0x8277
2348 #define GL_INTERNALFORMAT_RED_TYPE 0x8278
2349 #define GL_INTERNALFORMAT_GREEN_TYPE 0x8279
2350 #define GL_INTERNALFORMAT_BLUE_TYPE 0x827A
2351 #define GL_INTERNALFORMAT_ALPHA_TYPE 0x827B
2352 #define GL_INTERNALFORMAT_DEPTH_TYPE 0x827C
2353 #define GL_INTERNALFORMAT_STENCIL_TYPE 0x827D
2354 #define GL_MAX_WIDTH 0x827E
2355 #define GL_MAX_HEIGHT 0x827F
2356 #define GL_MAX_DEPTH 0x8280
2357 #define GL_MAX_LAYERS 0x8281
2358 #define GL_MAX_COMBINED_DIMENSIONS 0x8282
2359 #define GL_COLOR_COMPONENTS 0x8283
2360 #define GL_DEPTH_COMPONENTS 0x8284
2361 #define GL_STENCIL_COMPONENTS 0x8285
2362 #define GL_COLOR_RENDERABLE 0x8286
2363 #define GL_DEPTH_RENDERABLE 0x8287
2364 #define GL_STENCIL_RENDERABLE 0x8288
2365 #define GL_FRAMEBUFFER_RENDERABLE 0x8289
2366 #define GL_FRAMEBUFFER_RENDERABLE_LAYERED 0x828A
2367 #define GL_FRAMEBUFFER_BLEND 0x828B
2368 #define GL_READ_PIXELS 0x828C
2369 #define GL_READ_PIXELS_FORMAT 0x828D
2370 #define GL_READ_PIXELS_TYPE 0x828E
2371 #define GL_TEXTURE_IMAGE_FORMAT 0x828F
2372 #define GL_TEXTURE_IMAGE_TYPE 0x8290
2373 #define GL_GET_TEXTURE_IMAGE_FORMAT 0x8291
2374 #define GL_GET_TEXTURE_IMAGE_TYPE 0x8292
2375 #define GL_MIPMAP 0x8293
2376 #define GL_MANUAL_GENERATE_MIPMAP 0x8294
2377 #define GL_AUTO_GENERATE_MIPMAP 0x8295
2378 #define GL_COLOR_ENCODING 0x8296
2379 #define GL_SRGB_READ 0x8297
2380 #define GL_SRGB_WRITE 0x8298
2381 #define GL_FILTER 0x829A
2382 #define GL_VERTEX_TEXTURE 0x829B
2383 #define GL_TESS_CONTROL_TEXTURE 0x829C
2384 #define GL_TESS_EVALUATION_TEXTURE 0x829D
2385 #define GL_GEOMETRY_TEXTURE 0x829E
2386 #define GL_FRAGMENT_TEXTURE 0x829F
2387 #define GL_COMPUTE_TEXTURE 0x82A0
2388 #define GL_TEXTURE_SHADOW 0x82A1
2389 #define GL_TEXTURE_GATHER 0x82A2
2390 #define GL_TEXTURE_GATHER_SHADOW 0x82A3
2391 #define GL_SHADER_IMAGE_LOAD 0x82A4
2392 #define GL_SHADER_IMAGE_STORE 0x82A5
2393 #define GL_SHADER_IMAGE_ATOMIC 0x82A6
2394 #define GL_IMAGE_TEXEL_SIZE 0x82A7
2395 #define GL_IMAGE_COMPATIBILITY_CLASS 0x82A8
2396 #define GL_IMAGE_PIXEL_FORMAT 0x82A9
2397 #define GL_IMAGE_PIXEL_TYPE 0x82AA
2398 #define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST 0x82AC
2399 #define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST 0x82AD
2400 #define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE 0x82AE
2401 #define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE 0x82AF
2402 #define GL_TEXTURE_COMPRESSED_BLOCK_WIDTH 0x82B1
2403 #define GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT 0x82B2
2404 #define GL_TEXTURE_COMPRESSED_BLOCK_SIZE 0x82B3
2405 #define GL_CLEAR_BUFFER 0x82B4
2406 #define GL_TEXTURE_VIEW 0x82B5
2407 #define GL_VIEW_COMPATIBILITY_CLASS 0x82B6
2408 #define GL_FULL_SUPPORT 0x82B7
2409 #define GL_CAVEAT_SUPPORT 0x82B8
2410 #define GL_IMAGE_CLASS_4_X_32 0x82B9
2411 #define GL_IMAGE_CLASS_2_X_32 0x82BA
2412 #define GL_IMAGE_CLASS_1_X_32 0x82BB
2413 #define GL_IMAGE_CLASS_4_X_16 0x82BC
2414 #define GL_IMAGE_CLASS_2_X_16 0x82BD
2415 #define GL_IMAGE_CLASS_1_X_16 0x82BE
2416 #define GL_IMAGE_CLASS_4_X_8 0x82BF
2417 #define GL_IMAGE_CLASS_2_X_8 0x82C0
2418 #define GL_IMAGE_CLASS_1_X_8 0x82C1
2419 #define GL_IMAGE_CLASS_11_11_10 0x82C2
2420 #define GL_IMAGE_CLASS_10_10_10_2 0x82C3
2421 #define GL_VIEW_CLASS_128_BITS 0x82C4
2422 #define GL_VIEW_CLASS_96_BITS 0x82C5
2423 #define GL_VIEW_CLASS_64_BITS 0x82C6
2424 #define GL_VIEW_CLASS_48_BITS 0x82C7
2425 #define GL_VIEW_CLASS_32_BITS 0x82C8
2426 #define GL_VIEW_CLASS_24_BITS 0x82C9
2427 #define GL_VIEW_CLASS_16_BITS 0x82CA
2428 #define GL_VIEW_CLASS_8_BITS 0x82CB
2429 #define GL_VIEW_CLASS_S3TC_DXT1_RGB 0x82CC
2430 #define GL_VIEW_CLASS_S3TC_DXT1_RGBA 0x82CD
2431 #define GL_VIEW_CLASS_S3TC_DXT3_RGBA 0x82CE
2432 #define GL_VIEW_CLASS_S3TC_DXT5_RGBA 0x82CF
2433 #define GL_VIEW_CLASS_RGTC1_RED 0x82D0
2434 #define GL_VIEW_CLASS_RGTC2_RG 0x82D1
2435 #define GL_VIEW_CLASS_BPTC_UNORM 0x82D2
2436 #define GL_VIEW_CLASS_BPTC_FLOAT 0x82D3
2437 #define GL_UNIFORM 0x92E1
2438 #define GL_UNIFORM_BLOCK 0x92E2
2439 #define GL_PROGRAM_INPUT 0x92E3
2440 #define GL_PROGRAM_OUTPUT 0x92E4
2441 #define GL_BUFFER_VARIABLE 0x92E5
2442 #define GL_SHADER_STORAGE_BLOCK 0x92E6
2443 #define GL_VERTEX_SUBROUTINE 0x92E8
2444 #define GL_TESS_CONTROL_SUBROUTINE 0x92E9
2445 #define GL_TESS_EVALUATION_SUBROUTINE 0x92EA
2446 #define GL_GEOMETRY_SUBROUTINE 0x92EB
2447 #define GL_FRAGMENT_SUBROUTINE 0x92EC
2448 #define GL_COMPUTE_SUBROUTINE 0x92ED
2449 #define GL_VERTEX_SUBROUTINE_UNIFORM 0x92EE
2450 #define GL_TESS_CONTROL_SUBROUTINE_UNIFORM 0x92EF
2451 #define GL_TESS_EVALUATION_SUBROUTINE_UNIFORM 0x92F0
2452 #define GL_GEOMETRY_SUBROUTINE_UNIFORM 0x92F1
2453 #define GL_FRAGMENT_SUBROUTINE_UNIFORM 0x92F2
2454 #define GL_COMPUTE_SUBROUTINE_UNIFORM 0x92F3
2455 #define GL_TRANSFORM_FEEDBACK_VARYING 0x92F4
2456 #define GL_ACTIVE_RESOURCES 0x92F5
2457 #define GL_MAX_NAME_LENGTH 0x92F6
2458 #define GL_MAX_NUM_ACTIVE_VARIABLES 0x92F7
2459 #define GL_MAX_NUM_COMPATIBLE_SUBROUTINES 0x92F8
2460 #define GL_NAME_LENGTH 0x92F9
2461 #define GL_TYPE 0x92FA
2462 #define GL_ARRAY_SIZE 0x92FB
2463 #define GL_OFFSET 0x92FC
2464 #define GL_BLOCK_INDEX 0x92FD
2465 #define GL_ARRAY_STRIDE 0x92FE
2466 #define GL_MATRIX_STRIDE 0x92FF
2467 #define GL_IS_ROW_MAJOR 0x9300
2468 #define GL_ATOMIC_COUNTER_BUFFER_INDEX 0x9301
2469 #define GL_BUFFER_BINDING 0x9302
2470 #define GL_BUFFER_DATA_SIZE 0x9303
2471 #define GL_NUM_ACTIVE_VARIABLES 0x9304
2472 #define GL_ACTIVE_VARIABLES 0x9305
2473 #define GL_REFERENCED_BY_VERTEX_SHADER 0x9306
2474 #define GL_REFERENCED_BY_TESS_CONTROL_SHADER 0x9307
2475 #define GL_REFERENCED_BY_TESS_EVALUATION_SHADER 0x9308
2476 #define GL_REFERENCED_BY_GEOMETRY_SHADER 0x9309
2477 #define GL_REFERENCED_BY_FRAGMENT_SHADER 0x930A
2478 #define GL_REFERENCED_BY_COMPUTE_SHADER 0x930B
2479 #define GL_TOP_LEVEL_ARRAY_SIZE 0x930C
2480 #define GL_TOP_LEVEL_ARRAY_STRIDE 0x930D
2481 #define GL_LOCATION 0x930E
2482 #define GL_LOCATION_INDEX 0x930F
2483 #define GL_IS_PER_PATCH 0x92E7
2484 #define GL_SHADER_STORAGE_BUFFER 0x90D2
2485 #define GL_SHADER_STORAGE_BUFFER_BINDING 0x90D3
2486 #define GL_SHADER_STORAGE_BUFFER_START 0x90D4
2487 #define GL_SHADER_STORAGE_BUFFER_SIZE 0x90D5
2488 #define GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS 0x90D6
2489 #define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS 0x90D7
2490 #define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS 0x90D8
2491 #define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS 0x90D9
2492 #define GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS 0x90DA
2493 #define GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS 0x90DB
2494 #define GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS 0x90DC
2495 #define GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS 0x90DD
2496 #define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE
2497 #define GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT 0x90DF
2498 #define GL_SHADER_STORAGE_BARRIER_BIT 0x00002000
2499 #define GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES 0x8F39
2500 #define GL_DEPTH_STENCIL_TEXTURE_MODE 0x90EA
2501 #define GL_TEXTURE_BUFFER_OFFSET 0x919D
2502 #define GL_TEXTURE_BUFFER_SIZE 0x919E
2503 #define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT 0x919F
2504 #define GL_TEXTURE_VIEW_MIN_LEVEL 0x82DB
2505 #define GL_TEXTURE_VIEW_NUM_LEVELS 0x82DC
2506 #define GL_TEXTURE_VIEW_MIN_LAYER 0x82DD
2507 #define GL_TEXTURE_VIEW_NUM_LAYERS 0x82DE
2508 #define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF
2509 #define GL_VERTEX_ATTRIB_BINDING 0x82D4
2510 #define GL_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D5
2511 #define GL_VERTEX_BINDING_DIVISOR 0x82D6
2512 #define GL_VERTEX_BINDING_OFFSET 0x82D7
2513 #define GL_VERTEX_BINDING_STRIDE 0x82D8
2514 #define GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D9
2515 #define GL_MAX_VERTEX_ATTRIB_BINDINGS 0x82DA
2516 #define GL_VERTEX_BINDING_BUFFER 0x8F4F
2517 typedef void (APIENTRYP PFNGLCLEARBUFFERDATAPROC
) (GLenum target
, GLenum internalformat
, GLenum format
, GLenum type
, const void *data
);
2518 typedef void (APIENTRYP PFNGLCLEARBUFFERSUBDATAPROC
) (GLenum target
, GLenum internalformat
, GLintptr offset
, GLsizeiptr size
, GLenum format
, GLenum type
, const void *data
);
2519 typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEPROC
) (GLuint num_groups_x
, GLuint num_groups_y
, GLuint num_groups_z
);
2520 typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEINDIRECTPROC
) (GLintptr indirect
);
2521 typedef void (APIENTRYP PFNGLCOPYIMAGESUBDATAPROC
) (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
);
2522 typedef void (APIENTRYP PFNGLFRAMEBUFFERPARAMETERIPROC
) (GLenum target
, GLenum pname
, GLint param
);
2523 typedef void (APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
2524 typedef void (APIENTRYP PFNGLGETINTERNALFORMATI64VPROC
) (GLenum target
, GLenum internalformat
, GLenum pname
, GLsizei bufSize
, GLint64
*params
);
2525 typedef void (APIENTRYP PFNGLINVALIDATETEXSUBIMAGEPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
);
2526 typedef void (APIENTRYP PFNGLINVALIDATETEXIMAGEPROC
) (GLuint texture
, GLint level
);
2527 typedef void (APIENTRYP PFNGLINVALIDATEBUFFERSUBDATAPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr length
);
2528 typedef void (APIENTRYP PFNGLINVALIDATEBUFFERDATAPROC
) (GLuint buffer
);
2529 typedef void (APIENTRYP PFNGLINVALIDATEFRAMEBUFFERPROC
) (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
2530 typedef void (APIENTRYP PFNGLINVALIDATESUBFRAMEBUFFERPROC
) (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2531 typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTPROC
) (GLenum mode
, const void *indirect
, GLsizei drawcount
, GLsizei stride
);
2532 typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTPROC
) (GLenum mode
, GLenum type
, const void *indirect
, GLsizei drawcount
, GLsizei stride
);
2533 typedef void (APIENTRYP PFNGLGETPROGRAMINTERFACEIVPROC
) (GLuint program
, GLenum programInterface
, GLenum pname
, GLint
*params
);
2534 typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC
) (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2535 typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCENAMEPROC
) (GLuint program
, GLenum programInterface
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLchar
*name
);
2536 typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCEIVPROC
) (GLuint program
, GLenum programInterface
, GLuint index
, GLsizei propCount
, const GLenum
*props
, GLsizei bufSize
, GLsizei
*length
, GLint
*params
);
2537 typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC
) (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2538 typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC
) (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2539 typedef void (APIENTRYP PFNGLSHADERSTORAGEBLOCKBINDINGPROC
) (GLuint program
, GLuint storageBlockIndex
, GLuint storageBlockBinding
);
2540 typedef void (APIENTRYP PFNGLTEXBUFFERRANGEPROC
) (GLenum target
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2541 typedef void (APIENTRYP PFNGLTEXSTORAGE2DMULTISAMPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
2542 typedef void (APIENTRYP PFNGLTEXSTORAGE3DMULTISAMPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
2543 typedef void (APIENTRYP PFNGLTEXTUREVIEWPROC
) (GLuint texture
, GLenum target
, GLuint origtexture
, GLenum internalformat
, GLuint minlevel
, GLuint numlevels
, GLuint minlayer
, GLuint numlayers
);
2544 typedef void (APIENTRYP PFNGLBINDVERTEXBUFFERPROC
) (GLuint bindingindex
, GLuint buffer
, GLintptr offset
, GLsizei stride
);
2545 typedef void (APIENTRYP PFNGLVERTEXATTRIBFORMATPROC
) (GLuint attribindex
, GLint size
, GLenum type
, GLboolean normalized
, GLuint relativeoffset
);
2546 typedef void (APIENTRYP PFNGLVERTEXATTRIBIFORMATPROC
) (GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2547 typedef void (APIENTRYP PFNGLVERTEXATTRIBLFORMATPROC
) (GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2548 typedef void (APIENTRYP PFNGLVERTEXATTRIBBINDINGPROC
) (GLuint attribindex
, GLuint bindingindex
);
2549 typedef void (APIENTRYP PFNGLVERTEXBINDINGDIVISORPROC
) (GLuint bindingindex
, GLuint divisor
);
2550 typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC
) (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
2551 typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC
) (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
2552 typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC
) (GLDEBUGPROC callback
, const void *userParam
);
2553 typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC
) (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
2554 typedef void (APIENTRYP PFNGLPUSHDEBUGGROUPPROC
) (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
2555 typedef void (APIENTRYP PFNGLPOPDEBUGGROUPPROC
) (void);
2556 typedef void (APIENTRYP PFNGLOBJECTLABELPROC
) (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
2557 typedef void (APIENTRYP PFNGLGETOBJECTLABELPROC
) (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
2558 typedef void (APIENTRYP PFNGLOBJECTPTRLABELPROC
) (const void *ptr
, GLsizei length
, const GLchar
*label
);
2559 typedef void (APIENTRYP PFNGLGETOBJECTPTRLABELPROC
) (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
2560 #ifdef GL_GLEXT_PROTOTYPES
2561 GLAPI
void APIENTRY
glClearBufferData (GLenum target
, GLenum internalformat
, GLenum format
, GLenum type
, const void *data
);
2562 GLAPI
void APIENTRY
glClearBufferSubData (GLenum target
, GLenum internalformat
, GLintptr offset
, GLsizeiptr size
, GLenum format
, GLenum type
, const void *data
);
2563 GLAPI
void APIENTRY
glDispatchCompute (GLuint num_groups_x
, GLuint num_groups_y
, GLuint num_groups_z
);
2564 GLAPI
void APIENTRY
glDispatchComputeIndirect (GLintptr indirect
);
2565 GLAPI
void APIENTRY
glCopyImageSubData (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
);
2566 GLAPI
void APIENTRY
glFramebufferParameteri (GLenum target
, GLenum pname
, GLint param
);
2567 GLAPI
void APIENTRY
glGetFramebufferParameteriv (GLenum target
, GLenum pname
, GLint
*params
);
2568 GLAPI
void APIENTRY
glGetInternalformati64v (GLenum target
, GLenum internalformat
, GLenum pname
, GLsizei bufSize
, GLint64
*params
);
2569 GLAPI
void APIENTRY
glInvalidateTexSubImage (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
);
2570 GLAPI
void APIENTRY
glInvalidateTexImage (GLuint texture
, GLint level
);
2571 GLAPI
void APIENTRY
glInvalidateBufferSubData (GLuint buffer
, GLintptr offset
, GLsizeiptr length
);
2572 GLAPI
void APIENTRY
glInvalidateBufferData (GLuint buffer
);
2573 GLAPI
void APIENTRY
glInvalidateFramebuffer (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
2574 GLAPI
void APIENTRY
glInvalidateSubFramebuffer (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2575 GLAPI
void APIENTRY
glMultiDrawArraysIndirect (GLenum mode
, const void *indirect
, GLsizei drawcount
, GLsizei stride
);
2576 GLAPI
void APIENTRY
glMultiDrawElementsIndirect (GLenum mode
, GLenum type
, const void *indirect
, GLsizei drawcount
, GLsizei stride
);
2577 GLAPI
void APIENTRY
glGetProgramInterfaceiv (GLuint program
, GLenum programInterface
, GLenum pname
, GLint
*params
);
2578 GLAPI GLuint APIENTRY
glGetProgramResourceIndex (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2579 GLAPI
void APIENTRY
glGetProgramResourceName (GLuint program
, GLenum programInterface
, GLuint index
, GLsizei bufSize
, GLsizei
*length
, GLchar
*name
);
2580 GLAPI
void APIENTRY
glGetProgramResourceiv (GLuint program
, GLenum programInterface
, GLuint index
, GLsizei propCount
, const GLenum
*props
, GLsizei bufSize
, GLsizei
*length
, GLint
*params
);
2581 GLAPI GLint APIENTRY
glGetProgramResourceLocation (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2582 GLAPI GLint APIENTRY
glGetProgramResourceLocationIndex (GLuint program
, GLenum programInterface
, const GLchar
*name
);
2583 GLAPI
void APIENTRY
glShaderStorageBlockBinding (GLuint program
, GLuint storageBlockIndex
, GLuint storageBlockBinding
);
2584 GLAPI
void APIENTRY
glTexBufferRange (GLenum target
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2585 GLAPI
void APIENTRY
glTexStorage2DMultisample (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
2586 GLAPI
void APIENTRY
glTexStorage3DMultisample (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
2587 GLAPI
void APIENTRY
glTextureView (GLuint texture
, GLenum target
, GLuint origtexture
, GLenum internalformat
, GLuint minlevel
, GLuint numlevels
, GLuint minlayer
, GLuint numlayers
);
2588 GLAPI
void APIENTRY
glBindVertexBuffer (GLuint bindingindex
, GLuint buffer
, GLintptr offset
, GLsizei stride
);
2589 GLAPI
void APIENTRY
glVertexAttribFormat (GLuint attribindex
, GLint size
, GLenum type
, GLboolean normalized
, GLuint relativeoffset
);
2590 GLAPI
void APIENTRY
glVertexAttribIFormat (GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2591 GLAPI
void APIENTRY
glVertexAttribLFormat (GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2592 GLAPI
void APIENTRY
glVertexAttribBinding (GLuint attribindex
, GLuint bindingindex
);
2593 GLAPI
void APIENTRY
glVertexBindingDivisor (GLuint bindingindex
, GLuint divisor
);
2594 GLAPI
void APIENTRY
glDebugMessageControl (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
2595 GLAPI
void APIENTRY
glDebugMessageInsert (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
2596 GLAPI
void APIENTRY
glDebugMessageCallback (GLDEBUGPROC callback
, const void *userParam
);
2597 GLAPI GLuint APIENTRY
glGetDebugMessageLog (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
2598 GLAPI
void APIENTRY
glPushDebugGroup (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
2599 GLAPI
void APIENTRY
glPopDebugGroup (void);
2600 GLAPI
void APIENTRY
glObjectLabel (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
2601 GLAPI
void APIENTRY
glGetObjectLabel (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
2602 GLAPI
void APIENTRY
glObjectPtrLabel (const void *ptr
, GLsizei length
, const GLchar
*label
);
2603 GLAPI
void APIENTRY
glGetObjectPtrLabel (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
2605 #endif /* GL_VERSION_4_3 */
2607 #ifndef GL_VERSION_4_4
2608 #define GL_VERSION_4_4 1
2609 #define GL_MAX_VERTEX_ATTRIB_STRIDE 0x82E5
2610 #define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221
2611 #define GL_TEXTURE_BUFFER_BINDING 0x8C2A
2612 #define GL_MAP_PERSISTENT_BIT 0x0040
2613 #define GL_MAP_COHERENT_BIT 0x0080
2614 #define GL_DYNAMIC_STORAGE_BIT 0x0100
2615 #define GL_CLIENT_STORAGE_BIT 0x0200
2616 #define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT 0x00004000
2617 #define GL_BUFFER_IMMUTABLE_STORAGE 0x821F
2618 #define GL_BUFFER_STORAGE_FLAGS 0x8220
2619 #define GL_CLEAR_TEXTURE 0x9365
2620 #define GL_LOCATION_COMPONENT 0x934A
2621 #define GL_TRANSFORM_FEEDBACK_BUFFER_INDEX 0x934B
2622 #define GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE 0x934C
2623 #define GL_QUERY_BUFFER 0x9192
2624 #define GL_QUERY_BUFFER_BARRIER_BIT 0x00008000
2625 #define GL_QUERY_BUFFER_BINDING 0x9193
2626 #define GL_QUERY_RESULT_NO_WAIT 0x9194
2627 #define GL_MIRROR_CLAMP_TO_EDGE 0x8743
2628 typedef void (APIENTRYP PFNGLBUFFERSTORAGEPROC
) (GLenum target
, GLsizeiptr size
, const void *data
, GLbitfield flags
);
2629 typedef void (APIENTRYP PFNGLCLEARTEXIMAGEPROC
) (GLuint texture
, GLint level
, GLenum format
, GLenum type
, const void *data
);
2630 typedef void (APIENTRYP PFNGLCLEARTEXSUBIMAGEPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *data
);
2631 typedef void (APIENTRYP PFNGLBINDBUFFERSBASEPROC
) (GLenum target
, GLuint first
, GLsizei count
, const GLuint
*buffers
);
2632 typedef void (APIENTRYP PFNGLBINDBUFFERSRANGEPROC
) (GLenum target
, GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizeiptr
*sizes
);
2633 typedef void (APIENTRYP PFNGLBINDTEXTURESPROC
) (GLuint first
, GLsizei count
, const GLuint
*textures
);
2634 typedef void (APIENTRYP PFNGLBINDSAMPLERSPROC
) (GLuint first
, GLsizei count
, const GLuint
*samplers
);
2635 typedef void (APIENTRYP PFNGLBINDIMAGETEXTURESPROC
) (GLuint first
, GLsizei count
, const GLuint
*textures
);
2636 typedef void (APIENTRYP PFNGLBINDVERTEXBUFFERSPROC
) (GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizei
*strides
);
2637 #ifdef GL_GLEXT_PROTOTYPES
2638 GLAPI
void APIENTRY
glBufferStorage (GLenum target
, GLsizeiptr size
, const void *data
, GLbitfield flags
);
2639 GLAPI
void APIENTRY
glClearTexImage (GLuint texture
, GLint level
, GLenum format
, GLenum type
, const void *data
);
2640 GLAPI
void APIENTRY
glClearTexSubImage (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *data
);
2641 GLAPI
void APIENTRY
glBindBuffersBase (GLenum target
, GLuint first
, GLsizei count
, const GLuint
*buffers
);
2642 GLAPI
void APIENTRY
glBindBuffersRange (GLenum target
, GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizeiptr
*sizes
);
2643 GLAPI
void APIENTRY
glBindTextures (GLuint first
, GLsizei count
, const GLuint
*textures
);
2644 GLAPI
void APIENTRY
glBindSamplers (GLuint first
, GLsizei count
, const GLuint
*samplers
);
2645 GLAPI
void APIENTRY
glBindImageTextures (GLuint first
, GLsizei count
, const GLuint
*textures
);
2646 GLAPI
void APIENTRY
glBindVertexBuffers (GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizei
*strides
);
2648 #endif /* GL_VERSION_4_4 */
2650 #ifndef GL_VERSION_4_5
2651 #define GL_VERSION_4_5 1
2652 #define GL_CONTEXT_LOST 0x0507
2653 #define GL_NEGATIVE_ONE_TO_ONE 0x935E
2654 #define GL_ZERO_TO_ONE 0x935F
2655 #define GL_CLIP_ORIGIN 0x935C
2656 #define GL_CLIP_DEPTH_MODE 0x935D
2657 #define GL_QUERY_WAIT_INVERTED 0x8E17
2658 #define GL_QUERY_NO_WAIT_INVERTED 0x8E18
2659 #define GL_QUERY_BY_REGION_WAIT_INVERTED 0x8E19
2660 #define GL_QUERY_BY_REGION_NO_WAIT_INVERTED 0x8E1A
2661 #define GL_MAX_CULL_DISTANCES 0x82F9
2662 #define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES 0x82FA
2663 #define GL_TEXTURE_TARGET 0x1006
2664 #define GL_QUERY_TARGET 0x82EA
2665 #define GL_GUILTY_CONTEXT_RESET 0x8253
2666 #define GL_INNOCENT_CONTEXT_RESET 0x8254
2667 #define GL_UNKNOWN_CONTEXT_RESET 0x8255
2668 #define GL_RESET_NOTIFICATION_STRATEGY 0x8256
2669 #define GL_LOSE_CONTEXT_ON_RESET 0x8252
2670 #define GL_NO_RESET_NOTIFICATION 0x8261
2671 #define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT 0x00000004
2672 #define GL_CONTEXT_RELEASE_BEHAVIOR 0x82FB
2673 #define GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH 0x82FC
2674 typedef void (APIENTRYP PFNGLCLIPCONTROLPROC
) (GLenum origin
, GLenum depth
);
2675 typedef void (APIENTRYP PFNGLCREATETRANSFORMFEEDBACKSPROC
) (GLsizei n
, GLuint
*ids
);
2676 typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC
) (GLuint xfb
, GLuint index
, GLuint buffer
);
2677 typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC
) (GLuint xfb
, GLuint index
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2678 typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKIVPROC
) (GLuint xfb
, GLenum pname
, GLint
*param
);
2679 typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKI_VPROC
) (GLuint xfb
, GLenum pname
, GLuint index
, GLint
*param
);
2680 typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKI64_VPROC
) (GLuint xfb
, GLenum pname
, GLuint index
, GLint64
*param
);
2681 typedef void (APIENTRYP PFNGLCREATEBUFFERSPROC
) (GLsizei n
, GLuint
*buffers
);
2682 typedef void (APIENTRYP PFNGLNAMEDBUFFERSTORAGEPROC
) (GLuint buffer
, GLsizeiptr size
, const void *data
, GLbitfield flags
);
2683 typedef void (APIENTRYP PFNGLNAMEDBUFFERDATAPROC
) (GLuint buffer
, GLsizeiptr size
, const void *data
, GLenum usage
);
2684 typedef void (APIENTRYP PFNGLNAMEDBUFFERSUBDATAPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, const void *data
);
2685 typedef void (APIENTRYP PFNGLCOPYNAMEDBUFFERSUBDATAPROC
) (GLuint readBuffer
, GLuint writeBuffer
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
2686 typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERDATAPROC
) (GLuint buffer
, GLenum internalformat
, GLenum format
, GLenum type
, const void *data
);
2687 typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERSUBDATAPROC
) (GLuint buffer
, GLenum internalformat
, GLintptr offset
, GLsizeiptr size
, GLenum format
, GLenum type
, const void *data
);
2688 typedef void *(APIENTRYP PFNGLMAPNAMEDBUFFERPROC
) (GLuint buffer
, GLenum access
);
2689 typedef void *(APIENTRYP PFNGLMAPNAMEDBUFFERRANGEPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
2690 typedef GLboolean (APIENTRYP PFNGLUNMAPNAMEDBUFFERPROC
) (GLuint buffer
);
2691 typedef void (APIENTRYP PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr length
);
2692 typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERIVPROC
) (GLuint buffer
, GLenum pname
, GLint
*params
);
2693 typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERI64VPROC
) (GLuint buffer
, GLenum pname
, GLint64
*params
);
2694 typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPOINTERVPROC
) (GLuint buffer
, GLenum pname
, void **params
);
2695 typedef void (APIENTRYP PFNGLGETNAMEDBUFFERSUBDATAPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, void *data
);
2696 typedef void (APIENTRYP PFNGLCREATEFRAMEBUFFERSPROC
) (GLsizei n
, GLuint
*framebuffers
);
2697 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC
) (GLuint framebuffer
, GLenum attachment
, GLenum renderbuffertarget
, GLuint renderbuffer
);
2698 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC
) (GLuint framebuffer
, GLenum pname
, GLint param
);
2699 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTUREPROC
) (GLuint framebuffer
, GLenum attachment
, GLuint texture
, GLint level
);
2700 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC
) (GLuint framebuffer
, GLenum attachment
, GLuint texture
, GLint level
, GLint layer
);
2701 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC
) (GLuint framebuffer
, GLenum buf
);
2702 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC
) (GLuint framebuffer
, GLsizei n
, const GLenum
*bufs
);
2703 typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC
) (GLuint framebuffer
, GLenum src
);
2704 typedef void (APIENTRYP PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC
) (GLuint framebuffer
, GLsizei numAttachments
, const GLenum
*attachments
);
2705 typedef void (APIENTRYP PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC
) (GLuint framebuffer
, GLsizei numAttachments
, const GLenum
*attachments
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2706 typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERIVPROC
) (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLint
*value
);
2707 typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC
) (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLuint
*value
);
2708 typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERFVPROC
) (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLfloat
*value
);
2709 typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERFIPROC
) (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, GLfloat depth
, GLint stencil
);
2710 typedef void (APIENTRYP PFNGLBLITNAMEDFRAMEBUFFERPROC
) (GLuint readFramebuffer
, GLuint drawFramebuffer
, GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
2711 typedef GLenum (APIENTRYP PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC
) (GLuint framebuffer
, GLenum target
);
2712 typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC
) (GLuint framebuffer
, GLenum pname
, GLint
*param
);
2713 typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC
) (GLuint framebuffer
, GLenum attachment
, GLenum pname
, GLint
*params
);
2714 typedef void (APIENTRYP PFNGLCREATERENDERBUFFERSPROC
) (GLsizei n
, GLuint
*renderbuffers
);
2715 typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEPROC
) (GLuint renderbuffer
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2716 typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC
) (GLuint renderbuffer
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2717 typedef void (APIENTRYP PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC
) (GLuint renderbuffer
, GLenum pname
, GLint
*params
);
2718 typedef void (APIENTRYP PFNGLCREATETEXTURESPROC
) (GLenum target
, GLsizei n
, GLuint
*textures
);
2719 typedef void (APIENTRYP PFNGLTEXTUREBUFFERPROC
) (GLuint texture
, GLenum internalformat
, GLuint buffer
);
2720 typedef void (APIENTRYP PFNGLTEXTUREBUFFERRANGEPROC
) (GLuint texture
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2721 typedef void (APIENTRYP PFNGLTEXTURESTORAGE1DPROC
) (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
2722 typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DPROC
) (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2723 typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DPROC
) (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
2724 typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC
) (GLuint texture
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
2725 typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC
) (GLuint texture
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
2726 typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE1DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLenum type
, const void *pixels
);
2727 typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE2DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, const void *pixels
);
2728 typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE3DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
2729 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLsizei imageSize
, const void *data
);
2730 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLsizei imageSize
, const void *data
);
2731 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
2732 typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE1DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint x
, GLint y
, GLsizei width
);
2733 typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE2DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2734 typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE3DPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2735 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFPROC
) (GLuint texture
, GLenum pname
, GLfloat param
);
2736 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFVPROC
) (GLuint texture
, GLenum pname
, const GLfloat
*param
);
2737 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIPROC
) (GLuint texture
, GLenum pname
, GLint param
);
2738 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIIVPROC
) (GLuint texture
, GLenum pname
, const GLint
*params
);
2739 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIUIVPROC
) (GLuint texture
, GLenum pname
, const GLuint
*params
);
2740 typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIVPROC
) (GLuint texture
, GLenum pname
, const GLint
*param
);
2741 typedef void (APIENTRYP PFNGLGENERATETEXTUREMIPMAPPROC
) (GLuint texture
);
2742 typedef void (APIENTRYP PFNGLBINDTEXTUREUNITPROC
) (GLuint unit
, GLuint texture
);
2743 typedef void (APIENTRYP PFNGLGETTEXTUREIMAGEPROC
) (GLuint texture
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2744 typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC
) (GLuint texture
, GLint level
, GLsizei bufSize
, void *pixels
);
2745 typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERFVPROC
) (GLuint texture
, GLint level
, GLenum pname
, GLfloat
*params
);
2746 typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERIVPROC
) (GLuint texture
, GLint level
, GLenum pname
, GLint
*params
);
2747 typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERFVPROC
) (GLuint texture
, GLenum pname
, GLfloat
*params
);
2748 typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIIVPROC
) (GLuint texture
, GLenum pname
, GLint
*params
);
2749 typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIUIVPROC
) (GLuint texture
, GLenum pname
, GLuint
*params
);
2750 typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIVPROC
) (GLuint texture
, GLenum pname
, GLint
*params
);
2751 typedef void (APIENTRYP PFNGLCREATEVERTEXARRAYSPROC
) (GLsizei n
, GLuint
*arrays
);
2752 typedef void (APIENTRYP PFNGLDISABLEVERTEXARRAYATTRIBPROC
) (GLuint vaobj
, GLuint index
);
2753 typedef void (APIENTRYP PFNGLENABLEVERTEXARRAYATTRIBPROC
) (GLuint vaobj
, GLuint index
);
2754 typedef void (APIENTRYP PFNGLVERTEXARRAYELEMENTBUFFERPROC
) (GLuint vaobj
, GLuint buffer
);
2755 typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXBUFFERPROC
) (GLuint vaobj
, GLuint bindingindex
, GLuint buffer
, GLintptr offset
, GLsizei stride
);
2756 typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXBUFFERSPROC
) (GLuint vaobj
, GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizei
*strides
);
2757 typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBBINDINGPROC
) (GLuint vaobj
, GLuint attribindex
, GLuint bindingindex
);
2758 typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBFORMATPROC
) (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLboolean normalized
, GLuint relativeoffset
);
2759 typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBIFORMATPROC
) (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2760 typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBLFORMATPROC
) (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2761 typedef void (APIENTRYP PFNGLVERTEXARRAYBINDINGDIVISORPROC
) (GLuint vaobj
, GLuint bindingindex
, GLuint divisor
);
2762 typedef void (APIENTRYP PFNGLGETVERTEXARRAYIVPROC
) (GLuint vaobj
, GLenum pname
, GLint
*param
);
2763 typedef void (APIENTRYP PFNGLGETVERTEXARRAYINDEXEDIVPROC
) (GLuint vaobj
, GLuint index
, GLenum pname
, GLint
*param
);
2764 typedef void (APIENTRYP PFNGLGETVERTEXARRAYINDEXED64IVPROC
) (GLuint vaobj
, GLuint index
, GLenum pname
, GLint64
*param
);
2765 typedef void (APIENTRYP PFNGLCREATESAMPLERSPROC
) (GLsizei n
, GLuint
*samplers
);
2766 typedef void (APIENTRYP PFNGLCREATEPROGRAMPIPELINESPROC
) (GLsizei n
, GLuint
*pipelines
);
2767 typedef void (APIENTRYP PFNGLCREATEQUERIESPROC
) (GLenum target
, GLsizei n
, GLuint
*ids
);
2768 typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTI64VPROC
) (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2769 typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTIVPROC
) (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2770 typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTUI64VPROC
) (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2771 typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTUIVPROC
) (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2772 typedef void (APIENTRYP PFNGLMEMORYBARRIERBYREGIONPROC
) (GLbitfield barriers
);
2773 typedef void (APIENTRYP PFNGLGETTEXTURESUBIMAGEPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2774 typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC
) (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLsizei bufSize
, void *pixels
);
2775 typedef GLenum (APIENTRYP PFNGLGETGRAPHICSRESETSTATUSPROC
) (void);
2776 typedef void (APIENTRYP PFNGLGETNCOMPRESSEDTEXIMAGEPROC
) (GLenum target
, GLint lod
, GLsizei bufSize
, void *pixels
);
2777 typedef void (APIENTRYP PFNGLGETNTEXIMAGEPROC
) (GLenum target
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2778 typedef void (APIENTRYP PFNGLGETNUNIFORMDVPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLdouble
*params
);
2779 typedef void (APIENTRYP PFNGLGETNUNIFORMFVPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
2780 typedef void (APIENTRYP PFNGLGETNUNIFORMIVPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
2781 typedef void (APIENTRYP PFNGLGETNUNIFORMUIVPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLuint
*params
);
2782 typedef void (APIENTRYP PFNGLREADNPIXELSPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
2783 typedef void (APIENTRYP PFNGLTEXTUREBARRIERPROC
) (void);
2784 #ifdef GL_GLEXT_PROTOTYPES
2785 GLAPI
void APIENTRY
glClipControl (GLenum origin
, GLenum depth
);
2786 GLAPI
void APIENTRY
glCreateTransformFeedbacks (GLsizei n
, GLuint
*ids
);
2787 GLAPI
void APIENTRY
glTransformFeedbackBufferBase (GLuint xfb
, GLuint index
, GLuint buffer
);
2788 GLAPI
void APIENTRY
glTransformFeedbackBufferRange (GLuint xfb
, GLuint index
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2789 GLAPI
void APIENTRY
glGetTransformFeedbackiv (GLuint xfb
, GLenum pname
, GLint
*param
);
2790 GLAPI
void APIENTRY
glGetTransformFeedbacki_v (GLuint xfb
, GLenum pname
, GLuint index
, GLint
*param
);
2791 GLAPI
void APIENTRY
glGetTransformFeedbacki64_v (GLuint xfb
, GLenum pname
, GLuint index
, GLint64
*param
);
2792 GLAPI
void APIENTRY
glCreateBuffers (GLsizei n
, GLuint
*buffers
);
2793 GLAPI
void APIENTRY
glNamedBufferStorage (GLuint buffer
, GLsizeiptr size
, const void *data
, GLbitfield flags
);
2794 GLAPI
void APIENTRY
glNamedBufferData (GLuint buffer
, GLsizeiptr size
, const void *data
, GLenum usage
);
2795 GLAPI
void APIENTRY
glNamedBufferSubData (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, const void *data
);
2796 GLAPI
void APIENTRY
glCopyNamedBufferSubData (GLuint readBuffer
, GLuint writeBuffer
, GLintptr readOffset
, GLintptr writeOffset
, GLsizeiptr size
);
2797 GLAPI
void APIENTRY
glClearNamedBufferData (GLuint buffer
, GLenum internalformat
, GLenum format
, GLenum type
, const void *data
);
2798 GLAPI
void APIENTRY
glClearNamedBufferSubData (GLuint buffer
, GLenum internalformat
, GLintptr offset
, GLsizeiptr size
, GLenum format
, GLenum type
, const void *data
);
2799 GLAPI
void *APIENTRY
glMapNamedBuffer (GLuint buffer
, GLenum access
);
2800 GLAPI
void *APIENTRY
glMapNamedBufferRange (GLuint buffer
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
2801 GLAPI GLboolean APIENTRY
glUnmapNamedBuffer (GLuint buffer
);
2802 GLAPI
void APIENTRY
glFlushMappedNamedBufferRange (GLuint buffer
, GLintptr offset
, GLsizeiptr length
);
2803 GLAPI
void APIENTRY
glGetNamedBufferParameteriv (GLuint buffer
, GLenum pname
, GLint
*params
);
2804 GLAPI
void APIENTRY
glGetNamedBufferParameteri64v (GLuint buffer
, GLenum pname
, GLint64
*params
);
2805 GLAPI
void APIENTRY
glGetNamedBufferPointerv (GLuint buffer
, GLenum pname
, void **params
);
2806 GLAPI
void APIENTRY
glGetNamedBufferSubData (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, void *data
);
2807 GLAPI
void APIENTRY
glCreateFramebuffers (GLsizei n
, GLuint
*framebuffers
);
2808 GLAPI
void APIENTRY
glNamedFramebufferRenderbuffer (GLuint framebuffer
, GLenum attachment
, GLenum renderbuffertarget
, GLuint renderbuffer
);
2809 GLAPI
void APIENTRY
glNamedFramebufferParameteri (GLuint framebuffer
, GLenum pname
, GLint param
);
2810 GLAPI
void APIENTRY
glNamedFramebufferTexture (GLuint framebuffer
, GLenum attachment
, GLuint texture
, GLint level
);
2811 GLAPI
void APIENTRY
glNamedFramebufferTextureLayer (GLuint framebuffer
, GLenum attachment
, GLuint texture
, GLint level
, GLint layer
);
2812 GLAPI
void APIENTRY
glNamedFramebufferDrawBuffer (GLuint framebuffer
, GLenum buf
);
2813 GLAPI
void APIENTRY
glNamedFramebufferDrawBuffers (GLuint framebuffer
, GLsizei n
, const GLenum
*bufs
);
2814 GLAPI
void APIENTRY
glNamedFramebufferReadBuffer (GLuint framebuffer
, GLenum src
);
2815 GLAPI
void APIENTRY
glInvalidateNamedFramebufferData (GLuint framebuffer
, GLsizei numAttachments
, const GLenum
*attachments
);
2816 GLAPI
void APIENTRY
glInvalidateNamedFramebufferSubData (GLuint framebuffer
, GLsizei numAttachments
, const GLenum
*attachments
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2817 GLAPI
void APIENTRY
glClearNamedFramebufferiv (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLint
*value
);
2818 GLAPI
void APIENTRY
glClearNamedFramebufferuiv (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLuint
*value
);
2819 GLAPI
void APIENTRY
glClearNamedFramebufferfv (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, const GLfloat
*value
);
2820 GLAPI
void APIENTRY
glClearNamedFramebufferfi (GLuint framebuffer
, GLenum buffer
, GLint drawbuffer
, GLfloat depth
, GLint stencil
);
2821 GLAPI
void APIENTRY
glBlitNamedFramebuffer (GLuint readFramebuffer
, GLuint drawFramebuffer
, GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
2822 GLAPI GLenum APIENTRY
glCheckNamedFramebufferStatus (GLuint framebuffer
, GLenum target
);
2823 GLAPI
void APIENTRY
glGetNamedFramebufferParameteriv (GLuint framebuffer
, GLenum pname
, GLint
*param
);
2824 GLAPI
void APIENTRY
glGetNamedFramebufferAttachmentParameteriv (GLuint framebuffer
, GLenum attachment
, GLenum pname
, GLint
*params
);
2825 GLAPI
void APIENTRY
glCreateRenderbuffers (GLsizei n
, GLuint
*renderbuffers
);
2826 GLAPI
void APIENTRY
glNamedRenderbufferStorage (GLuint renderbuffer
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2827 GLAPI
void APIENTRY
glNamedRenderbufferStorageMultisample (GLuint renderbuffer
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2828 GLAPI
void APIENTRY
glGetNamedRenderbufferParameteriv (GLuint renderbuffer
, GLenum pname
, GLint
*params
);
2829 GLAPI
void APIENTRY
glCreateTextures (GLenum target
, GLsizei n
, GLuint
*textures
);
2830 GLAPI
void APIENTRY
glTextureBuffer (GLuint texture
, GLenum internalformat
, GLuint buffer
);
2831 GLAPI
void APIENTRY
glTextureBufferRange (GLuint texture
, GLenum internalformat
, GLuint buffer
, GLintptr offset
, GLsizeiptr size
);
2832 GLAPI
void APIENTRY
glTextureStorage1D (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
2833 GLAPI
void APIENTRY
glTextureStorage2D (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
2834 GLAPI
void APIENTRY
glTextureStorage3D (GLuint texture
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
2835 GLAPI
void APIENTRY
glTextureStorage2DMultisample (GLuint texture
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLboolean fixedsamplelocations
);
2836 GLAPI
void APIENTRY
glTextureStorage3DMultisample (GLuint texture
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean fixedsamplelocations
);
2837 GLAPI
void APIENTRY
glTextureSubImage1D (GLuint texture
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLenum type
, const void *pixels
);
2838 GLAPI
void APIENTRY
glTextureSubImage2D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, const void *pixels
);
2839 GLAPI
void APIENTRY
glTextureSubImage3D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const void *pixels
);
2840 GLAPI
void APIENTRY
glCompressedTextureSubImage1D (GLuint texture
, GLint level
, GLint xoffset
, GLsizei width
, GLenum format
, GLsizei imageSize
, const void *data
);
2841 GLAPI
void APIENTRY
glCompressedTextureSubImage2D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
, GLsizei height
, GLenum format
, GLsizei imageSize
, const void *data
);
2842 GLAPI
void APIENTRY
glCompressedTextureSubImage3D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const void *data
);
2843 GLAPI
void APIENTRY
glCopyTextureSubImage1D (GLuint texture
, GLint level
, GLint xoffset
, GLint x
, GLint y
, GLsizei width
);
2844 GLAPI
void APIENTRY
glCopyTextureSubImage2D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2845 GLAPI
void APIENTRY
glCopyTextureSubImage3D (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
2846 GLAPI
void APIENTRY
glTextureParameterf (GLuint texture
, GLenum pname
, GLfloat param
);
2847 GLAPI
void APIENTRY
glTextureParameterfv (GLuint texture
, GLenum pname
, const GLfloat
*param
);
2848 GLAPI
void APIENTRY
glTextureParameteri (GLuint texture
, GLenum pname
, GLint param
);
2849 GLAPI
void APIENTRY
glTextureParameterIiv (GLuint texture
, GLenum pname
, const GLint
*params
);
2850 GLAPI
void APIENTRY
glTextureParameterIuiv (GLuint texture
, GLenum pname
, const GLuint
*params
);
2851 GLAPI
void APIENTRY
glTextureParameteriv (GLuint texture
, GLenum pname
, const GLint
*param
);
2852 GLAPI
void APIENTRY
glGenerateTextureMipmap (GLuint texture
);
2853 GLAPI
void APIENTRY
glBindTextureUnit (GLuint unit
, GLuint texture
);
2854 GLAPI
void APIENTRY
glGetTextureImage (GLuint texture
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2855 GLAPI
void APIENTRY
glGetCompressedTextureImage (GLuint texture
, GLint level
, GLsizei bufSize
, void *pixels
);
2856 GLAPI
void APIENTRY
glGetTextureLevelParameterfv (GLuint texture
, GLint level
, GLenum pname
, GLfloat
*params
);
2857 GLAPI
void APIENTRY
glGetTextureLevelParameteriv (GLuint texture
, GLint level
, GLenum pname
, GLint
*params
);
2858 GLAPI
void APIENTRY
glGetTextureParameterfv (GLuint texture
, GLenum pname
, GLfloat
*params
);
2859 GLAPI
void APIENTRY
glGetTextureParameterIiv (GLuint texture
, GLenum pname
, GLint
*params
);
2860 GLAPI
void APIENTRY
glGetTextureParameterIuiv (GLuint texture
, GLenum pname
, GLuint
*params
);
2861 GLAPI
void APIENTRY
glGetTextureParameteriv (GLuint texture
, GLenum pname
, GLint
*params
);
2862 GLAPI
void APIENTRY
glCreateVertexArrays (GLsizei n
, GLuint
*arrays
);
2863 GLAPI
void APIENTRY
glDisableVertexArrayAttrib (GLuint vaobj
, GLuint index
);
2864 GLAPI
void APIENTRY
glEnableVertexArrayAttrib (GLuint vaobj
, GLuint index
);
2865 GLAPI
void APIENTRY
glVertexArrayElementBuffer (GLuint vaobj
, GLuint buffer
);
2866 GLAPI
void APIENTRY
glVertexArrayVertexBuffer (GLuint vaobj
, GLuint bindingindex
, GLuint buffer
, GLintptr offset
, GLsizei stride
);
2867 GLAPI
void APIENTRY
glVertexArrayVertexBuffers (GLuint vaobj
, GLuint first
, GLsizei count
, const GLuint
*buffers
, const GLintptr
*offsets
, const GLsizei
*strides
);
2868 GLAPI
void APIENTRY
glVertexArrayAttribBinding (GLuint vaobj
, GLuint attribindex
, GLuint bindingindex
);
2869 GLAPI
void APIENTRY
glVertexArrayAttribFormat (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLboolean normalized
, GLuint relativeoffset
);
2870 GLAPI
void APIENTRY
glVertexArrayAttribIFormat (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2871 GLAPI
void APIENTRY
glVertexArrayAttribLFormat (GLuint vaobj
, GLuint attribindex
, GLint size
, GLenum type
, GLuint relativeoffset
);
2872 GLAPI
void APIENTRY
glVertexArrayBindingDivisor (GLuint vaobj
, GLuint bindingindex
, GLuint divisor
);
2873 GLAPI
void APIENTRY
glGetVertexArrayiv (GLuint vaobj
, GLenum pname
, GLint
*param
);
2874 GLAPI
void APIENTRY
glGetVertexArrayIndexediv (GLuint vaobj
, GLuint index
, GLenum pname
, GLint
*param
);
2875 GLAPI
void APIENTRY
glGetVertexArrayIndexed64iv (GLuint vaobj
, GLuint index
, GLenum pname
, GLint64
*param
);
2876 GLAPI
void APIENTRY
glCreateSamplers (GLsizei n
, GLuint
*samplers
);
2877 GLAPI
void APIENTRY
glCreateProgramPipelines (GLsizei n
, GLuint
*pipelines
);
2878 GLAPI
void APIENTRY
glCreateQueries (GLenum target
, GLsizei n
, GLuint
*ids
);
2879 GLAPI
void APIENTRY
glGetQueryBufferObjecti64v (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2880 GLAPI
void APIENTRY
glGetQueryBufferObjectiv (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2881 GLAPI
void APIENTRY
glGetQueryBufferObjectui64v (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2882 GLAPI
void APIENTRY
glGetQueryBufferObjectuiv (GLuint id
, GLuint buffer
, GLenum pname
, GLintptr offset
);
2883 GLAPI
void APIENTRY
glMemoryBarrierByRegion (GLbitfield barriers
);
2884 GLAPI
void APIENTRY
glGetTextureSubImage (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2885 GLAPI
void APIENTRY
glGetCompressedTextureSubImage (GLuint texture
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLsizei bufSize
, void *pixels
);
2886 GLAPI GLenum APIENTRY
glGetGraphicsResetStatus (void);
2887 GLAPI
void APIENTRY
glGetnCompressedTexImage (GLenum target
, GLint lod
, GLsizei bufSize
, void *pixels
);
2888 GLAPI
void APIENTRY
glGetnTexImage (GLenum target
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *pixels
);
2889 GLAPI
void APIENTRY
glGetnUniformdv (GLuint program
, GLint location
, GLsizei bufSize
, GLdouble
*params
);
2890 GLAPI
void APIENTRY
glGetnUniformfv (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
2891 GLAPI
void APIENTRY
glGetnUniformiv (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
2892 GLAPI
void APIENTRY
glGetnUniformuiv (GLuint program
, GLint location
, GLsizei bufSize
, GLuint
*params
);
2893 GLAPI
void APIENTRY
glReadnPixels (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
2894 GLAPI
void APIENTRY
glTextureBarrier (void);
2896 #endif /* GL_VERSION_4_5 */
2898 #ifndef GL_ARB_ES2_compatibility
2899 #define GL_ARB_ES2_compatibility 1
2900 #endif /* GL_ARB_ES2_compatibility */
2902 #ifndef GL_ARB_ES3_1_compatibility
2903 #define GL_ARB_ES3_1_compatibility 1
2904 #endif /* GL_ARB_ES3_1_compatibility */
2906 #ifndef GL_ARB_ES3_compatibility
2907 #define GL_ARB_ES3_compatibility 1
2908 #endif /* GL_ARB_ES3_compatibility */
2910 #ifndef GL_ARB_arrays_of_arrays
2911 #define GL_ARB_arrays_of_arrays 1
2912 #endif /* GL_ARB_arrays_of_arrays */
2914 #ifndef GL_ARB_base_instance
2915 #define GL_ARB_base_instance 1
2916 #endif /* GL_ARB_base_instance */
2918 #ifndef GL_ARB_bindless_texture
2919 #define GL_ARB_bindless_texture 1
2920 typedef uint64_t GLuint64EXT
;
2921 #define GL_UNSIGNED_INT64_ARB 0x140F
2922 typedef GLuint64 (APIENTRYP PFNGLGETTEXTUREHANDLEARBPROC
) (GLuint texture
);
2923 typedef GLuint64 (APIENTRYP PFNGLGETTEXTURESAMPLERHANDLEARBPROC
) (GLuint texture
, GLuint sampler
);
2924 typedef void (APIENTRYP PFNGLMAKETEXTUREHANDLERESIDENTARBPROC
) (GLuint64 handle
);
2925 typedef void (APIENTRYP PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC
) (GLuint64 handle
);
2926 typedef GLuint64 (APIENTRYP PFNGLGETIMAGEHANDLEARBPROC
) (GLuint texture
, GLint level
, GLboolean layered
, GLint layer
, GLenum format
);
2927 typedef void (APIENTRYP PFNGLMAKEIMAGEHANDLERESIDENTARBPROC
) (GLuint64 handle
, GLenum access
);
2928 typedef void (APIENTRYP PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC
) (GLuint64 handle
);
2929 typedef void (APIENTRYP PFNGLUNIFORMHANDLEUI64ARBPROC
) (GLint location
, GLuint64 value
);
2930 typedef void (APIENTRYP PFNGLUNIFORMHANDLEUI64VARBPROC
) (GLint location
, GLsizei count
, const GLuint64
*value
);
2931 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC
) (GLuint program
, GLint location
, GLuint64 value
);
2932 typedef void (APIENTRYP PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLuint64
*values
);
2933 typedef GLboolean (APIENTRYP PFNGLISTEXTUREHANDLERESIDENTARBPROC
) (GLuint64 handle
);
2934 typedef GLboolean (APIENTRYP PFNGLISIMAGEHANDLERESIDENTARBPROC
) (GLuint64 handle
);
2935 typedef void (APIENTRYP PFNGLVERTEXATTRIBL1UI64ARBPROC
) (GLuint index
, GLuint64EXT x
);
2936 typedef void (APIENTRYP PFNGLVERTEXATTRIBL1UI64VARBPROC
) (GLuint index
, const GLuint64EXT
*v
);
2937 typedef void (APIENTRYP PFNGLGETVERTEXATTRIBLUI64VARBPROC
) (GLuint index
, GLenum pname
, GLuint64EXT
*params
);
2938 #ifdef GL_GLEXT_PROTOTYPES
2939 GLAPI GLuint64 APIENTRY
glGetTextureHandleARB (GLuint texture
);
2940 GLAPI GLuint64 APIENTRY
glGetTextureSamplerHandleARB (GLuint texture
, GLuint sampler
);
2941 GLAPI
void APIENTRY
glMakeTextureHandleResidentARB (GLuint64 handle
);
2942 GLAPI
void APIENTRY
glMakeTextureHandleNonResidentARB (GLuint64 handle
);
2943 GLAPI GLuint64 APIENTRY
glGetImageHandleARB (GLuint texture
, GLint level
, GLboolean layered
, GLint layer
, GLenum format
);
2944 GLAPI
void APIENTRY
glMakeImageHandleResidentARB (GLuint64 handle
, GLenum access
);
2945 GLAPI
void APIENTRY
glMakeImageHandleNonResidentARB (GLuint64 handle
);
2946 GLAPI
void APIENTRY
glUniformHandleui64ARB (GLint location
, GLuint64 value
);
2947 GLAPI
void APIENTRY
glUniformHandleui64vARB (GLint location
, GLsizei count
, const GLuint64
*value
);
2948 GLAPI
void APIENTRY
glProgramUniformHandleui64ARB (GLuint program
, GLint location
, GLuint64 value
);
2949 GLAPI
void APIENTRY
glProgramUniformHandleui64vARB (GLuint program
, GLint location
, GLsizei count
, const GLuint64
*values
);
2950 GLAPI GLboolean APIENTRY
glIsTextureHandleResidentARB (GLuint64 handle
);
2951 GLAPI GLboolean APIENTRY
glIsImageHandleResidentARB (GLuint64 handle
);
2952 GLAPI
void APIENTRY
glVertexAttribL1ui64ARB (GLuint index
, GLuint64EXT x
);
2953 GLAPI
void APIENTRY
glVertexAttribL1ui64vARB (GLuint index
, const GLuint64EXT
*v
);
2954 GLAPI
void APIENTRY
glGetVertexAttribLui64vARB (GLuint index
, GLenum pname
, GLuint64EXT
*params
);
2956 #endif /* GL_ARB_bindless_texture */
2958 #ifndef GL_ARB_blend_func_extended
2959 #define GL_ARB_blend_func_extended 1
2960 #endif /* GL_ARB_blend_func_extended */
2962 #ifndef GL_ARB_buffer_storage
2963 #define GL_ARB_buffer_storage 1
2964 #endif /* GL_ARB_buffer_storage */
2966 #ifndef GL_ARB_cl_event
2967 #define GL_ARB_cl_event 1
2970 #define GL_SYNC_CL_EVENT_ARB 0x8240
2971 #define GL_SYNC_CL_EVENT_COMPLETE_ARB 0x8241
2972 typedef GLsync (APIENTRYP PFNGLCREATESYNCFROMCLEVENTARBPROC
) (struct _cl_context
*context
, struct _cl_event
*event
, GLbitfield flags
);
2973 #ifdef GL_GLEXT_PROTOTYPES
2974 GLAPI GLsync APIENTRY
glCreateSyncFromCLeventARB (struct _cl_context
*context
, struct _cl_event
*event
, GLbitfield flags
);
2976 #endif /* GL_ARB_cl_event */
2978 #ifndef GL_ARB_clear_buffer_object
2979 #define GL_ARB_clear_buffer_object 1
2980 #endif /* GL_ARB_clear_buffer_object */
2982 #ifndef GL_ARB_clear_texture
2983 #define GL_ARB_clear_texture 1
2984 #endif /* GL_ARB_clear_texture */
2986 #ifndef GL_ARB_clip_control
2987 #define GL_ARB_clip_control 1
2988 #endif /* GL_ARB_clip_control */
2990 #ifndef GL_ARB_compressed_texture_pixel_storage
2991 #define GL_ARB_compressed_texture_pixel_storage 1
2992 #endif /* GL_ARB_compressed_texture_pixel_storage */
2994 #ifndef GL_ARB_compute_shader
2995 #define GL_ARB_compute_shader 1
2996 #endif /* GL_ARB_compute_shader */
2998 #ifndef GL_ARB_compute_variable_group_size
2999 #define GL_ARB_compute_variable_group_size 1
3000 #define GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB 0x9344
3001 #define GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB 0x90EB
3002 #define GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB 0x9345
3003 #define GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB 0x91BF
3004 typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC
) (GLuint num_groups_x
, GLuint num_groups_y
, GLuint num_groups_z
, GLuint group_size_x
, GLuint group_size_y
, GLuint group_size_z
);
3005 #ifdef GL_GLEXT_PROTOTYPES
3006 GLAPI
void APIENTRY
glDispatchComputeGroupSizeARB (GLuint num_groups_x
, GLuint num_groups_y
, GLuint num_groups_z
, GLuint group_size_x
, GLuint group_size_y
, GLuint group_size_z
);
3008 #endif /* GL_ARB_compute_variable_group_size */
3010 #ifndef GL_ARB_conditional_render_inverted
3011 #define GL_ARB_conditional_render_inverted 1
3012 #endif /* GL_ARB_conditional_render_inverted */
3014 #ifndef GL_ARB_conservative_depth
3015 #define GL_ARB_conservative_depth 1
3016 #endif /* GL_ARB_conservative_depth */
3018 #ifndef GL_ARB_copy_buffer
3019 #define GL_ARB_copy_buffer 1
3020 #endif /* GL_ARB_copy_buffer */
3022 #ifndef GL_ARB_copy_image
3023 #define GL_ARB_copy_image 1
3024 #endif /* GL_ARB_copy_image */
3026 #ifndef GL_ARB_cull_distance
3027 #define GL_ARB_cull_distance 1
3028 #endif /* GL_ARB_cull_distance */
3030 #ifndef GL_ARB_debug_output
3031 #define GL_ARB_debug_output 1
3032 typedef void (APIENTRY
*GLDEBUGPROCARB
)(GLenum source
,GLenum type
,GLuint id
,GLenum severity
,GLsizei length
,const GLchar
*message
,const void *userParam
);
3033 #define GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242
3034 #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243
3035 #define GL_DEBUG_CALLBACK_FUNCTION_ARB 0x8244
3036 #define GL_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245
3037 #define GL_DEBUG_SOURCE_API_ARB 0x8246
3038 #define GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247
3039 #define GL_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248
3040 #define GL_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249
3041 #define GL_DEBUG_SOURCE_APPLICATION_ARB 0x824A
3042 #define GL_DEBUG_SOURCE_OTHER_ARB 0x824B
3043 #define GL_DEBUG_TYPE_ERROR_ARB 0x824C
3044 #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D
3045 #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E
3046 #define GL_DEBUG_TYPE_PORTABILITY_ARB 0x824F
3047 #define GL_DEBUG_TYPE_PERFORMANCE_ARB 0x8250
3048 #define GL_DEBUG_TYPE_OTHER_ARB 0x8251
3049 #define GL_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143
3050 #define GL_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144
3051 #define GL_DEBUG_LOGGED_MESSAGES_ARB 0x9145
3052 #define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146
3053 #define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147
3054 #define GL_DEBUG_SEVERITY_LOW_ARB 0x9148
3055 typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLARBPROC
) (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
3056 typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTARBPROC
) (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
3057 typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKARBPROC
) (GLDEBUGPROCARB callback
, const void *userParam
);
3058 typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGARBPROC
) (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
3059 #ifdef GL_GLEXT_PROTOTYPES
3060 GLAPI
void APIENTRY
glDebugMessageControlARB (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
3061 GLAPI
void APIENTRY
glDebugMessageInsertARB (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
3062 GLAPI
void APIENTRY
glDebugMessageCallbackARB (GLDEBUGPROCARB callback
, const void *userParam
);
3063 GLAPI GLuint APIENTRY
glGetDebugMessageLogARB (GLuint count
, GLsizei bufSize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
3065 #endif /* GL_ARB_debug_output */
3067 #ifndef GL_ARB_depth_buffer_float
3068 #define GL_ARB_depth_buffer_float 1
3069 #endif /* GL_ARB_depth_buffer_float */
3071 #ifndef GL_ARB_depth_clamp
3072 #define GL_ARB_depth_clamp 1
3073 #endif /* GL_ARB_depth_clamp */
3075 #ifndef GL_ARB_derivative_control
3076 #define GL_ARB_derivative_control 1
3077 #endif /* GL_ARB_derivative_control */
3079 #ifndef GL_ARB_direct_state_access
3080 #define GL_ARB_direct_state_access 1
3081 #endif /* GL_ARB_direct_state_access */
3083 #ifndef GL_ARB_draw_buffers_blend
3084 #define GL_ARB_draw_buffers_blend 1
3085 typedef void (APIENTRYP PFNGLBLENDEQUATIONIARBPROC
) (GLuint buf
, GLenum mode
);
3086 typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEIARBPROC
) (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
3087 typedef void (APIENTRYP PFNGLBLENDFUNCIARBPROC
) (GLuint buf
, GLenum src
, GLenum dst
);
3088 typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEIARBPROC
) (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
3089 #ifdef GL_GLEXT_PROTOTYPES
3090 GLAPI
void APIENTRY
glBlendEquationiARB (GLuint buf
, GLenum mode
);
3091 GLAPI
void APIENTRY
glBlendEquationSeparateiARB (GLuint buf
, GLenum modeRGB
, GLenum modeAlpha
);
3092 GLAPI
void APIENTRY
glBlendFunciARB (GLuint buf
, GLenum src
, GLenum dst
);
3093 GLAPI
void APIENTRY
glBlendFuncSeparateiARB (GLuint buf
, GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
);
3095 #endif /* GL_ARB_draw_buffers_blend */
3097 #ifndef GL_ARB_draw_elements_base_vertex
3098 #define GL_ARB_draw_elements_base_vertex 1
3099 #endif /* GL_ARB_draw_elements_base_vertex */
3101 #ifndef GL_ARB_draw_indirect
3102 #define GL_ARB_draw_indirect 1
3103 #endif /* GL_ARB_draw_indirect */
3105 #ifndef GL_ARB_enhanced_layouts
3106 #define GL_ARB_enhanced_layouts 1
3107 #endif /* GL_ARB_enhanced_layouts */
3109 #ifndef GL_ARB_explicit_attrib_location
3110 #define GL_ARB_explicit_attrib_location 1
3111 #endif /* GL_ARB_explicit_attrib_location */
3113 #ifndef GL_ARB_explicit_uniform_location
3114 #define GL_ARB_explicit_uniform_location 1
3115 #endif /* GL_ARB_explicit_uniform_location */
3117 #ifndef GL_ARB_fragment_coord_conventions
3118 #define GL_ARB_fragment_coord_conventions 1
3119 #endif /* GL_ARB_fragment_coord_conventions */
3121 #ifndef GL_ARB_fragment_layer_viewport
3122 #define GL_ARB_fragment_layer_viewport 1
3123 #endif /* GL_ARB_fragment_layer_viewport */
3125 #ifndef GL_ARB_framebuffer_no_attachments
3126 #define GL_ARB_framebuffer_no_attachments 1
3127 #endif /* GL_ARB_framebuffer_no_attachments */
3129 #ifndef GL_ARB_framebuffer_object
3130 #define GL_ARB_framebuffer_object 1
3131 #endif /* GL_ARB_framebuffer_object */
3133 #ifndef GL_ARB_framebuffer_sRGB
3134 #define GL_ARB_framebuffer_sRGB 1
3135 #endif /* GL_ARB_framebuffer_sRGB */
3137 #ifndef GL_ARB_get_program_binary
3138 #define GL_ARB_get_program_binary 1
3139 #endif /* GL_ARB_get_program_binary */
3141 #ifndef GL_ARB_get_texture_sub_image
3142 #define GL_ARB_get_texture_sub_image 1
3143 #endif /* GL_ARB_get_texture_sub_image */
3145 #ifndef GL_ARB_gpu_shader5
3146 #define GL_ARB_gpu_shader5 1
3147 #endif /* GL_ARB_gpu_shader5 */
3149 #ifndef GL_ARB_gpu_shader_fp64
3150 #define GL_ARB_gpu_shader_fp64 1
3151 #endif /* GL_ARB_gpu_shader_fp64 */
3153 #ifndef GL_ARB_half_float_vertex
3154 #define GL_ARB_half_float_vertex 1
3155 #endif /* GL_ARB_half_float_vertex */
3157 #ifndef GL_ARB_imaging
3158 #define GL_ARB_imaging 1
3159 #define GL_BLEND_COLOR 0x8005
3160 #define GL_BLEND_EQUATION 0x8009
3161 #endif /* GL_ARB_imaging */
3163 #ifndef GL_ARB_indirect_parameters
3164 #define GL_ARB_indirect_parameters 1
3165 #define GL_PARAMETER_BUFFER_ARB 0x80EE
3166 #define GL_PARAMETER_BUFFER_BINDING_ARB 0x80EF
3167 typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC
) (GLenum mode
, GLintptr indirect
, GLintptr drawcount
, GLsizei maxdrawcount
, GLsizei stride
);
3168 typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC
) (GLenum mode
, GLenum type
, GLintptr indirect
, GLintptr drawcount
, GLsizei maxdrawcount
, GLsizei stride
);
3169 #ifdef GL_GLEXT_PROTOTYPES
3170 GLAPI
void APIENTRY
glMultiDrawArraysIndirectCountARB (GLenum mode
, GLintptr indirect
, GLintptr drawcount
, GLsizei maxdrawcount
, GLsizei stride
);
3171 GLAPI
void APIENTRY
glMultiDrawElementsIndirectCountARB (GLenum mode
, GLenum type
, GLintptr indirect
, GLintptr drawcount
, GLsizei maxdrawcount
, GLsizei stride
);
3173 #endif /* GL_ARB_indirect_parameters */
3175 #ifndef GL_ARB_internalformat_query
3176 #define GL_ARB_internalformat_query 1
3177 #endif /* GL_ARB_internalformat_query */
3179 #ifndef GL_ARB_internalformat_query2
3180 #define GL_ARB_internalformat_query2 1
3181 #define GL_SRGB_DECODE_ARB 0x8299
3182 #endif /* GL_ARB_internalformat_query2 */
3184 #ifndef GL_ARB_invalidate_subdata
3185 #define GL_ARB_invalidate_subdata 1
3186 #endif /* GL_ARB_invalidate_subdata */
3188 #ifndef GL_ARB_map_buffer_alignment
3189 #define GL_ARB_map_buffer_alignment 1
3190 #endif /* GL_ARB_map_buffer_alignment */
3192 #ifndef GL_ARB_map_buffer_range
3193 #define GL_ARB_map_buffer_range 1
3194 #endif /* GL_ARB_map_buffer_range */
3196 #ifndef GL_ARB_multi_bind
3197 #define GL_ARB_multi_bind 1
3198 #endif /* GL_ARB_multi_bind */
3200 #ifndef GL_ARB_multi_draw_indirect
3201 #define GL_ARB_multi_draw_indirect 1
3202 #endif /* GL_ARB_multi_draw_indirect */
3204 #ifndef GL_ARB_occlusion_query2
3205 #define GL_ARB_occlusion_query2 1
3206 #endif /* GL_ARB_occlusion_query2 */
3208 #ifndef GL_ARB_pipeline_statistics_query
3209 #define GL_ARB_pipeline_statistics_query 1
3210 #define GL_VERTICES_SUBMITTED_ARB 0x82EE
3211 #define GL_PRIMITIVES_SUBMITTED_ARB 0x82EF
3212 #define GL_VERTEX_SHADER_INVOCATIONS_ARB 0x82F0
3213 #define GL_TESS_CONTROL_SHADER_PATCHES_ARB 0x82F1
3214 #define GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB 0x82F2
3215 #define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB 0x82F3
3216 #define GL_FRAGMENT_SHADER_INVOCATIONS_ARB 0x82F4
3217 #define GL_COMPUTE_SHADER_INVOCATIONS_ARB 0x82F5
3218 #define GL_CLIPPING_INPUT_PRIMITIVES_ARB 0x82F6
3219 #define GL_CLIPPING_OUTPUT_PRIMITIVES_ARB 0x82F7
3220 #endif /* GL_ARB_pipeline_statistics_query */
3222 #ifndef GL_ARB_program_interface_query
3223 #define GL_ARB_program_interface_query 1
3224 #endif /* GL_ARB_program_interface_query */
3226 #ifndef GL_ARB_provoking_vertex
3227 #define GL_ARB_provoking_vertex 1
3228 #endif /* GL_ARB_provoking_vertex */
3230 #ifndef GL_ARB_query_buffer_object
3231 #define GL_ARB_query_buffer_object 1
3232 #endif /* GL_ARB_query_buffer_object */
3234 #ifndef GL_ARB_robust_buffer_access_behavior
3235 #define GL_ARB_robust_buffer_access_behavior 1
3236 #endif /* GL_ARB_robust_buffer_access_behavior */
3238 #ifndef GL_ARB_robustness
3239 #define GL_ARB_robustness 1
3240 #define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB 0x00000004
3241 #define GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
3242 #define GL_GUILTY_CONTEXT_RESET_ARB 0x8253
3243 #define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254
3244 #define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255
3245 #define GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
3246 #define GL_NO_RESET_NOTIFICATION_ARB 0x8261
3247 typedef GLenum (APIENTRYP PFNGLGETGRAPHICSRESETSTATUSARBPROC
) (void);
3248 typedef void (APIENTRYP PFNGLGETNTEXIMAGEARBPROC
) (GLenum target
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *img
);
3249 typedef void (APIENTRYP PFNGLREADNPIXELSARBPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
3250 typedef void (APIENTRYP PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC
) (GLenum target
, GLint lod
, GLsizei bufSize
, void *img
);
3251 typedef void (APIENTRYP PFNGLGETNUNIFORMFVARBPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
3252 typedef void (APIENTRYP PFNGLGETNUNIFORMIVARBPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
3253 typedef void (APIENTRYP PFNGLGETNUNIFORMUIVARBPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLuint
*params
);
3254 typedef void (APIENTRYP PFNGLGETNUNIFORMDVARBPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLdouble
*params
);
3255 #ifdef GL_GLEXT_PROTOTYPES
3256 GLAPI GLenum APIENTRY
glGetGraphicsResetStatusARB (void);
3257 GLAPI
void APIENTRY
glGetnTexImageARB (GLenum target
, GLint level
, GLenum format
, GLenum type
, GLsizei bufSize
, void *img
);
3258 GLAPI
void APIENTRY
glReadnPixelsARB (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
3259 GLAPI
void APIENTRY
glGetnCompressedTexImageARB (GLenum target
, GLint lod
, GLsizei bufSize
, void *img
);
3260 GLAPI
void APIENTRY
glGetnUniformfvARB (GLuint program
, GLint location
, GLsizei bufSize
, GLfloat
*params
);
3261 GLAPI
void APIENTRY
glGetnUniformivARB (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
3262 GLAPI
void APIENTRY
glGetnUniformuivARB (GLuint program
, GLint location
, GLsizei bufSize
, GLuint
*params
);
3263 GLAPI
void APIENTRY
glGetnUniformdvARB (GLuint program
, GLint location
, GLsizei bufSize
, GLdouble
*params
);
3265 #endif /* GL_ARB_robustness */
3267 #ifndef GL_ARB_robustness_isolation
3268 #define GL_ARB_robustness_isolation 1
3269 #endif /* GL_ARB_robustness_isolation */
3271 #ifndef GL_ARB_sample_shading
3272 #define GL_ARB_sample_shading 1
3273 #define GL_SAMPLE_SHADING_ARB 0x8C36
3274 #define GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37
3275 typedef void (APIENTRYP PFNGLMINSAMPLESHADINGARBPROC
) (GLfloat value
);
3276 #ifdef GL_GLEXT_PROTOTYPES
3277 GLAPI
void APIENTRY
glMinSampleShadingARB (GLfloat value
);
3279 #endif /* GL_ARB_sample_shading */
3281 #ifndef GL_ARB_sampler_objects
3282 #define GL_ARB_sampler_objects 1
3283 #endif /* GL_ARB_sampler_objects */
3285 #ifndef GL_ARB_seamless_cube_map
3286 #define GL_ARB_seamless_cube_map 1
3287 #endif /* GL_ARB_seamless_cube_map */
3289 #ifndef GL_ARB_seamless_cubemap_per_texture
3290 #define GL_ARB_seamless_cubemap_per_texture 1
3291 #endif /* GL_ARB_seamless_cubemap_per_texture */
3293 #ifndef GL_ARB_separate_shader_objects
3294 #define GL_ARB_separate_shader_objects 1
3295 #endif /* GL_ARB_separate_shader_objects */
3297 #ifndef GL_ARB_shader_atomic_counters
3298 #define GL_ARB_shader_atomic_counters 1
3299 #endif /* GL_ARB_shader_atomic_counters */
3301 #ifndef GL_ARB_shader_bit_encoding
3302 #define GL_ARB_shader_bit_encoding 1
3303 #endif /* GL_ARB_shader_bit_encoding */
3305 #ifndef GL_ARB_shader_draw_parameters
3306 #define GL_ARB_shader_draw_parameters 1
3307 #endif /* GL_ARB_shader_draw_parameters */
3309 #ifndef GL_ARB_shader_group_vote
3310 #define GL_ARB_shader_group_vote 1
3311 #endif /* GL_ARB_shader_group_vote */
3313 #ifndef GL_ARB_shader_image_load_store
3314 #define GL_ARB_shader_image_load_store 1
3315 #endif /* GL_ARB_shader_image_load_store */
3317 #ifndef GL_ARB_shader_image_size
3318 #define GL_ARB_shader_image_size 1
3319 #endif /* GL_ARB_shader_image_size */
3321 #ifndef GL_ARB_shader_precision
3322 #define GL_ARB_shader_precision 1
3323 #endif /* GL_ARB_shader_precision */
3325 #ifndef GL_ARB_shader_stencil_export
3326 #define GL_ARB_shader_stencil_export 1
3327 #endif /* GL_ARB_shader_stencil_export */
3329 #ifndef GL_ARB_shader_storage_buffer_object
3330 #define GL_ARB_shader_storage_buffer_object 1
3331 #endif /* GL_ARB_shader_storage_buffer_object */
3333 #ifndef GL_ARB_shader_subroutine
3334 #define GL_ARB_shader_subroutine 1
3335 #endif /* GL_ARB_shader_subroutine */
3337 #ifndef GL_ARB_shader_texture_image_samples
3338 #define GL_ARB_shader_texture_image_samples 1
3339 #endif /* GL_ARB_shader_texture_image_samples */
3341 #ifndef GL_ARB_shading_language_420pack
3342 #define GL_ARB_shading_language_420pack 1
3343 #endif /* GL_ARB_shading_language_420pack */
3345 #ifndef GL_ARB_shading_language_include
3346 #define GL_ARB_shading_language_include 1
3347 #define GL_SHADER_INCLUDE_ARB 0x8DAE
3348 #define GL_NAMED_STRING_LENGTH_ARB 0x8DE9
3349 #define GL_NAMED_STRING_TYPE_ARB 0x8DEA
3350 typedef void (APIENTRYP PFNGLNAMEDSTRINGARBPROC
) (GLenum type
, GLint namelen
, const GLchar
*name
, GLint stringlen
, const GLchar
*string
);
3351 typedef void (APIENTRYP PFNGLDELETENAMEDSTRINGARBPROC
) (GLint namelen
, const GLchar
*name
);
3352 typedef void (APIENTRYP PFNGLCOMPILESHADERINCLUDEARBPROC
) (GLuint shader
, GLsizei count
, const GLchar
*const*path
, const GLint
*length
);
3353 typedef GLboolean (APIENTRYP PFNGLISNAMEDSTRINGARBPROC
) (GLint namelen
, const GLchar
*name
);
3354 typedef void (APIENTRYP PFNGLGETNAMEDSTRINGARBPROC
) (GLint namelen
, const GLchar
*name
, GLsizei bufSize
, GLint
*stringlen
, GLchar
*string
);
3355 typedef void (APIENTRYP PFNGLGETNAMEDSTRINGIVARBPROC
) (GLint namelen
, const GLchar
*name
, GLenum pname
, GLint
*params
);
3356 #ifdef GL_GLEXT_PROTOTYPES
3357 GLAPI
void APIENTRY
glNamedStringARB (GLenum type
, GLint namelen
, const GLchar
*name
, GLint stringlen
, const GLchar
*string
);
3358 GLAPI
void APIENTRY
glDeleteNamedStringARB (GLint namelen
, const GLchar
*name
);
3359 GLAPI
void APIENTRY
glCompileShaderIncludeARB (GLuint shader
, GLsizei count
, const GLchar
*const*path
, const GLint
*length
);
3360 GLAPI GLboolean APIENTRY
glIsNamedStringARB (GLint namelen
, const GLchar
*name
);
3361 GLAPI
void APIENTRY
glGetNamedStringARB (GLint namelen
, const GLchar
*name
, GLsizei bufSize
, GLint
*stringlen
, GLchar
*string
);
3362 GLAPI
void APIENTRY
glGetNamedStringivARB (GLint namelen
, const GLchar
*name
, GLenum pname
, GLint
*params
);
3364 #endif /* GL_ARB_shading_language_include */
3366 #ifndef GL_ARB_shading_language_packing
3367 #define GL_ARB_shading_language_packing 1
3368 #endif /* GL_ARB_shading_language_packing */
3370 #ifndef GL_ARB_sparse_buffer
3371 #define GL_ARB_sparse_buffer 1
3372 #define GL_SPARSE_STORAGE_BIT_ARB 0x0400
3373 #define GL_SPARSE_BUFFER_PAGE_SIZE_ARB 0x82F8
3374 typedef void (APIENTRYP PFNGLBUFFERPAGECOMMITMENTARBPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3375 typedef void (APIENTRYP PFNGLNAMEDBUFFERPAGECOMMITMENTEXTPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3376 typedef void (APIENTRYP PFNGLNAMEDBUFFERPAGECOMMITMENTARBPROC
) (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3377 #ifdef GL_GLEXT_PROTOTYPES
3378 GLAPI
void APIENTRY
glBufferPageCommitmentARB (GLenum target
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3379 GLAPI
void APIENTRY
glNamedBufferPageCommitmentEXT (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3380 GLAPI
void APIENTRY
glNamedBufferPageCommitmentARB (GLuint buffer
, GLintptr offset
, GLsizeiptr size
, GLboolean commit
);
3382 #endif /* GL_ARB_sparse_buffer */
3384 #ifndef GL_ARB_sparse_texture
3385 #define GL_ARB_sparse_texture 1
3386 #define GL_TEXTURE_SPARSE_ARB 0x91A6
3387 #define GL_VIRTUAL_PAGE_SIZE_INDEX_ARB 0x91A7
3388 #define GL_NUM_SPARSE_LEVELS_ARB 0x91AA
3389 #define GL_NUM_VIRTUAL_PAGE_SIZES_ARB 0x91A8
3390 #define GL_VIRTUAL_PAGE_SIZE_X_ARB 0x9195
3391 #define GL_VIRTUAL_PAGE_SIZE_Y_ARB 0x9196
3392 #define GL_VIRTUAL_PAGE_SIZE_Z_ARB 0x9197
3393 #define GL_MAX_SPARSE_TEXTURE_SIZE_ARB 0x9198
3394 #define GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB 0x9199
3395 #define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB 0x919A
3396 #define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB 0x91A9
3397 typedef void (APIENTRYP PFNGLTEXPAGECOMMITMENTARBPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean commit
);
3398 #ifdef GL_GLEXT_PROTOTYPES
3399 GLAPI
void APIENTRY
glTexPageCommitmentARB (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLboolean commit
);
3401 #endif /* GL_ARB_sparse_texture */
3403 #ifndef GL_ARB_stencil_texturing
3404 #define GL_ARB_stencil_texturing 1
3405 #endif /* GL_ARB_stencil_texturing */
3408 #define GL_ARB_sync 1
3409 #endif /* GL_ARB_sync */
3411 #ifndef GL_ARB_tessellation_shader
3412 #define GL_ARB_tessellation_shader 1
3413 #endif /* GL_ARB_tessellation_shader */
3415 #ifndef GL_ARB_texture_barrier
3416 #define GL_ARB_texture_barrier 1
3417 #endif /* GL_ARB_texture_barrier */
3419 #ifndef GL_ARB_texture_buffer_object_rgb32
3420 #define GL_ARB_texture_buffer_object_rgb32 1
3421 #endif /* GL_ARB_texture_buffer_object_rgb32 */
3423 #ifndef GL_ARB_texture_buffer_range
3424 #define GL_ARB_texture_buffer_range 1
3425 #endif /* GL_ARB_texture_buffer_range */
3427 #ifndef GL_ARB_texture_compression_bptc
3428 #define GL_ARB_texture_compression_bptc 1
3429 #define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C
3430 #define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D
3431 #define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E
3432 #define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F
3433 #endif /* GL_ARB_texture_compression_bptc */
3435 #ifndef GL_ARB_texture_compression_rgtc
3436 #define GL_ARB_texture_compression_rgtc 1
3437 #endif /* GL_ARB_texture_compression_rgtc */
3439 #ifndef GL_ARB_texture_cube_map_array
3440 #define GL_ARB_texture_cube_map_array 1
3441 #define GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009
3442 #define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A
3443 #define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B
3444 #define GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C
3445 #define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D
3446 #define GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E
3447 #define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F
3448 #endif /* GL_ARB_texture_cube_map_array */
3450 #ifndef GL_ARB_texture_gather
3451 #define GL_ARB_texture_gather 1
3452 #define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E
3453 #define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F
3454 #define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F
3455 #endif /* GL_ARB_texture_gather */
3457 #ifndef GL_ARB_texture_mirror_clamp_to_edge
3458 #define GL_ARB_texture_mirror_clamp_to_edge 1
3459 #endif /* GL_ARB_texture_mirror_clamp_to_edge */
3461 #ifndef GL_ARB_texture_multisample
3462 #define GL_ARB_texture_multisample 1
3463 #endif /* GL_ARB_texture_multisample */
3465 #ifndef GL_ARB_texture_query_levels
3466 #define GL_ARB_texture_query_levels 1
3467 #endif /* GL_ARB_texture_query_levels */
3469 #ifndef GL_ARB_texture_query_lod
3470 #define GL_ARB_texture_query_lod 1
3471 #endif /* GL_ARB_texture_query_lod */
3473 #ifndef GL_ARB_texture_rg
3474 #define GL_ARB_texture_rg 1
3475 #endif /* GL_ARB_texture_rg */
3477 #ifndef GL_ARB_texture_rgb10_a2ui
3478 #define GL_ARB_texture_rgb10_a2ui 1
3479 #endif /* GL_ARB_texture_rgb10_a2ui */
3481 #ifndef GL_ARB_texture_stencil8
3482 #define GL_ARB_texture_stencil8 1
3483 #endif /* GL_ARB_texture_stencil8 */
3485 #ifndef GL_ARB_texture_storage
3486 #define GL_ARB_texture_storage 1
3487 #endif /* GL_ARB_texture_storage */
3489 #ifndef GL_ARB_texture_storage_multisample
3490 #define GL_ARB_texture_storage_multisample 1
3491 #endif /* GL_ARB_texture_storage_multisample */
3493 #ifndef GL_ARB_texture_swizzle
3494 #define GL_ARB_texture_swizzle 1
3495 #endif /* GL_ARB_texture_swizzle */
3497 #ifndef GL_ARB_texture_view
3498 #define GL_ARB_texture_view 1
3499 #endif /* GL_ARB_texture_view */
3501 #ifndef GL_ARB_timer_query
3502 #define GL_ARB_timer_query 1
3503 #endif /* GL_ARB_timer_query */
3505 #ifndef GL_ARB_transform_feedback2
3506 #define GL_ARB_transform_feedback2 1
3507 #endif /* GL_ARB_transform_feedback2 */
3509 #ifndef GL_ARB_transform_feedback3
3510 #define GL_ARB_transform_feedback3 1
3511 #endif /* GL_ARB_transform_feedback3 */
3513 #ifndef GL_ARB_transform_feedback_instanced
3514 #define GL_ARB_transform_feedback_instanced 1
3515 #endif /* GL_ARB_transform_feedback_instanced */
3517 #ifndef GL_ARB_transform_feedback_overflow_query
3518 #define GL_ARB_transform_feedback_overflow_query 1
3519 #define GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB 0x82EC
3520 #define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB 0x82ED
3521 #endif /* GL_ARB_transform_feedback_overflow_query */
3523 #ifndef GL_ARB_uniform_buffer_object
3524 #define GL_ARB_uniform_buffer_object 1
3525 #endif /* GL_ARB_uniform_buffer_object */
3527 #ifndef GL_ARB_vertex_array_bgra
3528 #define GL_ARB_vertex_array_bgra 1
3529 #endif /* GL_ARB_vertex_array_bgra */
3531 #ifndef GL_ARB_vertex_array_object
3532 #define GL_ARB_vertex_array_object 1
3533 #endif /* GL_ARB_vertex_array_object */
3535 #ifndef GL_ARB_vertex_attrib_64bit
3536 #define GL_ARB_vertex_attrib_64bit 1
3537 #endif /* GL_ARB_vertex_attrib_64bit */
3539 #ifndef GL_ARB_vertex_attrib_binding
3540 #define GL_ARB_vertex_attrib_binding 1
3541 #endif /* GL_ARB_vertex_attrib_binding */
3543 #ifndef GL_ARB_vertex_type_10f_11f_11f_rev
3544 #define GL_ARB_vertex_type_10f_11f_11f_rev 1
3545 #endif /* GL_ARB_vertex_type_10f_11f_11f_rev */
3547 #ifndef GL_ARB_vertex_type_2_10_10_10_rev
3548 #define GL_ARB_vertex_type_2_10_10_10_rev 1
3549 #endif /* GL_ARB_vertex_type_2_10_10_10_rev */
3551 #ifndef GL_ARB_viewport_array
3552 #define GL_ARB_viewport_array 1
3553 #endif /* GL_ARB_viewport_array */
3555 #ifndef GL_KHR_context_flush_control
3556 #define GL_KHR_context_flush_control 1
3557 #endif /* GL_KHR_context_flush_control */
3559 #ifndef GL_KHR_debug
3560 #define GL_KHR_debug 1
3561 #endif /* GL_KHR_debug */
3563 #ifndef GL_KHR_no_error
3564 #define GL_KHR_no_error 1
3565 #define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008
3566 #endif /* GL_KHR_no_error */
3568 #ifndef GL_KHR_robust_buffer_access_behavior
3569 #define GL_KHR_robust_buffer_access_behavior 1
3570 #endif /* GL_KHR_robust_buffer_access_behavior */
3572 #ifndef GL_KHR_robustness
3573 #define GL_KHR_robustness 1
3574 #define GL_CONTEXT_ROBUST_ACCESS 0x90F3
3575 #endif /* GL_KHR_robustness */
3577 #ifndef GL_KHR_texture_compression_astc_hdr
3578 #define GL_KHR_texture_compression_astc_hdr 1
3579 #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
3580 #define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
3581 #define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
3582 #define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
3583 #define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
3584 #define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
3585 #define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
3586 #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
3587 #define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
3588 #define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
3589 #define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
3590 #define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
3591 #define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
3592 #define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
3593 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
3594 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
3595 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
3596 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
3597 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
3598 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
3599 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
3600 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
3601 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
3602 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
3603 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
3604 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
3605 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
3606 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
3607 #endif /* GL_KHR_texture_compression_astc_hdr */
3609 #ifndef GL_KHR_texture_compression_astc_ldr
3610 #define GL_KHR_texture_compression_astc_ldr 1
3611 #endif /* GL_KHR_texture_compression_astc_ldr */
3613 #ifndef GL_KHR_texture_compression_astc_sliced_3d
3614 #define GL_KHR_texture_compression_astc_sliced_3d 1
3615 #endif /* GL_KHR_texture_compression_astc_sliced_3d */