opengl3 0.0.1.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. data/.gitignore +21 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +87 -0
  5. data/Rakefile +17 -0
  6. data/examples/math3d.rb +65 -0
  7. data/examples/ogl-2_1-basic.rb +107 -0
  8. data/examples/ogl-3_2-basic.rb +128 -0
  9. data/examples/ogl-3_2-cube.rb +203 -0
  10. data/examples/ogl-4_0-quad_tessellation.rb +283 -0
  11. data/examples/ogl-4_0-triangle_tessellation.rb +262 -0
  12. data/lib/glut.rb +125 -0
  13. data/lib/opengl.rb +7 -0
  14. data/lib/opengl/constants.rb +15 -0
  15. data/lib/opengl/constants/core/2_x/GL_VERSION_1_1.yml +230 -0
  16. data/lib/opengl/constants/core/2_x/GL_VERSION_1_2.yml +36 -0
  17. data/lib/opengl/constants/core/2_x/GL_VERSION_1_3.yml +59 -0
  18. data/lib/opengl/constants/core/2_x/GL_VERSION_1_4.yml +16 -0
  19. data/lib/opengl/constants/core/2_x/GL_VERSION_1_5.yml +28 -0
  20. data/lib/opengl/constants/core/2_x/GL_VERSION_2_0.yml +80 -0
  21. data/lib/opengl/constants/core/2_x/GL_VERSION_2_1.yml +16 -0
  22. data/lib/opengl/constants/core/3_0/GL_ARB_depth_buffer_float.yml +3 -0
  23. data/lib/opengl/constants/core/3_0/GL_ARB_framebuffer_object.yml +77 -0
  24. data/lib/opengl/constants/core/3_0/GL_ARB_framebuffer_sRGB.yml +1 -0
  25. data/lib/opengl/constants/core/3_0/GL_ARB_half_float_vertex.yml +1 -0
  26. data/lib/opengl/constants/core/3_0/GL_ARB_map_buffer_range.yml +6 -0
  27. data/lib/opengl/constants/core/3_0/GL_ARB_texture_compression_rgtc.yml +4 -0
  28. data/lib/opengl/constants/core/3_0/GL_ARB_texture_rg.yml +22 -0
  29. data/lib/opengl/constants/core/3_0/GL_ARB_vertex_array_object.yml +1 -0
  30. data/lib/opengl/constants/core/3_0/GL_VERSION_3_0.yml +224 -0
  31. data/lib/opengl/constants/core/3_1/GL_ARB_copy_buffer.yml +4 -0
  32. data/lib/opengl/constants/core/3_1/GL_ARB_uniform_buffer_object.yml +33 -0
  33. data/lib/opengl/constants/core/3_1/GL_VERSION_3_1.yml +65 -0
  34. data/lib/opengl/constants/core/3_2/GL_ARB_depth_clamp.yml +1 -0
  35. data/lib/opengl/constants/core/3_2/GL_ARB_provoking_vertex.yml +4 -0
  36. data/lib/opengl/constants/core/3_2/GL_ARB_seamless_cube_map.yml +1 -0
  37. data/lib/opengl/constants/core/3_2/GL_ARB_sync.yml +15 -0
  38. data/lib/opengl/constants/core/3_2/GL_ARB_texture_multisample.yml +21 -0
  39. data/lib/opengl/constants/core/3_2/GL_VERSION_3_2.yml +76 -0
  40. data/lib/opengl/constants/core/3_3/GL_ARB_blend_func_extended.yml +5 -0
  41. data/lib/opengl/constants/core/3_3/GL_ARB_occlusion_query2.yml +1 -0
  42. data/lib/opengl/constants/core/3_3/GL_ARB_sampler_objects.yml +1 -0
  43. data/lib/opengl/constants/core/3_3/GL_ARB_texture_rgb10_a2ui.yml +1 -0
  44. data/lib/opengl/constants/core/3_3/GL_ARB_texture_swizzle.yml +5 -0
  45. data/lib/opengl/constants/core/3_3/GL_ARB_timer_query.yml +2 -0
  46. data/lib/opengl/constants/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.yml +2 -0
  47. data/lib/opengl/constants/core/3_3/GL_VERSION_3_3.yml +25 -0
  48. data/lib/opengl/constants/core/4_0/GL_ARB_draw_indirect.yml +2 -0
  49. data/lib/opengl/constants/core/4_0/GL_ARB_gpu_shader5.yml +6 -0
  50. data/lib/opengl/constants/core/4_0/GL_ARB_gpu_shader_fp64.yml +13 -0
  51. data/lib/opengl/constants/core/4_0/GL_ARB_shader_subroutine.yml +11 -0
  52. data/lib/opengl/constants/core/4_0/GL_ARB_tessellation_shader.yml +37 -0
  53. data/lib/opengl/constants/core/4_0/GL_ARB_transform_feedback2.yml +6 -0
  54. data/lib/opengl/constants/core/4_0/GL_ARB_transform_feedback3.yml +2 -0
  55. data/lib/opengl/constants/core/4_0/GL_VERSION_4_0.yml +88 -0
  56. data/lib/opengl/constants/core/4_1/GL_ARB_ES2_compatibility.yml +16 -0
  57. data/lib/opengl/constants/core/4_1/GL_ARB_get_program_binary.yml +4 -0
  58. data/lib/opengl/constants/core/4_1/GL_ARB_separate_shader_objects.yml +9 -0
  59. data/lib/opengl/constants/core/4_1/GL_ARB_viewport_array.yml +13 -0
  60. data/lib/opengl/constants/core/4_1/GL_VERSION_4_1.yml +44 -0
  61. data/lib/opengl/constants/core/4_2/GL_ARB_compressed_texture_pixel_storage.yml +8 -0
  62. data/lib/opengl/constants/core/4_2/GL_ARB_internalformat_query.yml +1 -0
  63. data/lib/opengl/constants/core/4_2/GL_ARB_map_buffer_alignment.yml +1 -0
  64. data/lib/opengl/constants/core/4_2/GL_ARB_shader_atomic_counters.yml +29 -0
  65. data/lib/opengl/constants/core/4_2/GL_ARB_shader_image_load_store.yml +64 -0
  66. data/lib/opengl/constants/core/4_2/GL_ARB_texture_storage.yml +1 -0
  67. data/lib/opengl/constants/core/4_2/GL_VERSION_4_2.yml +116 -0
  68. data/lib/opengl/constants/core/4_3/GL_ARB_ES3_compatibility.yml +13 -0
  69. data/lib/opengl/constants/core/4_3/GL_ARB_compute_shader.yml +18 -0
  70. data/lib/opengl/constants/core/4_3/GL_ARB_explicit_uniform_location.yml +1 -0
  71. data/lib/opengl/constants/core/4_3/GL_ARB_framebuffer_no_attachments.yml +9 -0
  72. data/lib/opengl/constants/core/4_3/GL_ARB_internalformat_query2.yml +115 -0
  73. data/lib/opengl/constants/core/4_3/GL_ARB_program_interface_query.yml +50 -0
  74. data/lib/opengl/constants/core/4_3/GL_ARB_shader_storage_buffer_object.yml +18 -0
  75. data/lib/opengl/constants/core/4_3/GL_ARB_stencil_texturing.yml +1 -0
  76. data/lib/opengl/constants/core/4_3/GL_ARB_texture_buffer_range.yml +3 -0
  77. data/lib/opengl/constants/core/4_3/GL_ARB_texture_view.yml +5 -0
  78. data/lib/opengl/constants/core/4_3/GL_ARB_vertex_attrib_binding.yml +7 -0
  79. data/lib/opengl/constants/core/4_3/GL_KHR_debug.yml +41 -0
  80. data/lib/opengl/constants/core/4_3/GL_VERSION_4_3.yml +281 -0
  81. data/lib/opengl/constants/ext/GL_EXT_texture_compression_s3tc.yml +4 -0
  82. data/lib/opengl/constants/ext/GL_EXT_texture_filter_anisotropic.yml +2 -0
  83. data/lib/opengl/constants/ext/GL_EXT_texture_sRGB.yml +16 -0
  84. data/lib/opengl/debugging.rb +38 -0
  85. data/lib/opengl/gl.rb +26 -0
  86. data/lib/opengl/platform.rb +4 -0
  87. data/lib/opengl/platform/base.rb +30 -0
  88. data/lib/opengl/platform/darwin.rb +24 -0
  89. data/lib/opengl/platform/linux.rb +25 -0
  90. data/lib/opengl/platform/types/darwin.yml +2 -0
  91. data/lib/opengl/platform/types/default.yml +27 -0
  92. data/lib/opengl/platform/types/linux.yml +2 -0
  93. data/lib/opengl/raw.rb +44 -0
  94. data/lib/opengl/raw/core/2_x/GL_VERSION_1_0.yml +259 -0
  95. data/lib/opengl/raw/core/2_x/GL_VERSION_1_1.yml +106 -0
  96. data/lib/opengl/raw/core/2_x/GL_VERSION_1_2.yml +60 -0
  97. data/lib/opengl/raw/core/2_x/GL_VERSION_1_3.yml +85 -0
  98. data/lib/opengl/raw/core/2_x/GL_VERSION_1_4.yml +43 -0
  99. data/lib/opengl/raw/core/2_x/GL_VERSION_1_5.yml +103 -0
  100. data/lib/opengl/raw/core/2_x/GL_VERSION_2_0.yml +537 -0
  101. data/lib/opengl/raw/core/2_x/GL_VERSION_2_1.yml +43 -0
  102. data/lib/opengl/raw/core/3_0/GL_ARB_framebuffer_object.yml +128 -0
  103. data/lib/opengl/raw/core/3_0/GL_ARB_map_buffer_range.yml +14 -0
  104. data/lib/opengl/raw/core/3_0/GL_ARB_vertex_array_object.yml +19 -0
  105. data/lib/opengl/raw/core/3_0/GL_VERSION_3_0.yml +340 -0
  106. data/lib/opengl/raw/core/3_1/GL_ARB_copy_buffer.yml +9 -0
  107. data/lib/opengl/raw/core/3_1/GL_ARB_uniform_buffer_object.yml +50 -0
  108. data/lib/opengl/raw/core/3_1/GL_VERSION_3_1.yml +26 -0
  109. data/lib/opengl/raw/core/3_2/GL_ARB_draw_elements_base_vertex.yml +37 -0
  110. data/lib/opengl/raw/core/3_2/GL_ARB_provoking_vertex.yml +5 -0
  111. data/lib/opengl/raw/core/3_2/GL_ARB_sync.yml +39 -0
  112. data/lib/opengl/raw/core/3_2/GL_ARB_texture_multisample.yml +31 -0
  113. data/lib/opengl/raw/core/3_2/GL_VERSION_3_2.yml +20 -0
  114. data/lib/opengl/raw/core/3_3/GL_ARB_blend_func_extended.yml +13 -0
  115. data/lib/opengl/raw/core/3_3/GL_ARB_sampler_objects.yml +80 -0
  116. data/lib/opengl/raw/core/3_3/GL_ARB_timer_query.yml +18 -0
  117. data/lib/opengl/raw/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.yml +57 -0
  118. data/lib/opengl/raw/core/3_3/GL_VERSION_3_3.yml +6 -0
  119. data/lib/opengl/raw/core/4_0/GL_ARB_draw_indirect.yml +12 -0
  120. data/lib/opengl/raw/core/4_0/GL_ARB_gpu_shader_fp64.yml +120 -0
  121. data/lib/opengl/raw/core/4_0/GL_ARB_shader_subroutine.yml +58 -0
  122. data/lib/opengl/raw/core/4_0/GL_ARB_tessellation_shader.yml +11 -0
  123. data/lib/opengl/raw/core/4_0/GL_ARB_transform_feedback2.yml +31 -0
  124. data/lib/opengl/raw/core/4_0/GL_ARB_transform_feedback3.yml +25 -0
  125. data/lib/opengl/raw/core/4_0/GL_VERSION_4_0.yml +30 -0
  126. data/lib/opengl/raw/core/4_1/GL_ARB_ES2_compatibility.yml +28 -0
  127. data/lib/opengl/raw/core/4_1/GL_ARB_get_program_binary.yml +22 -0
  128. data/lib/opengl/raw/core/4_1/GL_ARB_separate_shader_objects.yml +429 -0
  129. data/lib/opengl/raw/core/4_1/GL_ARB_vertex_attrib_64bit.yml +61 -0
  130. data/lib/opengl/raw/core/4_1/GL_ARB_viewport_array.yml +63 -0
  131. data/lib/opengl/raw/core/4_1/GL_VERSION_4_1.yml +1 -0
  132. data/lib/opengl/raw/core/4_2/GL_ARB_base_instance.yml +28 -0
  133. data/lib/opengl/raw/core/4_2/GL_ARB_internalformat_query.yml +9 -0
  134. data/lib/opengl/raw/core/4_2/GL_ARB_shader_atomic_counters.yml +8 -0
  135. data/lib/opengl/raw/core/4_2/GL_ARB_shader_image_load_store.yml +15 -0
  136. data/lib/opengl/raw/core/4_2/GL_ARB_texture_storage.yml +52 -0
  137. data/lib/opengl/raw/core/4_2/GL_ARB_transform_feedback_instanced.yml +14 -0
  138. data/lib/opengl/raw/core/4_2/GL_VERSION_4_2.yml +1 -0
  139. data/lib/opengl/type.rb +74 -0
  140. data/lib/opengl/version.rb +3 -0
  141. data/lib/opengl/wrapper.rb +13 -0
  142. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_0.rb +165 -0
  143. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_1.rb +29 -0
  144. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_2.rb +13 -0
  145. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_3.rb +16 -0
  146. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_4.rb +18 -0
  147. data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_5.rb +49 -0
  148. data/lib/opengl/wrapper/core/2_x/GL_VERSION_2_0.rb +184 -0
  149. data/lib/opengl/wrapper/core/2_x/GL_VERSION_2_1.rb +13 -0
  150. data/lib/opengl/wrapper/core/3_0/GL_ARB_framebuffer_object.rb +43 -0
  151. data/lib/opengl/wrapper/core/3_0/GL_ARB_map_buffer_range.rb +11 -0
  152. data/lib/opengl/wrapper/core/3_0/GL_ARB_vertex_array_object.rb +16 -0
  153. data/lib/opengl/wrapper/core/3_0/GL_VERSION_3_0.rb +87 -0
  154. data/lib/opengl/wrapper/macros/base.rb +80 -0
  155. data/opengl.gemspec +25 -0
  156. data/spec/spec_helper.rb +8 -0
  157. data/test/test_helper.rb +8 -0
  158. metadata +269 -0
