1d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#ifndef __gl2_h_
2d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define __gl2_h_
3d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
4958f9006685c8b477fe76f44ddce59b8bfae8315Mathias Agopian/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
5d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
6d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#include <GLES2/gl2platform.h>
7d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
8d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#ifdef __cplusplus
9d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopianextern "C" {
10d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#endif
11d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
12d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*
13d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian * This document is licensed under the SGI Free Software B License Version
14d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
15d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian */
16d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
17d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*-------------------------------------------------------------------------
18d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian * Data type definitions
19d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian *-----------------------------------------------------------------------*/
20d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
21d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef void             GLvoid;
22958f9006685c8b477fe76f44ddce59b8bfae8315Mathias Agopiantypedef char             GLchar;
23d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef unsigned int     GLenum;
24d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef unsigned char    GLboolean;
25d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef unsigned int     GLbitfield;
26d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_int8_t   GLbyte;
27d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef short            GLshort;
28d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef int              GLint;
29d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef int              GLsizei;
30d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_uint8_t  GLubyte;
31d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef unsigned short   GLushort;
32d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef unsigned int     GLuint;
33d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_float_t  GLfloat;
34d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_float_t  GLclampf;
35d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_int32_t  GLfixed;
36d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
37d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* GL types for handling large vertex buffer objects */
38d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_intptr_t GLintptr;
39d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopiantypedef khronos_ssize_t  GLsizeiptr;
40d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
41d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* OpenGL ES core versions */
42d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ES_VERSION_2_0                 1
43d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
44d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* ClearBufferMask */
45d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_BUFFER_BIT               0x00000100
46d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BUFFER_BIT             0x00000400
47d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COLOR_BUFFER_BIT               0x00004000
48d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
49d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Boolean */
50d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FALSE                          0
51d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TRUE                           1
52d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
53d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* BeginMode */
54d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_POINTS                         0x0000
55d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINES                          0x0001
56d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINE_LOOP                      0x0002
57d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINE_STRIP                     0x0003
58d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TRIANGLES                      0x0004
59d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TRIANGLE_STRIP                 0x0005
60d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TRIANGLE_FAN                   0x0006
61d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
62d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* AlphaFunction (not supported in ES20) */
63d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_NEVER */
64d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_LESS */
65d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_EQUAL */
66d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_LEQUAL */
67d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_GREATER */
68d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_NOTEQUAL */
69d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_GEQUAL */
70d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ALWAYS */
71d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
72d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* BlendingFactorDest */
73d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ZERO                           0
74d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE                            1
75d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SRC_COLOR                      0x0300
76d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_SRC_COLOR            0x0301
77d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SRC_ALPHA                      0x0302
78d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_SRC_ALPHA            0x0303
79d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DST_ALPHA                      0x0304
80d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_DST_ALPHA            0x0305
81d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
82d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* BlendingFactorSrc */
83d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ZERO */
84d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ONE */
85d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DST_COLOR                      0x0306
86d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_DST_COLOR            0x0307
87d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SRC_ALPHA_SATURATE             0x0308
88d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_SRC_ALPHA */
89d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ONE_MINUS_SRC_ALPHA */
90d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_DST_ALPHA */
91d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ONE_MINUS_DST_ALPHA */
92d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
93d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* BlendEquationSeparate */
94d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FUNC_ADD                       0x8006
95d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_EQUATION                 0x8009
96d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_EQUATION_RGB             0x8009    /* same as BLEND_EQUATION */
97d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_EQUATION_ALPHA           0x883D
98d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
99d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* BlendSubtract */
100d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FUNC_SUBTRACT                  0x800A
101d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FUNC_REVERSE_SUBTRACT          0x800B
102d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
103d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Separate Blend Functions */
104d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_DST_RGB                  0x80C8
105d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_SRC_RGB                  0x80C9
106d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_DST_ALPHA                0x80CA
107d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_SRC_ALPHA                0x80CB
108d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CONSTANT_COLOR                 0x8001
109d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_CONSTANT_COLOR       0x8002
110d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CONSTANT_ALPHA                 0x8003
111d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ONE_MINUS_CONSTANT_ALPHA       0x8004
112d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND_COLOR                    0x8005
113d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
114d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Buffer Objects */
115d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ARRAY_BUFFER                   0x8892
116d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ELEMENT_ARRAY_BUFFER           0x8893
117d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ARRAY_BUFFER_BINDING           0x8894
118d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ELEMENT_ARRAY_BUFFER_BINDING   0x8895
119d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
120d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STREAM_DRAW                    0x88E0
121d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STATIC_DRAW                    0x88E4
122d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DYNAMIC_DRAW                   0x88E8
123d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
124d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BUFFER_SIZE                    0x8764
125d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BUFFER_USAGE                   0x8765
126d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
127d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CURRENT_VERTEX_ATTRIB          0x8626
128d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
129d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* CullFaceMode */
130d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRONT                          0x0404
131d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BACK                           0x0405
132d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRONT_AND_BACK                 0x0408
133d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
134d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* DepthFunction */
135d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_NEVER */
136d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_LESS */
137d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_EQUAL */
138d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_LEQUAL */
139d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_GREATER */
140d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_NOTEQUAL */
141d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_GEQUAL */
142d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ALWAYS */
143d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
144d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* EnableCap */
145d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_2D                     0x0DE1
146d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CULL_FACE                      0x0B44
147d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLEND                          0x0BE2
148d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DITHER                         0x0BD0
149d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_TEST                   0x0B90
150d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_TEST                     0x0B71
151d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SCISSOR_TEST                   0x0C11
152d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_POLYGON_OFFSET_FILL            0x8037
153d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLE_ALPHA_TO_COVERAGE       0x809E
154d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLE_COVERAGE                0x80A0
155d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
156d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* ErrorCode */
157d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NO_ERROR                       0
158d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INVALID_ENUM                   0x0500
159d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INVALID_VALUE                  0x0501
160d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INVALID_OPERATION              0x0502
161d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_OUT_OF_MEMORY                  0x0505
162d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
163d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* FrontFaceDirection */
164d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CW                             0x0900
165d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CCW                            0x0901
166d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
167d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* GetPName */
168d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINE_WIDTH                     0x0B21
169d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ALIASED_POINT_SIZE_RANGE       0x846D
170d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ALIASED_LINE_WIDTH_RANGE       0x846E
171d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CULL_FACE_MODE                 0x0B45
172d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRONT_FACE                     0x0B46
173d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_RANGE                    0x0B70
174d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_WRITEMASK                0x0B72
175d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_CLEAR_VALUE              0x0B73
176d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_FUNC                     0x0B74
177d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_CLEAR_VALUE            0x0B91
178d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_FUNC                   0x0B92
179d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_FAIL                   0x0B94
180d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_PASS_DEPTH_FAIL        0x0B95
181d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_PASS_DEPTH_PASS        0x0B96
182d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_REF                    0x0B97
183d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_VALUE_MASK             0x0B93
184d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_WRITEMASK              0x0B98
185d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_FUNC              0x8800
186d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_FAIL              0x8801
187d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_PASS_DEPTH_FAIL   0x8802
188d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_PASS_DEPTH_PASS   0x8803
189d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_REF               0x8CA3
190d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_VALUE_MASK        0x8CA4
191d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BACK_WRITEMASK         0x8CA5
192d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VIEWPORT                       0x0BA2
193d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SCISSOR_BOX                    0x0C10
194d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_SCISSOR_TEST */
195d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COLOR_CLEAR_VALUE              0x0C22
196d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COLOR_WRITEMASK                0x0C23
197d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNPACK_ALIGNMENT               0x0CF5
198d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_PACK_ALIGNMENT                 0x0D05
199d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_TEXTURE_SIZE               0x0D33
200d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_VIEWPORT_DIMS              0x0D3A
201d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SUBPIXEL_BITS                  0x0D50
202d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RED_BITS                       0x0D52
203d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_GREEN_BITS                     0x0D53
204d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BLUE_BITS                      0x0D54
205d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ALPHA_BITS                     0x0D55
206d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_BITS                     0x0D56
207d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_BITS                   0x0D57
208d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_POLYGON_OFFSET_UNITS           0x2A00
209d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_POLYGON_OFFSET_FILL */
210d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_POLYGON_OFFSET_FACTOR          0x8038
211d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_BINDING_2D             0x8069
212d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLE_BUFFERS                 0x80A8
213d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLES                        0x80A9
214d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLE_COVERAGE_VALUE          0x80AA
215d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLE_COVERAGE_INVERT         0x80AB
216d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
217d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* GetTextureParameter */
218d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_TEXTURE_MAG_FILTER */
219d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_TEXTURE_MIN_FILTER */
220d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_TEXTURE_WRAP_S */
221d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_TEXTURE_WRAP_T */
222d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
223d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
224d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COMPRESSED_TEXTURE_FORMATS     0x86A3
225d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
226d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* HintMode */
227d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DONT_CARE                      0x1100
228d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FASTEST                        0x1101
229d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NICEST                         0x1102
230d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
231d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* HintTarget */
232d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_GENERATE_MIPMAP_HINT            0x8192
233d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
234d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* DataType */
235d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BYTE                           0x1400
236d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_BYTE                  0x1401
237d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHORT                          0x1402
238d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_SHORT                 0x1403
239d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INT                            0x1404
240d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_INT                   0x1405
241d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT                          0x1406
242d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FIXED                          0x140C
243d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
244d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* PixelFormat */
245d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_COMPONENT                0x1902
246d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ALPHA                          0x1906
247d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RGB                            0x1907
248d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RGBA                           0x1908
249d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LUMINANCE                      0x1909
250d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LUMINANCE_ALPHA                0x190A
251d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
252d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* PixelType */
253d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_UNSIGNED_BYTE */
254d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_SHORT_4_4_4_4         0x8033
255d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_SHORT_5_5_5_1         0x8034
256d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_UNSIGNED_SHORT_5_6_5           0x8363
257d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
258d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Shaders */
259d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAGMENT_SHADER                  0x8B30
260d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_SHADER                    0x8B31
261d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_VERTEX_ATTRIBS               0x8869
262d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_VERTEX_UNIFORM_VECTORS       0x8DFB
263d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_VARYING_VECTORS              0x8DFC
264d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
265d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS   0x8B4C
266d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_TEXTURE_IMAGE_UNITS          0x8872
267d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_FRAGMENT_UNIFORM_VECTORS     0x8DFD
268d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHADER_TYPE                      0x8B4F
269d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DELETE_STATUS                    0x8B80
270d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINK_STATUS                      0x8B82
271d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VALIDATE_STATUS                  0x8B83
272d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ATTACHED_SHADERS                 0x8B85
273d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ACTIVE_UNIFORMS                  0x8B86
274d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ACTIVE_UNIFORM_MAX_LENGTH        0x8B87
275d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ACTIVE_ATTRIBUTES                0x8B89
276d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH      0x8B8A
277d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHADING_LANGUAGE_VERSION         0x8B8C
278d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CURRENT_PROGRAM                  0x8B8D
279d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
280d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* StencilFunction */
281d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NEVER                          0x0200
282d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LESS                           0x0201
283d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_EQUAL                          0x0202
284d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LEQUAL                         0x0203
285d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_GREATER                        0x0204
286d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NOTEQUAL                       0x0205
287d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_GEQUAL                         0x0206
288d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ALWAYS                         0x0207
289d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
290d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* StencilOp */
291d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_ZERO */
292d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_KEEP                           0x1E00
293d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_REPLACE                        0x1E01
294d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INCR                           0x1E02
295d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DECR                           0x1E03
296d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INVERT                         0x150A
297d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INCR_WRAP                      0x8507
298d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DECR_WRAP                      0x8508
299d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
300d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* StringName */
301d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VENDOR                         0x1F00
302d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERER                       0x1F01
303d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERSION                        0x1F02
304d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_EXTENSIONS                     0x1F03
305d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
306d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureMagFilter */
307d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NEAREST                        0x2600
308d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINEAR                         0x2601
309d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
310d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureMinFilter */
311d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_NEAREST */
312d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_LINEAR */
313d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NEAREST_MIPMAP_NEAREST         0x2700
314d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINEAR_MIPMAP_NEAREST          0x2701
315d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NEAREST_MIPMAP_LINEAR          0x2702
316d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LINEAR_MIPMAP_LINEAR           0x2703
317d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
318d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureParameterName */
319d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_MAG_FILTER             0x2800
320d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_MIN_FILTER             0x2801
321d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_WRAP_S                 0x2802
322d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_WRAP_T                 0x2803
323d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
324d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureTarget */
325d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*      GL_TEXTURE_2D */
326d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE                        0x1702
327d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
328d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP               0x8513
329d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_BINDING_CUBE_MAP       0x8514
330d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_POSITIVE_X    0x8515
331d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X    0x8516
332d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y    0x8517
333d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y    0x8518
334d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z    0x8519
335d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z    0x851A
336d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_CUBE_MAP_TEXTURE_SIZE      0x851C
337d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
338d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureUnit */
339d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE0                       0x84C0
340d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE1                       0x84C1
341d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE2                       0x84C2
342d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE3                       0x84C3
343d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE4                       0x84C4
344d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE5                       0x84C5
345d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE6                       0x84C6
346d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE7                       0x84C7
347d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE8                       0x84C8
348d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE9                       0x84C9
349d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE10                      0x84CA
350d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE11                      0x84CB
351d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE12                      0x84CC
352d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE13                      0x84CD
353d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE14                      0x84CE
354d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE15                      0x84CF
355d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE16                      0x84D0
356d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE17                      0x84D1
357d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE18                      0x84D2
358d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE19                      0x84D3
359d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE20                      0x84D4
360d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE21                      0x84D5
361d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE22                      0x84D6
362d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE23                      0x84D7
363d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE24                      0x84D8
364d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE25                      0x84D9
365d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE26                      0x84DA
366d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE27                      0x84DB
367d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE28                      0x84DC
368d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE29                      0x84DD
369d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE30                      0x84DE
370d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_TEXTURE31                      0x84DF
371d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_ACTIVE_TEXTURE                 0x84E0
372d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
373d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* TextureWrapMode */
374d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_REPEAT                         0x2901
375d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_CLAMP_TO_EDGE                  0x812F
376d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MIRRORED_REPEAT                0x8370
377d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
378d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Uniform Types */
379d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_VEC2                     0x8B50
380d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_VEC3                     0x8B51
381d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_VEC4                     0x8B52
382d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INT_VEC2                       0x8B53
383d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INT_VEC3                       0x8B54
384d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INT_VEC4                       0x8B55
385d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BOOL                           0x8B56
386d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BOOL_VEC2                      0x8B57
387d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BOOL_VEC3                      0x8B58
388d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_BOOL_VEC4                      0x8B59
389d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_MAT2                     0x8B5A
390d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_MAT3                     0x8B5B
391d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FLOAT_MAT4                     0x8B5C
392d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLER_2D                     0x8B5E
393d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SAMPLER_CUBE                   0x8B60
394d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
395d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Vertex Arrays */
396d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_ENABLED        0x8622
397d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_SIZE           0x8623
398d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_STRIDE         0x8624
399d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_TYPE           0x8625
400d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED     0x886A
401d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_POINTER        0x8645
402d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
403d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
404d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Read Format */
405d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_IMPLEMENTATION_COLOR_READ_TYPE   0x8B9A
406d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
407d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
408d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Shader Source */
409d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COMPILE_STATUS                 0x8B81
410d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INFO_LOG_LENGTH                0x8B84
411d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHADER_SOURCE_LENGTH           0x8B88
412d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHADER_COMPILER                0x8DFA
413d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
414d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Shader Binary */
415d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_SHADER_BINARY_FORMATS          0x8DF8
416d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NUM_SHADER_BINARY_FORMATS      0x8DF9
417d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
418d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Shader Precision-Specified Types */
419d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LOW_FLOAT                      0x8DF0
420d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MEDIUM_FLOAT                   0x8DF1
421d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_HIGH_FLOAT                     0x8DF2
422d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_LOW_INT                        0x8DF3
423d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MEDIUM_INT                     0x8DF4
424d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_HIGH_INT                       0x8DF5
425d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
426d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/* Framebuffer Object. */
427d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER                    0x8D40
428d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER                   0x8D41
429d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
430d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RGBA4                          0x8056
431d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RGB5_A1                        0x8057
432d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RGB565                         0x8D62
433d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_COMPONENT16              0x81A5
434d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_INDEX                  0x1901
435d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_INDEX8                 0x8D48
436d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
437d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_WIDTH             0x8D42
438d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_HEIGHT            0x8D43
439d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_INTERNAL_FORMAT   0x8D44
440d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_RED_SIZE          0x8D50
441d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_GREEN_SIZE        0x8D51
442d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_BLUE_SIZE         0x8D52
443d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_ALPHA_SIZE        0x8D53
444d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_DEPTH_SIZE        0x8D54
445d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_STENCIL_SIZE      0x8D55
446d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
447d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE           0x8CD0
448d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME           0x8CD1
449d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL         0x8CD2
450d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
451d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
452d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_COLOR_ATTACHMENT0              0x8CE0
453d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_DEPTH_ATTACHMENT               0x8D00
454d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_STENCIL_ATTACHMENT             0x8D20
455d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
456d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_NONE                           0
457d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
458d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_COMPLETE                      0x8CD5
459d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT         0x8CD6
460d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
461d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS         0x8CD9
462d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_UNSUPPORTED                   0x8CDD
463d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
464d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_FRAMEBUFFER_BINDING            0x8CA6
465d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_RENDERBUFFER_BINDING           0x8CA7
466d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_MAX_RENDERBUFFER_SIZE          0x84E8
467d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
468d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#define GL_INVALID_FRAMEBUFFER_OPERATION  0x0506
469d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
470d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian/*-------------------------------------------------------------------------
471d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian * GL core functions.
472d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian *-----------------------------------------------------------------------*/
473d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
474d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glActiveTexture (GLenum texture);
475d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
476958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
477d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
478d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
479d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
480d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
481d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
482d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBlendEquation ( GLenum mode );
483d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
484d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
485d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
486958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
487958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
488d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLenum       GL_APIENTRY glCheckFramebufferStatus (GLenum target);
489d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glClear (GLbitfield mask);
490d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
491d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glClearDepthf (GLclampf depth);
492d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glClearStencil (GLint s);
493d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
494d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glCompileShader (GLuint shader);
495958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
496958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
497d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
498d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
499d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLuint       GL_APIENTRY glCreateProgram (void);
500d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLuint       GL_APIENTRY glCreateShader (GLenum type);
501d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glCullFace (GLenum mode);
502d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
503d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
504d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteProgram (GLuint program);
505d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
506d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteShader (GLuint shader);
507d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
508d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDepthFunc (GLenum func);
509d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDepthMask (GLboolean flag);
510d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
511d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
512d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDisable (GLenum cap);
513d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDisableVertexAttribArray (GLuint index);
514d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
515958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
516d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glEnable (GLenum cap);
517d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glEnableVertexAttribArray (GLuint index);
518d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glFinish (void);
519d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glFlush (void);
520d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
521d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
522d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glFrontFace (GLenum mode);
523d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
524d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGenerateMipmap (GLenum target);
525d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
526d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
527d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
528958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
529958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
530d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
531958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL int          GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
532d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
533d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
534d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLenum       GL_APIENTRY glGetError (void);
535d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
536d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
537d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
538d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
539958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
540d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
541d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
542958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
543d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
544958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
545d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
546d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
547d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
548d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
549d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
550958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL int          GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
551d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
552d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
553958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
554d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glHint (GLenum target, GLenum mode);
555d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsBuffer (GLuint buffer);
556d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsEnabled (GLenum cap);
557d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
558d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsProgram (GLuint program);
559d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
560d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsShader (GLuint shader);
561d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL GLboolean    GL_APIENTRY glIsTexture (GLuint texture);
562d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glLineWidth (GLfloat width);
563d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glLinkProgram (GLuint program);
564d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
565d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
566958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
567d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glReleaseShaderCompiler (void);
568d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
569d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
570d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
571958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
572958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar** string, const GLint* length);
573d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
574d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
575d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilMask (GLuint mask);
576d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
577d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
578d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
579958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
580d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
581d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
582d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
583d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
584958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
585d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform1f (GLint location, GLfloat x);
586d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
587d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform1i (GLint location, GLint x);
588d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
589d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
590d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
591d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
592d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
593d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
594d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
595d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
596d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
597d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
598d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
599d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
600d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
601d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
602d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
603d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
604d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glUseProgram (GLuint program);
605d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glValidateProgram (GLuint program);
606d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
607d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
608d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
609d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
610d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
611d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
612d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
613d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
614958f9006685c8b477fe76f44ddce59b8bfae8315Mathias AgopianGL_APICALL void         GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
615d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias AgopianGL_APICALL void         GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
616d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
617d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#ifdef __cplusplus
618d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian}
619d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#endif
620d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian
621d53c8ee26b9e6703633033ea51f4f7c21b253dd1Mathias Agopian#endif /* __gl2_h_ */
622