gl_4_5.zig(1)

glfmn.io gl_4_5.zig(1)
Name

gl_4_5.zig

Generated OpenGL 4.5 bindings for zig programs

Description

The file contains a lot of top-level types functions which correspond to OpenGL API functions defined in the OpenGL Registry XML.

pub fn createVertexArrays(_n: GLsizei, _arrays: [*c]GLuint) callconv(.C) void {
    return @call(.always_tail, function_pointers.glCreateVertexArrays, .{_n, _arrays});
}

Each calling a function pointer stored in a global struct which is undefined at the start of the program.

const function_pointers = struct {
    // truncated
    var glCreateVertexArrays: *const function_signatures.glCreateVertexArrays = undefined;
}

The function pointer must be set by a function called load before it can be called.

/// Loader API:
pub fn load(load_ctx: anytype, get_proc_address: fn(@TypeOf(load_ctx), [:0]const u8) ?FunctionPointer) !void {
    // Truncated
    if(get_proc_address(load_ctx, "glCreateVertexArrays")) |proc| {
        function_pointers.glCreateVertexArrays = @ptrCast(proc);
    } else {
        log.err("entry point glCreateVertexArrays not found!", .{});
        success = false;
    }
}

The key is passing a get_proc_address function to the loader which, given the name of an OpenGL function, can provide a pointer to that function. Typically, this function is provided by a framework like glfw or EGL or the OS.

In addition to functions, this file contains many type and constant definitions:

pub const GLenum = c_uint;
pub const GLboolean = u8;
pub const GLbitfield = c_uint;
pub const GLbyte = i8;
pub const GLubyte = u8;
pub const GLshort = i16;
pub const GLushort = u16;
pub const GLint = c_int;
pub const GLuint = c_uint;

Note that these types are not so-called "new-types" and a variable of type GLuint can be passed in place of a GLenum without any issues.

pub const DEPTH_BUFFER_BIT = 0x00000100;
pub const STENCIL_BUFFER_BIT = 0x00000400;
pub const COLOR_BUFFER_BIT = 0x00004000;
pub const FALSE = 0;
pub const TRUE = 1;

Note the constants have no type specified and are thus comptime_int.

Generating

This file was generated by zig-opengl according to the following steps:

  1. Clone the repository and enter the directory.
  2. Use dotnet to run the generator and create the bindings file.
git clone --recursive https://github.com/MasterQ32/zig-opengl && cd zig-opengl
dotnet run OpenGL-Registry/xml/gl.xml gl_4_5.zig GL_VERSION_4_5

dotnet 7.0 is the .NET runtime required to run the zig-opengl generator, which is written in C#.

Contents