@@ -0,0 +1,4 @@
1
+ GL_COPY_READ_BUFFER_BINDING: 0x8F36
2
+ GL_COPY_READ_BUFFER: 0x8F36 # GL_COPY_READ_BUFFER_BINDING
3
+ GL_COPY_WRITE_BUFFER_BINDING: 0x8F37
4
+ GL_COPY_WRITE_BUFFER: 0x8F37 # GL_COPY_WRITE_BUFFER_BINDING
@@ -0,0 +1,33 @@
1
+ GL_UNIFORM_BUFFER: 0x8A11
2
+ GL_UNIFORM_BUFFER_BINDING: 0x8A28
3
+ GL_UNIFORM_BUFFER_START: 0x8A29
4
+ GL_UNIFORM_BUFFER_SIZE: 0x8A2A
5
+ GL_MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B
6
+ GL_MAX_GEOMETRY_UNIFORM_BLOCKS: 0x8A2C
7
+ GL_MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D
8
+ GL_MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E
9
+ GL_MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F
10
+ GL_MAX_UNIFORM_BLOCK_SIZE: 0x8A30
11
+ GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31
12
+ GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS: 0x8A32
13
+ GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33
14
+ GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34
15
+ GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: 0x8A35
16
+ GL_ACTIVE_UNIFORM_BLOCKS: 0x8A36
17
+ GL_UNIFORM_TYPE: 0x8A37
18
+ GL_UNIFORM_SIZE: 0x8A38
19
+ GL_UNIFORM_NAME_LENGTH: 0x8A39
20
+ GL_UNIFORM_BLOCK_INDEX: 0x8A3A
21
+ GL_UNIFORM_OFFSET: 0x8A3B
22
+ GL_UNIFORM_ARRAY_STRIDE: 0x8A3C
23
+ GL_UNIFORM_MATRIX_STRIDE: 0x8A3D
24
+ GL_UNIFORM_IS_ROW_MAJOR: 0x8A3E
25
+ GL_UNIFORM_BLOCK_BINDING: 0x8A3F
26
+ GL_UNIFORM_BLOCK_DATA_SIZE: 0x8A40
27
+ GL_UNIFORM_BLOCK_NAME_LENGTH: 0x8A41
28
+ GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42
29
+ GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43
30
+ GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44
31
+ GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER: 0x8A45
32
+ GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46
33
+ GL_INVALID_INDEX: 0xFFFFFFFF
@@ -0,0 +1,65 @@
1
+ GL_SAMPLER_2D_RECT: 0x8B63
2
+ GL_SAMPLER_2D_RECT_SHADOW: 0x8B64
3
+ GL_SAMPLER_BUFFER: 0x8DC2
4
+ GL_INT_SAMPLER_2D_RECT: 0x8DCD
5
+ GL_INT_SAMPLER_BUFFER: 0x8DD0
6
+ GL_UNSIGNED_INT_SAMPLER_2D_RECT: 0x8DD5
7
+ GL_UNSIGNED_INT_SAMPLER_BUFFER: 0x8DD8
8
+ GL_TEXTURE_BUFFER: 0x8C2A
9
+ GL_MAX_TEXTURE_BUFFER_SIZE: 0x8C2B
10
+ GL_TEXTURE_BINDING_BUFFER: 0x8C2C
11
+ GL_TEXTURE_BUFFER_DATA_STORE_BINDING: 0x8C2D
12
+ GL_TEXTURE_RECTANGLE: 0x84F5
13
+ GL_TEXTURE_BINDING_RECTANGLE: 0x84F6
14
+ GL_PROXY_TEXTURE_RECTANGLE: 0x84F7
15
+ GL_MAX_RECTANGLE_TEXTURE_SIZE: 0x84F8
16
+ GL_RED_SNORM: 0x8F90
17
+ GL_RG_SNORM: 0x8F91
18
+ GL_RGB_SNORM: 0x8F92
19
+ GL_RGBA_SNORM: 0x8F93
20
+ GL_R8_SNORM: 0x8F94
21
+ GL_RG8_SNORM: 0x8F95
22
+ GL_RGB8_SNORM: 0x8F96
23
+ GL_RGBA8_SNORM: 0x8F97
24
+ GL_R16_SNORM: 0x8F98
25
+ GL_RG16_SNORM: 0x8F99
26
+ GL_RGB16_SNORM: 0x8F9A
27
+ GL_RGBA16_SNORM: 0x8F9B
28
+ GL_SIGNED_NORMALIZED: 0x8F9C
29
+ GL_PRIMITIVE_RESTART: 0x8F9D
30
+ GL_PRIMITIVE_RESTART_INDEX: 0x8F9E
31
+ # Reuse tokens from ARB_copy_buffer
32
+ # reuse GL_COPY_READ_BUFFER
33
+ # reuse GL_COPY_WRITE_BUFFER
34
+ # Reuse tokens from ARB_draw_instanced (none)
35
+ # Reuse tokens from ARB_uniform_buffer_object
36
+ # reuse GL_UNIFORM_BUFFER
37
+ # reuse GL_UNIFORM_BUFFER_BINDING
38
+ # reuse GL_UNIFORM_BUFFER_START
39
+ # reuse GL_UNIFORM_BUFFER_SIZE
40
+ # reuse GL_MAX_VERTEX_UNIFORM_BLOCKS
41
+ # reuse GL_MAX_FRAGMENT_UNIFORM_BLOCKS
42
+ # reuse GL_MAX_COMBINED_UNIFORM_BLOCKS
43
+ # reuse GL_MAX_UNIFORM_BUFFER_BINDINGS
44
+ # reuse GL_MAX_UNIFORM_BLOCK_SIZE
45
+ # reuse GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS
46
+ # reuse GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS
47
+ # reuse GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT
48
+ # reuse GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH
49
+ # reuse GL_ACTIVE_UNIFORM_BLOCKS
50
+ # reuse GL_UNIFORM_TYPE
51
+ # reuse GL_UNIFORM_SIZE
52
+ # reuse GL_UNIFORM_NAME_LENGTH
53
+ # reuse GL_UNIFORM_BLOCK_INDEX
54
+ # reuse GL_UNIFORM_OFFSET
55
+ # reuse GL_UNIFORM_ARRAY_STRIDE
56
+ # reuse GL_UNIFORM_MATRIX_STRIDE
57
+ # reuse GL_UNIFORM_IS_ROW_MAJOR
58
+ # reuse GL_UNIFORM_BLOCK_BINDING
59
+ # reuse GL_UNIFORM_BLOCK_DATA_SIZE
60
+ # reuse GL_UNIFORM_BLOCK_NAME_LENGTH
61
+ # reuse GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS
62
+ # reuse GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES
63
+ # reuse GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER
64
+ # reuse GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER
65
+ # reuse GL_INVALID_INDEX
@@ -0,0 +1 @@
1
+ GL_DEPTH_CLAMP: 0x864F
@@ -0,0 +1,4 @@
1
+ GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: 0x8E4C
2
+ GL_FIRST_VERTEX_CONVENTION: 0x8E4D
3
+ GL_LAST_VERTEX_CONVENTION: 0x8E4E
4
+ GL_PROVOKING_VERTEX: 0x8E4F
@@ -0,0 +1 @@
1
+ GL_TEXTURE_CUBE_MAP_SEAMLESS: 0x884F
@@ -0,0 +1,15 @@
1
+ GL_MAX_SERVER_WAIT_TIMEOUT: 0x9111
2
+ GL_OBJECT_TYPE: 0x9112
3
+ GL_SYNC_CONDITION: 0x9113
4
+ GL_SYNC_STATUS: 0x9114
5
+ GL_SYNC_FLAGS: 0x9115
6
+ GL_SYNC_FENCE: 0x9116
7
+ GL_SYNC_GPU_COMMANDS_COMPLETE: 0x9117
8
+ GL_UNSIGNALED: 0x9118
9
+ GL_SIGNALED: 0x9119
10
+ GL_ALREADY_SIGNALED: 0x911A
11
+ GL_TIMEOUT_EXPIRED: 0x911B
12
+ GL_CONDITION_SATISFIED: 0x911C
13
+ GL_WAIT_FAILED: 0x911D
14
+ GL_SYNC_FLUSH_COMMANDS_BIT: 0x00000001
15
+ GL_TIMEOUT_IGNORED: 0xFFFFFFFFFFFFFFFF
@@ -0,0 +1,21 @@
1
+ GL_SAMPLE_POSITION: 0x8E50
2
+ GL_SAMPLE_MASK: 0x8E51
3
+ GL_SAMPLE_MASK_VALUE: 0x8E52
4
+ GL_MAX_SAMPLE_MASK_WORDS: 0x8E59
5
+ GL_TEXTURE_2D_MULTISAMPLE: 0x9100
6
+ GL_PROXY_TEXTURE_2D_MULTISAMPLE: 0x9101
7
+ GL_TEXTURE_2D_MULTISAMPLE_ARRAY: 0x9102
8
+ GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY: 0x9103
9
+ GL_TEXTURE_BINDING_2D_MULTISAMPLE: 0x9104
10
+ GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY: 0x9105
11
+ GL_TEXTURE_SAMPLES: 0x9106
12
+ GL_TEXTURE_FIXED_SAMPLE_LOCATIONS: 0x9107
13
+ GL_SAMPLER_2D_MULTISAMPLE: 0x9108
14
+ GL_INT_SAMPLER_2D_MULTISAMPLE: 0x9109
15
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE: 0x910A
16
+ GL_SAMPLER_2D_MULTISAMPLE_ARRAY: 0x910B
17
+ GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: 0x910C
18
+ GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: 0x910D
19
+ GL_MAX_COLOR_TEXTURE_SAMPLES: 0x910E
20
+ GL_MAX_DEPTH_TEXTURE_SAMPLES: 0x910F
21
+ GL_MAX_INTEGER_SAMPLES: 0x9110
@@ -0,0 +1,76 @@
1
+ GL_CONTEXT_CORE_PROFILE_BIT: 0x00000001
2
+ GL_CONTEXT_COMPATIBILITY_PROFILE_BIT: 0x00000002
3
+ GL_LINES_ADJACENCY: 0x000A
4
+ GL_LINE_STRIP_ADJACENCY: 0x000B
5
+ GL_TRIANGLES_ADJACENCY: 0x000C
6
+ GL_TRIANGLE_STRIP_ADJACENCY: 0x000D
7
+ GL_PROGRAM_POINT_SIZE: 0x8642
8
+ GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS: 0x8C29
9
+ GL_FRAMEBUFFER_ATTACHMENT_LAYERED: 0x8DA7
10
+ GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: 0x8DA8
11
+ GL_GEOMETRY_SHADER: 0x8DD9
12
+ GL_GEOMETRY_VERTICES_OUT: 0x8916
13
+ GL_GEOMETRY_INPUT_TYPE: 0x8917
14
+ GL_GEOMETRY_OUTPUT_TYPE: 0x8918
15
+ GL_MAX_GEOMETRY_UNIFORM_COMPONENTS: 0x8DDF
16
+ GL_MAX_GEOMETRY_OUTPUT_VERTICES: 0x8DE0
17
+ GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS: 0x8DE1
18
+ GL_MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122
19
+ GL_MAX_GEOMETRY_INPUT_COMPONENTS: 0x9123
20
+ GL_MAX_GEOMETRY_OUTPUT_COMPONENTS: 0x9124
21
+ GL_MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125
22
+ GL_CONTEXT_PROFILE_MASK: 0x9126
23
+ # reuse GL_MAX_VARYING_COMPONENTS
24
+ # reuse GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER
25
+ # Reuse tokens from ARB_depth_clamp
26
+ # reuse GL_DEPTH_CLAMP
27
+ # Reuse tokens from ARB_draw_elements_base_vertex (none)
28
+ # Reuse tokens from ARB_fragment_coord_conventions (none)
29
+ # Reuse tokens from ARB_provoking_vertex
30
+ # reuse GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION
31
+ # reuse GL_FIRST_VERTEX_CONVENTION
32
+ # reuse GL_LAST_VERTEX_CONVENTION
33
+ # reuse GL_PROVOKING_VERTEX
34
+ # Reuse tokens from ARB_seamless_cube_map
35
+ # reuse GL_TEXTURE_CUBE_MAP_SEAMLESS
36
+ # Reuse tokens from ARB_sync
37
+ # reuse GL_MAX_SERVER_WAIT_TIMEOUT
38
+ # reuse GL_OBJECT_TYPE
39
+ # reuse GL_SYNC_CONDITION
40
+ # reuse GL_SYNC_STATUS
41
+ # reuse GL_SYNC_FLAGS
42
+ # reuse GL_SYNC_FENCE
43
+ # reuse GL_SYNC_GPU_COMMANDS_COMPLETE
44
+ # reuse GL_UNSIGNALED
45
+ # reuse GL_SIGNALED
46
+ # reuse GL_ALREADY_SIGNALED
47
+ # reuse GL_TIMEOUT_EXPIRED
48
+ # reuse GL_CONDITION_SATISFIED
49
+ # reuse GL_WAIT_FAILED
50
+ # reuse GL_TIMEOUT_IGNORED
51
+ # reuse GL_SYNC_FLUSH_COMMANDS_BIT
52
+ # reuse GL_TIMEOUT_IGNORED
53
+ # Reuse tokens from ARB_texture_multisample
54
+ # reuse GL_SAMPLE_POSITION
55
+ # reuse GL_SAMPLE_MASK
56
+ # reuse GL_SAMPLE_MASK_VALUE
57
+ # reuse GL_MAX_SAMPLE_MASK_WORDS
58
+ # reuse GL_TEXTURE_2D_MULTISAMPLE
59
+ # reuse GL_PROXY_TEXTURE_2D_MULTISAMPLE
60
+ # reuse GL_TEXTURE_2D_MULTISAMPLE_ARRAY
61
+ # reuse GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY
62
+ # reuse GL_TEXTURE_BINDING_2D_MULTISAMPLE
63
+ # reuse GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY
64
+ # reuse GL_TEXTURE_SAMPLES
65
+ # reuse GL_TEXTURE_FIXED_SAMPLE_LOCATIONS
66
+ # reuse GL_SAMPLER_2D_MULTISAMPLE
67
+ # reuse GL_INT_SAMPLER_2D_MULTISAMPLE
68
+ # reuse GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE
69
+ # reuse GL_SAMPLER_2D_MULTISAMPLE_ARRAY
70
+ # reuse GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
71
+ # reuse GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
72
+ # reuse GL_MAX_COLOR_TEXTURE_SAMPLES
73
+ # reuse GL_MAX_DEPTH_TEXTURE_SAMPLES
74
+ # reuse GL_MAX_INTEGER_SAMPLES
75
+ # Don't need to reuse tokens from ARB_vertex_array_bgra
76
+ # since they're already in 1.2 core
@@ -0,0 +1,5 @@
1
+ GL_SRC1_COLOR: 0x88F9
2
+ # reuse GL_SRC1_ALPHA
3
+ GL_ONE_MINUS_SRC1_COLOR: 0x88FA
4
+ GL_ONE_MINUS_SRC1_ALPHA: 0x88FB
5
+ GL_MAX_DUAL_SOURCE_DRAW_BUFFERS: 0x88FC
@@ -0,0 +1 @@
1
+ GL_ANY_SAMPLES_PASSED: 0x8C2F
@@ -0,0 +1 @@
1
+ GL_SAMPLER_BINDING: 0x8919
@@ -0,0 +1 @@
1
+ GL_RGB10_A2UI: 0x906F
@@ -0,0 +1,5 @@
1
+ GL_TEXTURE_SWIZZLE_R: 0x8E42
2
+ GL_TEXTURE_SWIZZLE_G: 0x8E43
3
+ GL_TEXTURE_SWIZZLE_B: 0x8E44
4
+ GL_TEXTURE_SWIZZLE_A: 0x8E45
5
+ GL_TEXTURE_SWIZZLE_RGBA: 0x8E46
@@ -0,0 +1,2 @@
1
+ GL_TIME_ELAPSED: 0x88BF
2
+ GL_TIMESTAMP: 0x8E28
@@ -0,0 +1,2 @@
1
+ # reuse GL_UNSIGNED_INT_2_10_10_10_REV
2
+ GL_INT_2_10_10_10_REV: 0x8D9F
@@ -0,0 +1,25 @@
1
+ GL_VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE
2
+ # Reuse tokens from ARB_blend_func_extended
3
+ # reuse GL_SRC1_COLOR
4
+ # reuse GL_ONE_MINUS_SRC1_COLOR
5
+ # reuse GL_ONE_MINUS_SRC1_ALPHA
6
+ # reuse GL_MAX_DUAL_SOURCE_DRAW_BUFFERS
7
+ # Reuse tokens from ARB_explicit_attrib_location (none)
8
+ # Reuse tokens from ARB_occlusion_query2
9
+ # reuse GL_ANY_SAMPLES_PASSED
10
+ # Reuse tokens from ARB_sampler_objects
11
+ # reuse GL_SAMPLER_BINDING
12
+ # Reuse tokens from ARB_shader_bit_encoding (none)
13
+ # Reuse tokens from ARB_texture_rgb10_a2ui
14
+ # reuse GL_RGB10_A2UI
15
+ # Reuse tokens from ARB_texture_swizzle
16
+ # reuse GL_TEXTURE_SWIZZLE_R
17
+ # reuse GL_TEXTURE_SWIZZLE_G
18
+ # reuse GL_TEXTURE_SWIZZLE_B
19
+ # reuse GL_TEXTURE_SWIZZLE_A
20
+ # reuse GL_TEXTURE_SWIZZLE_RGBA
21
+ # Reuse tokens from ARB_timer_query
22
+ # reuse GL_TIME_ELAPSED
23
+ # reuse GL_TIMESTAMP
24
+ # Reuse tokens from ARB_vertex_type_2_10_10_10_rev
25
+ # reuse GL_INT_2_10_10_10_REV
@@ -0,0 +1,2 @@
1
+ GL_DRAW_INDIRECT_BUFFER: 0x8F3F
2
+ GL_DRAW_INDIRECT_BUFFER_BINDING: 0x8F43
@@ -0,0 +1,6 @@
1
+ GL_GEOMETRY_SHADER_INVOCATIONS: 0x887F
2
+ GL_MAX_GEOMETRY_SHADER_INVOCATIONS: 0x8E5A
3
+ GL_MIN_FRAGMENT_INTERPOLATION_OFFSET: 0x8E5B
4
+ GL_MAX_FRAGMENT_INTERPOLATION_OFFSET: 0x8E5C
5
+ GL_FRAGMENT_INTERPOLATION_OFFSET_BITS: 0x8E5D
6
+ # reuse GL_MAX_VERTEX_STREAMS
@@ -0,0 +1,13 @@
1
+ # reuse GL_DOUBLE
2
+ GL_DOUBLE_VEC2: 0x8FFC
3
+ GL_DOUBLE_VEC3: 0x8FFD
4
+ GL_DOUBLE_VEC4: 0x8FFE
5
+ GL_DOUBLE_MAT2: 0x8F46
6
+ GL_DOUBLE_MAT3: 0x8F47
7
+ GL_DOUBLE_MAT4: 0x8F48
8
+ GL_DOUBLE_MAT2x3: 0x8F49
9
+ GL_DOUBLE_MAT2x4: 0x8F4A
10
+ GL_DOUBLE_MAT3x2: 0x8F4B
11
+ GL_DOUBLE_MAT3x4: 0x8F4C
12
+ GL_DOUBLE_MAT4x2: 0x8F4D
13
+ GL_DOUBLE_MAT4x3: 0x8F4E
@@ -0,0 +1,11 @@
1
+ GL_ACTIVE_SUBROUTINES: 0x8DE5
2
+ GL_ACTIVE_SUBROUTINE_UNIFORMS: 0x8DE6
3
+ GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS: 0x8E47
4
+ GL_ACTIVE_SUBROUTINE_MAX_LENGTH: 0x8E48
5
+ GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH: 0x8E49
6
+ GL_MAX_SUBROUTINES: 0x8DE7
7
+ GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS: 0x8DE8
8
+ GL_NUM_COMPATIBLE_SUBROUTINES: 0x8E4A
9
+ GL_COMPATIBLE_SUBROUTINES: 0x8E4B
10
+ # reuse GL_UNIFORM_SIZE
11
+ # reuse GL_UNIFORM_NAME_LENGTH
@@ -0,0 +1,37 @@
1
+ GL_PATCHES: 0x000E
2
+ GL_PATCH_VERTICES: 0x8E72
3
+ GL_PATCH_DEFAULT_INNER_LEVEL: 0x8E73
4
+ GL_PATCH_DEFAULT_OUTER_LEVEL: 0x8E74
5
+ GL_TESS_CONTROL_OUTPUT_VERTICES: 0x8E75
6
+ GL_TESS_GEN_MODE: 0x8E76
7
+ GL_TESS_GEN_SPACING: 0x8E77
8
+ GL_TESS_GEN_VERTEX_ORDER: 0x8E78
9
+ GL_TESS_GEN_POINT_MODE: 0x8E79
10
+ # reuse GL_TRIANGLES
11
+ # reuse GL_QUADS
12
+ GL_ISOLINES: 0x8E7A
13
+ # reuse GL_EQUAL
14
+ GL_FRACTIONAL_ODD: 0x8E7B
15
+ GL_FRACTIONAL_EVEN: 0x8E7C
16
+ # reuse GL_CCW
17
+ # reuse GL_CW
18
+ GL_MAX_PATCH_VERTICES: 0x8E7D
19
+ GL_MAX_TESS_GEN_LEVEL: 0x8E7E
20
+ GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS: 0x8E7F
21
+ GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS: 0x8E80
22
+ GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS: 0x8E81
23
+ GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS: 0x8E82
24
+ GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS: 0x8E83
25
+ GL_MAX_TESS_PATCH_COMPONENTS: 0x8E84
26
+ GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS: 0x8E85
27
+ GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS: 0x8E86
28
+ GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS: 0x8E89
29
+ GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS: 0x8E8A
30
+ GL_MAX_TESS_CONTROL_INPUT_COMPONENTS: 0x886C
31
+ GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS: 0x886D
32
+ GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS: 0x8E1E
33
+ GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS: 0x8E1F
34
+ GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER: 0x84F0
35
+ GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER: 0x84F1
36
+ GL_TESS_EVALUATION_SHADER: 0x8E87
37
+ GL_TESS_CONTROL_SHADER: 0x8E88
@@ -0,0 +1,6 @@
1
+ GL_TRANSFORM_FEEDBACK: 0x8E22
2
+ GL_TRANSFORM_FEEDBACK_PAUSED: 0x8E23
3
+ GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED: 0x8E23 # GL_TRANSFORM_FEEDBACK_PAUSED
4
+ GL_TRANSFORM_FEEDBACK_ACTIVE: 0x8E24
5
+ GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE: 0x8E24 # GL_TRANSFORM_FEEDBACK_ACTIVE
6
+ GL_TRANSFORM_FEEDBACK_BINDING: 0x8E25
@@ -0,0 +1,2 @@
1
+ GL_MAX_TRANSFORM_FEEDBACK_BUFFERS: 0x8E70
2
+ GL_MAX_VERTEX_STREAMS: 0x8E71
@@ -0,0 +1,88 @@
1
+ GL_SAMPLE_SHADING: 0x8C36
2
+ GL_MIN_SAMPLE_SHADING_VALUE: 0x8C37
3
+ GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET: 0x8E5E
4
+ GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET: 0x8E5F
5
+ GL_TEXTURE_CUBE_MAP_ARRAY: 0x9009
6
+ GL_TEXTURE_BINDING_CUBE_MAP_ARRAY: 0x900A
7
+ GL_PROXY_TEXTURE_CUBE_MAP_ARRAY: 0x900B
8
+ GL_SAMPLER_CUBE_MAP_ARRAY: 0x900C
9
+ GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW: 0x900D
10
+ GL_INT_SAMPLER_CUBE_MAP_ARRAY: 0x900E
11
+ GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY: 0x900F
12
+ # Reuse tokens from ARB_texture_query_lod (none)
13
+ # Reuse tokens from ARB_draw_buffers_blend (none)
14
+ # Reuse tokens from ARB_draw_indirect
15
+ # reuse GL_DRAW_INDIRECT_BUFFER
16
+ # reuse GL_DRAW_INDIRECT_BUFFER_BINDING
17
+ # Reuse tokens from ARB_gpu_shader5
18
+ # reuse GL_GEOMETRY_SHADER_INVOCATIONS
19
+ # reuse GL_MAX_GEOMETRY_SHADER_INVOCATIONS
20
+ # reuse GL_MIN_FRAGMENT_INTERPOLATION_OFFSET
21
+ # reuse GL_MAX_FRAGMENT_INTERPOLATION_OFFSET
22
+ # reuse GL_FRAGMENT_INTERPOLATION_OFFSET_BITS
23
+ # reuse GL_MAX_VERTEX_STREAMS
24
+ # Reuse tokens from ARB_gpu_shader_fp64
25
+ # reuse GL_DOUBLE_VEC2
26
+ # reuse GL_DOUBLE_VEC3
27
+ # reuse GL_DOUBLE_VEC4
28
+ # reuse GL_DOUBLE_MAT2
29
+ # reuse GL_DOUBLE_MAT3
30
+ # reuse GL_DOUBLE_MAT4
31
+ # reuse GL_DOUBLE_MAT2x3
32
+ # reuse GL_DOUBLE_MAT2x4
33
+ # reuse GL_DOUBLE_MAT3x2
34
+ # reuse GL_DOUBLE_MAT3x4
35
+ # reuse GL_DOUBLE_MAT4x2
36
+ # reuse GL_DOUBLE_MAT4x3
37
+ # Reuse tokens from ARB_shader_subroutine
38
+ # reuse GL_ACTIVE_SUBROUTINES
39
+ # reuse GL_ACTIVE_SUBROUTINE_UNIFORMS
40
+ # reuse GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS
41
+ # reuse GL_ACTIVE_SUBROUTINE_MAX_LENGTH
42
+ # reuse GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH
43
+ # reuse GL_MAX_SUBROUTINES
44
+ # reuse GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS
45
+ # reuse GL_NUM_COMPATIBLE_SUBROUTINES
46
+ # reuse GL_COMPATIBLE_SUBROUTINES
47
+ # Reuse tokens from ARB_tessellation_shader
48
+ # reuse GL_PATCHES
49
+ # reuse GL_PATCH_VERTICES
50
+ # reuse GL_PATCH_DEFAULT_INNER_LEVEL
51
+ # reuse GL_PATCH_DEFAULT_OUTER_LEVEL
52
+ # reuse GL_TESS_CONTROL_OUTPUT_VERTICES
53
+ # reuse GL_TESS_GEN_MODE
54
+ # reuse GL_TESS_GEN_SPACING
55
+ # reuse GL_TESS_GEN_VERTEX_ORDER
56
+ # reuse GL_TESS_GEN_POINT_MODE
57
+ # reuse GL_ISOLINES
58
+ # reuse GL_FRACTIONAL_ODD
59
+ # reuse GL_FRACTIONAL_EVEN
60
+ # reuse GL_MAX_PATCH_VERTICES
61
+ # reuse GL_MAX_TESS_GEN_LEVEL
62
+ # reuse GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS
63
+ # reuse GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS
64
+ # reuse GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS
65
+ # reuse GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS
66
+ # reuse GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS
67
+ # reuse GL_MAX_TESS_PATCH_COMPONENTS
68
+ # reuse GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS
69
+ # reuse GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS
70
+ # reuse GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS
71
+ # reuse GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS
72
+ # reuse GL_MAX_TESS_CONTROL_INPUT_COMPONENTS
73
+ # reuse GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS
74
+ # reuse GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS
75
+ # reuse GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS
76
+ # reuse GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER
77
+ # reuse GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER
78
+ # reuse GL_TESS_EVALUATION_SHADER
79
+ # reuse GL_TESS_CONTROL_SHADER
80
+ # Reuse tokens from ARB_texture_buffer_object_rgb32 (none)
81
+ # Reuse tokens from ARB_transform_feedback2
82
+ # reuse GL_TRANSFORM_FEEDBACK
83
+ # reuse GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED
84
+ # reuse GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE
85
+ # reuse GL_TRANSFORM_FEEDBACK_BINDING
86
+ # Reuse tokens from ARB_transform_feedback3
87
+ # reuse GL_MAX_TRANSFORM_FEEDBACK_BUFFERS
88
+ # reuse GL_MAX_VERTEX_STREAMS