SDL_opengles2: Separate out GLES2 headers.
1.1 --- a/include/SDL_opengles2.h Wed Jun 04 01:21:00 2014 -0700
1.2 +++ b/include/SDL_opengles2.h Wed Jun 04 01:27:13 2014 -0700
1.3 @@ -25,6 +25,7 @@
1.4 * This is a simple file to encapsulate the OpenGL ES 2.0 API headers.
1.5 */
1.6 #ifndef _MSC_VER
1.7 +
1.8 #ifdef __IPHONEOS__
1.9 #include <OpenGLES/ES2/gl.h>
1.10 #include <OpenGLES/ES2/glext.h>
1.11 @@ -37,2752 +38,10 @@
1.12 #else /* _MSC_VER */
1.13
1.14 /* OpenGL ES2 headers for Visual Studio */
1.15 -
1.16 -#ifndef __khrplatform_h_
1.17 -#define __khrplatform_h_
1.18 -
1.19 -/*
1.20 -** Copyright (c) 2008-2009 The Khronos Group Inc.
1.21 -**
1.22 -** Permission is hereby granted, free of charge, to any person obtaining a
1.23 -** copy of this software and/or associated documentation files (the
1.24 -** "Materials"), to deal in the Materials without restriction, including
1.25 -** without limitation the rights to use, copy, modify, merge, publish,
1.26 -** distribute, sublicense, and/or sell copies of the Materials, and to
1.27 -** permit persons to whom the Materials are furnished to do so, subject to
1.28 -** the following conditions:
1.29 -**
1.30 -** The above copyright notice and this permission notice shall be included
1.31 -** in all copies or substantial portions of the Materials.
1.32 -**
1.33 -** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
1.34 -** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
1.35 -** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
1.36 -** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
1.37 -** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
1.38 -** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
1.39 -** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
1.40 -*/
1.41 -
1.42 -/* Khronos platform-specific types and definitions.
1.43 -*
1.44 -* $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
1.45 -*
1.46 -* Adopters may modify this file to suit their platform. Adopters are
1.47 -* encouraged to submit platform specific modifications to the Khronos
1.48 -* group so that they can be included in future versions of this file.
1.49 -* Please submit changes by sending them to the public Khronos Bugzilla
1.50 -* (http://khronos.org/bugzilla) by filing a bug against product
1.51 -* "Khronos (general)" component "Registry".
1.52 -*
1.53 -* A predefined template which fills in some of the bug fields can be
1.54 -* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
1.55 -* must create a Bugzilla login first.
1.56 -*
1.57 -*
1.58 -* See the Implementer's Guidelines for information about where this file
1.59 -* should be located on your system and for more details of its use:
1.60 -* http://www.khronos.org/registry/implementers_guide.pdf
1.61 -*
1.62 -* This file should be included as
1.63 -* #include <KHR/khrplatform.h>
1.64 -* by Khronos client API header files that use its types and defines.
1.65 -*
1.66 -* The types in khrplatform.h should only be used to define API-specific types.
1.67 -*
1.68 -* Types defined in khrplatform.h:
1.69 -* khronos_int8_t signed 8 bit
1.70 -* khronos_uint8_t unsigned 8 bit
1.71 -* khronos_int16_t signed 16 bit
1.72 -* khronos_uint16_t unsigned 16 bit
1.73 -* khronos_int32_t signed 32 bit
1.74 -* khronos_uint32_t unsigned 32 bit
1.75 -* khronos_int64_t signed 64 bit
1.76 -* khronos_uint64_t unsigned 64 bit
1.77 -* khronos_intptr_t signed same number of bits as a pointer
1.78 -* khronos_uintptr_t unsigned same number of bits as a pointer
1.79 -* khronos_ssize_t signed size
1.80 -* khronos_usize_t unsigned size
1.81 -* khronos_float_t signed 32 bit floating point
1.82 -* khronos_time_ns_t unsigned 64 bit time in nanoseconds
1.83 -* khronos_utime_nanoseconds_t unsigned time interval or absolute time in
1.84 -* nanoseconds
1.85 -* khronos_stime_nanoseconds_t signed time interval in nanoseconds
1.86 -* khronos_boolean_enum_t enumerated boolean type. This should
1.87 -* only be used as a base type when a client API's boolean type is
1.88 -* an enum. Client APIs which use an integer or other type for
1.89 -* booleans cannot use this as the base type for their boolean.
1.90 -*
1.91 -* Tokens defined in khrplatform.h:
1.92 -*
1.93 -* KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
1.94 -*
1.95 -* KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
1.96 -* KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
1.97 -*
1.98 -* Calling convention macros defined in this file:
1.99 -* KHRONOS_APICALL
1.100 -* KHRONOS_APIENTRY
1.101 -* KHRONOS_APIATTRIBUTES
1.102 -*
1.103 -* These may be used in function prototypes as:
1.104 -*
1.105 -* KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
1.106 -* int arg1,
1.107 -* int arg2) KHRONOS_APIATTRIBUTES;
1.108 -*/
1.109 -
1.110 -/*-------------------------------------------------------------------------
1.111 -* Definition of KHRONOS_APICALL
1.112 -*-------------------------------------------------------------------------
1.113 -* This precedes the return type of the function in the function prototype.
1.114 -*/
1.115 -#if defined(_WIN32) && !defined(__SCITECH_SNAP__)
1.116 -# define KHRONOS_APICALL __declspec(dllimport)
1.117 -#elif defined (__SYMBIAN32__)
1.118 -# define KHRONOS_APICALL IMPORT_C
1.119 -#else
1.120 -# define KHRONOS_APICALL
1.121 -#endif
1.122 -
1.123 -/*-------------------------------------------------------------------------
1.124 -* Definition of KHRONOS_APIENTRY
1.125 -*-------------------------------------------------------------------------
1.126 -* This follows the return type of the function and precedes the function
1.127 -* name in the function prototype.
1.128 -*/
1.129 -#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
1.130 -/* Win32 but not WinCE */
1.131 -# define KHRONOS_APIENTRY __stdcall
1.132 -#else
1.133 -# define KHRONOS_APIENTRY
1.134 -#endif
1.135 -
1.136 -/*-------------------------------------------------------------------------
1.137 -* Definition of KHRONOS_APIATTRIBUTES
1.138 -*-------------------------------------------------------------------------
1.139 -* This follows the closing parenthesis of the function prototype arguments.
1.140 -*/
1.141 -#if defined (__ARMCC_2__)
1.142 -#define KHRONOS_APIATTRIBUTES __softfp
1.143 -#else
1.144 -#define KHRONOS_APIATTRIBUTES
1.145 -#endif
1.146 -
1.147 -/*-------------------------------------------------------------------------
1.148 -* basic type definitions
1.149 -*-----------------------------------------------------------------------*/
1.150 -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
1.151 -
1.152 -
1.153 -/*
1.154 -* Using <stdint.h>
1.155 -*/
1.156 -#include <stdint.h>
1.157 -typedef int32_t khronos_int32_t;
1.158 -typedef uint32_t khronos_uint32_t;
1.159 -typedef int64_t khronos_int64_t;
1.160 -typedef uint64_t khronos_uint64_t;
1.161 -#define KHRONOS_SUPPORT_INT64 1
1.162 -#define KHRONOS_SUPPORT_FLOAT 1
1.163 -
1.164 -#elif defined(__VMS ) || defined(__sgi)
1.165 -
1.166 -/*
1.167 -* Using <inttypes.h>
1.168 -*/
1.169 -#include <inttypes.h>
1.170 -typedef int32_t khronos_int32_t;
1.171 -typedef uint32_t khronos_uint32_t;
1.172 -typedef int64_t khronos_int64_t;
1.173 -typedef uint64_t khronos_uint64_t;
1.174 -#define KHRONOS_SUPPORT_INT64 1
1.175 -#define KHRONOS_SUPPORT_FLOAT 1
1.176 -
1.177 -#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
1.178 -
1.179 -/*
1.180 -* Win32
1.181 -*/
1.182 -typedef __int32 khronos_int32_t;
1.183 -typedef unsigned __int32 khronos_uint32_t;
1.184 -typedef __int64 khronos_int64_t;
1.185 -typedef unsigned __int64 khronos_uint64_t;
1.186 -#define KHRONOS_SUPPORT_INT64 1
1.187 -#define KHRONOS_SUPPORT_FLOAT 1
1.188 -
1.189 -#elif defined(__sun__) || defined(__digital__)
1.190 -
1.191 -/*
1.192 -* Sun or Digital
1.193 -*/
1.194 -typedef int khronos_int32_t;
1.195 -typedef unsigned int khronos_uint32_t;
1.196 -#if defined(__arch64__) || defined(_LP64)
1.197 -typedef long int khronos_int64_t;
1.198 -typedef unsigned long int khronos_uint64_t;
1.199 -#else
1.200 -typedef long long int khronos_int64_t;
1.201 -typedef unsigned long long int khronos_uint64_t;
1.202 -#endif /* __arch64__ */
1.203 -#define KHRONOS_SUPPORT_INT64 1
1.204 -#define KHRONOS_SUPPORT_FLOAT 1
1.205 -
1.206 -#elif 0
1.207 -
1.208 -/*
1.209 -* Hypothetical platform with no float or int64 support
1.210 -*/
1.211 -typedef int khronos_int32_t;
1.212 -typedef unsigned int khronos_uint32_t;
1.213 -#define KHRONOS_SUPPORT_INT64 0
1.214 -#define KHRONOS_SUPPORT_FLOAT 0
1.215 -
1.216 -#else
1.217 -
1.218 -/*
1.219 -* Generic fallback
1.220 -*/
1.221 -#include <stdint.h>
1.222 -typedef int32_t khronos_int32_t;
1.223 -typedef uint32_t khronos_uint32_t;
1.224 -typedef int64_t khronos_int64_t;
1.225 -typedef uint64_t khronos_uint64_t;
1.226 -#define KHRONOS_SUPPORT_INT64 1
1.227 -#define KHRONOS_SUPPORT_FLOAT 1
1.228 -
1.229 -#endif
1.230 -
1.231 -
1.232 -/*
1.233 -* Types that are (so far) the same on all platforms
1.234 -*/
1.235 -typedef signed char khronos_int8_t;
1.236 -typedef unsigned char khronos_uint8_t;
1.237 -typedef signed short int khronos_int16_t;
1.238 -typedef unsigned short int khronos_uint16_t;
1.239 -
1.240 -/*
1.241 -* Types that differ between LLP64 and LP64 architectures - in LLP64,
1.242 -* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
1.243 -* to be the only LLP64 architecture in current use.
1.244 -*/
1.245 -#ifdef _WIN64
1.246 -typedef signed long long int khronos_intptr_t;
1.247 -typedef unsigned long long int khronos_uintptr_t;
1.248 -typedef signed long long int khronos_ssize_t;
1.249 -typedef unsigned long long int khronos_usize_t;
1.250 -#else
1.251 -typedef signed long int khronos_intptr_t;
1.252 -typedef unsigned long int khronos_uintptr_t;
1.253 -typedef signed long int khronos_ssize_t;
1.254 -typedef unsigned long int khronos_usize_t;
1.255 -#endif
1.256 -
1.257 -#if KHRONOS_SUPPORT_FLOAT
1.258 -/*
1.259 -* Float type
1.260 -*/
1.261 -typedef float khronos_float_t;
1.262 -#endif
1.263 -
1.264 -#if KHRONOS_SUPPORT_INT64
1.265 -/* Time types
1.266 -*
1.267 -* These types can be used to represent a time interval in nanoseconds or
1.268 -* an absolute Unadjusted System Time. Unadjusted System Time is the number
1.269 -* of nanoseconds since some arbitrary system event (e.g. since the last
1.270 -* time the system booted). The Unadjusted System Time is an unsigned
1.271 -* 64 bit value that wraps back to 0 every 584 years. Time intervals
1.272 -* may be either signed or unsigned.
1.273 -*/
1.274 -typedef khronos_uint64_t khronos_utime_nanoseconds_t;
1.275 -typedef khronos_int64_t khronos_stime_nanoseconds_t;
1.276 -#endif
1.277 -
1.278 -/*
1.279 -* Dummy value used to pad enum types to 32 bits.
1.280 -*/
1.281 -#ifndef KHRONOS_MAX_ENUM
1.282 -#define KHRONOS_MAX_ENUM 0x7FFFFFFF
1.283 -#endif
1.284 -
1.285 -/*
1.286 -* Enumerated boolean type
1.287 -*
1.288 -* Values other than zero should be considered to be true. Therefore
1.289 -* comparisons should not be made against KHRONOS_TRUE.
1.290 -*/
1.291 -typedef enum {
1.292 - KHRONOS_FALSE = 0,
1.293 - KHRONOS_TRUE = 1,
1.294 - KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
1.295 -} khronos_boolean_enum_t;
1.296 -
1.297 -#endif /* __khrplatform_h_ */
1.298 -
1.299 -
1.300 -#ifndef __gl2platform_h_
1.301 -#define __gl2platform_h_
1.302 -
1.303 -/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
1.304 -
1.305 -/*
1.306 - * This document is licensed under the SGI Free Software B License Version
1.307 - * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
1.308 - */
1.309 -
1.310 -/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
1.311 - *
1.312 - * Adopters may modify khrplatform.h and this file to suit their platform.
1.313 - * You are encouraged to submit all modifications to the Khronos group so that
1.314 - * they can be included in future versions of this file. Please submit changes
1.315 - * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
1.316 - * by filing a bug against product "OpenGL-ES" component "Registry".
1.317 - */
1.318 -
1.319 -/*#include <KHR/khrplatform.h>*/
1.320 -
1.321 -#ifndef GL_APICALL
1.322 -#define GL_APICALL KHRONOS_APICALL
1.323 -#endif
1.324 -
1.325 -#ifndef GL_APIENTRY
1.326 -#define GL_APIENTRY KHRONOS_APIENTRY
1.327 -#endif
1.328 -
1.329 -#endif /* __gl2platform_h_ */
1.330 -
1.331 -#ifndef __gl2_h_
1.332 -#define __gl2_h_
1.333 -
1.334 -/* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */
1.335 -
1.336 -/*#include <GLES2/gl2platform.h>*/
1.337 -
1.338 -#ifdef __cplusplus
1.339 -extern "C" {
1.340 -#endif
1.341 -
1.342 -/*
1.343 - * This document is licensed under the SGI Free Software B License Version
1.344 - * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
1.345 - */
1.346 -
1.347 -/*-------------------------------------------------------------------------
1.348 - * Data type definitions
1.349 - *-----------------------------------------------------------------------*/
1.350 -
1.351 -typedef void GLvoid;
1.352 -typedef char GLchar;
1.353 -typedef unsigned int GLenum;
1.354 -typedef unsigned char GLboolean;
1.355 -typedef unsigned int GLbitfield;
1.356 -typedef khronos_int8_t GLbyte;
1.357 -typedef short GLshort;
1.358 -typedef int GLint;
1.359 -typedef int GLsizei;
1.360 -typedef khronos_uint8_t GLubyte;
1.361 -typedef unsigned short GLushort;
1.362 -typedef unsigned int GLuint;
1.363 -typedef khronos_float_t GLfloat;
1.364 -typedef khronos_float_t GLclampf;
1.365 -typedef khronos_int32_t GLfixed;
1.366 -
1.367 -/* GL types for handling large vertex buffer objects */
1.368 -typedef khronos_intptr_t GLintptr;
1.369 -typedef khronos_ssize_t GLsizeiptr;
1.370 -
1.371 -/* OpenGL ES core versions */
1.372 -#define GL_ES_VERSION_2_0 1
1.373 -
1.374 -/* ClearBufferMask */
1.375 -#define GL_DEPTH_BUFFER_BIT 0x00000100
1.376 -#define GL_STENCIL_BUFFER_BIT 0x00000400
1.377 -#define GL_COLOR_BUFFER_BIT 0x00004000
1.378 -
1.379 -/* Boolean */
1.380 -#define GL_FALSE 0
1.381 -#define GL_TRUE 1
1.382 -
1.383 -/* BeginMode */
1.384 -#define GL_POINTS 0x0000
1.385 -#define GL_LINES 0x0001
1.386 -#define GL_LINE_LOOP 0x0002
1.387 -#define GL_LINE_STRIP 0x0003
1.388 -#define GL_TRIANGLES 0x0004
1.389 -#define GL_TRIANGLE_STRIP 0x0005
1.390 -#define GL_TRIANGLE_FAN 0x0006
1.391 -
1.392 -/* AlphaFunction (not supported in ES20) */
1.393 -/* GL_NEVER */
1.394 -/* GL_LESS */
1.395 -/* GL_EQUAL */
1.396 -/* GL_LEQUAL */
1.397 -/* GL_GREATER */
1.398 -/* GL_NOTEQUAL */
1.399 -/* GL_GEQUAL */
1.400 -/* GL_ALWAYS */
1.401 -
1.402 -/* BlendingFactorDest */
1.403 -#define GL_ZERO 0
1.404 -#define GL_ONE 1
1.405 -#define GL_SRC_COLOR 0x0300
1.406 -#define GL_ONE_MINUS_SRC_COLOR 0x0301
1.407 -#define GL_SRC_ALPHA 0x0302
1.408 -#define GL_ONE_MINUS_SRC_ALPHA 0x0303
1.409 -#define GL_DST_ALPHA 0x0304
1.410 -#define GL_ONE_MINUS_DST_ALPHA 0x0305
1.411 -
1.412 -/* BlendingFactorSrc */
1.413 -/* GL_ZERO */
1.414 -/* GL_ONE */
1.415 -#define GL_DST_COLOR 0x0306
1.416 -#define GL_ONE_MINUS_DST_COLOR 0x0307
1.417 -#define GL_SRC_ALPHA_SATURATE 0x0308
1.418 -/* GL_SRC_ALPHA */
1.419 -/* GL_ONE_MINUS_SRC_ALPHA */
1.420 -/* GL_DST_ALPHA */
1.421 -/* GL_ONE_MINUS_DST_ALPHA */
1.422 -
1.423 -/* BlendEquationSeparate */
1.424 -#define GL_FUNC_ADD 0x8006
1.425 -#define GL_BLEND_EQUATION 0x8009
1.426 -#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
1.427 -#define GL_BLEND_EQUATION_ALPHA 0x883D
1.428 -
1.429 -/* BlendSubtract */
1.430 -#define GL_FUNC_SUBTRACT 0x800A
1.431 -#define GL_FUNC_REVERSE_SUBTRACT 0x800B
1.432 -
1.433 -/* Separate Blend Functions */
1.434 -#define GL_BLEND_DST_RGB 0x80C8
1.435 -#define GL_BLEND_SRC_RGB 0x80C9
1.436 -#define GL_BLEND_DST_ALPHA 0x80CA
1.437 -#define GL_BLEND_SRC_ALPHA 0x80CB
1.438 -#define GL_CONSTANT_COLOR 0x8001
1.439 -#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
1.440 -#define GL_CONSTANT_ALPHA 0x8003
1.441 -#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
1.442 -#define GL_BLEND_COLOR 0x8005
1.443 -
1.444 -/* Buffer Objects */
1.445 -#define GL_ARRAY_BUFFER 0x8892
1.446 -#define GL_ELEMENT_ARRAY_BUFFER 0x8893
1.447 -#define GL_ARRAY_BUFFER_BINDING 0x8894
1.448 -#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
1.449 -
1.450 -#define GL_STREAM_DRAW 0x88E0
1.451 -#define GL_STATIC_DRAW 0x88E4
1.452 -#define GL_DYNAMIC_DRAW 0x88E8
1.453 -
1.454 -#define GL_BUFFER_SIZE 0x8764
1.455 -#define GL_BUFFER_USAGE 0x8765
1.456 -
1.457 -#define GL_CURRENT_VERTEX_ATTRIB 0x8626
1.458 -
1.459 -/* CullFaceMode */
1.460 -#define GL_FRONT 0x0404
1.461 -#define GL_BACK 0x0405
1.462 -#define GL_FRONT_AND_BACK 0x0408
1.463 -
1.464 -/* DepthFunction */
1.465 -/* GL_NEVER */
1.466 -/* GL_LESS */
1.467 -/* GL_EQUAL */
1.468 -/* GL_LEQUAL */
1.469 -/* GL_GREATER */
1.470 -/* GL_NOTEQUAL */
1.471 -/* GL_GEQUAL */
1.472 -/* GL_ALWAYS */
1.473 -
1.474 -/* EnableCap */
1.475 -#define GL_TEXTURE_2D 0x0DE1
1.476 -#define GL_CULL_FACE 0x0B44
1.477 -#define GL_BLEND 0x0BE2
1.478 -#define GL_DITHER 0x0BD0
1.479 -#define GL_STENCIL_TEST 0x0B90
1.480 -#define GL_DEPTH_TEST 0x0B71
1.481 -#define GL_SCISSOR_TEST 0x0C11
1.482 -#define GL_POLYGON_OFFSET_FILL 0x8037
1.483 -#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
1.484 -#define GL_SAMPLE_COVERAGE 0x80A0
1.485 -
1.486 -/* ErrorCode */
1.487 -#define GL_NO_ERROR 0
1.488 -#define GL_INVALID_ENUM 0x0500
1.489 -#define GL_INVALID_VALUE 0x0501
1.490 -#define GL_INVALID_OPERATION 0x0502
1.491 -#define GL_OUT_OF_MEMORY 0x0505
1.492 -
1.493 -/* FrontFaceDirection */
1.494 -#define GL_CW 0x0900
1.495 -#define GL_CCW 0x0901
1.496 -
1.497 -/* GetPName */
1.498 -#define GL_LINE_WIDTH 0x0B21
1.499 -#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
1.500 -#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
1.501 -#define GL_CULL_FACE_MODE 0x0B45
1.502 -#define GL_FRONT_FACE 0x0B46
1.503 -#define GL_DEPTH_RANGE 0x0B70
1.504 -#define GL_DEPTH_WRITEMASK 0x0B72
1.505 -#define GL_DEPTH_CLEAR_VALUE 0x0B73
1.506 -#define GL_DEPTH_FUNC 0x0B74
1.507 -#define GL_STENCIL_CLEAR_VALUE 0x0B91
1.508 -#define GL_STENCIL_FUNC 0x0B92
1.509 -#define GL_STENCIL_FAIL 0x0B94
1.510 -#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
1.511 -#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
1.512 -#define GL_STENCIL_REF 0x0B97
1.513 -#define GL_STENCIL_VALUE_MASK 0x0B93
1.514 -#define GL_STENCIL_WRITEMASK 0x0B98
1.515 -#define GL_STENCIL_BACK_FUNC 0x8800
1.516 -#define GL_STENCIL_BACK_FAIL 0x8801
1.517 -#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
1.518 -#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
1.519 -#define GL_STENCIL_BACK_REF 0x8CA3
1.520 -#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
1.521 -#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
1.522 -#define GL_VIEWPORT 0x0BA2
1.523 -#define GL_SCISSOR_BOX 0x0C10
1.524 -/* GL_SCISSOR_TEST */
1.525 -#define GL_COLOR_CLEAR_VALUE 0x0C22
1.526 -#define GL_COLOR_WRITEMASK 0x0C23
1.527 -#define GL_UNPACK_ALIGNMENT 0x0CF5
1.528 -#define GL_PACK_ALIGNMENT 0x0D05
1.529 -#define GL_MAX_TEXTURE_SIZE 0x0D33
1.530 -#define GL_MAX_VIEWPORT_DIMS 0x0D3A
1.531 -#define GL_SUBPIXEL_BITS 0x0D50
1.532 -#define GL_RED_BITS 0x0D52
1.533 -#define GL_GREEN_BITS 0x0D53
1.534 -#define GL_BLUE_BITS 0x0D54
1.535 -#define GL_ALPHA_BITS 0x0D55
1.536 -#define GL_DEPTH_BITS 0x0D56
1.537 -#define GL_STENCIL_BITS 0x0D57
1.538 -#define GL_POLYGON_OFFSET_UNITS 0x2A00
1.539 -/* GL_POLYGON_OFFSET_FILL */
1.540 -#define GL_POLYGON_OFFSET_FACTOR 0x8038
1.541 -#define GL_TEXTURE_BINDING_2D 0x8069
1.542 -#define GL_SAMPLE_BUFFERS 0x80A8
1.543 -#define GL_SAMPLES 0x80A9
1.544 -#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
1.545 -#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
1.546 -
1.547 -/* GetTextureParameter */
1.548 -/* GL_TEXTURE_MAG_FILTER */
1.549 -/* GL_TEXTURE_MIN_FILTER */
1.550 -/* GL_TEXTURE_WRAP_S */
1.551 -/* GL_TEXTURE_WRAP_T */
1.552 -
1.553 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
1.554 -#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
1.555 -
1.556 -/* HintMode */
1.557 -#define GL_DONT_CARE 0x1100
1.558 -#define GL_FASTEST 0x1101
1.559 -#define GL_NICEST 0x1102
1.560 -
1.561 -/* HintTarget */
1.562 -#define GL_GENERATE_MIPMAP_HINT 0x8192
1.563 -
1.564 -/* DataType */
1.565 -#define GL_BYTE 0x1400
1.566 -#define GL_UNSIGNED_BYTE 0x1401
1.567 -#define GL_SHORT 0x1402
1.568 -#define GL_UNSIGNED_SHORT 0x1403
1.569 -#define GL_INT 0x1404
1.570 -#define GL_UNSIGNED_INT 0x1405
1.571 -#define GL_FLOAT 0x1406
1.572 -#define GL_FIXED 0x140C
1.573 -
1.574 -/* PixelFormat */
1.575 -#define GL_DEPTH_COMPONENT 0x1902
1.576 -#define GL_ALPHA 0x1906
1.577 -#define GL_RGB 0x1907
1.578 -#define GL_RGBA 0x1908
1.579 -#define GL_LUMINANCE 0x1909
1.580 -#define GL_LUMINANCE_ALPHA 0x190A
1.581 -
1.582 -/* PixelType */
1.583 -/* GL_UNSIGNED_BYTE */
1.584 -#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
1.585 -#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
1.586 -#define GL_UNSIGNED_SHORT_5_6_5 0x8363
1.587 -
1.588 -/* Shaders */
1.589 -#define GL_FRAGMENT_SHADER 0x8B30
1.590 -#define GL_VERTEX_SHADER 0x8B31
1.591 -#define GL_MAX_VERTEX_ATTRIBS 0x8869
1.592 -#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
1.593 -#define GL_MAX_VARYING_VECTORS 0x8DFC
1.594 -#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
1.595 -#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
1.596 -#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
1.597 -#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
1.598 -#define GL_SHADER_TYPE 0x8B4F
1.599 -#define GL_DELETE_STATUS 0x8B80
1.600 -#define GL_LINK_STATUS 0x8B82
1.601 -#define GL_VALIDATE_STATUS 0x8B83
1.602 -#define GL_ATTACHED_SHADERS 0x8B85
1.603 -#define GL_ACTIVE_UNIFORMS 0x8B86
1.604 -#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
1.605 -#define GL_ACTIVE_ATTRIBUTES 0x8B89
1.606 -#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
1.607 -#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
1.608 -#define GL_CURRENT_PROGRAM 0x8B8D
1.609 -
1.610 -/* StencilFunction */
1.611 -#define GL_NEVER 0x0200
1.612 -#define GL_LESS 0x0201
1.613 -#define GL_EQUAL 0x0202
1.614 -#define GL_LEQUAL 0x0203
1.615 -#define GL_GREATER 0x0204
1.616 -#define GL_NOTEQUAL 0x0205
1.617 -#define GL_GEQUAL 0x0206
1.618 -#define GL_ALWAYS 0x0207
1.619 -
1.620 -/* StencilOp */
1.621 -/* GL_ZERO */
1.622 -#define GL_KEEP 0x1E00
1.623 -#define GL_REPLACE 0x1E01
1.624 -#define GL_INCR 0x1E02
1.625 -#define GL_DECR 0x1E03
1.626 -#define GL_INVERT 0x150A
1.627 -#define GL_INCR_WRAP 0x8507
1.628 -#define GL_DECR_WRAP 0x8508
1.629 -
1.630 -/* StringName */
1.631 -#define GL_VENDOR 0x1F00
1.632 -#define GL_RENDERER 0x1F01
1.633 -#define GL_VERSION 0x1F02
1.634 -#define GL_EXTENSIONS 0x1F03
1.635 -
1.636 -/* TextureMagFilter */
1.637 -#define GL_NEAREST 0x2600
1.638 -#define GL_LINEAR 0x2601
1.639 -
1.640 -/* TextureMinFilter */
1.641 -/* GL_NEAREST */
1.642 -/* GL_LINEAR */
1.643 -#define GL_NEAREST_MIPMAP_NEAREST 0x2700
1.644 -#define GL_LINEAR_MIPMAP_NEAREST 0x2701
1.645 -#define GL_NEAREST_MIPMAP_LINEAR 0x2702
1.646 -#define GL_LINEAR_MIPMAP_LINEAR 0x2703
1.647 -
1.648 -/* TextureParameterName */
1.649 -#define GL_TEXTURE_MAG_FILTER 0x2800
1.650 -#define GL_TEXTURE_MIN_FILTER 0x2801
1.651 -#define GL_TEXTURE_WRAP_S 0x2802
1.652 -#define GL_TEXTURE_WRAP_T 0x2803
1.653 -
1.654 -/* TextureTarget */
1.655 -/* GL_TEXTURE_2D */
1.656 -#define GL_TEXTURE 0x1702
1.657 -
1.658 -#define GL_TEXTURE_CUBE_MAP 0x8513
1.659 -#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
1.660 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
1.661 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
1.662 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
1.663 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
1.664 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
1.665 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
1.666 -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
1.667 -
1.668 -/* TextureUnit */
1.669 -#define GL_TEXTURE0 0x84C0
1.670 -#define GL_TEXTURE1 0x84C1
1.671 -#define GL_TEXTURE2 0x84C2
1.672 -#define GL_TEXTURE3 0x84C3
1.673 -#define GL_TEXTURE4 0x84C4
1.674 -#define GL_TEXTURE5 0x84C5
1.675 -#define GL_TEXTURE6 0x84C6
1.676 -#define GL_TEXTURE7 0x84C7
1.677 -#define GL_TEXTURE8 0x84C8
1.678 -#define GL_TEXTURE9 0x84C9
1.679 -#define GL_TEXTURE10 0x84CA
1.680 -#define GL_TEXTURE11 0x84CB
1.681 -#define GL_TEXTURE12 0x84CC
1.682 -#define GL_TEXTURE13 0x84CD
1.683 -#define GL_TEXTURE14 0x84CE
1.684 -#define GL_TEXTURE15 0x84CF
1.685 -#define GL_TEXTURE16 0x84D0
1.686 -#define GL_TEXTURE17 0x84D1
1.687 -#define GL_TEXTURE18 0x84D2
1.688 -#define GL_TEXTURE19 0x84D3
1.689 -#define GL_TEXTURE20 0x84D4
1.690 -#define GL_TEXTURE21 0x84D5
1.691 -#define GL_TEXTURE22 0x84D6
1.692 -#define GL_TEXTURE23 0x84D7
1.693 -#define GL_TEXTURE24 0x84D8
1.694 -#define GL_TEXTURE25 0x84D9
1.695 -#define GL_TEXTURE26 0x84DA
1.696 -#define GL_TEXTURE27 0x84DB
1.697 -#define GL_TEXTURE28 0x84DC
1.698 -#define GL_TEXTURE29 0x84DD
1.699 -#define GL_TEXTURE30 0x84DE
1.700 -#define GL_TEXTURE31 0x84DF
1.701 -#define GL_ACTIVE_TEXTURE 0x84E0
1.702 -
1.703 -/* TextureWrapMode */
1.704 -#define GL_REPEAT 0x2901
1.705 -#define GL_CLAMP_TO_EDGE 0x812F
1.706 -#define GL_MIRRORED_REPEAT 0x8370
1.707 -
1.708 -/* Uniform Types */
1.709 -#define GL_FLOAT_VEC2 0x8B50
1.710 -#define GL_FLOAT_VEC3 0x8B51
1.711 -#define GL_FLOAT_VEC4 0x8B52
1.712 -#define GL_INT_VEC2 0x8B53
1.713 -#define GL_INT_VEC3 0x8B54
1.714 -#define GL_INT_VEC4 0x8B55
1.715 -#define GL_BOOL 0x8B56
1.716 -#define GL_BOOL_VEC2 0x8B57
1.717 -#define GL_BOOL_VEC3 0x8B58
1.718 -#define GL_BOOL_VEC4 0x8B59
1.719 -#define GL_FLOAT_MAT2 0x8B5A
1.720 -#define GL_FLOAT_MAT3 0x8B5B
1.721 -#define GL_FLOAT_MAT4 0x8B5C
1.722 -#define GL_SAMPLER_2D 0x8B5E
1.723 -#define GL_SAMPLER_CUBE 0x8B60
1.724 -
1.725 -/* Vertex Arrays */
1.726 -#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
1.727 -#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
1.728 -#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
1.729 -#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
1.730 -#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
1.731 -#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
1.732 -#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
1.733 -
1.734 -/* Read Format */
1.735 -#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
1.736 -#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
1.737 -
1.738 -/* Shader Source */
1.739 -#define GL_COMPILE_STATUS 0x8B81
1.740 -#define GL_INFO_LOG_LENGTH 0x8B84
1.741 -#define GL_SHADER_SOURCE_LENGTH 0x8B88
1.742 -#define GL_SHADER_COMPILER 0x8DFA
1.743 -
1.744 -/* Shader Binary */
1.745 -#define GL_SHADER_BINARY_FORMATS 0x8DF8
1.746 -#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
1.747 -
1.748 -/* Shader Precision-Specified Types */
1.749 -#define GL_LOW_FLOAT 0x8DF0
1.750 -#define GL_MEDIUM_FLOAT 0x8DF1
1.751 -#define GL_HIGH_FLOAT 0x8DF2
1.752 -#define GL_LOW_INT 0x8DF3
1.753 -#define GL_MEDIUM_INT 0x8DF4
1.754 -#define GL_HIGH_INT 0x8DF5
1.755 -
1.756 -/* Framebuffer Object. */
1.757 -#define GL_FRAMEBUFFER 0x8D40
1.758 -#define GL_RENDERBUFFER 0x8D41
1.759 -
1.760 -#define GL_RGBA4 0x8056
1.761 -#define GL_RGB5_A1 0x8057
1.762 -#define GL_RGB565 0x8D62
1.763 -#define GL_DEPTH_COMPONENT16 0x81A5
1.764 -#define GL_STENCIL_INDEX8 0x8D48
1.765 -
1.766 -#define GL_RENDERBUFFER_WIDTH 0x8D42
1.767 -#define GL_RENDERBUFFER_HEIGHT 0x8D43
1.768 -#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
1.769 -#define GL_RENDERBUFFER_RED_SIZE 0x8D50
1.770 -#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
1.771 -#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
1.772 -#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
1.773 -#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
1.774 -#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
1.775 -
1.776 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
1.777 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
1.778 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
1.779 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
1.780 -
1.781 -#define GL_COLOR_ATTACHMENT0 0x8CE0
1.782 -#define GL_DEPTH_ATTACHMENT 0x8D00
1.783 -#define GL_STENCIL_ATTACHMENT 0x8D20
1.784 -
1.785 -#define GL_NONE 0
1.786 -
1.787 -#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
1.788 -#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
1.789 -#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
1.790 -#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
1.791 -#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
1.792 -
1.793 -#define GL_FRAMEBUFFER_BINDING 0x8CA6
1.794 -#define GL_RENDERBUFFER_BINDING 0x8CA7
1.795 -#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
1.796 -
1.797 -#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
1.798 -
1.799 -/*-------------------------------------------------------------------------
1.800 - * GL core functions.
1.801 - *-----------------------------------------------------------------------*/
1.802 -
1.803 -GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
1.804 -GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
1.805 -GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
1.806 -GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
1.807 -GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
1.808 -GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
1.809 -GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
1.810 -GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
1.811 -GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
1.812 -GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
1.813 -GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
1.814 -GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
1.815 -GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
1.816 -GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
1.817 -GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
1.818 -GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
1.819 -GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
1.820 -GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
1.821 -GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
1.822 -GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
1.823 -GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
1.824 -GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
1.825 -GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
1.826 -GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
1.827 -GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1.828 -GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
1.829 -GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
1.830 -GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
1.831 -GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
1.832 -GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
1.833 -GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
1.834 -GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
1.835 -GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
1.836 -GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
1.837 -GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
1.838 -GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
1.839 -GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
1.840 -GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
1.841 -GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
1.842 -GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
1.843 -GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
1.844 -GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
1.845 -GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
1.846 -GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
1.847 -GL_APICALL void GL_APIENTRY glFinish (void);
1.848 -GL_APICALL void GL_APIENTRY glFlush (void);
1.849 -GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
1.850 -GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
1.851 -GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
1.852 -GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
1.853 -GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
1.854 -GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
1.855 -GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
1.856 -GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
1.857 -GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
1.858 -GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
1.859 -GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
1.860 -GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
1.861 -GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
1.862 -GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
1.863 -GL_APICALL GLenum GL_APIENTRY glGetError (void);
1.864 -GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
1.865 -GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
1.866 -GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
1.867 -GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
1.868 -GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
1.869 -GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
1.870 -GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
1.871 -GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
1.872 -GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
1.873 -GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
1.874 -GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
1.875 -GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
1.876 -GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
1.877 -GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
1.878 -GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
1.879 -GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
1.880 -GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
1.881 -GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
1.882 -GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
1.883 -GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
1.884 -GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
1.885 -GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
1.886 -GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
1.887 -GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
1.888 -GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
1.889 -GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
1.890 -GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
1.891 -GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
1.892 -GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
1.893 -GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
1.894 -GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
1.895 -GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
1.896 -GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
1.897 -GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
1.898 -GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
1.899 -GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
1.900 -GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
1.901 -GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
1.902 -GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
1.903 -GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
1.904 -GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
1.905 -GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
1.906 -GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
1.907 -GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
1.908 -GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
1.909 -GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
1.910 -GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
1.911 -GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
1.912 -GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
1.913 -GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
1.914 -GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
1.915 -GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
1.916 -GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
1.917 -GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
1.918 -GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
1.919 -GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
1.920 -GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
1.921 -GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
1.922 -GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
1.923 -GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
1.924 -GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
1.925 -GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
1.926 -GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1.927 -GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
1.928 -GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
1.929 -GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
1.930 -GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
1.931 -GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
1.932 -GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
1.933 -GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
1.934 -GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
1.935 -GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
1.936 -GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
1.937 -GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
1.938 -GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
1.939 -GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
1.940 -GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
1.941 -GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1.942 -GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
1.943 -GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
1.944 -GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
1.945 -
1.946 -#ifdef __cplusplus
1.947 -}
1.948 -#endif
1.949 -
1.950 -#endif /* __gl2_h_ */
1.951 -
1.952 -
1.953 -#ifndef __gl2ext_h_
1.954 -#define __gl2ext_h_
1.955 -
1.956 -/* $Revision: 19436 $ on $Date:: 2012-10-10 10:37:04 -0700 #$ */
1.957 -
1.958 -#ifdef __cplusplus
1.959 -extern "C" {
1.960 -#endif
1.961 -
1.962 -/*
1.963 - * This document is licensed under the SGI Free Software B License Version
1.964 - * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
1.965 - */
1.966 -
1.967 -#ifndef GL_APIENTRYP
1.968 -# define GL_APIENTRYP GL_APIENTRY*
1.969 -#endif
1.970 -
1.971 -/*------------------------------------------------------------------------*
1.972 - * OES extension tokens
1.973 - *------------------------------------------------------------------------*/
1.974 -
1.975 -/* GL_OES_compressed_ETC1_RGB8_texture */
1.976 -#ifndef GL_OES_compressed_ETC1_RGB8_texture
1.977 -#define GL_ETC1_RGB8_OES 0x8D64
1.978 -#endif
1.979 -
1.980 -/* GL_OES_compressed_paletted_texture */
1.981 -#ifndef GL_OES_compressed_paletted_texture
1.982 -#define GL_PALETTE4_RGB8_OES 0x8B90
1.983 -#define GL_PALETTE4_RGBA8_OES 0x8B91
1.984 -#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
1.985 -#define GL_PALETTE4_RGBA4_OES 0x8B93
1.986 -#define GL_PALETTE4_RGB5_A1_OES 0x8B94
1.987 -#define GL_PALETTE8_RGB8_OES 0x8B95
1.988 -#define GL_PALETTE8_RGBA8_OES 0x8B96
1.989 -#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
1.990 -#define GL_PALETTE8_RGBA4_OES 0x8B98
1.991 -#define GL_PALETTE8_RGB5_A1_OES 0x8B99
1.992 -#endif
1.993 -
1.994 -/* GL_OES_depth24 */
1.995 -#ifndef GL_OES_depth24
1.996 -#define GL_DEPTH_COMPONENT24_OES 0x81A6
1.997 -#endif
1.998 -
1.999 -/* GL_OES_depth32 */
1.1000 -#ifndef GL_OES_depth32
1.1001 -#define GL_DEPTH_COMPONENT32_OES 0x81A7
1.1002 -#endif
1.1003 -
1.1004 -/* GL_OES_depth_texture */
1.1005 -/* No new tokens introduced by this extension. */
1.1006 -
1.1007 -/* GL_OES_EGL_image */
1.1008 -#ifndef GL_OES_EGL_image
1.1009 -typedef void* GLeglImageOES;
1.1010 -#endif
1.1011 -
1.1012 -/* GL_OES_EGL_image_external */
1.1013 -#ifndef GL_OES_EGL_image_external
1.1014 -/* GLeglImageOES defined in GL_OES_EGL_image already. */
1.1015 -#define GL_TEXTURE_EXTERNAL_OES 0x8D65
1.1016 -#define GL_SAMPLER_EXTERNAL_OES 0x8D66
1.1017 -#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
1.1018 -#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
1.1019 -#endif
1.1020 -
1.1021 -/* GL_OES_element_index_uint */
1.1022 -#ifndef GL_OES_element_index_uint
1.1023 -#define GL_UNSIGNED_INT 0x1405
1.1024 -#endif
1.1025 -
1.1026 -/* GL_OES_get_program_binary */
1.1027 -#ifndef GL_OES_get_program_binary
1.1028 -#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
1.1029 -#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
1.1030 -#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
1.1031 -#endif
1.1032 -
1.1033 -/* GL_OES_mapbuffer */
1.1034 -#ifndef GL_OES_mapbuffer
1.1035 -#define GL_WRITE_ONLY_OES 0x88B9
1.1036 -#define GL_BUFFER_ACCESS_OES 0x88BB
1.1037 -#define GL_BUFFER_MAPPED_OES 0x88BC
1.1038 -#define GL_BUFFER_MAP_POINTER_OES 0x88BD
1.1039 -#endif
1.1040 -
1.1041 -/* GL_OES_packed_depth_stencil */
1.1042 -#ifndef GL_OES_packed_depth_stencil
1.1043 -#define GL_DEPTH_STENCIL_OES 0x84F9
1.1044 -#define GL_UNSIGNED_INT_24_8_OES 0x84FA
1.1045 -#define GL_DEPTH24_STENCIL8_OES 0x88F0
1.1046 -#endif
1.1047 -
1.1048 -/* GL_OES_required_internalformat */
1.1049 -#ifndef GL_OES_required_internalformat
1.1050 -#define GL_ALPHA8_OES 0x803C
1.1051 -#define GL_DEPTH_COMPONENT16_OES 0x81A5
1.1052 -/* reuse GL_DEPTH_COMPONENT24_OES */
1.1053 -/* reuse GL_DEPTH24_STENCIL8_OES */
1.1054 -/* reuse GL_DEPTH_COMPONENT32_OES */
1.1055 -#define GL_LUMINANCE4_ALPHA4_OES 0x8043
1.1056 -#define GL_LUMINANCE8_ALPHA8_OES 0x8045
1.1057 -#define GL_LUMINANCE8_OES 0x8040
1.1058 -#define GL_RGBA4_OES 0x8056
1.1059 -#define GL_RGB5_A1_OES 0x8057
1.1060 -#define GL_RGB565_OES 0x8D62
1.1061 -/* reuse GL_RGB8_OES */
1.1062 -/* reuse GL_RGBA8_OES */
1.1063 -/* reuse GL_RGB10_EXT */
1.1064 -/* reuse GL_RGB10_A2_EXT */
1.1065 -#endif
1.1066 -
1.1067 -/* GL_OES_rgb8_rgba8 */
1.1068 -#ifndef GL_OES_rgb8_rgba8
1.1069 -#define GL_RGB8_OES 0x8051
1.1070 -#define GL_RGBA8_OES 0x8058
1.1071 -#endif
1.1072 -
1.1073 -/* GL_OES_standard_derivatives */
1.1074 -#ifndef GL_OES_standard_derivatives
1.1075 -#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
1.1076 -#endif
1.1077 -
1.1078 -/* GL_OES_stencil1 */
1.1079 -#ifndef GL_OES_stencil1
1.1080 -#define GL_STENCIL_INDEX1_OES 0x8D46
1.1081 -#endif
1.1082 -
1.1083 -/* GL_OES_stencil4 */
1.1084 -#ifndef GL_OES_stencil4
1.1085 -#define GL_STENCIL_INDEX4_OES 0x8D47
1.1086 -#endif
1.1087 -
1.1088 -#ifndef GL_OES_surfaceless_context
1.1089 -#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
1.1090 -#endif
1.1091 -
1.1092 -/* GL_OES_texture_3D */
1.1093 -#ifndef GL_OES_texture_3D
1.1094 -#define GL_TEXTURE_WRAP_R_OES 0x8072
1.1095 -#define GL_TEXTURE_3D_OES 0x806F
1.1096 -#define GL_TEXTURE_BINDING_3D_OES 0x806A
1.1097 -#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
1.1098 -#define GL_SAMPLER_3D_OES 0x8B5F
1.1099 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
1.1100 -#endif
1.1101 -
1.1102 -/* GL_OES_texture_float */
1.1103 -/* No new tokens introduced by this extension. */
1.1104 -
1.1105 -/* GL_OES_texture_float_linear */
1.1106 -/* No new tokens introduced by this extension. */
1.1107 -
1.1108 -/* GL_OES_texture_half_float */
1.1109 -#ifndef GL_OES_texture_half_float
1.1110 -#define GL_HALF_FLOAT_OES 0x8D61
1.1111 -#endif
1.1112 -
1.1113 -/* GL_OES_texture_half_float_linear */
1.1114 -/* No new tokens introduced by this extension. */
1.1115 -
1.1116 -/* GL_OES_texture_npot */
1.1117 -/* No new tokens introduced by this extension. */
1.1118 -
1.1119 -/* GL_OES_vertex_array_object */
1.1120 -#ifndef GL_OES_vertex_array_object
1.1121 -#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
1.1122 -#endif
1.1123 -
1.1124 -/* GL_OES_vertex_half_float */
1.1125 -/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
1.1126 -
1.1127 -/* GL_OES_vertex_type_10_10_10_2 */
1.1128 -#ifndef GL_OES_vertex_type_10_10_10_2
1.1129 -#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
1.1130 -#define GL_INT_10_10_10_2_OES 0x8DF7
1.1131 -#endif
1.1132 -
1.1133 -/*------------------------------------------------------------------------*
1.1134 - * KHR extension tokens
1.1135 - *------------------------------------------------------------------------*/
1.1136 -
1.1137 -#ifndef GL_KHR_debug
1.1138 -typedef void (GL_APIENTRYP GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
1.1139 -#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
1.1140 -#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
1.1141 -#define GL_DEBUG_CALLBACK_FUNCTION 0x8244
1.1142 -#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
1.1143 -#define GL_DEBUG_SOURCE_API 0x8246
1.1144 -#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
1.1145 -#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
1.1146 -#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
1.1147 -#define GL_DEBUG_SOURCE_APPLICATION 0x824A
1.1148 -#define GL_DEBUG_SOURCE_OTHER 0x824B
1.1149 -#define GL_DEBUG_TYPE_ERROR 0x824C
1.1150 -#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
1.1151 -#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
1.1152 -#define GL_DEBUG_TYPE_PORTABILITY 0x824F
1.1153 -#define GL_DEBUG_TYPE_PERFORMANCE 0x8250
1.1154 -#define GL_DEBUG_TYPE_OTHER 0x8251
1.1155 -#define GL_DEBUG_TYPE_MARKER 0x8268
1.1156 -#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
1.1157 -#define GL_DEBUG_TYPE_POP_GROUP 0x826A
1.1158 -#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
1.1159 -#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
1.1160 -#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
1.1161 -#define GL_BUFFER 0x82E0
1.1162 -#define GL_SHADER 0x82E1
1.1163 -#define GL_PROGRAM 0x82E2
1.1164 -#define GL_QUERY 0x82E3
1.1165 -/* PROGRAM_PIPELINE only in GL */
1.1166 -#define GL_SAMPLER 0x82E6
1.1167 -/* DISPLAY_LIST only in GL */
1.1168 -#define GL_MAX_LABEL_LENGTH 0x82E8
1.1169 -#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
1.1170 -#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
1.1171 -#define GL_DEBUG_LOGGED_MESSAGES 0x9145
1.1172 -#define GL_DEBUG_SEVERITY_HIGH 0x9146
1.1173 -#define GL_DEBUG_SEVERITY_MEDIUM 0x9147
1.1174 -#define GL_DEBUG_SEVERITY_LOW 0x9148
1.1175 -#define GL_DEBUG_OUTPUT 0x92E0
1.1176 -#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
1.1177 -#define GL_STACK_OVERFLOW 0x0503
1.1178 -#define GL_STACK_UNDERFLOW 0x0504
1.1179 -#endif
1.1180 -
1.1181 -#ifndef GL_KHR_texture_compression_astc_ldr
1.1182 -#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
1.1183 -#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
1.1184 -#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
1.1185 -#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
1.1186 -#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
1.1187 -#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
1.1188 -#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
1.1189 -#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
1.1190 -#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
1.1191 -#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
1.1192 -#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
1.1193 -#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
1.1194 -#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
1.1195 -#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
1.1196 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
1.1197 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
1.1198 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
1.1199 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
1.1200 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
1.1201 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
1.1202 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
1.1203 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
1.1204 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
1.1205 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
1.1206 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
1.1207 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
1.1208 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
1.1209 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
1.1210 -#endif
1.1211 -
1.1212 -/*------------------------------------------------------------------------*
1.1213 - * AMD extension tokens
1.1214 - *------------------------------------------------------------------------*/
1.1215 -
1.1216 -/* GL_AMD_compressed_3DC_texture */
1.1217 -#ifndef GL_AMD_compressed_3DC_texture
1.1218 -#define GL_3DC_X_AMD 0x87F9
1.1219 -#define GL_3DC_XY_AMD 0x87FA
1.1220 -#endif
1.1221 -
1.1222 -/* GL_AMD_compressed_ATC_texture */
1.1223 -#ifndef GL_AMD_compressed_ATC_texture
1.1224 -#define GL_ATC_RGB_AMD 0x8C92
1.1225 -#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
1.1226 -#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
1.1227 -#endif
1.1228 -
1.1229 -/* GL_AMD_performance_monitor */
1.1230 -#ifndef GL_AMD_performance_monitor
1.1231 -#define GL_COUNTER_TYPE_AMD 0x8BC0
1.1232 -#define GL_COUNTER_RANGE_AMD 0x8BC1
1.1233 -#define GL_UNSIGNED_INT64_AMD 0x8BC2
1.1234 -#define GL_PERCENTAGE_AMD 0x8BC3
1.1235 -#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
1.1236 -#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
1.1237 -#define GL_PERFMON_RESULT_AMD 0x8BC6
1.1238 -#endif
1.1239 -
1.1240 -/* GL_AMD_program_binary_Z400 */
1.1241 -#ifndef GL_AMD_program_binary_Z400
1.1242 -#define GL_Z400_BINARY_AMD 0x8740
1.1243 -#endif
1.1244 -
1.1245 -/*------------------------------------------------------------------------*
1.1246 - * ANGLE extension tokens
1.1247 - *------------------------------------------------------------------------*/
1.1248 -
1.1249 -/* GL_ANGLE_framebuffer_blit */
1.1250 -#ifndef GL_ANGLE_framebuffer_blit
1.1251 -#define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
1.1252 -#define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
1.1253 -#define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
1.1254 -#define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
1.1255 -#endif
1.1256 -
1.1257 -/* GL_ANGLE_framebuffer_multisample */
1.1258 -#ifndef GL_ANGLE_framebuffer_multisample
1.1259 -#define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
1.1260 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
1.1261 -#define GL_MAX_SAMPLES_ANGLE 0x8D57
1.1262 -#endif
1.1263 -
1.1264 -/* GL_ANGLE_instanced_arrays */
1.1265 -#ifndef GL_ANGLE_instanced_arrays
1.1266 -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
1.1267 -#endif
1.1268 -
1.1269 -/* GL_ANGLE_pack_reverse_row_order */
1.1270 -#ifndef GL_ANGLE_pack_reverse_row_order
1.1271 -#define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
1.1272 -#endif
1.1273 -
1.1274 -/* GL_ANGLE_texture_compression_dxt3 */
1.1275 -#ifndef GL_ANGLE_texture_compression_dxt3
1.1276 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
1.1277 -#endif
1.1278 -
1.1279 -/* GL_ANGLE_texture_compression_dxt5 */
1.1280 -#ifndef GL_ANGLE_texture_compression_dxt5
1.1281 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
1.1282 -#endif
1.1283 -
1.1284 -/* GL_ANGLE_texture_usage */
1.1285 -#ifndef GL_ANGLE_texture_usage
1.1286 -#define GL_TEXTURE_USAGE_ANGLE 0x93A2
1.1287 -#define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
1.1288 -#endif
1.1289 -
1.1290 -/* GL_ANGLE_translated_shader_source */
1.1291 -#ifndef GL_ANGLE_translated_shader_source
1.1292 -#define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
1.1293 -#endif
1.1294 -
1.1295 -/*------------------------------------------------------------------------*
1.1296 - * APPLE extension tokens
1.1297 - *------------------------------------------------------------------------*/
1.1298 -
1.1299 -/* GL_APPLE_copy_texture_levels */
1.1300 -/* No new tokens introduced by this extension. */
1.1301 -
1.1302 -/* GL_APPLE_framebuffer_multisample */
1.1303 -#ifndef GL_APPLE_framebuffer_multisample
1.1304 -#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
1.1305 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
1.1306 -#define GL_MAX_SAMPLES_APPLE 0x8D57
1.1307 -#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
1.1308 -#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
1.1309 -#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
1.1310 -#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
1.1311 -#endif
1.1312 -
1.1313 -/* GL_APPLE_rgb_422 */
1.1314 -#ifndef GL_APPLE_rgb_422
1.1315 -#define GL_RGB_422_APPLE 0x8A1F
1.1316 -#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
1.1317 -#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
1.1318 -#endif
1.1319 -
1.1320 -/* GL_APPLE_sync */
1.1321 -#ifndef GL_APPLE_sync
1.1322 -
1.1323 -#ifndef __gl3_h_
1.1324 -/* These types are defined with reference to <inttypes.h>
1.1325 - * in the Apple extension spec, but here we use the Khronos
1.1326 - * portable types in khrplatform.h, and assume those types
1.1327 - * are always defined.
1.1328 - * If any other extensions using these types are defined,
1.1329 - * the typedefs must move out of this block and be shared.
1.1330 - */
1.1331 -typedef khronos_int64_t GLint64;
1.1332 -typedef khronos_uint64_t GLuint64;
1.1333 -typedef struct __GLsync *GLsync;
1.1334 -#endif
1.1335 -
1.1336 -#define GL_SYNC_OBJECT_APPLE 0x8A53
1.1337 -#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
1.1338 -#define GL_OBJECT_TYPE_APPLE 0x9112
1.1339 -#define GL_SYNC_CONDITION_APPLE 0x9113
1.1340 -#define GL_SYNC_STATUS_APPLE 0x9114
1.1341 -#define GL_SYNC_FLAGS_APPLE 0x9115
1.1342 -#define GL_SYNC_FENCE_APPLE 0x9116
1.1343 -#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
1.1344 -#define GL_UNSIGNALED_APPLE 0x9118
1.1345 -#define GL_SIGNALED_APPLE 0x9119
1.1346 -#define GL_ALREADY_SIGNALED_APPLE 0x911A
1.1347 -#define GL_TIMEOUT_EXPIRED_APPLE 0x911B
1.1348 -#define GL_CONDITION_SATISFIED_APPLE 0x911C
1.1349 -#define GL_WAIT_FAILED_APPLE 0x911D
1.1350 -#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
1.1351 -#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
1.1352 -#endif
1.1353 -
1.1354 -/* GL_APPLE_texture_format_BGRA8888 */
1.1355 -#ifndef GL_APPLE_texture_format_BGRA8888
1.1356 -#define GL_BGRA_EXT 0x80E1
1.1357 -#endif
1.1358 -
1.1359 -/* GL_APPLE_texture_max_level */
1.1360 -#ifndef GL_APPLE_texture_max_level
1.1361 -#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
1.1362 -#endif
1.1363 -
1.1364 -/*------------------------------------------------------------------------*
1.1365 - * ARM extension tokens
1.1366 - *------------------------------------------------------------------------*/
1.1367 -
1.1368 -/* GL_ARM_mali_program_binary */
1.1369 -#ifndef GL_ARM_mali_program_binary
1.1370 -#define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
1.1371 -#endif
1.1372 -
1.1373 -/* GL_ARM_mali_shader_binary */
1.1374 -#ifndef GL_ARM_mali_shader_binary
1.1375 -#define GL_MALI_SHADER_BINARY_ARM 0x8F60
1.1376 -#endif
1.1377 -
1.1378 -/* GL_ARM_rgba8 */
1.1379 -/* No new tokens introduced by this extension. */
1.1380 -
1.1381 -/*------------------------------------------------------------------------*
1.1382 - * EXT extension tokens
1.1383 - *------------------------------------------------------------------------*/
1.1384 -
1.1385 -/* GL_EXT_blend_minmax */
1.1386 -#ifndef GL_EXT_blend_minmax
1.1387 -#define GL_MIN_EXT 0x8007
1.1388 -#define GL_MAX_EXT 0x8008
1.1389 -#endif
1.1390 -
1.1391 -/* GL_EXT_color_buffer_half_float */
1.1392 -#ifndef GL_EXT_color_buffer_half_float
1.1393 -#define GL_RGBA16F_EXT 0x881A
1.1394 -#define GL_RGB16F_EXT 0x881B
1.1395 -#define GL_RG16F_EXT 0x822F
1.1396 -#define GL_R16F_EXT 0x822D
1.1397 -#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
1.1398 -#define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
1.1399 -#endif
1.1400 -
1.1401 -/* GL_EXT_debug_label */
1.1402 -#ifndef GL_EXT_debug_label
1.1403 -#define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
1.1404 -#define GL_PROGRAM_OBJECT_EXT 0x8B40
1.1405 -#define GL_SHADER_OBJECT_EXT 0x8B48
1.1406 -#define GL_BUFFER_OBJECT_EXT 0x9151
1.1407 -#define GL_QUERY_OBJECT_EXT 0x9153
1.1408 -#define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
1.1409 -#endif
1.1410 -
1.1411 -/* GL_EXT_debug_marker */
1.1412 -/* No new tokens introduced by this extension. */
1.1413 -
1.1414 -/* GL_EXT_discard_framebuffer */
1.1415 -#ifndef GL_EXT_discard_framebuffer
1.1416 -#define GL_COLOR_EXT 0x1800
1.1417 -#define GL_DEPTH_EXT 0x1801
1.1418 -#define GL_STENCIL_EXT 0x1802
1.1419 -#endif
1.1420 -
1.1421 -/* GL_EXT_map_buffer_range */
1.1422 -#ifndef GL_EXT_map_buffer_range
1.1423 -#define GL_MAP_READ_BIT_EXT 0x0001
1.1424 -#define GL_MAP_WRITE_BIT_EXT 0x0002
1.1425 -#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
1.1426 -#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
1.1427 -#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
1.1428 -#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
1.1429 -#endif
1.1430 -
1.1431 -/* GL_EXT_multisampled_render_to_texture */
1.1432 -#ifndef GL_EXT_multisampled_render_to_texture
1.1433 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
1.1434 -/* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
1.1435 -#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
1.1436 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
1.1437 -#define GL_MAX_SAMPLES_EXT 0x8D57
1.1438 -#endif
1.1439 -
1.1440 -/* GL_EXT_multiview_draw_buffers */
1.1441 -#ifndef GL_EXT_multiview_draw_buffers
1.1442 -#define GL_COLOR_ATTACHMENT_EXT 0x90F0
1.1443 -#define GL_MULTIVIEW_EXT 0x90F1
1.1444 -#define GL_DRAW_BUFFER_EXT 0x0C01
1.1445 -#define GL_READ_BUFFER_EXT 0x0C02
1.1446 -#define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
1.1447 -#endif
1.1448 -
1.1449 -/* GL_EXT_multi_draw_arrays */
1.1450 -/* No new tokens introduced by this extension. */
1.1451 -
1.1452 -/* GL_EXT_occlusion_query_boolean */
1.1453 -#ifndef GL_EXT_occlusion_query_boolean
1.1454 -#define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
1.1455 -#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
1.1456 -#define GL_CURRENT_QUERY_EXT 0x8865
1.1457 -#define GL_QUERY_RESULT_EXT 0x8866
1.1458 -#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
1.1459 -#endif
1.1460 -
1.1461 -/* GL_EXT_read_format_bgra */
1.1462 -#ifndef GL_EXT_read_format_bgra
1.1463 -#define GL_BGRA_EXT 0x80E1
1.1464 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
1.1465 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
1.1466 -#endif
1.1467 -
1.1468 -/* GL_EXT_robustness */
1.1469 -#ifndef GL_EXT_robustness
1.1470 -/* reuse GL_NO_ERROR */
1.1471 -#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
1.1472 -#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
1.1473 -#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
1.1474 -#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
1.1475 -#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
1.1476 -#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
1.1477 -#define GL_NO_RESET_NOTIFICATION_EXT 0x8261
1.1478 -#endif
1.1479 -
1.1480 -/* GL_EXT_separate_shader_objects */
1.1481 -#ifndef GL_EXT_separate_shader_objects
1.1482 -#define GL_VERTEX_SHADER_BIT_EXT 0x00000001
1.1483 -#define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
1.1484 -#define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
1.1485 -#define GL_PROGRAM_SEPARABLE_EXT 0x8258
1.1486 -#define GL_ACTIVE_PROGRAM_EXT 0x8259
1.1487 -#define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
1.1488 -#endif
1.1489 -
1.1490 -/* GL_EXT_shader_framebuffer_fetch */
1.1491 -#ifndef GL_EXT_shader_framebuffer_fetch
1.1492 -#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
1.1493 -#endif
1.1494 -
1.1495 -/* GL_EXT_shader_texture_lod */
1.1496 -/* No new tokens introduced by this extension. */
1.1497 -
1.1498 -/* GL_EXT_shadow_samplers */
1.1499 -#ifndef GL_EXT_shadow_samplers
1.1500 -#define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
1.1501 -#define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
1.1502 -#define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
1.1503 -#define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
1.1504 -#endif
1.1505 -
1.1506 -/* GL_EXT_sRGB */
1.1507 -#ifndef GL_EXT_sRGB
1.1508 -#define GL_SRGB_EXT 0x8C40
1.1509 -#define GL_SRGB_ALPHA_EXT 0x8C42
1.1510 -#define GL_SRGB8_ALPHA8_EXT 0x8C43
1.1511 -#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
1.1512 -#endif
1.1513 -
1.1514 -/* GL_EXT_texture_compression_dxt1 */
1.1515 -#ifndef GL_EXT_texture_compression_dxt1
1.1516 -#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
1.1517 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
1.1518 -#endif
1.1519 -
1.1520 -/* GL_EXT_texture_filter_anisotropic */
1.1521 -#ifndef GL_EXT_texture_filter_anisotropic
1.1522 -#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
1.1523 -#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
1.1524 -#endif
1.1525 -
1.1526 -/* GL_EXT_texture_format_BGRA8888 */
1.1527 -#ifndef GL_EXT_texture_format_BGRA8888
1.1528 -#define GL_BGRA_EXT 0x80E1
1.1529 -#endif
1.1530 -
1.1531 -/* GL_EXT_texture_rg */
1.1532 -#ifndef GL_EXT_texture_rg
1.1533 -#define GL_RED_EXT 0x1903
1.1534 -#define GL_RG_EXT 0x8227
1.1535 -#define GL_R8_EXT 0x8229
1.1536 -#define GL_RG8_EXT 0x822B
1.1537 -#endif
1.1538 -
1.1539 -/* GL_EXT_texture_storage */
1.1540 -#ifndef GL_EXT_texture_storage
1.1541 -#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
1.1542 -#define GL_ALPHA8_EXT 0x803C
1.1543 -#define GL_LUMINANCE8_EXT 0x8040
1.1544 -#define GL_LUMINANCE8_ALPHA8_EXT 0x8045
1.1545 -#define GL_RGBA32F_EXT 0x8814
1.1546 -#define GL_RGB32F_EXT 0x8815
1.1547 -#define GL_ALPHA32F_EXT 0x8816
1.1548 -#define GL_LUMINANCE32F_EXT 0x8818
1.1549 -#define GL_LUMINANCE_ALPHA32F_EXT 0x8819
1.1550 -/* reuse GL_RGBA16F_EXT */
1.1551 -/* reuse GL_RGB16F_EXT */
1.1552 -#define GL_ALPHA16F_EXT 0x881C
1.1553 -#define GL_LUMINANCE16F_EXT 0x881E
1.1554 -#define GL_LUMINANCE_ALPHA16F_EXT 0x881F
1.1555 -#define GL_RGB10_A2_EXT 0x8059
1.1556 -#define GL_RGB10_EXT 0x8052
1.1557 -#define GL_BGRA8_EXT 0x93A1
1.1558 -#define GL_R8_EXT 0x8229
1.1559 -#define GL_RG8_EXT 0x822B
1.1560 -#define GL_R32F_EXT 0x822E
1.1561 -#define GL_RG32F_EXT 0x8230
1.1562 -#define GL_R16F_EXT 0x822D
1.1563 -#define GL_RG16F_EXT 0x822F
1.1564 -#endif
1.1565 -
1.1566 -/* GL_EXT_texture_type_2_10_10_10_REV */
1.1567 -#ifndef GL_EXT_texture_type_2_10_10_10_REV
1.1568 -#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
1.1569 -#endif
1.1570 -
1.1571 -/* GL_EXT_unpack_subimage */
1.1572 -#ifndef GL_EXT_unpack_subimage
1.1573 -#define GL_UNPACK_ROW_LENGTH 0x0CF2
1.1574 -#define GL_UNPACK_SKIP_ROWS 0x0CF3
1.1575 -#define GL_UNPACK_SKIP_PIXELS 0x0CF4
1.1576 -#endif
1.1577 -
1.1578 -/*------------------------------------------------------------------------*
1.1579 - * DMP extension tokens
1.1580 - *------------------------------------------------------------------------*/
1.1581 -
1.1582 -/* GL_DMP_shader_binary */
1.1583 -#ifndef GL_DMP_shader_binary
1.1584 -#define GL_SHADER_BINARY_DMP 0x9250
1.1585 -#endif
1.1586 -
1.1587 -/*------------------------------------------------------------------------*
1.1588 - * FJ extension tokens
1.1589 - *------------------------------------------------------------------------*/
1.1590 -
1.1591 -/* GL_FJ_shader_binary_GCCSO */
1.1592 -#ifndef GL_FJ_shader_binary_GCCSO
1.1593 -#define GCCSO_SHADER_BINARY_FJ 0x9260
1.1594 -#endif
1.1595 -
1.1596 -/*------------------------------------------------------------------------*
1.1597 - * IMG extension tokens
1.1598 - *------------------------------------------------------------------------*/
1.1599 -
1.1600 -/* GL_IMG_program_binary */
1.1601 -#ifndef GL_IMG_program_binary
1.1602 -#define GL_SGX_PROGRAM_BINARY_IMG 0x9130
1.1603 -#endif
1.1604 -
1.1605 -/* GL_IMG_read_format */
1.1606 -#ifndef GL_IMG_read_format
1.1607 -#define GL_BGRA_IMG 0x80E1
1.1608 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
1.1609 -#endif
1.1610 -
1.1611 -/* GL_IMG_shader_binary */
1.1612 -#ifndef GL_IMG_shader_binary
1.1613 -#define GL_SGX_BINARY_IMG 0x8C0A
1.1614 -#endif
1.1615 -
1.1616 -/* GL_IMG_texture_compression_pvrtc */
1.1617 -#ifndef GL_IMG_texture_compression_pvrtc
1.1618 -#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
1.1619 -#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
1.1620 -#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
1.1621 -#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
1.1622 -#endif
1.1623 -
1.1624 -/* GL_IMG_multisampled_render_to_texture */
1.1625 -#ifndef GL_IMG_multisampled_render_to_texture
1.1626 -#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
1.1627 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
1.1628 -#define GL_MAX_SAMPLES_IMG 0x9135
1.1629 -#define GL_TEXTURE_SAMPLES_IMG 0x9136
1.1630 -#endif
1.1631 -
1.1632 -/*------------------------------------------------------------------------*
1.1633 - * NV extension tokens
1.1634 - *------------------------------------------------------------------------*/
1.1635 -
1.1636 -/* GL_NV_coverage_sample */
1.1637 -#ifndef GL_NV_coverage_sample
1.1638 -#define GL_COVERAGE_COMPONENT_NV 0x8ED0
1.1639 -#define GL_COVERAGE_COMPONENT4_NV 0x8ED1
1.1640 -#define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
1.1641 -#define GL_COVERAGE_BUFFERS_NV 0x8ED3
1.1642 -#define GL_COVERAGE_SAMPLES_NV 0x8ED4
1.1643 -#define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
1.1644 -#define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
1.1645 -#define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
1.1646 -#define GL_COVERAGE_BUFFER_BIT_NV 0x8000
1.1647 -#endif
1.1648 -
1.1649 -/* GL_NV_depth_nonlinear */
1.1650 -#ifndef GL_NV_depth_nonlinear
1.1651 -#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
1.1652 -#endif
1.1653 -
1.1654 -/* GL_NV_draw_buffers */
1.1655 -#ifndef GL_NV_draw_buffers
1.1656 -#define GL_MAX_DRAW_BUFFERS_NV 0x8824
1.1657 -#define GL_DRAW_BUFFER0_NV 0x8825
1.1658 -#define GL_DRAW_BUFFER1_NV 0x8826
1.1659 -#define GL_DRAW_BUFFER2_NV 0x8827
1.1660 -#define GL_DRAW_BUFFER3_NV 0x8828
1.1661 -#define GL_DRAW_BUFFER4_NV 0x8829
1.1662 -#define GL_DRAW_BUFFER5_NV 0x882A
1.1663 -#define GL_DRAW_BUFFER6_NV 0x882B
1.1664 -#define GL_DRAW_BUFFER7_NV 0x882C
1.1665 -#define GL_DRAW_BUFFER8_NV 0x882D
1.1666 -#define GL_DRAW_BUFFER9_NV 0x882E
1.1667 -#define GL_DRAW_BUFFER10_NV 0x882F
1.1668 -#define GL_DRAW_BUFFER11_NV 0x8830
1.1669 -#define GL_DRAW_BUFFER12_NV 0x8831
1.1670 -#define GL_DRAW_BUFFER13_NV 0x8832
1.1671 -#define GL_DRAW_BUFFER14_NV 0x8833
1.1672 -#define GL_DRAW_BUFFER15_NV 0x8834
1.1673 -#define GL_COLOR_ATTACHMENT0_NV 0x8CE0
1.1674 -#define GL_COLOR_ATTACHMENT1_NV 0x8CE1
1.1675 -#define GL_COLOR_ATTACHMENT2_NV 0x8CE2
1.1676 -#define GL_COLOR_ATTACHMENT3_NV 0x8CE3
1.1677 -#define GL_COLOR_ATTACHMENT4_NV 0x8CE4
1.1678 -#define GL_COLOR_ATTACHMENT5_NV 0x8CE5
1.1679 -#define GL_COLOR_ATTACHMENT6_NV 0x8CE6
1.1680 -#define GL_COLOR_ATTACHMENT7_NV 0x8CE7
1.1681 -#define GL_COLOR_ATTACHMENT8_NV 0x8CE8
1.1682 -#define GL_COLOR_ATTACHMENT9_NV 0x8CE9
1.1683 -#define GL_COLOR_ATTACHMENT10_NV 0x8CEA
1.1684 -#define GL_COLOR_ATTACHMENT11_NV 0x8CEB
1.1685 -#define GL_COLOR_ATTACHMENT12_NV 0x8CEC
1.1686 -#define GL_COLOR_ATTACHMENT13_NV 0x8CED
1.1687 -#define GL_COLOR_ATTACHMENT14_NV 0x8CEE
1.1688 -#define GL_COLOR_ATTACHMENT15_NV 0x8CEF
1.1689 -#endif
1.1690 -
1.1691 -/* GL_NV_fbo_color_attachments */
1.1692 -#ifndef GL_NV_fbo_color_attachments
1.1693 -#define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
1.1694 -/* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
1.1695 -#endif
1.1696 -
1.1697 -/* GL_NV_fence */
1.1698 -#ifndef GL_NV_fence
1.1699 -#define GL_ALL_COMPLETED_NV 0x84F2
1.1700 -#define GL_FENCE_STATUS_NV 0x84F3
1.1701 -#define GL_FENCE_CONDITION_NV 0x84F4
1.1702 -#endif
1.1703 -
1.1704 -/* GL_NV_read_buffer */
1.1705 -#ifndef GL_NV_read_buffer
1.1706 -#define GL_READ_BUFFER_NV 0x0C02
1.1707 -#endif
1.1708 -
1.1709 -/* GL_NV_read_buffer_front */
1.1710 -/* No new tokens introduced by this extension. */
1.1711 -
1.1712 -/* GL_NV_read_depth */
1.1713 -/* No new tokens introduced by this extension. */
1.1714 -
1.1715 -/* GL_NV_read_depth_stencil */
1.1716 -/* No new tokens introduced by this extension. */
1.1717 -
1.1718 -/* GL_NV_read_stencil */
1.1719 -/* No new tokens introduced by this extension. */
1.1720 -
1.1721 -/* GL_NV_texture_compression_s3tc_update */
1.1722 -/* No new tokens introduced by this extension. */
1.1723 -
1.1724 -/* GL_NV_texture_npot_2D_mipmap */
1.1725 -/* No new tokens introduced by this extension. */
1.1726 -
1.1727 -/*------------------------------------------------------------------------*
1.1728 - * QCOM extension tokens
1.1729 - *------------------------------------------------------------------------*/
1.1730 -
1.1731 -/* GL_QCOM_alpha_test */
1.1732 -#ifndef GL_QCOM_alpha_test
1.1733 -#define GL_ALPHA_TEST_QCOM 0x0BC0
1.1734 -#define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
1.1735 -#define GL_ALPHA_TEST_REF_QCOM 0x0BC2
1.1736 -#endif
1.1737 -
1.1738 -/* GL_QCOM_binning_control */
1.1739 -#ifndef GL_QCOM_binning_control
1.1740 -#define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
1.1741 -#define GL_CPU_OPTIMIZED_QCOM 0x8FB1
1.1742 -#define GL_GPU_OPTIMIZED_QCOM 0x8FB2
1.1743 -#define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
1.1744 -#endif
1.1745 -
1.1746 -/* GL_QCOM_driver_control */
1.1747 -/* No new tokens introduced by this extension. */
1.1748 -
1.1749 -/* GL_QCOM_extended_get */
1.1750 -#ifndef GL_QCOM_extended_get
1.1751 -#define GL_TEXTURE_WIDTH_QCOM 0x8BD2
1.1752 -#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
1.1753 -#define GL_TEXTURE_DEPTH_QCOM 0x8BD4
1.1754 -#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
1.1755 -#define GL_TEXTURE_FORMAT_QCOM 0x8BD6
1.1756 -#define GL_TEXTURE_TYPE_QCOM 0x8BD7
1.1757 -#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
1.1758 -#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
1.1759 -#define GL_TEXTURE_TARGET_QCOM 0x8BDA
1.1760 -#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
1.1761 -#define GL_STATE_RESTORE 0x8BDC
1.1762 -#endif
1.1763 -
1.1764 -/* GL_QCOM_extended_get2 */
1.1765 -/* No new tokens introduced by this extension. */
1.1766 -
1.1767 -/* GL_QCOM_perfmon_global_mode */
1.1768 -#ifndef GL_QCOM_perfmon_global_mode
1.1769 -#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
1.1770 -#endif
1.1771 -
1.1772 -/* GL_QCOM_writeonly_rendering */
1.1773 -#ifndef GL_QCOM_writeonly_rendering
1.1774 -#define GL_WRITEONLY_RENDERING_QCOM 0x8823
1.1775 -#endif
1.1776 -
1.1777 -/* GL_QCOM_tiled_rendering */
1.1778 -#ifndef GL_QCOM_tiled_rendering
1.1779 -#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
1.1780 -#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
1.1781 -#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
1.1782 -#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
1.1783 -#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
1.1784 -#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
1.1785 -#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
1.1786 -#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
1.1787 -#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
1.1788 -#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
1.1789 -#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
1.1790 -#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
1.1791 -#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
1.1792 -#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
1.1793 -#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
1.1794 -#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
1.1795 -#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
1.1796 -#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
1.1797 -#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
1.1798 -#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
1.1799 -#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
1.1800 -#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
1.1801 -#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
1.1802 -#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
1.1803 -#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
1.1804 -#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
1.1805 -#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
1.1806 -#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
1.1807 -#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
1.1808 -#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
1.1809 -#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
1.1810 -#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
1.1811 -#endif
1.1812 -
1.1813 -/*------------------------------------------------------------------------*
1.1814 - * VIV extension tokens
1.1815 - *------------------------------------------------------------------------*/
1.1816 -
1.1817 -/* GL_VIV_shader_binary */
1.1818 -#ifndef GL_VIV_shader_binary
1.1819 -#define GL_SHADER_BINARY_VIV 0x8FC4
1.1820 -#endif
1.1821 -
1.1822 -/*------------------------------------------------------------------------*
1.1823 - * End of extension tokens, start of corresponding extension functions
1.1824 - *------------------------------------------------------------------------*/
1.1825 -
1.1826 -/*------------------------------------------------------------------------*
1.1827 - * OES extension functions
1.1828 - *------------------------------------------------------------------------*/
1.1829 -
1.1830 -/* GL_OES_compressed_ETC1_RGB8_texture */
1.1831 -#ifndef GL_OES_compressed_ETC1_RGB8_texture
1.1832 -#define GL_OES_compressed_ETC1_RGB8_texture 1
1.1833 -#endif
1.1834 -
1.1835 -/* GL_OES_compressed_paletted_texture */
1.1836 -#ifndef GL_OES_compressed_paletted_texture
1.1837 -#define GL_OES_compressed_paletted_texture 1
1.1838 -#endif
1.1839 -
1.1840 -/* GL_OES_depth24 */
1.1841 -#ifndef GL_OES_depth24
1.1842 -#define GL_OES_depth24 1
1.1843 -#endif
1.1844 -
1.1845 -/* GL_OES_depth32 */
1.1846 -#ifndef GL_OES_depth32
1.1847 -#define GL_OES_depth32 1
1.1848 -#endif
1.1849 -
1.1850 -/* GL_OES_depth_texture */
1.1851 -#ifndef GL_OES_depth_texture
1.1852 -#define GL_OES_depth_texture 1
1.1853 -#endif
1.1854 -
1.1855 -/* GL_OES_EGL_image */
1.1856 -#ifndef GL_OES_EGL_image
1.1857 -#define GL_OES_EGL_image 1
1.1858 -#ifdef GL_GLEXT_PROTOTYPES
1.1859 -GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
1.1860 -GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
1.1861 -#endif
1.1862 -typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
1.1863 -typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
1.1864 -#endif
1.1865 -
1.1866 -/* GL_OES_EGL_image_external */
1.1867 -#ifndef GL_OES_EGL_image_external
1.1868 -#define GL_OES_EGL_image_external 1
1.1869 -/* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
1.1870 -#endif
1.1871 -
1.1872 -/* GL_OES_element_index_uint */
1.1873 -#ifndef GL_OES_element_index_uint
1.1874 -#define GL_OES_element_index_uint 1
1.1875 -#endif
1.1876 -
1.1877 -/* GL_OES_fbo_render_mipmap */
1.1878 -#ifndef GL_OES_fbo_render_mipmap
1.1879 -#define GL_OES_fbo_render_mipmap 1
1.1880 -#endif
1.1881 -
1.1882 -/* GL_OES_fragment_precision_high */
1.1883 -#ifndef GL_OES_fragment_precision_high
1.1884 -#define GL_OES_fragment_precision_high 1
1.1885 -#endif
1.1886 -
1.1887 -/* GL_OES_get_program_binary */
1.1888 -#ifndef GL_OES_get_program_binary
1.1889 -#define GL_OES_get_program_binary 1
1.1890 -#ifdef GL_GLEXT_PROTOTYPES
1.1891 -GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
1.1892 -GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
1.1893 -#endif
1.1894 -typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
1.1895 -typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
1.1896 -#endif
1.1897 -
1.1898 -/* GL_OES_mapbuffer */
1.1899 -#ifndef GL_OES_mapbuffer
1.1900 -#define GL_OES_mapbuffer 1
1.1901 -#ifdef GL_GLEXT_PROTOTYPES
1.1902 -GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
1.1903 -GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
1.1904 -GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params);
1.1905 -#endif
1.1906 -typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
1.1907 -typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
1.1908 -typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
1.1909 -#endif
1.1910 -
1.1911 -/* GL_OES_packed_depth_stencil */
1.1912 -#ifndef GL_OES_packed_depth_stencil
1.1913 -#define GL_OES_packed_depth_stencil 1
1.1914 -#endif
1.1915 -
1.1916 -/* GL_OES_required_internalformat */
1.1917 -#ifndef GL_OES_required_internalformat
1.1918 -#define GL_OES_required_internalformat 1
1.1919 -#endif
1.1920 -
1.1921 -/* GL_OES_rgb8_rgba8 */
1.1922 -#ifndef GL_OES_rgb8_rgba8
1.1923 -#define GL_OES_rgb8_rgba8 1
1.1924 -#endif
1.1925 -
1.1926 -/* GL_OES_standard_derivatives */
1.1927 -#ifndef GL_OES_standard_derivatives
1.1928 -#define GL_OES_standard_derivatives 1
1.1929 -#endif
1.1930 -
1.1931 -/* GL_OES_stencil1 */
1.1932 -#ifndef GL_OES_stencil1
1.1933 -#define GL_OES_stencil1 1
1.1934 -#endif
1.1935 -
1.1936 -/* GL_OES_stencil4 */
1.1937 -#ifndef GL_OES_stencil4
1.1938 -#define GL_OES_stencil4 1
1.1939 -#endif
1.1940 -
1.1941 -#ifndef GL_OES_surfaceless_context
1.1942 -#define GL_OES_surfaceless_context 1
1.1943 -#endif
1.1944 -
1.1945 -/* GL_OES_texture_3D */
1.1946 -#ifndef GL_OES_texture_3D
1.1947 -#define GL_OES_texture_3D 1
1.1948 -#ifdef GL_GLEXT_PROTOTYPES
1.1949 -GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
1.1950 -GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
1.1951 -GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1.1952 -GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
1.1953 -GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
1.1954 -GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
1.1955 -#endif
1.1956 -typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
1.1957 -typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
1.1958 -typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1.1959 -typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
1.1960 -typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
1.1961 -typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
1.1962 -#endif
1.1963 -
1.1964 -/* GL_OES_texture_float */
1.1965 -#ifndef GL_OES_texture_float
1.1966 -#define GL_OES_texture_float 1
1.1967 -#endif
1.1968 -
1.1969 -/* GL_OES_texture_float_linear */
1.1970 -#ifndef GL_OES_texture_float_linear
1.1971 -#define GL_OES_texture_float_linear 1
1.1972 -#endif
1.1973 -
1.1974 -/* GL_OES_texture_half_float */
1.1975 -#ifndef GL_OES_texture_half_float
1.1976 -#define GL_OES_texture_half_float 1
1.1977 -#endif
1.1978 -
1.1979 -/* GL_OES_texture_half_float_linear */
1.1980 -#ifndef GL_OES_texture_half_float_linear
1.1981 -#define GL_OES_texture_half_float_linear 1
1.1982 -#endif
1.1983 -
1.1984 -/* GL_OES_texture_npot */
1.1985 -#ifndef GL_OES_texture_npot
1.1986 -#define GL_OES_texture_npot 1
1.1987 -#endif
1.1988 -
1.1989 -/* GL_OES_vertex_array_object */
1.1990 -#ifndef GL_OES_vertex_array_object
1.1991 -#define GL_OES_vertex_array_object 1
1.1992 -#ifdef GL_GLEXT_PROTOTYPES
1.1993 -GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
1.1994 -GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
1.1995 -GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
1.1996 -GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
1.1997 -#endif
1.1998 -typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
1.1999 -typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
1.2000 -typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
1.2001 -typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
1.2002 -#endif
1.2003 -
1.2004 -/* GL_OES_vertex_half_float */
1.2005 -#ifndef GL_OES_vertex_half_float
1.2006 -#define GL_OES_vertex_half_float 1
1.2007 -#endif
1.2008 -
1.2009 -/* GL_OES_vertex_type_10_10_10_2 */
1.2010 -#ifndef GL_OES_vertex_type_10_10_10_2
1.2011 -#define GL_OES_vertex_type_10_10_10_2 1
1.2012 -#endif
1.2013 -
1.2014 -/*------------------------------------------------------------------------*
1.2015 - * KHR extension functions
1.2016 - *------------------------------------------------------------------------*/
1.2017 -
1.2018 -#ifndef GL_KHR_debug
1.2019 -#define GL_KHR_debug 1
1.2020 -#ifdef GL_GLEXT_PROTOTYPES
1.2021 -GL_APICALL void GL_APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
1.2022 -GL_APICALL void GL_APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
1.2023 -GL_APICALL void GL_APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
1.2024 -GL_APICALL GLuint GL_APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
1.2025 -GL_APICALL void GL_APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
1.2026 -GL_APICALL void GL_APIENTRY glPopDebugGroup (void);
1.2027 -GL_APICALL void GL_APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
1.2028 -GL_APICALL void GL_APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2029 -GL_APICALL void GL_APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
1.2030 -GL_APICALL void GL_APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2031 -GL_APICALL void GL_APIENTRY glGetPointerv (GLenum pname, void **params);
1.2032 -#endif
1.2033 -typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
1.2034 -typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
1.2035 -typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
1.2036 -typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
1.2037 -typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
1.2038 -typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
1.2039 -typedef void (GL_APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
1.2040 -typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2041 -typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
1.2042 -typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2043 -typedef void (GL_APIENTRYP PFNGLGETPOINTERVPROC) (GLenum pname, void **params);
1.2044 -#endif
1.2045 -
1.2046 -#ifndef GL_KHR_texture_compression_astc_ldr
1.2047 -#define GL_KHR_texture_compression_astc_ldr 1
1.2048 -#endif
1.2049 -
1.2050 -
1.2051 -/*------------------------------------------------------------------------*
1.2052 - * AMD extension functions
1.2053 - *------------------------------------------------------------------------*/
1.2054 -
1.2055 -/* GL_AMD_compressed_3DC_texture */
1.2056 -#ifndef GL_AMD_compressed_3DC_texture
1.2057 -#define GL_AMD_compressed_3DC_texture 1
1.2058 -#endif
1.2059 -
1.2060 -/* GL_AMD_compressed_ATC_texture */
1.2061 -#ifndef GL_AMD_compressed_ATC_texture
1.2062 -#define GL_AMD_compressed_ATC_texture 1
1.2063 -#endif
1.2064 -
1.2065 -/* AMD_performance_monitor */
1.2066 -#ifndef GL_AMD_performance_monitor
1.2067 -#define GL_AMD_performance_monitor 1
1.2068 -#ifdef GL_GLEXT_PROTOTYPES
1.2069 -GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
1.2070 -GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
1.2071 -GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
1.2072 -GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
1.2073 -GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
1.2074 -GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
1.2075 -GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
1.2076 -GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
1.2077 -GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
1.2078 -GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
1.2079 -GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
1.2080 -#endif
1.2081 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
1.2082 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
1.2083 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
1.2084 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
1.2085 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
1.2086 -typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
1.2087 -typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
1.2088 -typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
1.2089 -typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
1.2090 -typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
1.2091 -typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
1.2092 -#endif
1.2093 -
1.2094 -/* GL_AMD_program_binary_Z400 */
1.2095 -#ifndef GL_AMD_program_binary_Z400
1.2096 -#define GL_AMD_program_binary_Z400 1
1.2097 -#endif
1.2098 -
1.2099 -/*------------------------------------------------------------------------*
1.2100 - * ANGLE extension functions
1.2101 - *------------------------------------------------------------------------*/
1.2102 -
1.2103 -/* GL_ANGLE_framebuffer_blit */
1.2104 -#ifndef GL_ANGLE_framebuffer_blit
1.2105 -#define GL_ANGLE_framebuffer_blit 1
1.2106 -#ifdef GL_GLEXT_PROTOTYPES
1.2107 -GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1.2108 -#endif
1.2109 -typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1.2110 -#endif
1.2111 -
1.2112 -/* GL_ANGLE_framebuffer_multisample */
1.2113 -#ifndef GL_ANGLE_framebuffer_multisample
1.2114 -#define GL_ANGLE_framebuffer_multisample 1
1.2115 -#ifdef GL_GLEXT_PROTOTYPES
1.2116 -GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1.2117 -#endif
1.2118 -typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1.2119 -#endif
1.2120 -
1.2121 -#ifndef GL_ANGLE_instanced_arrays
1.2122 -#ifdef GL_GLEXT_PROTOTYPES
1.2123 -GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1.2124 -GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
1.2125 -GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor);
1.2126 -#endif
1.2127 -typedef void (GL_APIENTRYP PFLGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1.2128 -typedef void (GL_APIENTRYP PFLGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
1.2129 -typedef void (GL_APIENTRYP PFLGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor);
1.2130 -#endif
1.2131 -
1.2132 -/* GL_ANGLE_pack_reverse_row_order */
1.2133 -#ifndef GL_ANGLE_pack_reverse_row_order
1.2134 -#define GL_ANGLE_pack_reverse_row_order 1
1.2135 -#endif
1.2136 -
1.2137 -/* GL_ANGLE_texture_compression_dxt3 */
1.2138 -#ifndef GL_ANGLE_texture_compression_dxt3
1.2139 -#define GL_ANGLE_texture_compression_dxt3 1
1.2140 -#endif
1.2141 -
1.2142 -/* GL_ANGLE_texture_compression_dxt5 */
1.2143 -#ifndef GL_ANGLE_texture_compression_dxt5
1.2144 -#define GL_ANGLE_texture_compression_dxt5 1
1.2145 -#endif
1.2146 -
1.2147 -/* GL_ANGLE_texture_usage */
1.2148 -#ifndef GL_ANGLE_texture_usage
1.2149 -#define GL_ANGLE_texture_usage 1
1.2150 -#endif
1.2151 -
1.2152 -#ifndef GL_ANGLE_translated_shader_source
1.2153 -#define GL_ANGLE_translated_shader_source 1
1.2154 -#ifdef GL_GLEXT_PROTOTYPES
1.2155 -GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
1.2156 -#endif
1.2157 -typedef void (GL_APIENTRYP PFLGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
1.2158 -#endif
1.2159 -
1.2160 -/*------------------------------------------------------------------------*
1.2161 - * APPLE extension functions
1.2162 - *------------------------------------------------------------------------*/
1.2163 -
1.2164 -/* GL_APPLE_copy_texture_levels */
1.2165 -#ifndef GL_APPLE_copy_texture_levels
1.2166 -#define GL_APPLE_copy_texture_levels 1
1.2167 -#ifdef GL_GLEXT_PROTOTYPES
1.2168 -GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
1.2169 -#endif
1.2170 -typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
1.2171 -#endif
1.2172 -
1.2173 -/* GL_APPLE_framebuffer_multisample */
1.2174 -#ifndef GL_APPLE_framebuffer_multisample
1.2175 -#define GL_APPLE_framebuffer_multisample 1
1.2176 -#ifdef GL_GLEXT_PROTOTYPES
1.2177 -GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
1.2178 -GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
1.2179 -#endif /* GL_GLEXT_PROTOTYPES */
1.2180 -typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1.2181 -typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
1.2182 -#endif
1.2183 -
1.2184 -/* GL_APPLE_rgb_422 */
1.2185 -#ifndef GL_APPLE_rgb_422
1.2186 -#define GL_APPLE_rgb_422 1
1.2187 -#endif
1.2188 -
1.2189 -/* GL_APPLE_sync */
1.2190 -#ifndef GL_APPLE_sync
1.2191 -#define GL_APPLE_sync 1
1.2192 -#ifdef GL_GLEXT_PROTOTYPES
1.2193 -GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
1.2194 -GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
1.2195 -GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
1.2196 -GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
1.2197 -GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
1.2198 -GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
1.2199 -GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
1.2200 -#endif
1.2201 -typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
1.2202 -typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
1.2203 -typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
1.2204 -typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
1.2205 -typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
1.2206 -typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
1.2207 -typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
1.2208 -#endif
1.2209 -
1.2210 -/* GL_APPLE_texture_format_BGRA8888 */
1.2211 -#ifndef GL_APPLE_texture_format_BGRA8888
1.2212 -#define GL_APPLE_texture_format_BGRA8888 1
1.2213 -#endif
1.2214 -
1.2215 -/* GL_APPLE_texture_max_level */
1.2216 -#ifndef GL_APPLE_texture_max_level
1.2217 -#define GL_APPLE_texture_max_level 1
1.2218 -#endif
1.2219 -
1.2220 -/*------------------------------------------------------------------------*
1.2221 - * ARM extension functions
1.2222 - *------------------------------------------------------------------------*/
1.2223 -
1.2224 -/* GL_ARM_mali_program_binary */
1.2225 -#ifndef GL_ARM_mali_program_binary
1.2226 -#define GL_ARM_mali_program_binary 1
1.2227 -#endif
1.2228 -
1.2229 -/* GL_ARM_mali_shader_binary */
1.2230 -#ifndef GL_ARM_mali_shader_binary
1.2231 -#define GL_ARM_mali_shader_binary 1
1.2232 -#endif
1.2233 -
1.2234 -/* GL_ARM_rgba8 */
1.2235 -#ifndef GL_ARM_rgba8
1.2236 -#define GL_ARM_rgba8 1
1.2237 -#endif
1.2238 -
1.2239 -/*------------------------------------------------------------------------*
1.2240 - * EXT extension functions
1.2241 - *------------------------------------------------------------------------*/
1.2242 -
1.2243 -/* GL_EXT_blend_minmax */
1.2244 -#ifndef GL_EXT_blend_minmax
1.2245 -#define GL_EXT_blend_minmax 1
1.2246 -#endif
1.2247 -
1.2248 -/* GL_EXT_color_buffer_half_float */
1.2249 -#ifndef GL_EXT_color_buffer_half_float
1.2250 -#define GL_EXT_color_buffer_half_float 1
1.2251 -#endif
1.2252 -
1.2253 -/* GL_EXT_debug_label */
1.2254 -#ifndef GL_EXT_debug_label
1.2255 -#define GL_EXT_debug_label 1
1.2256 -#ifdef GL_GLEXT_PROTOTYPES
1.2257 -GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label);
1.2258 -GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2259 -#endif
1.2260 -typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
1.2261 -typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
1.2262 -#endif
1.2263 -
1.2264 -/* GL_EXT_debug_marker */
1.2265 -#ifndef GL_EXT_debug_marker
1.2266 -#define GL_EXT_debug_marker 1
1.2267 -#ifdef GL_GLEXT_PROTOTYPES
1.2268 -GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
1.2269 -GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
1.2270 -GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void);
1.2271 -#endif
1.2272 -typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
1.2273 -typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
1.2274 -typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
1.2275 -#endif
1.2276 -
1.2277 -/* GL_EXT_discard_framebuffer */
1.2278 -#ifndef GL_EXT_discard_framebuffer
1.2279 -#define GL_EXT_discard_framebuffer 1
1.2280 -#ifdef GL_GLEXT_PROTOTYPES
1.2281 -GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
1.2282 -#endif
1.2283 -typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
1.2284 -#endif
1.2285 -
1.2286 -/* GL_EXT_map_buffer_range */
1.2287 -#ifndef GL_EXT_map_buffer_range
1.2288 -#define GL_EXT_map_buffer_range 1
1.2289 -#ifdef GL_GLEXT_PROTOTYPES
1.2290 -GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
1.2291 -GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
1.2292 -#endif
1.2293 -typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
1.2294 -typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
1.2295 -#endif
1.2296 -
1.2297 -/* GL_EXT_multisampled_render_to_texture */
1.2298 -#ifndef GL_EXT_multisampled_render_to_texture
1.2299 -#define GL_EXT_multisampled_render_to_texture 1
1.2300 -#ifdef GL_GLEXT_PROTOTYPES
1.2301 -GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
1.2302 -GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
1.2303 -#endif
1.2304 -typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1.2305 -typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1.2306 -#endif
1.2307 -
1.2308 -/* GL_EXT_multiview_draw_buffers */
1.2309 -#ifndef GL_EXT_multiview_draw_buffers
1.2310 -#define GL_EXT_multiview_draw_buffers 1
1.2311 -#ifdef GL_GLEXT_PROTOTYPES
1.2312 -GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index);
1.2313 -GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices);
1.2314 -GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data);
1.2315 -#endif
1.2316 -typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index);
1.2317 -typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices);
1.2318 -typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint *data);
1.2319 -#endif
1.2320 -
1.2321 -#ifndef GL_EXT_multi_draw_arrays
1.2322 -#define GL_EXT_multi_draw_arrays 1
1.2323 -#ifdef GL_GLEXT_PROTOTYPES
1.2324 -GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
1.2325 -GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
1.2326 -#endif /* GL_GLEXT_PROTOTYPES */
1.2327 -typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
1.2328 -typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
1.2329 -#endif
1.2330 -
1.2331 -/* GL_EXT_occlusion_query_boolean */
1.2332 -#ifndef GL_EXT_occlusion_query_boolean
1.2333 -#define GL_EXT_occlusion_query_boolean 1
1.2334 -#ifdef GL_GLEXT_PROTOTYPES
1.2335 -GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids);
1.2336 -GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids);
1.2337 -GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id);
1.2338 -GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id);
1.2339 -GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target);
1.2340 -GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params);
1.2341 -GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params);
1.2342 -#endif
1.2343 -typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids);
1.2344 -typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids);
1.2345 -typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
1.2346 -typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id);
1.2347 -typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
1.2348 -typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
1.2349 -typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params);
1.2350 -#endif
1.2351 -
1.2352 -/* GL_EXT_read_format_bgra */
1.2353 -#ifndef GL_EXT_read_format_bgra
1.2354 -#define GL_EXT_read_format_bgra 1
1.2355 -#endif
1.2356 -
1.2357 -/* GL_EXT_robustness */
1.2358 -#ifndef GL_EXT_robustness
1.2359 -#define GL_EXT_robustness 1
1.2360 -#ifdef GL_GLEXT_PROTOTYPES
1.2361 -GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
1.2362 -GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
1.2363 -GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
1.2364 -GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
1.2365 -#endif
1.2366 -typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
1.2367 -typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
1.2368 -typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
1.2369 -typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
1.2370 -#endif
1.2371 -
1.2372 -/* GL_EXT_separate_shader_objects */
1.2373 -#ifndef GL_EXT_separate_shader_objects
1.2374 -#define GL_EXT_separate_shader_objects 1
1.2375 -#ifdef GL_GLEXT_PROTOTYPES
1.2376 -GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program);
1.2377 -GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program);
1.2378 -GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings);
1.2379 -GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline);
1.2380 -GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines);
1.2381 -GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines);
1.2382 -GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline);
1.2383 -GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
1.2384 -GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params);
1.2385 -GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x);
1.2386 -GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y);
1.2387 -GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z);
1.2388 -GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
1.2389 -GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x);
1.2390 -GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y);
1.2391 -GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
1.2392 -GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1.2393 -GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2394 -GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2395 -GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2396 -GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2397 -GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2398 -GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2399 -GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2400 -GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2401 -GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2402 -GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2403 -GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2404 -GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline);
1.2405 -GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1.2406 -#endif
1.2407 -typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
1.2408 -typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program);
1.2409 -typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings);
1.2410 -typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1.2411 -typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines);
1.2412 -typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines);
1.2413 -typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1.2414 -typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
1.2415 -typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params);
1.2416 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x);
1.2417 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y);
1.2418 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);
1.2419 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
1.2420 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x);
1.2421 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);
1.2422 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
1.2423 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1.2424 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2425 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2426 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2427 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1.2428 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2429 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2430 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2431 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1.2432 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2433 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2434 -typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1.2435 -typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1.2436 -typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1.2437 -#endif
1.2438 -
1.2439 -/* GL_EXT_shader_framebuffer_fetch */
1.2440 -#ifndef GL_EXT_shader_framebuffer_fetch
1.2441 -#define GL_EXT_shader_framebuffer_fetch 1
1.2442 -#endif
1.2443 -
1.2444 -/* GL_EXT_shader_texture_lod */
1.2445 -#ifndef GL_EXT_shader_texture_lod
1.2446 -#define GL_EXT_shader_texture_lod 1
1.2447 -#endif
1.2448 -
1.2449 -/* GL_EXT_shadow_samplers */
1.2450 -#ifndef GL_EXT_shadow_samplers
1.2451 -#define GL_EXT_shadow_samplers 1
1.2452 -#endif
1.2453 -
1.2454 -/* GL_EXT_sRGB */
1.2455 -#ifndef GL_EXT_sRGB
1.2456 -#define GL_EXT_sRGB 1
1.2457 -#endif
1.2458 -
1.2459 -/* GL_EXT_texture_compression_dxt1 */
1.2460 -#ifndef GL_EXT_texture_compression_dxt1
1.2461 -#define GL_EXT_texture_compression_dxt1 1
1.2462 -#endif
1.2463 -
1.2464 -/* GL_EXT_texture_filter_anisotropic */
1.2465 -#ifndef GL_EXT_texture_filter_anisotropic
1.2466 -#define GL_EXT_texture_filter_anisotropic 1
1.2467 -#endif
1.2468 -
1.2469 -/* GL_EXT_texture_format_BGRA8888 */
1.2470 -#ifndef GL_EXT_texture_format_BGRA8888
1.2471 -#define GL_EXT_texture_format_BGRA8888 1
1.2472 -#endif
1.2473 -
1.2474 -/* GL_EXT_texture_rg */
1.2475 -#ifndef GL_EXT_texture_rg
1.2476 -#define GL_EXT_texture_rg 1
1.2477 -#endif
1.2478 -
1.2479 -/* GL_EXT_texture_storage */
1.2480 -#ifndef GL_EXT_texture_storage
1.2481 -#define GL_EXT_texture_storage 1
1.2482 -#ifdef GL_GLEXT_PROTOTYPES
1.2483 -GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1.2484 -GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1.2485 -GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1.2486 -GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1.2487 -GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1.2488 -GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1.2489 -#endif
1.2490 -typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1.2491 -typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1.2492 -typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1.2493 -typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1.2494 -typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1.2495 -typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1.2496 -#endif
1.2497 -
1.2498 -/* GL_EXT_texture_type_2_10_10_10_REV */
1.2499 -#ifndef GL_EXT_texture_type_2_10_10_10_REV
1.2500 -#define GL_EXT_texture_type_2_10_10_10_REV 1
1.2501 -#endif
1.2502 -
1.2503 -/* GL_EXT_unpack_subimage */
1.2504 -#ifndef GL_EXT_unpack_subimage
1.2505 -#define GL_EXT_unpack_subimage 1
1.2506 -#endif
1.2507 -
1.2508 -/*------------------------------------------------------------------------*
1.2509 - * DMP extension functions
1.2510 - *------------------------------------------------------------------------*/
1.2511 -
1.2512 -/* GL_DMP_shader_binary */
1.2513 -#ifndef GL_DMP_shader_binary
1.2514 -#define GL_DMP_shader_binary 1
1.2515 -#endif
1.2516 -
1.2517 -/*------------------------------------------------------------------------*
1.2518 - * FJ extension functions
1.2519 - *------------------------------------------------------------------------*/
1.2520 -
1.2521 -/* GL_FJ_shader_binary_GCCSO */
1.2522 -#ifndef GL_FJ_shader_binary_GCCSO
1.2523 -#define GL_FJ_shader_binary_GCCSO 1
1.2524 -#endif
1.2525 -
1.2526 -/*------------------------------------------------------------------------*
1.2527 - * IMG extension functions
1.2528 - *------------------------------------------------------------------------*/
1.2529 -
1.2530 -/* GL_IMG_program_binary */
1.2531 -#ifndef GL_IMG_program_binary
1.2532 -#define GL_IMG_program_binary 1
1.2533 -#endif
1.2534 -
1.2535 -/* GL_IMG_read_format */
1.2536 -#ifndef GL_IMG_read_format
1.2537 -#define GL_IMG_read_format 1
1.2538 -#endif
1.2539 -
1.2540 -/* GL_IMG_shader_binary */
1.2541 -#ifndef GL_IMG_shader_binary
1.2542 -#define GL_IMG_shader_binary 1
1.2543 -#endif
1.2544 -
1.2545 -/* GL_IMG_texture_compression_pvrtc */
1.2546 -#ifndef GL_IMG_texture_compression_pvrtc
1.2547 -#define GL_IMG_texture_compression_pvrtc 1
1.2548 -#endif
1.2549 -
1.2550 -/* GL_IMG_multisampled_render_to_texture */
1.2551 -#ifndef GL_IMG_multisampled_render_to_texture
1.2552 -#define GL_IMG_multisampled_render_to_texture 1
1.2553 -#ifdef GL_GLEXT_PROTOTYPES
1.2554 -GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
1.2555 -GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
1.2556 -#endif
1.2557 -typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1.2558 -typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1.2559 -#endif
1.2560 -
1.2561 -/*------------------------------------------------------------------------*
1.2562 - * NV extension functions
1.2563 - *------------------------------------------------------------------------*/
1.2564 -
1.2565 -/* GL_NV_coverage_sample */
1.2566 -#ifndef GL_NV_coverage_sample
1.2567 -#define GL_NV_coverage_sample 1
1.2568 -#ifdef GL_GLEXT_PROTOTYPES
1.2569 -GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
1.2570 -GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
1.2571 -#endif
1.2572 -typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
1.2573 -typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
1.2574 -#endif
1.2575 -
1.2576 -/* GL_NV_depth_nonlinear */
1.2577 -#ifndef GL_NV_depth_nonlinear
1.2578 -#define GL_NV_depth_nonlinear 1
1.2579 -#endif
1.2580 -
1.2581 -/* GL_NV_draw_buffers */
1.2582 -#ifndef GL_NV_draw_buffers
1.2583 -#define GL_NV_draw_buffers 1
1.2584 -#ifdef GL_GLEXT_PROTOTYPES
1.2585 -GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs);
1.2586 -#endif
1.2587 -typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs);
1.2588 -#endif
1.2589 -
1.2590 -/* GL_NV_fbo_color_attachments */
1.2591 -#ifndef GL_NV_fbo_color_attachments
1.2592 -#define GL_NV_fbo_color_attachments 1
1.2593 -#endif
1.2594 -
1.2595 -/* GL_NV_fence */
1.2596 -#ifndef GL_NV_fence
1.2597 -#define GL_NV_fence 1
1.2598 -#ifdef GL_GLEXT_PROTOTYPES
1.2599 -GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
1.2600 -GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
1.2601 -GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint);
1.2602 -GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint);
1.2603 -GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
1.2604 -GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint);
1.2605 -GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
1.2606 -#endif
1.2607 -typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
1.2608 -typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
1.2609 -typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
1.2610 -typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
1.2611 -typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
1.2612 -typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
1.2613 -typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
1.2614 -#endif
1.2615 -
1.2616 -/* GL_NV_read_buffer */
1.2617 -#ifndef GL_NV_read_buffer
1.2618 -#define GL_NV_read_buffer 1
1.2619 -#ifdef GL_GLEXT_PROTOTYPES
1.2620 -GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode);
1.2621 -#endif
1.2622 -typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
1.2623 -#endif
1.2624 -
1.2625 -/* GL_NV_read_buffer_front */
1.2626 -#ifndef GL_NV_read_buffer_front
1.2627 -#define GL_NV_read_buffer_front 1
1.2628 -#endif
1.2629 -
1.2630 -/* GL_NV_read_depth */
1.2631 -#ifndef GL_NV_read_depth
1.2632 -#define GL_NV_read_depth 1
1.2633 -#endif
1.2634 -
1.2635 -/* GL_NV_read_depth_stencil */
1.2636 -#ifndef GL_NV_read_depth_stencil
1.2637 -#define GL_NV_read_depth_stencil 1
1.2638 -#endif
1.2639 -
1.2640 -/* GL_NV_read_stencil */
1.2641 -#ifndef GL_NV_read_stencil
1.2642 -#define GL_NV_read_stencil 1
1.2643 -#endif
1.2644 -
1.2645 -/* GL_NV_texture_compression_s3tc_update */
1.2646 -#ifndef GL_NV_texture_compression_s3tc_update
1.2647 -#define GL_NV_texture_compression_s3tc_update 1
1.2648 -#endif
1.2649 -
1.2650 -/* GL_NV_texture_npot_2D_mipmap */
1.2651 -#ifndef GL_NV_texture_npot_2D_mipmap
1.2652 -#define GL_NV_texture_npot_2D_mipmap 1
1.2653 -#endif
1.2654 -
1.2655 -/*------------------------------------------------------------------------*
1.2656 - * QCOM extension functions
1.2657 - *------------------------------------------------------------------------*/
1.2658 -
1.2659 -/* GL_QCOM_alpha_test */
1.2660 -#ifndef GL_QCOM_alpha_test
1.2661 -#define GL_QCOM_alpha_test 1
1.2662 -#ifdef GL_GLEXT_PROTOTYPES
1.2663 -GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref);
1.2664 -#endif
1.2665 -typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref);
1.2666 -#endif
1.2667 -
1.2668 -/* GL_QCOM_binning_control */
1.2669 -#ifndef GL_QCOM_binning_control
1.2670 -#define GL_QCOM_binning_control 1
1.2671 -#endif
1.2672 -
1.2673 -/* GL_QCOM_driver_control */
1.2674 -#ifndef GL_QCOM_driver_control
1.2675 -#define GL_QCOM_driver_control 1
1.2676 -#ifdef GL_GLEXT_PROTOTYPES
1.2677 -GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
1.2678 -GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1.2679 -GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
1.2680 -GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
1.2681 -#endif
1.2682 -typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
1.2683 -typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1.2684 -typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1.2685 -typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1.2686 -#endif
1.2687 -
1.2688 -/* GL_QCOM_extended_get */
1.2689 -#ifndef GL_QCOM_extended_get
1.2690 -#define GL_QCOM_extended_get 1
1.2691 -#ifdef GL_GLEXT_PROTOTYPES
1.2692 -GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
1.2693 -GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1.2694 -GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
1.2695 -GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
1.2696 -GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1.2697 -GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
1.2698 -GL_APICALL void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
1.2699 -GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
1.2700 -#endif
1.2701 -typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
1.2702 -typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1.2703 -typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
1.2704 -typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
1.2705 -typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1.2706 -typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
1.2707 -typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
1.2708 -typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
1.2709 -#endif
1.2710 -
1.2711 -/* GL_QCOM_extended_get2 */
1.2712 -#ifndef GL_QCOM_extended_get2
1.2713 -#define GL_QCOM_extended_get2 1
1.2714 -#ifdef GL_GLEXT_PROTOTYPES
1.2715 -GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
1.2716 -GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
1.2717 -GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
1.2718 -GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
1.2719 -#endif
1.2720 -typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
1.2721 -typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
1.2722 -typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
1.2723 -typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
1.2724 -#endif
1.2725 -
1.2726 -/* GL_QCOM_perfmon_global_mode */
1.2727 -#ifndef GL_QCOM_perfmon_global_mode
1.2728 -#define GL_QCOM_perfmon_global_mode 1
1.2729 -#endif
1.2730 -
1.2731 -/* GL_QCOM_writeonly_rendering */
1.2732 -#ifndef GL_QCOM_writeonly_rendering
1.2733 -#define GL_QCOM_writeonly_rendering 1
1.2734 -#endif
1.2735 -
1.2736 -/* GL_QCOM_tiled_rendering */
1.2737 -#ifndef GL_QCOM_tiled_rendering
1.2738 -#define GL_QCOM_tiled_rendering 1
1.2739 -#ifdef GL_GLEXT_PROTOTYPES
1.2740 -GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
1.2741 -GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
1.2742 -#endif
1.2743 -typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
1.2744 -typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
1.2745 -#endif
1.2746 -
1.2747 -/*------------------------------------------------------------------------*
1.2748 - * VIV extension tokens
1.2749 - *------------------------------------------------------------------------*/
1.2750 -
1.2751 -/* GL_VIV_shader_binary */
1.2752 -#ifndef GL_VIV_shader_binary
1.2753 -#define GL_VIV_shader_binary 1
1.2754 -#endif
1.2755 -
1.2756 -#ifdef __cplusplus
1.2757 -}
1.2758 -#endif
1.2759 -
1.2760 -#endif /* __gl2ext_h_ */
1.2761 +#include "SDL_opengles2_khrplatform.h"
1.2762 +#include "SDL_opengles2_gl2platform.h"
1.2763 +#include "SDL_opengles2_gl2.h"
1.2764 +#include "SDL_opengles2_gl2ext.h"
1.2765
1.2766 #endif /* _MSC_VER */
1.2767
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/include/SDL_opengles2_gl2.h Wed Jun 04 01:27:13 2014 -0700
2.3 @@ -0,0 +1,621 @@
2.4 +#ifndef __gl2_h_
2.5 +#define __gl2_h_
2.6 +
2.7 +/* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */
2.8 +
2.9 +/*#include <GLES2/gl2platform.h>*/
2.10 +
2.11 +#ifdef __cplusplus
2.12 +extern "C" {
2.13 +#endif
2.14 +
2.15 +/*
2.16 + * This document is licensed under the SGI Free Software B License Version
2.17 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
2.18 + */
2.19 +
2.20 +/*-------------------------------------------------------------------------
2.21 + * Data type definitions
2.22 + *-----------------------------------------------------------------------*/
2.23 +
2.24 +typedef void GLvoid;
2.25 +typedef char GLchar;
2.26 +typedef unsigned int GLenum;
2.27 +typedef unsigned char GLboolean;
2.28 +typedef unsigned int GLbitfield;
2.29 +typedef khronos_int8_t GLbyte;
2.30 +typedef short GLshort;
2.31 +typedef int GLint;
2.32 +typedef int GLsizei;
2.33 +typedef khronos_uint8_t GLubyte;
2.34 +typedef unsigned short GLushort;
2.35 +typedef unsigned int GLuint;
2.36 +typedef khronos_float_t GLfloat;
2.37 +typedef khronos_float_t GLclampf;
2.38 +typedef khronos_int32_t GLfixed;
2.39 +
2.40 +/* GL types for handling large vertex buffer objects */
2.41 +typedef khronos_intptr_t GLintptr;
2.42 +typedef khronos_ssize_t GLsizeiptr;
2.43 +
2.44 +/* OpenGL ES core versions */
2.45 +#define GL_ES_VERSION_2_0 1
2.46 +
2.47 +/* ClearBufferMask */
2.48 +#define GL_DEPTH_BUFFER_BIT 0x00000100
2.49 +#define GL_STENCIL_BUFFER_BIT 0x00000400
2.50 +#define GL_COLOR_BUFFER_BIT 0x00004000
2.51 +
2.52 +/* Boolean */
2.53 +#define GL_FALSE 0
2.54 +#define GL_TRUE 1
2.55 +
2.56 +/* BeginMode */
2.57 +#define GL_POINTS 0x0000
2.58 +#define GL_LINES 0x0001
2.59 +#define GL_LINE_LOOP 0x0002
2.60 +#define GL_LINE_STRIP 0x0003
2.61 +#define GL_TRIANGLES 0x0004
2.62 +#define GL_TRIANGLE_STRIP 0x0005
2.63 +#define GL_TRIANGLE_FAN 0x0006
2.64 +
2.65 +/* AlphaFunction (not supported in ES20) */
2.66 +/* GL_NEVER */
2.67 +/* GL_LESS */
2.68 +/* GL_EQUAL */
2.69 +/* GL_LEQUAL */
2.70 +/* GL_GREATER */
2.71 +/* GL_NOTEQUAL */
2.72 +/* GL_GEQUAL */
2.73 +/* GL_ALWAYS */
2.74 +
2.75 +/* BlendingFactorDest */
2.76 +#define GL_ZERO 0
2.77 +#define GL_ONE 1
2.78 +#define GL_SRC_COLOR 0x0300
2.79 +#define GL_ONE_MINUS_SRC_COLOR 0x0301
2.80 +#define GL_SRC_ALPHA 0x0302
2.81 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303
2.82 +#define GL_DST_ALPHA 0x0304
2.83 +#define GL_ONE_MINUS_DST_ALPHA 0x0305
2.84 +
2.85 +/* BlendingFactorSrc */
2.86 +/* GL_ZERO */
2.87 +/* GL_ONE */
2.88 +#define GL_DST_COLOR 0x0306
2.89 +#define GL_ONE_MINUS_DST_COLOR 0x0307
2.90 +#define GL_SRC_ALPHA_SATURATE 0x0308
2.91 +/* GL_SRC_ALPHA */
2.92 +/* GL_ONE_MINUS_SRC_ALPHA */
2.93 +/* GL_DST_ALPHA */
2.94 +/* GL_ONE_MINUS_DST_ALPHA */
2.95 +
2.96 +/* BlendEquationSeparate */
2.97 +#define GL_FUNC_ADD 0x8006
2.98 +#define GL_BLEND_EQUATION 0x8009
2.99 +#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
2.100 +#define GL_BLEND_EQUATION_ALPHA 0x883D
2.101 +
2.102 +/* BlendSubtract */
2.103 +#define GL_FUNC_SUBTRACT 0x800A
2.104 +#define GL_FUNC_REVERSE_SUBTRACT 0x800B
2.105 +
2.106 +/* Separate Blend Functions */
2.107 +#define GL_BLEND_DST_RGB 0x80C8
2.108 +#define GL_BLEND_SRC_RGB 0x80C9
2.109 +#define GL_BLEND_DST_ALPHA 0x80CA
2.110 +#define GL_BLEND_SRC_ALPHA 0x80CB
2.111 +#define GL_CONSTANT_COLOR 0x8001
2.112 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
2.113 +#define GL_CONSTANT_ALPHA 0x8003
2.114 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
2.115 +#define GL_BLEND_COLOR 0x8005
2.116 +
2.117 +/* Buffer Objects */
2.118 +#define GL_ARRAY_BUFFER 0x8892
2.119 +#define GL_ELEMENT_ARRAY_BUFFER 0x8893
2.120 +#define GL_ARRAY_BUFFER_BINDING 0x8894
2.121 +#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
2.122 +
2.123 +#define GL_STREAM_DRAW 0x88E0
2.124 +#define GL_STATIC_DRAW 0x88E4
2.125 +#define GL_DYNAMIC_DRAW 0x88E8
2.126 +
2.127 +#define GL_BUFFER_SIZE 0x8764
2.128 +#define GL_BUFFER_USAGE 0x8765
2.129 +
2.130 +#define GL_CURRENT_VERTEX_ATTRIB 0x8626
2.131 +
2.132 +/* CullFaceMode */
2.133 +#define GL_FRONT 0x0404
2.134 +#define GL_BACK 0x0405
2.135 +#define GL_FRONT_AND_BACK 0x0408
2.136 +
2.137 +/* DepthFunction */
2.138 +/* GL_NEVER */
2.139 +/* GL_LESS */
2.140 +/* GL_EQUAL */
2.141 +/* GL_LEQUAL */
2.142 +/* GL_GREATER */
2.143 +/* GL_NOTEQUAL */
2.144 +/* GL_GEQUAL */
2.145 +/* GL_ALWAYS */
2.146 +
2.147 +/* EnableCap */
2.148 +#define GL_TEXTURE_2D 0x0DE1
2.149 +#define GL_CULL_FACE 0x0B44
2.150 +#define GL_BLEND 0x0BE2
2.151 +#define GL_DITHER 0x0BD0
2.152 +#define GL_STENCIL_TEST 0x0B90
2.153 +#define GL_DEPTH_TEST 0x0B71
2.154 +#define GL_SCISSOR_TEST 0x0C11
2.155 +#define GL_POLYGON_OFFSET_FILL 0x8037
2.156 +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
2.157 +#define GL_SAMPLE_COVERAGE 0x80A0
2.158 +
2.159 +/* ErrorCode */
2.160 +#define GL_NO_ERROR 0
2.161 +#define GL_INVALID_ENUM 0x0500
2.162 +#define GL_INVALID_VALUE 0x0501
2.163 +#define GL_INVALID_OPERATION 0x0502
2.164 +#define GL_OUT_OF_MEMORY 0x0505
2.165 +
2.166 +/* FrontFaceDirection */
2.167 +#define GL_CW 0x0900
2.168 +#define GL_CCW 0x0901
2.169 +
2.170 +/* GetPName */
2.171 +#define GL_LINE_WIDTH 0x0B21
2.172 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
2.173 +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
2.174 +#define GL_CULL_FACE_MODE 0x0B45
2.175 +#define GL_FRONT_FACE 0x0B46
2.176 +#define GL_DEPTH_RANGE 0x0B70
2.177 +#define GL_DEPTH_WRITEMASK 0x0B72
2.178 +#define GL_DEPTH_CLEAR_VALUE 0x0B73
2.179 +#define GL_DEPTH_FUNC 0x0B74
2.180 +#define GL_STENCIL_CLEAR_VALUE 0x0B91
2.181 +#define GL_STENCIL_FUNC 0x0B92
2.182 +#define GL_STENCIL_FAIL 0x0B94
2.183 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
2.184 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
2.185 +#define GL_STENCIL_REF 0x0B97
2.186 +#define GL_STENCIL_VALUE_MASK 0x0B93
2.187 +#define GL_STENCIL_WRITEMASK 0x0B98
2.188 +#define GL_STENCIL_BACK_FUNC 0x8800
2.189 +#define GL_STENCIL_BACK_FAIL 0x8801
2.190 +#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
2.191 +#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
2.192 +#define GL_STENCIL_BACK_REF 0x8CA3
2.193 +#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
2.194 +#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
2.195 +#define GL_VIEWPORT 0x0BA2
2.196 +#define GL_SCISSOR_BOX 0x0C10
2.197 +/* GL_SCISSOR_TEST */
2.198 +#define GL_COLOR_CLEAR_VALUE 0x0C22
2.199 +#define GL_COLOR_WRITEMASK 0x0C23
2.200 +#define GL_UNPACK_ALIGNMENT 0x0CF5
2.201 +#define GL_PACK_ALIGNMENT 0x0D05
2.202 +#define GL_MAX_TEXTURE_SIZE 0x0D33
2.203 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A
2.204 +#define GL_SUBPIXEL_BITS 0x0D50
2.205 +#define GL_RED_BITS 0x0D52
2.206 +#define GL_GREEN_BITS 0x0D53
2.207 +#define GL_BLUE_BITS 0x0D54
2.208 +#define GL_ALPHA_BITS 0x0D55
2.209 +#define GL_DEPTH_BITS 0x0D56
2.210 +#define GL_STENCIL_BITS 0x0D57
2.211 +#define GL_POLYGON_OFFSET_UNITS 0x2A00
2.212 +/* GL_POLYGON_OFFSET_FILL */
2.213 +#define GL_POLYGON_OFFSET_FACTOR 0x8038
2.214 +#define GL_TEXTURE_BINDING_2D 0x8069
2.215 +#define GL_SAMPLE_BUFFERS 0x80A8
2.216 +#define GL_SAMPLES 0x80A9
2.217 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
2.218 +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
2.219 +
2.220 +/* GetTextureParameter */
2.221 +/* GL_TEXTURE_MAG_FILTER */
2.222 +/* GL_TEXTURE_MIN_FILTER */
2.223 +/* GL_TEXTURE_WRAP_S */
2.224 +/* GL_TEXTURE_WRAP_T */
2.225 +
2.226 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
2.227 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
2.228 +
2.229 +/* HintMode */
2.230 +#define GL_DONT_CARE 0x1100
2.231 +#define GL_FASTEST 0x1101
2.232 +#define GL_NICEST 0x1102
2.233 +
2.234 +/* HintTarget */
2.235 +#define GL_GENERATE_MIPMAP_HINT 0x8192
2.236 +
2.237 +/* DataType */
2.238 +#define GL_BYTE 0x1400
2.239 +#define GL_UNSIGNED_BYTE 0x1401
2.240 +#define GL_SHORT 0x1402
2.241 +#define GL_UNSIGNED_SHORT 0x1403
2.242 +#define GL_INT 0x1404
2.243 +#define GL_UNSIGNED_INT 0x1405
2.244 +#define GL_FLOAT 0x1406
2.245 +#define GL_FIXED 0x140C
2.246 +
2.247 +/* PixelFormat */
2.248 +#define GL_DEPTH_COMPONENT 0x1902
2.249 +#define GL_ALPHA 0x1906
2.250 +#define GL_RGB 0x1907
2.251 +#define GL_RGBA 0x1908
2.252 +#define GL_LUMINANCE 0x1909
2.253 +#define GL_LUMINANCE_ALPHA 0x190A
2.254 +
2.255 +/* PixelType */
2.256 +/* GL_UNSIGNED_BYTE */
2.257 +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
2.258 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
2.259 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363
2.260 +
2.261 +/* Shaders */
2.262 +#define GL_FRAGMENT_SHADER 0x8B30
2.263 +#define GL_VERTEX_SHADER 0x8B31
2.264 +#define GL_MAX_VERTEX_ATTRIBS 0x8869
2.265 +#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
2.266 +#define GL_MAX_VARYING_VECTORS 0x8DFC
2.267 +#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
2.268 +#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
2.269 +#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
2.270 +#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
2.271 +#define GL_SHADER_TYPE 0x8B4F
2.272 +#define GL_DELETE_STATUS 0x8B80
2.273 +#define GL_LINK_STATUS 0x8B82
2.274 +#define GL_VALIDATE_STATUS 0x8B83
2.275 +#define GL_ATTACHED_SHADERS 0x8B85
2.276 +#define GL_ACTIVE_UNIFORMS 0x8B86
2.277 +#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
2.278 +#define GL_ACTIVE_ATTRIBUTES 0x8B89
2.279 +#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
2.280 +#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
2.281 +#define GL_CURRENT_PROGRAM 0x8B8D
2.282 +
2.283 +/* StencilFunction */
2.284 +#define GL_NEVER 0x0200
2.285 +#define GL_LESS 0x0201
2.286 +#define GL_EQUAL 0x0202
2.287 +#define GL_LEQUAL 0x0203
2.288 +#define GL_GREATER 0x0204
2.289 +#define GL_NOTEQUAL 0x0205
2.290 +#define GL_GEQUAL 0x0206
2.291 +#define GL_ALWAYS 0x0207
2.292 +
2.293 +/* StencilOp */
2.294 +/* GL_ZERO */
2.295 +#define GL_KEEP 0x1E00
2.296 +#define GL_REPLACE 0x1E01
2.297 +#define GL_INCR 0x1E02
2.298 +#define GL_DECR 0x1E03
2.299 +#define GL_INVERT 0x150A
2.300 +#define GL_INCR_WRAP 0x8507
2.301 +#define GL_DECR_WRAP 0x8508
2.302 +
2.303 +/* StringName */
2.304 +#define GL_VENDOR 0x1F00
2.305 +#define GL_RENDERER 0x1F01
2.306 +#define GL_VERSION 0x1F02
2.307 +#define GL_EXTENSIONS 0x1F03
2.308 +
2.309 +/* TextureMagFilter */
2.310 +#define GL_NEAREST 0x2600
2.311 +#define GL_LINEAR 0x2601
2.312 +
2.313 +/* TextureMinFilter */
2.314 +/* GL_NEAREST */
2.315 +/* GL_LINEAR */
2.316 +#define GL_NEAREST_MIPMAP_NEAREST 0x2700
2.317 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701
2.318 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702
2.319 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703
2.320 +
2.321 +/* TextureParameterName */
2.322 +#define GL_TEXTURE_MAG_FILTER 0x2800
2.323 +#define GL_TEXTURE_MIN_FILTER 0x2801
2.324 +#define GL_TEXTURE_WRAP_S 0x2802
2.325 +#define GL_TEXTURE_WRAP_T 0x2803
2.326 +
2.327 +/* TextureTarget */
2.328 +/* GL_TEXTURE_2D */
2.329 +#define GL_TEXTURE 0x1702
2.330 +
2.331 +#define GL_TEXTURE_CUBE_MAP 0x8513
2.332 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
2.333 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
2.334 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
2.335 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
2.336 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
2.337 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
2.338 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
2.339 +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
2.340 +
2.341 +/* TextureUnit */
2.342 +#define GL_TEXTURE0 0x84C0
2.343 +#define GL_TEXTURE1 0x84C1
2.344 +#define GL_TEXTURE2 0x84C2
2.345 +#define GL_TEXTURE3 0x84C3
2.346 +#define GL_TEXTURE4 0x84C4
2.347 +#define GL_TEXTURE5 0x84C5
2.348 +#define GL_TEXTURE6 0x84C6
2.349 +#define GL_TEXTURE7 0x84C7
2.350 +#define GL_TEXTURE8 0x84C8
2.351 +#define GL_TEXTURE9 0x84C9
2.352 +#define GL_TEXTURE10 0x84CA
2.353 +#define GL_TEXTURE11 0x84CB
2.354 +#define GL_TEXTURE12 0x84CC
2.355 +#define GL_TEXTURE13 0x84CD
2.356 +#define GL_TEXTURE14 0x84CE
2.357 +#define GL_TEXTURE15 0x84CF
2.358 +#define GL_TEXTURE16 0x84D0
2.359 +#define GL_TEXTURE17 0x84D1
2.360 +#define GL_TEXTURE18 0x84D2
2.361 +#define GL_TEXTURE19 0x84D3
2.362 +#define GL_TEXTURE20 0x84D4
2.363 +#define GL_TEXTURE21 0x84D5
2.364 +#define GL_TEXTURE22 0x84D6
2.365 +#define GL_TEXTURE23 0x84D7
2.366 +#define GL_TEXTURE24 0x84D8
2.367 +#define GL_TEXTURE25 0x84D9
2.368 +#define GL_TEXTURE26 0x84DA
2.369 +#define GL_TEXTURE27 0x84DB
2.370 +#define GL_TEXTURE28 0x84DC
2.371 +#define GL_TEXTURE29 0x84DD
2.372 +#define GL_TEXTURE30 0x84DE
2.373 +#define GL_TEXTURE31 0x84DF
2.374 +#define GL_ACTIVE_TEXTURE 0x84E0
2.375 +
2.376 +/* TextureWrapMode */
2.377 +#define GL_REPEAT 0x2901
2.378 +#define GL_CLAMP_TO_EDGE 0x812F
2.379 +#define GL_MIRRORED_REPEAT 0x8370
2.380 +
2.381 +/* Uniform Types */
2.382 +#define GL_FLOAT_VEC2 0x8B50
2.383 +#define GL_FLOAT_VEC3 0x8B51
2.384 +#define GL_FLOAT_VEC4 0x8B52
2.385 +#define GL_INT_VEC2 0x8B53
2.386 +#define GL_INT_VEC3 0x8B54
2.387 +#define GL_INT_VEC4 0x8B55
2.388 +#define GL_BOOL 0x8B56
2.389 +#define GL_BOOL_VEC2 0x8B57
2.390 +#define GL_BOOL_VEC3 0x8B58
2.391 +#define GL_BOOL_VEC4 0x8B59
2.392 +#define GL_FLOAT_MAT2 0x8B5A
2.393 +#define GL_FLOAT_MAT3 0x8B5B
2.394 +#define GL_FLOAT_MAT4 0x8B5C
2.395 +#define GL_SAMPLER_2D 0x8B5E
2.396 +#define GL_SAMPLER_CUBE 0x8B60
2.397 +
2.398 +/* Vertex Arrays */
2.399 +#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
2.400 +#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
2.401 +#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
2.402 +#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
2.403 +#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
2.404 +#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
2.405 +#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
2.406 +
2.407 +/* Read Format */
2.408 +#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
2.409 +#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
2.410 +
2.411 +/* Shader Source */
2.412 +#define GL_COMPILE_STATUS 0x8B81
2.413 +#define GL_INFO_LOG_LENGTH 0x8B84
2.414 +#define GL_SHADER_SOURCE_LENGTH 0x8B88
2.415 +#define GL_SHADER_COMPILER 0x8DFA
2.416 +
2.417 +/* Shader Binary */
2.418 +#define GL_SHADER_BINARY_FORMATS 0x8DF8
2.419 +#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
2.420 +
2.421 +/* Shader Precision-Specified Types */
2.422 +#define GL_LOW_FLOAT 0x8DF0
2.423 +#define GL_MEDIUM_FLOAT 0x8DF1
2.424 +#define GL_HIGH_FLOAT 0x8DF2
2.425 +#define GL_LOW_INT 0x8DF3
2.426 +#define GL_MEDIUM_INT 0x8DF4
2.427 +#define GL_HIGH_INT 0x8DF5
2.428 +
2.429 +/* Framebuffer Object. */
2.430 +#define GL_FRAMEBUFFER 0x8D40
2.431 +#define GL_RENDERBUFFER 0x8D41
2.432 +
2.433 +#define GL_RGBA4 0x8056
2.434 +#define GL_RGB5_A1 0x8057
2.435 +#define GL_RGB565 0x8D62
2.436 +#define GL_DEPTH_COMPONENT16 0x81A5
2.437 +#define GL_STENCIL_INDEX8 0x8D48
2.438 +
2.439 +#define GL_RENDERBUFFER_WIDTH 0x8D42
2.440 +#define GL_RENDERBUFFER_HEIGHT 0x8D43
2.441 +#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
2.442 +#define GL_RENDERBUFFER_RED_SIZE 0x8D50
2.443 +#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
2.444 +#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
2.445 +#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
2.446 +#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
2.447 +#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
2.448 +
2.449 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
2.450 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
2.451 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
2.452 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
2.453 +
2.454 +#define GL_COLOR_ATTACHMENT0 0x8CE0
2.455 +#define GL_DEPTH_ATTACHMENT 0x8D00
2.456 +#define GL_STENCIL_ATTACHMENT 0x8D20
2.457 +
2.458 +#define GL_NONE 0
2.459 +
2.460 +#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
2.461 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
2.462 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
2.463 +#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
2.464 +#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
2.465 +
2.466 +#define GL_FRAMEBUFFER_BINDING 0x8CA6
2.467 +#define GL_RENDERBUFFER_BINDING 0x8CA7
2.468 +#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
2.469 +
2.470 +#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
2.471 +
2.472 +/*-------------------------------------------------------------------------
2.473 + * GL core functions.
2.474 + *-----------------------------------------------------------------------*/
2.475 +
2.476 +GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
2.477 +GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
2.478 +GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
2.479 +GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
2.480 +GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
2.481 +GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
2.482 +GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
2.483 +GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
2.484 +GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
2.485 +GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
2.486 +GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
2.487 +GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
2.488 +GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
2.489 +GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
2.490 +GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
2.491 +GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
2.492 +GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
2.493 +GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
2.494 +GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
2.495 +GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
2.496 +GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
2.497 +GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
2.498 +GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
2.499 +GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
2.500 +GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
2.501 +GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
2.502 +GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
2.503 +GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
2.504 +GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
2.505 +GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
2.506 +GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
2.507 +GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
2.508 +GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
2.509 +GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
2.510 +GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
2.511 +GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
2.512 +GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
2.513 +GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
2.514 +GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
2.515 +GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
2.516 +GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
2.517 +GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
2.518 +GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
2.519 +GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
2.520 +GL_APICALL void GL_APIENTRY glFinish (void);
2.521 +GL_APICALL void GL_APIENTRY glFlush (void);
2.522 +GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
2.523 +GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
2.524 +GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
2.525 +GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
2.526 +GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
2.527 +GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
2.528 +GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
2.529 +GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
2.530 +GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
2.531 +GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
2.532 +GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
2.533 +GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
2.534 +GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
2.535 +GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
2.536 +GL_APICALL GLenum GL_APIENTRY glGetError (void);
2.537 +GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
2.538 +GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
2.539 +GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
2.540 +GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
2.541 +GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
2.542 +GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
2.543 +GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
2.544 +GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
2.545 +GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
2.546 +GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
2.547 +GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
2.548 +GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
2.549 +GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
2.550 +GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
2.551 +GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
2.552 +GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
2.553 +GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
2.554 +GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
2.555 +GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
2.556 +GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
2.557 +GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
2.558 +GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
2.559 +GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
2.560 +GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
2.561 +GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
2.562 +GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
2.563 +GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
2.564 +GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
2.565 +GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
2.566 +GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
2.567 +GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
2.568 +GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
2.569 +GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
2.570 +GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
2.571 +GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
2.572 +GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
2.573 +GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
2.574 +GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
2.575 +GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
2.576 +GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
2.577 +GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
2.578 +GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
2.579 +GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
2.580 +GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
2.581 +GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
2.582 +GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
2.583 +GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
2.584 +GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
2.585 +GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
2.586 +GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
2.587 +GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
2.588 +GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
2.589 +GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
2.590 +GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
2.591 +GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
2.592 +GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
2.593 +GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
2.594 +GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
2.595 +GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
2.596 +GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
2.597 +GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
2.598 +GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
2.599 +GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2.600 +GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
2.601 +GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
2.602 +GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
2.603 +GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
2.604 +GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
2.605 +GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
2.606 +GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
2.607 +GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
2.608 +GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
2.609 +GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
2.610 +GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
2.611 +GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
2.612 +GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
2.613 +GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
2.614 +GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2.615 +GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
2.616 +GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
2.617 +GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
2.618 +
2.619 +#ifdef __cplusplus
2.620 +}
2.621 +#endif
2.622 +
2.623 +#endif /* __gl2_h_ */
2.624 +
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/include/SDL_opengles2_gl2ext.h Wed Jun 04 01:27:13 2014 -0700
3.3 @@ -0,0 +1,1809 @@
3.4 +#ifndef __gl2ext_h_
3.5 +#define __gl2ext_h_
3.6 +
3.7 +/* $Revision: 19436 $ on $Date:: 2012-10-10 10:37:04 -0700 #$ */
3.8 +
3.9 +#ifdef __cplusplus
3.10 +extern "C" {
3.11 +#endif
3.12 +
3.13 +/*
3.14 + * This document is licensed under the SGI Free Software B License Version
3.15 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
3.16 + */
3.17 +
3.18 +#ifndef GL_APIENTRYP
3.19 +# define GL_APIENTRYP GL_APIENTRY*
3.20 +#endif
3.21 +
3.22 +/*------------------------------------------------------------------------*
3.23 + * OES extension tokens
3.24 + *------------------------------------------------------------------------*/
3.25 +
3.26 +/* GL_OES_compressed_ETC1_RGB8_texture */
3.27 +#ifndef GL_OES_compressed_ETC1_RGB8_texture
3.28 +#define GL_ETC1_RGB8_OES 0x8D64
3.29 +#endif
3.30 +
3.31 +/* GL_OES_compressed_paletted_texture */
3.32 +#ifndef GL_OES_compressed_paletted_texture
3.33 +#define GL_PALETTE4_RGB8_OES 0x8B90
3.34 +#define GL_PALETTE4_RGBA8_OES 0x8B91
3.35 +#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
3.36 +#define GL_PALETTE4_RGBA4_OES 0x8B93
3.37 +#define GL_PALETTE4_RGB5_A1_OES 0x8B94
3.38 +#define GL_PALETTE8_RGB8_OES 0x8B95
3.39 +#define GL_PALETTE8_RGBA8_OES 0x8B96
3.40 +#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
3.41 +#define GL_PALETTE8_RGBA4_OES 0x8B98
3.42 +#define GL_PALETTE8_RGB5_A1_OES 0x8B99
3.43 +#endif
3.44 +
3.45 +/* GL_OES_depth24 */
3.46 +#ifndef GL_OES_depth24
3.47 +#define GL_DEPTH_COMPONENT24_OES 0x81A6
3.48 +#endif
3.49 +
3.50 +/* GL_OES_depth32 */
3.51 +#ifndef GL_OES_depth32
3.52 +#define GL_DEPTH_COMPONENT32_OES 0x81A7
3.53 +#endif
3.54 +
3.55 +/* GL_OES_depth_texture */
3.56 +/* No new tokens introduced by this extension. */
3.57 +
3.58 +/* GL_OES_EGL_image */
3.59 +#ifndef GL_OES_EGL_image
3.60 +typedef void* GLeglImageOES;
3.61 +#endif
3.62 +
3.63 +/* GL_OES_EGL_image_external */
3.64 +#ifndef GL_OES_EGL_image_external
3.65 +/* GLeglImageOES defined in GL_OES_EGL_image already. */
3.66 +#define GL_TEXTURE_EXTERNAL_OES 0x8D65
3.67 +#define GL_SAMPLER_EXTERNAL_OES 0x8D66
3.68 +#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
3.69 +#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
3.70 +#endif
3.71 +
3.72 +/* GL_OES_element_index_uint */
3.73 +#ifndef GL_OES_element_index_uint
3.74 +#define GL_UNSIGNED_INT 0x1405
3.75 +#endif
3.76 +
3.77 +/* GL_OES_get_program_binary */
3.78 +#ifndef GL_OES_get_program_binary
3.79 +#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
3.80 +#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
3.81 +#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
3.82 +#endif
3.83 +
3.84 +/* GL_OES_mapbuffer */
3.85 +#ifndef GL_OES_mapbuffer
3.86 +#define GL_WRITE_ONLY_OES 0x88B9
3.87 +#define GL_BUFFER_ACCESS_OES 0x88BB
3.88 +#define GL_BUFFER_MAPPED_OES 0x88BC
3.89 +#define GL_BUFFER_MAP_POINTER_OES 0x88BD
3.90 +#endif
3.91 +
3.92 +/* GL_OES_packed_depth_stencil */
3.93 +#ifndef GL_OES_packed_depth_stencil
3.94 +#define GL_DEPTH_STENCIL_OES 0x84F9
3.95 +#define GL_UNSIGNED_INT_24_8_OES 0x84FA
3.96 +#define GL_DEPTH24_STENCIL8_OES 0x88F0
3.97 +#endif
3.98 +
3.99 +/* GL_OES_required_internalformat */
3.100 +#ifndef GL_OES_required_internalformat
3.101 +#define GL_ALPHA8_OES 0x803C
3.102 +#define GL_DEPTH_COMPONENT16_OES 0x81A5
3.103 +/* reuse GL_DEPTH_COMPONENT24_OES */
3.104 +/* reuse GL_DEPTH24_STENCIL8_OES */
3.105 +/* reuse GL_DEPTH_COMPONENT32_OES */
3.106 +#define GL_LUMINANCE4_ALPHA4_OES 0x8043
3.107 +#define GL_LUMINANCE8_ALPHA8_OES 0x8045
3.108 +#define GL_LUMINANCE8_OES 0x8040
3.109 +#define GL_RGBA4_OES 0x8056
3.110 +#define GL_RGB5_A1_OES 0x8057
3.111 +#define GL_RGB565_OES 0x8D62
3.112 +/* reuse GL_RGB8_OES */
3.113 +/* reuse GL_RGBA8_OES */
3.114 +/* reuse GL_RGB10_EXT */
3.115 +/* reuse GL_RGB10_A2_EXT */
3.116 +#endif
3.117 +
3.118 +/* GL_OES_rgb8_rgba8 */
3.119 +#ifndef GL_OES_rgb8_rgba8
3.120 +#define GL_RGB8_OES 0x8051
3.121 +#define GL_RGBA8_OES 0x8058
3.122 +#endif
3.123 +
3.124 +/* GL_OES_standard_derivatives */
3.125 +#ifndef GL_OES_standard_derivatives
3.126 +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
3.127 +#endif
3.128 +
3.129 +/* GL_OES_stencil1 */
3.130 +#ifndef GL_OES_stencil1
3.131 +#define GL_STENCIL_INDEX1_OES 0x8D46
3.132 +#endif
3.133 +
3.134 +/* GL_OES_stencil4 */
3.135 +#ifndef GL_OES_stencil4
3.136 +#define GL_STENCIL_INDEX4_OES 0x8D47
3.137 +#endif
3.138 +
3.139 +#ifndef GL_OES_surfaceless_context
3.140 +#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
3.141 +#endif
3.142 +
3.143 +/* GL_OES_texture_3D */
3.144 +#ifndef GL_OES_texture_3D
3.145 +#define GL_TEXTURE_WRAP_R_OES 0x8072
3.146 +#define GL_TEXTURE_3D_OES 0x806F
3.147 +#define GL_TEXTURE_BINDING_3D_OES 0x806A
3.148 +#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
3.149 +#define GL_SAMPLER_3D_OES 0x8B5F
3.150 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
3.151 +#endif
3.152 +
3.153 +/* GL_OES_texture_float */
3.154 +/* No new tokens introduced by this extension. */
3.155 +
3.156 +/* GL_OES_texture_float_linear */
3.157 +/* No new tokens introduced by this extension. */
3.158 +
3.159 +/* GL_OES_texture_half_float */
3.160 +#ifndef GL_OES_texture_half_float
3.161 +#define GL_HALF_FLOAT_OES 0x8D61
3.162 +#endif
3.163 +
3.164 +/* GL_OES_texture_half_float_linear */
3.165 +/* No new tokens introduced by this extension. */
3.166 +
3.167 +/* GL_OES_texture_npot */
3.168 +/* No new tokens introduced by this extension. */
3.169 +
3.170 +/* GL_OES_vertex_array_object */
3.171 +#ifndef GL_OES_vertex_array_object
3.172 +#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
3.173 +#endif
3.174 +
3.175 +/* GL_OES_vertex_half_float */
3.176 +/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
3.177 +
3.178 +/* GL_OES_vertex_type_10_10_10_2 */
3.179 +#ifndef GL_OES_vertex_type_10_10_10_2
3.180 +#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
3.181 +#define GL_INT_10_10_10_2_OES 0x8DF7
3.182 +#endif
3.183 +
3.184 +/*------------------------------------------------------------------------*
3.185 + * KHR extension tokens
3.186 + *------------------------------------------------------------------------*/
3.187 +
3.188 +#ifndef GL_KHR_debug
3.189 +typedef void (GL_APIENTRYP GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
3.190 +#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
3.191 +#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
3.192 +#define GL_DEBUG_CALLBACK_FUNCTION 0x8244
3.193 +#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
3.194 +#define GL_DEBUG_SOURCE_API 0x8246
3.195 +#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
3.196 +#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
3.197 +#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
3.198 +#define GL_DEBUG_SOURCE_APPLICATION 0x824A
3.199 +#define GL_DEBUG_SOURCE_OTHER 0x824B
3.200 +#define GL_DEBUG_TYPE_ERROR 0x824C
3.201 +#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
3.202 +#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
3.203 +#define GL_DEBUG_TYPE_PORTABILITY 0x824F
3.204 +#define GL_DEBUG_TYPE_PERFORMANCE 0x8250
3.205 +#define GL_DEBUG_TYPE_OTHER 0x8251
3.206 +#define GL_DEBUG_TYPE_MARKER 0x8268
3.207 +#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
3.208 +#define GL_DEBUG_TYPE_POP_GROUP 0x826A
3.209 +#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
3.210 +#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
3.211 +#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
3.212 +#define GL_BUFFER 0x82E0
3.213 +#define GL_SHADER 0x82E1
3.214 +#define GL_PROGRAM 0x82E2
3.215 +#define GL_QUERY 0x82E3
3.216 +/* PROGRAM_PIPELINE only in GL */
3.217 +#define GL_SAMPLER 0x82E6
3.218 +/* DISPLAY_LIST only in GL */
3.219 +#define GL_MAX_LABEL_LENGTH 0x82E8
3.220 +#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
3.221 +#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
3.222 +#define GL_DEBUG_LOGGED_MESSAGES 0x9145
3.223 +#define GL_DEBUG_SEVERITY_HIGH 0x9146
3.224 +#define GL_DEBUG_SEVERITY_MEDIUM 0x9147
3.225 +#define GL_DEBUG_SEVERITY_LOW 0x9148
3.226 +#define GL_DEBUG_OUTPUT 0x92E0
3.227 +#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
3.228 +#define GL_STACK_OVERFLOW 0x0503
3.229 +#define GL_STACK_UNDERFLOW 0x0504
3.230 +#endif
3.231 +
3.232 +#ifndef GL_KHR_texture_compression_astc_ldr
3.233 +#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
3.234 +#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
3.235 +#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
3.236 +#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
3.237 +#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
3.238 +#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
3.239 +#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
3.240 +#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
3.241 +#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
3.242 +#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
3.243 +#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
3.244 +#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
3.245 +#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
3.246 +#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
3.247 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
3.248 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
3.249 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
3.250 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
3.251 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
3.252 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
3.253 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
3.254 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
3.255 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
3.256 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
3.257 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
3.258 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
3.259 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
3.260 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
3.261 +#endif
3.262 +
3.263 +/*------------------------------------------------------------------------*
3.264 + * AMD extension tokens
3.265 + *------------------------------------------------------------------------*/
3.266 +
3.267 +/* GL_AMD_compressed_3DC_texture */
3.268 +#ifndef GL_AMD_compressed_3DC_texture
3.269 +#define GL_3DC_X_AMD 0x87F9
3.270 +#define GL_3DC_XY_AMD 0x87FA
3.271 +#endif
3.272 +
3.273 +/* GL_AMD_compressed_ATC_texture */
3.274 +#ifndef GL_AMD_compressed_ATC_texture
3.275 +#define GL_ATC_RGB_AMD 0x8C92
3.276 +#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
3.277 +#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
3.278 +#endif
3.279 +
3.280 +/* GL_AMD_performance_monitor */
3.281 +#ifndef GL_AMD_performance_monitor
3.282 +#define GL_COUNTER_TYPE_AMD 0x8BC0
3.283 +#define GL_COUNTER_RANGE_AMD 0x8BC1
3.284 +#define GL_UNSIGNED_INT64_AMD 0x8BC2
3.285 +#define GL_PERCENTAGE_AMD 0x8BC3
3.286 +#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
3.287 +#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
3.288 +#define GL_PERFMON_RESULT_AMD 0x8BC6
3.289 +#endif
3.290 +
3.291 +/* GL_AMD_program_binary_Z400 */
3.292 +#ifndef GL_AMD_program_binary_Z400
3.293 +#define GL_Z400_BINARY_AMD 0x8740
3.294 +#endif
3.295 +
3.296 +/*------------------------------------------------------------------------*
3.297 + * ANGLE extension tokens
3.298 + *------------------------------------------------------------------------*/
3.299 +
3.300 +/* GL_ANGLE_framebuffer_blit */
3.301 +#ifndef GL_ANGLE_framebuffer_blit
3.302 +#define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
3.303 +#define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
3.304 +#define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
3.305 +#define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
3.306 +#endif
3.307 +
3.308 +/* GL_ANGLE_framebuffer_multisample */
3.309 +#ifndef GL_ANGLE_framebuffer_multisample
3.310 +#define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
3.311 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
3.312 +#define GL_MAX_SAMPLES_ANGLE 0x8D57
3.313 +#endif
3.314 +
3.315 +/* GL_ANGLE_instanced_arrays */
3.316 +#ifndef GL_ANGLE_instanced_arrays
3.317 +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
3.318 +#endif
3.319 +
3.320 +/* GL_ANGLE_pack_reverse_row_order */
3.321 +#ifndef GL_ANGLE_pack_reverse_row_order
3.322 +#define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
3.323 +#endif
3.324 +
3.325 +/* GL_ANGLE_texture_compression_dxt3 */
3.326 +#ifndef GL_ANGLE_texture_compression_dxt3
3.327 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
3.328 +#endif
3.329 +
3.330 +/* GL_ANGLE_texture_compression_dxt5 */
3.331 +#ifndef GL_ANGLE_texture_compression_dxt5
3.332 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
3.333 +#endif
3.334 +
3.335 +/* GL_ANGLE_texture_usage */
3.336 +#ifndef GL_ANGLE_texture_usage
3.337 +#define GL_TEXTURE_USAGE_ANGLE 0x93A2
3.338 +#define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
3.339 +#endif
3.340 +
3.341 +/* GL_ANGLE_translated_shader_source */
3.342 +#ifndef GL_ANGLE_translated_shader_source
3.343 +#define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
3.344 +#endif
3.345 +
3.346 +/*------------------------------------------------------------------------*
3.347 + * APPLE extension tokens
3.348 + *------------------------------------------------------------------------*/
3.349 +
3.350 +/* GL_APPLE_copy_texture_levels */
3.351 +/* No new tokens introduced by this extension. */
3.352 +
3.353 +/* GL_APPLE_framebuffer_multisample */
3.354 +#ifndef GL_APPLE_framebuffer_multisample
3.355 +#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
3.356 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
3.357 +#define GL_MAX_SAMPLES_APPLE 0x8D57
3.358 +#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
3.359 +#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
3.360 +#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
3.361 +#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
3.362 +#endif
3.363 +
3.364 +/* GL_APPLE_rgb_422 */
3.365 +#ifndef GL_APPLE_rgb_422
3.366 +#define GL_RGB_422_APPLE 0x8A1F
3.367 +#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
3.368 +#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
3.369 +#endif
3.370 +
3.371 +/* GL_APPLE_sync */
3.372 +#ifndef GL_APPLE_sync
3.373 +
3.374 +#ifndef __gl3_h_
3.375 +/* These types are defined with reference to <inttypes.h>
3.376 + * in the Apple extension spec, but here we use the Khronos
3.377 + * portable types in khrplatform.h, and assume those types
3.378 + * are always defined.
3.379 + * If any other extensions using these types are defined,
3.380 + * the typedefs must move out of this block and be shared.
3.381 + */
3.382 +typedef khronos_int64_t GLint64;
3.383 +typedef khronos_uint64_t GLuint64;
3.384 +typedef struct __GLsync *GLsync;
3.385 +#endif
3.386 +
3.387 +#define GL_SYNC_OBJECT_APPLE 0x8A53
3.388 +#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
3.389 +#define GL_OBJECT_TYPE_APPLE 0x9112
3.390 +#define GL_SYNC_CONDITION_APPLE 0x9113
3.391 +#define GL_SYNC_STATUS_APPLE 0x9114
3.392 +#define GL_SYNC_FLAGS_APPLE 0x9115
3.393 +#define GL_SYNC_FENCE_APPLE 0x9116
3.394 +#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
3.395 +#define GL_UNSIGNALED_APPLE 0x9118
3.396 +#define GL_SIGNALED_APPLE 0x9119
3.397 +#define GL_ALREADY_SIGNALED_APPLE 0x911A
3.398 +#define GL_TIMEOUT_EXPIRED_APPLE 0x911B
3.399 +#define GL_CONDITION_SATISFIED_APPLE 0x911C
3.400 +#define GL_WAIT_FAILED_APPLE 0x911D
3.401 +#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
3.402 +#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
3.403 +#endif
3.404 +
3.405 +/* GL_APPLE_texture_format_BGRA8888 */
3.406 +#ifndef GL_APPLE_texture_format_BGRA8888
3.407 +#define GL_BGRA_EXT 0x80E1
3.408 +#endif
3.409 +
3.410 +/* GL_APPLE_texture_max_level */
3.411 +#ifndef GL_APPLE_texture_max_level
3.412 +#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
3.413 +#endif
3.414 +
3.415 +/*------------------------------------------------------------------------*
3.416 + * ARM extension tokens
3.417 + *------------------------------------------------------------------------*/
3.418 +
3.419 +/* GL_ARM_mali_program_binary */
3.420 +#ifndef GL_ARM_mali_program_binary
3.421 +#define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
3.422 +#endif
3.423 +
3.424 +/* GL_ARM_mali_shader_binary */
3.425 +#ifndef GL_ARM_mali_shader_binary
3.426 +#define GL_MALI_SHADER_BINARY_ARM 0x8F60
3.427 +#endif
3.428 +
3.429 +/* GL_ARM_rgba8 */
3.430 +/* No new tokens introduced by this extension. */
3.431 +
3.432 +/*------------------------------------------------------------------------*
3.433 + * EXT extension tokens
3.434 + *------------------------------------------------------------------------*/
3.435 +
3.436 +/* GL_EXT_blend_minmax */
3.437 +#ifndef GL_EXT_blend_minmax
3.438 +#define GL_MIN_EXT 0x8007
3.439 +#define GL_MAX_EXT 0x8008
3.440 +#endif
3.441 +
3.442 +/* GL_EXT_color_buffer_half_float */
3.443 +#ifndef GL_EXT_color_buffer_half_float
3.444 +#define GL_RGBA16F_EXT 0x881A
3.445 +#define GL_RGB16F_EXT 0x881B
3.446 +#define GL_RG16F_EXT 0x822F
3.447 +#define GL_R16F_EXT 0x822D
3.448 +#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
3.449 +#define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
3.450 +#endif
3.451 +
3.452 +/* GL_EXT_debug_label */
3.453 +#ifndef GL_EXT_debug_label
3.454 +#define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
3.455 +#define GL_PROGRAM_OBJECT_EXT 0x8B40
3.456 +#define GL_SHADER_OBJECT_EXT 0x8B48
3.457 +#define GL_BUFFER_OBJECT_EXT 0x9151
3.458 +#define GL_QUERY_OBJECT_EXT 0x9153
3.459 +#define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
3.460 +#endif
3.461 +
3.462 +/* GL_EXT_debug_marker */
3.463 +/* No new tokens introduced by this extension. */
3.464 +
3.465 +/* GL_EXT_discard_framebuffer */
3.466 +#ifndef GL_EXT_discard_framebuffer
3.467 +#define GL_COLOR_EXT 0x1800
3.468 +#define GL_DEPTH_EXT 0x1801
3.469 +#define GL_STENCIL_EXT 0x1802
3.470 +#endif
3.471 +
3.472 +/* GL_EXT_map_buffer_range */
3.473 +#ifndef GL_EXT_map_buffer_range
3.474 +#define GL_MAP_READ_BIT_EXT 0x0001
3.475 +#define GL_MAP_WRITE_BIT_EXT 0x0002
3.476 +#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
3.477 +#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
3.478 +#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
3.479 +#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
3.480 +#endif
3.481 +
3.482 +/* GL_EXT_multisampled_render_to_texture */
3.483 +#ifndef GL_EXT_multisampled_render_to_texture
3.484 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
3.485 +/* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
3.486 +#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
3.487 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
3.488 +#define GL_MAX_SAMPLES_EXT 0x8D57
3.489 +#endif
3.490 +
3.491 +/* GL_EXT_multiview_draw_buffers */
3.492 +#ifndef GL_EXT_multiview_draw_buffers
3.493 +#define GL_COLOR_ATTACHMENT_EXT 0x90F0
3.494 +#define GL_MULTIVIEW_EXT 0x90F1
3.495 +#define GL_DRAW_BUFFER_EXT 0x0C01
3.496 +#define GL_READ_BUFFER_EXT 0x0C02
3.497 +#define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
3.498 +#endif
3.499 +
3.500 +/* GL_EXT_multi_draw_arrays */
3.501 +/* No new tokens introduced by this extension. */
3.502 +
3.503 +/* GL_EXT_occlusion_query_boolean */
3.504 +#ifndef GL_EXT_occlusion_query_boolean
3.505 +#define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
3.506 +#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
3.507 +#define GL_CURRENT_QUERY_EXT 0x8865
3.508 +#define GL_QUERY_RESULT_EXT 0x8866
3.509 +#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
3.510 +#endif
3.511 +
3.512 +/* GL_EXT_read_format_bgra */
3.513 +#ifndef GL_EXT_read_format_bgra
3.514 +#define GL_BGRA_EXT 0x80E1
3.515 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
3.516 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
3.517 +#endif
3.518 +
3.519 +/* GL_EXT_robustness */
3.520 +#ifndef GL_EXT_robustness
3.521 +/* reuse GL_NO_ERROR */
3.522 +#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
3.523 +#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
3.524 +#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
3.525 +#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
3.526 +#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
3.527 +#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
3.528 +#define GL_NO_RESET_NOTIFICATION_EXT 0x8261
3.529 +#endif
3.530 +
3.531 +/* GL_EXT_separate_shader_objects */
3.532 +#ifndef GL_EXT_separate_shader_objects
3.533 +#define GL_VERTEX_SHADER_BIT_EXT 0x00000001
3.534 +#define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
3.535 +#define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
3.536 +#define GL_PROGRAM_SEPARABLE_EXT 0x8258
3.537 +#define GL_ACTIVE_PROGRAM_EXT 0x8259
3.538 +#define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
3.539 +#endif
3.540 +
3.541 +/* GL_EXT_shader_framebuffer_fetch */
3.542 +#ifndef GL_EXT_shader_framebuffer_fetch
3.543 +#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
3.544 +#endif
3.545 +
3.546 +/* GL_EXT_shader_texture_lod */
3.547 +/* No new tokens introduced by this extension. */
3.548 +
3.549 +/* GL_EXT_shadow_samplers */
3.550 +#ifndef GL_EXT_shadow_samplers
3.551 +#define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
3.552 +#define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
3.553 +#define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
3.554 +#define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
3.555 +#endif
3.556 +
3.557 +/* GL_EXT_sRGB */
3.558 +#ifndef GL_EXT_sRGB
3.559 +#define GL_SRGB_EXT 0x8C40
3.560 +#define GL_SRGB_ALPHA_EXT 0x8C42
3.561 +#define GL_SRGB8_ALPHA8_EXT 0x8C43
3.562 +#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
3.563 +#endif
3.564 +
3.565 +/* GL_EXT_texture_compression_dxt1 */
3.566 +#ifndef GL_EXT_texture_compression_dxt1
3.567 +#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
3.568 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
3.569 +#endif
3.570 +
3.571 +/* GL_EXT_texture_filter_anisotropic */
3.572 +#ifndef GL_EXT_texture_filter_anisotropic
3.573 +#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
3.574 +#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
3.575 +#endif
3.576 +
3.577 +/* GL_EXT_texture_format_BGRA8888 */
3.578 +#ifndef GL_EXT_texture_format_BGRA8888
3.579 +#define GL_BGRA_EXT 0x80E1
3.580 +#endif
3.581 +
3.582 +/* GL_EXT_texture_rg */
3.583 +#ifndef GL_EXT_texture_rg
3.584 +#define GL_RED_EXT 0x1903
3.585 +#define GL_RG_EXT 0x8227
3.586 +#define GL_R8_EXT 0x8229
3.587 +#define GL_RG8_EXT 0x822B
3.588 +#endif
3.589 +
3.590 +/* GL_EXT_texture_storage */
3.591 +#ifndef GL_EXT_texture_storage
3.592 +#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
3.593 +#define GL_ALPHA8_EXT 0x803C
3.594 +#define GL_LUMINANCE8_EXT 0x8040
3.595 +#define GL_LUMINANCE8_ALPHA8_EXT 0x8045
3.596 +#define GL_RGBA32F_EXT 0x8814
3.597 +#define GL_RGB32F_EXT 0x8815
3.598 +#define GL_ALPHA32F_EXT 0x8816
3.599 +#define GL_LUMINANCE32F_EXT 0x8818
3.600 +#define GL_LUMINANCE_ALPHA32F_EXT 0x8819
3.601 +/* reuse GL_RGBA16F_EXT */
3.602 +/* reuse GL_RGB16F_EXT */
3.603 +#define GL_ALPHA16F_EXT 0x881C
3.604 +#define GL_LUMINANCE16F_EXT 0x881E
3.605 +#define GL_LUMINANCE_ALPHA16F_EXT 0x881F
3.606 +#define GL_RGB10_A2_EXT 0x8059
3.607 +#define GL_RGB10_EXT 0x8052
3.608 +#define GL_BGRA8_EXT 0x93A1
3.609 +#define GL_R8_EXT 0x8229
3.610 +#define GL_RG8_EXT 0x822B
3.611 +#define GL_R32F_EXT 0x822E
3.612 +#define GL_RG32F_EXT 0x8230
3.613 +#define GL_R16F_EXT 0x822D
3.614 +#define GL_RG16F_EXT 0x822F
3.615 +#endif
3.616 +
3.617 +/* GL_EXT_texture_type_2_10_10_10_REV */
3.618 +#ifndef GL_EXT_texture_type_2_10_10_10_REV
3.619 +#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
3.620 +#endif
3.621 +
3.622 +/* GL_EXT_unpack_subimage */
3.623 +#ifndef GL_EXT_unpack_subimage
3.624 +#define GL_UNPACK_ROW_LENGTH 0x0CF2
3.625 +#define GL_UNPACK_SKIP_ROWS 0x0CF3
3.626 +#define GL_UNPACK_SKIP_PIXELS 0x0CF4
3.627 +#endif
3.628 +
3.629 +/*------------------------------------------------------------------------*
3.630 + * DMP extension tokens
3.631 + *------------------------------------------------------------------------*/
3.632 +
3.633 +/* GL_DMP_shader_binary */
3.634 +#ifndef GL_DMP_shader_binary
3.635 +#define GL_SHADER_BINARY_DMP 0x9250
3.636 +#endif
3.637 +
3.638 +/*------------------------------------------------------------------------*
3.639 + * FJ extension tokens
3.640 + *------------------------------------------------------------------------*/
3.641 +
3.642 +/* GL_FJ_shader_binary_GCCSO */
3.643 +#ifndef GL_FJ_shader_binary_GCCSO
3.644 +#define GCCSO_SHADER_BINARY_FJ 0x9260
3.645 +#endif
3.646 +
3.647 +/*------------------------------------------------------------------------*
3.648 + * IMG extension tokens
3.649 + *------------------------------------------------------------------------*/
3.650 +
3.651 +/* GL_IMG_program_binary */
3.652 +#ifndef GL_IMG_program_binary
3.653 +#define GL_SGX_PROGRAM_BINARY_IMG 0x9130
3.654 +#endif
3.655 +
3.656 +/* GL_IMG_read_format */
3.657 +#ifndef GL_IMG_read_format
3.658 +#define GL_BGRA_IMG 0x80E1
3.659 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
3.660 +#endif
3.661 +
3.662 +/* GL_IMG_shader_binary */
3.663 +#ifndef GL_IMG_shader_binary
3.664 +#define GL_SGX_BINARY_IMG 0x8C0A
3.665 +#endif
3.666 +
3.667 +/* GL_IMG_texture_compression_pvrtc */
3.668 +#ifndef GL_IMG_texture_compression_pvrtc
3.669 +#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
3.670 +#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
3.671 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
3.672 +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
3.673 +#endif
3.674 +
3.675 +/* GL_IMG_multisampled_render_to_texture */
3.676 +#ifndef GL_IMG_multisampled_render_to_texture
3.677 +#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
3.678 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
3.679 +#define GL_MAX_SAMPLES_IMG 0x9135
3.680 +#define GL_TEXTURE_SAMPLES_IMG 0x9136
3.681 +#endif
3.682 +
3.683 +/*------------------------------------------------------------------------*
3.684 + * NV extension tokens
3.685 + *------------------------------------------------------------------------*/
3.686 +
3.687 +/* GL_NV_coverage_sample */
3.688 +#ifndef GL_NV_coverage_sample
3.689 +#define GL_COVERAGE_COMPONENT_NV 0x8ED0
3.690 +#define GL_COVERAGE_COMPONENT4_NV 0x8ED1
3.691 +#define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
3.692 +#define GL_COVERAGE_BUFFERS_NV 0x8ED3
3.693 +#define GL_COVERAGE_SAMPLES_NV 0x8ED4
3.694 +#define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
3.695 +#define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
3.696 +#define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
3.697 +#define GL_COVERAGE_BUFFER_BIT_NV 0x8000
3.698 +#endif
3.699 +
3.700 +/* GL_NV_depth_nonlinear */
3.701 +#ifndef GL_NV_depth_nonlinear
3.702 +#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
3.703 +#endif
3.704 +
3.705 +/* GL_NV_draw_buffers */
3.706 +#ifndef GL_NV_draw_buffers
3.707 +#define GL_MAX_DRAW_BUFFERS_NV 0x8824
3.708 +#define GL_DRAW_BUFFER0_NV 0x8825
3.709 +#define GL_DRAW_BUFFER1_NV 0x8826
3.710 +#define GL_DRAW_BUFFER2_NV 0x8827
3.711 +#define GL_DRAW_BUFFER3_NV 0x8828
3.712 +#define GL_DRAW_BUFFER4_NV 0x8829
3.713 +#define GL_DRAW_BUFFER5_NV 0x882A
3.714 +#define GL_DRAW_BUFFER6_NV 0x882B
3.715 +#define GL_DRAW_BUFFER7_NV 0x882C
3.716 +#define GL_DRAW_BUFFER8_NV 0x882D
3.717 +#define GL_DRAW_BUFFER9_NV 0x882E
3.718 +#define GL_DRAW_BUFFER10_NV 0x882F
3.719 +#define GL_DRAW_BUFFER11_NV 0x8830
3.720 +#define GL_DRAW_BUFFER12_NV 0x8831
3.721 +#define GL_DRAW_BUFFER13_NV 0x8832
3.722 +#define GL_DRAW_BUFFER14_NV 0x8833
3.723 +#define GL_DRAW_BUFFER15_NV 0x8834
3.724 +#define GL_COLOR_ATTACHMENT0_NV 0x8CE0
3.725 +#define GL_COLOR_ATTACHMENT1_NV 0x8CE1
3.726 +#define GL_COLOR_ATTACHMENT2_NV 0x8CE2
3.727 +#define GL_COLOR_ATTACHMENT3_NV 0x8CE3
3.728 +#define GL_COLOR_ATTACHMENT4_NV 0x8CE4
3.729 +#define GL_COLOR_ATTACHMENT5_NV 0x8CE5
3.730 +#define GL_COLOR_ATTACHMENT6_NV 0x8CE6
3.731 +#define GL_COLOR_ATTACHMENT7_NV 0x8CE7
3.732 +#define GL_COLOR_ATTACHMENT8_NV 0x8CE8
3.733 +#define GL_COLOR_ATTACHMENT9_NV 0x8CE9
3.734 +#define GL_COLOR_ATTACHMENT10_NV 0x8CEA
3.735 +#define GL_COLOR_ATTACHMENT11_NV 0x8CEB
3.736 +#define GL_COLOR_ATTACHMENT12_NV 0x8CEC
3.737 +#define GL_COLOR_ATTACHMENT13_NV 0x8CED
3.738 +#define GL_COLOR_ATTACHMENT14_NV 0x8CEE
3.739 +#define GL_COLOR_ATTACHMENT15_NV 0x8CEF
3.740 +#endif
3.741 +
3.742 +/* GL_NV_fbo_color_attachments */
3.743 +#ifndef GL_NV_fbo_color_attachments
3.744 +#define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
3.745 +/* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
3.746 +#endif
3.747 +
3.748 +/* GL_NV_fence */
3.749 +#ifndef GL_NV_fence
3.750 +#define GL_ALL_COMPLETED_NV 0x84F2
3.751 +#define GL_FENCE_STATUS_NV 0x84F3
3.752 +#define GL_FENCE_CONDITION_NV 0x84F4
3.753 +#endif
3.754 +
3.755 +/* GL_NV_read_buffer */
3.756 +#ifndef GL_NV_read_buffer
3.757 +#define GL_READ_BUFFER_NV 0x0C02
3.758 +#endif
3.759 +
3.760 +/* GL_NV_read_buffer_front */
3.761 +/* No new tokens introduced by this extension. */
3.762 +
3.763 +/* GL_NV_read_depth */
3.764 +/* No new tokens introduced by this extension. */
3.765 +
3.766 +/* GL_NV_read_depth_stencil */
3.767 +/* No new tokens introduced by this extension. */
3.768 +
3.769 +/* GL_NV_read_stencil */
3.770 +/* No new tokens introduced by this extension. */
3.771 +
3.772 +/* GL_NV_texture_compression_s3tc_update */
3.773 +/* No new tokens introduced by this extension. */
3.774 +
3.775 +/* GL_NV_texture_npot_2D_mipmap */
3.776 +/* No new tokens introduced by this extension. */
3.777 +
3.778 +/*------------------------------------------------------------------------*
3.779 + * QCOM extension tokens
3.780 + *------------------------------------------------------------------------*/
3.781 +
3.782 +/* GL_QCOM_alpha_test */
3.783 +#ifndef GL_QCOM_alpha_test
3.784 +#define GL_ALPHA_TEST_QCOM 0x0BC0
3.785 +#define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
3.786 +#define GL_ALPHA_TEST_REF_QCOM 0x0BC2
3.787 +#endif
3.788 +
3.789 +/* GL_QCOM_binning_control */
3.790 +#ifndef GL_QCOM_binning_control
3.791 +#define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
3.792 +#define GL_CPU_OPTIMIZED_QCOM 0x8FB1
3.793 +#define GL_GPU_OPTIMIZED_QCOM 0x8FB2
3.794 +#define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
3.795 +#endif
3.796 +
3.797 +/* GL_QCOM_driver_control */
3.798 +/* No new tokens introduced by this extension. */
3.799 +
3.800 +/* GL_QCOM_extended_get */
3.801 +#ifndef GL_QCOM_extended_get
3.802 +#define GL_TEXTURE_WIDTH_QCOM 0x8BD2
3.803 +#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
3.804 +#define GL_TEXTURE_DEPTH_QCOM 0x8BD4
3.805 +#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
3.806 +#define GL_TEXTURE_FORMAT_QCOM 0x8BD6
3.807 +#define GL_TEXTURE_TYPE_QCOM 0x8BD7
3.808 +#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
3.809 +#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
3.810 +#define GL_TEXTURE_TARGET_QCOM 0x8BDA
3.811 +#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
3.812 +#define GL_STATE_RESTORE 0x8BDC
3.813 +#endif
3.814 +
3.815 +/* GL_QCOM_extended_get2 */
3.816 +/* No new tokens introduced by this extension. */
3.817 +
3.818 +/* GL_QCOM_perfmon_global_mode */
3.819 +#ifndef GL_QCOM_perfmon_global_mode
3.820 +#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
3.821 +#endif
3.822 +
3.823 +/* GL_QCOM_writeonly_rendering */
3.824 +#ifndef GL_QCOM_writeonly_rendering
3.825 +#define GL_WRITEONLY_RENDERING_QCOM 0x8823
3.826 +#endif
3.827 +
3.828 +/* GL_QCOM_tiled_rendering */
3.829 +#ifndef GL_QCOM_tiled_rendering
3.830 +#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
3.831 +#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
3.832 +#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
3.833 +#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
3.834 +#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
3.835 +#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
3.836 +#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
3.837 +#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
3.838 +#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
3.839 +#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
3.840 +#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
3.841 +#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
3.842 +#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
3.843 +#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
3.844 +#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
3.845 +#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
3.846 +#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
3.847 +#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
3.848 +#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
3.849 +#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
3.850 +#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
3.851 +#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
3.852 +#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
3.853 +#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
3.854 +#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
3.855 +#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
3.856 +#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
3.857 +#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
3.858 +#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
3.859 +#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
3.860 +#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
3.861 +#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
3.862 +#endif
3.863 +
3.864 +/*------------------------------------------------------------------------*
3.865 + * VIV extension tokens
3.866 + *------------------------------------------------------------------------*/
3.867 +
3.868 +/* GL_VIV_shader_binary */
3.869 +#ifndef GL_VIV_shader_binary
3.870 +#define GL_SHADER_BINARY_VIV 0x8FC4
3.871 +#endif
3.872 +
3.873 +/*------------------------------------------------------------------------*
3.874 + * End of extension tokens, start of corresponding extension functions
3.875 + *------------------------------------------------------------------------*/
3.876 +
3.877 +/*------------------------------------------------------------------------*
3.878 + * OES extension functions
3.879 + *------------------------------------------------------------------------*/
3.880 +
3.881 +/* GL_OES_compressed_ETC1_RGB8_texture */
3.882 +#ifndef GL_OES_compressed_ETC1_RGB8_texture
3.883 +#define GL_OES_compressed_ETC1_RGB8_texture 1
3.884 +#endif
3.885 +
3.886 +/* GL_OES_compressed_paletted_texture */
3.887 +#ifndef GL_OES_compressed_paletted_texture
3.888 +#define GL_OES_compressed_paletted_texture 1
3.889 +#endif
3.890 +
3.891 +/* GL_OES_depth24 */
3.892 +#ifndef GL_OES_depth24
3.893 +#define GL_OES_depth24 1
3.894 +#endif
3.895 +
3.896 +/* GL_OES_depth32 */
3.897 +#ifndef GL_OES_depth32
3.898 +#define GL_OES_depth32 1
3.899 +#endif
3.900 +
3.901 +/* GL_OES_depth_texture */
3.902 +#ifndef GL_OES_depth_texture
3.903 +#define GL_OES_depth_texture 1
3.904 +#endif
3.905 +
3.906 +/* GL_OES_EGL_image */
3.907 +#ifndef GL_OES_EGL_image
3.908 +#define GL_OES_EGL_image 1
3.909 +#ifdef GL_GLEXT_PROTOTYPES
3.910 +GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
3.911 +GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
3.912 +#endif
3.913 +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
3.914 +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
3.915 +#endif
3.916 +
3.917 +/* GL_OES_EGL_image_external */
3.918 +#ifndef GL_OES_EGL_image_external
3.919 +#define GL_OES_EGL_image_external 1
3.920 +/* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
3.921 +#endif
3.922 +
3.923 +/* GL_OES_element_index_uint */
3.924 +#ifndef GL_OES_element_index_uint
3.925 +#define GL_OES_element_index_uint 1
3.926 +#endif
3.927 +
3.928 +/* GL_OES_fbo_render_mipmap */
3.929 +#ifndef GL_OES_fbo_render_mipmap
3.930 +#define GL_OES_fbo_render_mipmap 1
3.931 +#endif
3.932 +
3.933 +/* GL_OES_fragment_precision_high */
3.934 +#ifndef GL_OES_fragment_precision_high
3.935 +#define GL_OES_fragment_precision_high 1
3.936 +#endif
3.937 +
3.938 +/* GL_OES_get_program_binary */
3.939 +#ifndef GL_OES_get_program_binary
3.940 +#define GL_OES_get_program_binary 1
3.941 +#ifdef GL_GLEXT_PROTOTYPES
3.942 +GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
3.943 +GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
3.944 +#endif
3.945 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
3.946 +typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
3.947 +#endif
3.948 +
3.949 +/* GL_OES_mapbuffer */
3.950 +#ifndef GL_OES_mapbuffer
3.951 +#define GL_OES_mapbuffer 1
3.952 +#ifdef GL_GLEXT_PROTOTYPES
3.953 +GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
3.954 +GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
3.955 +GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params);
3.956 +#endif
3.957 +typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
3.958 +typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
3.959 +typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
3.960 +#endif
3.961 +
3.962 +/* GL_OES_packed_depth_stencil */
3.963 +#ifndef GL_OES_packed_depth_stencil
3.964 +#define GL_OES_packed_depth_stencil 1
3.965 +#endif
3.966 +
3.967 +/* GL_OES_required_internalformat */
3.968 +#ifndef GL_OES_required_internalformat
3.969 +#define GL_OES_required_internalformat 1
3.970 +#endif
3.971 +
3.972 +/* GL_OES_rgb8_rgba8 */
3.973 +#ifndef GL_OES_rgb8_rgba8
3.974 +#define GL_OES_rgb8_rgba8 1
3.975 +#endif
3.976 +
3.977 +/* GL_OES_standard_derivatives */
3.978 +#ifndef GL_OES_standard_derivatives
3.979 +#define GL_OES_standard_derivatives 1
3.980 +#endif
3.981 +
3.982 +/* GL_OES_stencil1 */
3.983 +#ifndef GL_OES_stencil1
3.984 +#define GL_OES_stencil1 1
3.985 +#endif
3.986 +
3.987 +/* GL_OES_stencil4 */
3.988 +#ifndef GL_OES_stencil4
3.989 +#define GL_OES_stencil4 1
3.990 +#endif
3.991 +
3.992 +#ifndef GL_OES_surfaceless_context
3.993 +#define GL_OES_surfaceless_context 1
3.994 +#endif
3.995 +
3.996 +/* GL_OES_texture_3D */
3.997 +#ifndef GL_OES_texture_3D
3.998 +#define GL_OES_texture_3D 1
3.999 +#ifdef GL_GLEXT_PROTOTYPES
3.1000 +GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
3.1001 +GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
3.1002 +GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3.1003 +GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
3.1004 +GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
3.1005 +GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
3.1006 +#endif
3.1007 +typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
3.1008 +typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
3.1009 +typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3.1010 +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
3.1011 +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
3.1012 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
3.1013 +#endif
3.1014 +
3.1015 +/* GL_OES_texture_float */
3.1016 +#ifndef GL_OES_texture_float
3.1017 +#define GL_OES_texture_float 1
3.1018 +#endif
3.1019 +
3.1020 +/* GL_OES_texture_float_linear */
3.1021 +#ifndef GL_OES_texture_float_linear
3.1022 +#define GL_OES_texture_float_linear 1
3.1023 +#endif
3.1024 +
3.1025 +/* GL_OES_texture_half_float */
3.1026 +#ifndef GL_OES_texture_half_float
3.1027 +#define GL_OES_texture_half_float 1
3.1028 +#endif
3.1029 +
3.1030 +/* GL_OES_texture_half_float_linear */
3.1031 +#ifndef GL_OES_texture_half_float_linear
3.1032 +#define GL_OES_texture_half_float_linear 1
3.1033 +#endif
3.1034 +
3.1035 +/* GL_OES_texture_npot */
3.1036 +#ifndef GL_OES_texture_npot
3.1037 +#define GL_OES_texture_npot 1
3.1038 +#endif
3.1039 +
3.1040 +/* GL_OES_vertex_array_object */
3.1041 +#ifndef GL_OES_vertex_array_object
3.1042 +#define GL_OES_vertex_array_object 1
3.1043 +#ifdef GL_GLEXT_PROTOTYPES
3.1044 +GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
3.1045 +GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
3.1046 +GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
3.1047 +GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
3.1048 +#endif
3.1049 +typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
3.1050 +typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
3.1051 +typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
3.1052 +typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
3.1053 +#endif
3.1054 +
3.1055 +/* GL_OES_vertex_half_float */
3.1056 +#ifndef GL_OES_vertex_half_float
3.1057 +#define GL_OES_vertex_half_float 1
3.1058 +#endif
3.1059 +
3.1060 +/* GL_OES_vertex_type_10_10_10_2 */
3.1061 +#ifndef GL_OES_vertex_type_10_10_10_2
3.1062 +#define GL_OES_vertex_type_10_10_10_2 1
3.1063 +#endif
3.1064 +
3.1065 +/*------------------------------------------------------------------------*
3.1066 + * KHR extension functions
3.1067 + *------------------------------------------------------------------------*/
3.1068 +
3.1069 +#ifndef GL_KHR_debug
3.1070 +#define GL_KHR_debug 1
3.1071 +#ifdef GL_GLEXT_PROTOTYPES
3.1072 +GL_APICALL void GL_APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
3.1073 +GL_APICALL void GL_APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
3.1074 +GL_APICALL void GL_APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
3.1075 +GL_APICALL GLuint GL_APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
3.1076 +GL_APICALL void GL_APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
3.1077 +GL_APICALL void GL_APIENTRY glPopDebugGroup (void);
3.1078 +GL_APICALL void GL_APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
3.1079 +GL_APICALL void GL_APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1080 +GL_APICALL void GL_APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
3.1081 +GL_APICALL void GL_APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1082 +GL_APICALL void GL_APIENTRY glGetPointerv (GLenum pname, void **params);
3.1083 +#endif
3.1084 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
3.1085 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
3.1086 +typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
3.1087 +typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
3.1088 +typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
3.1089 +typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
3.1090 +typedef void (GL_APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
3.1091 +typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1092 +typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
3.1093 +typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1094 +typedef void (GL_APIENTRYP PFNGLGETPOINTERVPROC) (GLenum pname, void **params);
3.1095 +#endif
3.1096 +
3.1097 +#ifndef GL_KHR_texture_compression_astc_ldr
3.1098 +#define GL_KHR_texture_compression_astc_ldr 1
3.1099 +#endif
3.1100 +
3.1101 +
3.1102 +/*------------------------------------------------------------------------*
3.1103 + * AMD extension functions
3.1104 + *------------------------------------------------------------------------*/
3.1105 +
3.1106 +/* GL_AMD_compressed_3DC_texture */
3.1107 +#ifndef GL_AMD_compressed_3DC_texture
3.1108 +#define GL_AMD_compressed_3DC_texture 1
3.1109 +#endif
3.1110 +
3.1111 +/* GL_AMD_compressed_ATC_texture */
3.1112 +#ifndef GL_AMD_compressed_ATC_texture
3.1113 +#define GL_AMD_compressed_ATC_texture 1
3.1114 +#endif
3.1115 +
3.1116 +/* AMD_performance_monitor */
3.1117 +#ifndef GL_AMD_performance_monitor
3.1118 +#define GL_AMD_performance_monitor 1
3.1119 +#ifdef GL_GLEXT_PROTOTYPES
3.1120 +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
3.1121 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
3.1122 +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
3.1123 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
3.1124 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
3.1125 +GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
3.1126 +GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
3.1127 +GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
3.1128 +GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
3.1129 +GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
3.1130 +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
3.1131 +#endif
3.1132 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
3.1133 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
3.1134 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
3.1135 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
3.1136 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
3.1137 +typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
3.1138 +typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
3.1139 +typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
3.1140 +typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
3.1141 +typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
3.1142 +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
3.1143 +#endif
3.1144 +
3.1145 +/* GL_AMD_program_binary_Z400 */
3.1146 +#ifndef GL_AMD_program_binary_Z400
3.1147 +#define GL_AMD_program_binary_Z400 1
3.1148 +#endif
3.1149 +
3.1150 +/*------------------------------------------------------------------------*
3.1151 + * ANGLE extension functions
3.1152 + *------------------------------------------------------------------------*/
3.1153 +
3.1154 +/* GL_ANGLE_framebuffer_blit */
3.1155 +#ifndef GL_ANGLE_framebuffer_blit
3.1156 +#define GL_ANGLE_framebuffer_blit 1
3.1157 +#ifdef GL_GLEXT_PROTOTYPES
3.1158 +GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
3.1159 +#endif
3.1160 +typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
3.1161 +#endif
3.1162 +
3.1163 +/* GL_ANGLE_framebuffer_multisample */
3.1164 +#ifndef GL_ANGLE_framebuffer_multisample
3.1165 +#define GL_ANGLE_framebuffer_multisample 1
3.1166 +#ifdef GL_GLEXT_PROTOTYPES
3.1167 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
3.1168 +#endif
3.1169 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
3.1170 +#endif
3.1171 +
3.1172 +#ifndef GL_ANGLE_instanced_arrays
3.1173 +#ifdef GL_GLEXT_PROTOTYPES
3.1174 +GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
3.1175 +GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
3.1176 +GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor);
3.1177 +#endif
3.1178 +typedef void (GL_APIENTRYP PFLGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
3.1179 +typedef void (GL_APIENTRYP PFLGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
3.1180 +typedef void (GL_APIENTRYP PFLGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor);
3.1181 +#endif
3.1182 +
3.1183 +/* GL_ANGLE_pack_reverse_row_order */
3.1184 +#ifndef GL_ANGLE_pack_reverse_row_order
3.1185 +#define GL_ANGLE_pack_reverse_row_order 1
3.1186 +#endif
3.1187 +
3.1188 +/* GL_ANGLE_texture_compression_dxt3 */
3.1189 +#ifndef GL_ANGLE_texture_compression_dxt3
3.1190 +#define GL_ANGLE_texture_compression_dxt3 1
3.1191 +#endif
3.1192 +
3.1193 +/* GL_ANGLE_texture_compression_dxt5 */
3.1194 +#ifndef GL_ANGLE_texture_compression_dxt5
3.1195 +#define GL_ANGLE_texture_compression_dxt5 1
3.1196 +#endif
3.1197 +
3.1198 +/* GL_ANGLE_texture_usage */
3.1199 +#ifndef GL_ANGLE_texture_usage
3.1200 +#define GL_ANGLE_texture_usage 1
3.1201 +#endif
3.1202 +
3.1203 +#ifndef GL_ANGLE_translated_shader_source
3.1204 +#define GL_ANGLE_translated_shader_source 1
3.1205 +#ifdef GL_GLEXT_PROTOTYPES
3.1206 +GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
3.1207 +#endif
3.1208 +typedef void (GL_APIENTRYP PFLGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
3.1209 +#endif
3.1210 +
3.1211 +/*------------------------------------------------------------------------*
3.1212 + * APPLE extension functions
3.1213 + *------------------------------------------------------------------------*/
3.1214 +
3.1215 +/* GL_APPLE_copy_texture_levels */
3.1216 +#ifndef GL_APPLE_copy_texture_levels
3.1217 +#define GL_APPLE_copy_texture_levels 1
3.1218 +#ifdef GL_GLEXT_PROTOTYPES
3.1219 +GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
3.1220 +#endif
3.1221 +typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
3.1222 +#endif
3.1223 +
3.1224 +/* GL_APPLE_framebuffer_multisample */
3.1225 +#ifndef GL_APPLE_framebuffer_multisample
3.1226 +#define GL_APPLE_framebuffer_multisample 1
3.1227 +#ifdef GL_GLEXT_PROTOTYPES
3.1228 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
3.1229 +GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
3.1230 +#endif /* GL_GLEXT_PROTOTYPES */
3.1231 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
3.1232 +typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
3.1233 +#endif
3.1234 +
3.1235 +/* GL_APPLE_rgb_422 */
3.1236 +#ifndef GL_APPLE_rgb_422
3.1237 +#define GL_APPLE_rgb_422 1
3.1238 +#endif
3.1239 +
3.1240 +/* GL_APPLE_sync */
3.1241 +#ifndef GL_APPLE_sync
3.1242 +#define GL_APPLE_sync 1
3.1243 +#ifdef GL_GLEXT_PROTOTYPES
3.1244 +GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
3.1245 +GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
3.1246 +GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
3.1247 +GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
3.1248 +GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
3.1249 +GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
3.1250 +GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
3.1251 +#endif
3.1252 +typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
3.1253 +typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
3.1254 +typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
3.1255 +typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
3.1256 +typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
3.1257 +typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
3.1258 +typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
3.1259 +#endif
3.1260 +
3.1261 +/* GL_APPLE_texture_format_BGRA8888 */
3.1262 +#ifndef GL_APPLE_texture_format_BGRA8888
3.1263 +#define GL_APPLE_texture_format_BGRA8888 1
3.1264 +#endif
3.1265 +
3.1266 +/* GL_APPLE_texture_max_level */
3.1267 +#ifndef GL_APPLE_texture_max_level
3.1268 +#define GL_APPLE_texture_max_level 1
3.1269 +#endif
3.1270 +
3.1271 +/*------------------------------------------------------------------------*
3.1272 + * ARM extension functions
3.1273 + *------------------------------------------------------------------------*/
3.1274 +
3.1275 +/* GL_ARM_mali_program_binary */
3.1276 +#ifndef GL_ARM_mali_program_binary
3.1277 +#define GL_ARM_mali_program_binary 1
3.1278 +#endif
3.1279 +
3.1280 +/* GL_ARM_mali_shader_binary */
3.1281 +#ifndef GL_ARM_mali_shader_binary
3.1282 +#define GL_ARM_mali_shader_binary 1
3.1283 +#endif
3.1284 +
3.1285 +/* GL_ARM_rgba8 */
3.1286 +#ifndef GL_ARM_rgba8
3.1287 +#define GL_ARM_rgba8 1
3.1288 +#endif
3.1289 +
3.1290 +/*------------------------------------------------------------------------*
3.1291 + * EXT extension functions
3.1292 + *------------------------------------------------------------------------*/
3.1293 +
3.1294 +/* GL_EXT_blend_minmax */
3.1295 +#ifndef GL_EXT_blend_minmax
3.1296 +#define GL_EXT_blend_minmax 1
3.1297 +#endif
3.1298 +
3.1299 +/* GL_EXT_color_buffer_half_float */
3.1300 +#ifndef GL_EXT_color_buffer_half_float
3.1301 +#define GL_EXT_color_buffer_half_float 1
3.1302 +#endif
3.1303 +
3.1304 +/* GL_EXT_debug_label */
3.1305 +#ifndef GL_EXT_debug_label
3.1306 +#define GL_EXT_debug_label 1
3.1307 +#ifdef GL_GLEXT_PROTOTYPES
3.1308 +GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label);
3.1309 +GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1310 +#endif
3.1311 +typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
3.1312 +typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
3.1313 +#endif
3.1314 +
3.1315 +/* GL_EXT_debug_marker */
3.1316 +#ifndef GL_EXT_debug_marker
3.1317 +#define GL_EXT_debug_marker 1
3.1318 +#ifdef GL_GLEXT_PROTOTYPES
3.1319 +GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
3.1320 +GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
3.1321 +GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void);
3.1322 +#endif
3.1323 +typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
3.1324 +typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
3.1325 +typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
3.1326 +#endif
3.1327 +
3.1328 +/* GL_EXT_discard_framebuffer */
3.1329 +#ifndef GL_EXT_discard_framebuffer
3.1330 +#define GL_EXT_discard_framebuffer 1
3.1331 +#ifdef GL_GLEXT_PROTOTYPES
3.1332 +GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
3.1333 +#endif
3.1334 +typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
3.1335 +#endif
3.1336 +
3.1337 +/* GL_EXT_map_buffer_range */
3.1338 +#ifndef GL_EXT_map_buffer_range
3.1339 +#define GL_EXT_map_buffer_range 1
3.1340 +#ifdef GL_GLEXT_PROTOTYPES
3.1341 +GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
3.1342 +GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
3.1343 +#endif
3.1344 +typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
3.1345 +typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
3.1346 +#endif
3.1347 +
3.1348 +/* GL_EXT_multisampled_render_to_texture */
3.1349 +#ifndef GL_EXT_multisampled_render_to_texture
3.1350 +#define GL_EXT_multisampled_render_to_texture 1
3.1351 +#ifdef GL_GLEXT_PROTOTYPES
3.1352 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
3.1353 +GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
3.1354 +#endif
3.1355 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
3.1356 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
3.1357 +#endif
3.1358 +
3.1359 +/* GL_EXT_multiview_draw_buffers */
3.1360 +#ifndef GL_EXT_multiview_draw_buffers
3.1361 +#define GL_EXT_multiview_draw_buffers 1
3.1362 +#ifdef GL_GLEXT_PROTOTYPES
3.1363 +GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index);
3.1364 +GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices);
3.1365 +GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data);
3.1366 +#endif
3.1367 +typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index);
3.1368 +typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices);
3.1369 +typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint *data);
3.1370 +#endif
3.1371 +
3.1372 +#ifndef GL_EXT_multi_draw_arrays
3.1373 +#define GL_EXT_multi_draw_arrays 1
3.1374 +#ifdef GL_GLEXT_PROTOTYPES
3.1375 +GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
3.1376 +GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
3.1377 +#endif /* GL_GLEXT_PROTOTYPES */
3.1378 +typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
3.1379 +typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
3.1380 +#endif
3.1381 +
3.1382 +/* GL_EXT_occlusion_query_boolean */
3.1383 +#ifndef GL_EXT_occlusion_query_boolean
3.1384 +#define GL_EXT_occlusion_query_boolean 1
3.1385 +#ifdef GL_GLEXT_PROTOTYPES
3.1386 +GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids);
3.1387 +GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids);
3.1388 +GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id);
3.1389 +GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id);
3.1390 +GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target);
3.1391 +GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params);
3.1392 +GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params);
3.1393 +#endif
3.1394 +typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids);
3.1395 +typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids);
3.1396 +typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
3.1397 +typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id);
3.1398 +typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
3.1399 +typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
3.1400 +typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params);
3.1401 +#endif
3.1402 +
3.1403 +/* GL_EXT_read_format_bgra */
3.1404 +#ifndef GL_EXT_read_format_bgra
3.1405 +#define GL_EXT_read_format_bgra 1
3.1406 +#endif
3.1407 +
3.1408 +/* GL_EXT_robustness */
3.1409 +#ifndef GL_EXT_robustness
3.1410 +#define GL_EXT_robustness 1
3.1411 +#ifdef GL_GLEXT_PROTOTYPES
3.1412 +GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
3.1413 +GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
3.1414 +GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
3.1415 +GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
3.1416 +#endif
3.1417 +typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
3.1418 +typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
3.1419 +typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
3.1420 +typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
3.1421 +#endif
3.1422 +
3.1423 +/* GL_EXT_separate_shader_objects */
3.1424 +#ifndef GL_EXT_separate_shader_objects
3.1425 +#define GL_EXT_separate_shader_objects 1
3.1426 +#ifdef GL_GLEXT_PROTOTYPES
3.1427 +GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program);
3.1428 +GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program);
3.1429 +GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings);
3.1430 +GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline);
3.1431 +GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines);
3.1432 +GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines);
3.1433 +GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline);
3.1434 +GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
3.1435 +GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params);
3.1436 +GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x);
3.1437 +GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y);
3.1438 +GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z);
3.1439 +GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
3.1440 +GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x);
3.1441 +GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y);
3.1442 +GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
3.1443 +GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3.1444 +GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1445 +GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1446 +GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1447 +GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1448 +GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1449 +GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1450 +GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1451 +GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1452 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1453 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1454 +GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1455 +GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline);
3.1456 +GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
3.1457 +#endif
3.1458 +typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
3.1459 +typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program);
3.1460 +typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings);
3.1461 +typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
3.1462 +typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines);
3.1463 +typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines);
3.1464 +typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
3.1465 +typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
3.1466 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params);
3.1467 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x);
3.1468 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y);
3.1469 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);
3.1470 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
3.1471 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x);
3.1472 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);
3.1473 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
3.1474 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3.1475 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1476 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1477 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1478 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
3.1479 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1480 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1481 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1482 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
3.1483 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1484 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1485 +typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
3.1486 +typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
3.1487 +typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
3.1488 +#endif
3.1489 +
3.1490 +/* GL_EXT_shader_framebuffer_fetch */
3.1491 +#ifndef GL_EXT_shader_framebuffer_fetch
3.1492 +#define GL_EXT_shader_framebuffer_fetch 1
3.1493 +#endif
3.1494 +
3.1495 +/* GL_EXT_shader_texture_lod */
3.1496 +#ifndef GL_EXT_shader_texture_lod
3.1497 +#define GL_EXT_shader_texture_lod 1
3.1498 +#endif
3.1499 +
3.1500 +/* GL_EXT_shadow_samplers */
3.1501 +#ifndef GL_EXT_shadow_samplers
3.1502 +#define GL_EXT_shadow_samplers 1
3.1503 +#endif
3.1504 +
3.1505 +/* GL_EXT_sRGB */
3.1506 +#ifndef GL_EXT_sRGB
3.1507 +#define GL_EXT_sRGB 1
3.1508 +#endif
3.1509 +
3.1510 +/* GL_EXT_texture_compression_dxt1 */
3.1511 +#ifndef GL_EXT_texture_compression_dxt1
3.1512 +#define GL_EXT_texture_compression_dxt1 1
3.1513 +#endif
3.1514 +
3.1515 +/* GL_EXT_texture_filter_anisotropic */
3.1516 +#ifndef GL_EXT_texture_filter_anisotropic
3.1517 +#define GL_EXT_texture_filter_anisotropic 1
3.1518 +#endif
3.1519 +
3.1520 +/* GL_EXT_texture_format_BGRA8888 */
3.1521 +#ifndef GL_EXT_texture_format_BGRA8888
3.1522 +#define GL_EXT_texture_format_BGRA8888 1
3.1523 +#endif
3.1524 +
3.1525 +/* GL_EXT_texture_rg */
3.1526 +#ifndef GL_EXT_texture_rg
3.1527 +#define GL_EXT_texture_rg 1
3.1528 +#endif
3.1529 +
3.1530 +/* GL_EXT_texture_storage */
3.1531 +#ifndef GL_EXT_texture_storage
3.1532 +#define GL_EXT_texture_storage 1
3.1533 +#ifdef GL_GLEXT_PROTOTYPES
3.1534 +GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
3.1535 +GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
3.1536 +GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
3.1537 +GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
3.1538 +GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
3.1539 +GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
3.1540 +#endif
3.1541 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
3.1542 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
3.1543 +typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
3.1544 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
3.1545 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
3.1546 +typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
3.1547 +#endif
3.1548 +
3.1549 +/* GL_EXT_texture_type_2_10_10_10_REV */
3.1550 +#ifndef GL_EXT_texture_type_2_10_10_10_REV
3.1551 +#define GL_EXT_texture_type_2_10_10_10_REV 1
3.1552 +#endif
3.1553 +
3.1554 +/* GL_EXT_unpack_subimage */
3.1555 +#ifndef GL_EXT_unpack_subimage
3.1556 +#define GL_EXT_unpack_subimage 1
3.1557 +#endif
3.1558 +
3.1559 +/*------------------------------------------------------------------------*
3.1560 + * DMP extension functions
3.1561 + *------------------------------------------------------------------------*/
3.1562 +
3.1563 +/* GL_DMP_shader_binary */
3.1564 +#ifndef GL_DMP_shader_binary
3.1565 +#define GL_DMP_shader_binary 1
3.1566 +#endif
3.1567 +
3.1568 +/*------------------------------------------------------------------------*
3.1569 + * FJ extension functions
3.1570 + *------------------------------------------------------------------------*/
3.1571 +
3.1572 +/* GL_FJ_shader_binary_GCCSO */
3.1573 +#ifndef GL_FJ_shader_binary_GCCSO
3.1574 +#define GL_FJ_shader_binary_GCCSO 1
3.1575 +#endif
3.1576 +
3.1577 +/*------------------------------------------------------------------------*
3.1578 + * IMG extension functions
3.1579 + *------------------------------------------------------------------------*/
3.1580 +
3.1581 +/* GL_IMG_program_binary */
3.1582 +#ifndef GL_IMG_program_binary
3.1583 +#define GL_IMG_program_binary 1
3.1584 +#endif
3.1585 +
3.1586 +/* GL_IMG_read_format */
3.1587 +#ifndef GL_IMG_read_format
3.1588 +#define GL_IMG_read_format 1
3.1589 +#endif
3.1590 +
3.1591 +/* GL_IMG_shader_binary */
3.1592 +#ifndef GL_IMG_shader_binary
3.1593 +#define GL_IMG_shader_binary 1
3.1594 +#endif
3.1595 +
3.1596 +/* GL_IMG_texture_compression_pvrtc */
3.1597 +#ifndef GL_IMG_texture_compression_pvrtc
3.1598 +#define GL_IMG_texture_compression_pvrtc 1
3.1599 +#endif
3.1600 +
3.1601 +/* GL_IMG_multisampled_render_to_texture */
3.1602 +#ifndef GL_IMG_multisampled_render_to_texture
3.1603 +#define GL_IMG_multisampled_render_to_texture 1
3.1604 +#ifdef GL_GLEXT_PROTOTYPES
3.1605 +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
3.1606 +GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
3.1607 +#endif
3.1608 +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
3.1609 +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
3.1610 +#endif
3.1611 +
3.1612 +/*------------------------------------------------------------------------*
3.1613 + * NV extension functions
3.1614 + *------------------------------------------------------------------------*/
3.1615 +
3.1616 +/* GL_NV_coverage_sample */
3.1617 +#ifndef GL_NV_coverage_sample
3.1618 +#define GL_NV_coverage_sample 1
3.1619 +#ifdef GL_GLEXT_PROTOTYPES
3.1620 +GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
3.1621 +GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
3.1622 +#endif
3.1623 +typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
3.1624 +typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
3.1625 +#endif
3.1626 +
3.1627 +/* GL_NV_depth_nonlinear */
3.1628 +#ifndef GL_NV_depth_nonlinear
3.1629 +#define GL_NV_depth_nonlinear 1
3.1630 +#endif
3.1631 +
3.1632 +/* GL_NV_draw_buffers */
3.1633 +#ifndef GL_NV_draw_buffers
3.1634 +#define GL_NV_draw_buffers 1
3.1635 +#ifdef GL_GLEXT_PROTOTYPES
3.1636 +GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs);
3.1637 +#endif
3.1638 +typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs);
3.1639 +#endif
3.1640 +
3.1641 +/* GL_NV_fbo_color_attachments */
3.1642 +#ifndef GL_NV_fbo_color_attachments
3.1643 +#define GL_NV_fbo_color_attachments 1
3.1644 +#endif
3.1645 +
3.1646 +/* GL_NV_fence */
3.1647 +#ifndef GL_NV_fence
3.1648 +#define GL_NV_fence 1
3.1649 +#ifdef GL_GLEXT_PROTOTYPES
3.1650 +GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
3.1651 +GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
3.1652 +GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint);
3.1653 +GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint);
3.1654 +GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
3.1655 +GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint);
3.1656 +GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
3.1657 +#endif
3.1658 +typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
3.1659 +typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
3.1660 +typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
3.1661 +typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
3.1662 +typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
3.1663 +typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
3.1664 +typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
3.1665 +#endif
3.1666 +
3.1667 +/* GL_NV_read_buffer */
3.1668 +#ifndef GL_NV_read_buffer
3.1669 +#define GL_NV_read_buffer 1
3.1670 +#ifdef GL_GLEXT_PROTOTYPES
3.1671 +GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode);
3.1672 +#endif
3.1673 +typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
3.1674 +#endif
3.1675 +
3.1676 +/* GL_NV_read_buffer_front */
3.1677 +#ifndef GL_NV_read_buffer_front
3.1678 +#define GL_NV_read_buffer_front 1
3.1679 +#endif
3.1680 +
3.1681 +/* GL_NV_read_depth */
3.1682 +#ifndef GL_NV_read_depth
3.1683 +#define GL_NV_read_depth 1
3.1684 +#endif
3.1685 +
3.1686 +/* GL_NV_read_depth_stencil */
3.1687 +#ifndef GL_NV_read_depth_stencil
3.1688 +#define GL_NV_read_depth_stencil 1
3.1689 +#endif
3.1690 +
3.1691 +/* GL_NV_read_stencil */
3.1692 +#ifndef GL_NV_read_stencil
3.1693 +#define GL_NV_read_stencil 1
3.1694 +#endif
3.1695 +
3.1696 +/* GL_NV_texture_compression_s3tc_update */
3.1697 +#ifndef GL_NV_texture_compression_s3tc_update
3.1698 +#define GL_NV_texture_compression_s3tc_update 1
3.1699 +#endif
3.1700 +
3.1701 +/* GL_NV_texture_npot_2D_mipmap */
3.1702 +#ifndef GL_NV_texture_npot_2D_mipmap
3.1703 +#define GL_NV_texture_npot_2D_mipmap 1
3.1704 +#endif
3.1705 +
3.1706 +/*------------------------------------------------------------------------*
3.1707 + * QCOM extension functions
3.1708 + *------------------------------------------------------------------------*/
3.1709 +
3.1710 +/* GL_QCOM_alpha_test */
3.1711 +#ifndef GL_QCOM_alpha_test
3.1712 +#define GL_QCOM_alpha_test 1
3.1713 +#ifdef GL_GLEXT_PROTOTYPES
3.1714 +GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref);
3.1715 +#endif
3.1716 +typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref);
3.1717 +#endif
3.1718 +
3.1719 +/* GL_QCOM_binning_control */
3.1720 +#ifndef GL_QCOM_binning_control
3.1721 +#define GL_QCOM_binning_control 1
3.1722 +#endif
3.1723 +
3.1724 +/* GL_QCOM_driver_control */
3.1725 +#ifndef GL_QCOM_driver_control
3.1726 +#define GL_QCOM_driver_control 1
3.1727 +#ifdef GL_GLEXT_PROTOTYPES
3.1728 +GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
3.1729 +GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
3.1730 +GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
3.1731 +GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
3.1732 +#endif
3.1733 +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
3.1734 +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
3.1735 +typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
3.1736 +typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
3.1737 +#endif
3.1738 +
3.1739 +/* GL_QCOM_extended_get */
3.1740 +#ifndef GL_QCOM_extended_get
3.1741 +#define GL_QCOM_extended_get 1
3.1742 +#ifdef GL_GLEXT_PROTOTYPES
3.1743 +GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
3.1744 +GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
3.1745 +GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
3.1746 +GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
3.1747 +GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
3.1748 +GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
3.1749 +GL_APICALL void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
3.1750 +GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
3.1751 +#endif
3.1752 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
3.1753 +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
3.1754 +typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
3.1755 +typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
3.1756 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
3.1757 +typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
3.1758 +typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
3.1759 +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
3.1760 +#endif
3.1761 +
3.1762 +/* GL_QCOM_extended_get2 */
3.1763 +#ifndef GL_QCOM_extended_get2
3.1764 +#define GL_QCOM_extended_get2 1
3.1765 +#ifdef GL_GLEXT_PROTOTYPES
3.1766 +GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
3.1767 +GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
3.1768 +GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
3.1769 +GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
3.1770 +#endif
3.1771 +typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
3.1772 +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
3.1773 +typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
3.1774 +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
3.1775 +#endif
3.1776 +
3.1777 +/* GL_QCOM_perfmon_global_mode */
3.1778 +#ifndef GL_QCOM_perfmon_global_mode
3.1779 +#define GL_QCOM_perfmon_global_mode 1
3.1780 +#endif
3.1781 +
3.1782 +/* GL_QCOM_writeonly_rendering */
3.1783 +#ifndef GL_QCOM_writeonly_rendering
3.1784 +#define GL_QCOM_writeonly_rendering 1
3.1785 +#endif
3.1786 +
3.1787 +/* GL_QCOM_tiled_rendering */
3.1788 +#ifndef GL_QCOM_tiled_rendering
3.1789 +#define GL_QCOM_tiled_rendering 1
3.1790 +#ifdef GL_GLEXT_PROTOTYPES
3.1791 +GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
3.1792 +GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
3.1793 +#endif
3.1794 +typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
3.1795 +typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
3.1796 +#endif
3.1797 +
3.1798 +/*------------------------------------------------------------------------*
3.1799 + * VIV extension tokens
3.1800 + *------------------------------------------------------------------------*/
3.1801 +
3.1802 +/* GL_VIV_shader_binary */
3.1803 +#ifndef GL_VIV_shader_binary
3.1804 +#define GL_VIV_shader_binary 1
3.1805 +#endif
3.1806 +
3.1807 +#ifdef __cplusplus
3.1808 +}
3.1809 +#endif
3.1810 +
3.1811 +#endif /* __gl2ext_h_ */
3.1812 +
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/include/SDL_opengles2_gl2platform.h Wed Jun 04 01:27:13 2014 -0700
4.3 @@ -0,0 +1,31 @@
4.4 +#ifndef __gl2platform_h_
4.5 +#define __gl2platform_h_
4.6 +
4.7 +/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
4.8 +
4.9 +/*
4.10 + * This document is licensed under the SGI Free Software B License Version
4.11 + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
4.12 + */
4.13 +
4.14 +/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
4.15 + *
4.16 + * Adopters may modify khrplatform.h and this file to suit their platform.
4.17 + * You are encouraged to submit all modifications to the Khronos group so that
4.18 + * they can be included in future versions of this file. Please submit changes
4.19 + * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
4.20 + * by filing a bug against product "OpenGL-ES" component "Registry".
4.21 + */
4.22 +
4.23 +/*#include <KHR/khrplatform.h>*/
4.24 +
4.25 +#ifndef GL_APICALL
4.26 +#define GL_APICALL KHRONOS_APICALL
4.27 +#endif
4.28 +
4.29 +#ifndef GL_APIENTRY
4.30 +#define GL_APIENTRY KHRONOS_APIENTRY
4.31 +#endif
4.32 +
4.33 +#endif /* __gl2platform_h_ */
4.34 +
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/include/SDL_opengles2_khrplatform.h Wed Jun 04 01:27:13 2014 -0700
5.3 @@ -0,0 +1,283 @@
5.4 +#ifndef __khrplatform_h_
5.5 +#define __khrplatform_h_
5.6 +
5.7 +/*
5.8 +** Copyright (c) 2008-2009 The Khronos Group Inc.
5.9 +**
5.10 +** Permission is hereby granted, free of charge, to any person obtaining a
5.11 +** copy of this software and/or associated documentation files (the
5.12 +** "Materials"), to deal in the Materials without restriction, including
5.13 +** without limitation the rights to use, copy, modify, merge, publish,
5.14 +** distribute, sublicense, and/or sell copies of the Materials, and to
5.15 +** permit persons to whom the Materials are furnished to do so, subject to
5.16 +** the following conditions:
5.17 +**
5.18 +** The above copyright notice and this permission notice shall be included
5.19 +** in all copies or substantial portions of the Materials.
5.20 +**
5.21 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
5.22 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
5.23 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
5.24 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
5.25 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
5.26 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
5.27 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
5.28 +*/
5.29 +
5.30 +/* Khronos platform-specific types and definitions.
5.31 +*
5.32 +* $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
5.33 +*
5.34 +* Adopters may modify this file to suit their platform. Adopters are
5.35 +* encouraged to submit platform specific modifications to the Khronos
5.36 +* group so that they can be included in future versions of this file.
5.37 +* Please submit changes by sending them to the public Khronos Bugzilla
5.38 +* (http://khronos.org/bugzilla) by filing a bug against product
5.39 +* "Khronos (general)" component "Registry".
5.40 +*
5.41 +* A predefined template which fills in some of the bug fields can be
5.42 +* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
5.43 +* must create a Bugzilla login first.
5.44 +*
5.45 +*
5.46 +* See the Implementer's Guidelines for information about where this file
5.47 +* should be located on your system and for more details of its use:
5.48 +* http://www.khronos.org/registry/implementers_guide.pdf
5.49 +*
5.50 +* This file should be included as
5.51 +* #include <KHR/khrplatform.h>
5.52 +* by Khronos client API header files that use its types and defines.
5.53 +*
5.54 +* The types in khrplatform.h should only be used to define API-specific types.
5.55 +*
5.56 +* Types defined in khrplatform.h:
5.57 +* khronos_int8_t signed 8 bit
5.58 +* khronos_uint8_t unsigned 8 bit
5.59 +* khronos_int16_t signed 16 bit
5.60 +* khronos_uint16_t unsigned 16 bit
5.61 +* khronos_int32_t signed 32 bit
5.62 +* khronos_uint32_t unsigned 32 bit
5.63 +* khronos_int64_t signed 64 bit
5.64 +* khronos_uint64_t unsigned 64 bit
5.65 +* khronos_intptr_t signed same number of bits as a pointer
5.66 +* khronos_uintptr_t unsigned same number of bits as a pointer
5.67 +* khronos_ssize_t signed size
5.68 +* khronos_usize_t unsigned size
5.69 +* khronos_float_t signed 32 bit floating point
5.70 +* khronos_time_ns_t unsigned 64 bit time in nanoseconds
5.71 +* khronos_utime_nanoseconds_t unsigned time interval or absolute time in
5.72 +* nanoseconds
5.73 +* khronos_stime_nanoseconds_t signed time interval in nanoseconds
5.74 +* khronos_boolean_enum_t enumerated boolean type. This should
5.75 +* only be used as a base type when a client API's boolean type is
5.76 +* an enum. Client APIs which use an integer or other type for
5.77 +* booleans cannot use this as the base type for their boolean.
5.78 +*
5.79 +* Tokens defined in khrplatform.h:
5.80 +*
5.81 +* KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
5.82 +*
5.83 +* KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
5.84 +* KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
5.85 +*
5.86 +* Calling convention macros defined in this file:
5.87 +* KHRONOS_APICALL
5.88 +* KHRONOS_APIENTRY
5.89 +* KHRONOS_APIATTRIBUTES
5.90 +*
5.91 +* These may be used in function prototypes as:
5.92 +*
5.93 +* KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
5.94 +* int arg1,
5.95 +* int arg2) KHRONOS_APIATTRIBUTES;
5.96 +*/
5.97 +
5.98 +/*-------------------------------------------------------------------------
5.99 +* Definition of KHRONOS_APICALL
5.100 +*-------------------------------------------------------------------------
5.101 +* This precedes the return type of the function in the function prototype.
5.102 +*/
5.103 +#if defined(_WIN32) && !defined(__SCITECH_SNAP__)
5.104 +# define KHRONOS_APICALL __declspec(dllimport)
5.105 +#elif defined (__SYMBIAN32__)
5.106 +# define KHRONOS_APICALL IMPORT_C
5.107 +#else
5.108 +# define KHRONOS_APICALL
5.109 +#endif
5.110 +
5.111 +/*-------------------------------------------------------------------------
5.112 +* Definition of KHRONOS_APIENTRY
5.113 +*-------------------------------------------------------------------------
5.114 +* This follows the return type of the function and precedes the function
5.115 +* name in the function prototype.
5.116 +*/
5.117 +#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
5.118 +/* Win32 but not WinCE */
5.119 +# define KHRONOS_APIENTRY __stdcall
5.120 +#else
5.121 +# define KHRONOS_APIENTRY
5.122 +#endif
5.123 +
5.124 +/*-------------------------------------------------------------------------
5.125 +* Definition of KHRONOS_APIATTRIBUTES
5.126 +*-------------------------------------------------------------------------
5.127 +* This follows the closing parenthesis of the function prototype arguments.
5.128 +*/
5.129 +#if defined (__ARMCC_2__)
5.130 +#define KHRONOS_APIATTRIBUTES __softfp
5.131 +#else
5.132 +#define KHRONOS_APIATTRIBUTES
5.133 +#endif
5.134 +
5.135 +/*-------------------------------------------------------------------------
5.136 +* basic type definitions
5.137 +*-----------------------------------------------------------------------*/
5.138 +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
5.139 +
5.140 +
5.141 +/*
5.142 +* Using <stdint.h>
5.143 +*/
5.144 +#include <stdint.h>
5.145 +typedef int32_t khronos_int32_t;
5.146 +typedef uint32_t khronos_uint32_t;
5.147 +typedef int64_t khronos_int64_t;
5.148 +typedef uint64_t khronos_uint64_t;
5.149 +#define KHRONOS_SUPPORT_INT64 1
5.150 +#define KHRONOS_SUPPORT_FLOAT 1
5.151 +
5.152 +#elif defined(__VMS ) || defined(__sgi)
5.153 +
5.154 +/*
5.155 +* Using <inttypes.h>
5.156 +*/
5.157 +#include <inttypes.h>
5.158 +typedef int32_t khronos_int32_t;
5.159 +typedef uint32_t khronos_uint32_t;
5.160 +typedef int64_t khronos_int64_t;
5.161 +typedef uint64_t khronos_uint64_t;
5.162 +#define KHRONOS_SUPPORT_INT64 1
5.163 +#define KHRONOS_SUPPORT_FLOAT 1
5.164 +
5.165 +#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
5.166 +
5.167 +/*
5.168 +* Win32
5.169 +*/
5.170 +typedef __int32 khronos_int32_t;
5.171 +typedef unsigned __int32 khronos_uint32_t;
5.172 +typedef __int64 khronos_int64_t;
5.173 +typedef unsigned __int64 khronos_uint64_t;
5.174 +#define KHRONOS_SUPPORT_INT64 1
5.175 +#define KHRONOS_SUPPORT_FLOAT 1
5.176 +
5.177 +#elif defined(__sun__) || defined(__digital__)
5.178 +
5.179 +/*
5.180 +* Sun or Digital
5.181 +*/
5.182 +typedef int khronos_int32_t;
5.183 +typedef unsigned int khronos_uint32_t;
5.184 +#if defined(__arch64__) || defined(_LP64)
5.185 +typedef long int khronos_int64_t;
5.186 +typedef unsigned long int khronos_uint64_t;
5.187 +#else
5.188 +typedef long long int khronos_int64_t;
5.189 +typedef unsigned long long int khronos_uint64_t;
5.190 +#endif /* __arch64__ */
5.191 +#define KHRONOS_SUPPORT_INT64 1
5.192 +#define KHRONOS_SUPPORT_FLOAT 1
5.193 +
5.194 +#elif 0
5.195 +
5.196 +/*
5.197 +* Hypothetical platform with no float or int64 support
5.198 +*/
5.199 +typedef int khronos_int32_t;
5.200 +typedef unsigned int khronos_uint32_t;
5.201 +#define KHRONOS_SUPPORT_INT64 0
5.202 +#define KHRONOS_SUPPORT_FLOAT 0
5.203 +
5.204 +#else
5.205 +
5.206 +/*
5.207 +* Generic fallback
5.208 +*/
5.209 +#include <stdint.h>
5.210 +typedef int32_t khronos_int32_t;
5.211 +typedef uint32_t khronos_uint32_t;
5.212 +typedef int64_t khronos_int64_t;
5.213 +typedef uint64_t khronos_uint64_t;
5.214 +#define KHRONOS_SUPPORT_INT64 1
5.215 +#define KHRONOS_SUPPORT_FLOAT 1
5.216 +
5.217 +#endif
5.218 +
5.219 +
5.220 +/*
5.221 +* Types that are (so far) the same on all platforms
5.222 +*/
5.223 +typedef signed char khronos_int8_t;
5.224 +typedef unsigned char khronos_uint8_t;
5.225 +typedef signed short int khronos_int16_t;
5.226 +typedef unsigned short int khronos_uint16_t;
5.227 +
5.228 +/*
5.229 +* Types that differ between LLP64 and LP64 architectures - in LLP64,
5.230 +* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
5.231 +* to be the only LLP64 architecture in current use.
5.232 +*/
5.233 +#ifdef _WIN64
5.234 +typedef signed long long int khronos_intptr_t;
5.235 +typedef unsigned long long int khronos_uintptr_t;
5.236 +typedef signed long long int khronos_ssize_t;
5.237 +typedef unsigned long long int khronos_usize_t;
5.238 +#else
5.239 +typedef signed long int khronos_intptr_t;
5.240 +typedef unsigned long int khronos_uintptr_t;
5.241 +typedef signed long int khronos_ssize_t;
5.242 +typedef unsigned long int khronos_usize_t;
5.243 +#endif
5.244 +
5.245 +#if KHRONOS_SUPPORT_FLOAT
5.246 +/*
5.247 +* Float type
5.248 +*/
5.249 +typedef float khronos_float_t;
5.250 +#endif
5.251 +
5.252 +#if KHRONOS_SUPPORT_INT64
5.253 +/* Time types
5.254 +*
5.255 +* These types can be used to represent a time interval in nanoseconds or
5.256 +* an absolute Unadjusted System Time. Unadjusted System Time is the number
5.257 +* of nanoseconds since some arbitrary system event (e.g. since the last
5.258 +* time the system booted). The Unadjusted System Time is an unsigned
5.259 +* 64 bit value that wraps back to 0 every 584 years. Time intervals
5.260 +* may be either signed or unsigned.
5.261 +*/
5.262 +typedef khronos_uint64_t khronos_utime_nanoseconds_t;
5.263 +typedef khronos_int64_t khronos_stime_nanoseconds_t;
5.264 +#endif
5.265 +
5.266 +/*
5.267 +* Dummy value used to pad enum types to 32 bits.
5.268 +*/
5.269 +#ifndef KHRONOS_MAX_ENUM
5.270 +#define KHRONOS_MAX_ENUM 0x7FFFFFFF
5.271 +#endif
5.272 +
5.273 +/*
5.274 +* Enumerated boolean type
5.275 +*
5.276 +* Values other than zero should be considered to be true. Therefore
5.277 +* comparisons should not be made against KHRONOS_TRUE.
5.278 +*/
5.279 +typedef enum {
5.280 + KHRONOS_FALSE = 0,
5.281 + KHRONOS_TRUE = 1,
5.282 + KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
5.283 +} khronos_boolean_enum_t;
5.284 +
5.285 +#endif /* __khrplatform_h_ */
5.286 +