1//
2// This code file is licenced under any of Public Domain, WTFPL or CC0.
3// There are no restrictions in the use of this file.
4//
5
6//
7// Generation parameters:
8// API: GL_VERSION_4_5
9// Profile: core
10// Extensions:
11//
12
13//
14// This file was generated with the following command line:
15// dotnet run OpenGL-Registry/xml/gl.xml gl_4_5.zig GL_VERSION_4_5
16//
17
18const std = @import("std");
19const builtin = @import("builtin");
20const log = std.log.scoped(.OpenGL);
21
22pub const FunctionPointer: type = *align(@alignOf(fn (u32) callconv(.C) u32)) const anyopaque;
23
24pub const GLenum = c_uint;
25pub const GLboolean = u8;
26pub const GLbitfield = c_uint;
27pub const GLbyte = i8;
28pub const GLubyte = u8;
29pub const GLshort = i16;
30pub const GLushort = u16;
31pub const GLint = c_int;
32pub const GLuint = c_uint;
33pub const GLclampx = i32;
34pub const GLsizei = c_int;
35pub const GLfloat = f32;
36pub const GLclampf = f32;
37pub const GLdouble = f64;
38pub const GLclampd = f64;
39pub const GLeglClientBufferEXT = void;
40pub const GLeglImageOES = void;
41pub const GLchar = u8;
42pub const GLcharARB = u8;
43
44pub const GLhandleARB = if (builtin.os.tag == .macos) *anyopaque else c_uint;
45
46pub const GLhalf = u16;
47pub const GLhalfARB = u16;
48pub const GLfixed = i32;
49pub const GLintptr = usize;
50pub const GLintptrARB = usize;
51pub const GLsizeiptr = isize;
52pub const GLsizeiptrARB = isize;
53pub const GLint64 = i64;
54pub const GLint64EXT = i64;
55pub const GLuint64 = u64;
56pub const GLuint64EXT = u64;
57
58pub const GLsync = *opaque {};
59
60pub const _cl_context = opaque {};
61pub const _cl_event = opaque {};
62
63pub const GLDEBUGPROC = *const fn (source: GLenum, _type: GLenum, id: GLuint, severity: GLenum, length: GLsizei, message: [*:0]const u8, userParam: ?*anyopaque) callconv(.C) void;
64pub const GLDEBUGPROCARB = *const fn (source: GLenum, _type: GLenum, id: GLuint, severity: GLenum, length: GLsizei, message: [*:0]const u8, userParam: ?*anyopaque) callconv(.C) void;
65pub const GLDEBUGPROCKHR = *const fn (source: GLenum, _type: GLenum, id: GLuint, severity: GLenum, length: GLsizei, message: [*:0]const u8, userParam: ?*anyopaque) callconv(.C) void;
66
67pub const GLDEBUGPROCAMD = *const fn (id: GLuint, category: GLenum, severity: GLenum, length: GLsizei, message: [*:0]const u8, userParam: ?*anyopaque) callconv(.C) void;
68
69pub const GLhalfNV = u16;
70pub const GLvdpauSurfaceNV = GLintptr;
71pub const GLVULKANPROCNV = *const fn () callconv(.C) void;
72
73
74pub const DEPTH_BUFFER_BIT = 0x00000100;
75pub const STENCIL_BUFFER_BIT = 0x00000400;
76pub const COLOR_BUFFER_BIT = 0x00004000;
77pub const FALSE = 0;
78pub const TRUE = 1;
79pub const POINTS = 0x0000;
80pub const LINES = 0x0001;
81pub const LINE_LOOP = 0x0002;
82pub const LINE_STRIP = 0x0003;
83pub const TRIANGLES = 0x0004;
84pub const TRIANGLE_STRIP = 0x0005;
85pub const TRIANGLE_FAN = 0x0006;
86pub const COMPRESSED_SRGB8_ETC2 = 0x9275;
87pub const NEVER = 0x0200;
88pub const LESS = 0x0201;
89pub const EQUAL = 0x0202;
90pub const LEQUAL = 0x0203;
91pub const GREATER = 0x0204;
92pub const NOTEQUAL = 0x0205;
93pub const GEQUAL = 0x0206;
94pub const ALWAYS = 0x0207;
95pub const ZERO = 0;
96pub const ONE = 1;
97pub const SRC_COLOR = 0x0300;
98pub const ONE_MINUS_SRC_COLOR = 0x0301;
99pub const SRC_ALPHA = 0x0302;
100pub const ONE_MINUS_SRC_ALPHA = 0x0303;
101pub const DST_ALPHA = 0x0304;
102pub const ONE_MINUS_DST_ALPHA = 0x0305;
103pub const DST_COLOR = 0x0306;
104pub const ONE_MINUS_DST_COLOR = 0x0307;
105pub const SRC_ALPHA_SATURATE = 0x0308;
106pub const NONE = 0;
107pub const FRONT_LEFT = 0x0400;
108pub const FRONT_RIGHT = 0x0401;
109pub const BACK_LEFT = 0x0402;
110pub const BACK_RIGHT = 0x0403;
111pub const FRONT = 0x0404;
112pub const BACK = 0x0405;
113pub const LEFT = 0x0406;
114pub const RIGHT = 0x0407;
115pub const FRONT_AND_BACK = 0x0408;
116pub const NO_ERROR = 0;
117pub const INVALID_ENUM = 0x0500;
118pub const INVALID_VALUE = 0x0501;
119pub const INVALID_OPERATION = 0x0502;
120pub const OUT_OF_MEMORY = 0x0505;
121pub const CW = 0x0900;
122pub const CCW = 0x0901;
123pub const POINT_SIZE = 0x0B11;
124pub const POINT_SIZE_RANGE = 0x0B12;
125pub const POINT_SIZE_GRANULARITY = 0x0B13;
126pub const LINE_SMOOTH = 0x0B20;
127pub const LINE_WIDTH = 0x0B21;
128pub const LINE_WIDTH_RANGE = 0x0B22;
129pub const LINE_WIDTH_GRANULARITY = 0x0B23;
130pub const POLYGON_MODE = 0x0B40;
131pub const POLYGON_SMOOTH = 0x0B41;
132pub const CULL_FACE = 0x0B44;
133pub const CULL_FACE_MODE = 0x0B45;
134pub const FRONT_FACE = 0x0B46;
135pub const DEPTH_RANGE = 0x0B70;
136pub const DEPTH_TEST = 0x0B71;
137pub const DEPTH_WRITEMASK = 0x0B72;
138pub const DEPTH_CLEAR_VALUE = 0x0B73;
139pub const DEPTH_FUNC = 0x0B74;
140pub const STENCIL_TEST = 0x0B90;
141pub const STENCIL_CLEAR_VALUE = 0x0B91;
142pub const STENCIL_FUNC = 0x0B92;
143pub const STENCIL_VALUE_MASK = 0x0B93;
144pub const STENCIL_FAIL = 0x0B94;
145pub const STENCIL_PASS_DEPTH_FAIL = 0x0B95;
146pub const STENCIL_PASS_DEPTH_PASS = 0x0B96;
147pub const STENCIL_REF = 0x0B97;
148pub const STENCIL_WRITEMASK = 0x0B98;
149pub const VIEWPORT = 0x0BA2;
150pub const DITHER = 0x0BD0;
151pub const BLEND_DST = 0x0BE0;
152pub const BLEND_SRC = 0x0BE1;
153pub const BLEND = 0x0BE2;
154pub const LOGIC_OP_MODE = 0x0BF0;
155pub const DRAW_BUFFER = 0x0C01;
156pub const READ_BUFFER = 0x0C02;
157pub const SCISSOR_BOX = 0x0C10;
158pub const SCISSOR_TEST = 0x0C11;
159pub const COLOR_CLEAR_VALUE = 0x0C22;
160pub const COLOR_WRITEMASK = 0x0C23;
161pub const DOUBLEBUFFER = 0x0C32;
162pub const STEREO = 0x0C33;
163pub const LINE_SMOOTH_HINT = 0x0C52;
164pub const POLYGON_SMOOTH_HINT = 0x0C53;
165pub const UNPACK_SWAP_BYTES = 0x0CF0;
166pub const UNPACK_LSB_FIRST = 0x0CF1;
167pub const UNPACK_ROW_LENGTH = 0x0CF2;
168pub const UNPACK_SKIP_ROWS = 0x0CF3;
169pub const UNPACK_SKIP_PIXELS = 0x0CF4;
170pub const UNPACK_ALIGNMENT = 0x0CF5;
171pub const PACK_SWAP_BYTES = 0x0D00;
172pub const PACK_LSB_FIRST = 0x0D01;
173pub const PACK_ROW_LENGTH = 0x0D02;
174pub const PACK_SKIP_ROWS = 0x0D03;
175pub const PACK_SKIP_PIXELS = 0x0D04;
176pub const PACK_ALIGNMENT = 0x0D05;
177pub const MAX_TEXTURE_SIZE = 0x0D33;
178pub const MAX_VIEWPORT_DIMS = 0x0D3A;
179pub const SUBPIXEL_BITS = 0x0D50;
180pub const TEXTURE_1D = 0x0DE0;
181pub const TEXTURE_2D = 0x0DE1;
182pub const TEXTURE_WIDTH = 0x1000;
183pub const TEXTURE_HEIGHT = 0x1001;
184pub const TEXTURE_BORDER_COLOR = 0x1004;
185pub const DONT_CARE = 0x1100;
186pub const FASTEST = 0x1101;
187pub const NICEST = 0x1102;
188pub const BYTE = 0x1400;
189pub const UNSIGNED_BYTE = 0x1401;
190pub const SHORT = 0x1402;
191pub const UNSIGNED_SHORT = 0x1403;
192pub const INT = 0x1404;
193pub const UNSIGNED_INT = 0x1405;
194pub const FLOAT = 0x1406;
195pub const CLEAR = 0x1500;
196pub const AND = 0x1501;
197pub const AND_REVERSE = 0x1502;
198pub const COPY = 0x1503;
199pub const AND_INVERTED = 0x1504;
200pub const NOOP = 0x1505;
201pub const XOR = 0x1506;
202pub const OR = 0x1507;
203pub const NOR = 0x1508;
204pub const EQUIV = 0x1509;
205pub const INVERT = 0x150A;
206pub const OR_REVERSE = 0x150B;
207pub const COPY_INVERTED = 0x150C;
208pub const OR_INVERTED = 0x150D;
209pub const NAND = 0x150E;
210pub const SET = 0x150F;
211pub const TEXTURE = 0x1702;
212pub const COLOR = 0x1800;
213pub const DEPTH = 0x1801;
214pub const STENCIL = 0x1802;
215pub const STENCIL_INDEX = 0x1901;
216pub const DEPTH_COMPONENT = 0x1902;
217pub const RED = 0x1903;
218pub const GREEN = 0x1904;
219pub const BLUE = 0x1905;
220pub const ALPHA = 0x1906;
221pub const RGB = 0x1907;
222pub const RGBA = 0x1908;
223pub const POINT = 0x1B00;
224pub const LINE = 0x1B01;
225pub const FILL = 0x1B02;
226pub const KEEP = 0x1E00;
227pub const REPLACE = 0x1E01;
228pub const INCR = 0x1E02;
229pub const DECR = 0x1E03;
230pub const VENDOR = 0x1F00;
231pub const RENDERER = 0x1F01;
232pub const VERSION = 0x1F02;
233pub const EXTENSIONS = 0x1F03;
234pub const NEAREST = 0x2600;
235pub const LINEAR = 0x2601;
236pub const NEAREST_MIPMAP_NEAREST = 0x2700;
237pub const LINEAR_MIPMAP_NEAREST = 0x2701;
238pub const NEAREST_MIPMAP_LINEAR = 0x2702;
239pub const LINEAR_MIPMAP_LINEAR = 0x2703;
240pub const TEXTURE_MAG_FILTER = 0x2800;
241pub const TEXTURE_MIN_FILTER = 0x2801;
242pub const TEXTURE_WRAP_S = 0x2802;
243pub const TEXTURE_WRAP_T = 0x2803;
244pub const REPEAT = 0x2901;
245pub const MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE;
246pub const MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB;
247pub const MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266;
248pub const MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265;
249pub const MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264;
250pub const MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263;
251pub const MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262;
252pub const MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD;
253pub const MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC;
254pub const MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB;
255pub const COMPUTE_SHADER = 0x91B9;
256pub const MAX_ELEMENT_INDEX = 0x8D6B;
257pub const ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A;
258pub const PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69;
259pub const COMPRESSED_SIGNED_RG11_EAC = 0x9273;
260pub const COMPRESSED_RG11_EAC = 0x9272;
261pub const COMPRESSED_SIGNED_R11_EAC = 0x9271;
262pub const COMPRESSED_R11_EAC = 0x9270;
263pub const COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276;
264pub const COMPRESSED_RGB8_ETC2 = 0x9274;
265pub const VERTEX_ATTRIB_ARRAY_LONG = 0x874E;
266pub const NUM_SHADING_LANGUAGE_VERSIONS = 0x82E9;
267pub const TEXTURE_IMMUTABLE_FORMAT = 0x912F;
268pub const COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 0x8E8F;
269pub const COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 0x8E8E;
270pub const COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 0x8E8D;
271pub const COMPRESSED_RGBA_BPTC_UNORM = 0x8E8C;
272pub const MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF;
273pub const MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE;
274pub const MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD;
275pub const MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC;
276pub const MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB;
277pub const MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA;
278pub const IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9;
279pub const IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8;
280pub const IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7;
281pub const IMAGE_BINDING_FORMAT = 0x906E;
282pub const MAX_IMAGE_SAMPLES = 0x906D;
283pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x906C;
284pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = 0x906B;
285pub const UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A;
286pub const UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069;
287pub const UNSIGNED_INT_IMAGE_1D_ARRAY = 0x9068;
288pub const UNSIGNED_INT_IMAGE_BUFFER = 0x9067;
289pub const UNSIGNED_INT_IMAGE_CUBE = 0x9066;
290pub const UNSIGNED_INT_IMAGE_2D_RECT = 0x9065;
291pub const UNSIGNED_INT_IMAGE_3D = 0x9064;
292pub const INT_IMAGE_CUBE = 0x905B;
293pub const INT_IMAGE_2D_RECT = 0x905A;
294pub const INT_IMAGE_3D = 0x9059;
295pub const INT_IMAGE_2D = 0x9058;
296pub const INT_IMAGE_1D = 0x9057;
297pub const IMAGE_2D_MULTISAMPLE_ARRAY = 0x9056;
298pub const IMAGE_2D_MULTISAMPLE = 0x9055;
299pub const IMAGE_CUBE_MAP_ARRAY = 0x9054;
300pub const IMAGE_2D_ARRAY = 0x9053;
301pub const IMAGE_1D_ARRAY = 0x9052;
302pub const IMAGE_BUFFER = 0x9051;
303pub const IMAGE_CUBE = 0x9050;
304pub const IMAGE_2D_RECT = 0x904F;
305pub const IMAGE_3D = 0x904E;
306pub const IMAGE_2D = 0x904D;
307pub const IMAGE_1D = 0x904C;
308pub const IMAGE_BINDING_ACCESS = 0x8F3E;
309pub const IMAGE_BINDING_LAYER = 0x8F3D;
310pub const IMAGE_BINDING_LAYERED = 0x8F3C;
311pub const IMAGE_BINDING_LEVEL = 0x8F3B;
312pub const IMAGE_BINDING_NAME = 0x8F3A;
313pub const MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = 0x8F39;
314pub const MAX_IMAGE_UNITS = 0x8F38;
315pub const ALL_BARRIER_BITS = 0xFFFFFFFF;
316pub const ATOMIC_COUNTER_BARRIER_BIT = 0x00001000;
317pub const TRANSFORM_FEEDBACK_BARRIER_BIT = 0x00000800;
318pub const FRAMEBUFFER_BARRIER_BIT = 0x00000400;
319pub const BUFFER_UPDATE_BARRIER_BIT = 0x00000200;
320pub const TEXTURE_UPDATE_BARRIER_BIT = 0x00000100;
321pub const PIXEL_BUFFER_BARRIER_BIT = 0x00000080;
322pub const COMMAND_BARRIER_BIT = 0x00000040;
323pub const SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x00000020;
324pub const TEXTURE_FETCH_BARRIER_BIT = 0x00000008;
325pub const UNIFORM_BARRIER_BIT = 0x00000004;
326pub const ELEMENT_ARRAY_BARRIER_BIT = 0x00000002;
327pub const VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x00000001;
328pub const UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB;
329pub const UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 0x92DA;
330pub const ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9;
331pub const MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC;
332pub const MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8;
333pub const MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7;
334pub const MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6;
335pub const MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5;
336pub const MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4;
337pub const MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2;
338pub const MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1;
339pub const MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0;
340pub const MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE;
341pub const MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD;
342pub const MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC;
343pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = 0x92CB;
344pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = 0x92CA;
345pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x92C9;
346pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = 0x92C8;
347pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = 0x92C7;
348pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = 0x92C6;
349pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = 0x92C5;
350pub const ATOMIC_COUNTER_BUFFER_DATA_SIZE = 0x92C4;
351pub const ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3;
352pub const ATOMIC_COUNTER_BUFFER_START = 0x92C2;
353pub const ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1;
354pub const ATOMIC_COUNTER_BUFFER = 0x92C0;
355pub const MIN_MAP_BUFFER_ALIGNMENT = 0x90BC;
356pub const NUM_SAMPLE_COUNTS = 0x9380;
357pub const PACK_COMPRESSED_BLOCK_SIZE = 0x912E;
358pub const PACK_COMPRESSED_BLOCK_DEPTH = 0x912D;
359pub const PACK_COMPRESSED_BLOCK_HEIGHT = 0x912C;
360pub const PACK_COMPRESSED_BLOCK_WIDTH = 0x912B;
361pub const UNPACK_COMPRESSED_BLOCK_SIZE = 0x912A;
362pub const UNPACK_COMPRESSED_BLOCK_DEPTH = 0x9129;
363pub const UNPACK_COMPRESSED_BLOCK_HEIGHT = 0x9128;
364pub const UNPACK_COMPRESSED_BLOCK_WIDTH = 0x9127;
365pub const TRANSFORM_FEEDBACK_PAUSED = 0x8E23;
366pub const TRANSFORM_FEEDBACK_ACTIVE = 0x8E24;
367pub const COPY_WRITE_BUFFER_BINDING = 0x8F37;
368pub const COPY_READ_BUFFER_BINDING = 0x8F36;
369pub const UNDEFINED_VERTEX = 0x8260;
370pub const VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F;
371pub const LAYER_PROVOKING_VERTEX = 0x825E;
372pub const VIEWPORT_BOUNDS_RANGE = 0x825D;
373pub const VIEWPORT_SUBPIXEL_BITS = 0x825C;
374pub const MAX_VIEWPORTS = 0x825B;
375pub const PROGRAM_PIPELINE_BINDING = 0x825A;
376pub const ACTIVE_PROGRAM = 0x8259;
377pub const PROGRAM_SEPARABLE = 0x8258;
378pub const ALL_SHADER_BITS = 0xFFFFFFFF;
379pub const TESS_EVALUATION_SHADER_BIT = 0x00000010;
380pub const TESS_CONTROL_SHADER_BIT = 0x00000008;
381pub const GEOMETRY_SHADER_BIT = 0x00000004;
382pub const FRAGMENT_SHADER_BIT = 0x00000002;
383pub const VERTEX_SHADER_BIT = 0x00000001;
384pub const PROGRAM_BINARY_FORMATS = 0x87FF;
385pub const NUM_PROGRAM_BINARY_FORMATS = 0x87FE;
386pub const PROGRAM_BINARY_LENGTH = 0x8741;
387pub const PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257;
388pub const RGB565 = 0x8D62;
389pub const MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD;
390pub const MAX_VARYING_VECTORS = 0x8DFC;
391pub const MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB;
392pub const NUM_SHADER_BINARY_FORMATS = 0x8DF9;
393pub const SHADER_BINARY_FORMATS = 0x8DF8;
394pub const SHADER_COMPILER = 0x8DFA;
395pub const HIGH_INT = 0x8DF5;
396pub const MEDIUM_INT = 0x8DF4;
397pub const LOW_INT = 0x8DF3;
398pub const HIGH_FLOAT = 0x8DF2;
399pub const MEDIUM_FLOAT = 0x8DF1;
400pub const LOW_FLOAT = 0x8DF0;
401pub const IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B;
402pub const IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A;
403pub const FIXED = 0x140C;
404pub const MAX_TRANSFORM_FEEDBACK_BUFFERS = 0x8E70;
405pub const ISOLINES = 0x8E7A;
406pub const TESS_GEN_POINT_MODE = 0x8E79;
407pub const TESS_GEN_VERTEX_ORDER = 0x8E78;
408pub const TESS_GEN_SPACING = 0x8E77;
409pub const TESS_GEN_MODE = 0x8E76;
410pub const TESS_CONTROL_OUTPUT_VERTICES = 0x8E75;
411pub const PATCH_DEFAULT_OUTER_LEVEL = 0x8E74;
412pub const PATCH_DEFAULT_INNER_LEVEL = 0x8E73;
413pub const PATCH_VERTICES = 0x8E72;
414pub const PATCHES = 0x000E;
415pub const VERTEX_BINDING_BUFFER = 0x8F4F;
416pub const MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA;
417pub const MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9;
418pub const VERTEX_BINDING_STRIDE = 0x82D8;
419pub const VERTEX_BINDING_OFFSET = 0x82D7;
420pub const VERTEX_BINDING_DIVISOR = 0x82D6;
421pub const VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5;
422pub const VERTEX_ATTRIB_BINDING = 0x82D4;
423pub const TEXTURE_IMMUTABLE_LEVELS = 0x82DF;
424pub const TEXTURE_VIEW_NUM_LAYERS = 0x82DE;
425pub const TEXTURE_VIEW_MIN_LAYER = 0x82DD;
426pub const TEXTURE_VIEW_NUM_LEVELS = 0x82DC;
427pub const TEXTURE_VIEW_MIN_LEVEL = 0x82DB;
428pub const TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F;
429pub const TEXTURE_BUFFER_SIZE = 0x919E;
430pub const TEXTURE_BUFFER_OFFSET = 0x919D;
431pub const DEPTH_STENCIL_TEXTURE_MODE = 0x90EA;
432pub const MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39;
433pub const SHADER_STORAGE_BARRIER_BIT = 0x00002000;
434pub const SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF;
435pub const MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE;
436pub const MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD;
437pub const MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC;
438pub const MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB;
439pub const MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA;
440pub const MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9;
441pub const MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8;
442pub const MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7;
443pub const MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6;
444pub const SHADER_STORAGE_BUFFER_SIZE = 0x90D5;
445pub const SHADER_STORAGE_BUFFER_START = 0x90D4;
446pub const SHADER_STORAGE_BUFFER_BINDING = 0x90D3;
447pub const SHADER_STORAGE_BUFFER = 0x90D2;
448pub const IS_PER_PATCH = 0x92E7;
449pub const LOCATION_INDEX = 0x930F;
450pub const LOCATION = 0x930E;
451pub const TOP_LEVEL_ARRAY_STRIDE = 0x930D;
452pub const TOP_LEVEL_ARRAY_SIZE = 0x930C;
453pub const REFERENCED_BY_COMPUTE_SHADER = 0x930B;
454pub const REFERENCED_BY_FRAGMENT_SHADER = 0x930A;
455pub const REFERENCED_BY_GEOMETRY_SHADER = 0x9309;
456pub const REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308;
457pub const REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307;
458pub const REFERENCED_BY_VERTEX_SHADER = 0x9306;
459pub const ACTIVE_VARIABLES = 0x9305;
460pub const NUM_ACTIVE_VARIABLES = 0x9304;
461pub const BUFFER_DATA_SIZE = 0x9303;
462pub const BUFFER_BINDING = 0x9302;
463pub const ATOMIC_COUNTER_BUFFER_INDEX = 0x9301;
464pub const IS_ROW_MAJOR = 0x9300;
465pub const MATRIX_STRIDE = 0x92FF;
466pub const ARRAY_STRIDE = 0x92FE;
467pub const BLOCK_INDEX = 0x92FD;
468pub const OFFSET = 0x92FC;
469pub const ARRAY_SIZE = 0x92FB;
470pub const TYPE = 0x92FA;
471pub const NAME_LENGTH = 0x92F9;
472pub const MAX_NUM_COMPATIBLE_SUBROUTINES = 0x92F8;
473pub const MAX_NUM_ACTIVE_VARIABLES = 0x92F7;
474pub const MAX_NAME_LENGTH = 0x92F6;
475pub const ACTIVE_RESOURCES = 0x92F5;
476pub const TRANSFORM_FEEDBACK_VARYING = 0x92F4;
477pub const COMPUTE_SUBROUTINE_UNIFORM = 0x92F3;
478pub const FRAGMENT_SUBROUTINE_UNIFORM = 0x92F2;
479pub const GEOMETRY_SUBROUTINE_UNIFORM = 0x92F1;
480pub const TESS_EVALUATION_SUBROUTINE_UNIFORM = 0x92F0;
481pub const TESS_CONTROL_SUBROUTINE_UNIFORM = 0x92EF;
482pub const VERTEX_SUBROUTINE_UNIFORM = 0x92EE;
483pub const COMPUTE_SUBROUTINE = 0x92ED;
484pub const FRAGMENT_SUBROUTINE = 0x92EC;
485pub const GEOMETRY_SUBROUTINE = 0x92EB;
486pub const TESS_EVALUATION_SUBROUTINE = 0x92EA;
487pub const TESS_CONTROL_SUBROUTINE = 0x92E9;
488pub const VERTEX_SUBROUTINE = 0x92E8;
489pub const SHADER_STORAGE_BLOCK = 0x92E6;
490pub const BUFFER_VARIABLE = 0x92E5;
491pub const PROGRAM_OUTPUT = 0x92E4;
492pub const PROGRAM_INPUT = 0x92E3;
493pub const UNIFORM_BLOCK = 0x92E2;
494pub const UNIFORM = 0x92E1;
495pub const VIEW_CLASS_BPTC_FLOAT = 0x82D3;
496pub const VIEW_CLASS_BPTC_UNORM = 0x82D2;
497pub const VIEW_CLASS_RGTC2_RG = 0x82D1;
498pub const VIEW_CLASS_RGTC1_RED = 0x82D0;
499pub const VIEW_CLASS_S3TC_DXT5_RGBA = 0x82CF;
500pub const VIEW_CLASS_S3TC_DXT3_RGBA = 0x82CE;
501pub const VIEW_CLASS_S3TC_DXT1_RGBA = 0x82CD;
502pub const VIEW_CLASS_S3TC_DXT1_RGB = 0x82CC;
503pub const VIEW_CLASS_8_BITS = 0x82CB;
504pub const VIEW_CLASS_16_BITS = 0x82CA;
505pub const VIEW_CLASS_24_BITS = 0x82C9;
506pub const VIEW_CLASS_32_BITS = 0x82C8;
507pub const VIEW_CLASS_48_BITS = 0x82C7;
508pub const VIEW_CLASS_64_BITS = 0x82C6;
509pub const VIEW_CLASS_96_BITS = 0x82C5;
510pub const VIEW_CLASS_128_BITS = 0x82C4;
511pub const IMAGE_CLASS_10_10_10_2 = 0x82C3;
512pub const IMAGE_CLASS_11_11_10 = 0x82C2;
513pub const IMAGE_CLASS_1_X_8 = 0x82C1;
514pub const IMAGE_CLASS_2_X_8 = 0x82C0;
515pub const IMAGE_CLASS_4_X_8 = 0x82BF;
516pub const IMAGE_CLASS_1_X_16 = 0x82BE;
517pub const IMAGE_CLASS_2_X_16 = 0x82BD;
518pub const IMAGE_CLASS_4_X_16 = 0x82BC;
519pub const IMAGE_CLASS_1_X_32 = 0x82BB;
520pub const IMAGE_CLASS_2_X_32 = 0x82BA;
521pub const IMAGE_CLASS_4_X_32 = 0x82B9;
522pub const CAVEAT_SUPPORT = 0x82B8;
523pub const FULL_SUPPORT = 0x82B7;
524pub const VIEW_COMPATIBILITY_CLASS = 0x82B6;
525pub const TEXTURE_VIEW = 0x82B5;
526pub const CLEAR_BUFFER = 0x82B4;
527pub const TEXTURE_COMPRESSED_BLOCK_SIZE = 0x82B3;
528pub const TEXTURE_COMPRESSED_BLOCK_HEIGHT = 0x82B2;
529pub const TEXTURE_COMPRESSED_BLOCK_WIDTH = 0x82B1;
530pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = 0x82AF;
531pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = 0x82AE;
532pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = 0x82AD;
533pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = 0x82AC;
534pub const IMAGE_PIXEL_TYPE = 0x82AA;
535pub const IMAGE_PIXEL_FORMAT = 0x82A9;
536pub const IMAGE_COMPATIBILITY_CLASS = 0x82A8;
537pub const IMAGE_TEXEL_SIZE = 0x82A7;
538pub const SHADER_IMAGE_ATOMIC = 0x82A6;
539pub const SHADER_IMAGE_STORE = 0x82A5;
540pub const SHADER_IMAGE_LOAD = 0x82A4;
541pub const TEXTURE_GATHER_SHADOW = 0x82A3;
542pub const TEXTURE_GATHER = 0x82A2;
543pub const TEXTURE_SHADOW = 0x82A1;
544pub const COMPUTE_TEXTURE = 0x82A0;
545pub const FRAGMENT_TEXTURE = 0x829F;
546pub const GEOMETRY_TEXTURE = 0x829E;
547pub const TESS_EVALUATION_TEXTURE = 0x829D;
548pub const TESS_CONTROL_TEXTURE = 0x829C;
549pub const VERTEX_TEXTURE = 0x829B;
550pub const FILTER = 0x829A;
551pub const SRGB_WRITE = 0x8298;
552pub const SRGB_READ = 0x8297;
553pub const COLOR_ENCODING = 0x8296;
554pub const AUTO_GENERATE_MIPMAP = 0x8295;
555pub const MANUAL_GENERATE_MIPMAP = 0x8294;
556pub const MIPMAP = 0x8293;
557pub const GET_TEXTURE_IMAGE_TYPE = 0x8292;
558pub const GET_TEXTURE_IMAGE_FORMAT = 0x8291;
559pub const TEXTURE_IMAGE_TYPE = 0x8290;
560pub const TEXTURE_IMAGE_FORMAT = 0x828F;
561pub const READ_PIXELS_TYPE = 0x828E;
562pub const READ_PIXELS_FORMAT = 0x828D;
563pub const READ_PIXELS = 0x828C;
564pub const FRAMEBUFFER_BLEND = 0x828B;
565pub const FRAMEBUFFER_RENDERABLE_LAYERED = 0x828A;
566pub const FRAMEBUFFER_RENDERABLE = 0x8289;
567pub const STENCIL_RENDERABLE = 0x8288;
568pub const DEPTH_RENDERABLE = 0x8287;
569pub const COLOR_RENDERABLE = 0x8286;
570pub const STENCIL_COMPONENTS = 0x8285;
571pub const DEPTH_COMPONENTS = 0x8284;
572pub const COLOR_COMPONENTS = 0x8283;
573pub const MAX_COMBINED_DIMENSIONS = 0x8282;
574pub const MAX_LAYERS = 0x8281;
575pub const MAX_DEPTH = 0x8280;
576pub const MAX_HEIGHT = 0x827F;
577pub const MAX_WIDTH = 0x827E;
578pub const INTERNALFORMAT_STENCIL_TYPE = 0x827D;
579pub const INTERNALFORMAT_DEPTH_TYPE = 0x827C;
580pub const INTERNALFORMAT_ALPHA_TYPE = 0x827B;
581pub const INTERNALFORMAT_BLUE_TYPE = 0x827A;
582pub const INTERNALFORMAT_GREEN_TYPE = 0x8279;
583pub const INTERNALFORMAT_RED_TYPE = 0x8278;
584pub const INTERNALFORMAT_SHARED_SIZE = 0x8277;
585pub const INTERNALFORMAT_STENCIL_SIZE = 0x8276;
586pub const INTERNALFORMAT_DEPTH_SIZE = 0x8275;
587pub const INTERNALFORMAT_ALPHA_SIZE = 0x8274;
588pub const INTERNALFORMAT_BLUE_SIZE = 0x8273;
589pub const INTERNALFORMAT_GREEN_SIZE = 0x8272;
590pub const INTERNALFORMAT_RED_SIZE = 0x8271;
591pub const INTERNALFORMAT_PREFERRED = 0x8270;
592pub const INTERNALFORMAT_SUPPORTED = 0x826F;
593pub const MAX_FRAMEBUFFER_SAMPLES = 0x9318;
594pub const MAX_FRAMEBUFFER_LAYERS = 0x9317;
595pub const MAX_FRAMEBUFFER_HEIGHT = 0x9316;
596pub const MAX_FRAMEBUFFER_WIDTH = 0x9315;
597pub const FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314;
598pub const FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313;
599pub const FRAMEBUFFER_DEFAULT_LAYERS = 0x9312;
600pub const FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311;
601pub const FRAMEBUFFER_DEFAULT_WIDTH = 0x9310;
602pub const MAX_UNIFORM_LOCATIONS = 0x826E;
603pub const CONTEXT_FLAG_DEBUG_BIT = 0x00000002;
604pub const DEBUG_OUTPUT = 0x92E0;
605pub const MAX_LABEL_LENGTH = 0x82E8;
606pub const SAMPLER = 0x82E6;
607pub const PROGRAM_PIPELINE = 0x82E4;
608pub const QUERY = 0x82E3;
609pub const VERTEX_ARRAY = 0x8074;
610pub const PROGRAM = 0x82E2;
611pub const SHADER = 0x82E1;
612pub const BUFFER = 0x82E0;
613pub const DEBUG_GROUP_STACK_DEPTH = 0x826D;
614pub const MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C;
615pub const DEBUG_SEVERITY_NOTIFICATION = 0x826B;
616pub const DEBUG_TYPE_POP_GROUP = 0x826A;
617pub const DEBUG_TYPE_PUSH_GROUP = 0x8269;
618pub const DEBUG_TYPE_MARKER = 0x8268;
619pub const DEBUG_SEVERITY_LOW = 0x9148;
620pub const DEBUG_SEVERITY_MEDIUM = 0x9147;
621pub const DEBUG_SEVERITY_HIGH = 0x9146;
622pub const DEBUG_LOGGED_MESSAGES = 0x9145;
623pub const MAX_DEBUG_LOGGED_MESSAGES = 0x9144;
624pub const MAX_DEBUG_MESSAGE_LENGTH = 0x9143;
625pub const DEBUG_TYPE_OTHER = 0x8251;
626pub const DEBUG_TYPE_PERFORMANCE = 0x8250;
627pub const DEBUG_TYPE_PORTABILITY = 0x824F;
628pub const DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E;
629pub const DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D;
630pub const DEBUG_TYPE_ERROR = 0x824C;
631pub const DEBUG_SOURCE_OTHER = 0x824B;
632pub const DEBUG_SOURCE_APPLICATION = 0x824A;
633pub const DEBUG_SOURCE_THIRD_PARTY = 0x8249;
634pub const DEBUG_SOURCE_SHADER_COMPILER = 0x8248;
635pub const DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247;
636pub const DEBUG_SOURCE_API = 0x8246;
637pub const DEBUG_CALLBACK_USER_PARAM = 0x8245;
638pub const DEBUG_CALLBACK_FUNCTION = 0x8244;
639pub const DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243;
640pub const DEBUG_OUTPUT_SYNCHRONOUS = 0x8242;
641pub const COMPUTE_SHADER_BIT = 0x00000020;
642pub const DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF;
643pub const DISPATCH_INDIRECT_BUFFER = 0x90EE;
644pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = 0x90ED;
645pub const UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = 0x90EC;
646pub const COMPUTE_WORK_GROUP_SIZE = 0x8267;
647pub const MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF;
648pub const COLOR_LOGIC_OP = 0x0BF2;
649pub const POLYGON_OFFSET_UNITS = 0x2A00;
650pub const POLYGON_OFFSET_POINT = 0x2A01;
651pub const POLYGON_OFFSET_LINE = 0x2A02;
652pub const POLYGON_OFFSET_FILL = 0x8037;
653pub const POLYGON_OFFSET_FACTOR = 0x8038;
654pub const TEXTURE_BINDING_1D = 0x8068;
655pub const TEXTURE_BINDING_2D = 0x8069;
656pub const TEXTURE_INTERNAL_FORMAT = 0x1003;
657pub const TEXTURE_RED_SIZE = 0x805C;
658pub const TEXTURE_GREEN_SIZE = 0x805D;
659pub const TEXTURE_BLUE_SIZE = 0x805E;
660pub const TEXTURE_ALPHA_SIZE = 0x805F;
661pub const DOUBLE = 0x140A;
662pub const PROXY_TEXTURE_1D = 0x8063;
663pub const PROXY_TEXTURE_2D = 0x8064;
664pub const R3_G3_B2 = 0x2A10;
665pub const RGB4 = 0x804F;
666pub const RGB5 = 0x8050;
667pub const RGB8 = 0x8051;
668pub const RGB10 = 0x8052;
669pub const RGB12 = 0x8053;
670pub const RGB16 = 0x8054;
671pub const RGBA2 = 0x8055;
672pub const RGBA4 = 0x8056;
673pub const RGB5_A1 = 0x8057;
674pub const RGBA8 = 0x8058;
675pub const RGB10_A2 = 0x8059;
676pub const RGBA12 = 0x805A;
677pub const RGBA16 = 0x805B;
678pub const COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279;
679pub const COMPRESSED_RGBA8_ETC2_EAC = 0x9278;
680pub const COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277;
681pub const UNSIGNED_INT_IMAGE_2D = 0x9063;
682pub const UNSIGNED_INT_IMAGE_1D = 0x9062;
683pub const INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9061;
684pub const INT_IMAGE_2D_MULTISAMPLE = 0x9060;
685pub const INT_IMAGE_CUBE_MAP_ARRAY = 0x905F;
686pub const INT_IMAGE_2D_ARRAY = 0x905E;
687pub const INT_IMAGE_1D_ARRAY = 0x905D;
688pub const INT_IMAGE_BUFFER = 0x905C;
689pub const MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3;
690pub const MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF;
691pub const TRANSFORM_FEEDBACK_BINDING = 0x8E25;
692pub const TRANSFORM_FEEDBACK_BUFFER_ACTIVE = 0x8E24;
693pub const TRANSFORM_FEEDBACK_BUFFER_PAUSED = 0x8E23;
694pub const TRANSFORM_FEEDBACK = 0x8E22;
695pub const TESS_CONTROL_SHADER = 0x8E88;
696pub const TESS_EVALUATION_SHADER = 0x8E87;
697pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1;
698pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0;
699pub const MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F;
700pub const MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E;
701pub const MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D;
702pub const MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C;
703pub const MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A;
704pub const MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89;
705pub const MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86;
706pub const MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85;
707pub const MAX_TESS_PATCH_COMPONENTS = 0x8E84;
708pub const MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83;
709pub const MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82;
710pub const MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81;
711pub const MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80;
712pub const MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F;
713pub const MAX_TESS_GEN_LEVEL = 0x8E7E;
714pub const MAX_PATCH_VERTICES = 0x8E7D;
715pub const FRACTIONAL_EVEN = 0x8E7C;
716pub const FRACTIONAL_ODD = 0x8E7B;
717pub const QUADS = 0x0007;
718pub const MAX_SUBROUTINE_UNIFORM_LOCATIONS = 0x8DE8;
719pub const COMPATIBLE_SUBROUTINES = 0x8E4B;
720pub const NUM_COMPATIBLE_SUBROUTINES = 0x8E4A;
721pub const MAX_SUBROUTINES = 0x8DE7;
722pub const ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = 0x8E49;
723pub const ACTIVE_SUBROUTINE_MAX_LENGTH = 0x8E48;
724pub const ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = 0x8E47;
725pub const ACTIVE_SUBROUTINE_UNIFORMS = 0x8DE6;
726pub const ACTIVE_SUBROUTINES = 0x8DE5;
727pub const UNSIGNED_BYTE_3_3_2 = 0x8032;
728pub const UNSIGNED_SHORT_4_4_4_4 = 0x8033;
729pub const UNSIGNED_SHORT_5_5_5_1 = 0x8034;
730pub const UNSIGNED_INT_8_8_8_8 = 0x8035;
731pub const UNSIGNED_INT_10_10_10_2 = 0x8036;
732pub const TEXTURE_BINDING_3D = 0x806A;
733pub const PACK_SKIP_IMAGES = 0x806B;
734pub const PACK_IMAGE_HEIGHT = 0x806C;
735pub const UNPACK_SKIP_IMAGES = 0x806D;
736pub const UNPACK_IMAGE_HEIGHT = 0x806E;
737pub const TEXTURE_3D = 0x806F;
738pub const PROXY_TEXTURE_3D = 0x8070;
739pub const TEXTURE_DEPTH = 0x8071;
740pub const TEXTURE_WRAP_R = 0x8072;
741pub const MAX_3D_TEXTURE_SIZE = 0x8073;
742pub const UNSIGNED_BYTE_2_3_3_REV = 0x8362;
743pub const UNSIGNED_SHORT_5_6_5 = 0x8363;
744pub const UNSIGNED_SHORT_5_6_5_REV = 0x8364;
745pub const UNSIGNED_SHORT_4_4_4_4_REV = 0x8365;
746pub const UNSIGNED_SHORT_1_5_5_5_REV = 0x8366;
747pub const UNSIGNED_INT_8_8_8_8_REV = 0x8367;
748pub const UNSIGNED_INT_2_10_10_10_REV = 0x8368;
749pub const BGR = 0x80E0;
750pub const BGRA = 0x80E1;
751pub const MAX_ELEMENTS_VERTICES = 0x80E8;
752pub const MAX_ELEMENTS_INDICES = 0x80E9;
753pub const CLAMP_TO_EDGE = 0x812F;
754pub const TEXTURE_MIN_LOD = 0x813A;
755pub const TEXTURE_MAX_LOD = 0x813B;
756pub const TEXTURE_BASE_LEVEL = 0x813C;
757pub const TEXTURE_MAX_LEVEL = 0x813D;
758pub const SMOOTH_POINT_SIZE_RANGE = 0x0B12;
759pub const SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13;
760pub const SMOOTH_LINE_WIDTH_RANGE = 0x0B22;
761pub const SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23;
762pub const ALIASED_LINE_WIDTH_RANGE = 0x846E;
763pub const TEXTURE0 = 0x84C0;
764pub const TEXTURE1 = 0x84C1;
765pub const TEXTURE2 = 0x84C2;
766pub const TEXTURE3 = 0x84C3;
767pub const TEXTURE4 = 0x84C4;
768pub const TEXTURE5 = 0x84C5;
769pub const TEXTURE6 = 0x84C6;
770pub const TEXTURE7 = 0x84C7;
771pub const TEXTURE8 = 0x84C8;
772pub const TEXTURE9 = 0x84C9;
773pub const TEXTURE10 = 0x84CA;
774pub const TEXTURE11 = 0x84CB;
775pub const TEXTURE12 = 0x84CC;
776pub const TEXTURE13 = 0x84CD;
777pub const TEXTURE14 = 0x84CE;
778pub const TEXTURE15 = 0x84CF;
779pub const TEXTURE16 = 0x84D0;
780pub const TEXTURE17 = 0x84D1;
781pub const TEXTURE18 = 0x84D2;
782pub const TEXTURE19 = 0x84D3;
783pub const TEXTURE20 = 0x84D4;
784pub const TEXTURE21 = 0x84D5;
785pub const TEXTURE22 = 0x84D6;
786pub const TEXTURE23 = 0x84D7;
787pub const TEXTURE24 = 0x84D8;
788pub const TEXTURE25 = 0x84D9;
789pub const TEXTURE26 = 0x84DA;
790pub const TEXTURE27 = 0x84DB;
791pub const TEXTURE28 = 0x84DC;
792pub const TEXTURE29 = 0x84DD;
793pub const TEXTURE30 = 0x84DE;
794pub const TEXTURE31 = 0x84DF;
795pub const ACTIVE_TEXTURE = 0x84E0;
796pub const MULTISAMPLE = 0x809D;
797pub const SAMPLE_ALPHA_TO_COVERAGE = 0x809E;
798pub const SAMPLE_ALPHA_TO_ONE = 0x809F;
799pub const SAMPLE_COVERAGE = 0x80A0;
800pub const SAMPLE_BUFFERS = 0x80A8;
801pub const SAMPLES = 0x80A9;
802pub const SAMPLE_COVERAGE_VALUE = 0x80AA;
803pub const SAMPLE_COVERAGE_INVERT = 0x80AB;
804pub const TEXTURE_CUBE_MAP = 0x8513;
805pub const TEXTURE_BINDING_CUBE_MAP = 0x8514;
806pub const TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
807pub const TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
808pub const TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
809pub const TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
810pub const TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
811pub const TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A;
812pub const PROXY_TEXTURE_CUBE_MAP = 0x851B;
813pub const MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C;
814pub const COMPRESSED_RGB = 0x84ED;
815pub const COMPRESSED_RGBA = 0x84EE;
816pub const TEXTURE_COMPRESSION_HINT = 0x84EF;
817pub const TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0;
818pub const TEXTURE_COMPRESSED = 0x86A1;
819pub const NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2;
820pub const COMPRESSED_TEXTURE_FORMATS = 0x86A3;
821pub const CLAMP_TO_BORDER = 0x812D;
822pub const DOUBLE_MAT4x3 = 0x8F4E;
823pub const DOUBLE_MAT4x2 = 0x8F4D;
824pub const DOUBLE_MAT3x4 = 0x8F4C;
825pub const DOUBLE_MAT3x2 = 0x8F4B;
826pub const DOUBLE_MAT2x4 = 0x8F4A;
827pub const DOUBLE_MAT2x3 = 0x8F49;
828pub const DOUBLE_MAT4 = 0x8F48;
829pub const DOUBLE_MAT3 = 0x8F47;
830pub const DOUBLE_MAT2 = 0x8F46;
831pub const DOUBLE_VEC4 = 0x8FFE;
832pub const DOUBLE_VEC3 = 0x8FFD;
833pub const DOUBLE_VEC2 = 0x8FFC;
834pub const MAX_VERTEX_STREAMS = 0x8E71;
835pub const FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D;
836pub const MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C;
837pub const MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B;
838pub const MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A;
839pub const GEOMETRY_SHADER_INVOCATIONS = 0x887F;
840pub const DRAW_INDIRECT_BUFFER_BINDING = 0x8F43;
841pub const DRAW_INDIRECT_BUFFER = 0x8F3F;
842pub const UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F;
843pub const INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E;
844pub const SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D;
845pub const SAMPLER_CUBE_MAP_ARRAY = 0x900C;
846pub const PROXY_TEXTURE_CUBE_MAP_ARRAY = 0x900B;
847pub const TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A;
848pub const TEXTURE_CUBE_MAP_ARRAY = 0x9009;
849pub const MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F;
850pub const MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E;
851pub const MIN_SAMPLE_SHADING_VALUE = 0x8C37;
852pub const SAMPLE_SHADING = 0x8C36;
853pub const INT_2_10_10_10_REV = 0x8D9F;
854pub const TIMESTAMP = 0x8E28;
855pub const TIME_ELAPSED = 0x88BF;
856pub const TEXTURE_SWIZZLE_RGBA = 0x8E46;
857pub const TEXTURE_SWIZZLE_A = 0x8E45;
858pub const TEXTURE_SWIZZLE_B = 0x8E44;
859pub const TEXTURE_SWIZZLE_G = 0x8E43;
860pub const TEXTURE_SWIZZLE_R = 0x8E42;
861pub const RGB10_A2UI = 0x906F;
862pub const BLEND_DST_RGB = 0x80C8;
863pub const BLEND_SRC_RGB = 0x80C9;
864pub const BLEND_DST_ALPHA = 0x80CA;
865pub const BLEND_SRC_ALPHA = 0x80CB;
866pub const POINT_FADE_THRESHOLD_SIZE = 0x8128;
867pub const DEPTH_COMPONENT16 = 0x81A5;
868pub const DEPTH_COMPONENT24 = 0x81A6;
869pub const DEPTH_COMPONENT32 = 0x81A7;
870pub const MIRRORED_REPEAT = 0x8370;
871pub const MAX_TEXTURE_LOD_BIAS = 0x84FD;
872pub const TEXTURE_LOD_BIAS = 0x8501;
873pub const INCR_WRAP = 0x8507;
874pub const DECR_WRAP = 0x8508;
875pub const TEXTURE_DEPTH_SIZE = 0x884A;
876pub const TEXTURE_COMPARE_MODE = 0x884C;
877pub const TEXTURE_COMPARE_FUNC = 0x884D;
878pub const SAMPLER_BINDING = 0x8919;
879pub const ANY_SAMPLES_PASSED = 0x8C2F;
880pub const MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC;
881pub const ONE_MINUS_SRC1_ALPHA = 0x88FB;
882pub const ONE_MINUS_SRC1_COLOR = 0x88FA;
883pub const SRC1_COLOR = 0x88F9;
884pub const VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE;
885pub const MAX_INTEGER_SAMPLES = 0x9110;
886pub const MAX_DEPTH_TEXTURE_SAMPLES = 0x910F;
887pub const MAX_COLOR_TEXTURE_SAMPLES = 0x910E;
888pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D;
889pub const INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C;
890pub const SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B;
891pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A;
892pub const INT_SAMPLER_2D_MULTISAMPLE = 0x9109;
893pub const SAMPLER_2D_MULTISAMPLE = 0x9108;
894pub const TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107;
895pub const TEXTURE_SAMPLES = 0x9106;
896pub const TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105;
897pub const TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104;
898pub const PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103;
899pub const TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102;
900pub const PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101;
901pub const TEXTURE_2D_MULTISAMPLE = 0x9100;
902pub const MAX_SAMPLE_MASK_WORDS = 0x8E59;
903pub const SAMPLE_MASK_VALUE = 0x8E52;
904pub const SAMPLE_MASK = 0x8E51;
905pub const SAMPLE_POSITION = 0x8E50;
906pub const SYNC_FLUSH_COMMANDS_BIT = 0x00000001;
907pub const TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFF;
908pub const WAIT_FAILED = 0x911D;
909pub const CONDITION_SATISFIED = 0x911C;
910pub const TIMEOUT_EXPIRED = 0x911B;
911pub const ALREADY_SIGNALED = 0x911A;
912pub const SIGNALED = 0x9119;
913pub const UNSIGNALED = 0x9118;
914pub const SYNC_GPU_COMMANDS_COMPLETE = 0x9117;
915pub const BLEND_COLOR = 0x8005;
916pub const BLEND_EQUATION = 0x8009;
917pub const CONSTANT_COLOR = 0x8001;
918pub const ONE_MINUS_CONSTANT_COLOR = 0x8002;
919pub const CONSTANT_ALPHA = 0x8003;
920pub const ONE_MINUS_CONSTANT_ALPHA = 0x8004;
921pub const FUNC_ADD = 0x8006;
922pub const FUNC_REVERSE_SUBTRACT = 0x800B;
923pub const FUNC_SUBTRACT = 0x800A;
924pub const MIN = 0x8007;
925pub const MAX = 0x8008;
926pub const BUFFER_SIZE = 0x8764;
927pub const BUFFER_USAGE = 0x8765;
928pub const QUERY_COUNTER_BITS = 0x8864;
929pub const CURRENT_QUERY = 0x8865;
930pub const QUERY_RESULT = 0x8866;
931pub const QUERY_RESULT_AVAILABLE = 0x8867;
932pub const ARRAY_BUFFER = 0x8892;
933pub const ELEMENT_ARRAY_BUFFER = 0x8893;
934pub const ARRAY_BUFFER_BINDING = 0x8894;
935pub const ELEMENT_ARRAY_BUFFER_BINDING = 0x8895;
936pub const VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F;
937pub const READ_ONLY = 0x88B8;
938pub const WRITE_ONLY = 0x88B9;
939pub const READ_WRITE = 0x88BA;
940pub const BUFFER_ACCESS = 0x88BB;
941pub const BUFFER_MAPPED = 0x88BC;
942pub const BUFFER_MAP_POINTER = 0x88BD;
943pub const STREAM_DRAW = 0x88E0;
944pub const STREAM_READ = 0x88E1;
945pub const STREAM_COPY = 0x88E2;
946pub const STATIC_DRAW = 0x88E4;
947pub const STATIC_READ = 0x88E5;
948pub const STATIC_COPY = 0x88E6;
949pub const DYNAMIC_DRAW = 0x88E8;
950pub const DYNAMIC_READ = 0x88E9;
951pub const DYNAMIC_COPY = 0x88EA;
952pub const SAMPLES_PASSED = 0x8914;
953pub const SRC1_ALPHA = 0x8589;
954pub const SYNC_FENCE = 0x9116;
955pub const SYNC_FLAGS = 0x9115;
956pub const SYNC_STATUS = 0x9114;
957pub const SYNC_CONDITION = 0x9113;
958pub const OBJECT_TYPE = 0x9112;
959pub const MAX_SERVER_WAIT_TIMEOUT = 0x9111;
960pub const TEXTURE_CUBE_MAP_SEAMLESS = 0x884F;
961pub const PROVOKING_VERTEX = 0x8E4F;
962pub const LAST_VERTEX_CONVENTION = 0x8E4E;
963pub const FIRST_VERTEX_CONVENTION = 0x8E4D;
964pub const QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C;
965pub const DEPTH_CLAMP = 0x864F;
966pub const CONTEXT_PROFILE_MASK = 0x9126;
967pub const MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125;
968pub const MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124;
969pub const MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123;
970pub const MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122;
971pub const BLEND_EQUATION_RGB = 0x8009;
972pub const VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622;
973pub const VERTEX_ATTRIB_ARRAY_SIZE = 0x8623;
974pub const VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624;
975pub const VERTEX_ATTRIB_ARRAY_TYPE = 0x8625;
976pub const CURRENT_VERTEX_ATTRIB = 0x8626;
977pub const VERTEX_PROGRAM_POINT_SIZE = 0x8642;
978pub const VERTEX_ATTRIB_ARRAY_POINTER = 0x8645;
979pub const STENCIL_BACK_FUNC = 0x8800;
980pub const STENCIL_BACK_FAIL = 0x8801;
981pub const STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802;
982pub const STENCIL_BACK_PASS_DEPTH_PASS = 0x8803;
983pub const MAX_DRAW_BUFFERS = 0x8824;
984pub const DRAW_BUFFER0 = 0x8825;
985pub const DRAW_BUFFER1 = 0x8826;
986pub const DRAW_BUFFER2 = 0x8827;
987pub const DRAW_BUFFER3 = 0x8828;
988pub const DRAW_BUFFER4 = 0x8829;
989pub const DRAW_BUFFER5 = 0x882A;
990pub const DRAW_BUFFER6 = 0x882B;
991pub const DRAW_BUFFER7 = 0x882C;
992pub const DRAW_BUFFER8 = 0x882D;
993pub const DRAW_BUFFER9 = 0x882E;
994pub const DRAW_BUFFER10 = 0x882F;
995pub const DRAW_BUFFER11 = 0x8830;
996pub const DRAW_BUFFER12 = 0x8831;
997pub const DRAW_BUFFER13 = 0x8832;
998pub const DRAW_BUFFER14 = 0x8833;
999pub const DRAW_BUFFER15 = 0x8834;
1000pub const BLEND_EQUATION_ALPHA = 0x883D;
1001pub const MAX_VERTEX_ATTRIBS = 0x8869;
1002pub const VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A;
1003pub const MAX_TEXTURE_IMAGE_UNITS = 0x8872;
1004pub const FRAGMENT_SHADER = 0x8B30;
1005pub const VERTEX_SHADER = 0x8B31;
1006pub const MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49;
1007pub const MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A;
1008pub const MAX_VARYING_FLOATS = 0x8B4B;
1009pub const MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C;
1010pub const MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D;
1011pub const SHADER_TYPE = 0x8B4F;
1012pub const FLOAT_VEC2 = 0x8B50;
1013pub const FLOAT_VEC3 = 0x8B51;
1014pub const FLOAT_VEC4 = 0x8B52;
1015pub const INT_VEC2 = 0x8B53;
1016pub const INT_VEC3 = 0x8B54;
1017pub const INT_VEC4 = 0x8B55;
1018pub const BOOL = 0x8B56;
1019pub const BOOL_VEC2 = 0x8B57;
1020pub const BOOL_VEC3 = 0x8B58;
1021pub const BOOL_VEC4 = 0x8B59;
1022pub const FLOAT_MAT2 = 0x8B5A;
1023pub const FLOAT_MAT3 = 0x8B5B;
1024pub const FLOAT_MAT4 = 0x8B5C;
1025pub const SAMPLER_1D = 0x8B5D;
1026pub const SAMPLER_2D = 0x8B5E;
1027pub const SAMPLER_3D = 0x8B5F;
1028pub const SAMPLER_CUBE = 0x8B60;
1029pub const SAMPLER_1D_SHADOW = 0x8B61;
1030pub const SAMPLER_2D_SHADOW = 0x8B62;
1031pub const DELETE_STATUS = 0x8B80;
1032pub const COMPILE_STATUS = 0x8B81;
1033pub const LINK_STATUS = 0x8B82;
1034pub const VALIDATE_STATUS = 0x8B83;
1035pub const INFO_LOG_LENGTH = 0x8B84;
1036pub const ATTACHED_SHADERS = 0x8B85;
1037pub const ACTIVE_UNIFORMS = 0x8B86;
1038pub const ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87;
1039pub const SHADER_SOURCE_LENGTH = 0x8B88;
1040pub const ACTIVE_ATTRIBUTES = 0x8B89;
1041pub const ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A;
1042pub const FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B;
1043pub const SHADING_LANGUAGE_VERSION = 0x8B8C;
1044pub const CURRENT_PROGRAM = 0x8B8D;
1045pub const POINT_SPRITE_COORD_ORIGIN = 0x8CA0;
1046pub const LOWER_LEFT = 0x8CA1;
1047pub const UPPER_LEFT = 0x8CA2;
1048pub const STENCIL_BACK_REF = 0x8CA3;
1049pub const STENCIL_BACK_VALUE_MASK = 0x8CA4;
1050pub const STENCIL_BACK_WRITEMASK = 0x8CA5;
1051pub const MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1;
1052pub const MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0;
1053pub const MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF;
1054pub const GEOMETRY_OUTPUT_TYPE = 0x8918;
1055pub const PIXEL_PACK_BUFFER = 0x88EB;
1056pub const PIXEL_UNPACK_BUFFER = 0x88EC;
1057pub const PIXEL_PACK_BUFFER_BINDING = 0x88ED;
1058pub const PIXEL_UNPACK_BUFFER_BINDING = 0x88EF;
1059pub const FLOAT_MAT2x3 = 0x8B65;
1060pub const FLOAT_MAT2x4 = 0x8B66;
1061pub const FLOAT_MAT3x2 = 0x8B67;
1062pub const FLOAT_MAT3x4 = 0x8B68;
1063pub const FLOAT_MAT4x2 = 0x8B69;
1064pub const FLOAT_MAT4x3 = 0x8B6A;
1065pub const SRGB = 0x8C40;
1066pub const SRGB8 = 0x8C41;
1067pub const SRGB_ALPHA = 0x8C42;
1068pub const SRGB8_ALPHA8 = 0x8C43;
1069pub const COMPRESSED_SRGB = 0x8C48;
1070pub const COMPRESSED_SRGB_ALPHA = 0x8C49;
1071pub const GEOMETRY_INPUT_TYPE = 0x8917;
1072pub const GEOMETRY_VERTICES_OUT = 0x8916;
1073pub const GEOMETRY_SHADER = 0x8DD9;
1074pub const FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8;
1075pub const FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7;
1076pub const MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29;
1077pub const PROGRAM_POINT_SIZE = 0x8642;
1078pub const COMPARE_REF_TO_TEXTURE = 0x884E;
1079pub const CLIP_DISTANCE0 = 0x3000;
1080pub const CLIP_DISTANCE1 = 0x3001;
1081pub const CLIP_DISTANCE2 = 0x3002;
1082pub const CLIP_DISTANCE3 = 0x3003;
1083pub const CLIP_DISTANCE4 = 0x3004;
1084pub const CLIP_DISTANCE5 = 0x3005;
1085pub const CLIP_DISTANCE6 = 0x3006;
1086pub const CLIP_DISTANCE7 = 0x3007;
1087pub const MAX_CLIP_DISTANCES = 0x0D32;
1088pub const MAJOR_VERSION = 0x821B;
1089pub const MINOR_VERSION = 0x821C;
1090pub const NUM_EXTENSIONS = 0x821D;
1091pub const CONTEXT_FLAGS = 0x821E;
1092pub const COMPRESSED_RED = 0x8225;
1093pub const COMPRESSED_RG = 0x8226;
1094pub const CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x00000001;
1095pub const RGBA32F = 0x8814;
1096pub const RGB32F = 0x8815;
1097pub const RGBA16F = 0x881A;
1098pub const RGB16F = 0x881B;
1099pub const VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD;
1100pub const MAX_ARRAY_TEXTURE_LAYERS = 0x88FF;
1101pub const MIN_PROGRAM_TEXEL_OFFSET = 0x8904;
1102pub const MAX_PROGRAM_TEXEL_OFFSET = 0x8905;
1103pub const CLAMP_READ_COLOR = 0x891C;
1104pub const FIXED_ONLY = 0x891D;
1105pub const MAX_VARYING_COMPONENTS = 0x8B4B;
1106pub const TEXTURE_1D_ARRAY = 0x8C18;
1107pub const PROXY_TEXTURE_1D_ARRAY = 0x8C19;
1108pub const TEXTURE_2D_ARRAY = 0x8C1A;
1109pub const PROXY_TEXTURE_2D_ARRAY = 0x8C1B;
1110pub const TEXTURE_BINDING_1D_ARRAY = 0x8C1C;
1111pub const TEXTURE_BINDING_2D_ARRAY = 0x8C1D;
1112pub const R11F_G11F_B10F = 0x8C3A;
1113pub const UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B;
1114pub const RGB9_E5 = 0x8C3D;
1115pub const UNSIGNED_INT_5_9_9_9_REV = 0x8C3E;
1116pub const TEXTURE_SHARED_SIZE = 0x8C3F;
1117pub const TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76;
1118pub const TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F;
1119pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80;
1120pub const TRANSFORM_FEEDBACK_VARYINGS = 0x8C83;
1121pub const TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84;
1122pub const TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85;
1123pub const PRIMITIVES_GENERATED = 0x8C87;
1124pub const TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88;
1125pub const RASTERIZER_DISCARD = 0x8C89;
1126pub const MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A;
1127pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B;
1128pub const INTERLEAVED_ATTRIBS = 0x8C8C;
1129pub const SEPARATE_ATTRIBS = 0x8C8D;
1130pub const TRANSFORM_FEEDBACK_BUFFER = 0x8C8E;
1131pub const TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F;
1132pub const RGBA32UI = 0x8D70;
1133pub const RGB32UI = 0x8D71;
1134pub const RGBA16UI = 0x8D76;
1135pub const RGB16UI = 0x8D77;
1136pub const RGBA8UI = 0x8D7C;
1137pub const RGB8UI = 0x8D7D;
1138pub const RGBA32I = 0x8D82;
1139pub const RGB32I = 0x8D83;
1140pub const RGBA16I = 0x8D88;
1141pub const RGB16I = 0x8D89;
1142pub const RGBA8I = 0x8D8E;
1143pub const RGB8I = 0x8D8F;
1144pub const RED_INTEGER = 0x8D94;
1145pub const GREEN_INTEGER = 0x8D95;
1146pub const BLUE_INTEGER = 0x8D96;
1147pub const RGB_INTEGER = 0x8D98;
1148pub const RGBA_INTEGER = 0x8D99;
1149pub const BGR_INTEGER = 0x8D9A;
1150pub const BGRA_INTEGER = 0x8D9B;
1151pub const SAMPLER_1D_ARRAY = 0x8DC0;
1152pub const SAMPLER_2D_ARRAY = 0x8DC1;
1153pub const SAMPLER_1D_ARRAY_SHADOW = 0x8DC3;
1154pub const SAMPLER_2D_ARRAY_SHADOW = 0x8DC4;
1155pub const SAMPLER_CUBE_SHADOW = 0x8DC5;
1156pub const UNSIGNED_INT_VEC2 = 0x8DC6;
1157pub const UNSIGNED_INT_VEC3 = 0x8DC7;
1158pub const UNSIGNED_INT_VEC4 = 0x8DC8;
1159pub const INT_SAMPLER_1D = 0x8DC9;
1160pub const INT_SAMPLER_2D = 0x8DCA;
1161pub const INT_SAMPLER_3D = 0x8DCB;
1162pub const INT_SAMPLER_CUBE = 0x8DCC;
1163pub const INT_SAMPLER_1D_ARRAY = 0x8DCE;
1164pub const INT_SAMPLER_2D_ARRAY = 0x8DCF;
1165pub const UNSIGNED_INT_SAMPLER_1D = 0x8DD1;
1166pub const UNSIGNED_INT_SAMPLER_2D = 0x8DD2;
1167pub const UNSIGNED_INT_SAMPLER_3D = 0x8DD3;
1168pub const UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4;
1169pub const UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6;
1170pub const UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7;
1171pub const QUERY_WAIT = 0x8E13;
1172pub const QUERY_NO_WAIT = 0x8E14;
1173pub const QUERY_BY_REGION_WAIT = 0x8E15;
1174pub const QUERY_BY_REGION_NO_WAIT = 0x8E16;
1175pub const BUFFER_ACCESS_FLAGS = 0x911F;
1176pub const BUFFER_MAP_LENGTH = 0x9120;
1177pub const BUFFER_MAP_OFFSET = 0x9121;
1178pub const DEPTH_COMPONENT32F = 0x8CAC;
1179pub const DEPTH32F_STENCIL8 = 0x8CAD;
1180pub const FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD;
1181pub const INVALID_FRAMEBUFFER_OPERATION = 0x0506;
1182pub const FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210;
1183pub const FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211;
1184pub const FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212;
1185pub const FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213;
1186pub const FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214;
1187pub const FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215;
1188pub const FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216;
1189pub const FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217;
1190pub const FRAMEBUFFER_DEFAULT = 0x8218;
1191pub const FRAMEBUFFER_UNDEFINED = 0x8219;
1192pub const DEPTH_STENCIL_ATTACHMENT = 0x821A;
1193pub const MAX_RENDERBUFFER_SIZE = 0x84E8;
1194pub const DEPTH_STENCIL = 0x84F9;
1195pub const UNSIGNED_INT_24_8 = 0x84FA;
1196pub const DEPTH24_STENCIL8 = 0x88F0;
1197pub const TEXTURE_STENCIL_SIZE = 0x88F1;
1198pub const TEXTURE_RED_TYPE = 0x8C10;
1199pub const TEXTURE_GREEN_TYPE = 0x8C11;
1200pub const TEXTURE_BLUE_TYPE = 0x8C12;
1201pub const TEXTURE_ALPHA_TYPE = 0x8C13;
1202pub const TEXTURE_DEPTH_TYPE = 0x8C16;
1203pub const UNSIGNED_NORMALIZED = 0x8C17;
1204pub const FRAMEBUFFER_BINDING = 0x8CA6;
1205pub const DRAW_FRAMEBUFFER_BINDING = 0x8CA6;
1206pub const RENDERBUFFER_BINDING = 0x8CA7;
1207pub const READ_FRAMEBUFFER = 0x8CA8;
1208pub const DRAW_FRAMEBUFFER = 0x8CA9;
1209pub const READ_FRAMEBUFFER_BINDING = 0x8CAA;
1210pub const RENDERBUFFER_SAMPLES = 0x8CAB;
1211pub const FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0;
1212pub const FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1;
1213pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2;
1214pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3;
1215pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4;
1216pub const FRAMEBUFFER_COMPLETE = 0x8CD5;
1217pub const FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6;
1218pub const FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7;
1219pub const FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB;
1220pub const FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC;
1221pub const FRAMEBUFFER_UNSUPPORTED = 0x8CDD;
1222pub const MAX_COLOR_ATTACHMENTS = 0x8CDF;
1223pub const COLOR_ATTACHMENT0 = 0x8CE0;
1224pub const COLOR_ATTACHMENT1 = 0x8CE1;
1225pub const COLOR_ATTACHMENT2 = 0x8CE2;
1226pub const COLOR_ATTACHMENT3 = 0x8CE3;
1227pub const COLOR_ATTACHMENT4 = 0x8CE4;
1228pub const COLOR_ATTACHMENT5 = 0x8CE5;
1229pub const COLOR_ATTACHMENT6 = 0x8CE6;
1230pub const COLOR_ATTACHMENT7 = 0x8CE7;
1231pub const COLOR_ATTACHMENT8 = 0x8CE8;
1232pub const COLOR_ATTACHMENT9 = 0x8CE9;
1233pub const COLOR_ATTACHMENT10 = 0x8CEA;
1234pub const COLOR_ATTACHMENT11 = 0x8CEB;
1235pub const COLOR_ATTACHMENT12 = 0x8CEC;
1236pub const COLOR_ATTACHMENT13 = 0x8CED;
1237pub const COLOR_ATTACHMENT14 = 0x8CEE;
1238pub const COLOR_ATTACHMENT15 = 0x8CEF;
1239pub const COLOR_ATTACHMENT16 = 0x8CF0;
1240pub const COLOR_ATTACHMENT17 = 0x8CF1;
1241pub const COLOR_ATTACHMENT18 = 0x8CF2;
1242pub const COLOR_ATTACHMENT19 = 0x8CF3;
1243pub const COLOR_ATTACHMENT20 = 0x8CF4;
1244pub const COLOR_ATTACHMENT21 = 0x8CF5;
1245pub const COLOR_ATTACHMENT22 = 0x8CF6;
1246pub const COLOR_ATTACHMENT23 = 0x8CF7;
1247pub const COLOR_ATTACHMENT24 = 0x8CF8;
1248pub const COLOR_ATTACHMENT25 = 0x8CF9;
1249pub const COLOR_ATTACHMENT26 = 0x8CFA;
1250pub const COLOR_ATTACHMENT27 = 0x8CFB;
1251pub const COLOR_ATTACHMENT28 = 0x8CFC;
1252pub const COLOR_ATTACHMENT29 = 0x8CFD;
1253pub const COLOR_ATTACHMENT30 = 0x8CFE;
1254pub const COLOR_ATTACHMENT31 = 0x8CFF;
1255pub const DEPTH_ATTACHMENT = 0x8D00;
1256pub const STENCIL_ATTACHMENT = 0x8D20;
1257pub const FRAMEBUFFER = 0x8D40;
1258pub const RENDERBUFFER = 0x8D41;
1259pub const RENDERBUFFER_WIDTH = 0x8D42;
1260pub const RENDERBUFFER_HEIGHT = 0x8D43;
1261pub const RENDERBUFFER_INTERNAL_FORMAT = 0x8D44;
1262pub const STENCIL_INDEX1 = 0x8D46;
1263pub const STENCIL_INDEX4 = 0x8D47;
1264pub const STENCIL_INDEX8 = 0x8D48;
1265pub const STENCIL_INDEX16 = 0x8D49;
1266pub const RENDERBUFFER_RED_SIZE = 0x8D50;
1267pub const RENDERBUFFER_GREEN_SIZE = 0x8D51;
1268pub const RENDERBUFFER_BLUE_SIZE = 0x8D52;
1269pub const RENDERBUFFER_ALPHA_SIZE = 0x8D53;
1270pub const RENDERBUFFER_DEPTH_SIZE = 0x8D54;
1271pub const RENDERBUFFER_STENCIL_SIZE = 0x8D55;
1272pub const FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56;
1273pub const MAX_SAMPLES = 0x8D57;
1274pub const LINES_ADJACENCY = 0x000A;
1275pub const CONTEXT_COMPATIBILITY_PROFILE_BIT = 0x00000002;
1276pub const CONTEXT_CORE_PROFILE_BIT = 0x00000001;
1277pub const FRAMEBUFFER_SRGB = 0x8DB9;
1278pub const HALF_FLOAT = 0x140B;
1279pub const MAP_READ_BIT = 0x0001;
1280pub const MAP_WRITE_BIT = 0x0002;
1281pub const MAP_INVALIDATE_RANGE_BIT = 0x0004;
1282pub const MAP_INVALIDATE_BUFFER_BIT = 0x0008;
1283pub const MAP_FLUSH_EXPLICIT_BIT = 0x0010;
1284pub const MAP_UNSYNCHRONIZED_BIT = 0x0020;
1285pub const COMPRESSED_RED_RGTC1 = 0x8DBB;
1286pub const COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC;
1287pub const COMPRESSED_RG_RGTC2 = 0x8DBD;
1288pub const COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE;
1289pub const RG = 0x8227;
1290pub const RG_INTEGER = 0x8228;
1291pub const R8 = 0x8229;
1292pub const R16 = 0x822A;
1293pub const RG8 = 0x822B;
1294pub const RG16 = 0x822C;
1295pub const R16F = 0x822D;
1296pub const R32F = 0x822E;
1297pub const RG16F = 0x822F;
1298pub const RG32F = 0x8230;
1299pub const R8I = 0x8231;
1300pub const R8UI = 0x8232;
1301pub const R16I = 0x8233;
1302pub const R16UI = 0x8234;
1303pub const R32I = 0x8235;
1304pub const R32UI = 0x8236;
1305pub const RG8I = 0x8237;
1306pub const RG8UI = 0x8238;
1307pub const RG16I = 0x8239;
1308pub const RG16UI = 0x823A;
1309pub const RG32I = 0x823B;
1310pub const RG32UI = 0x823C;
1311pub const VERTEX_ARRAY_BINDING = 0x85B5;
1312pub const TRIANGLE_STRIP_ADJACENCY = 0x000D;
1313pub const TRIANGLES_ADJACENCY = 0x000C;
1314pub const LINE_STRIP_ADJACENCY = 0x000B;
1315pub const SAMPLER_2D_RECT = 0x8B63;
1316pub const SAMPLER_2D_RECT_SHADOW = 0x8B64;
1317pub const SAMPLER_BUFFER = 0x8DC2;
1318pub const INT_SAMPLER_2D_RECT = 0x8DCD;
1319pub const INT_SAMPLER_BUFFER = 0x8DD0;
1320pub const UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5;
1321pub const UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8;
1322pub const TEXTURE_BUFFER = 0x8C2A;
1323pub const MAX_TEXTURE_BUFFER_SIZE = 0x8C2B;
1324pub const TEXTURE_BINDING_BUFFER = 0x8C2C;
1325pub const TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D;
1326pub const TEXTURE_RECTANGLE = 0x84F5;
1327pub const TEXTURE_BINDING_RECTANGLE = 0x84F6;
1328pub const PROXY_TEXTURE_RECTANGLE = 0x84F7;
1329pub const MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8;
1330pub const R8_SNORM = 0x8F94;
1331pub const RG8_SNORM = 0x8F95;
1332pub const RGB8_SNORM = 0x8F96;
1333pub const RGBA8_SNORM = 0x8F97;
1334pub const R16_SNORM = 0x8F98;
1335pub const RG16_SNORM = 0x8F99;
1336pub const RGB16_SNORM = 0x8F9A;
1337pub const RGBA16_SNORM = 0x8F9B;
1338pub const SIGNED_NORMALIZED = 0x8F9C;
1339pub const PRIMITIVE_RESTART = 0x8F9D;
1340pub const PRIMITIVE_RESTART_INDEX = 0x8F9E;
1341pub const COPY_READ_BUFFER = 0x8F36;
1342pub const COPY_WRITE_BUFFER = 0x8F37;
1343pub const UNIFORM_BUFFER = 0x8A11;
1344pub const UNIFORM_BUFFER_BINDING = 0x8A28;
1345pub const UNIFORM_BUFFER_START = 0x8A29;
1346pub const UNIFORM_BUFFER_SIZE = 0x8A2A;
1347pub const MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B;
1348pub const MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C;
1349pub const MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D;
1350pub const MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E;
1351pub const MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F;
1352pub const MAX_UNIFORM_BLOCK_SIZE = 0x8A30;
1353pub const MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31;
1354pub const MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32;
1355pub const MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33;
1356pub const UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34;
1357pub const ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35;
1358pub const ACTIVE_UNIFORM_BLOCKS = 0x8A36;
1359pub const UNIFORM_TYPE = 0x8A37;
1360pub const UNIFORM_SIZE = 0x8A38;
1361pub const UNIFORM_NAME_LENGTH = 0x8A39;
1362pub const UNIFORM_BLOCK_INDEX = 0x8A3A;
1363pub const UNIFORM_OFFSET = 0x8A3B;
1364pub const UNIFORM_ARRAY_STRIDE = 0x8A3C;
1365pub const UNIFORM_MATRIX_STRIDE = 0x8A3D;
1366pub const UNIFORM_IS_ROW_MAJOR = 0x8A3E;
1367pub const UNIFORM_BLOCK_BINDING = 0x8A3F;
1368pub const UNIFORM_BLOCK_DATA_SIZE = 0x8A40;
1369pub const UNIFORM_BLOCK_NAME_LENGTH = 0x8A41;
1370pub const UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42;
1371pub const UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43;
1372pub const UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44;
1373pub const UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45;
1374pub const UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46;
1375pub const INVALID_INDEX = 0xFFFFFFFF;
1376pub const STACK_UNDERFLOW = 0x0504;
1377pub const STACK_OVERFLOW = 0x0503;
1378pub const MAX_VERTEX_ATTRIB_STRIDE = 0x82E5;
1379pub const PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221;
1380pub const TEXTURE_BUFFER_BINDING = 0x8C2A;
1381pub const MAP_PERSISTENT_BIT = 0x0040;
1382pub const MAP_COHERENT_BIT = 0x0080;
1383pub const DYNAMIC_STORAGE_BIT = 0x0100;
1384pub const CLIENT_STORAGE_BIT = 0x0200;
1385pub const CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000;
1386pub const BUFFER_IMMUTABLE_STORAGE = 0x821F;
1387pub const BUFFER_STORAGE_FLAGS = 0x8220;
1388pub const CLEAR_TEXTURE = 0x9365;
1389pub const LOCATION_COMPONENT = 0x934A;
1390pub const TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B;
1391pub const TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C;
1392pub const QUERY_BUFFER = 0x9192;
1393pub const QUERY_BUFFER_BARRIER_BIT = 0x00008000;
1394pub const QUERY_BUFFER_BINDING = 0x9193;
1395pub const QUERY_RESULT_NO_WAIT = 0x9194;
1396pub const MIRROR_CLAMP_TO_EDGE = 0x8743;
1397pub const CONTEXT_LOST = 0x0507;
1398pub const NEGATIVE_ONE_TO_ONE = 0x935E;
1399pub const ZERO_TO_ONE = 0x935F;
1400pub const CLIP_ORIGIN = 0x935C;
1401pub const CLIP_DEPTH_MODE = 0x935D;
1402pub const QUERY_WAIT_INVERTED = 0x8E17;
1403pub const QUERY_NO_WAIT_INVERTED = 0x8E18;
1404pub const QUERY_BY_REGION_WAIT_INVERTED = 0x8E19;
1405pub const QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A;
1406pub const MAX_CULL_DISTANCES = 0x82F9;
1407pub const MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA;
1408pub const TEXTURE_TARGET = 0x1006;
1409pub const QUERY_TARGET = 0x82EA;
1410pub const GUILTY_CONTEXT_RESET = 0x8253;
1411pub const INNOCENT_CONTEXT_RESET = 0x8254;
1412pub const UNKNOWN_CONTEXT_RESET = 0x8255;
1413pub const RESET_NOTIFICATION_STRATEGY = 0x8256;
1414pub const LOSE_CONTEXT_ON_RESET = 0x8252;
1415pub const NO_RESET_NOTIFICATION = 0x8261;
1416pub const CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x00000004;
1417pub const CONTEXT_RELEASE_BEHAVIOR = 0x82FB;
1418pub const CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC;
1419
1420
1421pub fn texStorage2D(_target: GLenum, _levels: GLsizei, _internalformat: GLenum, _width: GLsizei, _height: GLsizei) callconv(.C) void {
1422 return @call(.always_tail, function_pointers.glTexStorage2D, .{_target, _levels, _internalformat, _width, _height});
1423}
1424
1425pub fn texStorage1D(_target: GLenum, _levels: GLsizei, _internalformat: GLenum, _width: GLsizei) callconv(.C) void {
1426 return @call(.always_tail, function_pointers.glTexStorage1D, .{_target, _levels, _internalformat, _width});
1427}
1428
1429pub fn drawTransformFeedbackStreamInstanced(_mode: GLenum, _id: GLuint, _stream: GLuint, _instancecount: GLsizei) callconv(.C) void {
1430 return @call(.always_tail, function_pointers.glDrawTransformFeedbackStreamInstanced, .{_mode, _id, _stream, _instancecount});
1431}
1432
1433pub fn drawTransformFeedbackInstanced(_mode: GLenum, _id: GLuint, _instancecount: GLsizei) callconv(.C) void {
1434 return @call(.always_tail, function_pointers.glDrawTransformFeedbackInstanced, .{_mode, _id, _instancecount});
1435}
1436
1437pub fn texStorage3D(_target: GLenum, _levels: GLsizei, _internalformat: GLenum, _width: GLsizei, _height: GLsizei, _depth: GLsizei) callconv(.C) void {
1438 return @call(.always_tail, function_pointers.glTexStorage3D, .{_target, _levels, _internalformat, _width, _height, _depth});
1439}
1440
1441pub fn memoryBarrier(_barriers: GLbitfield) callconv(.C) void {
1442 return @call(.always_tail, function_pointers.glMemoryBarrier, .{_barriers});
1443}
1444
1445pub fn bindImageTexture(_unit: GLuint, _texture: GLuint, _level: GLint, _layered: GLboolean, _layer: GLint, _access: GLenum, _format: GLenum) callconv(.C) void {
1446 return @call(.always_tail, function_pointers.glBindImageTexture, .{_unit, _texture, _level, _layered, _layer, _access, _format});
1447}
1448
1449pub fn getActiveAtomicCounterBufferiv(_program: GLuint, _bufferIndex: GLuint, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
1450 return @call(.always_tail, function_pointers.glGetActiveAtomicCounterBufferiv, .{_program, _bufferIndex, _pname, _params});
1451}
1452
1453pub fn getInternalformativ(_target: GLenum, _internalformat: GLenum, _pname: GLenum, _count: GLsizei, _params: [*c]GLint) callconv(.C) void {
1454 return @call(.always_tail, function_pointers.glGetInternalformativ, .{_target, _internalformat, _pname, _count, _params});
1455}
1456
1457pub fn drawElementsInstancedBaseVertexBaseInstance(_mode: GLenum, _count: GLsizei, _type: GLenum, _indices: ?*const anyopaque, _instancecount: GLsizei, _basevertex: GLint, _baseinstance: GLuint) callconv(.C) void {
1458 return @call(.always_tail, function_pointers.glDrawElementsInstancedBaseVertexBaseInstance, .{_mode, _count, _type, _indices, _instancecount, _basevertex, _baseinstance});
1459}
1460
1461pub fn drawElementsInstancedBaseInstance(_mode: GLenum, _count: GLsizei, _type: GLenum, _indices: ?*const anyopaque, _instancecount: GLsizei, _baseinstance: GLuint) callconv(.C) void {
1462 return @call(.always_tail, function_pointers.glDrawElementsInstancedBaseInstance, .{_mode, _count, _type, _indices, _instancecount, _baseinstance});
1463}
1464
1465pub fn drawArraysInstancedBaseInstance(_mode: GLenum, _first: GLint, _count: GLsizei, _instancecount: GLsizei, _baseinstance: GLuint) callconv(.C) void {
1466 return @call(.always_tail, function_pointers.glDrawArraysInstancedBaseInstance, .{_mode, _first, _count, _instancecount, _baseinstance});
1467}
1468
1469pub fn getDoublei_v(_target: GLenum, _index: GLuint, _data: [*c]GLdouble) callconv(.C) void {
1470 return @call(.always_tail, function_pointers.glGetDoublei_v, .{_target, _index, _data});
1471}
1472
1473pub fn getFloati_v(_target: GLenum, _index: GLuint, _data: [*c]GLfloat) callconv(.C) void {
1474 return @call(.always_tail, function_pointers.glGetFloati_v, .{_target, _index, _data});
1475}
1476
1477pub fn depthRangeIndexed(_index: GLuint, _n: GLdouble, _f: GLdouble) callconv(.C) void {
1478 return @call(.always_tail, function_pointers.glDepthRangeIndexed, .{_index, _n, _f});
1479}
1480
1481pub fn depthRangeArrayv(_first: GLuint, _count: GLsizei, _v: [*c]const GLdouble) callconv(.C) void {
1482 return @call(.always_tail, function_pointers.glDepthRangeArrayv, .{_first, _count, _v});
1483}
1484
1485pub fn scissorIndexedv(_index: GLuint, _v: [*c]const GLint) callconv(.C) void {
1486 return @call(.always_tail, function_pointers.glScissorIndexedv, .{_index, _v});
1487}
1488
1489pub fn scissorIndexed(_index: GLuint, _left: GLint, _bottom: GLint, _width: GLsizei, _height: GLsizei) callconv(.C) void {
1490 return @call(.always_tail, function_pointers.glScissorIndexed, .{_index, _left, _bottom, _width, _height});
1491}
1492
1493pub fn scissorArrayv(_first: GLuint, _count: GLsizei, _v: [*c]const GLint) callconv(.C) void {
1494 return @call(.always_tail, function_pointers.glScissorArrayv, .{_first, _count, _v});
1495}
1496
1497pub fn viewportIndexedfv(_index: GLuint, _v: [*c]const GLfloat) callconv(.C) void {
1498 return @call(.always_tail, function_pointers.glViewportIndexedfv, .{_index, _v});
1499}
1500
1501pub fn viewportIndexedf(_index: GLuint, _x: GLfloat, _y: GLfloat, _w: GLfloat, _h: GLfloat) callconv(.C) void {
1502 return @call(.always_tail, function_pointers.glViewportIndexedf, .{_index, _x, _y, _w, _h});
1503}
1504
1505pub fn viewportArrayv(_first: GLuint, _count: GLsizei, _v: [*c]const GLfloat) callconv(.C) void {
1506 return @call(.always_tail, function_pointers.glViewportArrayv, .{_first, _count, _v});
1507}
1508
1509pub fn getVertexAttribLdv(_index: GLuint, _pname: GLenum, _params: [*c]GLdouble) callconv(.C) void {
1510 return @call(.always_tail, function_pointers.glGetVertexAttribLdv, .{_index, _pname, _params});
1511}
1512
1513pub fn vertexAttribLPointer(_index: GLuint, _size: GLint, _type: GLenum, _stride: GLsizei, _pointer: ?*const anyopaque) callconv(.C) void {
1514 return @call(.always_tail, function_pointers.glVertexAttribLPointer, .{_index, _size, _type, _stride, _pointer});
1515}
1516
1517pub fn vertexAttribL4dv(_index: GLuint, _v: [*c]const GLdouble) callconv(.C) void {
1518 return @call(.always_tail, function_pointers.glVertexAttribL4dv, .{_index, _v});
1519}
1520
1521pub fn vertexAttribL3dv(_index: GLuint, _v: [*c]const GLdouble) callconv(.C) void {
1522 return @call(.always_tail, function_pointers.glVertexAttribL3dv, .{_index, _v});
1523}
1524
1525pub fn vertexAttribL2dv(_index: GLuint, _v: [*c]const GLdouble) callconv(.C) void {
1526 return @call(.always_tail, function_pointers.glVertexAttribL2dv, .{_index, _v});
1527}
1528
1529pub fn vertexAttribL1dv(_index: GLuint, _v: [*c]const GLdouble) callconv(.C) void {
1530 return @call(.always_tail, function_pointers.glVertexAttribL1dv, .{_index, _v});
1531}
1532
1533pub fn vertexAttribL4d(_index: GLuint, _x: GLdouble, _y: GLdouble, _z: GLdouble, _w: GLdouble) callconv(.C) void {
1534 return @call(.always_tail, function_pointers.glVertexAttribL4d, .{_index, _x, _y, _z, _w});
1535}
1536
1537pub fn vertexAttribL3d(_index: GLuint, _x: GLdouble, _y: GLdouble, _z: GLdouble) callconv(.C) void {
1538 return @call(.always_tail, function_pointers.glVertexAttribL3d, .{_index, _x, _y, _z});
1539}
1540
1541pub fn vertexAttribL2d(_index: GLuint, _x: GLdouble, _y: GLdouble) callconv(.C) void {
1542 return @call(.always_tail, function_pointers.glVertexAttribL2d, .{_index, _x, _y});
1543}
1544
1545pub fn vertexAttribL1d(_index: GLuint, _x: GLdouble) callconv(.C) void {
1546 return @call(.always_tail, function_pointers.glVertexAttribL1d, .{_index, _x});
1547}
1548
1549pub fn validateProgramPipeline(_pipeline: GLuint) callconv(.C) void {
1550 return @call(.always_tail, function_pointers.glValidateProgramPipeline, .{_pipeline});
1551}
1552
1553pub fn programUniformMatrix4x3dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1554 return @call(.always_tail, function_pointers.glProgramUniformMatrix4x3dv, .{_program, _location, _count, _transpose, _value});
1555}
1556
1557pub fn programUniformMatrix3x4dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1558 return @call(.always_tail, function_pointers.glProgramUniformMatrix3x4dv, .{_program, _location, _count, _transpose, _value});
1559}
1560
1561pub fn programUniformMatrix4x2dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1562 return @call(.always_tail, function_pointers.glProgramUniformMatrix4x2dv, .{_program, _location, _count, _transpose, _value});
1563}
1564
1565pub fn programUniformMatrix2x4dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1566 return @call(.always_tail, function_pointers.glProgramUniformMatrix2x4dv, .{_program, _location, _count, _transpose, _value});
1567}
1568
1569pub fn programUniformMatrix3x2dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1570 return @call(.always_tail, function_pointers.glProgramUniformMatrix3x2dv, .{_program, _location, _count, _transpose, _value});
1571}
1572
1573pub fn programUniformMatrix2x3dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1574 return @call(.always_tail, function_pointers.glProgramUniformMatrix2x3dv, .{_program, _location, _count, _transpose, _value});
1575}
1576
1577pub fn programUniformMatrix4x3fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1578 return @call(.always_tail, function_pointers.glProgramUniformMatrix4x3fv, .{_program, _location, _count, _transpose, _value});
1579}
1580
1581pub fn programUniformMatrix3x4fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1582 return @call(.always_tail, function_pointers.glProgramUniformMatrix3x4fv, .{_program, _location, _count, _transpose, _value});
1583}
1584
1585pub fn programUniformMatrix4x2fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1586 return @call(.always_tail, function_pointers.glProgramUniformMatrix4x2fv, .{_program, _location, _count, _transpose, _value});
1587}
1588
1589pub fn programUniformMatrix2x4fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1590 return @call(.always_tail, function_pointers.glProgramUniformMatrix2x4fv, .{_program, _location, _count, _transpose, _value});
1591}
1592
1593pub fn programUniformMatrix3x2fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1594 return @call(.always_tail, function_pointers.glProgramUniformMatrix3x2fv, .{_program, _location, _count, _transpose, _value});
1595}
1596
1597pub fn programUniformMatrix2x3fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1598 return @call(.always_tail, function_pointers.glProgramUniformMatrix2x3fv, .{_program, _location, _count, _transpose, _value});
1599}
1600
1601pub fn programUniformMatrix4dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1602 return @call(.always_tail, function_pointers.glProgramUniformMatrix4dv, .{_program, _location, _count, _transpose, _value});
1603}
1604
1605pub fn programUniformMatrix3dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1606 return @call(.always_tail, function_pointers.glProgramUniformMatrix3dv, .{_program, _location, _count, _transpose, _value});
1607}
1608
1609pub fn programUniformMatrix2dv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
1610 return @call(.always_tail, function_pointers.glProgramUniformMatrix2dv, .{_program, _location, _count, _transpose, _value});
1611}
1612
1613pub fn programUniformMatrix4fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1614 return @call(.always_tail, function_pointers.glProgramUniformMatrix4fv, .{_program, _location, _count, _transpose, _value});
1615}
1616
1617pub fn programUniformMatrix3fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1618 return @call(.always_tail, function_pointers.glProgramUniformMatrix3fv, .{_program, _location, _count, _transpose, _value});
1619}
1620
1621pub fn programUniformMatrix2fv(_program: GLuint, _location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLfloat) callconv(.C) void {
1622 return @call(.always_tail, function_pointers.glProgramUniformMatrix2fv, .{_program, _location, _count, _transpose, _value});
1623}
1624
1625pub fn programUniform4uiv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLuint) callconv(.C) void {
1626 return @call(.always_tail, function_pointers.glProgramUniform4uiv, .{_program, _location, _count, _value});
1627}
1628
1629pub fn programUniform4ui(_program: GLuint, _location: GLint, _v0: GLuint, _v1: GLuint, _v2: GLuint, _v3: GLuint) callconv(.C) void {
1630 return @call(.always_tail, function_pointers.glProgramUniform4ui, .{_program, _location, _v0, _v1, _v2, _v3});
1631}
1632
1633pub fn programUniform4dv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLdouble) callconv(.C) void {
1634 return @call(.always_tail, function_pointers.glProgramUniform4dv, .{_program, _location, _count, _value});
1635}
1636
1637pub fn programUniform4d(_program: GLuint, _location: GLint, _v0: GLdouble, _v1: GLdouble, _v2: GLdouble, _v3: GLdouble) callconv(.C) void {
1638 return @call(.always_tail, function_pointers.glProgramUniform4d, .{_program, _location, _v0, _v1, _v2, _v3});
1639}
1640
1641pub fn programUniform4fv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLfloat) callconv(.C) void {
1642 return @call(.always_tail, function_pointers.glProgramUniform4fv, .{_program, _location, _count, _value});
1643}
1644
1645pub fn programUniform4f(_program: GLuint, _location: GLint, _v0: GLfloat, _v1: GLfloat, _v2: GLfloat, _v3: GLfloat) callconv(.C) void {
1646 return @call(.always_tail, function_pointers.glProgramUniform4f, .{_program, _location, _v0, _v1, _v2, _v3});
1647}
1648
1649pub fn programUniform4iv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLint) callconv(.C) void {
1650 return @call(.always_tail, function_pointers.glProgramUniform4iv, .{_program, _location, _count, _value});
1651}
1652
1653pub fn programUniform4i(_program: GLuint, _location: GLint, _v0: GLint, _v1: GLint, _v2: GLint, _v3: GLint) callconv(.C) void {
1654 return @call(.always_tail, function_pointers.glProgramUniform4i, .{_program, _location, _v0, _v1, _v2, _v3});
1655}
1656
1657pub fn programUniform3uiv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLuint) callconv(.C) void {
1658 return @call(.always_tail, function_pointers.glProgramUniform3uiv, .{_program, _location, _count, _value});
1659}
1660
1661pub fn programUniform3ui(_program: GLuint, _location: GLint, _v0: GLuint, _v1: GLuint, _v2: GLuint) callconv(.C) void {
1662 return @call(.always_tail, function_pointers.glProgramUniform3ui, .{_program, _location, _v0, _v1, _v2});
1663}
1664
1665pub fn programUniform3dv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLdouble) callconv(.C) void {
1666 return @call(.always_tail, function_pointers.glProgramUniform3dv, .{_program, _location, _count, _value});
1667}
1668
1669pub fn programUniform3d(_program: GLuint, _location: GLint, _v0: GLdouble, _v1: GLdouble, _v2: GLdouble) callconv(.C) void {
1670 return @call(.always_tail, function_pointers.glProgramUniform3d, .{_program, _location, _v0, _v1, _v2});
1671}
1672
1673pub fn programUniform3fv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLfloat) callconv(.C) void {
1674 return @call(.always_tail, function_pointers.glProgramUniform3fv, .{_program, _location, _count, _value});
1675}
1676
1677pub fn programUniform3f(_program: GLuint, _location: GLint, _v0: GLfloat, _v1: GLfloat, _v2: GLfloat) callconv(.C) void {
1678 return @call(.always_tail, function_pointers.glProgramUniform3f, .{_program, _location, _v0, _v1, _v2});
1679}
1680
1681pub fn programUniform3iv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLint) callconv(.C) void {
1682 return @call(.always_tail, function_pointers.glProgramUniform3iv, .{_program, _location, _count, _value});
1683}
1684
1685pub fn programUniform3i(_program: GLuint, _location: GLint, _v0: GLint, _v1: GLint, _v2: GLint) callconv(.C) void {
1686 return @call(.always_tail, function_pointers.glProgramUniform3i, .{_program, _location, _v0, _v1, _v2});
1687}
1688
1689pub fn useProgramStages(_pipeline: GLuint, _stages: GLbitfield, _program: GLuint) callconv(.C) void {
1690 return @call(.always_tail, function_pointers.glUseProgramStages, .{_pipeline, _stages, _program});
1691}
1692
1693pub fn programParameteri(_program: GLuint, _pname: GLenum, _value: GLint) callconv(.C) void {
1694 return @call(.always_tail, function_pointers.glProgramParameteri, .{_program, _pname, _value});
1695}
1696
1697pub fn getShaderPrecisionFormat(_shadertype: GLenum, _precisiontype: GLenum, _range: [*c]GLint, _precision: [*c]GLint) callconv(.C) void {
1698 return @call(.always_tail, function_pointers.glGetShaderPrecisionFormat, .{_shadertype, _precisiontype, _range, _precision});
1699}
1700
1701pub fn shaderBinary(_count: GLsizei, _shaders: [*c]const GLuint, _binaryFormat: GLenum, _binary: ?*const anyopaque, _length: GLsizei) callconv(.C) void {
1702 return @call(.always_tail, function_pointers.glShaderBinary, .{_count, _shaders, _binaryFormat, _binary, _length});
1703}
1704
1705pub fn releaseShaderCompiler() callconv(.C) void {
1706 return @call(.always_tail, function_pointers.glReleaseShaderCompiler, .{});
1707}
1708
1709pub fn getQueryIndexediv(_target: GLenum, _index: GLuint, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
1710 return @call(.always_tail, function_pointers.glGetQueryIndexediv, .{_target, _index, _pname, _params});
1711}
1712
1713pub fn endQueryIndexed(_target: GLenum, _index: GLuint) callconv(.C) void {
1714 return @call(.always_tail, function_pointers.glEndQueryIndexed, .{_target, _index});
1715}
1716
1717pub fn beginQueryIndexed(_target: GLenum, _index: GLuint, _id: GLuint) callconv(.C) void {
1718 return @call(.always_tail, function_pointers.glBeginQueryIndexed, .{_target, _index, _id});
1719}
1720
1721pub fn drawTransformFeedbackStream(_mode: GLenum, _id: GLuint, _stream: GLuint) callconv(.C) void {
1722 return @call(.always_tail, function_pointers.glDrawTransformFeedbackStream, .{_mode, _id, _stream});
1723}
1724
1725pub fn drawTransformFeedback(_mode: GLenum, _id: GLuint) callconv(.C) void {
1726 return @call(.always_tail, function_pointers.glDrawTransformFeedback, .{_mode, _id});
1727}
1728
1729pub fn resumeTransformFeedback() callconv(.C) void {
1730 return @call(.always_tail, function_pointers.glResumeTransformFeedback, .{});
1731}
1732
1733pub fn pauseTransformFeedback() callconv(.C) void {
1734 return @call(.always_tail, function_pointers.glPauseTransformFeedback, .{});
1735}
1736
1737pub fn getProgramStageiv(_program: GLuint, _shadertype: GLenum, _pname: GLenum, _values: [*c]GLint) callconv(.C) void {
1738 return @call(.always_tail, function_pointers.glGetProgramStageiv, .{_program, _shadertype, _pname, _values});
1739}
1740
1741pub fn getUniformSubroutineuiv(_shadertype: GLenum, _location: GLint, _params: [*c]GLuint) callconv(.C) void {
1742 return @call(.always_tail, function_pointers.glGetUniformSubroutineuiv, .{_shadertype, _location, _params});
1743}
1744
1745pub fn uniformSubroutinesuiv(_shadertype: GLenum, _count: GLsizei, _indices: [*c]const GLuint) callconv(.C) void {
1746 return @call(.always_tail, function_pointers.glUniformSubroutinesuiv, .{_shadertype, _count, _indices});
1747}
1748
1749pub fn getActiveSubroutineName(_program: GLuint, _shadertype: GLenum, _index: GLuint, _bufSize: GLsizei, _length: [*c]GLsizei, _name: [*c]GLchar) callconv(.C) void {
1750 return @call(.always_tail, function_pointers.glGetActiveSubroutineName, .{_program, _shadertype, _index, _bufSize, _length, _name});
1751}
1752
1753pub fn cullFace(_mode: GLenum) callconv(.C) void {
1754 return @call(.always_tail, function_pointers.glCullFace, .{_mode});
1755}
1756
1757pub fn frontFace(_mode: GLenum) callconv(.C) void {
1758 return @call(.always_tail, function_pointers.glFrontFace, .{_mode});
1759}
1760
1761pub fn hint(_target: GLenum, _mode: GLenum) callconv(.C) void {
1762 return @call(.always_tail, function_pointers.glHint, .{_target, _mode});
1763}
1764
1765pub fn lineWidth(_width: GLfloat) callconv(.C) void {
1766 return @call(.always_tail, function_pointers.glLineWidth, .{_width});
1767}
1768
1769pub fn pointSize(_size: GLfloat) callconv(.C) void {
1770 return @call(.always_tail, function_pointers.glPointSize, .{_size});
1771}
1772
1773pub fn polygonMode(_face: GLenum, _mode: GLenum) callconv(.C) void {
1774 return @call(.always_tail, function_pointers.glPolygonMode, .{_face, _mode});
1775}
1776
1777pub fn scissor(_x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei) callconv(.C) void {
1778 return @call(.always_tail, function_pointers.glScissor, .{_x, _y, _width, _height});
1779}
1780
1781pub fn texParameterf(_target: GLenum, _pname: GLenum, _param: GLfloat) callconv(.C) void {
1782 return @call(.always_tail, function_pointers.glTexParameterf, .{_target, _pname, _param});
1783}
1784
1785pub fn texParameterfv(_target: GLenum, _pname: GLenum, _params: [*c]const GLfloat) callconv(.C) void {
1786 return @call(.always_tail, function_pointers.glTexParameterfv, .{_target, _pname, _params});
1787}
1788
1789pub fn texParameteri(_target: GLenum, _pname: GLenum, _param: GLint) callconv(.C) void {
1790 return @call(.always_tail, function_pointers.glTexParameteri, .{_target, _pname, _param});
1791}
1792
1793pub fn texParameteriv(_target: GLenum, _pname: GLenum, _params: [*c]const GLint) callconv(.C) void {
1794 return @call(.always_tail, function_pointers.glTexParameteriv, .{_target, _pname, _params});
1795}
1796
1797pub fn texImage1D(_target: GLenum, _level: GLint, _internalformat: GLint, _width: GLsizei, _border: GLint, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
1798 return @call(.always_tail, function_pointers.glTexImage1D, .{_target, _level, _internalformat, _width, _border, _format, _type, _pixels});
1799}
1800
1801pub fn texImage2D(_target: GLenum, _level: GLint, _internalformat: GLint, _width: GLsizei, _height: GLsizei, _border: GLint, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
1802 return @call(.always_tail, function_pointers.glTexImage2D, .{_target, _level, _internalformat, _width, _height, _border, _format, _type, _pixels});
1803}
1804
1805pub fn drawBuffer(_buf: GLenum) callconv(.C) void {
1806 return @call(.always_tail, function_pointers.glDrawBuffer, .{_buf});
1807}
1808
1809pub fn clear(_mask: GLbitfield) callconv(.C) void {
1810 return @call(.always_tail, function_pointers.glClear, .{_mask});
1811}
1812
1813pub fn clearColor(_red: GLfloat, _green: GLfloat, _blue: GLfloat, _alpha: GLfloat) callconv(.C) void {
1814 return @call(.always_tail, function_pointers.glClearColor, .{_red, _green, _blue, _alpha});
1815}
1816
1817pub fn clearStencil(_s: GLint) callconv(.C) void {
1818 return @call(.always_tail, function_pointers.glClearStencil, .{_s});
1819}
1820
1821pub fn clearDepth(_depth: GLdouble) callconv(.C) void {
1822 return @call(.always_tail, function_pointers.glClearDepth, .{_depth});
1823}
1824
1825pub fn stencilMask(_mask: GLuint) callconv(.C) void {
1826 return @call(.always_tail, function_pointers.glStencilMask, .{_mask});
1827}
1828
1829pub fn colorMask(_red: GLboolean, _green: GLboolean, _blue: GLboolean, _alpha: GLboolean) callconv(.C) void {
1830 return @call(.always_tail, function_pointers.glColorMask, .{_red, _green, _blue, _alpha});
1831}
1832
1833pub fn depthMask(_flag: GLboolean) callconv(.C) void {
1834 return @call(.always_tail, function_pointers.glDepthMask, .{_flag});
1835}
1836
1837pub fn disable(_cap: GLenum) callconv(.C) void {
1838 return @call(.always_tail, function_pointers.glDisable, .{_cap});
1839}
1840
1841pub fn enable(_cap: GLenum) callconv(.C) void {
1842 return @call(.always_tail, function_pointers.glEnable, .{_cap});
1843}
1844
1845pub fn finish() callconv(.C) void {
1846 return @call(.always_tail, function_pointers.glFinish, .{});
1847}
1848
1849pub fn flush() callconv(.C) void {
1850 return @call(.always_tail, function_pointers.glFlush, .{});
1851}
1852
1853pub fn blendFunc(_sfactor: GLenum, _dfactor: GLenum) callconv(.C) void {
1854 return @call(.always_tail, function_pointers.glBlendFunc, .{_sfactor, _dfactor});
1855}
1856
1857pub fn logicOp(_opcode: GLenum) callconv(.C) void {
1858 return @call(.always_tail, function_pointers.glLogicOp, .{_opcode});
1859}
1860
1861pub fn stencilFunc(_func: GLenum, _ref: GLint, _mask: GLuint) callconv(.C) void {
1862 return @call(.always_tail, function_pointers.glStencilFunc, .{_func, _ref, _mask});
1863}
1864
1865pub fn stencilOp(_fail: GLenum, _zfail: GLenum, _zpass: GLenum) callconv(.C) void {
1866 return @call(.always_tail, function_pointers.glStencilOp, .{_fail, _zfail, _zpass});
1867}
1868
1869pub fn depthFunc(_func: GLenum) callconv(.C) void {
1870 return @call(.always_tail, function_pointers.glDepthFunc, .{_func});
1871}
1872
1873pub fn pixelStoref(_pname: GLenum, _param: GLfloat) callconv(.C) void {
1874 return @call(.always_tail, function_pointers.glPixelStoref, .{_pname, _param});
1875}
1876
1877pub fn pixelStorei(_pname: GLenum, _param: GLint) callconv(.C) void {
1878 return @call(.always_tail, function_pointers.glPixelStorei, .{_pname, _param});
1879}
1880
1881pub fn readBuffer(_src: GLenum) callconv(.C) void {
1882 return @call(.always_tail, function_pointers.glReadBuffer, .{_src});
1883}
1884
1885pub fn readPixels(_x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei, _format: GLenum, _type: GLenum, _pixels: ?*anyopaque) callconv(.C) void {
1886 return @call(.always_tail, function_pointers.glReadPixels, .{_x, _y, _width, _height, _format, _type, _pixels});
1887}
1888
1889pub fn getBooleanv(_pname: GLenum, _data: [*c]GLboolean) callconv(.C) void {
1890 return @call(.always_tail, function_pointers.glGetBooleanv, .{_pname, _data});
1891}
1892
1893pub fn getDoublev(_pname: GLenum, _data: [*c]GLdouble) callconv(.C) void {
1894 return @call(.always_tail, function_pointers.glGetDoublev, .{_pname, _data});
1895}
1896
1897pub fn getError() callconv(.C) GLenum {
1898 return @call(.always_tail, function_pointers.glGetError, .{});
1899}
1900
1901pub fn getFloatv(_pname: GLenum, _data: [*c]GLfloat) callconv(.C) void {
1902 return @call(.always_tail, function_pointers.glGetFloatv, .{_pname, _data});
1903}
1904
1905pub fn getIntegerv(_pname: GLenum, _data: [*c]GLint) callconv(.C) void {
1906 return @call(.always_tail, function_pointers.glGetIntegerv, .{_pname, _data});
1907}
1908
1909pub fn getString(_name: GLenum) callconv(.C) ?[*:0]const GLubyte {
1910 return @call(.always_tail, function_pointers.glGetString, .{_name});
1911}
1912
1913pub fn getTexImage(_target: GLenum, _level: GLint, _format: GLenum, _type: GLenum, _pixels: ?*anyopaque) callconv(.C) void {
1914 return @call(.always_tail, function_pointers.glGetTexImage, .{_target, _level, _format, _type, _pixels});
1915}
1916
1917pub fn getTexParameterfv(_target: GLenum, _pname: GLenum, _params: [*c]GLfloat) callconv(.C) void {
1918 return @call(.always_tail, function_pointers.glGetTexParameterfv, .{_target, _pname, _params});
1919}
1920
1921pub fn getTexParameteriv(_target: GLenum, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
1922 return @call(.always_tail, function_pointers.glGetTexParameteriv, .{_target, _pname, _params});
1923}
1924
1925pub fn getTexLevelParameterfv(_target: GLenum, _level: GLint, _pname: GLenum, _params: [*c]GLfloat) callconv(.C) void {
1926 return @call(.always_tail, function_pointers.glGetTexLevelParameterfv, .{_target, _level, _pname, _params});
1927}
1928
1929pub fn getTexLevelParameteriv(_target: GLenum, _level: GLint, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
1930 return @call(.always_tail, function_pointers.glGetTexLevelParameteriv, .{_target, _level, _pname, _params});
1931}
1932
1933pub fn isEnabled(_cap: GLenum) callconv(.C) GLboolean {
1934 return @call(.always_tail, function_pointers.glIsEnabled, .{_cap});
1935}
1936
1937pub fn depthRange(_n: GLdouble, _f: GLdouble) callconv(.C) void {
1938 return @call(.always_tail, function_pointers.glDepthRange, .{_n, _f});
1939}
1940
1941pub fn viewport(_x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei) callconv(.C) void {
1942 return @call(.always_tail, function_pointers.glViewport, .{_x, _y, _width, _height});
1943}
1944
1945pub fn texStorage2DMultisample(_target: GLenum, _samples: GLsizei, _internalformat: GLenum, _width: GLsizei, _height: GLsizei, _fixedsamplelocations: GLboolean) callconv(.C) void {
1946 return @call(.always_tail, function_pointers.glTexStorage2DMultisample, .{_target, _samples, _internalformat, _width, _height, _fixedsamplelocations});
1947}
1948
1949pub fn texBufferRange(_target: GLenum, _internalformat: GLenum, _buffer: GLuint, _offset: GLintptr, _size: GLsizeiptr) callconv(.C) void {
1950 return @call(.always_tail, function_pointers.glTexBufferRange, .{_target, _internalformat, _buffer, _offset, _size});
1951}
1952
1953pub fn shaderStorageBlockBinding(_program: GLuint, _storageBlockIndex: GLuint, _storageBlockBinding: GLuint) callconv(.C) void {
1954 return @call(.always_tail, function_pointers.glShaderStorageBlockBinding, .{_program, _storageBlockIndex, _storageBlockBinding});
1955}
1956
1957pub fn getProgramResourceLocationIndex(_program: GLuint, _programInterface: GLenum, _name: [*c]const GLchar) callconv(.C) GLint {
1958 return @call(.always_tail, function_pointers.glGetProgramResourceLocationIndex, .{_program, _programInterface, _name});
1959}
1960
1961pub fn getProgramResourceLocation(_program: GLuint, _programInterface: GLenum, _name: [*c]const GLchar) callconv(.C) GLint {
1962 return @call(.always_tail, function_pointers.glGetProgramResourceLocation, .{_program, _programInterface, _name});
1963}
1964
1965pub fn getProgramResourceiv(_program: GLuint, _programInterface: GLenum, _index: GLuint, _propCount: GLsizei, _props: [*c]const GLenum, _count: GLsizei, _length: [*c]GLsizei, _params: [*c]GLint) callconv(.C) void {
1966 return @call(.always_tail, function_pointers.glGetProgramResourceiv, .{_program, _programInterface, _index, _propCount, _props, _count, _length, _params});
1967}
1968
1969pub fn getProgramResourceName(_program: GLuint, _programInterface: GLenum, _index: GLuint, _bufSize: GLsizei, _length: [*c]GLsizei, _name: [*c]GLchar) callconv(.C) void {
1970 return @call(.always_tail, function_pointers.glGetProgramResourceName, .{_program, _programInterface, _index, _bufSize, _length, _name});
1971}
1972
1973pub fn getProgramResourceIndex(_program: GLuint, _programInterface: GLenum, _name: [*c]const GLchar) callconv(.C) GLuint {
1974 return @call(.always_tail, function_pointers.glGetProgramResourceIndex, .{_program, _programInterface, _name});
1975}
1976
1977pub fn getProgramInterfaceiv(_program: GLuint, _programInterface: GLenum, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
1978 return @call(.always_tail, function_pointers.glGetProgramInterfaceiv, .{_program, _programInterface, _pname, _params});
1979}
1980
1981pub fn multiDrawElementsIndirect(_mode: GLenum, _type: GLenum, _indirect: ?*const anyopaque, _drawcount: GLsizei, _stride: GLsizei) callconv(.C) void {
1982 return @call(.always_tail, function_pointers.glMultiDrawElementsIndirect, .{_mode, _type, _indirect, _drawcount, _stride});
1983}
1984
1985pub fn multiDrawArraysIndirect(_mode: GLenum, _indirect: ?*const anyopaque, _drawcount: GLsizei, _stride: GLsizei) callconv(.C) void {
1986 return @call(.always_tail, function_pointers.glMultiDrawArraysIndirect, .{_mode, _indirect, _drawcount, _stride});
1987}
1988
1989pub fn invalidateSubFramebuffer(_target: GLenum, _numAttachments: GLsizei, _attachments: [*c]const GLenum, _x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei) callconv(.C) void {
1990 return @call(.always_tail, function_pointers.glInvalidateSubFramebuffer, .{_target, _numAttachments, _attachments, _x, _y, _width, _height});
1991}
1992
1993pub fn invalidateFramebuffer(_target: GLenum, _numAttachments: GLsizei, _attachments: [*c]const GLenum) callconv(.C) void {
1994 return @call(.always_tail, function_pointers.glInvalidateFramebuffer, .{_target, _numAttachments, _attachments});
1995}
1996
1997pub fn invalidateBufferData(_buffer: GLuint) callconv(.C) void {
1998 return @call(.always_tail, function_pointers.glInvalidateBufferData, .{_buffer});
1999}
2000
2001pub fn invalidateBufferSubData(_buffer: GLuint, _offset: GLintptr, _length: GLsizeiptr) callconv(.C) void {
2002 return @call(.always_tail, function_pointers.glInvalidateBufferSubData, .{_buffer, _offset, _length});
2003}
2004
2005pub fn invalidateTexImage(_texture: GLuint, _level: GLint) callconv(.C) void {
2006 return @call(.always_tail, function_pointers.glInvalidateTexImage, .{_texture, _level});
2007}
2008
2009pub fn invalidateTexSubImage(_texture: GLuint, _level: GLint, _xoffset: GLint, _yoffset: GLint, _zoffset: GLint, _width: GLsizei, _height: GLsizei, _depth: GLsizei) callconv(.C) void {
2010 return @call(.always_tail, function_pointers.glInvalidateTexSubImage, .{_texture, _level, _xoffset, _yoffset, _zoffset, _width, _height, _depth});
2011}
2012
2013pub fn getInternalformati64v(_target: GLenum, _internalformat: GLenum, _pname: GLenum, _count: GLsizei, _params: [*c]GLint64) callconv(.C) void {
2014 return @call(.always_tail, function_pointers.glGetInternalformati64v, .{_target, _internalformat, _pname, _count, _params});
2015}
2016
2017pub fn getFramebufferParameteriv(_target: GLenum, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
2018 return @call(.always_tail, function_pointers.glGetFramebufferParameteriv, .{_target, _pname, _params});
2019}
2020
2021pub fn framebufferParameteri(_target: GLenum, _pname: GLenum, _param: GLint) callconv(.C) void {
2022 return @call(.always_tail, function_pointers.glFramebufferParameteri, .{_target, _pname, _param});
2023}
2024
2025pub fn copyImageSubData(_srcName: GLuint, _srcTarget: GLenum, _srcLevel: GLint, _srcX: GLint, _srcY: GLint, _srcZ: GLint, _dstName: GLuint, _dstTarget: GLenum, _dstLevel: GLint, _dstX: GLint, _dstY: GLint, _dstZ: GLint, _srcWidth: GLsizei, _srcHeight: GLsizei, _srcDepth: GLsizei) callconv(.C) void {
2026 return @call(.always_tail, function_pointers.glCopyImageSubData, .{_srcName, _srcTarget, _srcLevel, _srcX, _srcY, _srcZ, _dstName, _dstTarget, _dstLevel, _dstX, _dstY, _dstZ, _srcWidth, _srcHeight, _srcDepth});
2027}
2028
2029pub fn dispatchComputeIndirect(_indirect: GLintptr) callconv(.C) void {
2030 return @call(.always_tail, function_pointers.glDispatchComputeIndirect, .{_indirect});
2031}
2032
2033pub fn dispatchCompute(_num_groups_x: GLuint, _num_groups_y: GLuint, _num_groups_z: GLuint) callconv(.C) void {
2034 return @call(.always_tail, function_pointers.glDispatchCompute, .{_num_groups_x, _num_groups_y, _num_groups_z});
2035}
2036
2037pub fn clearBufferSubData(_target: GLenum, _internalformat: GLenum, _offset: GLintptr, _size: GLsizeiptr, _format: GLenum, _type: GLenum, _data: ?*const anyopaque) callconv(.C) void {
2038 return @call(.always_tail, function_pointers.glClearBufferSubData, .{_target, _internalformat, _offset, _size, _format, _type, _data});
2039}
2040
2041pub fn clearBufferData(_target: GLenum, _internalformat: GLenum, _format: GLenum, _type: GLenum, _data: ?*const anyopaque) callconv(.C) void {
2042 return @call(.always_tail, function_pointers.glClearBufferData, .{_target, _internalformat, _format, _type, _data});
2043}
2044
2045pub fn getProgramPipelineInfoLog(_pipeline: GLuint, _bufSize: GLsizei, _length: [*c]GLsizei, _infoLog: [*c]GLchar) callconv(.C) void {
2046 return @call(.always_tail, function_pointers.glGetProgramPipelineInfoLog, .{_pipeline, _bufSize, _length, _infoLog});
2047}
2048
2049pub fn programUniform2uiv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLuint) callconv(.C) void {
2050 return @call(.always_tail, function_pointers.glProgramUniform2uiv, .{_program, _location, _count, _value});
2051}
2052
2053pub fn programUniform2ui(_program: GLuint, _location: GLint, _v0: GLuint, _v1: GLuint) callconv(.C) void {
2054 return @call(.always_tail, function_pointers.glProgramUniform2ui, .{_program, _location, _v0, _v1});
2055}
2056
2057pub fn programUniform2dv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLdouble) callconv(.C) void {
2058 return @call(.always_tail, function_pointers.glProgramUniform2dv, .{_program, _location, _count, _value});
2059}
2060
2061pub fn programUniform2d(_program: GLuint, _location: GLint, _v0: GLdouble, _v1: GLdouble) callconv(.C) void {
2062 return @call(.always_tail, function_pointers.glProgramUniform2d, .{_program, _location, _v0, _v1});
2063}
2064
2065pub fn programUniform2fv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLfloat) callconv(.C) void {
2066 return @call(.always_tail, function_pointers.glProgramUniform2fv, .{_program, _location, _count, _value});
2067}
2068
2069pub fn programUniform2f(_program: GLuint, _location: GLint, _v0: GLfloat, _v1: GLfloat) callconv(.C) void {
2070 return @call(.always_tail, function_pointers.glProgramUniform2f, .{_program, _location, _v0, _v1});
2071}
2072
2073pub fn programUniform2iv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLint) callconv(.C) void {
2074 return @call(.always_tail, function_pointers.glProgramUniform2iv, .{_program, _location, _count, _value});
2075}
2076
2077pub fn programUniform2i(_program: GLuint, _location: GLint, _v0: GLint, _v1: GLint) callconv(.C) void {
2078 return @call(.always_tail, function_pointers.glProgramUniform2i, .{_program, _location, _v0, _v1});
2079}
2080
2081pub fn programUniform1uiv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLuint) callconv(.C) void {
2082 return @call(.always_tail, function_pointers.glProgramUniform1uiv, .{_program, _location, _count, _value});
2083}
2084
2085pub fn programUniform1ui(_program: GLuint, _location: GLint, _v0: GLuint) callconv(.C) void {
2086 return @call(.always_tail, function_pointers.glProgramUniform1ui, .{_program, _location, _v0});
2087}
2088
2089pub fn programUniform1dv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLdouble) callconv(.C) void {
2090 return @call(.always_tail, function_pointers.glProgramUniform1dv, .{_program, _location, _count, _value});
2091}
2092
2093pub fn programUniform1d(_program: GLuint, _location: GLint, _v0: GLdouble) callconv(.C) void {
2094 return @call(.always_tail, function_pointers.glProgramUniform1d, .{_program, _location, _v0});
2095}
2096
2097pub fn programUniform1fv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLfloat) callconv(.C) void {
2098 return @call(.always_tail, function_pointers.glProgramUniform1fv, .{_program, _location, _count, _value});
2099}
2100
2101pub fn programUniform1f(_program: GLuint, _location: GLint, _v0: GLfloat) callconv(.C) void {
2102 return @call(.always_tail, function_pointers.glProgramUniform1f, .{_program, _location, _v0});
2103}
2104
2105pub fn programUniform1iv(_program: GLuint, _location: GLint, _count: GLsizei, _value: [*c]const GLint) callconv(.C) void {
2106 return @call(.always_tail, function_pointers.glProgramUniform1iv, .{_program, _location, _count, _value});
2107}
2108
2109pub fn programUniform1i(_program: GLuint, _location: GLint, _v0: GLint) callconv(.C) void {
2110 return @call(.always_tail, function_pointers.glProgramUniform1i, .{_program, _location, _v0});
2111}
2112
2113pub fn getProgramPipelineiv(_pipeline: GLuint, _pname: GLenum, _params: [*c]GLint) callconv(.C) void {
2114 return @call(.always_tail, function_pointers.glGetProgramPipelineiv, .{_pipeline, _pname, _params});
2115}
2116
2117pub fn isProgramPipeline(_pipeline: GLuint) callconv(.C) GLboolean {
2118 return @call(.always_tail, function_pointers.glIsProgramPipeline, .{_pipeline});
2119}
2120
2121pub fn genProgramPipelines(_n: GLsizei, _pipelines: [*c]GLuint) callconv(.C) void {
2122 return @call(.always_tail, function_pointers.glGenProgramPipelines, .{_n, _pipelines});
2123}
2124
2125pub fn deleteProgramPipelines(_n: GLsizei, _pipelines: [*c]const GLuint) callconv(.C) void {
2126 return @call(.always_tail, function_pointers.glDeleteProgramPipelines, .{_n, _pipelines});
2127}
2128
2129pub fn bindProgramPipeline(_pipeline: GLuint) callconv(.C) void {
2130 return @call(.always_tail, function_pointers.glBindProgramPipeline, .{_pipeline});
2131}
2132
2133pub fn createShaderProgramv(_type: GLenum, _count: GLsizei, _strings: [*c]const [*c]const GLchar) callconv(.C) GLuint {
2134 return @call(.always_tail, function_pointers.glCreateShaderProgramv, .{_type, _count, _strings});
2135}
2136
2137pub fn activeShaderProgram(_pipeline: GLuint, _program: GLuint) callconv(.C) void {
2138 return @call(.always_tail, function_pointers.glActiveShaderProgram, .{_pipeline, _program});
2139}
2140
2141pub fn programBinary(_program: GLuint, _binaryFormat: GLenum, _binary: ?*const anyopaque, _length: GLsizei) callconv(.C) void {
2142 return @call(.always_tail, function_pointers.glProgramBinary, .{_program, _binaryFormat, _binary, _length});
2143}
2144
2145pub fn getProgramBinary(_program: GLuint, _bufSize: GLsizei, _length: [*c]GLsizei, _binaryFormat: [*c]GLenum, _binary: ?*anyopaque) callconv(.C) void {
2146 return @call(.always_tail, function_pointers.glGetProgramBinary, .{_program, _bufSize, _length, _binaryFormat, _binary});
2147}
2148
2149pub fn clearDepthf(_d: GLfloat) callconv(.C) void {
2150 return @call(.always_tail, function_pointers.glClearDepthf, .{_d});
2151}
2152
2153pub fn depthRangef(_n: GLfloat, _f: GLfloat) callconv(.C) void {
2154 return @call(.always_tail, function_pointers.glDepthRangef, .{_n, _f});
2155}
2156
2157pub fn isTransformFeedback(_id: GLuint) callconv(.C) GLboolean {
2158 return @call(.always_tail, function_pointers.glIsTransformFeedback, .{_id});
2159}
2160
2161pub fn genTransformFeedbacks(_n: GLsizei, _ids: [*c]GLuint) callconv(.C) void {
2162 return @call(.always_tail, function_pointers.glGenTransformFeedbacks, .{_n, _ids});
2163}
2164
2165pub fn deleteTransformFeedbacks(_n: GLsizei, _ids: [*c]const GLuint) callconv(.C) void {
2166 return @call(.always_tail, function_pointers.glDeleteTransformFeedbacks, .{_n, _ids});
2167}
2168
2169pub fn bindTransformFeedback(_target: GLenum, _id: GLuint) callconv(.C) void {
2170 return @call(.always_tail, function_pointers.glBindTransformFeedback, .{_target, _id});
2171}
2172
2173pub fn patchParameterfv(_pname: GLenum, _values: [*c]const GLfloat) callconv(.C) void {
2174 return @call(.always_tail, function_pointers.glPatchParameterfv, .{_pname, _values});
2175}
2176
2177pub fn patchParameteri(_pname: GLenum, _value: GLint) callconv(.C) void {
2178 return @call(.always_tail, function_pointers.glPatchParameteri, .{_pname, _value});
2179}
2180
2181pub fn drawArrays(_mode: GLenum, _first: GLint, _count: GLsizei) callconv(.C) void {
2182 return @call(.always_tail, function_pointers.glDrawArrays, .{_mode, _first, _count});
2183}
2184
2185pub fn drawElements(_mode: GLenum, _count: GLsizei, _type: GLenum, _indices: ?*const anyopaque) callconv(.C) void {
2186 return @call(.always_tail, function_pointers.glDrawElements, .{_mode, _count, _type, _indices});
2187}
2188
2189pub fn polygonOffset(_factor: GLfloat, _units: GLfloat) callconv(.C) void {
2190 return @call(.always_tail, function_pointers.glPolygonOffset, .{_factor, _units});
2191}
2192
2193pub fn copyTexImage1D(_target: GLenum, _level: GLint, _internalformat: GLenum, _x: GLint, _y: GLint, _width: GLsizei, _border: GLint) callconv(.C) void {
2194 return @call(.always_tail, function_pointers.glCopyTexImage1D, .{_target, _level, _internalformat, _x, _y, _width, _border});
2195}
2196
2197pub fn copyTexImage2D(_target: GLenum, _level: GLint, _internalformat: GLenum, _x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei, _border: GLint) callconv(.C) void {
2198 return @call(.always_tail, function_pointers.glCopyTexImage2D, .{_target, _level, _internalformat, _x, _y, _width, _height, _border});
2199}
2200
2201pub fn copyTexSubImage1D(_target: GLenum, _level: GLint, _xoffset: GLint, _x: GLint, _y: GLint, _width: GLsizei) callconv(.C) void {
2202 return @call(.always_tail, function_pointers.glCopyTexSubImage1D, .{_target, _level, _xoffset, _x, _y, _width});
2203}
2204
2205pub fn copyTexSubImage2D(_target: GLenum, _level: GLint, _xoffset: GLint, _yoffset: GLint, _x: GLint, _y: GLint, _width: GLsizei, _height: GLsizei) callconv(.C) void {
2206 return @call(.always_tail, function_pointers.glCopyTexSubImage2D, .{_target, _level, _xoffset, _yoffset, _x, _y, _width, _height});
2207}
2208
2209pub fn texSubImage1D(_target: GLenum, _level: GLint, _xoffset: GLint, _width: GLsizei, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
2210 return @call(.always_tail, function_pointers.glTexSubImage1D, .{_target, _level, _xoffset, _width, _format, _type, _pixels});
2211}
2212
2213pub fn texSubImage2D(_target: GLenum, _level: GLint, _xoffset: GLint, _yoffset: GLint, _width: GLsizei, _height: GLsizei, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
2214 return @call(.always_tail, function_pointers.glTexSubImage2D, .{_target, _level, _xoffset, _yoffset, _width, _height, _format, _type, _pixels});
2215}
2216
2217pub fn bindTexture(_target: GLenum, _texture: GLuint) callconv(.C) void {
2218 return @call(.always_tail, function_pointers.glBindTexture, .{_target, _texture});
2219}
2220
2221pub fn deleteTextures(_n: GLsizei, _textures: [*c]const GLuint) callconv(.C) void {
2222 return @call(.always_tail, function_pointers.glDeleteTextures, .{_n, _textures});
2223}
2224
2225pub fn genTextures(_n: GLsizei, _textures: [*c]GLuint) callconv(.C) void {
2226 return @call(.always_tail, function_pointers.glGenTextures, .{_n, _textures});
2227}
2228
2229pub fn isTexture(_texture: GLuint) callconv(.C) GLboolean {
2230 return @call(.always_tail, function_pointers.glIsTexture, .{_texture});
2231}
2232
2233pub fn getActiveSubroutineUniformName(_program: GLuint, _shadertype: GLenum, _index: GLuint, _bufSize: GLsizei, _length: [*c]GLsizei, _name: [*c]GLchar) callconv(.C) void {
2234 return @call(.always_tail, function_pointers.glGetActiveSubroutineUniformName, .{_program, _shadertype, _index, _bufSize, _length, _name});
2235}
2236
2237pub fn getActiveSubroutineUniformiv(_program: GLuint, _shadertype: GLenum, _index: GLuint, _pname: GLenum, _values: [*c]GLint) callconv(.C) void {
2238 return @call(.always_tail, function_pointers.glGetActiveSubroutineUniformiv, .{_program, _shadertype, _index, _pname, _values});
2239}
2240
2241pub fn getSubroutineIndex(_program: GLuint, _shadertype: GLenum, _name: [*c]const GLchar) callconv(.C) GLuint {
2242 return @call(.always_tail, function_pointers.glGetSubroutineIndex, .{_program, _shadertype, _name});
2243}
2244
2245pub fn getSubroutineUniformLocation(_program: GLuint, _shadertype: GLenum, _name: [*c]const GLchar) callconv(.C) GLint {
2246 return @call(.always_tail, function_pointers.glGetSubroutineUniformLocation, .{_program, _shadertype, _name});
2247}
2248
2249pub fn getUniformdv(_program: GLuint, _location: GLint, _params: [*c]GLdouble) callconv(.C) void {
2250 return @call(.always_tail, function_pointers.glGetUniformdv, .{_program, _location, _params});
2251}
2252
2253pub fn uniformMatrix4x3dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2254 return @call(.always_tail, function_pointers.glUniformMatrix4x3dv, .{_location, _count, _transpose, _value});
2255}
2256
2257pub fn uniformMatrix4x2dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2258 return @call(.always_tail, function_pointers.glUniformMatrix4x2dv, .{_location, _count, _transpose, _value});
2259}
2260
2261pub fn uniformMatrix3x4dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2262 return @call(.always_tail, function_pointers.glUniformMatrix3x4dv, .{_location, _count, _transpose, _value});
2263}
2264
2265pub fn uniformMatrix3x2dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2266 return @call(.always_tail, function_pointers.glUniformMatrix3x2dv, .{_location, _count, _transpose, _value});
2267}
2268
2269pub fn uniformMatrix2x4dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2270 return @call(.always_tail, function_pointers.glUniformMatrix2x4dv, .{_location, _count, _transpose, _value});
2271}
2272
2273pub fn uniformMatrix2x3dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2274 return @call(.always_tail, function_pointers.glUniformMatrix2x3dv, .{_location, _count, _transpose, _value});
2275}
2276
2277pub fn uniformMatrix4dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2278 return @call(.always_tail, function_pointers.glUniformMatrix4dv, .{_location, _count, _transpose, _value});
2279}
2280
2281pub fn uniformMatrix3dv(_location: GLint, _count: GLsizei, _transpose: GLboolean, _value: [*c]const GLdouble) callconv(.C) void {
2282 return @call(.always_tail, function_pointers.glUniformMatrix3dv, .{_location, _count, _transpose, _value});
2283}
2284
2285pub fn drawRangeElements(_mode: GLenum, _start: GLuint, _end: GLuint, _count: GLsizei, _type: GLenum, _indices: ?*const anyopaque) callconv(.C) void {
2286 return @call(.always_tail, function_pointers.glDrawRangeElements, .{_mode, _start, _end, _count, _type, _indices});
2287}
2288
2289pub fn texImage3D(_target: GLenum, _level: GLint, _internalformat: GLint, _width: GLsizei, _height: GLsizei, _depth: GLsizei, _border: GLint, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
2290 return @call(.always_tail, function_pointers.glTexImage3D, .{_target, _level, _internalformat, _width, _height, _depth, _border, _format, _type, _pixels});
2291}
2292
2293pub fn texSubImage3D(_target: GLenum, _level: GLint, _xoffset: GLint, _yoffset: GLint, _zoffset: GLint, _width: GLsizei, _height: GLsizei, _depth: GLsizei, _format: GLenum, _type: GLenum, _pixels: ?*const anyopaque) callconv(.C) void {
2294 return @call(.always_tail, function_pointers.glTexSubImage3D, .{_target, _level, _xoffset, _yoffset, _zoffset, _width, _height, _depth, _format, _type, _pixels});
2295}
2296
2297pub fn copyTexSubImage3D(_target: GLenum, _level: GLint, _xoffset: GLint, _yoffset: GLint, _zoffset: GLint, _x: GLint, _y: GLint, _width: GLsizei