1#![allow(non_upper_case_globals)]
2#![allow(clippy::too_many_arguments)]
3#![allow(clippy::trivially_copy_pass_by_ref)]
4#![allow(clippy::unreadable_literal)]
5#![allow(clippy::missing_safety_doc)]
6#![allow(clippy::pedantic)] use core::fmt::Debug;
9use core::hash::Hash;
10use std::collections::HashSet;
11
12mod version;
13pub use version::Version;
14
15#[cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))]
16mod native;
17#[cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))]
18pub use native::*;
19#[cfg(any(not(target_arch = "wasm32"), target_os = "emscripten"))]
20mod gl46;
21
22#[cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))]
23#[path = "web_sys.rs"]
24mod web;
25#[cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))]
26pub use web::*;
27
28pub type Shader = <Context as HasContext>::Shader;
29pub type Program = <Context as HasContext>::Program;
30pub type Buffer = <Context as HasContext>::Buffer;
31pub type VertexArray = <Context as HasContext>::VertexArray;
32pub type Texture = <Context as HasContext>::Texture;
33pub type Sampler = <Context as HasContext>::Sampler;
34pub type Fence = <Context as HasContext>::Fence;
35pub type Framebuffer = <Context as HasContext>::Framebuffer;
36pub type Renderbuffer = <Context as HasContext>::Renderbuffer;
37pub type Query = <Context as HasContext>::Query;
38pub type UniformLocation = <Context as HasContext>::UniformLocation;
39pub type TransformFeedback = <Context as HasContext>::TransformFeedback;
40
41pub struct ActiveUniform {
42 pub size: i32,
43 pub utype: u32,
44 pub name: String,
45}
46
47pub struct ActiveAttribute {
48 pub size: i32,
49 pub atype: u32,
50 pub name: String,
51}
52
53pub struct ActiveTransformFeedback {
54 pub size: i32,
55 pub tftype: u32,
56 pub name: String,
57}
58
59#[derive(Debug)]
60pub struct DebugMessageLogEntry {
61 source: u32,
62 msg_type: u32,
63 id: u32,
64 severity: u32,
65 message: String,
66}
67
68pub enum PixelPackData<'a> {
69 BufferOffset(u32),
70 Slice(&'a mut [u8]),
71}
72
73pub enum PixelUnpackData<'a> {
74 BufferOffset(u32),
75 Slice(&'a [u8]),
76}
77
78pub enum CompressedPixelUnpackData<'a> {
79 BufferRange(core::ops::Range<u32>),
80 Slice(&'a [u8]),
81}
82
83pub trait HasContext {
84 type Shader: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
85 type Program: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
86 type Buffer: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
87 type VertexArray: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
88 type Texture: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
89 type Sampler: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
90 type Fence: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
91 type Framebuffer: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
92 type Renderbuffer: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
93 type Query: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
94 type TransformFeedback: Copy + Clone + Debug + Eq + Hash + Ord + PartialEq + PartialOrd;
95 type UniformLocation: Clone + Debug;
96
97 fn supported_extensions(&self) -> &HashSet<String>;
98
99 fn supports_debug(&self) -> bool;
100
101 fn version(&self) -> &Version;
102
103 unsafe fn create_framebuffer(&self) -> Result<Self::Framebuffer, String>;
104
105 unsafe fn is_framebuffer(&self, framebuffer: Self::Framebuffer) -> bool;
106
107 unsafe fn create_query(&self) -> Result<Self::Query, String>;
108
109 unsafe fn create_renderbuffer(&self) -> Result<Self::Renderbuffer, String>;
110
111 unsafe fn is_renderbuffer(&self, renderbuffer: Self::Renderbuffer) -> bool;
112
113 unsafe fn create_sampler(&self) -> Result<Self::Sampler, String>;
114
115 unsafe fn create_shader(&self, shader_type: u32) -> Result<Self::Shader, String>;
116
117 unsafe fn is_shader(&self, shader: Self::Shader) -> bool;
118
119 unsafe fn create_texture(&self) -> Result<Self::Texture, String>;
120
121 unsafe fn create_named_texture(&self, target: u32) -> Result<Self::Texture, String>;
122
123 unsafe fn is_texture(&self, texture: Self::Texture) -> bool;
124
125 unsafe fn delete_shader(&self, shader: Self::Shader);
126
127 unsafe fn shader_source(&self, shader: Self::Shader, source: &str);
128
129 unsafe fn compile_shader(&self, shader: Self::Shader);
130
131 unsafe fn get_shader_compile_status(&self, shader: Self::Shader) -> bool;
132
133 unsafe fn get_shader_info_log(&self, shader: Self::Shader) -> String;
134
135 unsafe fn get_tex_image(
136 &self,
137 target: u32,
138 level: i32,
139 format: u32,
140 ty: u32,
141 pixels: PixelPackData,
142 );
143
144 unsafe fn create_program(&self) -> Result<Self::Program, String>;
145
146 unsafe fn is_program(&self, program: Self::Program) -> bool;
147
148 unsafe fn delete_program(&self, program: Self::Program);
149
150 unsafe fn attach_shader(&self, program: Self::Program, shader: Self::Shader);
151
152 unsafe fn detach_shader(&self, program: Self::Program, shader: Self::Shader);
153
154 unsafe fn link_program(&self, program: Self::Program);
155
156 unsafe fn get_program_link_status(&self, program: Self::Program) -> bool;
157
158 unsafe fn get_program_info_log(&self, program: Self::Program) -> String;
159
160 unsafe fn get_active_uniforms(&self, program: Self::Program) -> u32;
161
162 unsafe fn get_active_uniform(
163 &self,
164 program: Self::Program,
165 index: u32,
166 ) -> Option<ActiveUniform>;
167
168 unsafe fn use_program(&self, program: Option<Self::Program>);
169
170 unsafe fn create_buffer(&self) -> Result<Self::Buffer, String>;
171
172 unsafe fn create_named_buffer(&self) -> Result<Self::Buffer, String>;
173
174 unsafe fn is_buffer(&self, buffer: Self::Buffer) -> bool;
175
176 unsafe fn bind_buffer(&self, target: u32, buffer: Option<Self::Buffer>);
177
178 unsafe fn bind_buffer_base(&self, target: u32, index: u32, buffer: Option<Self::Buffer>);
179
180 unsafe fn bind_buffer_range(
181 &self,
182 target: u32,
183 index: u32,
184 buffer: Option<Self::Buffer>,
185 offset: i32,
186 size: i32,
187 );
188
189 unsafe fn bind_vertex_buffer(
190 &self,
191 binding_index: u32,
192 buffer: Option<Buffer>,
193 offset: i32,
194 stride: i32,
195 );
196
197 unsafe fn bind_framebuffer(&self, target: u32, framebuffer: Option<Self::Framebuffer>);
198
199 unsafe fn bind_renderbuffer(&self, target: u32, renderbuffer: Option<Self::Renderbuffer>);
200
201 unsafe fn blit_framebuffer(
202 &self,
203 src_x0: i32,
204 src_y0: i32,
205 src_x1: i32,
206 src_y1: i32,
207 dst_x0: i32,
208 dst_y0: i32,
209 dst_x1: i32,
210 dst_y1: i32,
211 mask: u32,
212 filter: u32,
213 );
214
215 unsafe fn create_vertex_array(&self) -> Result<Self::VertexArray, String>;
216
217 unsafe fn delete_vertex_array(&self, vertex_array: Self::VertexArray);
218
219 unsafe fn bind_vertex_array(&self, vertex_array: Option<Self::VertexArray>);
220
221 unsafe fn clear_color(&self, red: f32, green: f32, blue: f32, alpha: f32);
222
223 unsafe fn supports_f64_precision() -> bool;
224
225 unsafe fn clear_depth_f64(&self, depth: f64);
226
227 unsafe fn clear_depth_f32(&self, depth: f32);
228
229 unsafe fn clear_stencil(&self, stencil: i32);
230
231 unsafe fn clear(&self, mask: u32);
232
233 unsafe fn patch_parameter_i32(&self, parameter: u32, value: i32);
234
235 unsafe fn pixel_store_i32(&self, parameter: u32, value: i32);
236
237 unsafe fn pixel_store_bool(&self, parameter: u32, value: bool);
238
239 unsafe fn bind_frag_data_location(&self, program: Self::Program, color_number: u32, name: &str);
240
241 unsafe fn buffer_data_size(&self, target: u32, size: i32, usage: u32);
242
243 unsafe fn buffer_data_u8_slice(&self, target: u32, data: &[u8], usage: u32);
244
245 unsafe fn named_buffer_data_u8_slice(&self, buffer: Self::Buffer, data: &[u8], usage: u32);
246
247 unsafe fn buffer_sub_data_u8_slice(&self, target: u32, offset: i32, src_data: &[u8]);
248
249 unsafe fn get_buffer_sub_data(&self, target: u32, offset: i32, dst_data: &mut [u8]);
250
251 unsafe fn buffer_storage(&self, target: u32, size: i32, data: Option<&[u8]>, flags: u32);
252
253 unsafe fn check_framebuffer_status(&self, target: u32) -> u32;
254
255 unsafe fn clear_buffer_i32_slice(&self, target: u32, draw_buffer: u32, values: &[i32]);
256
257 unsafe fn clear_buffer_u32_slice(&self, target: u32, draw_buffer: u32, values: &[u32]);
258
259 unsafe fn clear_buffer_f32_slice(&self, target: u32, draw_buffer: u32, values: &[f32]);
260
261 unsafe fn clear_buffer_depth_stencil(
262 &self,
263 target: u32,
264 draw_buffer: u32,
265 depth: f32,
266 stencil: i32,
267 );
268
269 unsafe fn client_wait_sync(&self, fence: Self::Fence, flags: u32, timeout: i32) -> u32;
270 unsafe fn wait_sync(&self, fence: Self::Fence, flags: u32, timeout: u64);
271
272 unsafe fn copy_buffer_sub_data(
273 &self,
274 src_target: u32,
275 dst_target: u32,
276 src_offset: i32,
277 dst_offset: i32,
278 size: i32,
279 );
280
281 unsafe fn copy_image_sub_data(
282 &self,
283 src_name: Self::Texture,
284 src_target: u32,
285 src_level: i32,
286 src_x: i32,
287 src_y: i32,
288 src_z: i32,
289 dst_name: Self::Texture,
290 dst_target: u32,
291 dst_level: i32,
292 dst_x: i32,
293 dst_y: i32,
294 dst_z: i32,
295 src_width: i32,
296 src_height: i32,
297 src_depth: i32,
298 );
299
300 unsafe fn copy_tex_image_2d(
301 &self,
302 target: u32,
303 level: i32,
304 internal_format: u32,
305 x: i32,
306 y: i32,
307 width: i32,
308 height: i32,
309 border: i32,
310 );
311
312 unsafe fn copy_tex_sub_image_2d(
313 &self,
314 target: u32,
315 level: i32,
316 x_offset: i32,
317 y_offset: i32,
318 x: i32,
319 y: i32,
320 width: i32,
321 height: i32,
322 );
323
324 unsafe fn copy_tex_sub_image_3d(
325 &self,
326 target: u32,
327 level: i32,
328 x_offset: i32,
329 y_offset: i32,
330 z_offset: i32,
331 x: i32,
332 y: i32,
333 width: i32,
334 height: i32,
335 );
336
337 unsafe fn delete_buffer(&self, buffer: Self::Buffer);
338
339 unsafe fn delete_framebuffer(&self, framebuffer: Self::Framebuffer);
340
341 unsafe fn delete_query(&self, query: Self::Query);
342
343 unsafe fn delete_renderbuffer(&self, renderbuffer: Self::Renderbuffer);
344
345 unsafe fn delete_sampler(&self, texture: Self::Sampler);
346
347 unsafe fn delete_sync(&self, fence: Self::Fence);
348
349 unsafe fn delete_texture(&self, texture: Self::Texture);
350
351 unsafe fn disable(&self, parameter: u32);
352
353 unsafe fn disable_draw_buffer(&self, parameter: u32, draw_buffer: u32);
354
355 unsafe fn disable_vertex_attrib_array(&self, index: u32);
356
357 unsafe fn dispatch_compute(&self, groups_x: u32, groups_y: u32, groups_z: u32);
358
359 unsafe fn dispatch_compute_indirect(&self, offset: i32);
360
361 unsafe fn draw_arrays(&self, mode: u32, first: i32, count: i32);
362
363 unsafe fn draw_arrays_instanced(&self, mode: u32, first: i32, count: i32, instance_count: i32);
364
365 unsafe fn draw_arrays_instanced_base_instance(
366 &self,
367 mode: u32,
368 first: i32,
369 count: i32,
370 instance_count: i32,
371 base_instance: u32,
372 );
373
374 unsafe fn draw_arrays_indirect_offset(&self, mode: u32, offset: i32);
375
376 unsafe fn draw_buffer(&self, buffer: u32);
377
378 unsafe fn draw_buffers(&self, buffers: &[u32]);
379
380 unsafe fn draw_elements(&self, mode: u32, count: i32, element_type: u32, offset: i32);
381
382 unsafe fn draw_elements_base_vertex(
383 &self,
384 mode: u32,
385 count: i32,
386 element_type: u32,
387 offset: i32,
388 base_vertex: i32,
389 );
390
391 unsafe fn draw_elements_instanced(
392 &self,
393 mode: u32,
394 count: i32,
395 element_type: u32,
396 offset: i32,
397 instance_count: i32,
398 );
399
400 unsafe fn draw_elements_instanced_base_vertex(
401 &self,
402 mode: u32,
403 count: i32,
404 element_type: u32,
405 offset: i32,
406 instance_count: i32,
407 base_vertex: i32,
408 );
409
410 unsafe fn draw_elements_instanced_base_vertex_base_instance(
411 &self,
412 mode: u32,
413 count: i32,
414 element_type: u32,
415 offset: i32,
416 instance_count: i32,
417 base_vertex: i32,
418 base_instance: u32,
419 );
420
421 unsafe fn draw_elements_indirect_offset(&self, mode: u32, element_type: u32, offset: i32);
422
423 unsafe fn enable(&self, parameter: u32);
424
425 unsafe fn is_enabled(&self, parameter: u32) -> bool;
426
427 unsafe fn enable_draw_buffer(&self, parameter: u32, draw_buffer: u32);
428
429 unsafe fn enable_vertex_array_attrib(&self, vao: Self::VertexArray, index: u32);
430
431 unsafe fn enable_vertex_attrib_array(&self, index: u32);
432
433 unsafe fn flush(&self);
434
435 unsafe fn framebuffer_renderbuffer(
436 &self,
437 target: u32,
438 attachment: u32,
439 renderbuffer_target: u32,
440 renderbuffer: Option<Self::Renderbuffer>,
441 );
442
443 unsafe fn framebuffer_texture(
444 &self,
445 target: u32,
446 attachment: u32,
447 texture: Option<Self::Texture>,
448 level: i32,
449 );
450
451 unsafe fn framebuffer_texture_2d(
452 &self,
453 target: u32,
454 attachment: u32,
455 texture_target: u32,
456 texture: Option<Self::Texture>,
457 level: i32,
458 );
459
460 unsafe fn framebuffer_texture_3d(
461 &self,
462 target: u32,
463 attachment: u32,
464 texture_target: u32,
465 texture: Option<Self::Texture>,
466 level: i32,
467 layer: i32,
468 );
469
470 unsafe fn framebuffer_texture_layer(
471 &self,
472 target: u32,
473 attachment: u32,
474 texture: Option<Self::Texture>,
475 level: i32,
476 layer: i32,
477 );
478
479 unsafe fn front_face(&self, value: u32);
480
481 unsafe fn get_error(&self) -> u32;
482
483 unsafe fn get_tex_parameter_i32(&self, target: u32, parameter: u32) -> i32;
484
485 unsafe fn get_buffer_parameter_i32(&self, target: u32, parameter: u32) -> i32;
486
487 unsafe fn get_parameter_i32(&self, parameter: u32) -> i32;
488
489 unsafe fn get_parameter_i32_slice(&self, parameter: u32, out: &mut [i32]);
490
491 unsafe fn get_parameter_f32(&self, parameter: u32) -> f32;
492
493 unsafe fn get_parameter_f32_slice(&self, parameter: u32, out: &mut [f32]);
494
495 unsafe fn get_parameter_indexed_i32(&self, parameter: u32, index: u32) -> i32;
496
497 unsafe fn get_parameter_indexed_string(&self, parameter: u32, index: u32) -> String;
498
499 unsafe fn get_parameter_string(&self, parameter: u32) -> String;
500
501 unsafe fn get_active_uniform_block_parameter_i32(
502 &self,
503 program: Self::Program,
504 uniform_block_index: u32,
505 parameter: u32,
506 ) -> i32;
507
508 unsafe fn get_active_uniform_block_parameter_i32_slice(
509 &self,
510 program: Self::Program,
511 uniform_block_index: u32,
512 parameter: u32,
513 out: &mut [i32],
514 );
515
516 unsafe fn get_active_uniform_block_name(
517 &self,
518 program: Self::Program,
519 uniform_block_index: u32,
520 ) -> String;
521
522 unsafe fn get_uniform_location(
523 &self,
524 program: Self::Program,
525 name: &str,
526 ) -> Option<Self::UniformLocation>;
527
528 unsafe fn get_attrib_location(&self, program: Self::Program, name: &str) -> Option<u32>;
529
530 unsafe fn bind_attrib_location(&self, program: Self::Program, index: u32, name: &str);
531
532 unsafe fn get_active_attributes(&self, program: Self::Program) -> u32;
533
534 unsafe fn get_active_attribute(
535 &self,
536 program: Self::Program,
537 index: u32,
538 ) -> Option<ActiveAttribute>;
539
540 unsafe fn get_sync_status(&self, fence: Self::Fence) -> u32;
541
542 unsafe fn is_sync(&self, fence: Self::Fence) -> bool;
543
544 unsafe fn renderbuffer_storage(
545 &self,
546 target: u32,
547 internal_format: u32,
548 width: i32,
549 height: i32,
550 );
551
552 unsafe fn renderbuffer_storage_multisample(
553 &self,
554 target: u32,
555 samples: i32,
556 internal_format: u32,
557 width: i32,
558 height: i32,
559 );
560
561 unsafe fn sampler_parameter_f32(&self, sampler: Self::Sampler, name: u32, value: f32);
562
563 unsafe fn sampler_parameter_f32_slice(&self, sampler: Self::Sampler, name: u32, value: &[f32]);
564
565 unsafe fn sampler_parameter_i32(&self, sampler: Self::Sampler, name: u32, value: i32);
566
567 unsafe fn generate_mipmap(&self, target: u32);
568
569 unsafe fn generate_texture_mipmap(&self, texture: Self::Texture);
570
571 unsafe fn tex_image_1d(
572 &self,
573 target: u32,
574 level: i32,
575 internal_format: i32,
576 width: i32,
577 border: i32,
578 format: u32,
579 ty: u32,
580 pixels: Option<&[u8]>,
581 );
582
583 unsafe fn compressed_tex_image_1d(
584 &self,
585 target: u32,
586 level: i32,
587 internal_format: i32,
588 width: i32,
589 border: i32,
590 image_size: i32,
591 pixels: &[u8],
592 );
593
594 unsafe fn tex_image_2d(
595 &self,
596 target: u32,
597 level: i32,
598 internal_format: i32,
599 width: i32,
600 height: i32,
601 border: i32,
602 format: u32,
603 ty: u32,
604 pixels: Option<&[u8]>,
605 );
606
607 unsafe fn tex_image_2d_multisample(
608 &self,
609 target: u32,
610 samples: i32,
611 internal_format: i32,
612 width: i32,
613 height: i32,
614 fixed_sample_locations: bool,
615 );
616
617 unsafe fn compressed_tex_image_2d(
618 &self,
619 target: u32,
620 level: i32,
621 internal_format: i32,
622 width: i32,
623 height: i32,
624 border: i32,
625 image_size: i32,
626 pixels: &[u8],
627 );
628
629 unsafe fn tex_image_3d(
630 &self,
631 target: u32,
632 level: i32,
633 internal_format: i32,
634 width: i32,
635 height: i32,
636 depth: i32,
637 border: i32,
638 format: u32,
639 ty: u32,
640 pixels: Option<&[u8]>,
641 );
642
643 unsafe fn compressed_tex_image_3d(
644 &self,
645 target: u32,
646 level: i32,
647 internal_format: i32,
648 width: i32,
649 height: i32,
650 depth: i32,
651 border: i32,
652 image_size: i32,
653 pixels: &[u8],
654 );
655
656 unsafe fn tex_storage_1d(&self, target: u32, levels: i32, internal_format: u32, width: i32);
657
658 unsafe fn tex_storage_2d(
659 &self,
660 target: u32,
661 levels: i32,
662 internal_format: u32,
663 width: i32,
664 height: i32,
665 );
666
667 unsafe fn tex_storage_2d_multisample(
668 &self,
669 target: u32,
670 samples: i32,
671 internal_format: u32,
672 width: i32,
673 height: i32,
674 fixed_sample_locations: bool,
675 );
676
677 unsafe fn tex_storage_3d(
678 &self,
679 target: u32,
680 levels: i32,
681 internal_format: u32,
682 width: i32,
683 height: i32,
684 depth: i32,
685 );
686
687 unsafe fn texture_storage_3d(
688 &self,
689 texture: Self::Texture,
690 levels: i32,
691 internal_format: u32,
692 width: i32,
693 height: i32,
694 depth: i32,
695 );
696
697 unsafe fn get_uniform_i32(
698 &self,
699 program: Self::Program,
700 location: &Self::UniformLocation,
701 v: &mut [i32],
702 );
703
704 unsafe fn get_uniform_f32(
705 &self,
706 program: Self::Program,
707 location: &Self::UniformLocation,
708 v: &mut [f32],
709 );
710
711 unsafe fn uniform_1_i32(&self, location: Option<&Self::UniformLocation>, x: i32);
712
713 unsafe fn uniform_2_i32(&self, location: Option<&Self::UniformLocation>, x: i32, y: i32);
714
715 unsafe fn uniform_3_i32(
716 &self,
717 location: Option<&Self::UniformLocation>,
718 x: i32,
719 y: i32,
720 z: i32,
721 );
722
723 unsafe fn uniform_4_i32(
724 &self,
725 location: Option<&Self::UniformLocation>,
726 x: i32,
727 y: i32,
728 z: i32,
729 w: i32,
730 );
731
732 unsafe fn uniform_1_i32_slice(&self, location: Option<&Self::UniformLocation>, v: &[i32]);
733
734 unsafe fn uniform_2_i32_slice(&self, location: Option<&Self::UniformLocation>, v: &[i32]);
735
736 unsafe fn uniform_3_i32_slice(&self, location: Option<&Self::UniformLocation>, v: &[i32]);
737
738 unsafe fn uniform_4_i32_slice(&self, location: Option<&Self::UniformLocation>, v: &[i32]);
739
740 unsafe fn uniform_1_u32(&self, location: Option<&Self::UniformLocation>, x: u32);
741
742 unsafe fn uniform_2_u32(&self, location: Option<&Self::UniformLocation>, x: u32, y: u32);
743
744 unsafe fn uniform_3_u32(
745 &self,
746 location: Option<&Self::UniformLocation>,
747 x: u32,
748 y: u32,
749 z: u32,
750 );
751
752 unsafe fn uniform_4_u32(
753 &self,
754 location: Option<&Self::UniformLocation>,
755 x: u32,
756 y: u32,
757 z: u32,
758 w: u32,
759 );
760
761 unsafe fn uniform_1_u32_slice(&self, location: Option<&Self::UniformLocation>, v: &[u32]);
762
763 unsafe fn uniform_2_u32_slice(&self, location: Option<&Self::UniformLocation>, v: &[u32]);
764
765 unsafe fn uniform_3_u32_slice(&self, location: Option<&Self::UniformLocation>, v: &[u32]);
766
767 unsafe fn uniform_4_u32_slice(&self, location: Option<&Self::UniformLocation>, v: &[u32]);
768
769 unsafe fn uniform_1_f32(&self, location: Option<&Self::UniformLocation>, x: f32);
770
771 unsafe fn uniform_2_f32(&self, location: Option<&Self::UniformLocation>, x: f32, y: f32);
772
773 unsafe fn uniform_3_f32(
774 &self,
775 location: Option<&Self::UniformLocation>,
776 x: f32,
777 y: f32,
778 z: f32,
779 );
780
781 unsafe fn uniform_4_f32(
782 &self,
783 location: Option<&Self::UniformLocation>,
784 x: f32,
785 y: f32,
786 z: f32,
787 w: f32,
788 );
789
790 unsafe fn uniform_1_f32_slice(&self, location: Option<&Self::UniformLocation>, v: &[f32]);
791
792 unsafe fn uniform_2_f32_slice(&self, location: Option<&Self::UniformLocation>, v: &[f32]);
793
794 unsafe fn uniform_3_f32_slice(&self, location: Option<&Self::UniformLocation>, v: &[f32]);
795
796 unsafe fn uniform_4_f32_slice(&self, location: Option<&Self::UniformLocation>, v: &[f32]);
797
798 unsafe fn uniform_matrix_2_f32_slice(
799 &self,
800 location: Option<&Self::UniformLocation>,
801 transpose: bool,
802 v: &[f32],
803 );
804
805 unsafe fn uniform_matrix_3_f32_slice(
806 &self,
807 location: Option<&Self::UniformLocation>,
808 transpose: bool,
809 v: &[f32],
810 );
811
812 unsafe fn uniform_matrix_4_f32_slice(
813 &self,
814 location: Option<&Self::UniformLocation>,
815 transpose: bool,
816 v: &[f32],
817 );
818
819 unsafe fn unmap_buffer(&self, target: u32);
820
821 unsafe fn cull_face(&self, value: u32);
822
823 unsafe fn color_mask(&self, red: bool, green: bool, blue: bool, alpha: bool);
824
825 unsafe fn color_mask_draw_buffer(
826 &self,
827 buffer: u32,
828 red: bool,
829 green: bool,
830 blue: bool,
831 alpha: bool,
832 );
833
834 unsafe fn depth_mask(&self, value: bool);
835
836 unsafe fn blend_color(&self, red: f32, green: f32, blue: f32, alpha: f32);
837
838 unsafe fn line_width(&self, width: f32);
839
840 unsafe fn map_buffer_range(
841 &self,
842 target: u32,
843 offset: i32,
844 length: i32,
845 access: u32,
846 ) -> *mut u8;
847
848 unsafe fn flush_mapped_buffer_range(&self, target: u32, offset: i32, length: i32);
849
850 unsafe fn invalidate_buffer_sub_data(&self, target: u32, offset: i32, length: i32);
851
852 unsafe fn invalidate_framebuffer(&self, target: u32, attachments: &[u32]);
853
854 unsafe fn polygon_offset(&self, factor: f32, units: f32);
855
856 unsafe fn polygon_mode(&self, face: u32, mode: u32);
857
858 unsafe fn finish(&self);
859
860 unsafe fn bind_texture(&self, target: u32, texture: Option<Self::Texture>);
861
862 unsafe fn bind_sampler(&self, unit: u32, sampler: Option<Self::Sampler>);
863
864 unsafe fn active_texture(&self, unit: u32);
865
866 unsafe fn fence_sync(&self, condition: u32, flags: u32) -> Result<Self::Fence, String>;
867
868 unsafe fn tex_parameter_f32(&self, target: u32, parameter: u32, value: f32);
869
870 unsafe fn tex_parameter_i32(&self, target: u32, parameter: u32, value: i32);
871
872 unsafe fn texture_parameter_i32(&self, texture: Self::Texture, parameter: u32, value: i32);
873
874 unsafe fn tex_parameter_f32_slice(&self, target: u32, parameter: u32, values: &[f32]);
875
876 unsafe fn tex_parameter_i32_slice(&self, target: u32, parameter: u32, values: &[i32]);
877
878 unsafe fn tex_sub_image_2d(
879 &self,
880 target: u32,
881 level: i32,
882 x_offset: i32,
883 y_offset: i32,
884 width: i32,
885 height: i32,
886 format: u32,
887 ty: u32,
888 pixels: PixelUnpackData,
889 );
890
891 unsafe fn compressed_tex_sub_image_2d(
892 &self,
893 target: u32,
894 level: i32,
895 x_offset: i32,
896 y_offset: i32,
897 width: i32,
898 height: i32,
899 format: u32,
900 pixels: CompressedPixelUnpackData,
901 );
902
903 unsafe fn tex_sub_image_3d(
904 &self,
905 target: u32,
906 level: i32,
907 x_offset: i32,
908 y_offset: i32,
909 z_offset: i32,
910 width: i32,
911 height: i32,
912 depth: i32,
913 format: u32,
914 ty: u32,
915 pixels: PixelUnpackData,
916 );
917
918 unsafe fn texture_sub_image_3d(
919 &self,
920 texture: Self::Texture,
921 level: i32,
922 x_offset: i32,
923 y_offset: i32,
924 z_offset: i32,
925 width: i32,
926 height: i32,
927 depth: i32,
928 format: u32,
929 ty: u32,
930 pixels: PixelUnpackData,
931 );
932
933 unsafe fn compressed_tex_sub_image_3d(
934 &self,
935 target: u32,
936 level: i32,
937 x_offset: i32,
938 y_offset: i32,
939 z_offset: i32,
940 width: i32,
941 height: i32,
942 depth: i32,
943 format: u32,
944 pixels: CompressedPixelUnpackData,
945 );
946
947 unsafe fn depth_func(&self, func: u32);
948
949 unsafe fn depth_range_f32(&self, near: f32, far: f32);
950
951 unsafe fn depth_range_f64(&self, near: f64, far: f64);
952
953 unsafe fn depth_range_f64_slice(&self, first: u32, count: i32, values: &[[f64; 2]]);
954
955 unsafe fn scissor(&self, x: i32, y: i32, width: i32, height: i32);
956
957 unsafe fn scissor_slice(&self, first: u32, count: i32, scissors: &[[i32; 4]]);
958
959 unsafe fn vertex_array_attrib_binding_f32(
960 &self,
961 vao: Self::VertexArray,
962 index: u32,
963 binding_index: u32,
964 );
965
966 unsafe fn vertex_array_attrib_format_f32(
967 &self,
968 vao: Self::VertexArray,
969 index: u32,
970 size: i32,
971 data_type: u32,
972 normalized: bool,
973 relative_offset: u32,
974 );
975
976 unsafe fn vertex_array_attrib_format_i32(
977 &self,
978 vao: Self::VertexArray,
979 index: u32,
980 size: i32,
981 data_type: u32,
982 relative_offset: u32,
983 );
984
985 unsafe fn vertex_array_element_buffer(
986 &self,
987 vao: Self::VertexArray,
988 buffer: Option<Self::Buffer>,
989 );
990
991 unsafe fn vertex_array_vertex_buffer(
992 &self,
993 vao: Self::VertexArray,
994 binding_index: u32,
995 buffer: Option<Self::Buffer>,
996 offset: i32,
997 stride: i32,
998 );
999
1000 unsafe fn vertex_attrib_divisor(&self, index: u32, divisor: u32);
1001
1002 unsafe fn vertex_attrib_pointer_f32(
1003 &self,
1004 index: u32,
1005 size: i32,
1006 data_type: u32,
1007 normalized: bool,
1008 stride: i32,
1009 offset: i32,
1010 );
1011
1012 unsafe fn vertex_attrib_pointer_i32(
1013 &self,
1014 index: u32,
1015 size: i32,
1016 data_type: u32,
1017 stride: i32,
1018 offset: i32,
1019 );
1020
1021 unsafe fn vertex_attrib_pointer_f64(
1022 &self,
1023 index: u32,
1024 size: i32,
1025 data_type: u32,
1026 stride: i32,
1027 offset: i32,
1028 );
1029
1030 unsafe fn vertex_attrib_format_f32(
1031 &self,
1032 index: u32,
1033 size: i32,
1034 data_type: u32,
1035 normalized: bool,
1036 relative_offset: u32,
1037 );
1038
1039 unsafe fn vertex_attrib_format_i32(
1040 &self,
1041 index: u32,
1042 size: i32,
1043 data_type: u32,
1044 relative_offset: u32,
1045 );
1046
1047 unsafe fn vertex_attrib_1_f32(&self, index: u32, x: f32);
1048
1049 unsafe fn vertex_attrib_2_f32(&self, index: u32, x: f32, y: f32);
1050
1051 unsafe fn vertex_attrib_3_f32(&self, index: u32, x: f32, y: f32, z: f32);
1052
1053 unsafe fn vertex_attrib_4_f32(&self, index: u32, x: f32, y: f32, z: f32, w: f32);
1054
1055 unsafe fn vertex_attrib_1_f32_slice(&self, index: u32, v: &[f32]);
1056
1057 unsafe fn vertex_attrib_2_f32_slice(&self, index: u32, v: &[f32]);
1058
1059 unsafe fn vertex_attrib_3_f32_slice(&self, index: u32, v: &[f32]);
1060
1061 unsafe fn vertex_attrib_4_f32_slice(&self, index: u32, v: &[f32]);
1062
1063 unsafe fn vertex_attrib_binding(&self, attrib_index: u32, binding_index: u32);
1064
1065 unsafe fn vertex_binding_divisor(&self, binding_index: u32, divisor: u32);
1066
1067 unsafe fn viewport(&self, x: i32, y: i32, width: i32, height: i32);
1068
1069 unsafe fn viewport_f32_slice(&self, first: u32, count: i32, values: &[[f32; 4]]);
1070
1071 unsafe fn blend_equation(&self, mode: u32);
1072
1073 unsafe fn blend_equation_draw_buffer(&self, draw_buffer: u32, mode: u32);
1074
1075 unsafe fn blend_equation_separate(&self, mode_rgb: u32, mode_alpha: u32);
1076
1077 unsafe fn blend_equation_separate_draw_buffer(
1078 &self,
1079 buffer: u32,
1080 mode_rgb: u32,
1081 mode_alpha: u32,
1082 );
1083
1084 unsafe fn blend_func(&self, src: u32, dst: u32);
1085
1086 unsafe fn blend_func_draw_buffer(&self, draw_buffer: u32, src: u32, dst: u32);
1087
1088 unsafe fn blend_func_separate(
1089 &self,
1090 src_rgb: u32,
1091 dst_rgb: u32,
1092 src_alpha: u32,
1093 dst_alpha: u32,
1094 );
1095
1096 unsafe fn blend_func_separate_draw_buffer(
1097 &self,
1098 draw_buffer: u32,
1099 src_rgb: u32,
1100 dst_rgb: u32,
1101 src_alpha: u32,
1102 dst_alpha: u32,
1103 );
1104
1105 unsafe fn stencil_func(&self, func: u32, reference: i32, mask: u32);
1106
1107 unsafe fn stencil_func_separate(&self, face: u32, func: u32, reference: i32, mask: u32);
1108
1109 unsafe fn stencil_mask(&self, mask: u32);
1110
1111 unsafe fn stencil_mask_separate(&self, face: u32, mask: u32);
1112
1113 unsafe fn stencil_op(&self, stencil_fail: u32, depth_fail: u32, pass: u32);
1114
1115 unsafe fn stencil_op_separate(&self, face: u32, stencil_fail: u32, depth_fail: u32, pass: u32);
1116
1117 unsafe fn debug_message_control(
1118 &self,
1119 source: u32,
1120 msg_type: u32,
1121 severity: u32,
1122 ids: &[u32],
1123 enabled: bool,
1124 );
1125
1126 unsafe fn debug_message_insert<S>(
1127 &self,
1128 source: u32,
1129 msg_type: u32,
1130 id: u32,
1131 severity: u32,
1132 msg: S,
1133 ) where
1134 S: AsRef<str>;
1135
1136 unsafe fn debug_message_callback<F>(&self, callback: F)
1137 where
1138 F: FnMut(u32, u32, u32, u32, &str);
1139
1140 unsafe fn get_debug_message_log(&self, count: u32) -> Vec<DebugMessageLogEntry>;
1141
1142 unsafe fn push_debug_group<S>(&self, source: u32, id: u32, message: S)
1143 where
1144 S: AsRef<str>;
1145
1146 unsafe fn pop_debug_group(&self);
1147
1148 unsafe fn object_label<S>(&self, identifier: u32, name: u32, label: Option<S>)
1149 where
1150 S: AsRef<str>;
1151
1152 unsafe fn get_object_label(&self, identifier: u32, name: u32) -> String;
1153
1154 unsafe fn object_ptr_label<S>(&self, sync: Self::Fence, label: Option<S>)
1155 where
1156 S: AsRef<str>;
1157
1158 unsafe fn get_object_ptr_label(&self, sync: Self::Fence) -> String;
1159
1160 unsafe fn get_uniform_block_index(&self, program: Self::Program, name: &str) -> Option<u32>;
1161
1162 unsafe fn uniform_block_binding(&self, program: Self::Program, index: u32, binding: u32);
1163
1164 unsafe fn get_shader_storage_block_index(
1165 &self,
1166 program: Self::Program,
1167 name: &str,
1168 ) -> Option<u32>;
1169
1170 unsafe fn shader_storage_block_binding(&self, program: Self::Program, index: u32, binding: u32);
1171
1172 unsafe fn read_buffer(&self, src: u32);
1173
1174 unsafe fn read_pixels(
1175 &self,
1176 x: i32,
1177 y: i32,
1178 width: i32,
1179 height: i32,
1180 format: u32,
1181 gltype: u32,
1182 pixels: PixelPackData,
1183 );
1184
1185 unsafe fn begin_query(&self, target: u32, query: Self::Query);
1186
1187 unsafe fn end_query(&self, target: u32);
1188
1189 unsafe fn get_query_parameter_u32(&self, query: Self::Query, parameter: u32, default: u32) -> u32;
1190
1191 unsafe fn delete_transform_feedback(&self, transform_feedback: Self::TransformFeedback);
1192
1193 unsafe fn create_transform_feedback(&self) -> Result<Self::TransformFeedback, String>;
1194
1195 unsafe fn bind_transform_feedback(
1196 &self,
1197 target: u32,
1198 transform_feedback: Option<Self::TransformFeedback>,
1199 );
1200
1201 unsafe fn begin_transform_feedback(&self, primitive_mode: u32);
1202
1203 unsafe fn end_transform_feedback(&self);
1204
1205 unsafe fn pause_transform_feedback(&self);
1206
1207 unsafe fn resume_transform_feedback(&self);
1208
1209 unsafe fn transform_feedback_varyings(
1210 &self,
1211 program: Self::Program,
1212 varyings: &[&str],
1213 buffer_mode: u32,
1214 );
1215
1216 unsafe fn get_transform_feedback_varying(
1217 &self,
1218 program: Self::Program,
1219 index: u32,
1220 ) -> Option<ActiveTransformFeedback>;
1221
1222 unsafe fn memory_barrier(&self, barriers: u32);
1223
1224 unsafe fn memory_barrier_by_region(&self, barriers: u32);
1225
1226 unsafe fn bind_image_texture(
1227 &self,
1228 unit: u32,
1229 texture: Self::Texture,
1230 level: i32,
1231 layered: bool,
1232 layer: i32,
1233 access: u32,
1234 format: u32,
1235 );
1236}
1237
1238pub const ACTIVE_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D9;
1239
1240pub const ACTIVE_ATTRIBUTES: u32 = 0x8B89;
1241
1242pub const ACTIVE_ATTRIBUTE_MAX_LENGTH: u32 = 0x8B8A;
1243
1244pub const ACTIVE_PROGRAM: u32 = 0x8259;
1245
1246pub const ACTIVE_RESOURCES: u32 = 0x92F5;
1247
1248pub const ACTIVE_SUBROUTINES: u32 = 0x8DE5;
1249
1250pub const ACTIVE_SUBROUTINE_MAX_LENGTH: u32 = 0x8E48;
1251
1252pub const ACTIVE_SUBROUTINE_UNIFORMS: u32 = 0x8DE6;
1253
1254pub const ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 0x8E47;
1255
1256pub const ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH: u32 = 0x8E49;
1257
1258pub const ACTIVE_TEXTURE: u32 = 0x84E0;
1259
1260pub const ACTIVE_UNIFORMS: u32 = 0x8B86;
1261
1262pub const ACTIVE_UNIFORM_BLOCKS: u32 = 0x8A36;
1263
1264pub const ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: u32 = 0x8A35;
1265
1266pub const ACTIVE_UNIFORM_MAX_LENGTH: u32 = 0x8B87;
1267
1268pub const ACTIVE_VARIABLES: u32 = 0x9305;
1269
1270pub const ALIASED_LINE_WIDTH_RANGE: u32 = 0x846E;
1271
1272pub const ALL_BARRIER_BITS: u32 = 0xFFFFFFFF;
1273
1274pub const ALL_SHADER_BITS: u32 = 0xFFFFFFFF;
1275
1276pub const ALPHA: u32 = 0x1906;
1277
1278pub const ALREADY_SIGNALED: u32 = 0x911A;
1279
1280pub const ALWAYS: u32 = 0x0207;
1281
1282pub const AND: u32 = 0x1501;
1283
1284pub const AND_INVERTED: u32 = 0x1504;
1285
1286pub const AND_REVERSE: u32 = 0x1502;
1287
1288pub const ANY_SAMPLES_PASSED: u32 = 0x8C2F;
1289
1290pub const ANY_SAMPLES_PASSED_CONSERVATIVE: u32 = 0x8D6A;
1291
1292pub const ARRAY_BUFFER: u32 = 0x8892;
1293
1294pub const ARRAY_BUFFER_BINDING: u32 = 0x8894;
1295
1296pub const ARRAY_SIZE: u32 = 0x92FB;
1297
1298pub const ARRAY_STRIDE: u32 = 0x92FE;
1299
1300pub const ATOMIC_COUNTER_BARRIER_BIT: u32 = 0x00001000;
1301
1302pub const ATOMIC_COUNTER_BUFFER: u32 = 0x92C0;
1303
1304pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS: u32 = 0x92C5;
1305
1306pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES: u32 = 0x92C6;
1307
1308pub const ATOMIC_COUNTER_BUFFER_BINDING: u32 = 0x92C1;
1309
1310pub const ATOMIC_COUNTER_BUFFER_DATA_SIZE: u32 = 0x92C4;
1311
1312pub const ATOMIC_COUNTER_BUFFER_INDEX: u32 = 0x9301;
1313
1314pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER: u32 = 0x90ED;
1315
1316pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x92CB;
1317
1318pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x92CA;
1319
1320pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x92C8;
1321
1322pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x92C9;
1323
1324pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER: u32 = 0x92C7;
1325
1326pub const ATOMIC_COUNTER_BUFFER_SIZE: u32 = 0x92C3;
1327
1328pub const ATOMIC_COUNTER_BUFFER_START: u32 = 0x92C2;
1329
1330pub const ATTACHED_SHADERS: u32 = 0x8B85;
1331
1332pub const AUTO_GENERATE_MIPMAP: u32 = 0x8295;
1333
1334pub const BACK: u32 = 0x0405;
1335
1336pub const BACK_LEFT: u32 = 0x0402;
1337
1338pub const BACK_RIGHT: u32 = 0x0403;
1339
1340pub const BGR: u32 = 0x80E0;
1341
1342pub const BGRA: u32 = 0x80E1;
1343
1344pub const BGRA_INTEGER: u32 = 0x8D9B;
1345
1346pub const BGR_INTEGER: u32 = 0x8D9A;
1347
1348pub const BLEND: u32 = 0x0BE2;
1349
1350pub const BLEND_COLOR: u32 = 0x8005;
1351
1352pub const BLEND_DST: u32 = 0x0BE0;
1353
1354pub const BLEND_DST_ALPHA: u32 = 0x80CA;
1355
1356pub const BLEND_DST_RGB: u32 = 0x80C8;
1357
1358pub const BLEND_EQUATION: u32 = 0x8009;
1359
1360pub const BLEND_EQUATION_ALPHA: u32 = 0x883D;
1361
1362pub const BLEND_EQUATION_RGB: u32 = 0x8009;
1363
1364pub const BLEND_SRC: u32 = 0x0BE1;
1365
1366pub const BLEND_SRC_ALPHA: u32 = 0x80CB;
1367
1368pub const BLEND_SRC_RGB: u32 = 0x80C9;
1369
1370pub const BLOCK_INDEX: u32 = 0x92FD;
1371
1372pub const BLUE: u32 = 0x1905;
1373
1374pub const BLUE_INTEGER: u32 = 0x8D96;
1375
1376pub const BOOL: u32 = 0x8B56;
1377
1378pub const BOOL_VEC2: u32 = 0x8B57;
1379
1380pub const BOOL_VEC3: u32 = 0x8B58;
1381
1382pub const BOOL_VEC4: u32 = 0x8B59;
1383
1384pub const BUFFER: u32 = 0x82E0;
1385
1386pub const BUFFER_ACCESS: u32 = 0x88BB;
1387
1388pub const BUFFER_ACCESS_FLAGS: u32 = 0x911F;
1389
1390pub const BUFFER_BINDING: u32 = 0x9302;
1391
1392pub const BUFFER_DATA_SIZE: u32 = 0x9303;
1393
1394pub const BUFFER_IMMUTABLE_STORAGE: u32 = 0x821F;
1395
1396pub const BUFFER_MAPPED: u32 = 0x88BC;
1397
1398pub const BUFFER_MAP_LENGTH: u32 = 0x9120;
1399
1400pub const BUFFER_MAP_OFFSET: u32 = 0x9121;
1401
1402pub const BUFFER_MAP_POINTER: u32 = 0x88BD;
1403
1404pub const BUFFER_SIZE: u32 = 0x8764;
1405
1406pub const BUFFER_STORAGE_FLAGS: u32 = 0x8220;
1407
1408pub const BUFFER_UPDATE_BARRIER_BIT: u32 = 0x00000200;
1409
1410pub const BUFFER_USAGE: u32 = 0x8765;
1411
1412pub const BUFFER_VARIABLE: u32 = 0x92E5;
1413
1414pub const BYTE: u32 = 0x1400;
1415
1416pub const CAVEAT_SUPPORT: u32 = 0x82B8;
1417
1418pub const CCW: u32 = 0x0901;
1419
1420pub const CLAMP_READ_COLOR: u32 = 0x891C;
1421
1422pub const CLAMP_TO_BORDER: u32 = 0x812D;
1423
1424pub const CLAMP_TO_EDGE: u32 = 0x812F;
1425
1426pub const CLEAR: u32 = 0x1500;
1427
1428pub const CLEAR_BUFFER: u32 = 0x82B4;
1429
1430pub const CLEAR_TEXTURE: u32 = 0x9365;
1431
1432pub const CLIENT_MAPPED_BUFFER_BARRIER_BIT: u32 = 0x00004000;
1433
1434pub const CLIENT_STORAGE_BIT: u32 = 0x0200;
1435
1436pub const CLIPPING_INPUT_PRIMITIVES: u32 = 0x82F6;
1437
1438pub const CLIPPING_OUTPUT_PRIMITIVES: u32 = 0x82F7;
1439
1440pub const CLIP_DEPTH_MODE: u32 = 0x935D;
1441
1442pub const CLIP_DISTANCE0: u32 = 0x3000;
1443
1444pub const CLIP_DISTANCE1: u32 = 0x3001;
1445
1446pub const CLIP_DISTANCE2: u32 = 0x3002;
1447
1448pub const CLIP_DISTANCE3: u32 = 0x3003;
1449
1450pub const CLIP_DISTANCE4: u32 = 0x3004;
1451
1452pub const CLIP_DISTANCE5: u32 = 0x3005;
1453
1454pub const CLIP_DISTANCE6: u32 = 0x3006;
1455
1456pub const CLIP_DISTANCE7: u32 = 0x3007;
1457
1458pub const CLIP_ORIGIN: u32 = 0x935C;
1459
1460pub const COLOR: u32 = 0x1800;
1461
1462pub const COLOR_ATTACHMENT0: u32 = 0x8CE0;
1463
1464pub const COLOR_ATTACHMENT1: u32 = 0x8CE1;
1465
1466pub const COLOR_ATTACHMENT10: u32 = 0x8CEA;
1467
1468pub const COLOR_ATTACHMENT11: u32 = 0x8CEB;
1469
1470pub const COLOR_ATTACHMENT12: u32 = 0x8CEC;
1471
1472pub const COLOR_ATTACHMENT13: u32 = 0x8CED;
1473
1474pub const COLOR_ATTACHMENT14: u32 = 0x8CEE;
1475
1476pub const COLOR_ATTACHMENT15: u32 = 0x8CEF;
1477
1478pub const COLOR_ATTACHMENT16: u32 = 0x8CF0;
1479
1480pub const COLOR_ATTACHMENT17: u32 = 0x8CF1;
1481
1482pub const COLOR_ATTACHMENT18: u32 = 0x8CF2;
1483
1484pub const COLOR_ATTACHMENT19: u32 = 0x8CF3;
1485
1486pub const COLOR_ATTACHMENT2: u32 = 0x8CE2;
1487
1488pub const COLOR_ATTACHMENT20: u32 = 0x8CF4;
1489
1490pub const COLOR_ATTACHMENT21: u32 = 0x8CF5;
1491
1492pub const COLOR_ATTACHMENT22: u32 = 0x8CF6;
1493
1494pub const COLOR_ATTACHMENT23: u32 = 0x8CF7;
1495
1496pub const COLOR_ATTACHMENT24: u32 = 0x8CF8;
1497
1498pub const COLOR_ATTACHMENT25: u32 = 0x8CF9;
1499
1500pub const COLOR_ATTACHMENT26: u32 = 0x8CFA;
1501
1502pub const COLOR_ATTACHMENT27: u32 = 0x8CFB;
1503
1504pub const COLOR_ATTACHMENT28: u32 = 0x8CFC;
1505
1506pub const COLOR_ATTACHMENT29: u32 = 0x8CFD;
1507
1508pub const COLOR_ATTACHMENT3: u32 = 0x8CE3;
1509
1510pub const COLOR_ATTACHMENT30: u32 = 0x8CFE;
1511
1512pub const COLOR_ATTACHMENT31: u32 = 0x8CFF;
1513
1514pub const COLOR_ATTACHMENT4: u32 = 0x8CE4;
1515
1516pub const COLOR_ATTACHMENT5: u32 = 0x8CE5;
1517
1518pub const COLOR_ATTACHMENT6: u32 = 0x8CE6;
1519
1520pub const COLOR_ATTACHMENT7: u32 = 0x8CE7;
1521
1522pub const COLOR_ATTACHMENT8: u32 = 0x8CE8;
1523
1524pub const COLOR_ATTACHMENT9: u32 = 0x8CE9;
1525
1526pub const COLOR_BUFFER_BIT: u32 = 0x00004000;
1527
1528pub const COLOR_CLEAR_VALUE: u32 = 0x0C22;
1529
1530pub const COLOR_COMPONENTS: u32 = 0x8283;
1531
1532pub const COLOR_ENCODING: u32 = 0x8296;
1533
1534pub const COLOR_LOGIC_OP: u32 = 0x0BF2;
1535
1536pub const COLOR_RENDERABLE: u32 = 0x8286;
1537
1538pub const COLOR_WRITEMASK: u32 = 0x0C23;
1539
1540pub const COMMAND_BARRIER_BIT: u32 = 0x00000040;
1541
1542pub const COMPARE_REF_TO_TEXTURE: u32 = 0x884E;
1543
1544pub const COMPATIBLE_SUBROUTINES: u32 = 0x8E4B;
1545
1546pub const COMPILE_STATUS: u32 = 0x8B81;
1547
1548pub const COMPRESSED_R11_EAC: u32 = 0x9270;
1549
1550pub const COMPRESSED_RED: u32 = 0x8225;
1551
1552pub const COMPRESSED_RED_RGTC1: u32 = 0x8DBB;
1553
1554pub const COMPRESSED_RG: u32 = 0x8226;
1555
1556pub const COMPRESSED_RG11_EAC: u32 = 0x9272;
1557
1558pub const COMPRESSED_RGB: u32 = 0x84ED;
1559
1560pub const COMPRESSED_RGB8_ETC2: u32 = 0x9274;
1561
1562pub const COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 0x9276;
1563
1564pub const COMPRESSED_RGBA: u32 = 0x84EE;
1565
1566pub const COMPRESSED_RGBA8_ETC2_EAC: u32 = 0x9278;
1567
1568pub const COMPRESSED_RGBA_BPTC_UNORM: u32 = 0x8E8C;
1569
1570pub const COMPRESSED_RGB_BPTC_SIGNED_FLOAT: u32 = 0x8E8E;
1571
1572pub const COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT: u32 = 0x8E8F;
1573
1574pub const COMPRESSED_RG_RGTC2: u32 = 0x8DBD;
1575
1576pub const COMPRESSED_SIGNED_R11_EAC: u32 = 0x9271;
1577
1578pub const COMPRESSED_SIGNED_RED_RGTC1: u32 = 0x8DBC;
1579
1580pub const COMPRESSED_SIGNED_RG11_EAC: u32 = 0x9273;
1581
1582pub const COMPRESSED_SIGNED_RG_RGTC2: u32 = 0x8DBE;
1583
1584pub const COMPRESSED_SRGB: u32 = 0x8C48;
1585
1586pub const COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: u32 = 0x9279;
1587
1588pub const COMPRESSED_SRGB8_ETC2: u32 = 0x9275;
1589
1590pub const COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 0x9277;
1591
1592pub const COMPRESSED_SRGB_ALPHA: u32 = 0x8C49;
1593
1594pub const COMPRESSED_SRGB_ALPHA_BPTC_UNORM: u32 = 0x8E8D;
1595
1596pub const COMPRESSED_RGB_S3TC_DXT1_EXT: u32 = 0x83F0;
1597
1598pub const COMPRESSED_RGBA_S3TC_DXT1_EXT: u32 = 0x83F1;
1599
1600pub const COMPRESSED_RGBA_S3TC_DXT3_EXT: u32 = 0x83F2;
1601
1602pub const COMPRESSED_RGBA_S3TC_DXT5_EXT: u32 = 0x83F3;
1603
1604pub const COMPRESSED_SRGB_S3TC_DXT1_EXT: u32 = 0x8C4C;
1605
1606pub const COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: u32 = 0x8C4D;
1607
1608pub const COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: u32 = 0x8C4E;
1609
1610pub const COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: u32 = 0x8C4F;
1611
1612pub const COMPRESSED_RGBA_ASTC_4x4_KHR: u32 = 0x93B0;
1613
1614pub const COMPRESSED_RGBA_ASTC_5x4_KHR: u32 = 0x93B1;
1615
1616pub const COMPRESSED_RGBA_ASTC_5x5_KHR: u32 = 0x93B2;
1617
1618pub const COMPRESSED_RGBA_ASTC_6x5_KHR: u32 = 0x93B3;
1619
1620pub const COMPRESSED_RGBA_ASTC_6x6_KHR: u32 = 0x93B4;
1621
1622pub const COMPRESSED_RGBA_ASTC_8x5_KHR: u32 = 0x93B5;
1623
1624pub const COMPRESSED_RGBA_ASTC_8x6_KHR: u32 = 0x93B6;
1625
1626pub const COMPRESSED_RGBA_ASTC_8x8_KHR: u32 = 0x93B7;
1627
1628pub const COMPRESSED_RGBA_ASTC_10x5_KHR: u32 = 0x93B8;
1629
1630pub const COMPRESSED_RGBA_ASTC_10x6_KHR: u32 = 0x93B9;
1631
1632pub const COMPRESSED_RGBA_ASTC_10x8_KHR: u32 = 0x93BA;
1633
1634pub const COMPRESSED_RGBA_ASTC_10x10_KHR: u32 = 0x93BB;
1635
1636pub const COMPRESSED_RGBA_ASTC_12x10_KHR: u32 = 0x93BC;
1637
1638pub const COMPRESSED_RGBA_ASTC_12x12_KHR: u32 = 0x93BD;
1639
1640pub const COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: u32 = 0x93D0;
1641
1642pub const COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: u32 = 0x93D1;
1643
1644pub const COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: u32 = 0x93D2;
1645
1646pub const COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: u32 = 0x93D3;
1647
1648pub const COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: u32 = 0x93D4;
1649
1650pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: u32 = 0x93D5;
1651
1652pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: u32 = 0x93D6;
1653
1654pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: u32 = 0x93D7;
1655
1656pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: u32 = 0x93D8;
1657
1658pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: u32 = 0x93D9;
1659
1660pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: u32 = 0x93DA;
1661
1662pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: u32 = 0x93DB;
1663
1664pub const COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: u32 = 0x93DC;
1665
1666pub const COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: u32 = 0x93DD;
1667
1668pub const COMPRESSED_TEXTURE_FORMATS: u32 = 0x86A3;
1669
1670pub const COMPUTE_SHADER: u32 = 0x91B9;
1671
1672pub const COMPUTE_SHADER_BIT: u32 = 0x00000020;
1673
1674pub const COMPUTE_SHADER_INVOCATIONS: u32 = 0x82F5;
1675
1676pub const COMPUTE_SUBROUTINE: u32 = 0x92ED;
1677
1678pub const COMPUTE_SUBROUTINE_UNIFORM: u32 = 0x92F3;
1679
1680pub const COMPUTE_TEXTURE: u32 = 0x82A0;
1681
1682pub const COMPUTE_WORK_GROUP_SIZE: u32 = 0x8267;
1683
1684pub const CONDITION_SATISFIED: u32 = 0x911C;
1685
1686pub const CONSTANT_ALPHA: u32 = 0x8003;
1687
1688pub const CONSTANT_COLOR: u32 = 0x8001;
1689
1690pub const CONTEXT_COMPATIBILITY_PROFILE_BIT: u32 = 0x00000002;
1691
1692pub const CONTEXT_CORE_PROFILE_BIT: u32 = 0x00000001;
1693
1694pub const CONTEXT_FLAGS: u32 = 0x821E;
1695
1696pub const CONTEXT_FLAG_DEBUG_BIT: u32 = 0x00000002;
1697
1698pub const CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT: u32 = 0x00000001;
1699
1700pub const CONTEXT_FLAG_NO_ERROR_BIT: u32 = 0x00000008;
1701
1702pub const CONTEXT_FLAG_ROBUST_ACCESS_BIT: u32 = 0x00000004;
1703
1704pub const CONTEXT_LOST: u32 = 0x0507;
1705
1706pub const CONTEXT_PROFILE_MASK: u32 = 0x9126;
1707
1708pub const CONTEXT_RELEASE_BEHAVIOR: u32 = 0x82FB;
1709
1710pub const CONTEXT_RELEASE_BEHAVIOR_FLUSH: u32 = 0x82FC;
1711
1712pub const COPY: u32 = 0x1503;
1713
1714pub const COPY_INVERTED: u32 = 0x150C;
1715
1716pub const COPY_READ_BUFFER: u32 = 0x8F36;
1717
1718pub const COPY_READ_BUFFER_BINDING: u32 = 0x8F36;
1719
1720pub const COPY_WRITE_BUFFER: u32 = 0x8F37;
1721
1722pub const COPY_WRITE_BUFFER_BINDING: u32 = 0x8F37;
1723
1724pub const CULL_FACE: u32 = 0x0B44;
1725
1726pub const CULL_FACE_MODE: u32 = 0x0B45;
1727
1728pub const CURRENT_PROGRAM: u32 = 0x8B8D;
1729
1730pub const CURRENT_QUERY: u32 = 0x8865;
1731
1732pub const CURRENT_VERTEX_ATTRIB: u32 = 0x8626;
1733
1734pub const CW: u32 = 0x0900;
1735
1736pub const DEBUG_CALLBACK_FUNCTION: u32 = 0x8244;
1737
1738pub const DEBUG_CALLBACK_USER_PARAM: u32 = 0x8245;
1739
1740pub const DEBUG_GROUP_STACK_DEPTH: u32 = 0x826D;
1741
1742pub const DEBUG_LOGGED_MESSAGES: u32 = 0x9145;
1743
1744pub const DEBUG_NEXT_LOGGED_MESSAGE_LENGTH: u32 = 0x8243;
1745
1746pub const DEBUG_OUTPUT: u32 = 0x92E0;
1747
1748pub const DEBUG_OUTPUT_SYNCHRONOUS: u32 = 0x8242;
1749
1750pub const DEBUG_SEVERITY_HIGH: u32 = 0x9146;
1751
1752pub const DEBUG_SEVERITY_LOW: u32 = 0x9148;
1753
1754pub const DEBUG_SEVERITY_MEDIUM: u32 = 0x9147;
1755
1756pub const DEBUG_SEVERITY_NOTIFICATION: u32 = 0x826B;
1757
1758pub const DEBUG_SOURCE_API: u32 = 0x8246;
1759
1760pub const DEBUG_SOURCE_APPLICATION: u32 = 0x824A;
1761
1762pub const DEBUG_SOURCE_OTHER: u32 = 0x824B;
1763
1764pub const DEBUG_SOURCE_SHADER_COMPILER: u32 = 0x8248;
1765
1766pub const DEBUG_SOURCE_THIRD_PARTY: u32 = 0x8249;
1767
1768pub const DEBUG_SOURCE_WINDOW_SYSTEM: u32 = 0x8247;
1769
1770pub const DEBUG_TYPE_DEPRECATED_BEHAVIOR: u32 = 0x824D;
1771
1772pub const DEBUG_TYPE_ERROR: u32 = 0x824C;
1773
1774pub const DEBUG_TYPE_MARKER: u32 = 0x8268;
1775
1776pub const DEBUG_TYPE_OTHER: u32 = 0x8251;
1777
1778pub const DEBUG_TYPE_PERFORMANCE: u32 = 0x8250;
1779
1780pub const DEBUG_TYPE_POP_GROUP: u32 = 0x826A;
1781
1782pub const DEBUG_TYPE_PORTABILITY: u32 = 0x824F;
1783
1784pub const DEBUG_TYPE_PUSH_GROUP: u32 = 0x8269;
1785
1786pub const DEBUG_TYPE_UNDEFINED_BEHAVIOR: u32 = 0x824E;
1787
1788pub const DECR: u32 = 0x1E03;
1789
1790pub const DECR_WRAP: u32 = 0x8508;
1791
1792pub const DELETE_STATUS: u32 = 0x8B80;
1793
1794pub const DEPTH: u32 = 0x1801;
1795
1796pub const DEPTH24_STENCIL8: u32 = 0x88F0;
1797
1798pub const DEPTH32F_STENCIL8: u32 = 0x8CAD;
1799
1800pub const DEPTH_ATTACHMENT: u32 = 0x8D00;
1801
1802pub const DEPTH_BUFFER_BIT: u32 = 0x00000100;
1803
1804pub const DEPTH_CLAMP: u32 = 0x864F;
1805
1806pub const DEPTH_CLEAR_VALUE: u32 = 0x0B73;
1807
1808pub const DEPTH_COMPONENT: u32 = 0x1902;
1809
1810pub const DEPTH_COMPONENT16: u32 = 0x81A5;
1811
1812pub const DEPTH_COMPONENT24: u32 = 0x81A6;
1813
1814pub const DEPTH_COMPONENT32: u32 = 0x81A7;
1815
1816pub const DEPTH_COMPONENT32F: u32 = 0x8CAC;
1817
1818pub const DEPTH_COMPONENTS: u32 = 0x8284;
1819
1820pub const DEPTH_FUNC: u32 = 0x0B74;
1821
1822pub const DEPTH_RANGE: u32 = 0x0B70;
1823
1824pub const DEPTH_RENDERABLE: u32 = 0x8287;
1825
1826pub const DEPTH_STENCIL: u32 = 0x84F9;
1827
1828pub const DEPTH_STENCIL_ATTACHMENT: u32 = 0x821A;
1829
1830pub const DEPTH_STENCIL_TEXTURE_MODE: u32 = 0x90EA;
1831
1832pub const DEPTH_TEST: u32 = 0x0B71;
1833
1834pub const DEPTH_WRITEMASK: u32 = 0x0B72;
1835
1836pub const DISPATCH_INDIRECT_BUFFER: u32 = 0x90EE;
1837
1838pub const DISPATCH_INDIRECT_BUFFER_BINDING: u32 = 0x90EF;
1839
1840pub const DISPLAY_LIST: u32 = 0x82E7;
1841
1842pub const DITHER: u32 = 0x0BD0;
1843
1844pub const DONT_CARE: u32 = 0x1100;
1845
1846pub const DOUBLE: u32 = 0x140A;
1847
1848pub const DOUBLEBUFFER: u32 = 0x0C32;
1849
1850pub const DOUBLE_MAT2: u32 = 0x8F46;
1851
1852pub const DOUBLE_MAT2x3: u32 = 0x8F49;
1853
1854pub const DOUBLE_MAT2x4: u32 = 0x8F4A;
1855
1856pub const DOUBLE_MAT3: u32 = 0x8F47;
1857
1858pub const DOUBLE_MAT3x2: u32 = 0x8F4B;
1859
1860pub const DOUBLE_MAT3x4: u32 = 0x8F4C;
1861
1862pub const DOUBLE_MAT4: u32 = 0x8F48;
1863
1864pub const DOUBLE_MAT4x2: u32 = 0x8F4D;
1865
1866pub const DOUBLE_MAT4x3: u32 = 0x8F4E;
1867
1868pub const DOUBLE_VEC2: u32 = 0x8FFC;
1869
1870pub const DOUBLE_VEC3: u32 = 0x8FFD;
1871
1872pub const DOUBLE_VEC4: u32 = 0x8FFE;
1873
1874pub const DRAW_BUFFER: u32 = 0x0C01;
1875
1876pub const DRAW_BUFFER0: u32 = 0x8825;
1877
1878pub const DRAW_BUFFER1: u32 = 0x8826;
1879
1880pub const DRAW_BUFFER10: u32 = 0x882F;
1881
1882pub const DRAW_BUFFER11: u32 = 0x8830;
1883
1884pub const DRAW_BUFFER12: u32 = 0x8831;
1885
1886pub const DRAW_BUFFER13: u32 = 0x8832;
1887
1888pub const DRAW_BUFFER14: u32 = 0x8833;
1889
1890pub const DRAW_BUFFER15: u32 = 0x8834;
1891
1892pub const DRAW_BUFFER2: u32 = 0x8827;
1893
1894pub const DRAW_BUFFER3: u32 = 0x8828;
1895
1896pub const DRAW_BUFFER4: u32 = 0x8829;
1897
1898pub const DRAW_BUFFER5: u32 = 0x882A;
1899
1900pub const DRAW_BUFFER6: u32 = 0x882B;
1901
1902pub const DRAW_BUFFER7: u32 = 0x882C;
1903
1904pub const DRAW_BUFFER8: u32 = 0x882D;
1905
1906pub const DRAW_BUFFER9: u32 = 0x882E;
1907
1908pub const DRAW_FRAMEBUFFER: u32 = 0x8CA9;
1909
1910pub const DRAW_FRAMEBUFFER_BINDING: u32 = 0x8CA6;
1911
1912pub const DRAW_INDIRECT_BUFFER: u32 = 0x8F3F;
1913
1914pub const DRAW_INDIRECT_BUFFER_BINDING: u32 = 0x8F43;
1915
1916pub const DST_ALPHA: u32 = 0x0304;
1917
1918pub const DST_COLOR: u32 = 0x0306;
1919
1920pub const DYNAMIC_COPY: u32 = 0x88EA;
1921
1922pub const DYNAMIC_DRAW: u32 = 0x88E8;
1923
1924pub const DYNAMIC_READ: u32 = 0x88E9;
1925
1926pub const DYNAMIC_STORAGE_BIT: u32 = 0x0100;
1927
1928pub const ELEMENT_ARRAY_BARRIER_BIT: u32 = 0x00000002;
1929
1930pub const ELEMENT_ARRAY_BUFFER: u32 = 0x8893;
1931
1932pub const ELEMENT_ARRAY_BUFFER_BINDING: u32 = 0x8895;
1933
1934pub const EQUAL: u32 = 0x0202;
1935
1936pub const EQUIV: u32 = 0x1509;
1937
1938pub const EXTENSIONS: u32 = 0x1F03;
1939
1940pub const FALSE: u8 = 0;
1941
1942pub const FASTEST: u32 = 0x1101;
1943
1944pub const FILL: u32 = 0x1B02;
1945
1946pub const FILTER: u32 = 0x829A;
1947
1948pub const FIRST_VERTEX_CONVENTION: u32 = 0x8E4D;
1949
1950pub const FIXED: u32 = 0x140C;
1951
1952pub const FIXED_ONLY: u32 = 0x891D;
1953
1954pub const FLOAT: u32 = 0x1406;
1955
1956pub const FLOAT_32_UNSIGNED_INT_24_8_REV: u32 = 0x8DAD;
1957
1958pub const FLOAT_MAT2: u32 = 0x8B5A;
1959
1960pub const FLOAT_MAT2x3: u32 = 0x8B65;
1961
1962pub const FLOAT_MAT2x4: u32 = 0x8B66;
1963
1964pub const FLOAT_MAT3: u32 = 0x8B5B;
1965
1966pub const FLOAT_MAT3x2: u32 = 0x8B67;
1967
1968pub const FLOAT_MAT3x4: u32 = 0x8B68;
1969
1970pub const FLOAT_MAT4: u32 = 0x8B5C;
1971
1972pub const FLOAT_MAT4x2: u32 = 0x8B69;
1973
1974pub const FLOAT_MAT4x3: u32 = 0x8B6A;
1975
1976pub const FLOAT_VEC2: u32 = 0x8B50;
1977
1978pub const FLOAT_VEC3: u32 = 0x8B51;
1979
1980pub const FLOAT_VEC4: u32 = 0x8B52;
1981
1982pub const FRACTIONAL_EVEN: u32 = 0x8E7C;
1983
1984pub const FRACTIONAL_ODD: u32 = 0x8E7B;
1985
1986pub const FRAGMENT_INTERPOLATION_OFFSET_BITS: u32 = 0x8E5D;
1987
1988pub const FRAGMENT_SHADER: u32 = 0x8B30;
1989
1990pub const FRAGMENT_SHADER_BIT: u32 = 0x00000002;
1991
1992pub const FRAGMENT_SHADER_DERIVATIVE_HINT: u32 = 0x8B8B;
1993
1994pub const FRAGMENT_SHADER_INVOCATIONS: u32 = 0x82F4;
1995
1996pub const FRAGMENT_SUBROUTINE: u32 = 0x92EC;
1997
1998pub const FRAGMENT_SUBROUTINE_UNIFORM: u32 = 0x92F2;
1999
2000pub const FRAGMENT_TEXTURE: u32 = 0x829F;
2001
2002pub const FRAMEBUFFER: u32 = 0x8D40;
2003
2004pub const FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: u32 = 0x8215;
2005
2006pub const FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: u32 = 0x8214;
2007
2008pub const FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: u32 = 0x8210;
2009
2010pub const FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: u32 = 0x8211;
2011
2012pub const FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: u32 = 0x8216;
2013
2014pub const FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: u32 = 0x8213;
2015
2016pub const FRAMEBUFFER_ATTACHMENT_LAYERED: u32 = 0x8DA7;
2017
2018pub const FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: u32 = 0x8CD1;
2019
2020pub const FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: u32 = 0x8CD0;
2021
2022pub const FRAMEBUFFER_ATTACHMENT_RED_SIZE: u32 = 0x8212;
2023
2024pub const FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: u32 = 0x8217;
2025
2026pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: u32 = 0x8CD3;
2027
2028pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: u32 = 0x8CD4;
2029
2030pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: u32 = 0x8CD2;
2031
2032pub const FRAMEBUFFER_BARRIER_BIT: u32 = 0x00000400;
2033
2034pub const FRAMEBUFFER_BINDING: u32 = 0x8CA6;
2035
2036pub const FRAMEBUFFER_BLEND: u32 = 0x828B;
2037
2038pub const FRAMEBUFFER_COMPLETE: u32 = 0x8CD5;
2039
2040pub const FRAMEBUFFER_DEFAULT: u32 = 0x8218;
2041
2042pub const FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS: u32 = 0x9314;
2043
2044pub const FRAMEBUFFER_DEFAULT_HEIGHT: u32 = 0x9311;
2045
2046pub const FRAMEBUFFER_DEFAULT_LAYERS: u32 = 0x9312;
2047
2048pub const FRAMEBUFFER_DEFAULT_SAMPLES: u32 = 0x9313;
2049
2050pub const FRAMEBUFFER_DEFAULT_WIDTH: u32 = 0x9310;
2051
2052pub const FRAMEBUFFER_INCOMPLETE_ATTACHMENT: u32 = 0x8CD6;
2053
2054pub const FRAMEBUFFER_INCOMPLETE_DIMENSIONS: u32 = 0x8CD9;
2055
2056pub const FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER: u32 = 0x8CDB;
2057
2058pub const FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: u32 = 0x8DA8;
2059
2060pub const FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: u32 = 0x8CD7;
2061
2062pub const FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: u32 = 0x8D56;
2063
2064pub const FRAMEBUFFER_INCOMPLETE_READ_BUFFER: u32 = 0x8CDC;
2065
2066pub const FRAMEBUFFER_RENDERABLE: u32 = 0x8289;
2067
2068pub const FRAMEBUFFER_RENDERABLE_LAYERED: u32 = 0x828A;
2069
2070pub const FRAMEBUFFER_SRGB: u32 = 0x8DB9;
2071
2072pub const FRAMEBUFFER_UNDEFINED: u32 = 0x8219;
2073
2074pub const FRAMEBUFFER_UNSUPPORTED: u32 = 0x8CDD;
2075
2076pub const FRONT: u32 = 0x0404;
2077
2078pub const FRONT_AND_BACK: u32 = 0x0408;
2079
2080pub const FRONT_FACE: u32 = 0x0B46;
2081
2082pub const FRONT_LEFT: u32 = 0x0400;
2083
2084pub const FRONT_RIGHT: u32 = 0x0401;
2085
2086pub const FULL_SUPPORT: u32 = 0x82B7;
2087
2088pub const FUNC_ADD: u32 = 0x8006;
2089
2090pub const FUNC_REVERSE_SUBTRACT: u32 = 0x800B;
2091
2092pub const FUNC_SUBTRACT: u32 = 0x800A;
2093
2094pub const GEOMETRY_INPUT_TYPE: u32 = 0x8917;
2095
2096pub const GEOMETRY_OUTPUT_TYPE: u32 = 0x8918;
2097
2098pub const GEOMETRY_SHADER: u32 = 0x8DD9;
2099
2100pub const GEOMETRY_SHADER_BIT: u32 = 0x00000004;
2101
2102pub const GEOMETRY_SHADER_INVOCATIONS: u32 = 0x887F;
2103
2104pub const GEOMETRY_SHADER_PRIMITIVES_EMITTED: u32 = 0x82F3;
2105
2106pub const GEOMETRY_SUBROUTINE: u32 = 0x92EB;
2107
2108pub const GEOMETRY_SUBROUTINE_UNIFORM: u32 = 0x92F1;
2109
2110pub const GEOMETRY_TEXTURE: u32 = 0x829E;
2111
2112pub const GEOMETRY_VERTICES_OUT: u32 = 0x8916;
2113
2114pub const GEQUAL: u32 = 0x0206;
2115
2116pub const GET_TEXTURE_IMAGE_FORMAT: u32 = 0x8291;
2117
2118pub const GET_TEXTURE_IMAGE_TYPE: u32 = 0x8292;
2119
2120pub const GREATER: u32 = 0x0204;
2121
2122pub const GREEN: u32 = 0x1904;
2123
2124pub const GREEN_INTEGER: u32 = 0x8D95;
2125
2126pub const GUILTY_CONTEXT_RESET: u32 = 0x8253;
2127
2128pub const HALF_FLOAT: u32 = 0x140B;
2129
2130pub const HIGH_FLOAT: u32 = 0x8DF2;
2131
2132pub const HIGH_INT: u32 = 0x8DF5;
2133
2134pub const IMAGE_1D: u32 = 0x904C;
2135
2136pub const IMAGE_1D_ARRAY: u32 = 0x9052;
2137
2138pub const IMAGE_2D: u32 = 0x904D;
2139
2140pub const IMAGE_2D_ARRAY: u32 = 0x9053;
2141
2142pub const IMAGE_2D_MULTISAMPLE: u32 = 0x9055;
2143
2144pub const IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x9056;
2145
2146pub const IMAGE_2D_RECT: u32 = 0x904F;
2147
2148pub const IMAGE_3D: u32 = 0x904E;
2149
2150pub const IMAGE_BINDING_ACCESS: u32 = 0x8F3E;
2151
2152pub const IMAGE_BINDING_FORMAT: u32 = 0x906E;
2153
2154pub const IMAGE_BINDING_LAYER: u32 = 0x8F3D;
2155
2156pub const IMAGE_BINDING_LAYERED: u32 = 0x8F3C;
2157
2158pub const IMAGE_BINDING_LEVEL: u32 = 0x8F3B;
2159
2160pub const IMAGE_BINDING_NAME: u32 = 0x8F3A;
2161
2162pub const IMAGE_BUFFER: u32 = 0x9051;
2163
2164pub const IMAGE_CLASS_10_10_10_2: u32 = 0x82C3;
2165
2166pub const IMAGE_CLASS_11_11_10: u32 = 0x82C2;
2167
2168pub const IMAGE_CLASS_1_X_16: u32 = 0x82BE;
2169
2170pub const IMAGE_CLASS_1_X_32: u32 = 0x82BB;
2171
2172pub const IMAGE_CLASS_1_X_8: u32 = 0x82C1;
2173
2174pub const IMAGE_CLASS_2_X_16: u32 = 0x82BD;
2175
2176pub const IMAGE_CLASS_2_X_32: u32 = 0x82BA;
2177
2178pub const IMAGE_CLASS_2_X_8: u32 = 0x82C0;
2179
2180pub const IMAGE_CLASS_4_X_16: u32 = 0x82BC;
2181
2182pub const IMAGE_CLASS_4_X_32: u32 = 0x82B9;
2183
2184pub const IMAGE_CLASS_4_X_8: u32 = 0x82BF;
2185
2186pub const IMAGE_COMPATIBILITY_CLASS: u32 = 0x82A8;
2187
2188pub const IMAGE_CUBE: u32 = 0x9050;
2189
2190pub const IMAGE_CUBE_MAP_ARRAY: u32 = 0x9054;
2191
2192pub const IMAGE_FORMAT_COMPATIBILITY_BY_CLASS: u32 = 0x90C9;
2193
2194pub const IMAGE_FORMAT_COMPATIBILITY_BY_SIZE: u32 = 0x90C8;
2195
2196pub const IMAGE_FORMAT_COMPATIBILITY_TYPE: u32 = 0x90C7;
2197
2198pub const IMAGE_PIXEL_FORMAT: u32 = 0x82A9;
2199
2200pub const IMAGE_PIXEL_TYPE: u32 = 0x82AA;
2201
2202pub const IMAGE_TEXEL_SIZE: u32 = 0x82A7;
2203
2204pub const IMPLEMENTATION_COLOR_READ_FORMAT: u32 = 0x8B9B;
2205
2206pub const IMPLEMENTATION_COLOR_READ_TYPE: u32 = 0x8B9A;
2207
2208pub const INCR: u32 = 0x1E02;
2209
2210pub const INCR_WRAP: u32 = 0x8507;
2211
2212pub const INDEX: u32 = 0x8222;
2213
2214pub const INFO_LOG_LENGTH: u32 = 0x8B84;
2215
2216pub const INNOCENT_CONTEXT_RESET: u32 = 0x8254;
2217
2218pub const INT: u32 = 0x1404;
2219
2220pub const INTERLEAVED_ATTRIBS: u32 = 0x8C8C;
2221
2222pub const INTERNALFORMAT_ALPHA_SIZE: u32 = 0x8274;
2223
2224pub const INTERNALFORMAT_ALPHA_TYPE: u32 = 0x827B;
2225
2226pub const INTERNALFORMAT_BLUE_SIZE: u32 = 0x8273;
2227
2228pub const INTERNALFORMAT_BLUE_TYPE: u32 = 0x827A;
2229
2230pub const INTERNALFORMAT_DEPTH_SIZE: u32 = 0x8275;
2231
2232pub const INTERNALFORMAT_DEPTH_TYPE: u32 = 0x827C;
2233
2234pub const INTERNALFORMAT_GREEN_SIZE: u32 = 0x8272;
2235
2236pub const INTERNALFORMAT_GREEN_TYPE: u32 = 0x8279;
2237
2238pub const INTERNALFORMAT_PREFERRED: u32 = 0x8270;
2239
2240pub const INTERNALFORMAT_RED_SIZE: u32 = 0x8271;
2241
2242pub const INTERNALFORMAT_RED_TYPE: u32 = 0x8278;
2243
2244pub const INTERNALFORMAT_SHARED_SIZE: u32 = 0x8277;
2245
2246pub const INTERNALFORMAT_STENCIL_SIZE: u32 = 0x8276;
2247
2248pub const INTERNALFORMAT_STENCIL_TYPE: u32 = 0x827D;
2249
2250pub const INTERNALFORMAT_SUPPORTED: u32 = 0x826F;
2251
2252pub const INT_2_10_10_10_REV: u32 = 0x8D9F;
2253
2254pub const INT_IMAGE_1D: u32 = 0x9057;
2255
2256pub const INT_IMAGE_1D_ARRAY: u32 = 0x905D;
2257
2258pub const INT_IMAGE_2D: u32 = 0x9058;
2259
2260pub const INT_IMAGE_2D_ARRAY: u32 = 0x905E;
2261
2262pub const INT_IMAGE_2D_MULTISAMPLE: u32 = 0x9060;
2263
2264pub const INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x9061;
2265
2266pub const INT_IMAGE_2D_RECT: u32 = 0x905A;
2267
2268pub const INT_IMAGE_3D: u32 = 0x9059;
2269
2270pub const INT_IMAGE_BUFFER: u32 = 0x905C;
2271
2272pub const INT_IMAGE_CUBE: u32 = 0x905B;
2273
2274pub const INT_IMAGE_CUBE_MAP_ARRAY: u32 = 0x905F;
2275
2276pub const INT_SAMPLER_1D: u32 = 0x8DC9;
2277
2278pub const INT_SAMPLER_1D_ARRAY: u32 = 0x8DCE;
2279
2280pub const INT_SAMPLER_2D: u32 = 0x8DCA;
2281
2282pub const INT_SAMPLER_2D_ARRAY: u32 = 0x8DCF;
2283
2284pub const INT_SAMPLER_2D_MULTISAMPLE: u32 = 0x9109;
2285
2286pub const INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910C;
2287
2288pub const INT_SAMPLER_2D_RECT: u32 = 0x8DCD;
2289
2290pub const INT_SAMPLER_3D: u32 = 0x8DCB;
2291
2292pub const INT_SAMPLER_BUFFER: u32 = 0x8DD0;
2293
2294pub const INT_SAMPLER_CUBE: u32 = 0x8DCC;
2295
2296pub const INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900E;
2297
2298pub const INT_VEC2: u32 = 0x8B53;
2299
2300pub const INT_VEC3: u32 = 0x8B54;
2301
2302pub const INT_VEC4: u32 = 0x8B55;
2303
2304pub const INVALID_ENUM: u32 = 0x0500;
2305
2306pub const INVALID_FRAMEBUFFER_OPERATION: u32 = 0x0506;
2307
2308pub const INVALID_INDEX: u32 = 0xFFFFFFFF;
2309
2310pub const INVALID_OPERATION: u32 = 0x0502;
2311
2312pub const INVALID_VALUE: u32 = 0x0501;
2313
2314pub const INVERT: u32 = 0x150A;
2315
2316pub const ISOLINES: u32 = 0x8E7A;
2317
2318pub const IS_PER_PATCH: u32 = 0x92E7;
2319
2320pub const IS_ROW_MAJOR: u32 = 0x9300;
2321
2322pub const KEEP: u32 = 0x1E00;
2323
2324pub const LAST_VERTEX_CONVENTION: u32 = 0x8E4E;
2325
2326pub const LAYER_PROVOKING_VERTEX: u32 = 0x825E;
2327
2328pub const LEFT: u32 = 0x0406;
2329
2330pub const LEQUAL: u32 = 0x0203;
2331
2332pub const LESS: u32 = 0x0201;
2333
2334pub const LINE: u32 = 0x1B01;
2335
2336pub const LINEAR: u32 = 0x2601;
2337
2338pub const LINEAR_MIPMAP_LINEAR: u32 = 0x2703;
2339
2340pub const LINEAR_MIPMAP_NEAREST: u32 = 0x2701;
2341
2342pub const LINES: u32 = 0x0001;
2343
2344pub const LINES_ADJACENCY: u32 = 0x000A;
2345
2346pub const LINE_LOOP: u32 = 0x0002;
2347
2348pub const LINE_SMOOTH: u32 = 0x0B20;
2349
2350pub const LINE_SMOOTH_HINT: u32 = 0x0C52;
2351
2352pub const LINE_STRIP: u32 = 0x0003;
2353
2354pub const LINE_STRIP_ADJACENCY: u32 = 0x000B;
2355
2356pub const LINE_WIDTH: u32 = 0x0B21;
2357
2358pub const LINE_WIDTH_GRANULARITY: u32 = 0x0B23;
2359
2360pub const LINE_WIDTH_RANGE: u32 = 0x0B22;
2361
2362pub const LINK_STATUS: u32 = 0x8B82;
2363
2364pub const LOCATION: u32 = 0x930E;
2365
2366pub const LOCATION_COMPONENT: u32 = 0x934A;
2367
2368pub const LOCATION_INDEX: u32 = 0x930F;
2369
2370pub const LOGIC_OP_MODE: u32 = 0x0BF0;
2371
2372pub const LOSE_CONTEXT_ON_RESET: u32 = 0x8252;
2373
2374pub const LOWER_LEFT: u32 = 0x8CA1;
2375
2376pub const LOW_FLOAT: u32 = 0x8DF0;
2377
2378pub const LOW_INT: u32 = 0x8DF3;
2379
2380pub const LUMINANCE: u32 = 0x1909;
2381
2382pub const LUMINANCE_ALPHA: u32 = 0x190A;
2383
2384pub const MAJOR_VERSION: u32 = 0x821B;
2385
2386pub const MANUAL_GENERATE_MIPMAP: u32 = 0x8294;
2387
2388pub const MAP_COHERENT_BIT: u32 = 0x0080;
2389
2390pub const MAP_FLUSH_EXPLICIT_BIT: u32 = 0x0010;
2391
2392pub const MAP_INVALIDATE_BUFFER_BIT: u32 = 0x0008;
2393
2394pub const MAP_INVALIDATE_RANGE_BIT: u32 = 0x0004;
2395
2396pub const MAP_PERSISTENT_BIT: u32 = 0x0040;
2397
2398pub const MAP_READ_BIT: u32 = 0x0001;
2399
2400pub const MAP_UNSYNCHRONIZED_BIT: u32 = 0x0020;
2401
2402pub const MAP_WRITE_BIT: u32 = 0x0002;
2403
2404pub const MATRIX_STRIDE: u32 = 0x92FF;
2405
2406pub const MAX: u32 = 0x8008;
2407
2408pub const MAX_3D_TEXTURE_SIZE: u32 = 0x8073;
2409
2410pub const MAX_ARRAY_TEXTURE_LAYERS: u32 = 0x88FF;
2411
2412pub const MAX_ATOMIC_COUNTER_BUFFER_BINDINGS: u32 = 0x92DC;
2413
2414pub const MAX_ATOMIC_COUNTER_BUFFER_SIZE: u32 = 0x92D8;
2415
2416pub const MAX_CLIP_DISTANCES: u32 = 0x0D32;
2417
2418pub const MAX_COLOR_ATTACHMENTS: u32 = 0x8CDF;
2419
2420pub const MAX_COLOR_TEXTURE_SAMPLES: u32 = 0x910E;
2421
2422pub const MAX_COMBINED_ATOMIC_COUNTERS: u32 = 0x92D7;
2423
2424pub const MAX_COMBINED_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D1;
2425
2426pub const MAX_COMBINED_CLIP_AND_CULL_DISTANCES: u32 = 0x82FA;
2427
2428pub const MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS: u32 = 0x8266;
2429
2430pub const MAX_COMBINED_DIMENSIONS: u32 = 0x8282;
2431
2432pub const MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: u32 = 0x8A33;
2433
2434pub const MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS: u32 = 0x8A32;
2435
2436pub const MAX_COMBINED_IMAGE_UNIFORMS: u32 = 0x90CF;
2437
2438pub const MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS: u32 = 0x8F39;
2439
2440pub const MAX_COMBINED_SHADER_OUTPUT_RESOURCES: u32 = 0x8F39;
2441
2442pub const MAX_COMBINED_SHADER_STORAGE_BLOCKS: u32 = 0x90DC;
2443
2444pub const MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 0x8E1E;
2445
2446pub const MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 0x8E1F;
2447
2448pub const MAX_COMBINED_TEXTURE_IMAGE_UNITS: u32 = 0x8B4D;
2449
2450pub const MAX_COMBINED_UNIFORM_BLOCKS: u32 = 0x8A2E;
2451
2452pub const MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: u32 = 0x8A31;
2453
2454pub const MAX_COMPUTE_ATOMIC_COUNTERS: u32 = 0x8265;
2455
2456pub const MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS: u32 = 0x8264;
2457
2458pub const MAX_COMPUTE_IMAGE_UNIFORMS: u32 = 0x91BD;
2459
2460pub const MAX_COMPUTE_SHADER_STORAGE_BLOCKS: u32 = 0x90DB;
2461
2462pub const MAX_COMPUTE_SHARED_MEMORY_SIZE: u32 = 0x8262;
2463
2464pub const MAX_COMPUTE_TEXTURE_IMAGE_UNITS: u32 = 0x91BC;
2465
2466pub const MAX_COMPUTE_UNIFORM_BLOCKS: u32 = 0x91BB;
2467
2468pub const MAX_COMPUTE_UNIFORM_COMPONENTS: u32 = 0x8263;
2469
2470pub const MAX_COMPUTE_WORK_GROUP_COUNT: u32 = 0x91BE;
2471
2472pub const MAX_COMPUTE_WORK_GROUP_INVOCATIONS: u32 = 0x90EB;
2473
2474pub const MAX_COMPUTE_WORK_GROUP_SIZE: u32 = 0x91BF;
2475
2476pub const MAX_CUBE_MAP_TEXTURE_SIZE: u32 = 0x851C;
2477
2478pub const MAX_CULL_DISTANCES: u32 = 0x82F9;
2479
2480pub const MAX_DEBUG_GROUP_STACK_DEPTH: u32 = 0x826C;
2481
2482pub const MAX_DEBUG_LOGGED_MESSAGES: u32 = 0x9144;
2483
2484pub const MAX_DEBUG_MESSAGE_LENGTH: u32 = 0x9143;
2485
2486pub const MAX_DEPTH: u32 = 0x8280;
2487
2488pub const MAX_DEPTH_TEXTURE_SAMPLES: u32 = 0x910F;
2489
2490pub const MAX_DRAW_BUFFERS: u32 = 0x8824;
2491
2492pub const MAX_DUAL_SOURCE_DRAW_BUFFERS: u32 = 0x88FC;
2493
2494pub const MAX_ELEMENTS_INDICES: u32 = 0x80E9;
2495
2496pub const MAX_ELEMENTS_VERTICES: u32 = 0x80E8;
2497
2498pub const MAX_ELEMENT_INDEX: u32 = 0x8D6B;
2499
2500pub const MAX_FRAGMENT_ATOMIC_COUNTERS: u32 = 0x92D6;
2501
2502pub const MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D0;
2503
2504pub const MAX_FRAGMENT_IMAGE_UNIFORMS: u32 = 0x90CE;
2505
2506pub const MAX_FRAGMENT_INPUT_COMPONENTS: u32 = 0x9125;
2507
2508pub const MAX_FRAGMENT_INTERPOLATION_OFFSET: u32 = 0x8E5C;
2509
2510pub const MAX_FRAGMENT_SHADER_STORAGE_BLOCKS: u32 = 0x90DA;
2511
2512pub const MAX_FRAGMENT_UNIFORM_BLOCKS: u32 = 0x8A2D;
2513
2514pub const MAX_FRAGMENT_UNIFORM_COMPONENTS: u32 = 0x8B49;
2515
2516pub const MAX_FRAGMENT_UNIFORM_VECTORS: u32 = 0x8DFD;
2517
2518pub const MAX_FRAMEBUFFER_HEIGHT: u32 = 0x9316;
2519
2520pub const MAX_FRAMEBUFFER_LAYERS: u32 = 0x9317;
2521
2522pub const MAX_FRAMEBUFFER_SAMPLES: u32 = 0x9318;
2523
2524pub const MAX_FRAMEBUFFER_WIDTH: u32 = 0x9315;
2525
2526pub const MAX_GEOMETRY_ATOMIC_COUNTERS: u32 = 0x92D5;
2527
2528pub const MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CF;
2529
2530pub const MAX_GEOMETRY_IMAGE_UNIFORMS: u32 = 0x90CD;
2531
2532pub const MAX_GEOMETRY_INPUT_COMPONENTS: u32 = 0x9123;
2533
2534pub const MAX_GEOMETRY_OUTPUT_COMPONENTS: u32 = 0x9124;
2535
2536pub const MAX_GEOMETRY_OUTPUT_VERTICES: u32 = 0x8DE0;
2537
2538pub const MAX_GEOMETRY_SHADER_INVOCATIONS: u32 = 0x8E5A;
2539
2540pub const MAX_GEOMETRY_SHADER_STORAGE_BLOCKS: u32 = 0x90D7;
2541
2542pub const MAX_GEOMETRY_TEXTURE_IMAGE_UNITS: u32 = 0x8C29;
2543
2544pub const MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS: u32 = 0x8DE1;
2545
2546pub const MAX_GEOMETRY_UNIFORM_BLOCKS: u32 = 0x8A2C;
2547
2548pub const MAX_GEOMETRY_UNIFORM_COMPONENTS: u32 = 0x8DDF;
2549
2550pub const MAX_HEIGHT: u32 = 0x827F;
2551
2552pub const MAX_IMAGE_SAMPLES: u32 = 0x906D;
2553
2554pub const MAX_IMAGE_UNITS: u32 = 0x8F38;
2555
2556pub const MAX_INTEGER_SAMPLES: u32 = 0x9110;
2557
2558pub const MAX_LABEL_LENGTH: u32 = 0x82E8;
2559
2560pub const MAX_LAYERS: u32 = 0x8281;
2561
2562pub const MAX_NAME_LENGTH: u32 = 0x92F6;
2563
2564pub const MAX_NUM_ACTIVE_VARIABLES: u32 = 0x92F7;
2565
2566pub const MAX_NUM_COMPATIBLE_SUBROUTINES: u32 = 0x92F8;
2567
2568pub const MAX_PATCH_VERTICES: u32 = 0x8E7D;
2569
2570pub const MAX_PROGRAM_TEXEL_OFFSET: u32 = 0x8905;
2571
2572pub const MAX_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 0x8E5F;
2573
2574pub const MAX_RECTANGLE_TEXTURE_SIZE: u32 = 0x84F8;
2575
2576pub const MAX_RENDERBUFFER_SIZE: u32 = 0x84E8;
2577
2578pub const MAX_SAMPLES: u32 = 0x8D57;
2579
2580pub const MAX_SAMPLE_MASK_WORDS: u32 = 0x8E59;
2581
2582pub const MAX_SERVER_WAIT_TIMEOUT: u32 = 0x9111;
2583
2584pub const MAX_SHADER_STORAGE_BLOCK_SIZE: u32 = 0x90DE;
2585
2586pub const MAX_SHADER_STORAGE_BUFFER_BINDINGS: u32 = 0x90DD;
2587
2588pub const MAX_SUBROUTINES: u32 = 0x8DE7;
2589
2590pub const MAX_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 0x8DE8;
2591
2592pub const MAX_TESS_CONTROL_ATOMIC_COUNTERS: u32 = 0x92D3;
2593
2594pub const MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CD;
2595
2596pub const MAX_TESS_CONTROL_IMAGE_UNIFORMS: u32 = 0x90CB;
2597
2598pub const MAX_TESS_CONTROL_INPUT_COMPONENTS: u32 = 0x886C;
2599
2600pub const MAX_TESS_CONTROL_OUTPUT_COMPONENTS: u32 = 0x8E83;
2601
2602pub const MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS: u32 = 0x90D8;
2603
2604pub const MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS: u32 = 0x8E81;
2605
2606pub const MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS: u32 = 0x8E85;
2607
2608pub const MAX_TESS_CONTROL_UNIFORM_BLOCKS: u32 = 0x8E89;
2609
2610pub const MAX_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 0x8E7F;
2611
2612pub const MAX_TESS_EVALUATION_ATOMIC_COUNTERS: u32 = 0x92D4;
2613
2614pub const MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CE;
2615
2616pub const MAX_TESS_EVALUATION_IMAGE_UNIFORMS: u32 = 0x90CC;
2617
2618pub const MAX_TESS_EVALUATION_INPUT_COMPONENTS: u32 = 0x886D;
2619
2620pub const MAX_TESS_EVALUATION_OUTPUT_COMPONENTS: u32 = 0x8E86;
2621
2622pub const MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS: u32 = 0x90D9;
2623
2624pub const MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS: u32 = 0x8E82;
2625
2626pub const MAX_TESS_EVALUATION_UNIFORM_BLOCKS: u32 = 0x8E8A;
2627
2628pub const MAX_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 0x8E80;
2629
2630pub const MAX_TESS_GEN_LEVEL: u32 = 0x8E7E;
2631
2632pub const MAX_TESS_PATCH_COMPONENTS: u32 = 0x8E84;
2633
2634pub const MAX_TEXTURE_BUFFER_SIZE: u32 = 0x8C2B;
2635
2636pub const MAX_TEXTURE_IMAGE_UNITS: u32 = 0x8872;
2637
2638pub const MAX_TEXTURE_LOD_BIAS: u32 = 0x84FD;
2639
2640pub const MAX_TEXTURE_MAX_ANISOTROPY: u32 = 0x84FF;
2641
2642pub const MAX_TEXTURE_MAX_ANISOTROPY_EXT: u32 = 0x84FF;
2643
2644pub const MAX_TEXTURE_SIZE: u32 = 0x0D33;
2645
2646pub const MAX_TRANSFORM_FEEDBACK_BUFFERS: u32 = 0x8E70;
2647
2648pub const MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: u32 = 0x8C8A;
2649
2650pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: u32 = 0x8C8B;
2651
2652pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: u32 = 0x8C80;
2653
2654pub const MAX_UNIFORM_BLOCK_SIZE: u32 = 0x8A30;
2655
2656pub const MAX_UNIFORM_BUFFER_BINDINGS: u32 = 0x8A2F;
2657
2658pub const MAX_UNIFORM_LOCATIONS: u32 = 0x826E;
2659
2660pub const MAX_VARYING_COMPONENTS: u32 = 0x8B4B;
2661
2662pub const MAX_VARYING_FLOATS: u32 = 0x8B4B;
2663
2664pub const MAX_VARYING_VECTORS: u32 = 0x8DFC;
2665
2666pub const MAX_VERTEX_ATOMIC_COUNTERS: u32 = 0x92D2;
2667
2668pub const MAX_VERTEX_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CC;
2669
2670pub const MAX_VERTEX_ATTRIBS: u32 = 0x8869;
2671
2672pub const MAX_VERTEX_ATTRIB_BINDINGS: u32 = 0x82DA;
2673
2674pub const MAX_VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 0x82D9;
2675
2676pub const MAX_VERTEX_ATTRIB_STRIDE: u32 = 0x82E5;
2677
2678pub const MAX_VERTEX_IMAGE_UNIFORMS: u32 = 0x90CA;
2679
2680pub const MAX_VERTEX_OUTPUT_COMPONENTS: u32 = 0x9122;
2681
2682pub const MAX_VERTEX_SHADER_STORAGE_BLOCKS: u32 = 0x90D6;
2683
2684pub const MAX_VERTEX_STREAMS: u32 = 0x8E71;
2685
2686pub const MAX_VERTEX_TEXTURE_IMAGE_UNITS: u32 = 0x8B4C;
2687
2688pub const MAX_VERTEX_UNIFORM_BLOCKS: u32 = 0x8A2B;
2689
2690pub const MAX_VERTEX_UNIFORM_COMPONENTS: u32 = 0x8B4A;
2691
2692pub const MAX_VERTEX_UNIFORM_VECTORS: u32 = 0x8DFB;
2693
2694pub const MAX_VIEWPORTS: u32 = 0x825B;
2695
2696pub const MAX_VIEWPORT_DIMS: u32 = 0x0D3A;
2697
2698pub const MAX_WIDTH: u32 = 0x827E;
2699
2700pub const MEDIUM_FLOAT: u32 = 0x8DF1;
2701
2702pub const MEDIUM_INT: u32 = 0x8DF4;
2703
2704pub const MIN: u32 = 0x8007;
2705
2706pub const MINOR_VERSION: u32 = 0x821C;
2707
2708pub const MIN_FRAGMENT_INTERPOLATION_OFFSET: u32 = 0x8E5B;
2709
2710pub const MIN_MAP_BUFFER_ALIGNMENT: u32 = 0x90BC;
2711
2712pub const MIN_PROGRAM_TEXEL_OFFSET: u32 = 0x8904;
2713
2714pub const MIN_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 0x8E5E;
2715
2716pub const MIN_SAMPLE_SHADING_VALUE: u32 = 0x8C37;
2717
2718pub const MIPMAP: u32 = 0x8293;
2719
2720pub const MIRRORED_REPEAT: u32 = 0x8370;
2721
2722pub const MIRROR_CLAMP_TO_EDGE: u32 = 0x8743;
2723
2724pub const MULTISAMPLE: u32 = 0x809D;
2725
2726pub const NAME_LENGTH: u32 = 0x92F9;
2727
2728pub const NAND: u32 = 0x150E;
2729
2730pub const NEAREST: u32 = 0x2600;
2731
2732pub const NEAREST_MIPMAP_LINEAR: u32 = 0x2702;
2733
2734pub const NEAREST_MIPMAP_NEAREST: u32 = 0x2700;
2735
2736pub const NEGATIVE_ONE_TO_ONE: u32 = 0x935E;
2737
2738pub const NEVER: u32 = 0x0200;
2739
2740pub const NICEST: u32 = 0x1102;
2741
2742pub const NONE: u32 = 0;
2743
2744pub const NOOP: u32 = 0x1505;
2745
2746pub const NOR: u32 = 0x1508;
2747
2748pub const NOTEQUAL: u32 = 0x0205;
2749
2750pub const NO_ERROR: u32 = 0;
2751
2752pub const NO_RESET_NOTIFICATION: u32 = 0x8261;
2753
2754pub const NUM_ACTIVE_VARIABLES: u32 = 0x9304;
2755
2756pub const NUM_COMPATIBLE_SUBROUTINES: u32 = 0x8E4A;
2757
2758pub const NUM_COMPRESSED_TEXTURE_FORMATS: u32 = 0x86A2;
2759
2760pub const NUM_EXTENSIONS: u32 = 0x821D;
2761
2762pub const NUM_PROGRAM_BINARY_FORMATS: u32 = 0x87FE;
2763
2764pub const NUM_SAMPLE_COUNTS: u32 = 0x9380;
2765
2766pub const NUM_SHADER_BINARY_FORMATS: u32 = 0x8DF9;
2767
2768pub const NUM_SHADING_LANGUAGE_VERSIONS: u32 = 0x82E9;
2769
2770pub const NUM_SPIR_V_EXTENSIONS: u32 = 0x9554;
2771
2772pub const OBJECT_TYPE: u32 = 0x9112;
2773
2774pub const OFFSET: u32 = 0x92FC;
2775
2776pub const ONE: u32 = 1;
2777
2778pub const ONE_MINUS_CONSTANT_ALPHA: u32 = 0x8004;
2779
2780pub const ONE_MINUS_CONSTANT_COLOR: u32 = 0x8002;
2781
2782pub const ONE_MINUS_DST_ALPHA: u32 = 0x0305;
2783
2784pub const ONE_MINUS_DST_COLOR: u32 = 0x0307;
2785
2786pub const ONE_MINUS_SRC1_ALPHA: u32 = 0x88FB;
2787
2788pub const ONE_MINUS_SRC1_COLOR: u32 = 0x88FA;
2789
2790pub const ONE_MINUS_SRC_ALPHA: u32 = 0x0303;
2791
2792pub const ONE_MINUS_SRC_COLOR: u32 = 0x0301;
2793
2794pub const OR: u32 = 0x1507;
2795
2796pub const OR_INVERTED: u32 = 0x150D;
2797
2798pub const OR_REVERSE: u32 = 0x150B;
2799
2800pub const OUT_OF_MEMORY: u32 = 0x0505;
2801
2802pub const PACK_ALIGNMENT: u32 = 0x0D05;
2803
2804pub const PACK_COMPRESSED_BLOCK_DEPTH: u32 = 0x912D;
2805
2806pub const PACK_COMPRESSED_BLOCK_HEIGHT: u32 = 0x912C;
2807
2808pub const PACK_COMPRESSED_BLOCK_SIZE: u32 = 0x912E;
2809
2810pub const PACK_COMPRESSED_BLOCK_WIDTH: u32 = 0x912B;
2811
2812pub const PACK_IMAGE_HEIGHT: u32 = 0x806C;
2813
2814pub const PACK_LSB_FIRST: u32 = 0x0D01;
2815
2816pub const PACK_ROW_LENGTH: u32 = 0x0D02;
2817
2818pub const PACK_SKIP_IMAGES: u32 = 0x806B;
2819
2820pub const PACK_SKIP_PIXELS: u32 = 0x0D04;
2821
2822pub const PACK_SKIP_ROWS: u32 = 0x0D03;
2823
2824pub const PACK_SWAP_BYTES: u32 = 0x0D00;
2825
2826pub const PARAMETER_BUFFER: u32 = 0x80EE;
2827
2828pub const PARAMETER_BUFFER_BINDING: u32 = 0x80EF;
2829
2830pub const PATCHES: u32 = 0x000E;
2831
2832pub const PATCH_DEFAULT_INNER_LEVEL: u32 = 0x8E73;
2833
2834pub const PATCH_DEFAULT_OUTER_LEVEL: u32 = 0x8E74;
2835
2836pub const PATCH_VERTICES: u32 = 0x8E72;
2837
2838pub const PIXEL_BUFFER_BARRIER_BIT: u32 = 0x00000080;
2839
2840pub const PIXEL_PACK_BUFFER: u32 = 0x88EB;
2841
2842pub const PIXEL_PACK_BUFFER_BINDING: u32 = 0x88ED;
2843
2844pub const PIXEL_UNPACK_BUFFER: u32 = 0x88EC;
2845
2846pub const PIXEL_UNPACK_BUFFER_BINDING: u32 = 0x88EF;
2847
2848pub const POINT: u32 = 0x1B00;
2849
2850pub const POINTS: u32 = 0x0000;
2851
2852pub const POINT_FADE_THRESHOLD_SIZE: u32 = 0x8128;
2853
2854pub const POINT_SIZE: u32 = 0x0B11;
2855
2856pub const POINT_SIZE_GRANULARITY: u32 = 0x0B13;
2857
2858pub const POINT_SIZE_RANGE: u32 = 0x0B12;
2859
2860pub const POINT_SPRITE_COORD_ORIGIN: u32 = 0x8CA0;
2861
2862pub const POLYGON_MODE: u32 = 0x0B40;
2863
2864pub const POLYGON_OFFSET_CLAMP: u32 = 0x8E1B;
2865
2866pub const POLYGON_OFFSET_FACTOR: u32 = 0x8038;
2867
2868pub const POLYGON_OFFSET_FILL: u32 = 0x8037;
2869
2870pub const POLYGON_OFFSET_LINE: u32 = 0x2A02;
2871
2872pub const POLYGON_OFFSET_POINT: u32 = 0x2A01;
2873
2874pub const POLYGON_OFFSET_UNITS: u32 = 0x2A00;
2875
2876pub const POLYGON_SMOOTH: u32 = 0x0B41;
2877
2878pub const POLYGON_SMOOTH_HINT: u32 = 0x0C53;
2879
2880pub const PRIMITIVES_GENERATED: u32 = 0x8C87;
2881
2882pub const PRIMITIVES_SUBMITTED: u32 = 0x82EF;
2883
2884pub const PRIMITIVE_RESTART: u32 = 0x8F9D;
2885
2886pub const PRIMITIVE_RESTART_FIXED_INDEX: u32 = 0x8D69;
2887
2888pub const PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED: u32 = 0x8221;
2889
2890pub const PRIMITIVE_RESTART_INDEX: u32 = 0x8F9E;
2891
2892pub const PROGRAM: u32 = 0x82E2;
2893
2894pub const PROGRAM_BINARY_FORMATS: u32 = 0x87FF;
2895
2896pub const PROGRAM_BINARY_LENGTH: u32 = 0x8741;
2897
2898pub const PROGRAM_BINARY_RETRIEVABLE_HINT: u32 = 0x8257;
2899
2900pub const PROGRAM_INPUT: u32 = 0x92E3;
2901
2902pub const PROGRAM_OUTPUT: u32 = 0x92E4;
2903
2904pub const PROGRAM_PIPELINE: u32 = 0x82E4;
2905
2906pub const PROGRAM_PIPELINE_BINDING: u32 = 0x825A;
2907
2908pub const PROGRAM_POINT_SIZE: u32 = 0x8642;
2909
2910pub const PROGRAM_SEPARABLE: u32 = 0x8258;
2911
2912pub const PROVOKING_VERTEX: u32 = 0x8E4F;
2913
2914pub const PROXY_TEXTURE_1D: u32 = 0x8063;
2915
2916pub const PROXY_TEXTURE_1D_ARRAY: u32 = 0x8C19;
2917
2918pub const PROXY_TEXTURE_2D: u32 = 0x8064;
2919
2920pub const PROXY_TEXTURE_2D_ARRAY: u32 = 0x8C1B;
2921
2922pub const PROXY_TEXTURE_2D_MULTISAMPLE: u32 = 0x9101;
2923
2924pub const PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 0x9103;
2925
2926pub const PROXY_TEXTURE_3D: u32 = 0x8070;
2927
2928pub const PROXY_TEXTURE_CUBE_MAP: u32 = 0x851B;
2929
2930pub const PROXY_TEXTURE_CUBE_MAP_ARRAY: u32 = 0x900B;
2931
2932pub const PROXY_TEXTURE_RECTANGLE: u32 = 0x84F7;
2933
2934pub const QUADS: u32 = 0x0007;
2935
2936pub const QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: u32 = 0x8E4C;
2937
2938pub const QUERY: u32 = 0x82E3;
2939
2940pub const QUERY_BUFFER: u32 = 0x9192;
2941
2942pub const QUERY_BUFFER_BARRIER_BIT: u32 = 0x00008000;
2943
2944pub const QUERY_BUFFER_BINDING: u32 = 0x9193;
2945
2946pub const QUERY_BY_REGION_NO_WAIT: u32 = 0x8E16;
2947
2948pub const QUERY_BY_REGION_NO_WAIT_INVERTED: u32 = 0x8E1A;
2949
2950pub const QUERY_BY_REGION_WAIT: u32 = 0x8E15;
2951
2952pub const QUERY_BY_REGION_WAIT_INVERTED: u32 = 0x8E19;
2953
2954pub const QUERY_COUNTER_BITS: u32 = 0x8864;
2955
2956pub const QUERY_NO_WAIT: u32 = 0x8E14;
2957
2958pub const QUERY_NO_WAIT_INVERTED: u32 = 0x8E18;
2959
2960pub const QUERY_RESULT: u32 = 0x8866;
2961
2962pub const QUERY_RESULT_AVAILABLE: u32 = 0x8867;
2963
2964pub const QUERY_RESULT_NO_WAIT: u32 = 0x9194;
2965
2966pub const QUERY_TARGET: u32 = 0x82EA;
2967
2968pub const QUERY_WAIT: u32 = 0x8E13;
2969
2970pub const QUERY_WAIT_INVERTED: u32 = 0x8E17;
2971
2972pub const R11F_G11F_B10F: u32 = 0x8C3A;
2973
2974pub const R16: u32 = 0x822A;
2975
2976pub const R16F: u32 = 0x822D;
2977
2978pub const R16I: u32 = 0x8233;
2979
2980pub const R16UI: u32 = 0x8234;
2981
2982pub const R16_SNORM: u32 = 0x8F98;
2983
2984pub const R32F: u32 = 0x822E;
2985
2986pub const R32I: u32 = 0x8235;
2987
2988pub const R32UI: u32 = 0x8236;
2989
2990pub const R3_G3_B2: u32 = 0x2A10;
2991
2992pub const R8: u32 = 0x8229;
2993
2994pub const R8I: u32 = 0x8231;
2995
2996pub const R8UI: u32 = 0x8232;
2997
2998pub const R8_SNORM: u32 = 0x8F94;
2999
3000pub const RASTERIZER_DISCARD: u32 = 0x8C89;
3001
3002pub const READ_BUFFER: u32 = 0x0C02;
3003
3004pub const READ_FRAMEBUFFER: u32 = 0x8CA8;
3005
3006pub const READ_FRAMEBUFFER_BINDING: u32 = 0x8CAA;
3007
3008pub const READ_ONLY: u32 = 0x88B8;
3009
3010pub const READ_PIXELS: u32 = 0x828C;
3011
3012pub const READ_PIXELS_FORMAT: u32 = 0x828D;
3013
3014pub const READ_PIXELS_TYPE: u32 = 0x828E;
3015
3016pub const READ_WRITE: u32 = 0x88BA;
3017
3018pub const RED: u32 = 0x1903;
3019
3020pub const RED_INTEGER: u32 = 0x8D94;
3021
3022pub const REFERENCED_BY_COMPUTE_SHADER: u32 = 0x930B;
3023
3024pub const REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x930A;
3025
3026pub const REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x9309;
3027
3028pub const REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x9307;
3029
3030pub const REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x9308;
3031
3032pub const REFERENCED_BY_VERTEX_SHADER: u32 = 0x9306;
3033
3034pub const RENDERBUFFER: u32 = 0x8D41;
3035
3036pub const RENDERBUFFER_ALPHA_SIZE: u32 = 0x8D53;
3037
3038pub const RENDERBUFFER_BINDING: u32 = 0x8CA7;
3039
3040pub const RENDERBUFFER_BLUE_SIZE: u32 = 0x8D52;
3041
3042pub const RENDERBUFFER_DEPTH_SIZE: u32 = 0x8D54;
3043
3044pub const RENDERBUFFER_GREEN_SIZE: u32 = 0x8D51;
3045
3046pub const RENDERBUFFER_HEIGHT: u32 = 0x8D43;
3047
3048pub const RENDERBUFFER_INTERNAL_FORMAT: u32 = 0x8D44;
3049
3050pub const RENDERBUFFER_RED_SIZE: u32 = 0x8D50;
3051
3052pub const RENDERBUFFER_SAMPLES: u32 = 0x8CAB;
3053
3054pub const RENDERBUFFER_STENCIL_SIZE: u32 = 0x8D55;
3055
3056pub const RENDERBUFFER_WIDTH: u32 = 0x8D42;
3057
3058pub const RENDERER: u32 = 0x1F01;
3059
3060pub const REPEAT: u32 = 0x2901;
3061
3062pub const REPLACE: u32 = 0x1E01;
3063
3064pub const RESET_NOTIFICATION_STRATEGY: u32 = 0x8256;
3065
3066pub const RG: u32 = 0x8227;
3067
3068pub const RG16: u32 = 0x822C;
3069
3070pub const RG16F: u32 = 0x822F;
3071
3072pub const RG16I: u32 = 0x8239;
3073
3074pub const RG16UI: u32 = 0x823A;
3075
3076pub const RG16_SNORM: u32 = 0x8F99;
3077
3078pub const RG32F: u32 = 0x8230;
3079
3080pub const RG32I: u32 = 0x823B;
3081
3082pub const RG32UI: u32 = 0x823C;
3083
3084pub const RG8: u32 = 0x822B;
3085
3086pub const RG8I: u32 = 0x8237;
3087
3088pub const RG8UI: u32 = 0x8238;
3089
3090pub const RG8_SNORM: u32 = 0x8F95;
3091
3092pub const RGB: u32 = 0x1907;
3093
3094pub const RGB10: u32 = 0x8052;
3095
3096pub const RGB10_A2: u32 = 0x8059;
3097
3098pub const RGB10_A2UI: u32 = 0x906F;
3099
3100pub const RGB12: u32 = 0x8053;
3101
3102pub const RGB16: u32 = 0x8054;
3103
3104pub const RGB16F: u32 = 0x881B;
3105
3106pub const RGB16I: u32 = 0x8D89;
3107
3108pub const RGB16UI: u32 = 0x8D77;
3109
3110pub const RGB16_SNORM: u32 = 0x8F9A;
3111
3112pub const RGB32F: u32 = 0x8815;
3113
3114pub const RGB32I: u32 = 0x8D83;
3115
3116pub const RGB32UI: u32 = 0x8D71;
3117
3118pub const RGB4: u32 = 0x804F;
3119
3120pub const RGB5: u32 = 0x8050;
3121
3122pub const RGB565: u32 = 0x8D62;
3123
3124pub const RGB5_A1: u32 = 0x8057;
3125
3126pub const RGB8: u32 = 0x8051;
3127
3128pub const RGB8I: u32 = 0x8D8F;
3129
3130pub const RGB8UI: u32 = 0x8D7D;
3131
3132pub const RGB8_SNORM: u32 = 0x8F96;
3133
3134pub const RGB9_E5: u32 = 0x8C3D;
3135
3136pub const RGBA: u32 = 0x1908;
3137
3138pub const RGBA12: u32 = 0x805A;
3139
3140pub const RGBA16: u32 = 0x805B;
3141
3142pub const RGBA16F: u32 = 0x881A;
3143
3144pub const RGBA16I: u32 = 0x8D88;
3145
3146pub const RGBA16UI: u32 = 0x8D76;
3147
3148pub const RGBA16_SNORM: u32 = 0x8F9B;
3149
3150pub const RGBA2: u32 = 0x8055;
3151
3152pub const RGBA32F: u32 = 0x8814;
3153
3154pub const RGBA32I: u32 = 0x8D82;
3155
3156pub const RGBA32UI: u32 = 0x8D70;
3157
3158pub const RGBA4: u32 = 0x8056;
3159
3160pub const RGBA8: u32 = 0x8058;
3161
3162pub const RGBA8I: u32 = 0x8D8E;
3163
3164pub const RGBA8UI: u32 = 0x8D7C;
3165
3166pub const RGBA8_SNORM: u32 = 0x8F97;
3167
3168pub const RGBA_INTEGER: u32 = 0x8D99;
3169
3170pub const RGB_INTEGER: u32 = 0x8D98;
3171
3172pub const RG_INTEGER: u32 = 0x8228;
3173
3174pub const RIGHT: u32 = 0x0407;
3175
3176pub const SAMPLER: u32 = 0x82E6;
3177
3178pub const SAMPLER_1D: u32 = 0x8B5D;
3179
3180pub const SAMPLER_1D_ARRAY: u32 = 0x8DC0;
3181
3182pub const SAMPLER_1D_ARRAY_SHADOW: u32 = 0x8DC3;
3183
3184pub const SAMPLER_1D_SHADOW: u32 = 0x8B61;
3185
3186pub const SAMPLER_2D: u32 = 0x8B5E;
3187
3188pub const SAMPLER_2D_ARRAY: u32 = 0x8DC1;
3189
3190pub const SAMPLER_2D_ARRAY_SHADOW: u32 = 0x8DC4;
3191
3192pub const SAMPLER_2D_MULTISAMPLE: u32 = 0x9108;
3193
3194pub const SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910B;
3195
3196pub const SAMPLER_2D_RECT: u32 = 0x8B63;
3197
3198pub const SAMPLER_2D_RECT_SHADOW: u32 = 0x8B64;
3199
3200pub const SAMPLER_2D_SHADOW: u32 = 0x8B62;
3201
3202pub const SAMPLER_3D: u32 = 0x8B5F;
3203
3204pub const SAMPLER_BINDING: u32 = 0x8919;
3205
3206pub const SAMPLER_BUFFER: u32 = 0x8DC2;
3207
3208pub const SAMPLER_CUBE: u32 = 0x8B60;
3209
3210pub const SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900C;
3211
3212pub const SAMPLER_CUBE_MAP_ARRAY_SHADOW: u32 = 0x900D;
3213
3214pub const SAMPLER_CUBE_SHADOW: u32 = 0x8DC5;
3215
3216pub const SAMPLES: u32 = 0x80A9;
3217
3218pub const SAMPLES_PASSED: u32 = 0x8914;
3219
3220pub const SAMPLE_ALPHA_TO_COVERAGE: u32 = 0x809E;
3221
3222pub const SAMPLE_ALPHA_TO_ONE: u32 = 0x809F;
3223
3224pub const SAMPLE_BUFFERS: u32 = 0x80A8;
3225
3226pub const SAMPLE_COVERAGE: u32 = 0x80A0;
3227
3228pub const SAMPLE_COVERAGE_INVERT: u32 = 0x80AB;
3229
3230pub const SAMPLE_COVERAGE_VALUE: u32 = 0x80AA;
3231
3232pub const SAMPLE_MASK: u32 = 0x8E51;
3233
3234pub const SAMPLE_MASK_VALUE: u32 = 0x8E52;
3235
3236pub const SAMPLE_POSITION: u32 = 0x8E50;
3237
3238pub const SAMPLE_SHADING: u32 = 0x8C36;
3239
3240pub const SCISSOR_BOX: u32 = 0x0C10;
3241
3242pub const SCISSOR_TEST: u32 = 0x0C11;
3243
3244pub const SEPARATE_ATTRIBS: u32 = 0x8C8D;
3245
3246pub const SET: u32 = 0x150F;
3247
3248pub const SHADER: u32 = 0x82E1;
3249
3250pub const SHADER_BINARY_FORMATS: u32 = 0x8DF8;
3251
3252pub const SHADER_BINARY_FORMAT_SPIR_V: u32 = 0x9551;
3253
3254pub const SHADER_COMPILER: u32 = 0x8DFA;
3255
3256pub const SHADER_IMAGE_ACCESS_BARRIER_BIT: u32 = 0x00000020;
3257
3258pub const SHADER_IMAGE_ATOMIC: u32 = 0x82A6;
3259
3260pub const SHADER_IMAGE_LOAD: u32 = 0x82A4;
3261
3262pub const SHADER_IMAGE_STORE: u32 = 0x82A5;
3263
3264pub const SHADER_SOURCE_LENGTH: u32 = 0x8B88;
3265
3266pub const SHADER_STORAGE_BARRIER_BIT: u32 = 0x00002000;
3267
3268pub const SHADER_STORAGE_BLOCK: u32 = 0x92E6;
3269
3270pub const SHADER_STORAGE_BUFFER: u32 = 0x90D2;
3271
3272pub const SHADER_STORAGE_BUFFER_BINDING: u32 = 0x90D3;
3273
3274pub const SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT: u32 = 0x90DF;
3275
3276pub const SHADER_STORAGE_BUFFER_SIZE: u32 = 0x90D5;
3277
3278pub const SHADER_STORAGE_BUFFER_START: u32 = 0x90D4;
3279
3280pub const SHADER_TYPE: u32 = 0x8B4F;
3281
3282pub const SHADING_LANGUAGE_VERSION: u32 = 0x8B8C;
3283
3284pub const SHORT: u32 = 0x1402;
3285
3286pub const SIGNALED: u32 = 0x9119;
3287
3288pub const SIGNED_NORMALIZED: u32 = 0x8F9C;
3289
3290pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST: u32 = 0x82AC;
3291
3292pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE: u32 = 0x82AE;
3293
3294pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST: u32 = 0x82AD;
3295
3296pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE: u32 = 0x82AF;
3297
3298pub const SMOOTH_LINE_WIDTH_GRANULARITY: u32 = 0x0B23;
3299
3300pub const SMOOTH_LINE_WIDTH_RANGE: u32 = 0x0B22;
3301
3302pub const SMOOTH_POINT_SIZE_GRANULARITY: u32 = 0x0B13;
3303
3304pub const SMOOTH_POINT_SIZE_RANGE: u32 = 0x0B12;
3305
3306pub const SPIR_V_BINARY: u32 = 0x9552;
3307
3308pub const SPIR_V_EXTENSIONS: u32 = 0x9553;
3309
3310pub const SRC1_ALPHA: u32 = 0x8589;
3311
3312pub const SRC1_COLOR: u32 = 0x88F9;
3313
3314pub const SRC_ALPHA: u32 = 0x0302;
3315
3316pub const SRC_ALPHA_SATURATE: u32 = 0x0308;
3317
3318pub const SRC_COLOR: u32 = 0x0300;
3319
3320pub const SRGB: u32 = 0x8C40;
3321
3322pub const SRGB8: u32 = 0x8C41;
3323
3324pub const SRGB8_ALPHA8: u32 = 0x8C43;
3325
3326pub const SRGB_ALPHA: u32 = 0x8C42;
3327
3328pub const SRGB_READ: u32 = 0x8297;
3329
3330pub const SRGB_WRITE: u32 = 0x8298;
3331
3332pub const STACK_OVERFLOW: u32 = 0x0503;
3333
3334pub const STACK_UNDERFLOW: u32 = 0x0504;
3335
3336pub const STATIC_COPY: u32 = 0x88E6;
3337
3338pub const STATIC_DRAW: u32 = 0x88E4;
3339
3340pub const STATIC_READ: u32 = 0x88E5;
3341
3342pub const STENCIL: u32 = 0x1802;
3343
3344pub const STENCIL_ATTACHMENT: u32 = 0x8D20;
3345
3346pub const STENCIL_BACK_FAIL: u32 = 0x8801;
3347
3348pub const STENCIL_BACK_FUNC: u32 = 0x8800;
3349
3350pub const STENCIL_BACK_PASS_DEPTH_FAIL: u32 = 0x8802;
3351
3352pub const STENCIL_BACK_PASS_DEPTH_PASS: u32 = 0x8803;
3353
3354pub const STENCIL_BACK_REF: u32 = 0x8CA3;
3355
3356pub const STENCIL_BACK_VALUE_MASK: u32 = 0x8CA4;
3357
3358pub const STENCIL_BACK_WRITEMASK: u32 = 0x8CA5;
3359
3360pub const STENCIL_BUFFER_BIT: u32 = 0x00000400;
3361
3362pub const STENCIL_CLEAR_VALUE: u32 = 0x0B91;
3363
3364pub const STENCIL_COMPONENTS: u32 = 0x8285;
3365
3366pub const STENCIL_FAIL: u32 = 0x0B94;
3367
3368pub const STENCIL_FUNC: u32 = 0x0B92;
3369
3370pub const STENCIL_INDEX: u32 = 0x1901;
3371
3372pub const STENCIL_INDEX1: u32 = 0x8D46;
3373
3374pub const STENCIL_INDEX16: u32 = 0x8D49;
3375
3376pub const STENCIL_INDEX4: u32 = 0x8D47;
3377
3378pub const STENCIL_INDEX8: u32 = 0x8D48;
3379
3380pub const STENCIL_PASS_DEPTH_FAIL: u32 = 0x0B95;
3381
3382pub const STENCIL_PASS_DEPTH_PASS: u32 = 0x0B96;
3383
3384pub const STENCIL_REF: u32 = 0x0B97;
3385
3386pub const STENCIL_RENDERABLE: u32 = 0x8288;
3387
3388pub const STENCIL_TEST: u32 = 0x0B90;
3389
3390pub const STENCIL_VALUE_MASK: u32 = 0x0B93;
3391
3392pub const STENCIL_WRITEMASK: u32 = 0x0B98;
3393
3394pub const STEREO: u32 = 0x0C33;
3395
3396pub const STREAM_COPY: u32 = 0x88E2;
3397
3398pub const STREAM_DRAW: u32 = 0x88E0;
3399
3400pub const STREAM_READ: u32 = 0x88E1;
3401
3402pub const SUBPIXEL_BITS: u32 = 0x0D50;
3403
3404pub const SYNC_CONDITION: u32 = 0x9113;
3405
3406pub const SYNC_FENCE: u32 = 0x9116;
3407
3408pub const SYNC_FLAGS: u32 = 0x9115;
3409
3410pub const SYNC_FLUSH_COMMANDS_BIT: u32 = 0x00000001;
3411
3412pub const SYNC_GPU_COMMANDS_COMPLETE: u32 = 0x9117;
3413
3414pub const SYNC_STATUS: u32 = 0x9114;
3415
3416pub const TESS_CONTROL_OUTPUT_VERTICES: u32 = 0x8E75;
3417
3418pub const TESS_CONTROL_SHADER: u32 = 0x8E88;
3419
3420pub const TESS_CONTROL_SHADER_BIT: u32 = 0x00000008;
3421
3422pub const TESS_CONTROL_SHADER_PATCHES: u32 = 0x82F1;
3423
3424pub const TESS_CONTROL_SUBROUTINE: u32 = 0x92E9;
3425
3426pub const TESS_CONTROL_SUBROUTINE_UNIFORM: u32 = 0x92EF;
3427
3428pub const TESS_CONTROL_TEXTURE: u32 = 0x829C;
3429
3430pub const TESS_EVALUATION_SHADER: u32 = 0x8E87;
3431
3432pub const TESS_EVALUATION_SHADER_BIT: u32 = 0x00000010;
3433
3434pub const TESS_EVALUATION_SHADER_INVOCATIONS: u32 = 0x82F2;
3435
3436pub const TESS_EVALUATION_SUBROUTINE: u32 = 0x92EA;
3437
3438pub const TESS_EVALUATION_SUBROUTINE_UNIFORM: u32 = 0x92F0;
3439
3440pub const TESS_EVALUATION_TEXTURE: u32 = 0x829D;
3441
3442pub const TESS_GEN_MODE: u32 = 0x8E76;
3443
3444pub const TESS_GEN_POINT_MODE: u32 = 0x8E79;
3445
3446pub const TESS_GEN_SPACING: u32 = 0x8E77;
3447
3448pub const TESS_GEN_VERTEX_ORDER: u32 = 0x8E78;
3449
3450pub const TEXTURE: u32 = 0x1702;
3451
3452pub const TEXTURE0: u32 = 0x84C0;
3453
3454pub const TEXTURE1: u32 = 0x84C1;
3455
3456pub const TEXTURE10: u32 = 0x84CA;
3457
3458pub const TEXTURE11: u32 = 0x84CB;
3459
3460pub const TEXTURE12: u32 = 0x84CC;
3461
3462pub const TEXTURE13: u32 = 0x84CD;
3463
3464pub const TEXTURE14: u32 = 0x84CE;
3465
3466pub const TEXTURE15: u32 = 0x84CF;
3467
3468pub const TEXTURE16: u32 = 0x84D0;
3469
3470pub const TEXTURE17: u32 = 0x84D1;
3471
3472pub const TEXTURE18: u32 = 0x84D2;
3473
3474pub const TEXTURE19: u32 = 0x84D3;
3475
3476pub const TEXTURE2: u32 = 0x84C2;
3477
3478pub const TEXTURE20: u32 = 0x84D4;
3479
3480pub const TEXTURE21: u32 = 0x84D5;
3481
3482pub const TEXTURE22: u32 = 0x84D6;
3483
3484pub const TEXTURE23: u32 = 0x84D7;
3485
3486pub const TEXTURE24: u32 = 0x84D8;
3487
3488pub const TEXTURE25: u32 = 0x84D9;
3489
3490pub const TEXTURE26: u32 = 0x84DA;
3491
3492pub const TEXTURE27: u32 = 0x84DB;
3493
3494pub const TEXTURE28: u32 = 0x84DC;
3495
3496pub const TEXTURE29: u32 = 0x84DD;
3497
3498pub const TEXTURE3: u32 = 0x84C3;
3499
3500pub const TEXTURE30: u32 = 0x84DE;
3501
3502pub const TEXTURE31: u32 = 0x84DF;
3503
3504pub const TEXTURE4: u32 = 0x84C4;
3505
3506pub const TEXTURE5: u32 = 0x84C5;
3507
3508pub const TEXTURE6: u32 = 0x84C6;
3509
3510pub const TEXTURE7: u32 = 0x84C7;
3511
3512pub const TEXTURE8: u32 = 0x84C8;
3513
3514pub const TEXTURE9: u32 = 0x84C9;
3515
3516pub const TEXTURE_1D: u32 = 0x0DE0;
3517
3518pub const TEXTURE_1D_ARRAY: u32 = 0x8C18;
3519
3520pub const TEXTURE_2D: u32 = 0x0DE1;
3521
3522pub const TEXTURE_2D_ARRAY: u32 = 0x8C1A;
3523
3524pub const TEXTURE_2D_MULTISAMPLE: u32 = 0x9100;
3525
3526pub const TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 0x9102;
3527
3528pub const TEXTURE_3D: u32 = 0x806F;
3529
3530pub const TEXTURE_ALPHA_SIZE: u32 = 0x805F;
3531
3532pub const TEXTURE_ALPHA_TYPE: u32 = 0x8C13;
3533
3534pub const TEXTURE_BASE_LEVEL: u32 = 0x813C;
3535
3536pub const TEXTURE_BINDING_1D: u32 = 0x8068;
3537
3538pub const TEXTURE_BINDING_1D_ARRAY: u32 = 0x8C1C;
3539
3540pub const TEXTURE_BINDING_2D: u32 = 0x8069;
3541
3542pub const TEXTURE_BINDING_2D_ARRAY: u32 = 0x8C1D;
3543
3544pub const TEXTURE_BINDING_2D_MULTISAMPLE: u32 = 0x9104;
3545
3546pub const TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY: u32 = 0x9105;
3547
3548pub const TEXTURE_BINDING_3D: u32 = 0x806A;
3549
3550pub const TEXTURE_BINDING_BUFFER: u32 = 0x8C2C;
3551
3552pub const TEXTURE_BINDING_CUBE_MAP: u32 = 0x8514;
3553
3554pub const TEXTURE_BINDING_CUBE_MAP_ARRAY: u32 = 0x900A;
3555
3556pub const TEXTURE_BINDING_RECTANGLE: u32 = 0x84F6;
3557
3558pub const TEXTURE_BLUE_SIZE: u32 = 0x805E;
3559
3560pub const TEXTURE_BLUE_TYPE: u32 = 0x8C12;
3561
3562pub const TEXTURE_BORDER_COLOR: u32 = 0x1004;
3563
3564pub const TEXTURE_BUFFER: u32 = 0x8C2A;
3565
3566pub const TEXTURE_BUFFER_BINDING: u32 = 0x8C2A;
3567
3568pub const TEXTURE_BUFFER_DATA_STORE_BINDING: u32 = 0x8C2D;
3569
3570pub const TEXTURE_BUFFER_OFFSET: u32 = 0x919D;
3571
3572pub const TEXTURE_BUFFER_OFFSET_ALIGNMENT: u32 = 0x919F;
3573
3574pub const TEXTURE_BUFFER_SIZE: u32 = 0x919E;
3575
3576pub const TEXTURE_COMPARE_FUNC: u32 = 0x884D;
3577
3578pub const TEXTURE_COMPARE_MODE: u32 = 0x884C;
3579
3580pub const TEXTURE_COMPRESSED: u32 = 0x86A1;
3581
3582pub const TEXTURE_COMPRESSED_BLOCK_HEIGHT: u32 = 0x82B2;
3583
3584pub const TEXTURE_COMPRESSED_BLOCK_SIZE: u32 = 0x82B3;
3585
3586pub const TEXTURE_COMPRESSED_BLOCK_WIDTH: u32 = 0x82B1;
3587
3588pub const TEXTURE_COMPRESSED_IMAGE_SIZE: u32 = 0x86A0;
3589
3590pub const TEXTURE_COMPRESSION_HINT: u32 = 0x84EF;
3591
3592pub const TEXTURE_CUBE_MAP: u32 = 0x8513;
3593
3594pub const TEXTURE_CUBE_MAP_ARRAY: u32 = 0x9009;
3595
3596pub const TEXTURE_CUBE_MAP_NEGATIVE_X: u32 = 0x8516;
3597
3598pub const TEXTURE_CUBE_MAP_NEGATIVE_Y: u32 = 0x8518;
3599
3600pub const TEXTURE_CUBE_MAP_NEGATIVE_Z: u32 = 0x851A;
3601
3602pub const TEXTURE_CUBE_MAP_POSITIVE_X: u32 = 0x8515;
3603
3604pub const TEXTURE_CUBE_MAP_POSITIVE_Y: u32 = 0x8517;
3605
3606pub const TEXTURE_CUBE_MAP_POSITIVE_Z: u32 = 0x8519;
3607
3608pub const TEXTURE_CUBE_MAP_SEAMLESS: u32 = 0x884F;
3609
3610pub const TEXTURE_DEPTH: u32 = 0x8071;
3611
3612pub const TEXTURE_DEPTH_SIZE: u32 = 0x884A;
3613
3614pub const TEXTURE_DEPTH_TYPE: u32 = 0x8C16;
3615
3616pub const TEXTURE_FETCH_BARRIER_BIT: u32 = 0x00000008;
3617
3618pub const TEXTURE_FIXED_SAMPLE_LOCATIONS: u32 = 0x9107;
3619
3620pub const TEXTURE_GATHER: u32 = 0x82A2;
3621
3622pub const TEXTURE_GATHER_SHADOW: u32 = 0x82A3;
3623
3624pub const TEXTURE_GREEN_SIZE: u32 = 0x805D;
3625
3626pub const TEXTURE_GREEN_TYPE: u32 = 0x8C11;
3627
3628pub const TEXTURE_HEIGHT: u32 = 0x1001;
3629
3630pub const TEXTURE_IMAGE_FORMAT: u32 = 0x828F;
3631
3632pub const TEXTURE_IMAGE_TYPE: u32 = 0x8290;
3633
3634pub const TEXTURE_IMMUTABLE_FORMAT: u32 = 0x912F;
3635
3636pub const TEXTURE_IMMUTABLE_LEVELS: u32 = 0x82DF;
3637
3638pub const TEXTURE_INTERNAL_FORMAT: u32 = 0x1003;
3639
3640pub const TEXTURE_LOD_BIAS: u32 = 0x8501;
3641
3642pub const TEXTURE_MAG_FILTER: u32 = 0x2800;
3643
3644pub const TEXTURE_MAX_ANISOTROPY: u32 = 0x84FE;
3645
3646pub const TEXTURE_MAX_ANISOTROPY_EXT: u32 = 0x84FE;
3647
3648pub const TEXTURE_MAX_LEVEL: u32 = 0x813D;
3649
3650pub const TEXTURE_MAX_LOD: u32 = 0x813B;
3651
3652pub const TEXTURE_MIN_FILTER: u32 = 0x2801;
3653
3654pub const TEXTURE_MIN_LOD: u32 = 0x813A;
3655
3656pub const TEXTURE_RECTANGLE: u32 = 0x84F5;
3657
3658pub const TEXTURE_RED_SIZE: u32 = 0x805C;
3659
3660pub const TEXTURE_RED_TYPE: u32 = 0x8C10;
3661
3662pub const TEXTURE_SAMPLES: u32 = 0x9106;
3663
3664pub const TEXTURE_SHADOW: u32 = 0x82A1;
3665
3666pub const TEXTURE_SHARED_SIZE: u32 = 0x8C3F;
3667
3668pub const TEXTURE_STENCIL_SIZE: u32 = 0x88F1;
3669
3670pub const TEXTURE_SWIZZLE_A: u32 = 0x8E45;
3671
3672pub const TEXTURE_SWIZZLE_B: u32 = 0x8E44;
3673
3674pub const TEXTURE_SWIZZLE_G: u32 = 0x8E43;
3675
3676pub const TEXTURE_SWIZZLE_R: u32 = 0x8E42;
3677
3678pub const TEXTURE_SWIZZLE_RGBA: u32 = 0x8E46;
3679
3680pub const TEXTURE_TARGET: u32 = 0x1006;
3681
3682pub const TEXTURE_UPDATE_BARRIER_BIT: u32 = 0x00000100;
3683
3684pub const TEXTURE_VIEW: u32 = 0x82B5;
3685
3686pub const TEXTURE_VIEW_MIN_LAYER: u32 = 0x82DD;
3687
3688pub const TEXTURE_VIEW_MIN_LEVEL: u32 = 0x82DB;
3689
3690pub const TEXTURE_VIEW_NUM_LAYERS: u32 = 0x82DE;
3691
3692pub const TEXTURE_VIEW_NUM_LEVELS: u32 = 0x82DC;
3693
3694pub const TEXTURE_WIDTH: u32 = 0x1000;
3695
3696pub const TEXTURE_WRAP_R: u32 = 0x8072;
3697
3698pub const TEXTURE_WRAP_S: u32 = 0x2802;
3699
3700pub const TEXTURE_WRAP_T: u32 = 0x2803;
3701
3702pub const TIMEOUT_EXPIRED: u32 = 0x911B;
3703
3704pub const TIMEOUT_IGNORED: u64 = 0xFFFFFFFFFFFFFFFF;
3705
3706pub const TIMESTAMP: u32 = 0x8E28;
3707
3708pub const TIME_ELAPSED: u32 = 0x88BF;
3709
3710pub const TOP_LEVEL_ARRAY_SIZE: u32 = 0x930C;
3711
3712pub const TOP_LEVEL_ARRAY_STRIDE: u32 = 0x930D;
3713
3714pub const TRANSFORM_FEEDBACK: u32 = 0x8E22;
3715
3716pub const TRANSFORM_FEEDBACK_ACTIVE: u32 = 0x8E24;
3717
3718pub const TRANSFORM_FEEDBACK_BARRIER_BIT: u32 = 0x00000800;
3719
3720pub const TRANSFORM_FEEDBACK_BINDING: u32 = 0x8E25;
3721
3722pub const TRANSFORM_FEEDBACK_BUFFER: u32 = 0x8C8E;
3723
3724pub const TRANSFORM_FEEDBACK_BUFFER_ACTIVE: u32 = 0x8E24;
3725
3726pub const TRANSFORM_FEEDBACK_BUFFER_BINDING: u32 = 0x8C8F;
3727
3728pub const TRANSFORM_FEEDBACK_BUFFER_INDEX: u32 = 0x934B;
3729
3730pub const TRANSFORM_FEEDBACK_BUFFER_MODE: u32 = 0x8C7F;
3731
3732pub const TRANSFORM_FEEDBACK_BUFFER_PAUSED: u32 = 0x8E23;
3733
3734pub const TRANSFORM_FEEDBACK_BUFFER_SIZE: u32 = 0x8C85;
3735
3736pub const TRANSFORM_FEEDBACK_BUFFER_START: u32 = 0x8C84;
3737
3738pub const TRANSFORM_FEEDBACK_BUFFER_STRIDE: u32 = 0x934C;
3739
3740pub const TRANSFORM_FEEDBACK_OVERFLOW: u32 = 0x82EC;
3741
3742pub const TRANSFORM_FEEDBACK_PAUSED: u32 = 0x8E23;
3743
3744pub const TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: u32 = 0x8C88;
3745
3746pub const TRANSFORM_FEEDBACK_STREAM_OVERFLOW: u32 = 0x82ED;
3747
3748pub const TRANSFORM_FEEDBACK_VARYING: u32 = 0x92F4;
3749
3750pub const TRANSFORM_FEEDBACK_VARYINGS: u32 = 0x8C83;
3751
3752pub const TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: u32 = 0x8C76;
3753
3754pub const TRIANGLES: u32 = 0x0004;
3755
3756pub const TRIANGLES_ADJACENCY: u32 = 0x000C;
3757
3758pub const TRIANGLE_FAN: u32 = 0x0006;
3759
3760pub const TRIANGLE_STRIP: u32 = 0x0005;
3761
3762pub const TRIANGLE_STRIP_ADJACENCY: u32 = 0x000D;
3763
3764pub const TRUE: u8 = 1;
3765
3766pub const TYPE: u32 = 0x92FA;
3767
3768pub const UNDEFINED_VERTEX: u32 = 0x8260;
3769
3770pub const UNIFORM: u32 = 0x92E1;
3771
3772pub const UNIFORM_ARRAY_STRIDE: u32 = 0x8A3C;
3773
3774pub const UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX: u32 = 0x92DA;
3775
3776pub const UNIFORM_BARRIER_BIT: u32 = 0x00000004;
3777
3778pub const UNIFORM_BLOCK: u32 = 0x92E2;
3779
3780pub const UNIFORM_BLOCK_ACTIVE_UNIFORMS: u32 = 0x8A42;
3781
3782pub const UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: u32 = 0x8A43;
3783
3784pub const UNIFORM_BLOCK_BINDING: u32 = 0x8A3F;
3785
3786pub const UNIFORM_BLOCK_DATA_SIZE: u32 = 0x8A40;
3787
3788pub const UNIFORM_BLOCK_INDEX: u32 = 0x8A3A;
3789
3790pub const UNIFORM_BLOCK_NAME_LENGTH: u32 = 0x8A41;
3791
3792pub const UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER: u32 = 0x90EC;
3793
3794pub const UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x8A46;
3795
3796pub const UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x8A45;
3797
3798pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x84F0;
3799
3800pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x84F1;
3801
3802pub const UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: u32 = 0x8A44;
3803
3804pub const UNIFORM_BUFFER: u32 = 0x8A11;
3805
3806pub const UNIFORM_BUFFER_BINDING: u32 = 0x8A28;
3807
3808pub const UNIFORM_BUFFER_OFFSET_ALIGNMENT: u32 = 0x8A34;
3809
3810pub const UNIFORM_BUFFER_SIZE: u32 = 0x8A2A;
3811
3812pub const UNIFORM_BUFFER_START: u32 = 0x8A29;
3813
3814pub const UNIFORM_IS_ROW_MAJOR: u32 = 0x8A3E;
3815
3816pub const UNIFORM_MATRIX_STRIDE: u32 = 0x8A3D;
3817
3818pub const UNIFORM_NAME_LENGTH: u32 = 0x8A39;
3819
3820pub const UNIFORM_OFFSET: u32 = 0x8A3B;
3821
3822pub const UNIFORM_SIZE: u32 = 0x8A38;
3823
3824pub const UNIFORM_TYPE: u32 = 0x8A37;
3825
3826pub const UNKNOWN_CONTEXT_RESET: u32 = 0x8255;
3827
3828pub const UNPACK_ALIGNMENT: u32 = 0x0CF5;
3829
3830pub const UNPACK_COMPRESSED_BLOCK_DEPTH: u32 = 0x9129;
3831
3832pub const UNPACK_COMPRESSED_BLOCK_HEIGHT: u32 = 0x9128;
3833
3834pub const UNPACK_COMPRESSED_BLOCK_SIZE: u32 = 0x912A;
3835
3836pub const UNPACK_COMPRESSED_BLOCK_WIDTH: u32 = 0x9127;
3837
3838pub const UNPACK_IMAGE_HEIGHT: u32 = 0x806E;
3839
3840pub const UNPACK_LSB_FIRST: u32 = 0x0CF1;
3841
3842pub const UNPACK_ROW_LENGTH: u32 = 0x0CF2;
3843
3844pub const UNPACK_SKIP_IMAGES: u32 = 0x806D;
3845
3846pub const UNPACK_SKIP_PIXELS: u32 = 0x0CF4;
3847
3848pub const UNPACK_SKIP_ROWS: u32 = 0x0CF3;
3849
3850pub const UNPACK_SWAP_BYTES: u32 = 0x0CF0;
3851
3852pub const UNSIGNALED: u32 = 0x9118;
3853
3854pub const UNSIGNED_BYTE: u32 = 0x1401;
3855
3856pub const UNSIGNED_BYTE_2_3_3_REV: u32 = 0x8362;
3857
3858pub const UNSIGNED_BYTE_3_3_2: u32 = 0x8032;
3859
3860pub const UNSIGNED_INT: u32 = 0x1405;
3861
3862pub const UNSIGNED_INT_10F_11F_11F_REV: u32 = 0x8C3B;
3863
3864pub const UNSIGNED_INT_10_10_10_2: u32 = 0x8036;
3865
3866pub const UNSIGNED_INT_24_8: u32 = 0x84FA;
3867
3868pub const UNSIGNED_INT_2_10_10_10_REV: u32 = 0x8368;
3869
3870pub const UNSIGNED_INT_5_9_9_9_REV: u32 = 0x8C3E;
3871
3872pub const UNSIGNED_INT_8_8_8_8: u32 = 0x8035;
3873
3874pub const UNSIGNED_INT_8_8_8_8_REV: u32 = 0x8367;
3875
3876pub const UNSIGNED_INT_ATOMIC_COUNTER: u32 = 0x92DB;
3877
3878pub const UNSIGNED_INT_IMAGE_1D: u32 = 0x9062;
3879
3880pub const UNSIGNED_INT_IMAGE_1D_ARRAY: u32 = 0x9068;
3881
3882pub const UNSIGNED_INT_IMAGE_2D: u32 = 0x9063;
3883
3884pub const UNSIGNED_INT_IMAGE_2D_ARRAY: u32 = 0x9069;
3885
3886pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE: u32 = 0x906B;
3887
3888pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x906C;
3889
3890pub const UNSIGNED_INT_IMAGE_2D_RECT: u32 = 0x9065;
3891
3892pub const UNSIGNED_INT_IMAGE_3D: u32 = 0x9064;
3893
3894pub const UNSIGNED_INT_IMAGE_BUFFER: u32 = 0x9067;
3895
3896pub const UNSIGNED_INT_IMAGE_CUBE: u32 = 0x9066;
3897
3898pub const UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY: u32 = 0x906A;
3899
3900pub const UNSIGNED_INT_SAMPLER_1D: u32 = 0x8DD1;
3901
3902pub const UNSIGNED_INT_SAMPLER_1D_ARRAY: u32 = 0x8DD6;
3903
3904pub const UNSIGNED_INT_SAMPLER_2D: u32 = 0x8DD2;
3905
3906pub const UNSIGNED_INT_SAMPLER_2D_ARRAY: u32 = 0x8DD7;
3907
3908pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE: u32 = 0x910A;
3909
3910pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910D;
3911
3912pub const UNSIGNED_INT_SAMPLER_2D_RECT: u32 = 0x8DD5;
3913
3914pub const UNSIGNED_INT_SAMPLER_3D: u32 = 0x8DD3;
3915
3916pub const UNSIGNED_INT_SAMPLER_BUFFER: u32 = 0x8DD8;
3917
3918pub const UNSIGNED_INT_SAMPLER_CUBE: u32 = 0x8DD4;
3919
3920pub const UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900F;
3921
3922pub const UNSIGNED_INT_VEC2: u32 = 0x8DC6;
3923
3924pub const UNSIGNED_INT_VEC3: u32 = 0x8DC7;
3925
3926pub const UNSIGNED_INT_VEC4: u32 = 0x8DC8;
3927
3928pub const UNSIGNED_NORMALIZED: u32 = 0x8C17;
3929
3930pub const UNSIGNED_SHORT: u32 = 0x1403;
3931
3932pub const UNSIGNED_SHORT_1_5_5_5_REV: u32 = 0x8366;
3933
3934pub const UNSIGNED_SHORT_4_4_4_4: u32 = 0x8033;
3935
3936pub const UNSIGNED_SHORT_4_4_4_4_REV: u32 = 0x8365;
3937
3938pub const UNSIGNED_SHORT_5_5_5_1: u32 = 0x8034;
3939
3940pub const UNSIGNED_SHORT_5_6_5: u32 = 0x8363;
3941
3942pub const UNSIGNED_SHORT_5_6_5_REV: u32 = 0x8364;
3943
3944pub const UPPER_LEFT: u32 = 0x8CA2;
3945
3946pub const VALIDATE_STATUS: u32 = 0x8B83;
3947
3948pub const VENDOR: u32 = 0x1F00;
3949
3950pub const VERSION: u32 = 0x1F02;
3951
3952pub const VERTEX_ARRAY: u32 = 0x8074;
3953
3954pub const VERTEX_ARRAY_BINDING: u32 = 0x85B5;
3955
3956pub const VERTEX_ATTRIB_ARRAY_BARRIER_BIT: u32 = 0x00000001;
3957
3958pub const VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: u32 = 0x889F;
3959
3960pub const VERTEX_ATTRIB_ARRAY_DIVISOR: u32 = 0x88FE;
3961
3962pub const VERTEX_ATTRIB_ARRAY_ENABLED: u32 = 0x8622;
3963
3964pub const VERTEX_ATTRIB_ARRAY_INTEGER: u32 = 0x88FD;
3965
3966pub const VERTEX_ATTRIB_ARRAY_LONG: u32 = 0x874E;
3967
3968pub const VERTEX_ATTRIB_ARRAY_NORMALIZED: u32 = 0x886A;
3969
3970pub const VERTEX_ATTRIB_ARRAY_POINTER: u32 = 0x8645;
3971
3972pub const VERTEX_ATTRIB_ARRAY_SIZE: u32 = 0x8623;
3973
3974pub const VERTEX_ATTRIB_ARRAY_STRIDE: u32 = 0x8624;
3975
3976pub const VERTEX_ATTRIB_ARRAY_TYPE: u32 = 0x8625;
3977
3978pub const VERTEX_ATTRIB_BINDING: u32 = 0x82D4;
3979
3980pub const VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 0x82D5;
3981
3982pub const VERTEX_BINDING_BUFFER: u32 = 0x8F4F;
3983
3984pub const VERTEX_BINDING_DIVISOR: u32 = 0x82D6;
3985
3986pub const VERTEX_BINDING_OFFSET: u32 = 0x82D7;
3987
3988pub const VERTEX_BINDING_STRIDE: u32 = 0x82D8;
3989
3990pub const VERTEX_PROGRAM_POINT_SIZE: u32 = 0x8642;
3991
3992pub const VERTEX_SHADER: u32 = 0x8B31;
3993
3994pub const VERTEX_SHADER_BIT: u32 = 0x00000001;
3995
3996pub const VERTEX_SHADER_INVOCATIONS: u32 = 0x82F0;
3997
3998pub const VERTEX_SUBROUTINE: u32 = 0x92E8;
3999
4000pub const VERTEX_SUBROUTINE_UNIFORM: u32 = 0x92EE;
4001
4002pub const VERTEX_TEXTURE: u32 = 0x829B;
4003
4004pub const VERTICES_SUBMITTED: u32 = 0x82EE;
4005
4006pub const VIEWPORT: u32 = 0x0BA2;
4007
4008pub const VIEWPORT_BOUNDS_RANGE: u32 = 0x825D;
4009
4010pub const VIEWPORT_INDEX_PROVOKING_VERTEX: u32 = 0x825F;
4011
4012pub const VIEWPORT_SUBPIXEL_BITS: u32 = 0x825C;
4013
4014pub const VIEW_CLASS_128_BITS: u32 = 0x82C4;
4015
4016pub const VIEW_CLASS_16_BITS: u32 = 0x82CA;
4017
4018pub const VIEW_CLASS_24_BITS: u32 = 0x82C9;
4019
4020pub const VIEW_CLASS_32_BITS: u32 = 0x82C8;
4021
4022pub const VIEW_CLASS_48_BITS: u32 = 0x82C7;
4023
4024pub const VIEW_CLASS_64_BITS: u32 = 0x82C6;
4025
4026pub const VIEW_CLASS_8_BITS: u32 = 0x82CB;
4027
4028pub const VIEW_CLASS_96_BITS: u32 = 0x82C5;
4029
4030pub const VIEW_CLASS_BPTC_FLOAT: u32 = 0x82D3;
4031
4032pub const VIEW_CLASS_BPTC_UNORM: u32 = 0x82D2;
4033
4034pub const VIEW_CLASS_RGTC1_RED: u32 = 0x82D0;
4035
4036pub const VIEW_CLASS_RGTC2_RG: u32 = 0x82D1;
4037
4038pub const VIEW_CLASS_S3TC_DXT1_RGB: u32 = 0x82CC;
4039
4040pub const VIEW_CLASS_S3TC_DXT1_RGBA: u32 = 0x82CD;
4041
4042pub const VIEW_CLASS_S3TC_DXT3_RGBA: u32 = 0x82CE;
4043
4044pub const VIEW_CLASS_S3TC_DXT5_RGBA: u32 = 0x82CF;
4045
4046pub const VIEW_COMPATIBILITY_CLASS: u32 = 0x82B6;
4047
4048pub const WAIT_FAILED: u32 = 0x911D;
4049
4050pub const WRITE_ONLY: u32 = 0x88B9;
4051
4052pub const XOR: u32 = 0x1506;
4053
4054pub const ZERO: u32 = 0;
4055
4056pub const ZERO_TO_ONE: u32 = 0x935F;