pixo 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1454) hide show
  1. checksums.yaml +7 -0
  2. data/CODE_OF_CONDUCT.md +74 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +23 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +43 -0
  7. data/Rakefile +8 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/ext/CMakeLists.txt +35 -0
  11. data/ext/libpixgem/extconf.rb +29 -0
  12. data/ext/libpixgem/include/opengl.h +4 -0
  13. data/ext/libpixgem/src/application.cpp +135 -0
  14. data/ext/libpixgem/src/application.hpp +28 -0
  15. data/ext/libpixgem/src/camera.cpp +28 -0
  16. data/ext/libpixgem/src/camera.hpp +22 -0
  17. data/ext/libpixgem/src/fade_candy.cpp +32 -0
  18. data/ext/libpixgem/src/fade_candy.hpp +22 -0
  19. data/ext/libpixgem/src/gem.cpp +58 -0
  20. data/ext/libpixgem/src/holder.cpp +9 -0
  21. data/ext/libpixgem/src/holder.hpp +8 -0
  22. data/ext/libpixgem/src/pattern.cpp +57 -0
  23. data/ext/libpixgem/src/pattern.hpp +25 -0
  24. data/ext/pixo/CMakeLists.txt +57 -0
  25. data/ext/pixo/README.md +3 -0
  26. data/ext/pixo/ext/glew/CMakeLists.txt +118 -0
  27. data/ext/pixo/ext/glew/LICENSE.txt +73 -0
  28. data/ext/pixo/ext/glew/Makefile +347 -0
  29. data/ext/pixo/ext/glew/README.md +192 -0
  30. data/ext/pixo/ext/glew/auto/Makefile +357 -0
  31. data/ext/pixo/ext/glew/auto/bin/filter_gl_ext.sh +523 -0
  32. data/ext/pixo/ext/glew/auto/bin/filter_gles_ext.sh +19 -0
  33. data/ext/pixo/ext/glew/auto/bin/filter_spec.py +38 -0
  34. data/ext/pixo/ext/glew/auto/bin/make.pl +223 -0
  35. data/ext/pixo/ext/glew/auto/bin/make_def_fun.pl +35 -0
  36. data/ext/pixo/ext/glew/auto/bin/make_def_var.pl +31 -0
  37. data/ext/pixo/ext/glew/auto/bin/make_enable_index.pl +45 -0
  38. data/ext/pixo/ext/glew/auto/bin/make_header.pl +71 -0
  39. data/ext/pixo/ext/glew/auto/bin/make_html.pl +55 -0
  40. data/ext/pixo/ext/glew/auto/bin/make_index.pl +38 -0
  41. data/ext/pixo/ext/glew/auto/bin/make_info.pl +59 -0
  42. data/ext/pixo/ext/glew/auto/bin/make_info_list.pl +47 -0
  43. data/ext/pixo/ext/glew/auto/bin/make_init.pl +59 -0
  44. data/ext/pixo/ext/glew/auto/bin/make_initd.pl +43 -0
  45. data/ext/pixo/ext/glew/auto/bin/make_list.pl +73 -0
  46. data/ext/pixo/ext/glew/auto/bin/make_list2.pl +44 -0
  47. data/ext/pixo/ext/glew/auto/bin/make_str.pl +53 -0
  48. data/ext/pixo/ext/glew/auto/bin/make_struct_fun.pl +36 -0
  49. data/ext/pixo/ext/glew/auto/bin/make_struct_var.pl +31 -0
  50. data/ext/pixo/ext/glew/auto/bin/parse_spec.pl +393 -0
  51. data/ext/pixo/ext/glew/auto/bin/parse_xml.py +131 -0
  52. data/ext/pixo/ext/glew/auto/bin/update_ext.sh +25 -0
  53. data/ext/pixo/ext/glew/auto/blacklist +14 -0
  54. data/ext/pixo/ext/glew/auto/core/gl/GLX_AMD_gpu_association +23 -0
  55. data/ext/pixo/ext/glew/auto/core/gl/GLX_ARB_get_proc_address +5 -0
  56. data/ext/pixo/ext/glew/auto/core/gl/GLX_ATI_pixel_format_float +5 -0
  57. data/ext/pixo/ext/glew/auto/core/gl/GLX_ATI_render_texture +42 -0
  58. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_create_context_es2_profile +5 -0
  59. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_create_context_es_profile +5 -0
  60. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_fbconfig_packed_float +6 -0
  61. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_framebuffer_sRGB +5 -0
  62. data/ext/pixo/ext/glew/auto/core/gl/GLX_MESA_swap_control +6 -0
  63. data/ext/pixo/ext/glew/auto/core/gl/GLX_NV_float_buffer +5 -0
  64. data/ext/pixo/ext/glew/auto/core/gl/GLX_NV_vertex_array_range +6 -0
  65. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIS_shared_multisample +6 -0
  66. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_hyperpipe +26 -0
  67. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_swap_barrier +6 -0
  68. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_swap_group +5 -0
  69. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGI_video_sync +6 -0
  70. data/ext/pixo/ext/glew/auto/core/gl/GLX_SUN_video_resize +8 -0
  71. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_2 +5 -0
  72. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_3 +83 -0
  73. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_4 +7 -0
  74. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_float_pixels +18 -0
  75. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_pixel_buffer +5 -0
  76. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_texture_range +13 -0
  77. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_draw_instanced +4 -0
  78. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_imaging +113 -0
  79. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_instanced_arrays +8 -0
  80. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_internalformat_query2 +104 -0
  81. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_matrix_palette +19 -0
  82. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_multitexture +73 -0
  83. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_robustness +31 -0
  84. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_separate_shader_objects +73 -0
  85. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_vertex_attrib_64bit +14 -0
  86. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_vertex_blend +56 -0
  87. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_point_sprites +10 -0
  88. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_texture_env_combine3 +7 -0
  89. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_texture_env_route +7 -0
  90. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_vertex_shader_output_point_size +5 -0
  91. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_envmap_bumpmap +16 -0
  92. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_map_object_buffer +6 -0
  93. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_pn_triangles +15 -0
  94. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_separate_stencil +10 -0
  95. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_shader_texture_lod +4 -0
  96. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_texture_compression_3dc +5 -0
  97. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_vertex_streams +59 -0
  98. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_Cg_shader +6 -0
  99. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_bindable_uniform +13 -0
  100. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_debug_marker +7 -0
  101. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_depth_bounds_test +7 -0
  102. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_draw_instanced +6 -0
  103. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_draw_range_elements +7 -0
  104. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_fog_coord +17 -0
  105. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_framebuffer_sRGB +6 -0
  106. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_geometry_shader4 +27 -0
  107. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_gpu_program_parameters +6 -0
  108. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_gpu_shader4 +64 -0
  109. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_packed_float +7 -0
  110. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_pixel_buffer_object +8 -0
  111. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_secondary_color +28 -0
  112. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_array +13 -0
  113. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_buffer_object +10 -0
  114. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_compression_latc +8 -0
  115. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_compression_rgtc +8 -0
  116. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_cube_map +16 -0
  117. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_edge_clamp +5 -0
  118. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_integer +57 -0
  119. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_rectangle +8 -0
  120. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_shared_exponent +7 -0
  121. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_timer_query +7 -0
  122. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_vertex_shader +157 -0
  123. data/ext/pixo/ext/glew/auto/core/gl/GL_KTX_buffer_region +13 -0
  124. data/ext/pixo/ext/glew/auto/core/gl/GL_NVX_gpu_memory_info +9 -0
  125. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_depth_buffer_float +11 -0
  126. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_depth_range_unclamped +9 -0
  127. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program2 +9 -0
  128. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program4 +4 -0
  129. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program_option +4 -0
  130. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_framebuffer_multisample_coverage +9 -0
  131. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_geometry_program4 +8 -0
  132. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_geometry_shader4 +4 -0
  133. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_gpu_program4 +24 -0
  134. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_gpu_program5 +10 -0
  135. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_parameter_buffer_object +12 -0
  136. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_present_video +16 -0
  137. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_tessellation_program5 +9 -0
  138. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_transform_feedback +40 -0
  139. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vdpau_interop +19 -0
  140. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program2_option +6 -0
  141. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program3 +5 -0
  142. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program4 +5 -0
  143. data/ext/pixo/ext/glew/auto/core/gl/GL_SGIX_shadow +8 -0
  144. data/ext/pixo/ext/glew/auto/core/gl/GL_SUN_read_video_pixels +5 -0
  145. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_2 +50 -0
  146. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_2_1 +4 -0
  147. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_3 +147 -0
  148. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_4 +90 -0
  149. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_5 +75 -0
  150. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_2_0 +181 -0
  151. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_2_1 +33 -0
  152. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_0 +164 -0
  153. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_1 +42 -0
  154. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_2 +29 -0
  155. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_3 +7 -0
  156. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_0 +21 -0
  157. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_1 +3 -0
  158. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_2 +13 -0
  159. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_3 +6 -0
  160. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_4 +8 -0
  161. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_5 +9 -0
  162. data/ext/pixo/ext/glew/auto/core/gl/GL_WIN_swap_hint +5 -0
  163. data/ext/pixo/ext/glew/auto/core/gl/WGL_ARB_create_context +13 -0
  164. data/ext/pixo/ext/glew/auto/core/gl/WGL_ATI_render_texture_rectangle +5 -0
  165. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_create_context_es2_profile +5 -0
  166. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_create_context_es_profile +5 -0
  167. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_framebuffer_sRGB +5 -0
  168. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_pixel_format_packed_float +5 -0
  169. data/ext/pixo/ext/glew/auto/core/gl/WGL_NV_gpu_affinity +13 -0
  170. data/ext/pixo/ext/glew/auto/core/gl/WGL_NV_vertex_array_range +6 -0
  171. data/ext/pixo/ext/glew/auto/custom.txt +7 -0
  172. data/ext/pixo/ext/glew/auto/doc/advanced.html +130 -0
  173. data/ext/pixo/ext/glew/auto/doc/basic.html +180 -0
  174. data/ext/pixo/ext/glew/auto/doc/build.html +49 -0
  175. data/ext/pixo/ext/glew/auto/doc/credits.html +2 -0
  176. data/ext/pixo/ext/glew/auto/doc/index.html +111 -0
  177. data/ext/pixo/ext/glew/auto/doc/install.html +126 -0
  178. data/ext/pixo/ext/glew/auto/doc/log.html +1073 -0
  179. data/ext/pixo/ext/glew/auto/src/eglew_head.h +88 -0
  180. data/ext/pixo/ext/glew/auto/src/eglew_mid.h +4 -0
  181. data/ext/pixo/ext/glew/auto/src/eglew_tail.h +15 -0
  182. data/ext/pixo/ext/glew/auto/src/footer.html +4 -0
  183. data/ext/pixo/ext/glew/auto/src/glew.rc +135 -0
  184. data/ext/pixo/ext/glew/auto/src/glew_head.c +285 -0
  185. data/ext/pixo/ext/glew/auto/src/glew_head.h +1129 -0
  186. data/ext/pixo/ext/glew/auto/src/glew_init_egl.c +45 -0
  187. data/ext/pixo/ext/glew/auto/src/glew_init_gl.c +206 -0
  188. data/ext/pixo/ext/glew/auto/src/glew_init_glx.c +53 -0
  189. data/ext/pixo/ext/glew/auto/src/glew_init_tail.c +67 -0
  190. data/ext/pixo/ext/glew/auto/src/glew_init_wgl.c +41 -0
  191. data/ext/pixo/ext/glew/auto/src/glew_license.h +32 -0
  192. data/ext/pixo/ext/glew/auto/src/glew_str_egl.c +17 -0
  193. data/ext/pixo/ext/glew/auto/src/glew_str_glx.c +17 -0
  194. data/ext/pixo/ext/glew/auto/src/glew_str_head.c +9 -0
  195. data/ext/pixo/ext/glew/auto/src/glew_str_tail.c +7 -0
  196. data/ext/pixo/ext/glew/auto/src/glew_str_wgl.c +17 -0
  197. data/ext/pixo/ext/glew/auto/src/glew_tail.h +67 -0
  198. data/ext/pixo/ext/glew/auto/src/glewinfo.rc +123 -0
  199. data/ext/pixo/ext/glew/auto/src/glewinfo_egl.c +6 -0
  200. data/ext/pixo/ext/glew/auto/src/glewinfo_gl.c +7 -0
  201. data/ext/pixo/ext/glew/auto/src/glewinfo_glx.c +6 -0
  202. data/ext/pixo/ext/glew/auto/src/glewinfo_head.c +89 -0
  203. data/ext/pixo/ext/glew/auto/src/glewinfo_tail.c +598 -0
  204. data/ext/pixo/ext/glew/auto/src/glewinfo_wgl.c +8 -0
  205. data/ext/pixo/ext/glew/auto/src/glxew_head.h +106 -0
  206. data/ext/pixo/ext/glew/auto/src/glxew_mid.h +4 -0
  207. data/ext/pixo/ext/glew/auto/src/glxew_tail.h +20 -0
  208. data/ext/pixo/ext/glew/auto/src/header.html +98 -0
  209. data/ext/pixo/ext/glew/auto/src/khronos_license.h +23 -0
  210. data/ext/pixo/ext/glew/auto/src/mesa_license.h +24 -0
  211. data/ext/pixo/ext/glew/auto/src/visualinfo.rc +123 -0
  212. data/ext/pixo/ext/glew/auto/src/wglew_head.h +36 -0
  213. data/ext/pixo/ext/glew/auto/src/wglew_mid.h +4 -0
  214. data/ext/pixo/ext/glew/auto/src/wglew_tail.h +22 -0
  215. data/ext/pixo/ext/glew/build/cmake/CMakeLists.txt +215 -0
  216. data/ext/pixo/ext/glew/build/cmake/CopyImportedTargetProperties.cmake +88 -0
  217. data/ext/pixo/ext/glew/build/cmake/glew-config.cmake +60 -0
  218. data/ext/pixo/ext/glew/build/cmake/testbuild/CMakeLists.txt +25 -0
  219. data/ext/pixo/ext/glew/build/cmake/testbuild/main.c +23 -0
  220. data/ext/pixo/ext/glew/build/glew.rc +135 -0
  221. data/ext/pixo/ext/glew/build/glewinfo.rc +123 -0
  222. data/ext/pixo/ext/glew/build/vc10/common.props +29 -0
  223. data/ext/pixo/ext/glew/build/vc10/glew.sln +56 -0
  224. data/ext/pixo/ext/glew/build/vc10/glew_shared.vcxproj +254 -0
  225. data/ext/pixo/ext/glew/build/vc10/glew_static.vcxproj +228 -0
  226. data/ext/pixo/ext/glew/build/vc10/glewinfo.vcxproj +252 -0
  227. data/ext/pixo/ext/glew/build/vc10/visualinfo.vcxproj +251 -0
  228. data/ext/pixo/ext/glew/build/vc12/common.props +29 -0
  229. data/ext/pixo/ext/glew/build/vc12/glew.sln +56 -0
  230. data/ext/pixo/ext/glew/build/vc12/glew_shared.vcxproj +258 -0
  231. data/ext/pixo/ext/glew/build/vc12/glew_static.vcxproj +232 -0
  232. data/ext/pixo/ext/glew/build/vc12/glewinfo.vcxproj +259 -0
  233. data/ext/pixo/ext/glew/build/vc12/visualinfo.vcxproj +258 -0
  234. data/ext/pixo/ext/glew/build/vc6/Makefile +21 -0
  235. data/ext/pixo/ext/glew/build/vc6/glew.dsw +71 -0
  236. data/ext/pixo/ext/glew/build/vc6/glew_shared.dsp +122 -0
  237. data/ext/pixo/ext/glew/build/vc6/glew_static.dsp +112 -0
  238. data/ext/pixo/ext/glew/build/vc6/glewinfo.dsp +103 -0
  239. data/ext/pixo/ext/glew/build/vc6/visualinfo.dsp +103 -0
  240. data/ext/pixo/ext/glew/build/visualinfo.rc +123 -0
  241. data/ext/pixo/ext/glew/cmake-testbuild.sh +71 -0
  242. data/ext/pixo/ext/glew/config/Makefile.cygming +21 -0
  243. data/ext/pixo/ext/glew/config/Makefile.cygwin +19 -0
  244. data/ext/pixo/ext/glew/config/Makefile.darwin +25 -0
  245. data/ext/pixo/ext/glew/config/Makefile.darwin-ppc +24 -0
  246. data/ext/pixo/ext/glew/config/Makefile.darwin-universal +27 -0
  247. data/ext/pixo/ext/glew/config/Makefile.darwin-x86_64 +24 -0
  248. data/ext/pixo/ext/glew/config/Makefile.fedora-mingw32 +12 -0
  249. data/ext/pixo/ext/glew/config/Makefile.freebsd +17 -0
  250. data/ext/pixo/ext/glew/config/Makefile.gnu +17 -0
  251. data/ext/pixo/ext/glew/config/Makefile.haiku +20 -0
  252. data/ext/pixo/ext/glew/config/Makefile.irix +17 -0
  253. data/ext/pixo/ext/glew/config/Makefile.kfreebsd +17 -0
  254. data/ext/pixo/ext/glew/config/Makefile.linux +34 -0
  255. data/ext/pixo/ext/glew/config/Makefile.linux-clang +34 -0
  256. data/ext/pixo/ext/glew/config/Makefile.linux-clang-egl +4 -0
  257. data/ext/pixo/ext/glew/config/Makefile.linux-egl +4 -0
  258. data/ext/pixo/ext/glew/config/Makefile.linux-mingw-w64 +22 -0
  259. data/ext/pixo/ext/glew/config/Makefile.linux-mingw32 +22 -0
  260. data/ext/pixo/ext/glew/config/Makefile.linux-mingw64 +22 -0
  261. data/ext/pixo/ext/glew/config/Makefile.linux-osmesa +4 -0
  262. data/ext/pixo/ext/glew/config/Makefile.mingw +17 -0
  263. data/ext/pixo/ext/glew/config/Makefile.mingw-win32 +5 -0
  264. data/ext/pixo/ext/glew/config/Makefile.msys +19 -0
  265. data/ext/pixo/ext/glew/config/Makefile.msys-win32 +5 -0
  266. data/ext/pixo/ext/glew/config/Makefile.msys-win64 +5 -0
  267. data/ext/pixo/ext/glew/config/Makefile.nacl-32 +31 -0
  268. data/ext/pixo/ext/glew/config/Makefile.nacl-64 +31 -0
  269. data/ext/pixo/ext/glew/config/Makefile.netbsd +17 -0
  270. data/ext/pixo/ext/glew/config/Makefile.openbsd +17 -0
  271. data/ext/pixo/ext/glew/config/Makefile.solaris +14 -0
  272. data/ext/pixo/ext/glew/config/Makefile.solaris-gcc +15 -0
  273. data/ext/pixo/ext/glew/config/config.guess +1456 -0
  274. data/ext/pixo/ext/glew/config/version +7 -0
  275. data/ext/pixo/ext/glew/doc/advanced.html +232 -0
  276. data/ext/pixo/ext/glew/doc/basic.html +282 -0
  277. data/ext/pixo/ext/glew/doc/build.html +151 -0
  278. data/ext/pixo/ext/glew/doc/credits.html +104 -0
  279. data/ext/pixo/ext/glew/doc/github.png +0 -0
  280. data/ext/pixo/ext/glew/doc/glew.css +187 -0
  281. data/ext/pixo/ext/glew/doc/glew.html +724 -0
  282. data/ext/pixo/ext/glew/doc/glew.png +0 -0
  283. data/ext/pixo/ext/glew/doc/glew.txt +29 -0
  284. data/ext/pixo/ext/glew/doc/glxew.html +185 -0
  285. data/ext/pixo/ext/glew/doc/gpl.txt +340 -0
  286. data/ext/pixo/ext/glew/doc/index.html +213 -0
  287. data/ext/pixo/ext/glew/doc/install.html +228 -0
  288. data/ext/pixo/ext/glew/doc/khronos.txt +20 -0
  289. data/ext/pixo/ext/glew/doc/log.html +1175 -0
  290. data/ext/pixo/ext/glew/doc/mesa.txt +21 -0
  291. data/ext/pixo/ext/glew/doc/new.png +0 -0
  292. data/ext/pixo/ext/glew/doc/ogl_sm.jpg +0 -0
  293. data/ext/pixo/ext/glew/doc/travis.png +0 -0
  294. data/ext/pixo/ext/glew/doc/wglew.html +168 -0
  295. data/ext/pixo/ext/glew/glew.pc.in +11 -0
  296. data/ext/pixo/ext/glew/include/GL/eglew.h +2261 -0
  297. data/ext/pixo/ext/glew/include/GL/glew.h +20113 -0
  298. data/ext/pixo/ext/glew/include/GL/glxew.h +1769 -0
  299. data/ext/pixo/ext/glew/include/GL/wglew.h +1427 -0
  300. data/ext/pixo/ext/glew/maintain.sh +142 -0
  301. data/ext/pixo/ext/glew/src/glew.c +23960 -0
  302. data/ext/pixo/ext/glew/src/glewinfo.c +13912 -0
  303. data/ext/pixo/ext/glew/src/visualinfo.c +1297 -0
  304. data/ext/pixo/ext/glfw/CMake/MacOSXBundleInfo.plist.in +38 -0
  305. data/ext/pixo/ext/glfw/CMake/amd64-mingw32msvc.cmake +13 -0
  306. data/ext/pixo/ext/glfw/CMake/i586-mingw32msvc.cmake +13 -0
  307. data/ext/pixo/ext/glfw/CMake/i686-pc-mingw32.cmake +13 -0
  308. data/ext/pixo/ext/glfw/CMake/i686-w64-mingw32.cmake +13 -0
  309. data/ext/pixo/ext/glfw/CMake/modules/FindMir.cmake +18 -0
  310. data/ext/pixo/ext/glfw/CMake/modules/FindVulkan.cmake +34 -0
  311. data/ext/pixo/ext/glfw/CMake/modules/FindWaylandProtocols.cmake +26 -0
  312. data/ext/pixo/ext/glfw/CMake/modules/FindXKBCommon.cmake +34 -0
  313. data/ext/pixo/ext/glfw/CMake/x86_64-w64-mingw32.cmake +13 -0
  314. data/ext/pixo/ext/glfw/CMakeLists.txt +419 -0
  315. data/ext/pixo/ext/glfw/COPYING.txt +22 -0
  316. data/ext/pixo/ext/glfw/README.md +274 -0
  317. data/ext/pixo/ext/glfw/cmake_uninstall.cmake.in +29 -0
  318. data/ext/pixo/ext/glfw/deps/KHR/khrplatform.h +282 -0
  319. data/ext/pixo/ext/glfw/deps/getopt.c +230 -0
  320. data/ext/pixo/ext/glfw/deps/getopt.h +57 -0
  321. data/ext/pixo/ext/glfw/deps/glad/glad.h +3520 -0
  322. data/ext/pixo/ext/glfw/deps/glad.c +1555 -0
  323. data/ext/pixo/ext/glfw/deps/linmath.h +574 -0
  324. data/ext/pixo/ext/glfw/deps/mingw/_mingw_dxhelper.h +117 -0
  325. data/ext/pixo/ext/glfw/deps/mingw/dinput.h +2467 -0
  326. data/ext/pixo/ext/glfw/deps/mingw/xinput.h +239 -0
  327. data/ext/pixo/ext/glfw/deps/tinycthread.c +594 -0
  328. data/ext/pixo/ext/glfw/deps/tinycthread.h +441 -0
  329. data/ext/pixo/ext/glfw/deps/vulkan/vk_platform.h +120 -0
  330. data/ext/pixo/ext/glfw/deps/vulkan/vulkan.h +3835 -0
  331. data/ext/pixo/ext/glfw/docs/CMakeLists.txt +32 -0
  332. data/ext/pixo/ext/glfw/docs/Doxyfile.in +1859 -0
  333. data/ext/pixo/ext/glfw/docs/DoxygenLayout.xml +188 -0
  334. data/ext/pixo/ext/glfw/docs/build.dox +347 -0
  335. data/ext/pixo/ext/glfw/docs/compat.dox +224 -0
  336. data/ext/pixo/ext/glfw/docs/compile.dox +284 -0
  337. data/ext/pixo/ext/glfw/docs/context.dox +345 -0
  338. data/ext/pixo/ext/glfw/docs/extra.css +1 -0
  339. data/ext/pixo/ext/glfw/docs/extra.less +370 -0
  340. data/ext/pixo/ext/glfw/docs/footer.html +7 -0
  341. data/ext/pixo/ext/glfw/docs/header.html +34 -0
  342. data/ext/pixo/ext/glfw/docs/input.dox +665 -0
  343. data/ext/pixo/ext/glfw/docs/internal.dox +116 -0
  344. data/ext/pixo/ext/glfw/docs/intro.dox +372 -0
  345. data/ext/pixo/ext/glfw/docs/main.dox +47 -0
  346. data/ext/pixo/ext/glfw/docs/monitor.dox +216 -0
  347. data/ext/pixo/ext/glfw/docs/moving.dox +506 -0
  348. data/ext/pixo/ext/glfw/docs/news.dox +376 -0
  349. data/ext/pixo/ext/glfw/docs/quick.dox +364 -0
  350. data/ext/pixo/ext/glfw/docs/spaces.svg +872 -0
  351. data/ext/pixo/ext/glfw/docs/vulkan.dox +211 -0
  352. data/ext/pixo/ext/glfw/docs/window.dox +1008 -0
  353. data/ext/pixo/ext/glfw/examples/CMakeLists.txt +67 -0
  354. data/ext/pixo/ext/glfw/examples/boing.c +678 -0
  355. data/ext/pixo/ext/glfw/examples/gears.c +357 -0
  356. data/ext/pixo/ext/glfw/examples/glfw.icns +0 -0
  357. data/ext/pixo/ext/glfw/examples/glfw.ico +0 -0
  358. data/ext/pixo/ext/glfw/examples/glfw.rc +3 -0
  359. data/ext/pixo/ext/glfw/examples/heightmap.c +511 -0
  360. data/ext/pixo/ext/glfw/examples/particles.c +1068 -0
  361. data/ext/pixo/ext/glfw/examples/simple.c +163 -0
  362. data/ext/pixo/ext/glfw/examples/splitview.c +545 -0
  363. data/ext/pixo/ext/glfw/examples/wave.c +460 -0
  364. data/ext/pixo/ext/glfw/include/GLFW/glfw3.h +4248 -0
  365. data/ext/pixo/ext/glfw/include/GLFW/glfw3native.h +456 -0
  366. data/ext/pixo/ext/glfw/src/CMakeLists.txt +120 -0
  367. data/ext/pixo/ext/glfw/src/cocoa_init.m +398 -0
  368. data/ext/pixo/ext/glfw/src/cocoa_joystick.h +60 -0
  369. data/ext/pixo/ext/glfw/src/cocoa_joystick.m +511 -0
  370. data/ext/pixo/ext/glfw/src/cocoa_monitor.m +413 -0
  371. data/ext/pixo/ext/glfw/src/cocoa_platform.h +150 -0
  372. data/ext/pixo/ext/glfw/src/cocoa_time.c +60 -0
  373. data/ext/pixo/ext/glfw/src/cocoa_window.m +1653 -0
  374. data/ext/pixo/ext/glfw/src/context.c +720 -0
  375. data/ext/pixo/ext/glfw/src/egl_context.c +746 -0
  376. data/ext/pixo/ext/glfw/src/egl_context.h +213 -0
  377. data/ext/pixo/ext/glfw/src/glfw3.pc.in +13 -0
  378. data/ext/pixo/ext/glfw/src/glfw3Config.cmake.in +1 -0
  379. data/ext/pixo/ext/glfw/src/glfw_config.h.in +65 -0
  380. data/ext/pixo/ext/glfw/src/glx_context.c +677 -0
  381. data/ext/pixo/ext/glfw/src/glx_context.h +182 -0
  382. data/ext/pixo/ext/glfw/src/init.c +200 -0
  383. data/ext/pixo/ext/glfw/src/input.c +659 -0
  384. data/ext/pixo/ext/glfw/src/internal.h +1055 -0
  385. data/ext/pixo/ext/glfw/src/linux_joystick.c +341 -0
  386. data/ext/pixo/ext/glfw/src/linux_joystick.h +68 -0
  387. data/ext/pixo/ext/glfw/src/mir_init.c +238 -0
  388. data/ext/pixo/ext/glfw/src/mir_monitor.c +182 -0
  389. data/ext/pixo/ext/glfw/src/mir_platform.h +130 -0
  390. data/ext/pixo/ext/glfw/src/mir_window.c +848 -0
  391. data/ext/pixo/ext/glfw/src/monitor.c +477 -0
  392. data/ext/pixo/ext/glfw/src/nsgl_context.h +60 -0
  393. data/ext/pixo/ext/glfw/src/nsgl_context.m +308 -0
  394. data/ext/pixo/ext/glfw/src/posix_time.c +85 -0
  395. data/ext/pixo/ext/glfw/src/posix_time.h +48 -0
  396. data/ext/pixo/ext/glfw/src/posix_tls.c +68 -0
  397. data/ext/pixo/ext/glfw/src/posix_tls.h +49 -0
  398. data/ext/pixo/ext/glfw/src/vulkan.c +302 -0
  399. data/ext/pixo/ext/glfw/src/wgl_context.c +718 -0
  400. data/ext/pixo/ext/glfw/src/wgl_context.h +157 -0
  401. data/ext/pixo/ext/glfw/src/win32_init.c +473 -0
  402. data/ext/pixo/ext/glfw/src/win32_joystick.c +763 -0
  403. data/ext/pixo/ext/glfw/src/win32_joystick.h +64 -0
  404. data/ext/pixo/ext/glfw/src/win32_monitor.c +401 -0
  405. data/ext/pixo/ext/glfw/src/win32_platform.h +350 -0
  406. data/ext/pixo/ext/glfw/src/win32_time.c +74 -0
  407. data/ext/pixo/ext/glfw/src/win32_tls.c +69 -0
  408. data/ext/pixo/ext/glfw/src/win32_window.c +1724 -0
  409. data/ext/pixo/ext/glfw/src/window.c +904 -0
  410. data/ext/pixo/ext/glfw/src/wl_init.c +658 -0
  411. data/ext/pixo/ext/glfw/src/wl_monitor.c +269 -0
  412. data/ext/pixo/ext/glfw/src/wl_platform.h +179 -0
  413. data/ext/pixo/ext/glfw/src/wl_window.c +1050 -0
  414. data/ext/pixo/ext/glfw/src/x11_init.c +833 -0
  415. data/ext/pixo/ext/glfw/src/x11_monitor.c +491 -0
  416. data/ext/pixo/ext/glfw/src/x11_platform.h +296 -0
  417. data/ext/pixo/ext/glfw/src/x11_window.c +2475 -0
  418. data/ext/pixo/ext/glfw/src/xkb_unicode.c +889 -0
  419. data/ext/pixo/ext/glfw/src/xkb_unicode.h +33 -0
  420. data/ext/pixo/ext/glfw/tests/CMakeLists.txt +80 -0
  421. data/ext/pixo/ext/glfw/tests/clipboard.c +157 -0
  422. data/ext/pixo/ext/glfw/tests/cursor.c +317 -0
  423. data/ext/pixo/ext/glfw/tests/empty.c +131 -0
  424. data/ext/pixo/ext/glfw/tests/events.c +620 -0
  425. data/ext/pixo/ext/glfw/tests/gamma.c +188 -0
  426. data/ext/pixo/ext/glfw/tests/glfwinfo.c +899 -0
  427. data/ext/pixo/ext/glfw/tests/icon.c +148 -0
  428. data/ext/pixo/ext/glfw/tests/iconify.c +298 -0
  429. data/ext/pixo/ext/glfw/tests/joysticks.c +216 -0
  430. data/ext/pixo/ext/glfw/tests/monitors.c +243 -0
  431. data/ext/pixo/ext/glfw/tests/msaa.c +163 -0
  432. data/ext/pixo/ext/glfw/tests/reopen.c +192 -0
  433. data/ext/pixo/ext/glfw/tests/sharing.c +186 -0
  434. data/ext/pixo/ext/glfw/tests/tearing.c +214 -0
  435. data/ext/pixo/ext/glfw/tests/threads.c +143 -0
  436. data/ext/pixo/ext/glfw/tests/timeout.c +97 -0
  437. data/ext/pixo/ext/glfw/tests/title.c +78 -0
  438. data/ext/pixo/ext/glfw/tests/vulkan.c +2245 -0
  439. data/ext/pixo/ext/glfw/tests/windows.c +166 -0
  440. data/ext/pixo/ext/glm/CMakeLists.txt +227 -0
  441. data/ext/pixo/ext/glm/cmake/CMakePackageConfigHelpers.cmake +227 -0
  442. data/ext/pixo/ext/glm/cmake/GNUInstallDirs.cmake +188 -0
  443. data/ext/pixo/ext/glm/cmake/glm.pc.in +7 -0
  444. data/ext/pixo/ext/glm/cmake/glmBuildConfig.cmake.in +6 -0
  445. data/ext/pixo/ext/glm/cmake/glmConfig.cmake.in +9 -0
  446. data/ext/pixo/ext/glm/copying.txt +54 -0
  447. data/ext/pixo/ext/glm/doc/api/a00001.html +66 -0
  448. data/ext/pixo/ext/glm/doc/api/a00001_source.html +457 -0
  449. data/ext/pixo/ext/glm/doc/api/a00002.html +66 -0
  450. data/ext/pixo/ext/glm/doc/api/a00002_source.html +83 -0
  451. data/ext/pixo/ext/glm/doc/api/a00003.html +66 -0
  452. data/ext/pixo/ext/glm/doc/api/a00003_source.html +167 -0
  453. data/ext/pixo/ext/glm/doc/api/a00004.html +66 -0
  454. data/ext/pixo/ext/glm/doc/api/a00004_source.html +857 -0
  455. data/ext/pixo/ext/glm/doc/api/a00005.html +66 -0
  456. data/ext/pixo/ext/glm/doc/api/a00005_source.html +754 -0
  457. data/ext/pixo/ext/glm/doc/api/a00006.html +66 -0
  458. data/ext/pixo/ext/glm/doc/api/a00006_source.html +194 -0
  459. data/ext/pixo/ext/glm/doc/api/a00007.html +141 -0
  460. data/ext/pixo/ext/glm/doc/api/a00007_source.html +207 -0
  461. data/ext/pixo/ext/glm/doc/api/a00008.html +102 -0
  462. data/ext/pixo/ext/glm/doc/api/a00008_source.html +111 -0
  463. data/ext/pixo/ext/glm/doc/api/a00009.html +137 -0
  464. data/ext/pixo/ext/glm/doc/api/a00009_source.html +149 -0
  465. data/ext/pixo/ext/glm/doc/api/a00010.html +80 -0
  466. data/ext/pixo/ext/glm/doc/api/a00010_source.html +90 -0
  467. data/ext/pixo/ext/glm/doc/api/a00011.html +88 -0
  468. data/ext/pixo/ext/glm/doc/api/a00011_source.html +97 -0
  469. data/ext/pixo/ext/glm/doc/api/a00012.html +91 -0
  470. data/ext/pixo/ext/glm/doc/api/a00012_source.html +107 -0
  471. data/ext/pixo/ext/glm/doc/api/a00013.html +85 -0
  472. data/ext/pixo/ext/glm/doc/api/a00013_source.html +98 -0
  473. data/ext/pixo/ext/glm/doc/api/a00014.html +66 -0
  474. data/ext/pixo/ext/glm/doc/api/a00014_source.html +65 -0
  475. data/ext/pixo/ext/glm/doc/api/a00015.html +81 -0
  476. data/ext/pixo/ext/glm/doc/api/a00015_source.html +88 -0
  477. data/ext/pixo/ext/glm/doc/api/a00016.html +327 -0
  478. data/ext/pixo/ext/glm/doc/api/a00016_source.html +239 -0
  479. data/ext/pixo/ext/glm/doc/api/a00017.html +93 -0
  480. data/ext/pixo/ext/glm/doc/api/a00017_source.html +102 -0
  481. data/ext/pixo/ext/glm/doc/api/a00018.html +162 -0
  482. data/ext/pixo/ext/glm/doc/api/a00018_source.html +193 -0
  483. data/ext/pixo/ext/glm/doc/api/a00019.html +129 -0
  484. data/ext/pixo/ext/glm/doc/api/a00019_source.html +271 -0
  485. data/ext/pixo/ext/glm/doc/api/a00020.html +89 -0
  486. data/ext/pixo/ext/glm/doc/api/a00020_source.html +105 -0
  487. data/ext/pixo/ext/glm/doc/api/a00021.html +126 -0
  488. data/ext/pixo/ext/glm/doc/api/a00021_source.html +175 -0
  489. data/ext/pixo/ext/glm/doc/api/a00022.html +66 -0
  490. data/ext/pixo/ext/glm/doc/api/a00022_source.html +65 -0
  491. data/ext/pixo/ext/glm/doc/api/a00023.html +66 -0
  492. data/ext/pixo/ext/glm/doc/api/a00023_source.html +219 -0
  493. data/ext/pixo/ext/glm/doc/api/a00024.html +76 -0
  494. data/ext/pixo/ext/glm/doc/api/a00024_source.html +84 -0
  495. data/ext/pixo/ext/glm/doc/api/a00025.html +111 -0
  496. data/ext/pixo/ext/glm/doc/api/a00025_source.html +157 -0
  497. data/ext/pixo/ext/glm/doc/api/a00026.html +111 -0
  498. data/ext/pixo/ext/glm/doc/api/a00026_source.html +118 -0
  499. data/ext/pixo/ext/glm/doc/api/a00027.html +100 -0
  500. data/ext/pixo/ext/glm/doc/api/a00027_source.html +111 -0
  501. data/ext/pixo/ext/glm/doc/api/a00028.html +97 -0
  502. data/ext/pixo/ext/glm/doc/api/a00028_source.html +109 -0
  503. data/ext/pixo/ext/glm/doc/api/a00029.html +168 -0
  504. data/ext/pixo/ext/glm/doc/api/a00029_source.html +238 -0
  505. data/ext/pixo/ext/glm/doc/api/a00030.html +94 -0
  506. data/ext/pixo/ext/glm/doc/api/a00030_source.html +110 -0
  507. data/ext/pixo/ext/glm/doc/api/a00031.html +97 -0
  508. data/ext/pixo/ext/glm/doc/api/a00031_source.html +121 -0
  509. data/ext/pixo/ext/glm/doc/api/a00032.html +112 -0
  510. data/ext/pixo/ext/glm/doc/api/a00032_source.html +149 -0
  511. data/ext/pixo/ext/glm/doc/api/a00033.html +85 -0
  512. data/ext/pixo/ext/glm/doc/api/a00033_source.html +165 -0
  513. data/ext/pixo/ext/glm/doc/api/a00034.html +99 -0
  514. data/ext/pixo/ext/glm/doc/api/a00034_source.html +115 -0
  515. data/ext/pixo/ext/glm/doc/api/a00035.html +118 -0
  516. data/ext/pixo/ext/glm/doc/api/a00035_source.html +135 -0
  517. data/ext/pixo/ext/glm/doc/api/a00036.html +100 -0
  518. data/ext/pixo/ext/glm/doc/api/a00036_source.html +111 -0
  519. data/ext/pixo/ext/glm/doc/api/a00037.html +83 -0
  520. data/ext/pixo/ext/glm/doc/api/a00037_source.html +93 -0
  521. data/ext/pixo/ext/glm/doc/api/a00038.html +979 -0
  522. data/ext/pixo/ext/glm/doc/api/a00038_source.html +1716 -0
  523. data/ext/pixo/ext/glm/doc/api/a00039.html +66 -0
  524. data/ext/pixo/ext/glm/doc/api/a00039_source.html +65 -0
  525. data/ext/pixo/ext/glm/doc/api/a00040.html +66 -0
  526. data/ext/pixo/ext/glm/doc/api/a00040_source.html +119 -0
  527. data/ext/pixo/ext/glm/doc/api/a00041.html +81 -0
  528. data/ext/pixo/ext/glm/doc/api/a00041_source.html +93 -0
  529. data/ext/pixo/ext/glm/doc/api/a00042.html +79 -0
  530. data/ext/pixo/ext/glm/doc/api/a00042_source.html +91 -0
  531. data/ext/pixo/ext/glm/doc/api/a00043.html +67 -0
  532. data/ext/pixo/ext/glm/doc/api/a00043_source.html +185 -0
  533. data/ext/pixo/ext/glm/doc/api/a00044.html +93 -0
  534. data/ext/pixo/ext/glm/doc/api/a00044_source.html +104 -0
  535. data/ext/pixo/ext/glm/doc/api/a00045.html +98 -0
  536. data/ext/pixo/ext/glm/doc/api/a00045_source.html +107 -0
  537. data/ext/pixo/ext/glm/doc/api/a00046.html +66 -0
  538. data/ext/pixo/ext/glm/doc/api/a00046_source.html +65 -0
  539. data/ext/pixo/ext/glm/doc/api/a00047.html +93 -0
  540. data/ext/pixo/ext/glm/doc/api/a00047_source.html +124 -0
  541. data/ext/pixo/ext/glm/doc/api/a00048.html +72 -0
  542. data/ext/pixo/ext/glm/doc/api/a00048_source.html +237 -0
  543. data/ext/pixo/ext/glm/doc/api/a00049.html +79 -0
  544. data/ext/pixo/ext/glm/doc/api/a00049_source.html +89 -0
  545. data/ext/pixo/ext/glm/doc/api/a00050_source.html +2457 -0
  546. data/ext/pixo/ext/glm/doc/api/a00051.html +66 -0
  547. data/ext/pixo/ext/glm/doc/api/a00051_source.html +88 -0
  548. data/ext/pixo/ext/glm/doc/api/a00052.html +66 -0
  549. data/ext/pixo/ext/glm/doc/api/a00052_source.html +80 -0
  550. data/ext/pixo/ext/glm/doc/api/a00053.html +66 -0
  551. data/ext/pixo/ext/glm/doc/api/a00053_source.html +79 -0
  552. data/ext/pixo/ext/glm/doc/api/a00054.html +66 -0
  553. data/ext/pixo/ext/glm/doc/api/a00054_source.html +79 -0
  554. data/ext/pixo/ext/glm/doc/api/a00055.html +66 -0
  555. data/ext/pixo/ext/glm/doc/api/a00055_source.html +88 -0
  556. data/ext/pixo/ext/glm/doc/api/a00056.html +66 -0
  557. data/ext/pixo/ext/glm/doc/api/a00056_source.html +79 -0
  558. data/ext/pixo/ext/glm/doc/api/a00057.html +66 -0
  559. data/ext/pixo/ext/glm/doc/api/a00057_source.html +79 -0
  560. data/ext/pixo/ext/glm/doc/api/a00058_source.html +79 -0
  561. data/ext/pixo/ext/glm/doc/api/a00059.html +66 -0
  562. data/ext/pixo/ext/glm/doc/api/a00059_source.html +88 -0
  563. data/ext/pixo/ext/glm/doc/api/a00060.html +66 -0
  564. data/ext/pixo/ext/glm/doc/api/a00060_source.html +65 -0
  565. data/ext/pixo/ext/glm/doc/api/a00061.html +85 -0
  566. data/ext/pixo/ext/glm/doc/api/a00061_source.html +101 -0
  567. data/ext/pixo/ext/glm/doc/api/a00062.html +81 -0
  568. data/ext/pixo/ext/glm/doc/api/a00062_source.html +87 -0
  569. data/ext/pixo/ext/glm/doc/api/a00063.html +76 -0
  570. data/ext/pixo/ext/glm/doc/api/a00063_source.html +91 -0
  571. data/ext/pixo/ext/glm/doc/api/a00064.html +265 -0
  572. data/ext/pixo/ext/glm/doc/api/a00064_source.html +438 -0
  573. data/ext/pixo/ext/glm/doc/api/a00065.html +86 -0
  574. data/ext/pixo/ext/glm/doc/api/a00065_source.html +104 -0
  575. data/ext/pixo/ext/glm/doc/api/a00066.html +79 -0
  576. data/ext/pixo/ext/glm/doc/api/a00066_source.html +89 -0
  577. data/ext/pixo/ext/glm/doc/api/a00067.html +111 -0
  578. data/ext/pixo/ext/glm/doc/api/a00067_source.html +143 -0
  579. data/ext/pixo/ext/glm/doc/api/a00068.html +100 -0
  580. data/ext/pixo/ext/glm/doc/api/a00068_source.html +122 -0
  581. data/ext/pixo/ext/glm/doc/api/a00069.html +99 -0
  582. data/ext/pixo/ext/glm/doc/api/a00069_source.html +108 -0
  583. data/ext/pixo/ext/glm/doc/api/a00070.html +158 -0
  584. data/ext/pixo/ext/glm/doc/api/a00070_source.html +289 -0
  585. data/ext/pixo/ext/glm/doc/api/a00071.html +89 -0
  586. data/ext/pixo/ext/glm/doc/api/a00071_source.html +110 -0
  587. data/ext/pixo/ext/glm/doc/api/a00072.html +77 -0
  588. data/ext/pixo/ext/glm/doc/api/a00072_source.html +84 -0
  589. data/ext/pixo/ext/glm/doc/api/a00073.html +82 -0
  590. data/ext/pixo/ext/glm/doc/api/a00073_source.html +100 -0
  591. data/ext/pixo/ext/glm/doc/api/a00074.html +99 -0
  592. data/ext/pixo/ext/glm/doc/api/a00074_source.html +121 -0
  593. data/ext/pixo/ext/glm/doc/api/a00075.html +78 -0
  594. data/ext/pixo/ext/glm/doc/api/a00075_source.html +84 -0
  595. data/ext/pixo/ext/glm/doc/api/a00076.html +81 -0
  596. data/ext/pixo/ext/glm/doc/api/a00076_source.html +85 -0
  597. data/ext/pixo/ext/glm/doc/api/a00077.html +107 -0
  598. data/ext/pixo/ext/glm/doc/api/a00077_source.html +115 -0
  599. data/ext/pixo/ext/glm/doc/api/a00078.html +82 -0
  600. data/ext/pixo/ext/glm/doc/api/a00078_source.html +91 -0
  601. data/ext/pixo/ext/glm/doc/api/a00079.html +81 -0
  602. data/ext/pixo/ext/glm/doc/api/a00079_source.html +86 -0
  603. data/ext/pixo/ext/glm/doc/api/a00080.html +175 -0
  604. data/ext/pixo/ext/glm/doc/api/a00080_source.html +233 -0
  605. data/ext/pixo/ext/glm/doc/api/a00081.html +66 -0
  606. data/ext/pixo/ext/glm/doc/api/a00081_source.html +65 -0
  607. data/ext/pixo/ext/glm/doc/api/a00082_source.html +61 -0
  608. data/ext/pixo/ext/glm/doc/api/a00083.html +78 -0
  609. data/ext/pixo/ext/glm/doc/api/a00083_source.html +84 -0
  610. data/ext/pixo/ext/glm/doc/api/a00084.html +79 -0
  611. data/ext/pixo/ext/glm/doc/api/a00084_source.html +87 -0
  612. data/ext/pixo/ext/glm/doc/api/a00085.html +66 -0
  613. data/ext/pixo/ext/glm/doc/api/a00085_source.html +123 -0
  614. data/ext/pixo/ext/glm/doc/api/a00086.html +76 -0
  615. data/ext/pixo/ext/glm/doc/api/a00086_source.html +81 -0
  616. data/ext/pixo/ext/glm/doc/api/a00087.html +161 -0
  617. data/ext/pixo/ext/glm/doc/api/a00087_source.html +329 -0
  618. data/ext/pixo/ext/glm/doc/api/a00088.html +129 -0
  619. data/ext/pixo/ext/glm/doc/api/a00088_source.html +189 -0
  620. data/ext/pixo/ext/glm/doc/api/a00089.html +98 -0
  621. data/ext/pixo/ext/glm/doc/api/a00089_source.html +115 -0
  622. data/ext/pixo/ext/glm/doc/api/a00090.html +67 -0
  623. data/ext/pixo/ext/glm/doc/api/a00090_source.html +133 -0
  624. data/ext/pixo/ext/glm/doc/api/a00091.html +81 -0
  625. data/ext/pixo/ext/glm/doc/api/a00091_source.html +90 -0
  626. data/ext/pixo/ext/glm/doc/api/a00092.html +109 -0
  627. data/ext/pixo/ext/glm/doc/api/a00092_source.html +126 -0
  628. data/ext/pixo/ext/glm/doc/api/a00093.html +83 -0
  629. data/ext/pixo/ext/glm/doc/api/a00093_source.html +94 -0
  630. data/ext/pixo/ext/glm/doc/api/a00094.html +108 -0
  631. data/ext/pixo/ext/glm/doc/api/a00094_source.html +143 -0
  632. data/ext/pixo/ext/glm/doc/api/a00095.html +126 -0
  633. data/ext/pixo/ext/glm/doc/api/a00095_source.html +149 -0
  634. data/ext/pixo/ext/glm/doc/api/a00096.html +69 -0
  635. data/ext/pixo/ext/glm/doc/api/a00096_source.html +131 -0
  636. data/ext/pixo/ext/glm/doc/api/a00097.html +67 -0
  637. data/ext/pixo/ext/glm/doc/api/a00097_source.html +79 -0
  638. data/ext/pixo/ext/glm/doc/api/a00098.html +66 -0
  639. data/ext/pixo/ext/glm/doc/api/a00098_source.html +827 -0
  640. data/ext/pixo/ext/glm/doc/api/a00099.html +67 -0
  641. data/ext/pixo/ext/glm/doc/api/a00099_source.html +219 -0
  642. data/ext/pixo/ext/glm/doc/api/a00100.html +67 -0
  643. data/ext/pixo/ext/glm/doc/api/a00100_source.html +282 -0
  644. data/ext/pixo/ext/glm/doc/api/a00101.html +67 -0
  645. data/ext/pixo/ext/glm/doc/api/a00101_source.html +402 -0
  646. data/ext/pixo/ext/glm/doc/api/a00102.html +82 -0
  647. data/ext/pixo/ext/glm/doc/api/a00102_source.html +105 -0
  648. data/ext/pixo/ext/glm/doc/api/a00103.html +91 -0
  649. data/ext/pixo/ext/glm/doc/api/a00103_source.html +102 -0
  650. data/ext/pixo/ext/glm/doc/api/a00104.html +82 -0
  651. data/ext/pixo/ext/glm/doc/api/a00104_source.html +89 -0
  652. data/ext/pixo/ext/glm/doc/api/a00105.html +88 -0
  653. data/ext/pixo/ext/glm/doc/api/a00105_source.html +95 -0
  654. data/ext/pixo/ext/glm/doc/api/a00106.html +102 -0
  655. data/ext/pixo/ext/glm/doc/api/a00106_source.html +144 -0
  656. data/ext/pixo/ext/glm/doc/api/a00107.html +66 -0
  657. data/ext/pixo/ext/glm/doc/api/a00107_source.html +65 -0
  658. data/ext/pixo/ext/glm/doc/api/a00108.html +241 -0
  659. data/ext/pixo/ext/glm/doc/api/a00108_source.html +383 -0
  660. data/ext/pixo/ext/glm/doc/api/a00109.html +493 -0
  661. data/ext/pixo/ext/glm/doc/api/a00109_source.html +769 -0
  662. data/ext/pixo/ext/glm/doc/api/a00110.html +82 -0
  663. data/ext/pixo/ext/glm/doc/api/a00110_source.html +113 -0
  664. data/ext/pixo/ext/glm/doc/api/a00111.html +66 -0
  665. data/ext/pixo/ext/glm/doc/api/a00111_source.html +248 -0
  666. data/ext/pixo/ext/glm/doc/api/a00112.html +66 -0
  667. data/ext/pixo/ext/glm/doc/api/a00112_source.html +79 -0
  668. data/ext/pixo/ext/glm/doc/api/a00113.html +102 -0
  669. data/ext/pixo/ext/glm/doc/api/a00113_source.html +352 -0
  670. data/ext/pixo/ext/glm/doc/api/a00114.html +271 -0
  671. data/ext/pixo/ext/glm/doc/api/a00114_source.html +469 -0
  672. data/ext/pixo/ext/glm/doc/api/a00115.html +66 -0
  673. data/ext/pixo/ext/glm/doc/api/a00115_source.html +245 -0
  674. data/ext/pixo/ext/glm/doc/api/a00116.html +66 -0
  675. data/ext/pixo/ext/glm/doc/api/a00116_source.html +228 -0
  676. data/ext/pixo/ext/glm/doc/api/a00117.html +66 -0
  677. data/ext/pixo/ext/glm/doc/api/a00117_source.html +230 -0
  678. data/ext/pixo/ext/glm/doc/api/a00118.html +66 -0
  679. data/ext/pixo/ext/glm/doc/api/a00118_source.html +236 -0
  680. data/ext/pixo/ext/glm/doc/api/a00119.html +66 -0
  681. data/ext/pixo/ext/glm/doc/api/a00119_source.html +252 -0
  682. data/ext/pixo/ext/glm/doc/api/a00120.html +66 -0
  683. data/ext/pixo/ext/glm/doc/api/a00120_source.html +235 -0
  684. data/ext/pixo/ext/glm/doc/api/a00121.html +66 -0
  685. data/ext/pixo/ext/glm/doc/api/a00121_source.html +240 -0
  686. data/ext/pixo/ext/glm/doc/api/a00122.html +66 -0
  687. data/ext/pixo/ext/glm/doc/api/a00122_source.html +240 -0
  688. data/ext/pixo/ext/glm/doc/api/a00123.html +66 -0
  689. data/ext/pixo/ext/glm/doc/api/a00123_source.html +257 -0
  690. data/ext/pixo/ext/glm/doc/api/a00124.html +71 -0
  691. data/ext/pixo/ext/glm/doc/api/a00124_source.html +692 -0
  692. data/ext/pixo/ext/glm/doc/api/a00125.html +128 -0
  693. data/ext/pixo/ext/glm/doc/api/a00125_source.html +158 -0
  694. data/ext/pixo/ext/glm/doc/api/a00126.html +67 -0
  695. data/ext/pixo/ext/glm/doc/api/a00126_source.html +299 -0
  696. data/ext/pixo/ext/glm/doc/api/a00127.html +192 -0
  697. data/ext/pixo/ext/glm/doc/api/a00127_source.html +435 -0
  698. data/ext/pixo/ext/glm/doc/api/a00128.html +66 -0
  699. data/ext/pixo/ext/glm/doc/api/a00128_source.html +357 -0
  700. data/ext/pixo/ext/glm/doc/api/a00129.html +66 -0
  701. data/ext/pixo/ext/glm/doc/api/a00129_source.html +443 -0
  702. data/ext/pixo/ext/glm/doc/api/a00130.html +66 -0
  703. data/ext/pixo/ext/glm/doc/api/a00130_source.html +461 -0
  704. data/ext/pixo/ext/glm/doc/api/a00131.html +66 -0
  705. data/ext/pixo/ext/glm/doc/api/a00131_source.html +500 -0
  706. data/ext/pixo/ext/glm/doc/api/a00132.html +91 -0
  707. data/ext/pixo/ext/glm/doc/api/a00132_source.html +101 -0
  708. data/ext/pixo/ext/glm/doc/api/a00133.html +107 -0
  709. data/ext/pixo/ext/glm/doc/api/a00133_source.html +159 -0
  710. data/ext/pixo/ext/glm/doc/api/a00134.html +66 -0
  711. data/ext/pixo/ext/glm/doc/api/a00134_source.html +65 -0
  712. data/ext/pixo/ext/glm/doc/api/a00135.html +66 -0
  713. data/ext/pixo/ext/glm/doc/api/a00135_source.html +65 -0
  714. data/ext/pixo/ext/glm/doc/api/a00136.html +66 -0
  715. data/ext/pixo/ext/glm/doc/api/a00136_source.html +65 -0
  716. data/ext/pixo/ext/glm/doc/api/a00137.html +86 -0
  717. data/ext/pixo/ext/glm/doc/api/a00137_source.html +98 -0
  718. data/ext/pixo/ext/glm/doc/api/a00138.html +91 -0
  719. data/ext/pixo/ext/glm/doc/api/a00138_source.html +104 -0
  720. data/ext/pixo/ext/glm/doc/api/a00139.html +66 -0
  721. data/ext/pixo/ext/glm/doc/api/a00139_source.html +65 -0
  722. data/ext/pixo/ext/glm/doc/api/a00140.html +85 -0
  723. data/ext/pixo/ext/glm/doc/api/a00140_source.html +94 -0
  724. data/ext/pixo/ext/glm/doc/api/a00146.html +1123 -0
  725. data/ext/pixo/ext/glm/doc/api/a00147.html +325 -0
  726. data/ext/pixo/ext/glm/doc/api/a00148.html +367 -0
  727. data/ext/pixo/ext/glm/doc/api/a00149.html +577 -0
  728. data/ext/pixo/ext/glm/doc/api/a00150.html +210 -0
  729. data/ext/pixo/ext/glm/doc/api/a00151.html +364 -0
  730. data/ext/pixo/ext/glm/doc/api/a00152.html +532 -0
  731. data/ext/pixo/ext/glm/doc/api/a00153.html +393 -0
  732. data/ext/pixo/ext/glm/doc/api/a00154.html +103 -0
  733. data/ext/pixo/ext/glm/doc/api/a00155.html +177 -0
  734. data/ext/pixo/ext/glm/doc/api/a00156.html +84 -0
  735. data/ext/pixo/ext/glm/doc/api/a00157.html +808 -0
  736. data/ext/pixo/ext/glm/doc/api/a00158.html +2827 -0
  737. data/ext/pixo/ext/glm/doc/api/a00159.html +53 -0
  738. data/ext/pixo/ext/glm/doc/api/a00160.html +985 -0
  739. data/ext/pixo/ext/glm/doc/api/a00161.html +141 -0
  740. data/ext/pixo/ext/glm/doc/api/a00162.html +670 -0
  741. data/ext/pixo/ext/glm/doc/api/a00163.html +217 -0
  742. data/ext/pixo/ext/glm/doc/api/a00164.html +137 -0
  743. data/ext/pixo/ext/glm/doc/api/a00165.html +290 -0
  744. data/ext/pixo/ext/glm/doc/api/a00166.html +201 -0
  745. data/ext/pixo/ext/glm/doc/api/a00167.html +1885 -0
  746. data/ext/pixo/ext/glm/doc/api/a00168.html +129 -0
  747. data/ext/pixo/ext/glm/doc/api/a00169.html +1690 -0
  748. data/ext/pixo/ext/glm/doc/api/a00170.html +136 -0
  749. data/ext/pixo/ext/glm/doc/api/a00171.html +1406 -0
  750. data/ext/pixo/ext/glm/doc/api/a00172.html +939 -0
  751. data/ext/pixo/ext/glm/doc/api/a00173.html +303 -0
  752. data/ext/pixo/ext/glm/doc/api/a00174.html +406 -0
  753. data/ext/pixo/ext/glm/doc/api/a00175.html +603 -0
  754. data/ext/pixo/ext/glm/doc/api/a00176.html +688 -0
  755. data/ext/pixo/ext/glm/doc/api/a00177.html +3678 -0
  756. data/ext/pixo/ext/glm/doc/api/a00178.html +445 -0
  757. data/ext/pixo/ext/glm/doc/api/a00179.html +233 -0
  758. data/ext/pixo/ext/glm/doc/api/a00180.html +53 -0
  759. data/ext/pixo/ext/glm/doc/api/a00181.html +1293 -0
  760. data/ext/pixo/ext/glm/doc/api/a00182.html +273 -0
  761. data/ext/pixo/ext/glm/doc/api/a00183.html +103 -0
  762. data/ext/pixo/ext/glm/doc/api/a00184.html +213 -0
  763. data/ext/pixo/ext/glm/doc/api/a00185.html +153 -0
  764. data/ext/pixo/ext/glm/doc/api/a00186.html +117 -0
  765. data/ext/pixo/ext/glm/doc/api/a00187.html +312 -0
  766. data/ext/pixo/ext/glm/doc/api/a00188.html +193 -0
  767. data/ext/pixo/ext/glm/doc/api/a00189.html +464 -0
  768. data/ext/pixo/ext/glm/doc/api/a00190.html +565 -0
  769. data/ext/pixo/ext/glm/doc/api/a00191.html +99 -0
  770. data/ext/pixo/ext/glm/doc/api/a00192.html +553 -0
  771. data/ext/pixo/ext/glm/doc/api/a00193.html +355 -0
  772. data/ext/pixo/ext/glm/doc/api/a00194.html +282 -0
  773. data/ext/pixo/ext/glm/doc/api/a00195.html +246 -0
  774. data/ext/pixo/ext/glm/doc/api/a00196.html +143 -0
  775. data/ext/pixo/ext/glm/doc/api/a00197.html +137 -0
  776. data/ext/pixo/ext/glm/doc/api/a00198.html +53 -0
  777. data/ext/pixo/ext/glm/doc/api/a00199.html +314 -0
  778. data/ext/pixo/ext/glm/doc/api/a00200.html +397 -0
  779. data/ext/pixo/ext/glm/doc/api/a00201.html +55 -0
  780. data/ext/pixo/ext/glm/doc/api/a00202.html +126 -0
  781. data/ext/pixo/ext/glm/doc/api/a00203.html +105 -0
  782. data/ext/pixo/ext/glm/doc/api/a00204.html +117 -0
  783. data/ext/pixo/ext/glm/doc/api/a00205.html +191 -0
  784. data/ext/pixo/ext/glm/doc/api/a00206.html +421 -0
  785. data/ext/pixo/ext/glm/doc/api/a00207.html +259 -0
  786. data/ext/pixo/ext/glm/doc/api/a00208.html +317 -0
  787. data/ext/pixo/ext/glm/doc/api/a00209.html +251 -0
  788. data/ext/pixo/ext/glm/doc/api/a00210.html +64 -0
  789. data/ext/pixo/ext/glm/doc/api/a00211.html +293 -0
  790. data/ext/pixo/ext/glm/doc/api/a00212.html +99 -0
  791. data/ext/pixo/ext/glm/doc/api/a00213.html +127 -0
  792. data/ext/pixo/ext/glm/doc/api/a00214.html +90 -0
  793. data/ext/pixo/ext/glm/doc/api/a00215.html +127 -0
  794. data/ext/pixo/ext/glm/doc/api/a00216.html +115 -0
  795. data/ext/pixo/ext/glm/doc/api/a00217.html +93 -0
  796. data/ext/pixo/ext/glm/doc/api/a00218.html +105 -0
  797. data/ext/pixo/ext/glm/doc/api/a00219.html +93 -0
  798. data/ext/pixo/ext/glm/doc/api/a00220.html +613 -0
  799. data/ext/pixo/ext/glm/doc/api/a00221.html +55 -0
  800. data/ext/pixo/ext/glm/doc/api/a00222.html +137 -0
  801. data/ext/pixo/ext/glm/doc/api/a00223.html +165 -0
  802. data/ext/pixo/ext/glm/doc/api/a00224.html +439 -0
  803. data/ext/pixo/ext/glm/doc/api/a00225.html +53 -0
  804. data/ext/pixo/ext/glm/doc/api/a00226.html +53 -0
  805. data/ext/pixo/ext/glm/doc/api/a00227.html +53 -0
  806. data/ext/pixo/ext/glm/doc/api/a00228.html +53 -0
  807. data/ext/pixo/ext/glm/doc/api/a00229.html +211 -0
  808. data/ext/pixo/ext/glm/doc/api/a00230.html +213 -0
  809. data/ext/pixo/ext/glm/doc/api/a00231.html +83 -0
  810. data/ext/pixo/ext/glm/doc/api/a00232.html +143 -0
  811. data/ext/pixo/ext/glm/doc/api/a00233.html +372 -0
  812. data/ext/pixo/ext/glm/doc/api/a00234.html +7811 -0
  813. data/ext/pixo/ext/glm/doc/api/a00235.html +54 -0
  814. data/ext/pixo/ext/glm/doc/api/a00236.html +163 -0
  815. data/ext/pixo/ext/glm/doc/api/a00237.html +271 -0
  816. data/ext/pixo/ext/glm/doc/api/a00238.html +149 -0
  817. data/ext/pixo/ext/glm/doc/api/arrowdown.png +0 -0
  818. data/ext/pixo/ext/glm/doc/api/arrowright.png +0 -0
  819. data/ext/pixo/ext/glm/doc/api/bc_s.png +0 -0
  820. data/ext/pixo/ext/glm/doc/api/bdwn.png +0 -0
  821. data/ext/pixo/ext/glm/doc/api/closed.png +0 -0
  822. data/ext/pixo/ext/glm/doc/api/dir_1f76e953200861345293ade84ac7fb6c.html +61 -0
  823. data/ext/pixo/ext/glm/doc/api/dir_275089585c7fc1b5fd5d7d42c69cb1da.html +61 -0
  824. data/ext/pixo/ext/glm/doc/api/dir_577c788b67d63fb3b3b5752bd495d0f2.html +63 -0
  825. data/ext/pixo/ext/glm/doc/api/dir_5ce58d942b2d0776e17a9a58abc01e04.html +114 -0
  826. data/ext/pixo/ext/glm/doc/api/dir_7b98f88bffbed4b390b5f8f520d9c08e.html +61 -0
  827. data/ext/pixo/ext/glm/doc/api/dir_8d176b5b7dd0ae42ea6876078f2bde49.html +177 -0
  828. data/ext/pixo/ext/glm/doc/api/dir_9440d7c11b99dcd7e5d369c7cf9802fe.html +101 -0
  829. data/ext/pixo/ext/glm/doc/api/dir_e29b03b892e0e25920d021a614d4db9b.html +63 -0
  830. data/ext/pixo/ext/glm/doc/api/dir_e529a619cfdec1fa4c331fb042fd332f.html +129 -0
  831. data/ext/pixo/ext/glm/doc/api/doc.png +0 -0
  832. data/ext/pixo/ext/glm/doc/api/doxygen.css +865 -0
  833. data/ext/pixo/ext/glm/doc/api/doxygen.png +0 -0
  834. data/ext/pixo/ext/glm/doc/api/dynsections.js +104 -0
  835. data/ext/pixo/ext/glm/doc/api/files.html +200 -0
  836. data/ext/pixo/ext/glm/doc/api/folderclosed.png +0 -0
  837. data/ext/pixo/ext/glm/doc/api/folderopen.png +0 -0
  838. data/ext/pixo/ext/glm/doc/api/index.html +68 -0
  839. data/ext/pixo/ext/glm/doc/api/jquery.js +68 -0
  840. data/ext/pixo/ext/glm/doc/api/logo.png +0 -0
  841. data/ext/pixo/ext/glm/doc/api/modules.html +149 -0
  842. data/ext/pixo/ext/glm/doc/api/nav_f.png +0 -0
  843. data/ext/pixo/ext/glm/doc/api/nav_g.png +0 -0
  844. data/ext/pixo/ext/glm/doc/api/nav_h.png +0 -0
  845. data/ext/pixo/ext/glm/doc/api/open.png +0 -0
  846. data/ext/pixo/ext/glm/doc/api/splitbar.png +0 -0
  847. data/ext/pixo/ext/glm/doc/api/sync_off.png +0 -0
  848. data/ext/pixo/ext/glm/doc/api/sync_on.png +0 -0
  849. data/ext/pixo/ext/glm/doc/api/tab_a.png +0 -0
  850. data/ext/pixo/ext/glm/doc/api/tab_b.png +0 -0
  851. data/ext/pixo/ext/glm/doc/api/tab_h.png +0 -0
  852. data/ext/pixo/ext/glm/doc/api/tab_s.png +0 -0
  853. data/ext/pixo/ext/glm/doc/api/tabs.css +79 -0
  854. data/ext/pixo/ext/glm/doc/glm.docx +0 -0
  855. data/ext/pixo/ext/glm/doc/glm.pdf +0 -0
  856. data/ext/pixo/ext/glm/doc/logo.png +0 -0
  857. data/ext/pixo/ext/glm/doc/man.doxy +2396 -0
  858. data/ext/pixo/ext/glm/doc/pages.doxy +32 -0
  859. data/ext/pixo/ext/glm/doc/theme/doxygen.css +865 -0
  860. data/ext/pixo/ext/glm/doc/theme/tabs.css +79 -0
  861. data/ext/pixo/ext/glm/glm/CMakeLists.txt +67 -0
  862. data/ext/pixo/ext/glm/glm/common.hpp +6 -0
  863. data/ext/pixo/ext/glm/glm/detail/_features.hpp +399 -0
  864. data/ext/pixo/ext/glm/glm/detail/_fixes.hpp +30 -0
  865. data/ext/pixo/ext/glm/glm/detail/_noise.hpp +107 -0
  866. data/ext/pixo/ext/glm/glm/detail/_swizzle.hpp +797 -0
  867. data/ext/pixo/ext/glm/glm/detail/_swizzle_func.hpp +696 -0
  868. data/ext/pixo/ext/glm/glm/detail/_vectorize.hpp +131 -0
  869. data/ext/pixo/ext/glm/glm/detail/dummy.cpp +207 -0
  870. data/ext/pixo/ext/glm/glm/detail/func_common.hpp +427 -0
  871. data/ext/pixo/ext/glm/glm/detail/func_common.inl +848 -0
  872. data/ext/pixo/ext/glm/glm/detail/func_common_simd.inl +231 -0
  873. data/ext/pixo/ext/glm/glm/detail/func_exponential.hpp +103 -0
  874. data/ext/pixo/ext/glm/glm/detail/func_exponential.inl +146 -0
  875. data/ext/pixo/ext/glm/glm/detail/func_exponential_simd.inl +35 -0
  876. data/ext/pixo/ext/glm/glm/detail/func_geometric.hpp +113 -0
  877. data/ext/pixo/ext/glm/glm/detail/func_geometric.inl +247 -0
  878. data/ext/pixo/ext/glm/glm/detail/func_geometric_simd.inl +99 -0
  879. data/ext/pixo/ext/glm/glm/detail/func_integer.hpp +203 -0
  880. data/ext/pixo/ext/glm/glm/detail/func_integer.inl +375 -0
  881. data/ext/pixo/ext/glm/glm/detail/func_integer_simd.inl +66 -0
  882. data/ext/pixo/ext/glm/glm/detail/func_matrix.hpp +149 -0
  883. data/ext/pixo/ext/glm/glm/detail/func_matrix.inl +401 -0
  884. data/ext/pixo/ext/glm/glm/detail/func_matrix_simd.inl +88 -0
  885. data/ext/pixo/ext/glm/glm/detail/func_packing.hpp +168 -0
  886. data/ext/pixo/ext/glm/glm/detail/func_packing.inl +190 -0
  887. data/ext/pixo/ext/glm/glm/detail/func_packing_simd.inl +9 -0
  888. data/ext/pixo/ext/glm/glm/detail/func_trigonometric.hpp +176 -0
  889. data/ext/pixo/ext/glm/glm/detail/func_trigonometric.inl +200 -0
  890. data/ext/pixo/ext/glm/glm/detail/func_trigonometric_simd.inl +0 -0
  891. data/ext/pixo/ext/glm/glm/detail/func_vector_relational.hpp +111 -0
  892. data/ext/pixo/ext/glm/glm/detail/func_vector_relational.inl +105 -0
  893. data/ext/pixo/ext/glm/glm/detail/func_vector_relational_simd.inl +9 -0
  894. data/ext/pixo/ext/glm/glm/detail/glm.cpp +257 -0
  895. data/ext/pixo/ext/glm/glm/detail/precision.hpp +63 -0
  896. data/ext/pixo/ext/glm/glm/detail/setup.hpp +777 -0
  897. data/ext/pixo/ext/glm/glm/detail/type_float.hpp +67 -0
  898. data/ext/pixo/ext/glm/glm/detail/type_gentype.hpp +195 -0
  899. data/ext/pixo/ext/glm/glm/detail/type_gentype.inl +341 -0
  900. data/ext/pixo/ext/glm/glm/detail/type_half.hpp +19 -0
  901. data/ext/pixo/ext/glm/glm/detail/type_half.inl +244 -0
  902. data/ext/pixo/ext/glm/glm/detail/type_int.hpp +306 -0
  903. data/ext/pixo/ext/glm/glm/detail/type_mat.hpp +767 -0
  904. data/ext/pixo/ext/glm/glm/detail/type_mat.inl +3 -0
  905. data/ext/pixo/ext/glm/glm/detail/type_mat2x2.hpp +183 -0
  906. data/ext/pixo/ext/glm/glm/detail/type_mat2x2.inl +490 -0
  907. data/ext/pixo/ext/glm/glm/detail/type_mat2x3.hpp +165 -0
  908. data/ext/pixo/ext/glm/glm/detail/type_mat2x3.inl +464 -0
  909. data/ext/pixo/ext/glm/glm/detail/type_mat2x4.hpp +167 -0
  910. data/ext/pixo/ext/glm/glm/detail/type_mat2x4.inl +473 -0
  911. data/ext/pixo/ext/glm/glm/detail/type_mat3x2.hpp +173 -0
  912. data/ext/pixo/ext/glm/glm/detail/type_mat3x2.inl +498 -0
  913. data/ext/pixo/ext/glm/glm/detail/type_mat3x3.hpp +190 -0
  914. data/ext/pixo/ext/glm/glm/detail/type_mat3x3.inl +567 -0
  915. data/ext/pixo/ext/glm/glm/detail/type_mat3x4.hpp +172 -0
  916. data/ext/pixo/ext/glm/glm/detail/type_mat3x4.inl +538 -0
  917. data/ext/pixo/ext/glm/glm/detail/type_mat4x2.hpp +177 -0
  918. data/ext/pixo/ext/glm/glm/detail/type_mat4x2.inl +551 -0
  919. data/ext/pixo/ext/glm/glm/detail/type_mat4x3.hpp +177 -0
  920. data/ext/pixo/ext/glm/glm/detail/type_mat4x3.inl +568 -0
  921. data/ext/pixo/ext/glm/glm/detail/type_mat4x4.hpp +195 -0
  922. data/ext/pixo/ext/glm/glm/detail/type_mat4x4.inl +677 -0
  923. data/ext/pixo/ext/glm/glm/detail/type_mat4x4_simd.inl +7 -0
  924. data/ext/pixo/ext/glm/glm/detail/type_vec.hpp +576 -0
  925. data/ext/pixo/ext/glm/glm/detail/type_vec.inl +2 -0
  926. data/ext/pixo/ext/glm/glm/detail/type_vec1.hpp +299 -0
  927. data/ext/pixo/ext/glm/glm/detail/type_vec1.inl +564 -0
  928. data/ext/pixo/ext/glm/glm/detail/type_vec2.hpp +385 -0
  929. data/ext/pixo/ext/glm/glm/detail/type_vec2.inl +900 -0
  930. data/ext/pixo/ext/glm/glm/detail/type_vec3.hpp +406 -0
  931. data/ext/pixo/ext/glm/glm/detail/type_vec3.inl +1028 -0
  932. data/ext/pixo/ext/glm/glm/detail/type_vec4.hpp +451 -0
  933. data/ext/pixo/ext/glm/glm/detail/type_vec4.inl +975 -0
  934. data/ext/pixo/ext/glm/glm/detail/type_vec4_simd.inl +481 -0
  935. data/ext/pixo/ext/glm/glm/exponential.hpp +6 -0
  936. data/ext/pixo/ext/glm/glm/ext.hpp +117 -0
  937. data/ext/pixo/ext/glm/glm/fwd.hpp +2570 -0
  938. data/ext/pixo/ext/glm/glm/geometric.hpp +6 -0
  939. data/ext/pixo/ext/glm/glm/glm.hpp +88 -0
  940. data/ext/pixo/ext/glm/glm/gtc/bitfield.hpp +207 -0
  941. data/ext/pixo/ext/glm/glm/gtc/bitfield.inl +515 -0
  942. data/ext/pixo/ext/glm/glm/gtc/color_encoding.hpp +50 -0
  943. data/ext/pixo/ext/glm/glm/gtc/color_encoding.inl +65 -0
  944. data/ext/pixo/ext/glm/glm/gtc/color_space.hpp +56 -0
  945. data/ext/pixo/ext/glm/glm/gtc/color_space.inl +75 -0
  946. data/ext/pixo/ext/glm/glm/gtc/constants.hpp +176 -0
  947. data/ext/pixo/ext/glm/glm/gtc/constants.inl +181 -0
  948. data/ext/pixo/ext/glm/glm/gtc/epsilon.hpp +73 -0
  949. data/ext/pixo/ext/glm/glm/gtc/epsilon.inl +125 -0
  950. data/ext/pixo/ext/glm/glm/gtc/functions.hpp +53 -0
  951. data/ext/pixo/ext/glm/glm/gtc/functions.inl +31 -0
  952. data/ext/pixo/ext/glm/glm/gtc/integer.hpp +102 -0
  953. data/ext/pixo/ext/glm/glm/gtc/integer.inl +71 -0
  954. data/ext/pixo/ext/glm/glm/gtc/matrix_access.hpp +59 -0
  955. data/ext/pixo/ext/glm/glm/gtc/matrix_access.inl +63 -0
  956. data/ext/pixo/ext/glm/glm/gtc/matrix_integer.hpp +486 -0
  957. data/ext/pixo/ext/glm/glm/gtc/matrix_inverse.hpp +49 -0
  958. data/ext/pixo/ext/glm/glm/gtc/matrix_inverse.inl +120 -0
  959. data/ext/pixo/ext/glm/glm/gtc/matrix_transform.hpp +465 -0
  960. data/ext/pixo/ext/glm/glm/gtc/matrix_transform.inl +575 -0
  961. data/ext/pixo/ext/glm/glm/gtc/noise.hpp +60 -0
  962. data/ext/pixo/ext/glm/glm/gtc/noise.inl +808 -0
  963. data/ext/pixo/ext/glm/glm/gtc/packing.hpp +579 -0
  964. data/ext/pixo/ext/glm/glm/gtc/packing.inl +781 -0
  965. data/ext/pixo/ext/glm/glm/gtc/quaternion.hpp +397 -0
  966. data/ext/pixo/ext/glm/glm/gtc/quaternion.inl +801 -0
  967. data/ext/pixo/ext/glm/glm/gtc/quaternion_simd.inl +198 -0
  968. data/ext/pixo/ext/glm/glm/gtc/random.hpp +98 -0
  969. data/ext/pixo/ext/glm/glm/gtc/random.inl +350 -0
  970. data/ext/pixo/ext/glm/glm/gtc/reciprocal.hpp +135 -0
  971. data/ext/pixo/ext/glm/glm/gtc/reciprocal.inl +192 -0
  972. data/ext/pixo/ext/glm/glm/gtc/round.hpp +174 -0
  973. data/ext/pixo/ext/glm/glm/gtc/round.inl +344 -0
  974. data/ext/pixo/ext/glm/glm/gtc/type_aligned.hpp +362 -0
  975. data/ext/pixo/ext/glm/glm/gtc/type_precision.hpp +861 -0
  976. data/ext/pixo/ext/glm/glm/gtc/type_precision.inl +7 -0
  977. data/ext/pixo/ext/glm/glm/gtc/type_ptr.hpp +149 -0
  978. data/ext/pixo/ext/glm/glm/gtc/type_ptr.inl +450 -0
  979. data/ext/pixo/ext/glm/glm/gtc/ulp.hpp +63 -0
  980. data/ext/pixo/ext/glm/glm/gtc/ulp.inl +321 -0
  981. data/ext/pixo/ext/glm/glm/gtc/vec1.hpp +164 -0
  982. data/ext/pixo/ext/glm/glm/gtc/vec1.inl +2 -0
  983. data/ext/pixo/ext/glm/glm/gtx/associated_min_max.hpp +202 -0
  984. data/ext/pixo/ext/glm/glm/gtx/associated_min_max.inl +355 -0
  985. data/ext/pixo/ext/glm/glm/gtx/bit.hpp +95 -0
  986. data/ext/pixo/ext/glm/glm/gtx/bit.inl +93 -0
  987. data/ext/pixo/ext/glm/glm/gtx/closest_point.hpp +45 -0
  988. data/ext/pixo/ext/glm/glm/gtx/closest_point.inl +46 -0
  989. data/ext/pixo/ext/glm/glm/gtx/color_space.hpp +68 -0
  990. data/ext/pixo/ext/glm/glm/gtx/color_space.inl +143 -0
  991. data/ext/pixo/ext/glm/glm/gtx/color_space_YCoCg.hpp +56 -0
  992. data/ext/pixo/ext/glm/glm/gtx/color_space_YCoCg.inl +108 -0
  993. data/ext/pixo/ext/glm/glm/gtx/common.hpp +53 -0
  994. data/ext/pixo/ext/glm/glm/gtx/common.inl +112 -0
  995. data/ext/pixo/ext/glm/glm/gtx/compatibility.hpp +130 -0
  996. data/ext/pixo/ext/glm/glm/gtx/compatibility.inl +65 -0
  997. data/ext/pixo/ext/glm/glm/gtx/component_wise.hpp +65 -0
  998. data/ext/pixo/ext/glm/glm/gtx/component_wise.inl +128 -0
  999. data/ext/pixo/ext/glm/glm/gtx/dual_quaternion.hpp +266 -0
  1000. data/ext/pixo/ext/glm/glm/gtx/dual_quaternion.inl +357 -0
  1001. data/ext/pixo/ext/glm/glm/gtx/euler_angles.hpp +143 -0
  1002. data/ext/pixo/ext/glm/glm/gtx/euler_angles.inl +312 -0
  1003. data/ext/pixo/ext/glm/glm/gtx/extend.hpp +38 -0
  1004. data/ext/pixo/ext/glm/glm/gtx/extend.inl +49 -0
  1005. data/ext/pixo/ext/glm/glm/gtx/extended_min_max.hpp +133 -0
  1006. data/ext/pixo/ext/glm/glm/gtx/extended_min_max.inl +140 -0
  1007. data/ext/pixo/ext/glm/glm/gtx/fast_exponential.hpp +91 -0
  1008. data/ext/pixo/ext/glm/glm/gtx/fast_exponential.inl +137 -0
  1009. data/ext/pixo/ext/glm/glm/gtx/fast_square_root.hpp +88 -0
  1010. data/ext/pixo/ext/glm/glm/gtx/fast_square_root.inl +81 -0
  1011. data/ext/pixo/ext/glm/glm/gtx/fast_trigonometry.hpp +75 -0
  1012. data/ext/pixo/ext/glm/glm/gtx/fast_trigonometry.inl +143 -0
  1013. data/ext/pixo/ext/glm/glm/gtx/float_notmalize.inl +14 -0
  1014. data/ext/pixo/ext/glm/glm/gtx/gradient_paint.hpp +48 -0
  1015. data/ext/pixo/ext/glm/glm/gtx/gradient_paint.inl +37 -0
  1016. data/ext/pixo/ext/glm/glm/gtx/handed_coordinate_space.hpp +46 -0
  1017. data/ext/pixo/ext/glm/glm/gtx/handed_coordinate_space.inl +27 -0
  1018. data/ext/pixo/ext/glm/glm/gtx/hash.hpp +134 -0
  1019. data/ext/pixo/ext/glm/glm/gtx/hash.inl +185 -0
  1020. data/ext/pixo/ext/glm/glm/gtx/integer.hpp +72 -0
  1021. data/ext/pixo/ext/glm/glm/gtx/integer.inl +182 -0
  1022. data/ext/pixo/ext/glm/glm/gtx/intersect.hpp +87 -0
  1023. data/ext/pixo/ext/glm/glm/gtx/intersect.inl +170 -0
  1024. data/ext/pixo/ext/glm/glm/gtx/io.hpp +197 -0
  1025. data/ext/pixo/ext/glm/glm/gtx/io.inl +441 -0
  1026. data/ext/pixo/ext/glm/glm/gtx/log_base.hpp +44 -0
  1027. data/ext/pixo/ext/glm/glm/gtx/log_base.inl +18 -0
  1028. data/ext/pixo/ext/glm/glm/gtx/matrix_cross_product.hpp +43 -0
  1029. data/ext/pixo/ext/glm/glm/gtx/matrix_cross_product.inl +38 -0
  1030. data/ext/pixo/ext/glm/glm/gtx/matrix_decompose.hpp +42 -0
  1031. data/ext/pixo/ext/glm/glm/gtx/matrix_decompose.inl +194 -0
  1032. data/ext/pixo/ext/glm/glm/gtx/matrix_interpolation.hpp +61 -0
  1033. data/ext/pixo/ext/glm/glm/gtx/matrix_interpolation.inl +134 -0
  1034. data/ext/pixo/ext/glm/glm/gtx/matrix_major_storage.hpp +115 -0
  1035. data/ext/pixo/ext/glm/glm/gtx/matrix_major_storage.inl +167 -0
  1036. data/ext/pixo/ext/glm/glm/gtx/matrix_operation.hpp +84 -0
  1037. data/ext/pixo/ext/glm/glm/gtx/matrix_operation.inl +118 -0
  1038. data/ext/pixo/ext/glm/glm/gtx/matrix_query.hpp +73 -0
  1039. data/ext/pixo/ext/glm/glm/gtx/matrix_query.inl +114 -0
  1040. data/ext/pixo/ext/glm/glm/gtx/matrix_transform_2d.hpp +78 -0
  1041. data/ext/pixo/ext/glm/glm/gtx/matrix_transform_2d.inl +69 -0
  1042. data/ext/pixo/ext/glm/glm/gtx/mixed_product.hpp +37 -0
  1043. data/ext/pixo/ext/glm/glm/gtx/mixed_product.inl +16 -0
  1044. data/ext/pixo/ext/glm/glm/gtx/norm.hpp +86 -0
  1045. data/ext/pixo/ext/glm/glm/gtx/norm.inl +106 -0
  1046. data/ext/pixo/ext/glm/glm/gtx/normal.hpp +39 -0
  1047. data/ext/pixo/ext/glm/glm/gtx/normal.inl +16 -0
  1048. data/ext/pixo/ext/glm/glm/gtx/normalize_dot.hpp +45 -0
  1049. data/ext/pixo/ext/glm/glm/gtx/normalize_dot.inl +17 -0
  1050. data/ext/pixo/ext/glm/glm/gtx/number_precision.hpp +57 -0
  1051. data/ext/pixo/ext/glm/glm/gtx/number_precision.inl +7 -0
  1052. data/ext/pixo/ext/glm/glm/gtx/optimum_pow.hpp +50 -0
  1053. data/ext/pixo/ext/glm/glm/gtx/optimum_pow.inl +23 -0
  1054. data/ext/pixo/ext/glm/glm/gtx/orthonormalize.hpp +45 -0
  1055. data/ext/pixo/ext/glm/glm/gtx/orthonormalize.inl +30 -0
  1056. data/ext/pixo/ext/glm/glm/gtx/perpendicular.hpp +39 -0
  1057. data/ext/pixo/ext/glm/glm/gtx/perpendicular.inl +15 -0
  1058. data/ext/pixo/ext/glm/glm/gtx/polar_coordinates.hpp +44 -0
  1059. data/ext/pixo/ext/glm/glm/gtx/polar_coordinates.inl +37 -0
  1060. data/ext/pixo/ext/glm/glm/gtx/projection.hpp +36 -0
  1061. data/ext/pixo/ext/glm/glm/gtx/projection.inl +11 -0
  1062. data/ext/pixo/ext/glm/glm/gtx/quaternion.hpp +185 -0
  1063. data/ext/pixo/ext/glm/glm/gtx/quaternion.inl +212 -0
  1064. data/ext/pixo/ext/glm/glm/gtx/range.hpp +85 -0
  1065. data/ext/pixo/ext/glm/glm/gtx/raw_data.hpp +47 -0
  1066. data/ext/pixo/ext/glm/glm/gtx/raw_data.inl +2 -0
  1067. data/ext/pixo/ext/glm/glm/gtx/rotate_normalized_axis.hpp +64 -0
  1068. data/ext/pixo/ext/glm/glm/gtx/rotate_normalized_axis.inl +59 -0
  1069. data/ext/pixo/ext/glm/glm/gtx/rotate_vector.hpp +117 -0
  1070. data/ext/pixo/ext/glm/glm/gtx/rotate_vector.inl +188 -0
  1071. data/ext/pixo/ext/glm/glm/gtx/scalar_multiplication.hpp +69 -0
  1072. data/ext/pixo/ext/glm/glm/gtx/scalar_relational.hpp +32 -0
  1073. data/ext/pixo/ext/glm/glm/gtx/scalar_relational.inl +89 -0
  1074. data/ext/pixo/ext/glm/glm/gtx/spline.hpp +61 -0
  1075. data/ext/pixo/ext/glm/glm/gtx/spline.inl +63 -0
  1076. data/ext/pixo/ext/glm/glm/gtx/std_based_type.hpp +63 -0
  1077. data/ext/pixo/ext/glm/glm/gtx/std_based_type.inl +7 -0
  1078. data/ext/pixo/ext/glm/glm/gtx/string_cast.hpp +47 -0
  1079. data/ext/pixo/ext/glm/glm/gtx/string_cast.inl +458 -0
  1080. data/ext/pixo/ext/glm/glm/gtx/transform.hpp +56 -0
  1081. data/ext/pixo/ext/glm/glm/gtx/transform.inl +24 -0
  1082. data/ext/pixo/ext/glm/glm/gtx/transform2.hpp +107 -0
  1083. data/ext/pixo/ext/glm/glm/gtx/transform2.inl +126 -0
  1084. data/ext/pixo/ext/glm/glm/gtx/type_aligned.hpp +966 -0
  1085. data/ext/pixo/ext/glm/glm/gtx/type_aligned.inl +7 -0
  1086. data/ext/pixo/ext/glm/glm/gtx/type_trait.hpp +252 -0
  1087. data/ext/pixo/ext/glm/glm/gtx/type_trait.inl +0 -0
  1088. data/ext/pixo/ext/glm/glm/gtx/vector_angle.hpp +60 -0
  1089. data/ext/pixo/ext/glm/glm/gtx/vector_angle.inl +58 -0
  1090. data/ext/pixo/ext/glm/glm/gtx/vector_query.hpp +62 -0
  1091. data/ext/pixo/ext/glm/glm/gtx/vector_query.inl +193 -0
  1092. data/ext/pixo/ext/glm/glm/gtx/wrap.hpp +51 -0
  1093. data/ext/pixo/ext/glm/glm/gtx/wrap.inl +58 -0
  1094. data/ext/pixo/ext/glm/glm/integer.hpp +6 -0
  1095. data/ext/pixo/ext/glm/glm/mat2x2.hpp +52 -0
  1096. data/ext/pixo/ext/glm/glm/mat2x3.hpp +32 -0
  1097. data/ext/pixo/ext/glm/glm/mat2x4.hpp +31 -0
  1098. data/ext/pixo/ext/glm/glm/mat3x2.hpp +31 -0
  1099. data/ext/pixo/ext/glm/glm/mat3x3.hpp +52 -0
  1100. data/ext/pixo/ext/glm/glm/mat3x4.hpp +31 -0
  1101. data/ext/pixo/ext/glm/glm/mat4x2.hpp +31 -0
  1102. data/ext/pixo/ext/glm/glm/mat4x3.hpp +31 -0
  1103. data/ext/pixo/ext/glm/glm/mat4x4.hpp +52 -0
  1104. data/ext/pixo/ext/glm/glm/matrix.hpp +6 -0
  1105. data/ext/pixo/ext/glm/glm/packing.hpp +6 -0
  1106. data/ext/pixo/ext/glm/glm/simd/common.h +240 -0
  1107. data/ext/pixo/ext/glm/glm/simd/exponential.h +20 -0
  1108. data/ext/pixo/ext/glm/glm/simd/geometric.h +124 -0
  1109. data/ext/pixo/ext/glm/glm/simd/integer.h +115 -0
  1110. data/ext/pixo/ext/glm/glm/simd/matrix.h +1028 -0
  1111. data/ext/pixo/ext/glm/glm/simd/packing.h +8 -0
  1112. data/ext/pixo/ext/glm/glm/simd/platform.h +437 -0
  1113. data/ext/pixo/ext/glm/glm/simd/trigonometric.h +9 -0
  1114. data/ext/pixo/ext/glm/glm/simd/vector_relational.h +8 -0
  1115. data/ext/pixo/ext/glm/glm/trigonometric.hpp +6 -0
  1116. data/ext/pixo/ext/glm/glm/vec2.hpp +6 -0
  1117. data/ext/pixo/ext/glm/glm/vec3.hpp +6 -0
  1118. data/ext/pixo/ext/glm/glm/vec4.hpp +6 -0
  1119. data/ext/pixo/ext/glm/glm/vector_relational.hpp +6 -0
  1120. data/ext/pixo/ext/glm/readme.md +962 -0
  1121. data/ext/pixo/ext/glm/test/CMakeLists.txt +17 -0
  1122. data/ext/pixo/ext/glm/test/bug/CMakeLists.txt +0 -0
  1123. data/ext/pixo/ext/glm/test/core/CMakeLists.txt +38 -0
  1124. data/ext/pixo/ext/glm/test/core/core_func_common.cpp +1272 -0
  1125. data/ext/pixo/ext/glm/test/core/core_func_exponential.cpp +128 -0
  1126. data/ext/pixo/ext/glm/test/core/core_func_geometric.cpp +193 -0
  1127. data/ext/pixo/ext/glm/test/core/core_func_integer.cpp +1554 -0
  1128. data/ext/pixo/ext/glm/test/core/core_func_integer_bit_count.cpp +291 -0
  1129. data/ext/pixo/ext/glm/test/core/core_func_integer_find_lsb.cpp +400 -0
  1130. data/ext/pixo/ext/glm/test/core/core_func_integer_find_msb.cpp +438 -0
  1131. data/ext/pixo/ext/glm/test/core/core_func_matrix.cpp +277 -0
  1132. data/ext/pixo/ext/glm/test/core/core_func_noise.cpp +7 -0
  1133. data/ext/pixo/ext/glm/test/core/core_func_packing.cpp +156 -0
  1134. data/ext/pixo/ext/glm/test/core/core_func_swizzle.cpp +78 -0
  1135. data/ext/pixo/ext/glm/test/core/core_func_trigonometric.cpp +10 -0
  1136. data/ext/pixo/ext/glm/test/core/core_func_vector_relational.cpp +42 -0
  1137. data/ext/pixo/ext/glm/test/core/core_setup_force_cxx98.cpp +10 -0
  1138. data/ext/pixo/ext/glm/test/core/core_setup_message.cpp +263 -0
  1139. data/ext/pixo/ext/glm/test/core/core_setup_precision.cpp +58 -0
  1140. data/ext/pixo/ext/glm/test/core/core_type_aligned.cpp +128 -0
  1141. data/ext/pixo/ext/glm/test/core/core_type_cast.cpp +144 -0
  1142. data/ext/pixo/ext/glm/test/core/core_type_ctor.cpp +358 -0
  1143. data/ext/pixo/ext/glm/test/core/core_type_float.cpp +31 -0
  1144. data/ext/pixo/ext/glm/test/core/core_type_int.cpp +43 -0
  1145. data/ext/pixo/ext/glm/test/core/core_type_length.cpp +79 -0
  1146. data/ext/pixo/ext/glm/test/core/core_type_mat2x2.cpp +145 -0
  1147. data/ext/pixo/ext/glm/test/core/core_type_mat2x3.cpp +118 -0
  1148. data/ext/pixo/ext/glm/test/core/core_type_mat2x4.cpp +121 -0
  1149. data/ext/pixo/ext/glm/test/core/core_type_mat3x2.cpp +124 -0
  1150. data/ext/pixo/ext/glm/test/core/core_type_mat3x3.cpp +184 -0
  1151. data/ext/pixo/ext/glm/test/core/core_type_mat3x4.cpp +123 -0
  1152. data/ext/pixo/ext/glm/test/core/core_type_mat4x2.cpp +127 -0
  1153. data/ext/pixo/ext/glm/test/core/core_type_mat4x3.cpp +128 -0
  1154. data/ext/pixo/ext/glm/test/core/core_type_mat4x4.cpp +313 -0
  1155. data/ext/pixo/ext/glm/test/core/core_type_vec1.cpp +147 -0
  1156. data/ext/pixo/ext/glm/test/core/core_type_vec2.cpp +312 -0
  1157. data/ext/pixo/ext/glm/test/core/core_type_vec3.cpp +486 -0
  1158. data/ext/pixo/ext/glm/test/core/core_type_vec4.cpp +559 -0
  1159. data/ext/pixo/ext/glm/test/external/gli/CMakeLists.txt +27 -0
  1160. data/ext/pixo/ext/glm/test/external/gli/core/dummy.cpp +4 -0
  1161. data/ext/pixo/ext/glm/test/external/gli/core/generate_mipmaps.hpp +25 -0
  1162. data/ext/pixo/ext/glm/test/external/gli/core/generate_mipmaps.inl +69 -0
  1163. data/ext/pixo/ext/glm/test/external/gli/core/image2d.hpp +169 -0
  1164. data/ext/pixo/ext/glm/test/external/gli/core/image2d.inl +229 -0
  1165. data/ext/pixo/ext/glm/test/external/gli/core/operation.hpp +82 -0
  1166. data/ext/pixo/ext/glm/test/external/gli/core/operation.inl +233 -0
  1167. data/ext/pixo/ext/glm/test/external/gli/core/operator.hpp +28 -0
  1168. data/ext/pixo/ext/glm/test/external/gli/core/operator.inl +210 -0
  1169. data/ext/pixo/ext/glm/test/external/gli/core/shared_array.hpp +48 -0
  1170. data/ext/pixo/ext/glm/test/external/gli/core/shared_array.inl +151 -0
  1171. data/ext/pixo/ext/glm/test/external/gli/core/shared_ptr.hpp +41 -0
  1172. data/ext/pixo/ext/glm/test/external/gli/core/shared_ptr.inl +125 -0
  1173. data/ext/pixo/ext/glm/test/external/gli/core/size.hpp +31 -0
  1174. data/ext/pixo/ext/glm/test/external/gli/core/size.inl +47 -0
  1175. data/ext/pixo/ext/glm/test/external/gli/core/texture2d.hpp +122 -0
  1176. data/ext/pixo/ext/glm/test/external/gli/core/texture2d.inl +304 -0
  1177. data/ext/pixo/ext/glm/test/external/gli/core/texture2d_array.hpp +59 -0
  1178. data/ext/pixo/ext/glm/test/external/gli/core/texture2d_array.inl +78 -0
  1179. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube.hpp +65 -0
  1180. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube.inl +70 -0
  1181. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube_array.hpp +59 -0
  1182. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube_array.inl +72 -0
  1183. data/ext/pixo/ext/glm/test/external/gli/gli.hpp +31 -0
  1184. data/ext/pixo/ext/glm/test/external/gli/gtx/compression.hpp +27 -0
  1185. data/ext/pixo/ext/glm/test/external/gli/gtx/compression.inl +8 -0
  1186. data/ext/pixo/ext/glm/test/external/gli/gtx/fetch.hpp +46 -0
  1187. data/ext/pixo/ext/glm/test/external/gli/gtx/fetch.inl +91 -0
  1188. data/ext/pixo/ext/glm/test/external/gli/gtx/gl_texture2d.hpp +33 -0
  1189. data/ext/pixo/ext/glm/test/external/gli/gtx/gl_texture2d.inl +210 -0
  1190. data/ext/pixo/ext/glm/test/external/gli/gtx/gradient.hpp +38 -0
  1191. data/ext/pixo/ext/glm/test/external/gli/gtx/gradient.inl +74 -0
  1192. data/ext/pixo/ext/glm/test/external/gli/gtx/loader.hpp +37 -0
  1193. data/ext/pixo/ext/glm/test/external/gli/gtx/loader.inl +46 -0
  1194. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds10.hpp +35 -0
  1195. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds10.inl +595 -0
  1196. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds9.hpp +39 -0
  1197. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds9.inl +790 -0
  1198. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_tga.hpp +36 -0
  1199. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_tga.inl +159 -0
  1200. data/ext/pixo/ext/glm/test/external/gli/gtx/wavelet.hpp +27 -0
  1201. data/ext/pixo/ext/glm/test/external/gli/gtx/wavelet.inl +8 -0
  1202. data/ext/pixo/ext/glm/test/glm.cppcheck +6 -0
  1203. data/ext/pixo/ext/glm/test/gtc/CMakeLists.txt +22 -0
  1204. data/ext/pixo/ext/glm/test/gtc/gtc_bitfield.cpp +642 -0
  1205. data/ext/pixo/ext/glm/test/gtc/gtc_color_encoding.cpp +51 -0
  1206. data/ext/pixo/ext/glm/test/gtc/gtc_color_space.cpp +50 -0
  1207. data/ext/pixo/ext/glm/test/gtc/gtc_constants.cpp +28 -0
  1208. data/ext/pixo/ext/glm/test/gtc/gtc_epsilon.cpp +77 -0
  1209. data/ext/pixo/ext/glm/test/gtc/gtc_functions.cpp +35 -0
  1210. data/ext/pixo/ext/glm/test/gtc/gtc_integer.cpp +232 -0
  1211. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_access.cpp +381 -0
  1212. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_integer.cpp +8 -0
  1213. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_inverse.cpp +51 -0
  1214. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_transform.cpp +54 -0
  1215. data/ext/pixo/ext/glm/test/gtc/gtc_noise.cpp +188 -0
  1216. data/ext/pixo/ext/glm/test/gtc/gtc_packing.cpp +682 -0
  1217. data/ext/pixo/ext/glm/test/gtc/gtc_quaternion.cpp +312 -0
  1218. data/ext/pixo/ext/glm/test/gtc/gtc_random.cpp +377 -0
  1219. data/ext/pixo/ext/glm/test/gtc/gtc_reciprocal.cpp +8 -0
  1220. data/ext/pixo/ext/glm/test/gtc/gtc_round.cpp +458 -0
  1221. data/ext/pixo/ext/glm/test/gtc/gtc_type_aligned.cpp +118 -0
  1222. data/ext/pixo/ext/glm/test/gtc/gtc_type_precision.cpp +890 -0
  1223. data/ext/pixo/ext/glm/test/gtc/gtc_type_ptr.cpp +252 -0
  1224. data/ext/pixo/ext/glm/test/gtc/gtc_ulp.cpp +96 -0
  1225. data/ext/pixo/ext/glm/test/gtc/gtc_user_defined_types.cpp +30 -0
  1226. data/ext/pixo/ext/glm/test/gtc/gtc_vec1.cpp +8 -0
  1227. data/ext/pixo/ext/glm/test/gtx/CMakeLists.txt +49 -0
  1228. data/ext/pixo/ext/glm/test/gtx/gtx_associated_min_max.cpp +9 -0
  1229. data/ext/pixo/ext/glm/test/gtx/gtx_closest_point.cpp +8 -0
  1230. data/ext/pixo/ext/glm/test/gtx/gtx_color_space.cpp +19 -0
  1231. data/ext/pixo/ext/glm/test/gtx/gtx_color_space_YCoCg.cpp +8 -0
  1232. data/ext/pixo/ext/glm/test/gtx/gtx_common.cpp +127 -0
  1233. data/ext/pixo/ext/glm/test/gtx/gtx_compatibility.cpp +18 -0
  1234. data/ext/pixo/ext/glm/test/gtx/gtx_component_wise.cpp +115 -0
  1235. data/ext/pixo/ext/glm/test/gtx/gtx_dual_quaternion.cpp +188 -0
  1236. data/ext/pixo/ext/glm/test/gtx/gtx_euler_angle.cpp +328 -0
  1237. data/ext/pixo/ext/glm/test/gtx/gtx_extend.cpp +8 -0
  1238. data/ext/pixo/ext/glm/test/gtx/gtx_extended_min_max.cpp +8 -0
  1239. data/ext/pixo/ext/glm/test/gtx/gtx_extented_min_max.cpp +39 -0
  1240. data/ext/pixo/ext/glm/test/gtx/gtx_fast_exponential.cpp +8 -0
  1241. data/ext/pixo/ext/glm/test/gtx/gtx_fast_square_root.cpp +45 -0
  1242. data/ext/pixo/ext/glm/test/gtx/gtx_fast_trigonometry.cpp +445 -0
  1243. data/ext/pixo/ext/glm/test/gtx/gtx_gradient_paint.cpp +33 -0
  1244. data/ext/pixo/ext/glm/test/gtx/gtx_handed_coordinate_space.cpp +8 -0
  1245. data/ext/pixo/ext/glm/test/gtx/gtx_int_10_10_10_2.cpp +18 -0
  1246. data/ext/pixo/ext/glm/test/gtx/gtx_integer.cpp +64 -0
  1247. data/ext/pixo/ext/glm/test/gtx/gtx_intersect.cpp +8 -0
  1248. data/ext/pixo/ext/glm/test/gtx/gtx_io.cpp +175 -0
  1249. data/ext/pixo/ext/glm/test/gtx/gtx_log_base.cpp +53 -0
  1250. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_cross_product.cpp +8 -0
  1251. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_decompose.cpp +18 -0
  1252. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_interpolation.cpp +10 -0
  1253. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_major_storage.cpp +8 -0
  1254. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_operation.cpp +8 -0
  1255. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_query.cpp +65 -0
  1256. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_transform_2d.cpp +8 -0
  1257. data/ext/pixo/ext/glm/test/gtx/gtx_mixed_product.cpp +18 -0
  1258. data/ext/pixo/ext/glm/test/gtx/gtx_norm.cpp +8 -0
  1259. data/ext/pixo/ext/glm/test/gtx/gtx_normal.cpp +8 -0
  1260. data/ext/pixo/ext/glm/test/gtx/gtx_normalize_dot.cpp +8 -0
  1261. data/ext/pixo/ext/glm/test/gtx/gtx_number_precision.cpp +8 -0
  1262. data/ext/pixo/ext/glm/test/gtx/gtx_optimum_pow.cpp +8 -0
  1263. data/ext/pixo/ext/glm/test/gtx/gtx_orthonormalize.cpp +8 -0
  1264. data/ext/pixo/ext/glm/test/gtx/gtx_perpendicular.cpp +8 -0
  1265. data/ext/pixo/ext/glm/test/gtx/gtx_polar_coordinates.cpp +8 -0
  1266. data/ext/pixo/ext/glm/test/gtx/gtx_projection.cpp +8 -0
  1267. data/ext/pixo/ext/glm/test/gtx/gtx_quaternion.cpp +102 -0
  1268. data/ext/pixo/ext/glm/test/gtx/gtx_random.cpp +99 -0
  1269. data/ext/pixo/ext/glm/test/gtx/gtx_range.cpp +52 -0
  1270. data/ext/pixo/ext/glm/test/gtx/gtx_rotate_normalized_axis.cpp +8 -0
  1271. data/ext/pixo/ext/glm/test/gtx/gtx_rotate_vector.cpp +75 -0
  1272. data/ext/pixo/ext/glm/test/gtx/gtx_scalar_multiplication.cpp +34 -0
  1273. data/ext/pixo/ext/glm/test/gtx/gtx_scalar_relational.cpp +170 -0
  1274. data/ext/pixo/ext/glm/test/gtx/gtx_simd_mat4.cpp +324 -0
  1275. data/ext/pixo/ext/glm/test/gtx/gtx_simd_vec4.cpp +71 -0
  1276. data/ext/pixo/ext/glm/test/gtx/gtx_spline.cpp +99 -0
  1277. data/ext/pixo/ext/glm/test/gtx/gtx_string_cast.cpp +128 -0
  1278. data/ext/pixo/ext/glm/test/gtx/gtx_type_aligned.cpp +113 -0
  1279. data/ext/pixo/ext/glm/test/gtx/gtx_type_trait.cpp +12 -0
  1280. data/ext/pixo/ext/glm/test/gtx/gtx_vector_angle.cpp +58 -0
  1281. data/ext/pixo/ext/glm/test/gtx/gtx_vector_query.cpp +81 -0
  1282. data/ext/pixo/ext/glm/test/gtx/gtx_wrap.cpp +189 -0
  1283. data/ext/pixo/ext/glm/util/autoexp.txt +28 -0
  1284. data/ext/pixo/ext/glm/util/autoexp.vc2010.dat +3896 -0
  1285. data/ext/pixo/ext/glm/util/glm.natvis +69 -0
  1286. data/ext/pixo/ext/glm/util/usertype.dat +407 -0
  1287. data/ext/pixo/ext/tinyobjloader/CMakeLists.txt +146 -0
  1288. data/ext/pixo/ext/tinyobjloader/LICENSE +21 -0
  1289. data/ext/pixo/ext/tinyobjloader/README.md +254 -0
  1290. data/ext/pixo/ext/tinyobjloader/appveyor.yml +22 -0
  1291. data/ext/pixo/ext/tinyobjloader/build.ninja +53 -0
  1292. data/ext/pixo/ext/tinyobjloader/deps/cpplint.py +6323 -0
  1293. data/ext/pixo/ext/tinyobjloader/examples/callback_api/Makefile +2 -0
  1294. data/ext/pixo/ext/tinyobjloader/examples/callback_api/main.cc +166 -0
  1295. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_sticher.cc +110 -0
  1296. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_writer.cc +176 -0
  1297. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_writer.h +9 -0
  1298. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/premake4.lua +38 -0
  1299. data/ext/pixo/ext/tinyobjloader/examples/viewer/README.md +37 -0
  1300. data/ext/pixo/ext/tinyobjloader/examples/viewer/premake4.lua +44 -0
  1301. data/ext/pixo/ext/tinyobjloader/examples/viewer/stb_image.h +6755 -0
  1302. data/ext/pixo/ext/tinyobjloader/examples/viewer/trackball.cc +292 -0
  1303. data/ext/pixo/ext/tinyobjloader/examples/viewer/trackball.h +75 -0
  1304. data/ext/pixo/ext/tinyobjloader/examples/viewer/viewer.cc +698 -0
  1305. data/ext/pixo/ext/tinyobjloader/examples/voxelize/Makefile +2 -0
  1306. data/ext/pixo/ext/tinyobjloader/examples/voxelize/README.md +5 -0
  1307. data/ext/pixo/ext/tinyobjloader/examples/voxelize/main.cc +74 -0
  1308. data/ext/pixo/ext/tinyobjloader/examples/voxelize/voxelizer.h +764 -0
  1309. data/ext/pixo/ext/tinyobjloader/experimental/LICENSE.ltalloc +26 -0
  1310. data/ext/pixo/ext/tinyobjloader/experimental/README.md +5 -0
  1311. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.cc +973 -0
  1312. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.h +14 -0
  1313. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.hpp +59 -0
  1314. data/ext/pixo/ext/tinyobjloader/experimental/premake5.lua +95 -0
  1315. data/ext/pixo/ext/tinyobjloader/experimental/tinyobj_loader_opt.h +1678 -0
  1316. data/ext/pixo/ext/tinyobjloader/experimental/trackball.cc +292 -0
  1317. data/ext/pixo/ext/tinyobjloader/experimental/trackball.h +75 -0
  1318. data/ext/pixo/ext/tinyobjloader/experimental/viewer.cc +748 -0
  1319. data/ext/pixo/ext/tinyobjloader/images/rungholt.jpg +0 -0
  1320. data/ext/pixo/ext/tinyobjloader/images/sanmugel.png +0 -0
  1321. data/ext/pixo/ext/tinyobjloader/jni/Android.mk +12 -0
  1322. data/ext/pixo/ext/tinyobjloader/jni/Application.mk +2 -0
  1323. data/ext/pixo/ext/tinyobjloader/jni/Makefile +2 -0
  1324. data/ext/pixo/ext/tinyobjloader/jni/README +1 -0
  1325. data/ext/pixo/ext/tinyobjloader/loader_example.cc +419 -0
  1326. data/ext/pixo/ext/tinyobjloader/models/catmark_torus_creases0.obj +101 -0
  1327. data/ext/pixo/ext/tinyobjloader/models/cornell_box.mtl +24 -0
  1328. data/ext/pixo/ext/tinyobjloader/models/cornell_box.obj +145 -0
  1329. data/ext/pixo/ext/tinyobjloader/models/cornell_box_multimaterial.obj +146 -0
  1330. data/ext/pixo/ext/tinyobjloader/models/cube.mtl +24 -0
  1331. data/ext/pixo/ext/tinyobjloader/models/cube.obj +31 -0
  1332. data/ext/pixo/ext/tinyobjloader/models/issue-92.mtl +6 -0
  1333. data/ext/pixo/ext/tinyobjloader/models/issue-92.obj +7 -0
  1334. data/ext/pixo/ext/tinyobjloader/models/issue-95-2.mtl +5 -0
  1335. data/ext/pixo/ext/tinyobjloader/models/issue-95-2.obj +7 -0
  1336. data/ext/pixo/ext/tinyobjloader/models/issue-95.mtl +5 -0
  1337. data/ext/pixo/ext/tinyobjloader/models/issue-95.obj +7 -0
  1338. data/ext/pixo/ext/tinyobjloader/models/missing_material_file.obj +145 -0
  1339. data/ext/pixo/ext/tinyobjloader/models/mtllib-multiple-files-issue-112.mtl +6 -0
  1340. data/ext/pixo/ext/tinyobjloader/models/mtllib-multiple-files-issue-112.obj +7 -0
  1341. data/ext/pixo/ext/tinyobjloader/models/no_material.obj +133 -0
  1342. data/ext/pixo/ext/tinyobjloader/models/pbr-mat-ext.mtl +19 -0
  1343. data/ext/pixo/ext/tinyobjloader/models/pbr-mat-ext.obj +10 -0
  1344. data/ext/pixo/ext/tinyobjloader/models/test-nan.obj +145 -0
  1345. data/ext/pixo/ext/tinyobjloader/models/texture-options-issue-85.mtl +36 -0
  1346. data/ext/pixo/ext/tinyobjloader/models/texture-options-issue-85.obj +7 -0
  1347. data/ext/pixo/ext/tinyobjloader/models/tr-and-d-issue-43.mtl +13 -0
  1348. data/ext/pixo/ext/tinyobjloader/models/tr-and-d-issue-43.obj +817 -0
  1349. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-104.obj +30 -0
  1350. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-68.mtl +9 -0
  1351. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-68.obj +817 -0
  1352. data/ext/pixo/ext/tinyobjloader/premake4.lua +29 -0
  1353. data/ext/pixo/ext/tinyobjloader/python/TODO.md +2 -0
  1354. data/ext/pixo/ext/tinyobjloader/python/cornell_box_multimaterial_output.json +581 -0
  1355. data/ext/pixo/ext/tinyobjloader/python/howto.py +9 -0
  1356. data/ext/pixo/ext/tinyobjloader/python/main.cpp +203 -0
  1357. data/ext/pixo/ext/tinyobjloader/python/setup.py +13 -0
  1358. data/ext/pixo/ext/tinyobjloader/tests/Makefile +16 -0
  1359. data/ext/pixo/ext/tinyobjloader/tests/README.md +37 -0
  1360. data/ext/pixo/ext/tinyobjloader/tests/catch.hpp +10445 -0
  1361. data/ext/pixo/ext/tinyobjloader/tests/config-msvc.py +52 -0
  1362. data/ext/pixo/ext/tinyobjloader/tests/config-posix.py +53 -0
  1363. data/ext/pixo/ext/tinyobjloader/tests/kuroga.py +312 -0
  1364. data/ext/pixo/ext/tinyobjloader/tests/tester.cc +588 -0
  1365. data/ext/pixo/ext/tinyobjloader/tests/vcbuild.bat +4 -0
  1366. data/ext/pixo/ext/tinyobjloader/tiny_obj_loader.cc +2 -0
  1367. data/ext/pixo/ext/tinyobjloader/tiny_obj_loader.h +2029 -0
  1368. data/ext/pixo/ext/tinyobjloader/tinyobjloader-config.cmake.in +9 -0
  1369. data/ext/pixo/ext/tinyobjloader/tinyobjloader.pc.in +15 -0
  1370. data/ext/pixo/ext/tinyobjloader/tools/travis_postbuild.sh +12 -0
  1371. data/ext/pixo/ext/tinyobjloader/tools/windows/premake5.exe +0 -0
  1372. data/ext/pixo/ext/tinyobjloader/vcsetup.bat +1 -0
  1373. data/ext/pixo/ext/tinyobjloader/wercker.yml +10 -0
  1374. data/ext/pixo/fadecandy_configs/4x4x4.json +21 -0
  1375. data/ext/pixo/fadecandy_configs/8x8x8.json +18 -0
  1376. data/ext/pixo/patterns/basic.glsl +20 -0
  1377. data/ext/pixo/patterns/bendy_pipes.glsl +116 -0
  1378. data/ext/pixo/patterns/blades.glsl +69 -0
  1379. data/ext/pixo/patterns/blob_neon.glsl +71 -0
  1380. data/ext/pixo/patterns/bubbles.glsl +58 -0
  1381. data/ext/pixo/patterns/chevron.glsl +45 -0
  1382. data/ext/pixo/patterns/clouds.glsl +382 -0
  1383. data/ext/pixo/patterns/cnoise.glsl +162 -0
  1384. data/ext/pixo/patterns/corrente_continua.glsl +51 -0
  1385. data/ext/pixo/patterns/drain.glsl +32 -0
  1386. data/ext/pixo/patterns/dual_spiral.glsl +21 -0
  1387. data/ext/pixo/patterns/ether.glsl +35 -0
  1388. data/ext/pixo/patterns/fire.glsl +56 -0
  1389. data/ext/pixo/patterns/fireball.glsl +229 -0
  1390. data/ext/pixo/patterns/flame.glsl +101 -0
  1391. data/ext/pixo/patterns/flower.glsl +27 -0
  1392. data/ext/pixo/patterns/galaxy.glsl +50 -0
  1393. data/ext/pixo/patterns/goop.glsl +117 -0
  1394. data/ext/pixo/patterns/hypno_rings.glsl +13 -0
  1395. data/ext/pixo/patterns/lightning.glsl +111 -0
  1396. data/ext/pixo/patterns/paint.glsl +39 -0
  1397. data/ext/pixo/patterns/plad.glsl +22 -0
  1398. data/ext/pixo/patterns/plasam.glsl +30 -0
  1399. data/ext/pixo/patterns/plasma_globe.glsl +215 -0
  1400. data/ext/pixo/patterns/pulse.glsl +44 -0
  1401. data/ext/pixo/patterns/pulsing_circles.glsl +32 -0
  1402. data/ext/pixo/patterns/rainbow_ribbon.glsl +41 -0
  1403. data/ext/pixo/patterns/rings.glsl +62 -0
  1404. data/ext/pixo/patterns/sauron.glsl +220 -0
  1405. data/ext/pixo/patterns/scales.glsl +64 -0
  1406. data/ext/pixo/patterns/soccer.glsl +737 -0
  1407. data/ext/pixo/patterns/spherical_polyhedra.glsl +251 -0
  1408. data/ext/pixo/patterns/spiral.glsl +23 -0
  1409. data/ext/pixo/patterns/star.glsl +518 -0
  1410. data/ext/pixo/patterns/tiedy.glsl +39 -0
  1411. data/ext/pixo/patterns/tunnel.glsl +145 -0
  1412. data/ext/pixo/patterns/warping_grid.glsl +50 -0
  1413. data/ext/pixo/pixlib/CMakeLists.txt +34 -0
  1414. data/ext/pixo/pixlib/include/opc_client.h +205 -0
  1415. data/ext/pixo/pixlib/include/pixlib/app.hpp +41 -0
  1416. data/ext/pixo/pixlib/include/pixlib/camera.hpp +78 -0
  1417. data/ext/pixo/pixlib/include/pixlib/cube.hpp +46 -0
  1418. data/ext/pixo/pixlib/include/pixlib/drawable.hpp +11 -0
  1419. data/ext/pixo/pixlib/include/pixlib/fade_candy.hpp +38 -0
  1420. data/ext/pixo/pixlib/include/pixlib/led_cluster.hpp +58 -0
  1421. data/ext/pixo/pixlib/include/pixlib/led_mesh.hpp +60 -0
  1422. data/ext/pixo/pixlib/include/pixlib/led_renderer.hpp +36 -0
  1423. data/ext/pixo/pixlib/include/pixlib/mesh.hpp +56 -0
  1424. data/ext/pixo/pixlib/include/pixlib/pattern.hpp +21 -0
  1425. data/ext/pixo/pixlib/include/pixlib/pattern_renderer.hpp +28 -0
  1426. data/ext/pixo/pixlib/include/pixlib/renderer.hpp +32 -0
  1427. data/ext/pixo/pixlib/include/pixlib/scene.hpp +39 -0
  1428. data/ext/pixo/pixlib/include/pixlib/shader.hpp +19 -0
  1429. data/ext/pixo/pixlib/include/pixlib/texture.hpp +34 -0
  1430. data/ext/pixo/pixlib/include/pixlib/timer.hpp +19 -0
  1431. data/ext/pixo/pixlib/include/pixlib.hpp +6 -0
  1432. data/ext/pixo/pixlib/src/app.cpp +59 -0
  1433. data/ext/pixo/pixlib/src/camera.cpp +106 -0
  1434. data/ext/pixo/pixlib/src/cube.cpp +100 -0
  1435. data/ext/pixo/pixlib/src/fade_candy.cpp +70 -0
  1436. data/ext/pixo/pixlib/src/led_cluster.cpp +78 -0
  1437. data/ext/pixo/pixlib/src/led_mesh.cpp +123 -0
  1438. data/ext/pixo/pixlib/src/led_renderer.cpp +135 -0
  1439. data/ext/pixo/pixlib/src/mesh.cpp +146 -0
  1440. data/ext/pixo/pixlib/src/pattern.cpp +32 -0
  1441. data/ext/pixo/pixlib/src/pattern_renderer.cpp +103 -0
  1442. data/ext/pixo/pixlib/src/renderer.cpp +127 -0
  1443. data/ext/pixo/pixlib/src/scene.cpp +52 -0
  1444. data/ext/pixo/pixlib/src/shader.cpp +59 -0
  1445. data/ext/pixo/pixlib/src/texture.cpp +62 -0
  1446. data/ext/pixo/pixlib/src/timer.cpp +39 -0
  1447. data/ext/pixo/src/CMakeLists.txt +14 -0
  1448. data/ext/pixo/src/main.cpp +244 -0
  1449. data/ext/pixo/src/opengl.h +4 -0
  1450. data/lib/pixo/version.rb +3 -0
  1451. data/lib/pixo.rb +7 -0
  1452. data/pixo.gemspec +34 -0
  1453. data/pkg/pixo-0.1.0.gem +0 -0
  1454. metadata +1539 -0
@@ -0,0 +1,3835 @@
1
+ #ifndef VULKAN_H_
2
+ #define VULKAN_H_ 1
3
+
4
+ #ifdef __cplusplus
5
+ extern "C" {
6
+ #endif
7
+
8
+ /*
9
+ ** Copyright (c) 2015-2016 The Khronos Group Inc.
10
+ **
11
+ ** Licensed under the Apache License, Version 2.0 (the "License");
12
+ ** you may not use this file except in compliance with the License.
13
+ ** You may obtain a copy of the License at
14
+ **
15
+ ** http://www.apache.org/licenses/LICENSE-2.0
16
+ **
17
+ ** Unless required by applicable law or agreed to in writing, software
18
+ ** distributed under the License is distributed on an "AS IS" BASIS,
19
+ ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ ** See the License for the specific language governing permissions and
21
+ ** limitations under the License.
22
+ */
23
+
24
+ /*
25
+ ** This header is generated from the Khronos Vulkan XML API Registry.
26
+ **
27
+ */
28
+
29
+
30
+ #define VK_VERSION_1_0 1
31
+ #include "vk_platform.h"
32
+
33
+ #define VK_MAKE_VERSION(major, minor, patch) \
34
+ (((major) << 22) | ((minor) << 12) | (patch))
35
+
36
+ // DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead.
37
+ //#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 0)
38
+
39
+ // Vulkan 1.0 version number
40
+ #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)
41
+
42
+ #define VK_VERSION_MAJOR(version) ((uint32_t)(version) >> 22)
43
+ #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
44
+ #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
45
+ // Version of this file
46
+ #define VK_HEADER_VERSION 11
47
+
48
+
49
+ #define VK_NULL_HANDLE 0
50
+
51
+
52
+
53
+ #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
54
+
55
+
56
+ #if defined(__LP64__) || defined(_WIN64) || defined(__x86_64__) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)
57
+ #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object;
58
+ #else
59
+ #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;
60
+ #endif
61
+
62
+
63
+
64
+ typedef uint32_t VkFlags;
65
+ typedef uint32_t VkBool32;
66
+ typedef uint64_t VkDeviceSize;
67
+ typedef uint32_t VkSampleMask;
68
+
69
+ VK_DEFINE_HANDLE(VkInstance)
70
+ VK_DEFINE_HANDLE(VkPhysicalDevice)
71
+ VK_DEFINE_HANDLE(VkDevice)
72
+ VK_DEFINE_HANDLE(VkQueue)
73
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)
74
+ VK_DEFINE_HANDLE(VkCommandBuffer)
75
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence)
76
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)
77
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer)
78
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)
79
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent)
80
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool)
81
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView)
82
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView)
83
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)
84
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)
85
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout)
86
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)
87
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline)
88
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout)
89
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)
90
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)
91
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)
92
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)
93
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)
94
+
95
+ #define VK_LOD_CLAMP_NONE 1000.0f
96
+ #define VK_REMAINING_MIP_LEVELS (~0U)
97
+ #define VK_REMAINING_ARRAY_LAYERS (~0U)
98
+ #define VK_WHOLE_SIZE (~0ULL)
99
+ #define VK_ATTACHMENT_UNUSED (~0U)
100
+ #define VK_TRUE 1
101
+ #define VK_FALSE 0
102
+ #define VK_QUEUE_FAMILY_IGNORED (~0U)
103
+ #define VK_SUBPASS_EXTERNAL (~0U)
104
+ #define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256
105
+ #define VK_UUID_SIZE 16
106
+ #define VK_MAX_MEMORY_TYPES 32
107
+ #define VK_MAX_MEMORY_HEAPS 16
108
+ #define VK_MAX_EXTENSION_NAME_SIZE 256
109
+ #define VK_MAX_DESCRIPTION_SIZE 256
110
+
111
+
112
+ typedef enum VkPipelineCacheHeaderVersion {
113
+ VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,
114
+ VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,
115
+ VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,
116
+ VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1),
117
+ VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF
118
+ } VkPipelineCacheHeaderVersion;
119
+
120
+ typedef enum VkResult {
121
+ VK_SUCCESS = 0,
122
+ VK_NOT_READY = 1,
123
+ VK_TIMEOUT = 2,
124
+ VK_EVENT_SET = 3,
125
+ VK_EVENT_RESET = 4,
126
+ VK_INCOMPLETE = 5,
127
+ VK_ERROR_OUT_OF_HOST_MEMORY = -1,
128
+ VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,
129
+ VK_ERROR_INITIALIZATION_FAILED = -3,
130
+ VK_ERROR_DEVICE_LOST = -4,
131
+ VK_ERROR_MEMORY_MAP_FAILED = -5,
132
+ VK_ERROR_LAYER_NOT_PRESENT = -6,
133
+ VK_ERROR_EXTENSION_NOT_PRESENT = -7,
134
+ VK_ERROR_FEATURE_NOT_PRESENT = -8,
135
+ VK_ERROR_INCOMPATIBLE_DRIVER = -9,
136
+ VK_ERROR_TOO_MANY_OBJECTS = -10,
137
+ VK_ERROR_FORMAT_NOT_SUPPORTED = -11,
138
+ VK_ERROR_SURFACE_LOST_KHR = -1000000000,
139
+ VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,
140
+ VK_SUBOPTIMAL_KHR = 1000001003,
141
+ VK_ERROR_OUT_OF_DATE_KHR = -1000001004,
142
+ VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
143
+ VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
144
+ VK_ERROR_INVALID_SHADER_NV = -1000012000,
145
+ VK_RESULT_BEGIN_RANGE = VK_ERROR_FORMAT_NOT_SUPPORTED,
146
+ VK_RESULT_END_RANGE = VK_INCOMPLETE,
147
+ VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FORMAT_NOT_SUPPORTED + 1),
148
+ VK_RESULT_MAX_ENUM = 0x7FFFFFFF
149
+ } VkResult;
150
+
151
+ typedef enum VkStructureType {
152
+ VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,
153
+ VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,
154
+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,
155
+ VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,
156
+ VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
157
+ VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,
158
+ VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
159
+ VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
160
+ VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
161
+ VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
162
+ VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
163
+ VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,
164
+ VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,
165
+ VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
166
+ VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
167
+ VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
168
+ VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
169
+ VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,
170
+ VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,
171
+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,
172
+ VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20,
173
+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21,
174
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22,
175
+ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23,
176
+ VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24,
177
+ VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25,
178
+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26,
179
+ VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27,
180
+ VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28,
181
+ VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29,
182
+ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30,
183
+ VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31,
184
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32,
185
+ VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,
186
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34,
187
+ VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35,
188
+ VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36,
189
+ VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37,
190
+ VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38,
191
+ VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39,
192
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40,
193
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41,
194
+ VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42,
195
+ VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,
196
+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,
197
+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,
198
+ VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,
199
+ VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47,
200
+ VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48,
201
+ VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000,
202
+ VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001,
203
+ VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000,
204
+ VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001,
205
+ VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000,
206
+ VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,
207
+ VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,
208
+ VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,
209
+ VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000,
210
+ VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,
211
+ VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,
212
+ VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,
213
+ VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,
214
+ VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
215
+ VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
216
+ VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
217
+ } VkStructureType;
218
+
219
+ typedef enum VkSystemAllocationScope {
220
+ VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0,
221
+ VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1,
222
+ VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2,
223
+ VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3,
224
+ VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4,
225
+ VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,
226
+ VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE,
227
+ VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1),
228
+ VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF
229
+ } VkSystemAllocationScope;
230
+
231
+ typedef enum VkInternalAllocationType {
232
+ VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0,
233
+ VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,
234
+ VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,
235
+ VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1),
236
+ VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF
237
+ } VkInternalAllocationType;
238
+
239
+ typedef enum VkFormat {
240
+ VK_FORMAT_UNDEFINED = 0,
241
+ VK_FORMAT_R4G4_UNORM_PACK8 = 1,
242
+ VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2,
243
+ VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3,
244
+ VK_FORMAT_R5G6B5_UNORM_PACK16 = 4,
245
+ VK_FORMAT_B5G6R5_UNORM_PACK16 = 5,
246
+ VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6,
247
+ VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7,
248
+ VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8,
249
+ VK_FORMAT_R8_UNORM = 9,
250
+ VK_FORMAT_R8_SNORM = 10,
251
+ VK_FORMAT_R8_USCALED = 11,
252
+ VK_FORMAT_R8_SSCALED = 12,
253
+ VK_FORMAT_R8_UINT = 13,
254
+ VK_FORMAT_R8_SINT = 14,
255
+ VK_FORMAT_R8_SRGB = 15,
256
+ VK_FORMAT_R8G8_UNORM = 16,
257
+ VK_FORMAT_R8G8_SNORM = 17,
258
+ VK_FORMAT_R8G8_USCALED = 18,
259
+ VK_FORMAT_R8G8_SSCALED = 19,
260
+ VK_FORMAT_R8G8_UINT = 20,
261
+ VK_FORMAT_R8G8_SINT = 21,
262
+ VK_FORMAT_R8G8_SRGB = 22,
263
+ VK_FORMAT_R8G8B8_UNORM = 23,
264
+ VK_FORMAT_R8G8B8_SNORM = 24,
265
+ VK_FORMAT_R8G8B8_USCALED = 25,
266
+ VK_FORMAT_R8G8B8_SSCALED = 26,
267
+ VK_FORMAT_R8G8B8_UINT = 27,
268
+ VK_FORMAT_R8G8B8_SINT = 28,
269
+ VK_FORMAT_R8G8B8_SRGB = 29,
270
+ VK_FORMAT_B8G8R8_UNORM = 30,
271
+ VK_FORMAT_B8G8R8_SNORM = 31,
272
+ VK_FORMAT_B8G8R8_USCALED = 32,
273
+ VK_FORMAT_B8G8R8_SSCALED = 33,
274
+ VK_FORMAT_B8G8R8_UINT = 34,
275
+ VK_FORMAT_B8G8R8_SINT = 35,
276
+ VK_FORMAT_B8G8R8_SRGB = 36,
277
+ VK_FORMAT_R8G8B8A8_UNORM = 37,
278
+ VK_FORMAT_R8G8B8A8_SNORM = 38,
279
+ VK_FORMAT_R8G8B8A8_USCALED = 39,
280
+ VK_FORMAT_R8G8B8A8_SSCALED = 40,
281
+ VK_FORMAT_R8G8B8A8_UINT = 41,
282
+ VK_FORMAT_R8G8B8A8_SINT = 42,
283
+ VK_FORMAT_R8G8B8A8_SRGB = 43,
284
+ VK_FORMAT_B8G8R8A8_UNORM = 44,
285
+ VK_FORMAT_B8G8R8A8_SNORM = 45,
286
+ VK_FORMAT_B8G8R8A8_USCALED = 46,
287
+ VK_FORMAT_B8G8R8A8_SSCALED = 47,
288
+ VK_FORMAT_B8G8R8A8_UINT = 48,
289
+ VK_FORMAT_B8G8R8A8_SINT = 49,
290
+ VK_FORMAT_B8G8R8A8_SRGB = 50,
291
+ VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51,
292
+ VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52,
293
+ VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53,
294
+ VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54,
295
+ VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55,
296
+ VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56,
297
+ VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57,
298
+ VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58,
299
+ VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59,
300
+ VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60,
301
+ VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61,
302
+ VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62,
303
+ VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63,
304
+ VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64,
305
+ VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65,
306
+ VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66,
307
+ VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67,
308
+ VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68,
309
+ VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69,
310
+ VK_FORMAT_R16_UNORM = 70,
311
+ VK_FORMAT_R16_SNORM = 71,
312
+ VK_FORMAT_R16_USCALED = 72,
313
+ VK_FORMAT_R16_SSCALED = 73,
314
+ VK_FORMAT_R16_UINT = 74,
315
+ VK_FORMAT_R16_SINT = 75,
316
+ VK_FORMAT_R16_SFLOAT = 76,
317
+ VK_FORMAT_R16G16_UNORM = 77,
318
+ VK_FORMAT_R16G16_SNORM = 78,
319
+ VK_FORMAT_R16G16_USCALED = 79,
320
+ VK_FORMAT_R16G16_SSCALED = 80,
321
+ VK_FORMAT_R16G16_UINT = 81,
322
+ VK_FORMAT_R16G16_SINT = 82,
323
+ VK_FORMAT_R16G16_SFLOAT = 83,
324
+ VK_FORMAT_R16G16B16_UNORM = 84,
325
+ VK_FORMAT_R16G16B16_SNORM = 85,
326
+ VK_FORMAT_R16G16B16_USCALED = 86,
327
+ VK_FORMAT_R16G16B16_SSCALED = 87,
328
+ VK_FORMAT_R16G16B16_UINT = 88,
329
+ VK_FORMAT_R16G16B16_SINT = 89,
330
+ VK_FORMAT_R16G16B16_SFLOAT = 90,
331
+ VK_FORMAT_R16G16B16A16_UNORM = 91,
332
+ VK_FORMAT_R16G16B16A16_SNORM = 92,
333
+ VK_FORMAT_R16G16B16A16_USCALED = 93,
334
+ VK_FORMAT_R16G16B16A16_SSCALED = 94,
335
+ VK_FORMAT_R16G16B16A16_UINT = 95,
336
+ VK_FORMAT_R16G16B16A16_SINT = 96,
337
+ VK_FORMAT_R16G16B16A16_SFLOAT = 97,
338
+ VK_FORMAT_R32_UINT = 98,
339
+ VK_FORMAT_R32_SINT = 99,
340
+ VK_FORMAT_R32_SFLOAT = 100,
341
+ VK_FORMAT_R32G32_UINT = 101,
342
+ VK_FORMAT_R32G32_SINT = 102,
343
+ VK_FORMAT_R32G32_SFLOAT = 103,
344
+ VK_FORMAT_R32G32B32_UINT = 104,
345
+ VK_FORMAT_R32G32B32_SINT = 105,
346
+ VK_FORMAT_R32G32B32_SFLOAT = 106,
347
+ VK_FORMAT_R32G32B32A32_UINT = 107,
348
+ VK_FORMAT_R32G32B32A32_SINT = 108,
349
+ VK_FORMAT_R32G32B32A32_SFLOAT = 109,
350
+ VK_FORMAT_R64_UINT = 110,
351
+ VK_FORMAT_R64_SINT = 111,
352
+ VK_FORMAT_R64_SFLOAT = 112,
353
+ VK_FORMAT_R64G64_UINT = 113,
354
+ VK_FORMAT_R64G64_SINT = 114,
355
+ VK_FORMAT_R64G64_SFLOAT = 115,
356
+ VK_FORMAT_R64G64B64_UINT = 116,
357
+ VK_FORMAT_R64G64B64_SINT = 117,
358
+ VK_FORMAT_R64G64B64_SFLOAT = 118,
359
+ VK_FORMAT_R64G64B64A64_UINT = 119,
360
+ VK_FORMAT_R64G64B64A64_SINT = 120,
361
+ VK_FORMAT_R64G64B64A64_SFLOAT = 121,
362
+ VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122,
363
+ VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123,
364
+ VK_FORMAT_D16_UNORM = 124,
365
+ VK_FORMAT_X8_D24_UNORM_PACK32 = 125,
366
+ VK_FORMAT_D32_SFLOAT = 126,
367
+ VK_FORMAT_S8_UINT = 127,
368
+ VK_FORMAT_D16_UNORM_S8_UINT = 128,
369
+ VK_FORMAT_D24_UNORM_S8_UINT = 129,
370
+ VK_FORMAT_D32_SFLOAT_S8_UINT = 130,
371
+ VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131,
372
+ VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132,
373
+ VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133,
374
+ VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134,
375
+ VK_FORMAT_BC2_UNORM_BLOCK = 135,
376
+ VK_FORMAT_BC2_SRGB_BLOCK = 136,
377
+ VK_FORMAT_BC3_UNORM_BLOCK = 137,
378
+ VK_FORMAT_BC3_SRGB_BLOCK = 138,
379
+ VK_FORMAT_BC4_UNORM_BLOCK = 139,
380
+ VK_FORMAT_BC4_SNORM_BLOCK = 140,
381
+ VK_FORMAT_BC5_UNORM_BLOCK = 141,
382
+ VK_FORMAT_BC5_SNORM_BLOCK = 142,
383
+ VK_FORMAT_BC6H_UFLOAT_BLOCK = 143,
384
+ VK_FORMAT_BC6H_SFLOAT_BLOCK = 144,
385
+ VK_FORMAT_BC7_UNORM_BLOCK = 145,
386
+ VK_FORMAT_BC7_SRGB_BLOCK = 146,
387
+ VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147,
388
+ VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148,
389
+ VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149,
390
+ VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150,
391
+ VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151,
392
+ VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152,
393
+ VK_FORMAT_EAC_R11_UNORM_BLOCK = 153,
394
+ VK_FORMAT_EAC_R11_SNORM_BLOCK = 154,
395
+ VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155,
396
+ VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156,
397
+ VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157,
398
+ VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158,
399
+ VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159,
400
+ VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160,
401
+ VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161,
402
+ VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162,
403
+ VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163,
404
+ VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164,
405
+ VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165,
406
+ VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166,
407
+ VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167,
408
+ VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168,
409
+ VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169,
410
+ VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170,
411
+ VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171,
412
+ VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172,
413
+ VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173,
414
+ VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174,
415
+ VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175,
416
+ VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176,
417
+ VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177,
418
+ VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178,
419
+ VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179,
420
+ VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180,
421
+ VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181,
422
+ VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,
423
+ VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,
424
+ VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,
425
+ VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED,
426
+ VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
427
+ VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1),
428
+ VK_FORMAT_MAX_ENUM = 0x7FFFFFFF
429
+ } VkFormat;
430
+
431
+ typedef enum VkImageType {
432
+ VK_IMAGE_TYPE_1D = 0,
433
+ VK_IMAGE_TYPE_2D = 1,
434
+ VK_IMAGE_TYPE_3D = 2,
435
+ VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D,
436
+ VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D,
437
+ VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1),
438
+ VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF
439
+ } VkImageType;
440
+
441
+ typedef enum VkImageTiling {
442
+ VK_IMAGE_TILING_OPTIMAL = 0,
443
+ VK_IMAGE_TILING_LINEAR = 1,
444
+ VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,
445
+ VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,
446
+ VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1),
447
+ VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF
448
+ } VkImageTiling;
449
+
450
+ typedef enum VkPhysicalDeviceType {
451
+ VK_PHYSICAL_DEVICE_TYPE_OTHER = 0,
452
+ VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1,
453
+ VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2,
454
+ VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3,
455
+ VK_PHYSICAL_DEVICE_TYPE_CPU = 4,
456
+ VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER,
457
+ VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU,
458
+ VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1),
459
+ VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF
460
+ } VkPhysicalDeviceType;
461
+
462
+ typedef enum VkQueryType {
463
+ VK_QUERY_TYPE_OCCLUSION = 0,
464
+ VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
465
+ VK_QUERY_TYPE_TIMESTAMP = 2,
466
+ VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,
467
+ VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,
468
+ VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),
469
+ VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
470
+ } VkQueryType;
471
+
472
+ typedef enum VkSharingMode {
473
+ VK_SHARING_MODE_EXCLUSIVE = 0,
474
+ VK_SHARING_MODE_CONCURRENT = 1,
475
+ VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE,
476
+ VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT,
477
+ VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1),
478
+ VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF
479
+ } VkSharingMode;
480
+
481
+ typedef enum VkImageLayout {
482
+ VK_IMAGE_LAYOUT_UNDEFINED = 0,
483
+ VK_IMAGE_LAYOUT_GENERAL = 1,
484
+ VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2,
485
+ VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3,
486
+ VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4,
487
+ VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5,
488
+ VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6,
489
+ VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7,
490
+ VK_IMAGE_LAYOUT_PREINITIALIZED = 8,
491
+ VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002,
492
+ VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED,
493
+ VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED,
494
+ VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1),
495
+ VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF
496
+ } VkImageLayout;
497
+
498
+ typedef enum VkImageViewType {
499
+ VK_IMAGE_VIEW_TYPE_1D = 0,
500
+ VK_IMAGE_VIEW_TYPE_2D = 1,
501
+ VK_IMAGE_VIEW_TYPE_3D = 2,
502
+ VK_IMAGE_VIEW_TYPE_CUBE = 3,
503
+ VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4,
504
+ VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5,
505
+ VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6,
506
+ VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D,
507
+ VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,
508
+ VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1),
509
+ VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF
510
+ } VkImageViewType;
511
+
512
+ typedef enum VkComponentSwizzle {
513
+ VK_COMPONENT_SWIZZLE_IDENTITY = 0,
514
+ VK_COMPONENT_SWIZZLE_ZERO = 1,
515
+ VK_COMPONENT_SWIZZLE_ONE = 2,
516
+ VK_COMPONENT_SWIZZLE_R = 3,
517
+ VK_COMPONENT_SWIZZLE_G = 4,
518
+ VK_COMPONENT_SWIZZLE_B = 5,
519
+ VK_COMPONENT_SWIZZLE_A = 6,
520
+ VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY,
521
+ VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A,
522
+ VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1),
523
+ VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF
524
+ } VkComponentSwizzle;
525
+
526
+ typedef enum VkVertexInputRate {
527
+ VK_VERTEX_INPUT_RATE_VERTEX = 0,
528
+ VK_VERTEX_INPUT_RATE_INSTANCE = 1,
529
+ VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX,
530
+ VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE,
531
+ VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1),
532
+ VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF
533
+ } VkVertexInputRate;
534
+
535
+ typedef enum VkPrimitiveTopology {
536
+ VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0,
537
+ VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1,
538
+ VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2,
539
+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3,
540
+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4,
541
+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5,
542
+ VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6,
543
+ VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7,
544
+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8,
545
+ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9,
546
+ VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10,
547
+ VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,
548
+ VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST,
549
+ VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1),
550
+ VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF
551
+ } VkPrimitiveTopology;
552
+
553
+ typedef enum VkPolygonMode {
554
+ VK_POLYGON_MODE_FILL = 0,
555
+ VK_POLYGON_MODE_LINE = 1,
556
+ VK_POLYGON_MODE_POINT = 2,
557
+ VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL,
558
+ VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT,
559
+ VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1),
560
+ VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF
561
+ } VkPolygonMode;
562
+
563
+ typedef enum VkFrontFace {
564
+ VK_FRONT_FACE_COUNTER_CLOCKWISE = 0,
565
+ VK_FRONT_FACE_CLOCKWISE = 1,
566
+ VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE,
567
+ VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE,
568
+ VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1),
569
+ VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF
570
+ } VkFrontFace;
571
+
572
+ typedef enum VkCompareOp {
573
+ VK_COMPARE_OP_NEVER = 0,
574
+ VK_COMPARE_OP_LESS = 1,
575
+ VK_COMPARE_OP_EQUAL = 2,
576
+ VK_COMPARE_OP_LESS_OR_EQUAL = 3,
577
+ VK_COMPARE_OP_GREATER = 4,
578
+ VK_COMPARE_OP_NOT_EQUAL = 5,
579
+ VK_COMPARE_OP_GREATER_OR_EQUAL = 6,
580
+ VK_COMPARE_OP_ALWAYS = 7,
581
+ VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER,
582
+ VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS,
583
+ VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1),
584
+ VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF
585
+ } VkCompareOp;
586
+
587
+ typedef enum VkStencilOp {
588
+ VK_STENCIL_OP_KEEP = 0,
589
+ VK_STENCIL_OP_ZERO = 1,
590
+ VK_STENCIL_OP_REPLACE = 2,
591
+ VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3,
592
+ VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4,
593
+ VK_STENCIL_OP_INVERT = 5,
594
+ VK_STENCIL_OP_INCREMENT_AND_WRAP = 6,
595
+ VK_STENCIL_OP_DECREMENT_AND_WRAP = 7,
596
+ VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP,
597
+ VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP,
598
+ VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1),
599
+ VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF
600
+ } VkStencilOp;
601
+
602
+ typedef enum VkLogicOp {
603
+ VK_LOGIC_OP_CLEAR = 0,
604
+ VK_LOGIC_OP_AND = 1,
605
+ VK_LOGIC_OP_AND_REVERSE = 2,
606
+ VK_LOGIC_OP_COPY = 3,
607
+ VK_LOGIC_OP_AND_INVERTED = 4,
608
+ VK_LOGIC_OP_NO_OP = 5,
609
+ VK_LOGIC_OP_XOR = 6,
610
+ VK_LOGIC_OP_OR = 7,
611
+ VK_LOGIC_OP_NOR = 8,
612
+ VK_LOGIC_OP_EQUIVALENT = 9,
613
+ VK_LOGIC_OP_INVERT = 10,
614
+ VK_LOGIC_OP_OR_REVERSE = 11,
615
+ VK_LOGIC_OP_COPY_INVERTED = 12,
616
+ VK_LOGIC_OP_OR_INVERTED = 13,
617
+ VK_LOGIC_OP_NAND = 14,
618
+ VK_LOGIC_OP_SET = 15,
619
+ VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR,
620
+ VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET,
621
+ VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1),
622
+ VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF
623
+ } VkLogicOp;
624
+
625
+ typedef enum VkBlendFactor {
626
+ VK_BLEND_FACTOR_ZERO = 0,
627
+ VK_BLEND_FACTOR_ONE = 1,
628
+ VK_BLEND_FACTOR_SRC_COLOR = 2,
629
+ VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3,
630
+ VK_BLEND_FACTOR_DST_COLOR = 4,
631
+ VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5,
632
+ VK_BLEND_FACTOR_SRC_ALPHA = 6,
633
+ VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7,
634
+ VK_BLEND_FACTOR_DST_ALPHA = 8,
635
+ VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9,
636
+ VK_BLEND_FACTOR_CONSTANT_COLOR = 10,
637
+ VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11,
638
+ VK_BLEND_FACTOR_CONSTANT_ALPHA = 12,
639
+ VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13,
640
+ VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14,
641
+ VK_BLEND_FACTOR_SRC1_COLOR = 15,
642
+ VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16,
643
+ VK_BLEND_FACTOR_SRC1_ALPHA = 17,
644
+ VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18,
645
+ VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO,
646
+ VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA,
647
+ VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1),
648
+ VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF
649
+ } VkBlendFactor;
650
+
651
+ typedef enum VkBlendOp {
652
+ VK_BLEND_OP_ADD = 0,
653
+ VK_BLEND_OP_SUBTRACT = 1,
654
+ VK_BLEND_OP_REVERSE_SUBTRACT = 2,
655
+ VK_BLEND_OP_MIN = 3,
656
+ VK_BLEND_OP_MAX = 4,
657
+ VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD,
658
+ VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX,
659
+ VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1),
660
+ VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF
661
+ } VkBlendOp;
662
+
663
+ typedef enum VkDynamicState {
664
+ VK_DYNAMIC_STATE_VIEWPORT = 0,
665
+ VK_DYNAMIC_STATE_SCISSOR = 1,
666
+ VK_DYNAMIC_STATE_LINE_WIDTH = 2,
667
+ VK_DYNAMIC_STATE_DEPTH_BIAS = 3,
668
+ VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,
669
+ VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,
670
+ VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,
671
+ VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,
672
+ VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,
673
+ VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT,
674
+ VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE,
675
+ VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1),
676
+ VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
677
+ } VkDynamicState;
678
+
679
+ typedef enum VkFilter {
680
+ VK_FILTER_NEAREST = 0,
681
+ VK_FILTER_LINEAR = 1,
682
+ VK_FILTER_CUBIC_IMG = 1000015000,
683
+ VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,
684
+ VK_FILTER_END_RANGE = VK_FILTER_LINEAR,
685
+ VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),
686
+ VK_FILTER_MAX_ENUM = 0x7FFFFFFF
687
+ } VkFilter;
688
+
689
+ typedef enum VkSamplerMipmapMode {
690
+ VK_SAMPLER_MIPMAP_MODE_NEAREST = 0,
691
+ VK_SAMPLER_MIPMAP_MODE_LINEAR = 1,
692
+ VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST,
693
+ VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR,
694
+ VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1),
695
+ VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF
696
+ } VkSamplerMipmapMode;
697
+
698
+ typedef enum VkSamplerAddressMode {
699
+ VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,
700
+ VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,
701
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,
702
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,
703
+ VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,
704
+ VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT,
705
+ VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,
706
+ VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1),
707
+ VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF
708
+ } VkSamplerAddressMode;
709
+
710
+ typedef enum VkBorderColor {
711
+ VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0,
712
+ VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1,
713
+ VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2,
714
+ VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3,
715
+ VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4,
716
+ VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5,
717
+ VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,
718
+ VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE,
719
+ VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1),
720
+ VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF
721
+ } VkBorderColor;
722
+
723
+ typedef enum VkDescriptorType {
724
+ VK_DESCRIPTOR_TYPE_SAMPLER = 0,
725
+ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1,
726
+ VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2,
727
+ VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3,
728
+ VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4,
729
+ VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5,
730
+ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6,
731
+ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7,
732
+ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8,
733
+ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,
734
+ VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,
735
+ VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,
736
+ VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
737
+ VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),
738
+ VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
739
+ } VkDescriptorType;
740
+
741
+ typedef enum VkAttachmentLoadOp {
742
+ VK_ATTACHMENT_LOAD_OP_LOAD = 0,
743
+ VK_ATTACHMENT_LOAD_OP_CLEAR = 1,
744
+ VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2,
745
+ VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD,
746
+ VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE,
747
+ VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1),
748
+ VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF
749
+ } VkAttachmentLoadOp;
750
+
751
+ typedef enum VkAttachmentStoreOp {
752
+ VK_ATTACHMENT_STORE_OP_STORE = 0,
753
+ VK_ATTACHMENT_STORE_OP_DONT_CARE = 1,
754
+ VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE,
755
+ VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE,
756
+ VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1),
757
+ VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF
758
+ } VkAttachmentStoreOp;
759
+
760
+ typedef enum VkPipelineBindPoint {
761
+ VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
762
+ VK_PIPELINE_BIND_POINT_COMPUTE = 1,
763
+ VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,
764
+ VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,
765
+ VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),
766
+ VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF
767
+ } VkPipelineBindPoint;
768
+
769
+ typedef enum VkCommandBufferLevel {
770
+ VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0,
771
+ VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1,
772
+ VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY,
773
+ VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY,
774
+ VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1),
775
+ VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF
776
+ } VkCommandBufferLevel;
777
+
778
+ typedef enum VkIndexType {
779
+ VK_INDEX_TYPE_UINT16 = 0,
780
+ VK_INDEX_TYPE_UINT32 = 1,
781
+ VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,
782
+ VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,
783
+ VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),
784
+ VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF
785
+ } VkIndexType;
786
+
787
+ typedef enum VkSubpassContents {
788
+ VK_SUBPASS_CONTENTS_INLINE = 0,
789
+ VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1,
790
+ VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE,
791
+ VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS,
792
+ VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1),
793
+ VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF
794
+ } VkSubpassContents;
795
+
796
+ typedef VkFlags VkInstanceCreateFlags;
797
+
798
+ typedef enum VkFormatFeatureFlagBits {
799
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001,
800
+ VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002,
801
+ VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004,
802
+ VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008,
803
+ VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010,
804
+ VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020,
805
+ VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040,
806
+ VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080,
807
+ VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100,
808
+ VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200,
809
+ VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,
810
+ VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,
811
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,
812
+ VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
813
+ VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
814
+ } VkFormatFeatureFlagBits;
815
+ typedef VkFlags VkFormatFeatureFlags;
816
+
817
+ typedef enum VkImageUsageFlagBits {
818
+ VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001,
819
+ VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002,
820
+ VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004,
821
+ VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008,
822
+ VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010,
823
+ VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020,
824
+ VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040,
825
+ VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080,
826
+ VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
827
+ } VkImageUsageFlagBits;
828
+ typedef VkFlags VkImageUsageFlags;
829
+
830
+ typedef enum VkImageCreateFlagBits {
831
+ VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001,
832
+ VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,
833
+ VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
834
+ VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008,
835
+ VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010,
836
+ VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
837
+ } VkImageCreateFlagBits;
838
+ typedef VkFlags VkImageCreateFlags;
839
+
840
+ typedef enum VkSampleCountFlagBits {
841
+ VK_SAMPLE_COUNT_1_BIT = 0x00000001,
842
+ VK_SAMPLE_COUNT_2_BIT = 0x00000002,
843
+ VK_SAMPLE_COUNT_4_BIT = 0x00000004,
844
+ VK_SAMPLE_COUNT_8_BIT = 0x00000008,
845
+ VK_SAMPLE_COUNT_16_BIT = 0x00000010,
846
+ VK_SAMPLE_COUNT_32_BIT = 0x00000020,
847
+ VK_SAMPLE_COUNT_64_BIT = 0x00000040,
848
+ VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
849
+ } VkSampleCountFlagBits;
850
+ typedef VkFlags VkSampleCountFlags;
851
+
852
+ typedef enum VkQueueFlagBits {
853
+ VK_QUEUE_GRAPHICS_BIT = 0x00000001,
854
+ VK_QUEUE_COMPUTE_BIT = 0x00000002,
855
+ VK_QUEUE_TRANSFER_BIT = 0x00000004,
856
+ VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,
857
+ VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
858
+ } VkQueueFlagBits;
859
+ typedef VkFlags VkQueueFlags;
860
+
861
+ typedef enum VkMemoryPropertyFlagBits {
862
+ VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,
863
+ VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,
864
+ VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,
865
+ VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,
866
+ VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,
867
+ VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
868
+ } VkMemoryPropertyFlagBits;
869
+ typedef VkFlags VkMemoryPropertyFlags;
870
+
871
+ typedef enum VkMemoryHeapFlagBits {
872
+ VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001,
873
+ VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
874
+ } VkMemoryHeapFlagBits;
875
+ typedef VkFlags VkMemoryHeapFlags;
876
+ typedef VkFlags VkDeviceCreateFlags;
877
+ typedef VkFlags VkDeviceQueueCreateFlags;
878
+
879
+ typedef enum VkPipelineStageFlagBits {
880
+ VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001,
881
+ VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002,
882
+ VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004,
883
+ VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008,
884
+ VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010,
885
+ VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020,
886
+ VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040,
887
+ VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080,
888
+ VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100,
889
+ VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200,
890
+ VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400,
891
+ VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800,
892
+ VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000,
893
+ VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000,
894
+ VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,
895
+ VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,
896
+ VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
897
+ VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
898
+ } VkPipelineStageFlagBits;
899
+ typedef VkFlags VkPipelineStageFlags;
900
+ typedef VkFlags VkMemoryMapFlags;
901
+
902
+ typedef enum VkImageAspectFlagBits {
903
+ VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001,
904
+ VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002,
905
+ VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004,
906
+ VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008,
907
+ VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
908
+ } VkImageAspectFlagBits;
909
+ typedef VkFlags VkImageAspectFlags;
910
+
911
+ typedef enum VkSparseImageFormatFlagBits {
912
+ VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001,
913
+ VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002,
914
+ VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004,
915
+ VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
916
+ } VkSparseImageFormatFlagBits;
917
+ typedef VkFlags VkSparseImageFormatFlags;
918
+
919
+ typedef enum VkSparseMemoryBindFlagBits {
920
+ VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001,
921
+ VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
922
+ } VkSparseMemoryBindFlagBits;
923
+ typedef VkFlags VkSparseMemoryBindFlags;
924
+
925
+ typedef enum VkFenceCreateFlagBits {
926
+ VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001,
927
+ VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
928
+ } VkFenceCreateFlagBits;
929
+ typedef VkFlags VkFenceCreateFlags;
930
+ typedef VkFlags VkSemaphoreCreateFlags;
931
+ typedef VkFlags VkEventCreateFlags;
932
+ typedef VkFlags VkQueryPoolCreateFlags;
933
+
934
+ typedef enum VkQueryPipelineStatisticFlagBits {
935
+ VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001,
936
+ VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002,
937
+ VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004,
938
+ VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008,
939
+ VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010,
940
+ VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020,
941
+ VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040,
942
+ VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080,
943
+ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100,
944
+ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200,
945
+ VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,
946
+ VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
947
+ } VkQueryPipelineStatisticFlagBits;
948
+ typedef VkFlags VkQueryPipelineStatisticFlags;
949
+
950
+ typedef enum VkQueryResultFlagBits {
951
+ VK_QUERY_RESULT_64_BIT = 0x00000001,
952
+ VK_QUERY_RESULT_WAIT_BIT = 0x00000002,
953
+ VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,
954
+ VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,
955
+ VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
956
+ } VkQueryResultFlagBits;
957
+ typedef VkFlags VkQueryResultFlags;
958
+
959
+ typedef enum VkBufferCreateFlagBits {
960
+ VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001,
961
+ VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,
962
+ VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
963
+ VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
964
+ } VkBufferCreateFlagBits;
965
+ typedef VkFlags VkBufferCreateFlags;
966
+
967
+ typedef enum VkBufferUsageFlagBits {
968
+ VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001,
969
+ VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002,
970
+ VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004,
971
+ VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008,
972
+ VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010,
973
+ VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020,
974
+ VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,
975
+ VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,
976
+ VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,
977
+ VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
978
+ } VkBufferUsageFlagBits;
979
+ typedef VkFlags VkBufferUsageFlags;
980
+ typedef VkFlags VkBufferViewCreateFlags;
981
+ typedef VkFlags VkImageViewCreateFlags;
982
+ typedef VkFlags VkShaderModuleCreateFlags;
983
+ typedef VkFlags VkPipelineCacheCreateFlags;
984
+
985
+ typedef enum VkPipelineCreateFlagBits {
986
+ VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,
987
+ VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,
988
+ VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
989
+ VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
990
+ } VkPipelineCreateFlagBits;
991
+ typedef VkFlags VkPipelineCreateFlags;
992
+ typedef VkFlags VkPipelineShaderStageCreateFlags;
993
+
994
+ typedef enum VkShaderStageFlagBits {
995
+ VK_SHADER_STAGE_VERTEX_BIT = 0x00000001,
996
+ VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002,
997
+ VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004,
998
+ VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
999
+ VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
1000
+ VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
1001
+ VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,
1002
+ VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
1003
+ VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1004
+ } VkShaderStageFlagBits;
1005
+ typedef VkFlags VkPipelineVertexInputStateCreateFlags;
1006
+ typedef VkFlags VkPipelineInputAssemblyStateCreateFlags;
1007
+ typedef VkFlags VkPipelineTessellationStateCreateFlags;
1008
+ typedef VkFlags VkPipelineViewportStateCreateFlags;
1009
+ typedef VkFlags VkPipelineRasterizationStateCreateFlags;
1010
+
1011
+ typedef enum VkCullModeFlagBits {
1012
+ VK_CULL_MODE_NONE = 0,
1013
+ VK_CULL_MODE_FRONT_BIT = 0x00000001,
1014
+ VK_CULL_MODE_BACK_BIT = 0x00000002,
1015
+ VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,
1016
+ VK_CULL_MODE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1017
+ } VkCullModeFlagBits;
1018
+ typedef VkFlags VkCullModeFlags;
1019
+ typedef VkFlags VkPipelineMultisampleStateCreateFlags;
1020
+ typedef VkFlags VkPipelineDepthStencilStateCreateFlags;
1021
+ typedef VkFlags VkPipelineColorBlendStateCreateFlags;
1022
+
1023
+ typedef enum VkColorComponentFlagBits {
1024
+ VK_COLOR_COMPONENT_R_BIT = 0x00000001,
1025
+ VK_COLOR_COMPONENT_G_BIT = 0x00000002,
1026
+ VK_COLOR_COMPONENT_B_BIT = 0x00000004,
1027
+ VK_COLOR_COMPONENT_A_BIT = 0x00000008,
1028
+ VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1029
+ } VkColorComponentFlagBits;
1030
+ typedef VkFlags VkColorComponentFlags;
1031
+ typedef VkFlags VkPipelineDynamicStateCreateFlags;
1032
+ typedef VkFlags VkPipelineLayoutCreateFlags;
1033
+ typedef VkFlags VkShaderStageFlags;
1034
+ typedef VkFlags VkSamplerCreateFlags;
1035
+ typedef VkFlags VkDescriptorSetLayoutCreateFlags;
1036
+
1037
+ typedef enum VkDescriptorPoolCreateFlagBits {
1038
+ VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,
1039
+ VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1040
+ } VkDescriptorPoolCreateFlagBits;
1041
+ typedef VkFlags VkDescriptorPoolCreateFlags;
1042
+ typedef VkFlags VkDescriptorPoolResetFlags;
1043
+ typedef VkFlags VkFramebufferCreateFlags;
1044
+ typedef VkFlags VkRenderPassCreateFlags;
1045
+
1046
+ typedef enum VkAttachmentDescriptionFlagBits {
1047
+ VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001,
1048
+ VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1049
+ } VkAttachmentDescriptionFlagBits;
1050
+ typedef VkFlags VkAttachmentDescriptionFlags;
1051
+ typedef VkFlags VkSubpassDescriptionFlags;
1052
+
1053
+ typedef enum VkAccessFlagBits {
1054
+ VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001,
1055
+ VK_ACCESS_INDEX_READ_BIT = 0x00000002,
1056
+ VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004,
1057
+ VK_ACCESS_UNIFORM_READ_BIT = 0x00000008,
1058
+ VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010,
1059
+ VK_ACCESS_SHADER_READ_BIT = 0x00000020,
1060
+ VK_ACCESS_SHADER_WRITE_BIT = 0x00000040,
1061
+ VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080,
1062
+ VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100,
1063
+ VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200,
1064
+ VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400,
1065
+ VK_ACCESS_TRANSFER_READ_BIT = 0x00000800,
1066
+ VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000,
1067
+ VK_ACCESS_HOST_READ_BIT = 0x00002000,
1068
+ VK_ACCESS_HOST_WRITE_BIT = 0x00004000,
1069
+ VK_ACCESS_MEMORY_READ_BIT = 0x00008000,
1070
+ VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,
1071
+ VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1072
+ } VkAccessFlagBits;
1073
+ typedef VkFlags VkAccessFlags;
1074
+
1075
+ typedef enum VkDependencyFlagBits {
1076
+ VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,
1077
+ VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1078
+ } VkDependencyFlagBits;
1079
+ typedef VkFlags VkDependencyFlags;
1080
+
1081
+ typedef enum VkCommandPoolCreateFlagBits {
1082
+ VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001,
1083
+ VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002,
1084
+ VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1085
+ } VkCommandPoolCreateFlagBits;
1086
+ typedef VkFlags VkCommandPoolCreateFlags;
1087
+
1088
+ typedef enum VkCommandPoolResetFlagBits {
1089
+ VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
1090
+ VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1091
+ } VkCommandPoolResetFlagBits;
1092
+ typedef VkFlags VkCommandPoolResetFlags;
1093
+
1094
+ typedef enum VkCommandBufferUsageFlagBits {
1095
+ VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001,
1096
+ VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002,
1097
+ VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004,
1098
+ VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1099
+ } VkCommandBufferUsageFlagBits;
1100
+ typedef VkFlags VkCommandBufferUsageFlags;
1101
+
1102
+ typedef enum VkQueryControlFlagBits {
1103
+ VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,
1104
+ VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1105
+ } VkQueryControlFlagBits;
1106
+ typedef VkFlags VkQueryControlFlags;
1107
+
1108
+ typedef enum VkCommandBufferResetFlagBits {
1109
+ VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
1110
+ VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1111
+ } VkCommandBufferResetFlagBits;
1112
+ typedef VkFlags VkCommandBufferResetFlags;
1113
+
1114
+ typedef enum VkStencilFaceFlagBits {
1115
+ VK_STENCIL_FACE_FRONT_BIT = 0x00000001,
1116
+ VK_STENCIL_FACE_BACK_BIT = 0x00000002,
1117
+ VK_STENCIL_FRONT_AND_BACK = 0x00000003,
1118
+ VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
1119
+ } VkStencilFaceFlagBits;
1120
+ typedef VkFlags VkStencilFaceFlags;
1121
+
1122
+ typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(
1123
+ void* pUserData,
1124
+ size_t size,
1125
+ size_t alignment,
1126
+ VkSystemAllocationScope allocationScope);
1127
+
1128
+ typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)(
1129
+ void* pUserData,
1130
+ void* pOriginal,
1131
+ size_t size,
1132
+ size_t alignment,
1133
+ VkSystemAllocationScope allocationScope);
1134
+
1135
+ typedef void (VKAPI_PTR *PFN_vkFreeFunction)(
1136
+ void* pUserData,
1137
+ void* pMemory);
1138
+
1139
+ typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)(
1140
+ void* pUserData,
1141
+ size_t size,
1142
+ VkInternalAllocationType allocationType,
1143
+ VkSystemAllocationScope allocationScope);
1144
+
1145
+ typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)(
1146
+ void* pUserData,
1147
+ size_t size,
1148
+ VkInternalAllocationType allocationType,
1149
+ VkSystemAllocationScope allocationScope);
1150
+
1151
+ typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void);
1152
+
1153
+ typedef struct VkApplicationInfo {
1154
+ VkStructureType sType;
1155
+ const void* pNext;
1156
+ const char* pApplicationName;
1157
+ uint32_t applicationVersion;
1158
+ const char* pEngineName;
1159
+ uint32_t engineVersion;
1160
+ uint32_t apiVersion;
1161
+ } VkApplicationInfo;
1162
+
1163
+ typedef struct VkInstanceCreateInfo {
1164
+ VkStructureType sType;
1165
+ const void* pNext;
1166
+ VkInstanceCreateFlags flags;
1167
+ const VkApplicationInfo* pApplicationInfo;
1168
+ uint32_t enabledLayerCount;
1169
+ const char* const* ppEnabledLayerNames;
1170
+ uint32_t enabledExtensionCount;
1171
+ const char* const* ppEnabledExtensionNames;
1172
+ } VkInstanceCreateInfo;
1173
+
1174
+ typedef struct VkAllocationCallbacks {
1175
+ void* pUserData;
1176
+ PFN_vkAllocationFunction pfnAllocation;
1177
+ PFN_vkReallocationFunction pfnReallocation;
1178
+ PFN_vkFreeFunction pfnFree;
1179
+ PFN_vkInternalAllocationNotification pfnInternalAllocation;
1180
+ PFN_vkInternalFreeNotification pfnInternalFree;
1181
+ } VkAllocationCallbacks;
1182
+
1183
+ typedef struct VkPhysicalDeviceFeatures {
1184
+ VkBool32 robustBufferAccess;
1185
+ VkBool32 fullDrawIndexUint32;
1186
+ VkBool32 imageCubeArray;
1187
+ VkBool32 independentBlend;
1188
+ VkBool32 geometryShader;
1189
+ VkBool32 tessellationShader;
1190
+ VkBool32 sampleRateShading;
1191
+ VkBool32 dualSrcBlend;
1192
+ VkBool32 logicOp;
1193
+ VkBool32 multiDrawIndirect;
1194
+ VkBool32 drawIndirectFirstInstance;
1195
+ VkBool32 depthClamp;
1196
+ VkBool32 depthBiasClamp;
1197
+ VkBool32 fillModeNonSolid;
1198
+ VkBool32 depthBounds;
1199
+ VkBool32 wideLines;
1200
+ VkBool32 largePoints;
1201
+ VkBool32 alphaToOne;
1202
+ VkBool32 multiViewport;
1203
+ VkBool32 samplerAnisotropy;
1204
+ VkBool32 textureCompressionETC2;
1205
+ VkBool32 textureCompressionASTC_LDR;
1206
+ VkBool32 textureCompressionBC;
1207
+ VkBool32 occlusionQueryPrecise;
1208
+ VkBool32 pipelineStatisticsQuery;
1209
+ VkBool32 vertexPipelineStoresAndAtomics;
1210
+ VkBool32 fragmentStoresAndAtomics;
1211
+ VkBool32 shaderTessellationAndGeometryPointSize;
1212
+ VkBool32 shaderImageGatherExtended;
1213
+ VkBool32 shaderStorageImageExtendedFormats;
1214
+ VkBool32 shaderStorageImageMultisample;
1215
+ VkBool32 shaderStorageImageReadWithoutFormat;
1216
+ VkBool32 shaderStorageImageWriteWithoutFormat;
1217
+ VkBool32 shaderUniformBufferArrayDynamicIndexing;
1218
+ VkBool32 shaderSampledImageArrayDynamicIndexing;
1219
+ VkBool32 shaderStorageBufferArrayDynamicIndexing;
1220
+ VkBool32 shaderStorageImageArrayDynamicIndexing;
1221
+ VkBool32 shaderClipDistance;
1222
+ VkBool32 shaderCullDistance;
1223
+ VkBool32 shaderFloat64;
1224
+ VkBool32 shaderInt64;
1225
+ VkBool32 shaderInt16;
1226
+ VkBool32 shaderResourceResidency;
1227
+ VkBool32 shaderResourceMinLod;
1228
+ VkBool32 sparseBinding;
1229
+ VkBool32 sparseResidencyBuffer;
1230
+ VkBool32 sparseResidencyImage2D;
1231
+ VkBool32 sparseResidencyImage3D;
1232
+ VkBool32 sparseResidency2Samples;
1233
+ VkBool32 sparseResidency4Samples;
1234
+ VkBool32 sparseResidency8Samples;
1235
+ VkBool32 sparseResidency16Samples;
1236
+ VkBool32 sparseResidencyAliased;
1237
+ VkBool32 variableMultisampleRate;
1238
+ VkBool32 inheritedQueries;
1239
+ } VkPhysicalDeviceFeatures;
1240
+
1241
+ typedef struct VkFormatProperties {
1242
+ VkFormatFeatureFlags linearTilingFeatures;
1243
+ VkFormatFeatureFlags optimalTilingFeatures;
1244
+ VkFormatFeatureFlags bufferFeatures;
1245
+ } VkFormatProperties;
1246
+
1247
+ typedef struct VkExtent3D {
1248
+ uint32_t width;
1249
+ uint32_t height;
1250
+ uint32_t depth;
1251
+ } VkExtent3D;
1252
+
1253
+ typedef struct VkImageFormatProperties {
1254
+ VkExtent3D maxExtent;
1255
+ uint32_t maxMipLevels;
1256
+ uint32_t maxArrayLayers;
1257
+ VkSampleCountFlags sampleCounts;
1258
+ VkDeviceSize maxResourceSize;
1259
+ } VkImageFormatProperties;
1260
+
1261
+ typedef struct VkPhysicalDeviceLimits {
1262
+ uint32_t maxImageDimension1D;
1263
+ uint32_t maxImageDimension2D;
1264
+ uint32_t maxImageDimension3D;
1265
+ uint32_t maxImageDimensionCube;
1266
+ uint32_t maxImageArrayLayers;
1267
+ uint32_t maxTexelBufferElements;
1268
+ uint32_t maxUniformBufferRange;
1269
+ uint32_t maxStorageBufferRange;
1270
+ uint32_t maxPushConstantsSize;
1271
+ uint32_t maxMemoryAllocationCount;
1272
+ uint32_t maxSamplerAllocationCount;
1273
+ VkDeviceSize bufferImageGranularity;
1274
+ VkDeviceSize sparseAddressSpaceSize;
1275
+ uint32_t maxBoundDescriptorSets;
1276
+ uint32_t maxPerStageDescriptorSamplers;
1277
+ uint32_t maxPerStageDescriptorUniformBuffers;
1278
+ uint32_t maxPerStageDescriptorStorageBuffers;
1279
+ uint32_t maxPerStageDescriptorSampledImages;
1280
+ uint32_t maxPerStageDescriptorStorageImages;
1281
+ uint32_t maxPerStageDescriptorInputAttachments;
1282
+ uint32_t maxPerStageResources;
1283
+ uint32_t maxDescriptorSetSamplers;
1284
+ uint32_t maxDescriptorSetUniformBuffers;
1285
+ uint32_t maxDescriptorSetUniformBuffersDynamic;
1286
+ uint32_t maxDescriptorSetStorageBuffers;
1287
+ uint32_t maxDescriptorSetStorageBuffersDynamic;
1288
+ uint32_t maxDescriptorSetSampledImages;
1289
+ uint32_t maxDescriptorSetStorageImages;
1290
+ uint32_t maxDescriptorSetInputAttachments;
1291
+ uint32_t maxVertexInputAttributes;
1292
+ uint32_t maxVertexInputBindings;
1293
+ uint32_t maxVertexInputAttributeOffset;
1294
+ uint32_t maxVertexInputBindingStride;
1295
+ uint32_t maxVertexOutputComponents;
1296
+ uint32_t maxTessellationGenerationLevel;
1297
+ uint32_t maxTessellationPatchSize;
1298
+ uint32_t maxTessellationControlPerVertexInputComponents;
1299
+ uint32_t maxTessellationControlPerVertexOutputComponents;
1300
+ uint32_t maxTessellationControlPerPatchOutputComponents;
1301
+ uint32_t maxTessellationControlTotalOutputComponents;
1302
+ uint32_t maxTessellationEvaluationInputComponents;
1303
+ uint32_t maxTessellationEvaluationOutputComponents;
1304
+ uint32_t maxGeometryShaderInvocations;
1305
+ uint32_t maxGeometryInputComponents;
1306
+ uint32_t maxGeometryOutputComponents;
1307
+ uint32_t maxGeometryOutputVertices;
1308
+ uint32_t maxGeometryTotalOutputComponents;
1309
+ uint32_t maxFragmentInputComponents;
1310
+ uint32_t maxFragmentOutputAttachments;
1311
+ uint32_t maxFragmentDualSrcAttachments;
1312
+ uint32_t maxFragmentCombinedOutputResources;
1313
+ uint32_t maxComputeSharedMemorySize;
1314
+ uint32_t maxComputeWorkGroupCount[3];
1315
+ uint32_t maxComputeWorkGroupInvocations;
1316
+ uint32_t maxComputeWorkGroupSize[3];
1317
+ uint32_t subPixelPrecisionBits;
1318
+ uint32_t subTexelPrecisionBits;
1319
+ uint32_t mipmapPrecisionBits;
1320
+ uint32_t maxDrawIndexedIndexValue;
1321
+ uint32_t maxDrawIndirectCount;
1322
+ float maxSamplerLodBias;
1323
+ float maxSamplerAnisotropy;
1324
+ uint32_t maxViewports;
1325
+ uint32_t maxViewportDimensions[2];
1326
+ float viewportBoundsRange[2];
1327
+ uint32_t viewportSubPixelBits;
1328
+ size_t minMemoryMapAlignment;
1329
+ VkDeviceSize minTexelBufferOffsetAlignment;
1330
+ VkDeviceSize minUniformBufferOffsetAlignment;
1331
+ VkDeviceSize minStorageBufferOffsetAlignment;
1332
+ int32_t minTexelOffset;
1333
+ uint32_t maxTexelOffset;
1334
+ int32_t minTexelGatherOffset;
1335
+ uint32_t maxTexelGatherOffset;
1336
+ float minInterpolationOffset;
1337
+ float maxInterpolationOffset;
1338
+ uint32_t subPixelInterpolationOffsetBits;
1339
+ uint32_t maxFramebufferWidth;
1340
+ uint32_t maxFramebufferHeight;
1341
+ uint32_t maxFramebufferLayers;
1342
+ VkSampleCountFlags framebufferColorSampleCounts;
1343
+ VkSampleCountFlags framebufferDepthSampleCounts;
1344
+ VkSampleCountFlags framebufferStencilSampleCounts;
1345
+ VkSampleCountFlags framebufferNoAttachmentsSampleCounts;
1346
+ uint32_t maxColorAttachments;
1347
+ VkSampleCountFlags sampledImageColorSampleCounts;
1348
+ VkSampleCountFlags sampledImageIntegerSampleCounts;
1349
+ VkSampleCountFlags sampledImageDepthSampleCounts;
1350
+ VkSampleCountFlags sampledImageStencilSampleCounts;
1351
+ VkSampleCountFlags storageImageSampleCounts;
1352
+ uint32_t maxSampleMaskWords;
1353
+ VkBool32 timestampComputeAndGraphics;
1354
+ float timestampPeriod;
1355
+ uint32_t maxClipDistances;
1356
+ uint32_t maxCullDistances;
1357
+ uint32_t maxCombinedClipAndCullDistances;
1358
+ uint32_t discreteQueuePriorities;
1359
+ float pointSizeRange[2];
1360
+ float lineWidthRange[2];
1361
+ float pointSizeGranularity;
1362
+ float lineWidthGranularity;
1363
+ VkBool32 strictLines;
1364
+ VkBool32 standardSampleLocations;
1365
+ VkDeviceSize optimalBufferCopyOffsetAlignment;
1366
+ VkDeviceSize optimalBufferCopyRowPitchAlignment;
1367
+ VkDeviceSize nonCoherentAtomSize;
1368
+ } VkPhysicalDeviceLimits;
1369
+
1370
+ typedef struct VkPhysicalDeviceSparseProperties {
1371
+ VkBool32 residencyStandard2DBlockShape;
1372
+ VkBool32 residencyStandard2DMultisampleBlockShape;
1373
+ VkBool32 residencyStandard3DBlockShape;
1374
+ VkBool32 residencyAlignedMipSize;
1375
+ VkBool32 residencyNonResidentStrict;
1376
+ } VkPhysicalDeviceSparseProperties;
1377
+
1378
+ typedef struct VkPhysicalDeviceProperties {
1379
+ uint32_t apiVersion;
1380
+ uint32_t driverVersion;
1381
+ uint32_t vendorID;
1382
+ uint32_t deviceID;
1383
+ VkPhysicalDeviceType deviceType;
1384
+ char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];
1385
+ uint8_t pipelineCacheUUID[VK_UUID_SIZE];
1386
+ VkPhysicalDeviceLimits limits;
1387
+ VkPhysicalDeviceSparseProperties sparseProperties;
1388
+ } VkPhysicalDeviceProperties;
1389
+
1390
+ typedef struct VkQueueFamilyProperties {
1391
+ VkQueueFlags queueFlags;
1392
+ uint32_t queueCount;
1393
+ uint32_t timestampValidBits;
1394
+ VkExtent3D minImageTransferGranularity;
1395
+ } VkQueueFamilyProperties;
1396
+
1397
+ typedef struct VkMemoryType {
1398
+ VkMemoryPropertyFlags propertyFlags;
1399
+ uint32_t heapIndex;
1400
+ } VkMemoryType;
1401
+
1402
+ typedef struct VkMemoryHeap {
1403
+ VkDeviceSize size;
1404
+ VkMemoryHeapFlags flags;
1405
+ } VkMemoryHeap;
1406
+
1407
+ typedef struct VkPhysicalDeviceMemoryProperties {
1408
+ uint32_t memoryTypeCount;
1409
+ VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];
1410
+ uint32_t memoryHeapCount;
1411
+ VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS];
1412
+ } VkPhysicalDeviceMemoryProperties;
1413
+
1414
+ typedef struct VkDeviceQueueCreateInfo {
1415
+ VkStructureType sType;
1416
+ const void* pNext;
1417
+ VkDeviceQueueCreateFlags flags;
1418
+ uint32_t queueFamilyIndex;
1419
+ uint32_t queueCount;
1420
+ const float* pQueuePriorities;
1421
+ } VkDeviceQueueCreateInfo;
1422
+
1423
+ typedef struct VkDeviceCreateInfo {
1424
+ VkStructureType sType;
1425
+ const void* pNext;
1426
+ VkDeviceCreateFlags flags;
1427
+ uint32_t queueCreateInfoCount;
1428
+ const VkDeviceQueueCreateInfo* pQueueCreateInfos;
1429
+ uint32_t enabledLayerCount;
1430
+ const char* const* ppEnabledLayerNames;
1431
+ uint32_t enabledExtensionCount;
1432
+ const char* const* ppEnabledExtensionNames;
1433
+ const VkPhysicalDeviceFeatures* pEnabledFeatures;
1434
+ } VkDeviceCreateInfo;
1435
+
1436
+ typedef struct VkExtensionProperties {
1437
+ char extensionName[VK_MAX_EXTENSION_NAME_SIZE];
1438
+ uint32_t specVersion;
1439
+ } VkExtensionProperties;
1440
+
1441
+ typedef struct VkLayerProperties {
1442
+ char layerName[VK_MAX_EXTENSION_NAME_SIZE];
1443
+ uint32_t specVersion;
1444
+ uint32_t implementationVersion;
1445
+ char description[VK_MAX_DESCRIPTION_SIZE];
1446
+ } VkLayerProperties;
1447
+
1448
+ typedef struct VkSubmitInfo {
1449
+ VkStructureType sType;
1450
+ const void* pNext;
1451
+ uint32_t waitSemaphoreCount;
1452
+ const VkSemaphore* pWaitSemaphores;
1453
+ const VkPipelineStageFlags* pWaitDstStageMask;
1454
+ uint32_t commandBufferCount;
1455
+ const VkCommandBuffer* pCommandBuffers;
1456
+ uint32_t signalSemaphoreCount;
1457
+ const VkSemaphore* pSignalSemaphores;
1458
+ } VkSubmitInfo;
1459
+
1460
+ typedef struct VkMemoryAllocateInfo {
1461
+ VkStructureType sType;
1462
+ const void* pNext;
1463
+ VkDeviceSize allocationSize;
1464
+ uint32_t memoryTypeIndex;
1465
+ } VkMemoryAllocateInfo;
1466
+
1467
+ typedef struct VkMappedMemoryRange {
1468
+ VkStructureType sType;
1469
+ const void* pNext;
1470
+ VkDeviceMemory memory;
1471
+ VkDeviceSize offset;
1472
+ VkDeviceSize size;
1473
+ } VkMappedMemoryRange;
1474
+
1475
+ typedef struct VkMemoryRequirements {
1476
+ VkDeviceSize size;
1477
+ VkDeviceSize alignment;
1478
+ uint32_t memoryTypeBits;
1479
+ } VkMemoryRequirements;
1480
+
1481
+ typedef struct VkSparseImageFormatProperties {
1482
+ VkImageAspectFlags aspectMask;
1483
+ VkExtent3D imageGranularity;
1484
+ VkSparseImageFormatFlags flags;
1485
+ } VkSparseImageFormatProperties;
1486
+
1487
+ typedef struct VkSparseImageMemoryRequirements {
1488
+ VkSparseImageFormatProperties formatProperties;
1489
+ uint32_t imageMipTailFirstLod;
1490
+ VkDeviceSize imageMipTailSize;
1491
+ VkDeviceSize imageMipTailOffset;
1492
+ VkDeviceSize imageMipTailStride;
1493
+ } VkSparseImageMemoryRequirements;
1494
+
1495
+ typedef struct VkSparseMemoryBind {
1496
+ VkDeviceSize resourceOffset;
1497
+ VkDeviceSize size;
1498
+ VkDeviceMemory memory;
1499
+ VkDeviceSize memoryOffset;
1500
+ VkSparseMemoryBindFlags flags;
1501
+ } VkSparseMemoryBind;
1502
+
1503
+ typedef struct VkSparseBufferMemoryBindInfo {
1504
+ VkBuffer buffer;
1505
+ uint32_t bindCount;
1506
+ const VkSparseMemoryBind* pBinds;
1507
+ } VkSparseBufferMemoryBindInfo;
1508
+
1509
+ typedef struct VkSparseImageOpaqueMemoryBindInfo {
1510
+ VkImage image;
1511
+ uint32_t bindCount;
1512
+ const VkSparseMemoryBind* pBinds;
1513
+ } VkSparseImageOpaqueMemoryBindInfo;
1514
+
1515
+ typedef struct VkImageSubresource {
1516
+ VkImageAspectFlags aspectMask;
1517
+ uint32_t mipLevel;
1518
+ uint32_t arrayLayer;
1519
+ } VkImageSubresource;
1520
+
1521
+ typedef struct VkOffset3D {
1522
+ int32_t x;
1523
+ int32_t y;
1524
+ int32_t z;
1525
+ } VkOffset3D;
1526
+
1527
+ typedef struct VkSparseImageMemoryBind {
1528
+ VkImageSubresource subresource;
1529
+ VkOffset3D offset;
1530
+ VkExtent3D extent;
1531
+ VkDeviceMemory memory;
1532
+ VkDeviceSize memoryOffset;
1533
+ VkSparseMemoryBindFlags flags;
1534
+ } VkSparseImageMemoryBind;
1535
+
1536
+ typedef struct VkSparseImageMemoryBindInfo {
1537
+ VkImage image;
1538
+ uint32_t bindCount;
1539
+ const VkSparseImageMemoryBind* pBinds;
1540
+ } VkSparseImageMemoryBindInfo;
1541
+
1542
+ typedef struct VkBindSparseInfo {
1543
+ VkStructureType sType;
1544
+ const void* pNext;
1545
+ uint32_t waitSemaphoreCount;
1546
+ const VkSemaphore* pWaitSemaphores;
1547
+ uint32_t bufferBindCount;
1548
+ const VkSparseBufferMemoryBindInfo* pBufferBinds;
1549
+ uint32_t imageOpaqueBindCount;
1550
+ const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;
1551
+ uint32_t imageBindCount;
1552
+ const VkSparseImageMemoryBindInfo* pImageBinds;
1553
+ uint32_t signalSemaphoreCount;
1554
+ const VkSemaphore* pSignalSemaphores;
1555
+ } VkBindSparseInfo;
1556
+
1557
+ typedef struct VkFenceCreateInfo {
1558
+ VkStructureType sType;
1559
+ const void* pNext;
1560
+ VkFenceCreateFlags flags;
1561
+ } VkFenceCreateInfo;
1562
+
1563
+ typedef struct VkSemaphoreCreateInfo {
1564
+ VkStructureType sType;
1565
+ const void* pNext;
1566
+ VkSemaphoreCreateFlags flags;
1567
+ } VkSemaphoreCreateInfo;
1568
+
1569
+ typedef struct VkEventCreateInfo {
1570
+ VkStructureType sType;
1571
+ const void* pNext;
1572
+ VkEventCreateFlags flags;
1573
+ } VkEventCreateInfo;
1574
+
1575
+ typedef struct VkQueryPoolCreateInfo {
1576
+ VkStructureType sType;
1577
+ const void* pNext;
1578
+ VkQueryPoolCreateFlags flags;
1579
+ VkQueryType queryType;
1580
+ uint32_t queryCount;
1581
+ VkQueryPipelineStatisticFlags pipelineStatistics;
1582
+ } VkQueryPoolCreateInfo;
1583
+
1584
+ typedef struct VkBufferCreateInfo {
1585
+ VkStructureType sType;
1586
+ const void* pNext;
1587
+ VkBufferCreateFlags flags;
1588
+ VkDeviceSize size;
1589
+ VkBufferUsageFlags usage;
1590
+ VkSharingMode sharingMode;
1591
+ uint32_t queueFamilyIndexCount;
1592
+ const uint32_t* pQueueFamilyIndices;
1593
+ } VkBufferCreateInfo;
1594
+
1595
+ typedef struct VkBufferViewCreateInfo {
1596
+ VkStructureType sType;
1597
+ const void* pNext;
1598
+ VkBufferViewCreateFlags flags;
1599
+ VkBuffer buffer;
1600
+ VkFormat format;
1601
+ VkDeviceSize offset;
1602
+ VkDeviceSize range;
1603
+ } VkBufferViewCreateInfo;
1604
+
1605
+ typedef struct VkImageCreateInfo {
1606
+ VkStructureType sType;
1607
+ const void* pNext;
1608
+ VkImageCreateFlags flags;
1609
+ VkImageType imageType;
1610
+ VkFormat format;
1611
+ VkExtent3D extent;
1612
+ uint32_t mipLevels;
1613
+ uint32_t arrayLayers;
1614
+ VkSampleCountFlagBits samples;
1615
+ VkImageTiling tiling;
1616
+ VkImageUsageFlags usage;
1617
+ VkSharingMode sharingMode;
1618
+ uint32_t queueFamilyIndexCount;
1619
+ const uint32_t* pQueueFamilyIndices;
1620
+ VkImageLayout initialLayout;
1621
+ } VkImageCreateInfo;
1622
+
1623
+ typedef struct VkSubresourceLayout {
1624
+ VkDeviceSize offset;
1625
+ VkDeviceSize size;
1626
+ VkDeviceSize rowPitch;
1627
+ VkDeviceSize arrayPitch;
1628
+ VkDeviceSize depthPitch;
1629
+ } VkSubresourceLayout;
1630
+
1631
+ typedef struct VkComponentMapping {
1632
+ VkComponentSwizzle r;
1633
+ VkComponentSwizzle g;
1634
+ VkComponentSwizzle b;
1635
+ VkComponentSwizzle a;
1636
+ } VkComponentMapping;
1637
+
1638
+ typedef struct VkImageSubresourceRange {
1639
+ VkImageAspectFlags aspectMask;
1640
+ uint32_t baseMipLevel;
1641
+ uint32_t levelCount;
1642
+ uint32_t baseArrayLayer;
1643
+ uint32_t layerCount;
1644
+ } VkImageSubresourceRange;
1645
+
1646
+ typedef struct VkImageViewCreateInfo {
1647
+ VkStructureType sType;
1648
+ const void* pNext;
1649
+ VkImageViewCreateFlags flags;
1650
+ VkImage image;
1651
+ VkImageViewType viewType;
1652
+ VkFormat format;
1653
+ VkComponentMapping components;
1654
+ VkImageSubresourceRange subresourceRange;
1655
+ } VkImageViewCreateInfo;
1656
+
1657
+ typedef struct VkShaderModuleCreateInfo {
1658
+ VkStructureType sType;
1659
+ const void* pNext;
1660
+ VkShaderModuleCreateFlags flags;
1661
+ size_t codeSize;
1662
+ const uint32_t* pCode;
1663
+ } VkShaderModuleCreateInfo;
1664
+
1665
+ typedef struct VkPipelineCacheCreateInfo {
1666
+ VkStructureType sType;
1667
+ const void* pNext;
1668
+ VkPipelineCacheCreateFlags flags;
1669
+ size_t initialDataSize;
1670
+ const void* pInitialData;
1671
+ } VkPipelineCacheCreateInfo;
1672
+
1673
+ typedef struct VkSpecializationMapEntry {
1674
+ uint32_t constantID;
1675
+ uint32_t offset;
1676
+ size_t size;
1677
+ } VkSpecializationMapEntry;
1678
+
1679
+ typedef struct VkSpecializationInfo {
1680
+ uint32_t mapEntryCount;
1681
+ const VkSpecializationMapEntry* pMapEntries;
1682
+ size_t dataSize;
1683
+ const void* pData;
1684
+ } VkSpecializationInfo;
1685
+
1686
+ typedef struct VkPipelineShaderStageCreateInfo {
1687
+ VkStructureType sType;
1688
+ const void* pNext;
1689
+ VkPipelineShaderStageCreateFlags flags;
1690
+ VkShaderStageFlagBits stage;
1691
+ VkShaderModule module;
1692
+ const char* pName;
1693
+ const VkSpecializationInfo* pSpecializationInfo;
1694
+ } VkPipelineShaderStageCreateInfo;
1695
+
1696
+ typedef struct VkVertexInputBindingDescription {
1697
+ uint32_t binding;
1698
+ uint32_t stride;
1699
+ VkVertexInputRate inputRate;
1700
+ } VkVertexInputBindingDescription;
1701
+
1702
+ typedef struct VkVertexInputAttributeDescription {
1703
+ uint32_t location;
1704
+ uint32_t binding;
1705
+ VkFormat format;
1706
+ uint32_t offset;
1707
+ } VkVertexInputAttributeDescription;
1708
+
1709
+ typedef struct VkPipelineVertexInputStateCreateInfo {
1710
+ VkStructureType sType;
1711
+ const void* pNext;
1712
+ VkPipelineVertexInputStateCreateFlags flags;
1713
+ uint32_t vertexBindingDescriptionCount;
1714
+ const VkVertexInputBindingDescription* pVertexBindingDescriptions;
1715
+ uint32_t vertexAttributeDescriptionCount;
1716
+ const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;
1717
+ } VkPipelineVertexInputStateCreateInfo;
1718
+
1719
+ typedef struct VkPipelineInputAssemblyStateCreateInfo {
1720
+ VkStructureType sType;
1721
+ const void* pNext;
1722
+ VkPipelineInputAssemblyStateCreateFlags flags;
1723
+ VkPrimitiveTopology topology;
1724
+ VkBool32 primitiveRestartEnable;
1725
+ } VkPipelineInputAssemblyStateCreateInfo;
1726
+
1727
+ typedef struct VkPipelineTessellationStateCreateInfo {
1728
+ VkStructureType sType;
1729
+ const void* pNext;
1730
+ VkPipelineTessellationStateCreateFlags flags;
1731
+ uint32_t patchControlPoints;
1732
+ } VkPipelineTessellationStateCreateInfo;
1733
+
1734
+ typedef struct VkViewport {
1735
+ float x;
1736
+ float y;
1737
+ float width;
1738
+ float height;
1739
+ float minDepth;
1740
+ float maxDepth;
1741
+ } VkViewport;
1742
+
1743
+ typedef struct VkOffset2D {
1744
+ int32_t x;
1745
+ int32_t y;
1746
+ } VkOffset2D;
1747
+
1748
+ typedef struct VkExtent2D {
1749
+ uint32_t width;
1750
+ uint32_t height;
1751
+ } VkExtent2D;
1752
+
1753
+ typedef struct VkRect2D {
1754
+ VkOffset2D offset;
1755
+ VkExtent2D extent;
1756
+ } VkRect2D;
1757
+
1758
+ typedef struct VkPipelineViewportStateCreateInfo {
1759
+ VkStructureType sType;
1760
+ const void* pNext;
1761
+ VkPipelineViewportStateCreateFlags flags;
1762
+ uint32_t viewportCount;
1763
+ const VkViewport* pViewports;
1764
+ uint32_t scissorCount;
1765
+ const VkRect2D* pScissors;
1766
+ } VkPipelineViewportStateCreateInfo;
1767
+
1768
+ typedef struct VkPipelineRasterizationStateCreateInfo {
1769
+ VkStructureType sType;
1770
+ const void* pNext;
1771
+ VkPipelineRasterizationStateCreateFlags flags;
1772
+ VkBool32 depthClampEnable;
1773
+ VkBool32 rasterizerDiscardEnable;
1774
+ VkPolygonMode polygonMode;
1775
+ VkCullModeFlags cullMode;
1776
+ VkFrontFace frontFace;
1777
+ VkBool32 depthBiasEnable;
1778
+ float depthBiasConstantFactor;
1779
+ float depthBiasClamp;
1780
+ float depthBiasSlopeFactor;
1781
+ float lineWidth;
1782
+ } VkPipelineRasterizationStateCreateInfo;
1783
+
1784
+ typedef struct VkPipelineMultisampleStateCreateInfo {
1785
+ VkStructureType sType;
1786
+ const void* pNext;
1787
+ VkPipelineMultisampleStateCreateFlags flags;
1788
+ VkSampleCountFlagBits rasterizationSamples;
1789
+ VkBool32 sampleShadingEnable;
1790
+ float minSampleShading;
1791
+ const VkSampleMask* pSampleMask;
1792
+ VkBool32 alphaToCoverageEnable;
1793
+ VkBool32 alphaToOneEnable;
1794
+ } VkPipelineMultisampleStateCreateInfo;
1795
+
1796
+ typedef struct VkStencilOpState {
1797
+ VkStencilOp failOp;
1798
+ VkStencilOp passOp;
1799
+ VkStencilOp depthFailOp;
1800
+ VkCompareOp compareOp;
1801
+ uint32_t compareMask;
1802
+ uint32_t writeMask;
1803
+ uint32_t reference;
1804
+ } VkStencilOpState;
1805
+
1806
+ typedef struct VkPipelineDepthStencilStateCreateInfo {
1807
+ VkStructureType sType;
1808
+ const void* pNext;
1809
+ VkPipelineDepthStencilStateCreateFlags flags;
1810
+ VkBool32 depthTestEnable;
1811
+ VkBool32 depthWriteEnable;
1812
+ VkCompareOp depthCompareOp;
1813
+ VkBool32 depthBoundsTestEnable;
1814
+ VkBool32 stencilTestEnable;
1815
+ VkStencilOpState front;
1816
+ VkStencilOpState back;
1817
+ float minDepthBounds;
1818
+ float maxDepthBounds;
1819
+ } VkPipelineDepthStencilStateCreateInfo;
1820
+
1821
+ typedef struct VkPipelineColorBlendAttachmentState {
1822
+ VkBool32 blendEnable;
1823
+ VkBlendFactor srcColorBlendFactor;
1824
+ VkBlendFactor dstColorBlendFactor;
1825
+ VkBlendOp colorBlendOp;
1826
+ VkBlendFactor srcAlphaBlendFactor;
1827
+ VkBlendFactor dstAlphaBlendFactor;
1828
+ VkBlendOp alphaBlendOp;
1829
+ VkColorComponentFlags colorWriteMask;
1830
+ } VkPipelineColorBlendAttachmentState;
1831
+
1832
+ typedef struct VkPipelineColorBlendStateCreateInfo {
1833
+ VkStructureType sType;
1834
+ const void* pNext;
1835
+ VkPipelineColorBlendStateCreateFlags flags;
1836
+ VkBool32 logicOpEnable;
1837
+ VkLogicOp logicOp;
1838
+ uint32_t attachmentCount;
1839
+ const VkPipelineColorBlendAttachmentState* pAttachments;
1840
+ float blendConstants[4];
1841
+ } VkPipelineColorBlendStateCreateInfo;
1842
+
1843
+ typedef struct VkPipelineDynamicStateCreateInfo {
1844
+ VkStructureType sType;
1845
+ const void* pNext;
1846
+ VkPipelineDynamicStateCreateFlags flags;
1847
+ uint32_t dynamicStateCount;
1848
+ const VkDynamicState* pDynamicStates;
1849
+ } VkPipelineDynamicStateCreateInfo;
1850
+
1851
+ typedef struct VkGraphicsPipelineCreateInfo {
1852
+ VkStructureType sType;
1853
+ const void* pNext;
1854
+ VkPipelineCreateFlags flags;
1855
+ uint32_t stageCount;
1856
+ const VkPipelineShaderStageCreateInfo* pStages;
1857
+ const VkPipelineVertexInputStateCreateInfo* pVertexInputState;
1858
+ const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;
1859
+ const VkPipelineTessellationStateCreateInfo* pTessellationState;
1860
+ const VkPipelineViewportStateCreateInfo* pViewportState;
1861
+ const VkPipelineRasterizationStateCreateInfo* pRasterizationState;
1862
+ const VkPipelineMultisampleStateCreateInfo* pMultisampleState;
1863
+ const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;
1864
+ const VkPipelineColorBlendStateCreateInfo* pColorBlendState;
1865
+ const VkPipelineDynamicStateCreateInfo* pDynamicState;
1866
+ VkPipelineLayout layout;
1867
+ VkRenderPass renderPass;
1868
+ uint32_t subpass;
1869
+ VkPipeline basePipelineHandle;
1870
+ int32_t basePipelineIndex;
1871
+ } VkGraphicsPipelineCreateInfo;
1872
+
1873
+ typedef struct VkComputePipelineCreateInfo {
1874
+ VkStructureType sType;
1875
+ const void* pNext;
1876
+ VkPipelineCreateFlags flags;
1877
+ VkPipelineShaderStageCreateInfo stage;
1878
+ VkPipelineLayout layout;
1879
+ VkPipeline basePipelineHandle;
1880
+ int32_t basePipelineIndex;
1881
+ } VkComputePipelineCreateInfo;
1882
+
1883
+ typedef struct VkPushConstantRange {
1884
+ VkShaderStageFlags stageFlags;
1885
+ uint32_t offset;
1886
+ uint32_t size;
1887
+ } VkPushConstantRange;
1888
+
1889
+ typedef struct VkPipelineLayoutCreateInfo {
1890
+ VkStructureType sType;
1891
+ const void* pNext;
1892
+ VkPipelineLayoutCreateFlags flags;
1893
+ uint32_t setLayoutCount;
1894
+ const VkDescriptorSetLayout* pSetLayouts;
1895
+ uint32_t pushConstantRangeCount;
1896
+ const VkPushConstantRange* pPushConstantRanges;
1897
+ } VkPipelineLayoutCreateInfo;
1898
+
1899
+ typedef struct VkSamplerCreateInfo {
1900
+ VkStructureType sType;
1901
+ const void* pNext;
1902
+ VkSamplerCreateFlags flags;
1903
+ VkFilter magFilter;
1904
+ VkFilter minFilter;
1905
+ VkSamplerMipmapMode mipmapMode;
1906
+ VkSamplerAddressMode addressModeU;
1907
+ VkSamplerAddressMode addressModeV;
1908
+ VkSamplerAddressMode addressModeW;
1909
+ float mipLodBias;
1910
+ VkBool32 anisotropyEnable;
1911
+ float maxAnisotropy;
1912
+ VkBool32 compareEnable;
1913
+ VkCompareOp compareOp;
1914
+ float minLod;
1915
+ float maxLod;
1916
+ VkBorderColor borderColor;
1917
+ VkBool32 unnormalizedCoordinates;
1918
+ } VkSamplerCreateInfo;
1919
+
1920
+ typedef struct VkDescriptorSetLayoutBinding {
1921
+ uint32_t binding;
1922
+ VkDescriptorType descriptorType;
1923
+ uint32_t descriptorCount;
1924
+ VkShaderStageFlags stageFlags;
1925
+ const VkSampler* pImmutableSamplers;
1926
+ } VkDescriptorSetLayoutBinding;
1927
+
1928
+ typedef struct VkDescriptorSetLayoutCreateInfo {
1929
+ VkStructureType sType;
1930
+ const void* pNext;
1931
+ VkDescriptorSetLayoutCreateFlags flags;
1932
+ uint32_t bindingCount;
1933
+ const VkDescriptorSetLayoutBinding* pBindings;
1934
+ } VkDescriptorSetLayoutCreateInfo;
1935
+
1936
+ typedef struct VkDescriptorPoolSize {
1937
+ VkDescriptorType type;
1938
+ uint32_t descriptorCount;
1939
+ } VkDescriptorPoolSize;
1940
+
1941
+ typedef struct VkDescriptorPoolCreateInfo {
1942
+ VkStructureType sType;
1943
+ const void* pNext;
1944
+ VkDescriptorPoolCreateFlags flags;
1945
+ uint32_t maxSets;
1946
+ uint32_t poolSizeCount;
1947
+ const VkDescriptorPoolSize* pPoolSizes;
1948
+ } VkDescriptorPoolCreateInfo;
1949
+
1950
+ typedef struct VkDescriptorSetAllocateInfo {
1951
+ VkStructureType sType;
1952
+ const void* pNext;
1953
+ VkDescriptorPool descriptorPool;
1954
+ uint32_t descriptorSetCount;
1955
+ const VkDescriptorSetLayout* pSetLayouts;
1956
+ } VkDescriptorSetAllocateInfo;
1957
+
1958
+ typedef struct VkDescriptorImageInfo {
1959
+ VkSampler sampler;
1960
+ VkImageView imageView;
1961
+ VkImageLayout imageLayout;
1962
+ } VkDescriptorImageInfo;
1963
+
1964
+ typedef struct VkDescriptorBufferInfo {
1965
+ VkBuffer buffer;
1966
+ VkDeviceSize offset;
1967
+ VkDeviceSize range;
1968
+ } VkDescriptorBufferInfo;
1969
+
1970
+ typedef struct VkWriteDescriptorSet {
1971
+ VkStructureType sType;
1972
+ const void* pNext;
1973
+ VkDescriptorSet dstSet;
1974
+ uint32_t dstBinding;
1975
+ uint32_t dstArrayElement;
1976
+ uint32_t descriptorCount;
1977
+ VkDescriptorType descriptorType;
1978
+ const VkDescriptorImageInfo* pImageInfo;
1979
+ const VkDescriptorBufferInfo* pBufferInfo;
1980
+ const VkBufferView* pTexelBufferView;
1981
+ } VkWriteDescriptorSet;
1982
+
1983
+ typedef struct VkCopyDescriptorSet {
1984
+ VkStructureType sType;
1985
+ const void* pNext;
1986
+ VkDescriptorSet srcSet;
1987
+ uint32_t srcBinding;
1988
+ uint32_t srcArrayElement;
1989
+ VkDescriptorSet dstSet;
1990
+ uint32_t dstBinding;
1991
+ uint32_t dstArrayElement;
1992
+ uint32_t descriptorCount;
1993
+ } VkCopyDescriptorSet;
1994
+
1995
+ typedef struct VkFramebufferCreateInfo {
1996
+ VkStructureType sType;
1997
+ const void* pNext;
1998
+ VkFramebufferCreateFlags flags;
1999
+ VkRenderPass renderPass;
2000
+ uint32_t attachmentCount;
2001
+ const VkImageView* pAttachments;
2002
+ uint32_t width;
2003
+ uint32_t height;
2004
+ uint32_t layers;
2005
+ } VkFramebufferCreateInfo;
2006
+
2007
+ typedef struct VkAttachmentDescription {
2008
+ VkAttachmentDescriptionFlags flags;
2009
+ VkFormat format;
2010
+ VkSampleCountFlagBits samples;
2011
+ VkAttachmentLoadOp loadOp;
2012
+ VkAttachmentStoreOp storeOp;
2013
+ VkAttachmentLoadOp stencilLoadOp;
2014
+ VkAttachmentStoreOp stencilStoreOp;
2015
+ VkImageLayout initialLayout;
2016
+ VkImageLayout finalLayout;
2017
+ } VkAttachmentDescription;
2018
+
2019
+ typedef struct VkAttachmentReference {
2020
+ uint32_t attachment;
2021
+ VkImageLayout layout;
2022
+ } VkAttachmentReference;
2023
+
2024
+ typedef struct VkSubpassDescription {
2025
+ VkSubpassDescriptionFlags flags;
2026
+ VkPipelineBindPoint pipelineBindPoint;
2027
+ uint32_t inputAttachmentCount;
2028
+ const VkAttachmentReference* pInputAttachments;
2029
+ uint32_t colorAttachmentCount;
2030
+ const VkAttachmentReference* pColorAttachments;
2031
+ const VkAttachmentReference* pResolveAttachments;
2032
+ const VkAttachmentReference* pDepthStencilAttachment;
2033
+ uint32_t preserveAttachmentCount;
2034
+ const uint32_t* pPreserveAttachments;
2035
+ } VkSubpassDescription;
2036
+
2037
+ typedef struct VkSubpassDependency {
2038
+ uint32_t srcSubpass;
2039
+ uint32_t dstSubpass;
2040
+ VkPipelineStageFlags srcStageMask;
2041
+ VkPipelineStageFlags dstStageMask;
2042
+ VkAccessFlags srcAccessMask;
2043
+ VkAccessFlags dstAccessMask;
2044
+ VkDependencyFlags dependencyFlags;
2045
+ } VkSubpassDependency;
2046
+
2047
+ typedef struct VkRenderPassCreateInfo {
2048
+ VkStructureType sType;
2049
+ const void* pNext;
2050
+ VkRenderPassCreateFlags flags;
2051
+ uint32_t attachmentCount;
2052
+ const VkAttachmentDescription* pAttachments;
2053
+ uint32_t subpassCount;
2054
+ const VkSubpassDescription* pSubpasses;
2055
+ uint32_t dependencyCount;
2056
+ const VkSubpassDependency* pDependencies;
2057
+ } VkRenderPassCreateInfo;
2058
+
2059
+ typedef struct VkCommandPoolCreateInfo {
2060
+ VkStructureType sType;
2061
+ const void* pNext;
2062
+ VkCommandPoolCreateFlags flags;
2063
+ uint32_t queueFamilyIndex;
2064
+ } VkCommandPoolCreateInfo;
2065
+
2066
+ typedef struct VkCommandBufferAllocateInfo {
2067
+ VkStructureType sType;
2068
+ const void* pNext;
2069
+ VkCommandPool commandPool;
2070
+ VkCommandBufferLevel level;
2071
+ uint32_t commandBufferCount;
2072
+ } VkCommandBufferAllocateInfo;
2073
+
2074
+ typedef struct VkCommandBufferInheritanceInfo {
2075
+ VkStructureType sType;
2076
+ const void* pNext;
2077
+ VkRenderPass renderPass;
2078
+ uint32_t subpass;
2079
+ VkFramebuffer framebuffer;
2080
+ VkBool32 occlusionQueryEnable;
2081
+ VkQueryControlFlags queryFlags;
2082
+ VkQueryPipelineStatisticFlags pipelineStatistics;
2083
+ } VkCommandBufferInheritanceInfo;
2084
+
2085
+ typedef struct VkCommandBufferBeginInfo {
2086
+ VkStructureType sType;
2087
+ const void* pNext;
2088
+ VkCommandBufferUsageFlags flags;
2089
+ const VkCommandBufferInheritanceInfo* pInheritanceInfo;
2090
+ } VkCommandBufferBeginInfo;
2091
+
2092
+ typedef struct VkBufferCopy {
2093
+ VkDeviceSize srcOffset;
2094
+ VkDeviceSize dstOffset;
2095
+ VkDeviceSize size;
2096
+ } VkBufferCopy;
2097
+
2098
+ typedef struct VkImageSubresourceLayers {
2099
+ VkImageAspectFlags aspectMask;
2100
+ uint32_t mipLevel;
2101
+ uint32_t baseArrayLayer;
2102
+ uint32_t layerCount;
2103
+ } VkImageSubresourceLayers;
2104
+
2105
+ typedef struct VkImageCopy {
2106
+ VkImageSubresourceLayers srcSubresource;
2107
+ VkOffset3D srcOffset;
2108
+ VkImageSubresourceLayers dstSubresource;
2109
+ VkOffset3D dstOffset;
2110
+ VkExtent3D extent;
2111
+ } VkImageCopy;
2112
+
2113
+ typedef struct VkImageBlit {
2114
+ VkImageSubresourceLayers srcSubresource;
2115
+ VkOffset3D srcOffsets[2];
2116
+ VkImageSubresourceLayers dstSubresource;
2117
+ VkOffset3D dstOffsets[2];
2118
+ } VkImageBlit;
2119
+
2120
+ typedef struct VkBufferImageCopy {
2121
+ VkDeviceSize bufferOffset;
2122
+ uint32_t bufferRowLength;
2123
+ uint32_t bufferImageHeight;
2124
+ VkImageSubresourceLayers imageSubresource;
2125
+ VkOffset3D imageOffset;
2126
+ VkExtent3D imageExtent;
2127
+ } VkBufferImageCopy;
2128
+
2129
+ typedef union VkClearColorValue {
2130
+ float float32[4];
2131
+ int32_t int32[4];
2132
+ uint32_t uint32[4];
2133
+ } VkClearColorValue;
2134
+
2135
+ typedef struct VkClearDepthStencilValue {
2136
+ float depth;
2137
+ uint32_t stencil;
2138
+ } VkClearDepthStencilValue;
2139
+
2140
+ typedef union VkClearValue {
2141
+ VkClearColorValue color;
2142
+ VkClearDepthStencilValue depthStencil;
2143
+ } VkClearValue;
2144
+
2145
+ typedef struct VkClearAttachment {
2146
+ VkImageAspectFlags aspectMask;
2147
+ uint32_t colorAttachment;
2148
+ VkClearValue clearValue;
2149
+ } VkClearAttachment;
2150
+
2151
+ typedef struct VkClearRect {
2152
+ VkRect2D rect;
2153
+ uint32_t baseArrayLayer;
2154
+ uint32_t layerCount;
2155
+ } VkClearRect;
2156
+
2157
+ typedef struct VkImageResolve {
2158
+ VkImageSubresourceLayers srcSubresource;
2159
+ VkOffset3D srcOffset;
2160
+ VkImageSubresourceLayers dstSubresource;
2161
+ VkOffset3D dstOffset;
2162
+ VkExtent3D extent;
2163
+ } VkImageResolve;
2164
+
2165
+ typedef struct VkMemoryBarrier {
2166
+ VkStructureType sType;
2167
+ const void* pNext;
2168
+ VkAccessFlags srcAccessMask;
2169
+ VkAccessFlags dstAccessMask;
2170
+ } VkMemoryBarrier;
2171
+
2172
+ typedef struct VkBufferMemoryBarrier {
2173
+ VkStructureType sType;
2174
+ const void* pNext;
2175
+ VkAccessFlags srcAccessMask;
2176
+ VkAccessFlags dstAccessMask;
2177
+ uint32_t srcQueueFamilyIndex;
2178
+ uint32_t dstQueueFamilyIndex;
2179
+ VkBuffer buffer;
2180
+ VkDeviceSize offset;
2181
+ VkDeviceSize size;
2182
+ } VkBufferMemoryBarrier;
2183
+
2184
+ typedef struct VkImageMemoryBarrier {
2185
+ VkStructureType sType;
2186
+ const void* pNext;
2187
+ VkAccessFlags srcAccessMask;
2188
+ VkAccessFlags dstAccessMask;
2189
+ VkImageLayout oldLayout;
2190
+ VkImageLayout newLayout;
2191
+ uint32_t srcQueueFamilyIndex;
2192
+ uint32_t dstQueueFamilyIndex;
2193
+ VkImage image;
2194
+ VkImageSubresourceRange subresourceRange;
2195
+ } VkImageMemoryBarrier;
2196
+
2197
+ typedef struct VkRenderPassBeginInfo {
2198
+ VkStructureType sType;
2199
+ const void* pNext;
2200
+ VkRenderPass renderPass;
2201
+ VkFramebuffer framebuffer;
2202
+ VkRect2D renderArea;
2203
+ uint32_t clearValueCount;
2204
+ const VkClearValue* pClearValues;
2205
+ } VkRenderPassBeginInfo;
2206
+
2207
+ typedef struct VkDispatchIndirectCommand {
2208
+ uint32_t x;
2209
+ uint32_t y;
2210
+ uint32_t z;
2211
+ } VkDispatchIndirectCommand;
2212
+
2213
+ typedef struct VkDrawIndexedIndirectCommand {
2214
+ uint32_t indexCount;
2215
+ uint32_t instanceCount;
2216
+ uint32_t firstIndex;
2217
+ int32_t vertexOffset;
2218
+ uint32_t firstInstance;
2219
+ } VkDrawIndexedIndirectCommand;
2220
+
2221
+ typedef struct VkDrawIndirectCommand {
2222
+ uint32_t vertexCount;
2223
+ uint32_t instanceCount;
2224
+ uint32_t firstVertex;
2225
+ uint32_t firstInstance;
2226
+ } VkDrawIndirectCommand;
2227
+
2228
+
2229
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);
2230
+ typedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator);
2231
+ typedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);
2232
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures);
2233
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties);
2234
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties);
2235
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties);
2236
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);
2237
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties);
2238
+ typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName);
2239
+ typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName);
2240
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);
2241
+ typedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator);
2242
+ typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);
2243
+ typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties);
2244
+ typedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties);
2245
+ typedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties);
2246
+ typedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);
2247
+ typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence);
2248
+ typedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue);
2249
+ typedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device);
2250
+ typedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);
2251
+ typedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);
2252
+ typedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData);
2253
+ typedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory);
2254
+ typedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);
2255
+ typedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges);
2256
+ typedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes);
2257
+ typedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset);
2258
+ typedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset);
2259
+ typedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements);
2260
+ typedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements);
2261
+ typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
2262
+ typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);
2263
+ typedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence);
2264
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence);
2265
+ typedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator);
2266
+ typedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences);
2267
+ typedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence);
2268
+ typedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);
2269
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);
2270
+ typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);
2271
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);
2272
+ typedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator);
2273
+ typedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event);
2274
+ typedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event);
2275
+ typedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event);
2276
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);
2277
+ typedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);
2278
+ typedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags);
2279
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);
2280
+ typedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator);
2281
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView);
2282
+ typedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator);
2283
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage);
2284
+ typedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator);
2285
+ typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout);
2286
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView);
2287
+ typedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator);
2288
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule);
2289
+ typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator);
2290
+ typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache);
2291
+ typedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator);
2292
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);
2293
+ typedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);
2294
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
2295
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
2296
+ typedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);
2297
+ typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout);
2298
+ typedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator);
2299
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);
2300
+ typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator);
2301
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout);
2302
+ typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator);
2303
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool);
2304
+ typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator);
2305
+ typedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);
2306
+ typedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets);
2307
+ typedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets);
2308
+ typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies);
2309
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);
2310
+ typedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator);
2311
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
2312
+ typedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator);
2313
+ typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity);
2314
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);
2315
+ typedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator);
2316
+ typedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags);
2317
+ typedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers);
2318
+ typedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);
2319
+ typedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);
2320
+ typedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer);
2321
+ typedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags);
2322
+ typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);
2323
+ typedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports);
2324
+ typedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors);
2325
+ typedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth);
2326
+ typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor);
2327
+ typedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]);
2328
+ typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds);
2329
+ typedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask);
2330
+ typedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask);
2331
+ typedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference);
2332
+ typedef void (VKAPI_PTR *PFN_vkCmdBindDescriptorSets)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets);
2333
+ typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType);
2334
+ typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets);
2335
+ typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);
2336
+ typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);
2337
+ typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
2338
+ typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
2339
+ typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t x, uint32_t y, uint32_t z);
2340
+ typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
2341
+ typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);
2342
+ typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);
2343
+ typedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter);
2344
+ typedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions);
2345
+ typedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions);
2346
+ typedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const uint32_t* pData);
2347
+ typedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data);
2348
+ typedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
2349
+ typedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
2350
+ typedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects);
2351
+ typedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);
2352
+ typedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);
2353
+ typedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask);
2354
+ typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);
2355
+ typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier)(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers);
2356
+ typedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags);
2357
+ typedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);
2358
+ typedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);
2359
+ typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query);
2360
+ typedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags);
2361
+ typedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues);
2362
+ typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents);
2363
+ typedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents);
2364
+ typedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer);
2365
+ typedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);
2366
+
2367
+ #ifndef VK_NO_PROTOTYPES
2368
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(
2369
+ const VkInstanceCreateInfo* pCreateInfo,
2370
+ const VkAllocationCallbacks* pAllocator,
2371
+ VkInstance* pInstance);
2372
+
2373
+ VKAPI_ATTR void VKAPI_CALL vkDestroyInstance(
2374
+ VkInstance instance,
2375
+ const VkAllocationCallbacks* pAllocator);
2376
+
2377
+ VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices(
2378
+ VkInstance instance,
2379
+ uint32_t* pPhysicalDeviceCount,
2380
+ VkPhysicalDevice* pPhysicalDevices);
2381
+
2382
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures(
2383
+ VkPhysicalDevice physicalDevice,
2384
+ VkPhysicalDeviceFeatures* pFeatures);
2385
+
2386
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties(
2387
+ VkPhysicalDevice physicalDevice,
2388
+ VkFormat format,
2389
+ VkFormatProperties* pFormatProperties);
2390
+
2391
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties(
2392
+ VkPhysicalDevice physicalDevice,
2393
+ VkFormat format,
2394
+ VkImageType type,
2395
+ VkImageTiling tiling,
2396
+ VkImageUsageFlags usage,
2397
+ VkImageCreateFlags flags,
2398
+ VkImageFormatProperties* pImageFormatProperties);
2399
+
2400
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties(
2401
+ VkPhysicalDevice physicalDevice,
2402
+ VkPhysicalDeviceProperties* pProperties);
2403
+
2404
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties(
2405
+ VkPhysicalDevice physicalDevice,
2406
+ uint32_t* pQueueFamilyPropertyCount,
2407
+ VkQueueFamilyProperties* pQueueFamilyProperties);
2408
+
2409
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties(
2410
+ VkPhysicalDevice physicalDevice,
2411
+ VkPhysicalDeviceMemoryProperties* pMemoryProperties);
2412
+
2413
+ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(
2414
+ VkInstance instance,
2415
+ const char* pName);
2416
+
2417
+ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(
2418
+ VkDevice device,
2419
+ const char* pName);
2420
+
2421
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice(
2422
+ VkPhysicalDevice physicalDevice,
2423
+ const VkDeviceCreateInfo* pCreateInfo,
2424
+ const VkAllocationCallbacks* pAllocator,
2425
+ VkDevice* pDevice);
2426
+
2427
+ VKAPI_ATTR void VKAPI_CALL vkDestroyDevice(
2428
+ VkDevice device,
2429
+ const VkAllocationCallbacks* pAllocator);
2430
+
2431
+ VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(
2432
+ const char* pLayerName,
2433
+ uint32_t* pPropertyCount,
2434
+ VkExtensionProperties* pProperties);
2435
+
2436
+ VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(
2437
+ VkPhysicalDevice physicalDevice,
2438
+ const char* pLayerName,
2439
+ uint32_t* pPropertyCount,
2440
+ VkExtensionProperties* pProperties);
2441
+
2442
+ VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(
2443
+ uint32_t* pPropertyCount,
2444
+ VkLayerProperties* pProperties);
2445
+
2446
+ VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(
2447
+ VkPhysicalDevice physicalDevice,
2448
+ uint32_t* pPropertyCount,
2449
+ VkLayerProperties* pProperties);
2450
+
2451
+ VKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue(
2452
+ VkDevice device,
2453
+ uint32_t queueFamilyIndex,
2454
+ uint32_t queueIndex,
2455
+ VkQueue* pQueue);
2456
+
2457
+ VKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit(
2458
+ VkQueue queue,
2459
+ uint32_t submitCount,
2460
+ const VkSubmitInfo* pSubmits,
2461
+ VkFence fence);
2462
+
2463
+ VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(
2464
+ VkQueue queue);
2465
+
2466
+ VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(
2467
+ VkDevice device);
2468
+
2469
+ VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(
2470
+ VkDevice device,
2471
+ const VkMemoryAllocateInfo* pAllocateInfo,
2472
+ const VkAllocationCallbacks* pAllocator,
2473
+ VkDeviceMemory* pMemory);
2474
+
2475
+ VKAPI_ATTR void VKAPI_CALL vkFreeMemory(
2476
+ VkDevice device,
2477
+ VkDeviceMemory memory,
2478
+ const VkAllocationCallbacks* pAllocator);
2479
+
2480
+ VKAPI_ATTR VkResult VKAPI_CALL vkMapMemory(
2481
+ VkDevice device,
2482
+ VkDeviceMemory memory,
2483
+ VkDeviceSize offset,
2484
+ VkDeviceSize size,
2485
+ VkMemoryMapFlags flags,
2486
+ void** ppData);
2487
+
2488
+ VKAPI_ATTR void VKAPI_CALL vkUnmapMemory(
2489
+ VkDevice device,
2490
+ VkDeviceMemory memory);
2491
+
2492
+ VKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges(
2493
+ VkDevice device,
2494
+ uint32_t memoryRangeCount,
2495
+ const VkMappedMemoryRange* pMemoryRanges);
2496
+
2497
+ VKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges(
2498
+ VkDevice device,
2499
+ uint32_t memoryRangeCount,
2500
+ const VkMappedMemoryRange* pMemoryRanges);
2501
+
2502
+ VKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment(
2503
+ VkDevice device,
2504
+ VkDeviceMemory memory,
2505
+ VkDeviceSize* pCommittedMemoryInBytes);
2506
+
2507
+ VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory(
2508
+ VkDevice device,
2509
+ VkBuffer buffer,
2510
+ VkDeviceMemory memory,
2511
+ VkDeviceSize memoryOffset);
2512
+
2513
+ VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory(
2514
+ VkDevice device,
2515
+ VkImage image,
2516
+ VkDeviceMemory memory,
2517
+ VkDeviceSize memoryOffset);
2518
+
2519
+ VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements(
2520
+ VkDevice device,
2521
+ VkBuffer buffer,
2522
+ VkMemoryRequirements* pMemoryRequirements);
2523
+
2524
+ VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements(
2525
+ VkDevice device,
2526
+ VkImage image,
2527
+ VkMemoryRequirements* pMemoryRequirements);
2528
+
2529
+ VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(
2530
+ VkDevice device,
2531
+ VkImage image,
2532
+ uint32_t* pSparseMemoryRequirementCount,
2533
+ VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
2534
+
2535
+ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(
2536
+ VkPhysicalDevice physicalDevice,
2537
+ VkFormat format,
2538
+ VkImageType type,
2539
+ VkSampleCountFlagBits samples,
2540
+ VkImageUsageFlags usage,
2541
+ VkImageTiling tiling,
2542
+ uint32_t* pPropertyCount,
2543
+ VkSparseImageFormatProperties* pProperties);
2544
+
2545
+ VKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse(
2546
+ VkQueue queue,
2547
+ uint32_t bindInfoCount,
2548
+ const VkBindSparseInfo* pBindInfo,
2549
+ VkFence fence);
2550
+
2551
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateFence(
2552
+ VkDevice device,
2553
+ const VkFenceCreateInfo* pCreateInfo,
2554
+ const VkAllocationCallbacks* pAllocator,
2555
+ VkFence* pFence);
2556
+
2557
+ VKAPI_ATTR void VKAPI_CALL vkDestroyFence(
2558
+ VkDevice device,
2559
+ VkFence fence,
2560
+ const VkAllocationCallbacks* pAllocator);
2561
+
2562
+ VKAPI_ATTR VkResult VKAPI_CALL vkResetFences(
2563
+ VkDevice device,
2564
+ uint32_t fenceCount,
2565
+ const VkFence* pFences);
2566
+
2567
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus(
2568
+ VkDevice device,
2569
+ VkFence fence);
2570
+
2571
+ VKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences(
2572
+ VkDevice device,
2573
+ uint32_t fenceCount,
2574
+ const VkFence* pFences,
2575
+ VkBool32 waitAll,
2576
+ uint64_t timeout);
2577
+
2578
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore(
2579
+ VkDevice device,
2580
+ const VkSemaphoreCreateInfo* pCreateInfo,
2581
+ const VkAllocationCallbacks* pAllocator,
2582
+ VkSemaphore* pSemaphore);
2583
+
2584
+ VKAPI_ATTR void VKAPI_CALL vkDestroySemaphore(
2585
+ VkDevice device,
2586
+ VkSemaphore semaphore,
2587
+ const VkAllocationCallbacks* pAllocator);
2588
+
2589
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent(
2590
+ VkDevice device,
2591
+ const VkEventCreateInfo* pCreateInfo,
2592
+ const VkAllocationCallbacks* pAllocator,
2593
+ VkEvent* pEvent);
2594
+
2595
+ VKAPI_ATTR void VKAPI_CALL vkDestroyEvent(
2596
+ VkDevice device,
2597
+ VkEvent event,
2598
+ const VkAllocationCallbacks* pAllocator);
2599
+
2600
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus(
2601
+ VkDevice device,
2602
+ VkEvent event);
2603
+
2604
+ VKAPI_ATTR VkResult VKAPI_CALL vkSetEvent(
2605
+ VkDevice device,
2606
+ VkEvent event);
2607
+
2608
+ VKAPI_ATTR VkResult VKAPI_CALL vkResetEvent(
2609
+ VkDevice device,
2610
+ VkEvent event);
2611
+
2612
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool(
2613
+ VkDevice device,
2614
+ const VkQueryPoolCreateInfo* pCreateInfo,
2615
+ const VkAllocationCallbacks* pAllocator,
2616
+ VkQueryPool* pQueryPool);
2617
+
2618
+ VKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool(
2619
+ VkDevice device,
2620
+ VkQueryPool queryPool,
2621
+ const VkAllocationCallbacks* pAllocator);
2622
+
2623
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults(
2624
+ VkDevice device,
2625
+ VkQueryPool queryPool,
2626
+ uint32_t firstQuery,
2627
+ uint32_t queryCount,
2628
+ size_t dataSize,
2629
+ void* pData,
2630
+ VkDeviceSize stride,
2631
+ VkQueryResultFlags flags);
2632
+
2633
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer(
2634
+ VkDevice device,
2635
+ const VkBufferCreateInfo* pCreateInfo,
2636
+ const VkAllocationCallbacks* pAllocator,
2637
+ VkBuffer* pBuffer);
2638
+
2639
+ VKAPI_ATTR void VKAPI_CALL vkDestroyBuffer(
2640
+ VkDevice device,
2641
+ VkBuffer buffer,
2642
+ const VkAllocationCallbacks* pAllocator);
2643
+
2644
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView(
2645
+ VkDevice device,
2646
+ const VkBufferViewCreateInfo* pCreateInfo,
2647
+ const VkAllocationCallbacks* pAllocator,
2648
+ VkBufferView* pView);
2649
+
2650
+ VKAPI_ATTR void VKAPI_CALL vkDestroyBufferView(
2651
+ VkDevice device,
2652
+ VkBufferView bufferView,
2653
+ const VkAllocationCallbacks* pAllocator);
2654
+
2655
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateImage(
2656
+ VkDevice device,
2657
+ const VkImageCreateInfo* pCreateInfo,
2658
+ const VkAllocationCallbacks* pAllocator,
2659
+ VkImage* pImage);
2660
+
2661
+ VKAPI_ATTR void VKAPI_CALL vkDestroyImage(
2662
+ VkDevice device,
2663
+ VkImage image,
2664
+ const VkAllocationCallbacks* pAllocator);
2665
+
2666
+ VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout(
2667
+ VkDevice device,
2668
+ VkImage image,
2669
+ const VkImageSubresource* pSubresource,
2670
+ VkSubresourceLayout* pLayout);
2671
+
2672
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView(
2673
+ VkDevice device,
2674
+ const VkImageViewCreateInfo* pCreateInfo,
2675
+ const VkAllocationCallbacks* pAllocator,
2676
+ VkImageView* pView);
2677
+
2678
+ VKAPI_ATTR void VKAPI_CALL vkDestroyImageView(
2679
+ VkDevice device,
2680
+ VkImageView imageView,
2681
+ const VkAllocationCallbacks* pAllocator);
2682
+
2683
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule(
2684
+ VkDevice device,
2685
+ const VkShaderModuleCreateInfo* pCreateInfo,
2686
+ const VkAllocationCallbacks* pAllocator,
2687
+ VkShaderModule* pShaderModule);
2688
+
2689
+ VKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule(
2690
+ VkDevice device,
2691
+ VkShaderModule shaderModule,
2692
+ const VkAllocationCallbacks* pAllocator);
2693
+
2694
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache(
2695
+ VkDevice device,
2696
+ const VkPipelineCacheCreateInfo* pCreateInfo,
2697
+ const VkAllocationCallbacks* pAllocator,
2698
+ VkPipelineCache* pPipelineCache);
2699
+
2700
+ VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache(
2701
+ VkDevice device,
2702
+ VkPipelineCache pipelineCache,
2703
+ const VkAllocationCallbacks* pAllocator);
2704
+
2705
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData(
2706
+ VkDevice device,
2707
+ VkPipelineCache pipelineCache,
2708
+ size_t* pDataSize,
2709
+ void* pData);
2710
+
2711
+ VKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches(
2712
+ VkDevice device,
2713
+ VkPipelineCache dstCache,
2714
+ uint32_t srcCacheCount,
2715
+ const VkPipelineCache* pSrcCaches);
2716
+
2717
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines(
2718
+ VkDevice device,
2719
+ VkPipelineCache pipelineCache,
2720
+ uint32_t createInfoCount,
2721
+ const VkGraphicsPipelineCreateInfo* pCreateInfos,
2722
+ const VkAllocationCallbacks* pAllocator,
2723
+ VkPipeline* pPipelines);
2724
+
2725
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines(
2726
+ VkDevice device,
2727
+ VkPipelineCache pipelineCache,
2728
+ uint32_t createInfoCount,
2729
+ const VkComputePipelineCreateInfo* pCreateInfos,
2730
+ const VkAllocationCallbacks* pAllocator,
2731
+ VkPipeline* pPipelines);
2732
+
2733
+ VKAPI_ATTR void VKAPI_CALL vkDestroyPipeline(
2734
+ VkDevice device,
2735
+ VkPipeline pipeline,
2736
+ const VkAllocationCallbacks* pAllocator);
2737
+
2738
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout(
2739
+ VkDevice device,
2740
+ const VkPipelineLayoutCreateInfo* pCreateInfo,
2741
+ const VkAllocationCallbacks* pAllocator,
2742
+ VkPipelineLayout* pPipelineLayout);
2743
+
2744
+ VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout(
2745
+ VkDevice device,
2746
+ VkPipelineLayout pipelineLayout,
2747
+ const VkAllocationCallbacks* pAllocator);
2748
+
2749
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler(
2750
+ VkDevice device,
2751
+ const VkSamplerCreateInfo* pCreateInfo,
2752
+ const VkAllocationCallbacks* pAllocator,
2753
+ VkSampler* pSampler);
2754
+
2755
+ VKAPI_ATTR void VKAPI_CALL vkDestroySampler(
2756
+ VkDevice device,
2757
+ VkSampler sampler,
2758
+ const VkAllocationCallbacks* pAllocator);
2759
+
2760
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout(
2761
+ VkDevice device,
2762
+ const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
2763
+ const VkAllocationCallbacks* pAllocator,
2764
+ VkDescriptorSetLayout* pSetLayout);
2765
+
2766
+ VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout(
2767
+ VkDevice device,
2768
+ VkDescriptorSetLayout descriptorSetLayout,
2769
+ const VkAllocationCallbacks* pAllocator);
2770
+
2771
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool(
2772
+ VkDevice device,
2773
+ const VkDescriptorPoolCreateInfo* pCreateInfo,
2774
+ const VkAllocationCallbacks* pAllocator,
2775
+ VkDescriptorPool* pDescriptorPool);
2776
+
2777
+ VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool(
2778
+ VkDevice device,
2779
+ VkDescriptorPool descriptorPool,
2780
+ const VkAllocationCallbacks* pAllocator);
2781
+
2782
+ VKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool(
2783
+ VkDevice device,
2784
+ VkDescriptorPool descriptorPool,
2785
+ VkDescriptorPoolResetFlags flags);
2786
+
2787
+ VKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets(
2788
+ VkDevice device,
2789
+ const VkDescriptorSetAllocateInfo* pAllocateInfo,
2790
+ VkDescriptorSet* pDescriptorSets);
2791
+
2792
+ VKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets(
2793
+ VkDevice device,
2794
+ VkDescriptorPool descriptorPool,
2795
+ uint32_t descriptorSetCount,
2796
+ const VkDescriptorSet* pDescriptorSets);
2797
+
2798
+ VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets(
2799
+ VkDevice device,
2800
+ uint32_t descriptorWriteCount,
2801
+ const VkWriteDescriptorSet* pDescriptorWrites,
2802
+ uint32_t descriptorCopyCount,
2803
+ const VkCopyDescriptorSet* pDescriptorCopies);
2804
+
2805
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer(
2806
+ VkDevice device,
2807
+ const VkFramebufferCreateInfo* pCreateInfo,
2808
+ const VkAllocationCallbacks* pAllocator,
2809
+ VkFramebuffer* pFramebuffer);
2810
+
2811
+ VKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer(
2812
+ VkDevice device,
2813
+ VkFramebuffer framebuffer,
2814
+ const VkAllocationCallbacks* pAllocator);
2815
+
2816
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass(
2817
+ VkDevice device,
2818
+ const VkRenderPassCreateInfo* pCreateInfo,
2819
+ const VkAllocationCallbacks* pAllocator,
2820
+ VkRenderPass* pRenderPass);
2821
+
2822
+ VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(
2823
+ VkDevice device,
2824
+ VkRenderPass renderPass,
2825
+ const VkAllocationCallbacks* pAllocator);
2826
+
2827
+ VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(
2828
+ VkDevice device,
2829
+ VkRenderPass renderPass,
2830
+ VkExtent2D* pGranularity);
2831
+
2832
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(
2833
+ VkDevice device,
2834
+ const VkCommandPoolCreateInfo* pCreateInfo,
2835
+ const VkAllocationCallbacks* pAllocator,
2836
+ VkCommandPool* pCommandPool);
2837
+
2838
+ VKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool(
2839
+ VkDevice device,
2840
+ VkCommandPool commandPool,
2841
+ const VkAllocationCallbacks* pAllocator);
2842
+
2843
+ VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(
2844
+ VkDevice device,
2845
+ VkCommandPool commandPool,
2846
+ VkCommandPoolResetFlags flags);
2847
+
2848
+ VKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers(
2849
+ VkDevice device,
2850
+ const VkCommandBufferAllocateInfo* pAllocateInfo,
2851
+ VkCommandBuffer* pCommandBuffers);
2852
+
2853
+ VKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers(
2854
+ VkDevice device,
2855
+ VkCommandPool commandPool,
2856
+ uint32_t commandBufferCount,
2857
+ const VkCommandBuffer* pCommandBuffers);
2858
+
2859
+ VKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer(
2860
+ VkCommandBuffer commandBuffer,
2861
+ const VkCommandBufferBeginInfo* pBeginInfo);
2862
+
2863
+ VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(
2864
+ VkCommandBuffer commandBuffer);
2865
+
2866
+ VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer(
2867
+ VkCommandBuffer commandBuffer,
2868
+ VkCommandBufferResetFlags flags);
2869
+
2870
+ VKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline(
2871
+ VkCommandBuffer commandBuffer,
2872
+ VkPipelineBindPoint pipelineBindPoint,
2873
+ VkPipeline pipeline);
2874
+
2875
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetViewport(
2876
+ VkCommandBuffer commandBuffer,
2877
+ uint32_t firstViewport,
2878
+ uint32_t viewportCount,
2879
+ const VkViewport* pViewports);
2880
+
2881
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetScissor(
2882
+ VkCommandBuffer commandBuffer,
2883
+ uint32_t firstScissor,
2884
+ uint32_t scissorCount,
2885
+ const VkRect2D* pScissors);
2886
+
2887
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth(
2888
+ VkCommandBuffer commandBuffer,
2889
+ float lineWidth);
2890
+
2891
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias(
2892
+ VkCommandBuffer commandBuffer,
2893
+ float depthBiasConstantFactor,
2894
+ float depthBiasClamp,
2895
+ float depthBiasSlopeFactor);
2896
+
2897
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants(
2898
+ VkCommandBuffer commandBuffer,
2899
+ const float blendConstants[4]);
2900
+
2901
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds(
2902
+ VkCommandBuffer commandBuffer,
2903
+ float minDepthBounds,
2904
+ float maxDepthBounds);
2905
+
2906
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask(
2907
+ VkCommandBuffer commandBuffer,
2908
+ VkStencilFaceFlags faceMask,
2909
+ uint32_t compareMask);
2910
+
2911
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask(
2912
+ VkCommandBuffer commandBuffer,
2913
+ VkStencilFaceFlags faceMask,
2914
+ uint32_t writeMask);
2915
+
2916
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference(
2917
+ VkCommandBuffer commandBuffer,
2918
+ VkStencilFaceFlags faceMask,
2919
+ uint32_t reference);
2920
+
2921
+ VKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets(
2922
+ VkCommandBuffer commandBuffer,
2923
+ VkPipelineBindPoint pipelineBindPoint,
2924
+ VkPipelineLayout layout,
2925
+ uint32_t firstSet,
2926
+ uint32_t descriptorSetCount,
2927
+ const VkDescriptorSet* pDescriptorSets,
2928
+ uint32_t dynamicOffsetCount,
2929
+ const uint32_t* pDynamicOffsets);
2930
+
2931
+ VKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer(
2932
+ VkCommandBuffer commandBuffer,
2933
+ VkBuffer buffer,
2934
+ VkDeviceSize offset,
2935
+ VkIndexType indexType);
2936
+
2937
+ VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers(
2938
+ VkCommandBuffer commandBuffer,
2939
+ uint32_t firstBinding,
2940
+ uint32_t bindingCount,
2941
+ const VkBuffer* pBuffers,
2942
+ const VkDeviceSize* pOffsets);
2943
+
2944
+ VKAPI_ATTR void VKAPI_CALL vkCmdDraw(
2945
+ VkCommandBuffer commandBuffer,
2946
+ uint32_t vertexCount,
2947
+ uint32_t instanceCount,
2948
+ uint32_t firstVertex,
2949
+ uint32_t firstInstance);
2950
+
2951
+ VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed(
2952
+ VkCommandBuffer commandBuffer,
2953
+ uint32_t indexCount,
2954
+ uint32_t instanceCount,
2955
+ uint32_t firstIndex,
2956
+ int32_t vertexOffset,
2957
+ uint32_t firstInstance);
2958
+
2959
+ VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect(
2960
+ VkCommandBuffer commandBuffer,
2961
+ VkBuffer buffer,
2962
+ VkDeviceSize offset,
2963
+ uint32_t drawCount,
2964
+ uint32_t stride);
2965
+
2966
+ VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(
2967
+ VkCommandBuffer commandBuffer,
2968
+ VkBuffer buffer,
2969
+ VkDeviceSize offset,
2970
+ uint32_t drawCount,
2971
+ uint32_t stride);
2972
+
2973
+ VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(
2974
+ VkCommandBuffer commandBuffer,
2975
+ uint32_t x,
2976
+ uint32_t y,
2977
+ uint32_t z);
2978
+
2979
+ VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(
2980
+ VkCommandBuffer commandBuffer,
2981
+ VkBuffer buffer,
2982
+ VkDeviceSize offset);
2983
+
2984
+ VKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer(
2985
+ VkCommandBuffer commandBuffer,
2986
+ VkBuffer srcBuffer,
2987
+ VkBuffer dstBuffer,
2988
+ uint32_t regionCount,
2989
+ const VkBufferCopy* pRegions);
2990
+
2991
+ VKAPI_ATTR void VKAPI_CALL vkCmdCopyImage(
2992
+ VkCommandBuffer commandBuffer,
2993
+ VkImage srcImage,
2994
+ VkImageLayout srcImageLayout,
2995
+ VkImage dstImage,
2996
+ VkImageLayout dstImageLayout,
2997
+ uint32_t regionCount,
2998
+ const VkImageCopy* pRegions);
2999
+
3000
+ VKAPI_ATTR void VKAPI_CALL vkCmdBlitImage(
3001
+ VkCommandBuffer commandBuffer,
3002
+ VkImage srcImage,
3003
+ VkImageLayout srcImageLayout,
3004
+ VkImage dstImage,
3005
+ VkImageLayout dstImageLayout,
3006
+ uint32_t regionCount,
3007
+ const VkImageBlit* pRegions,
3008
+ VkFilter filter);
3009
+
3010
+ VKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage(
3011
+ VkCommandBuffer commandBuffer,
3012
+ VkBuffer srcBuffer,
3013
+ VkImage dstImage,
3014
+ VkImageLayout dstImageLayout,
3015
+ uint32_t regionCount,
3016
+ const VkBufferImageCopy* pRegions);
3017
+
3018
+ VKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer(
3019
+ VkCommandBuffer commandBuffer,
3020
+ VkImage srcImage,
3021
+ VkImageLayout srcImageLayout,
3022
+ VkBuffer dstBuffer,
3023
+ uint32_t regionCount,
3024
+ const VkBufferImageCopy* pRegions);
3025
+
3026
+ VKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer(
3027
+ VkCommandBuffer commandBuffer,
3028
+ VkBuffer dstBuffer,
3029
+ VkDeviceSize dstOffset,
3030
+ VkDeviceSize dataSize,
3031
+ const uint32_t* pData);
3032
+
3033
+ VKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer(
3034
+ VkCommandBuffer commandBuffer,
3035
+ VkBuffer dstBuffer,
3036
+ VkDeviceSize dstOffset,
3037
+ VkDeviceSize size,
3038
+ uint32_t data);
3039
+
3040
+ VKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage(
3041
+ VkCommandBuffer commandBuffer,
3042
+ VkImage image,
3043
+ VkImageLayout imageLayout,
3044
+ const VkClearColorValue* pColor,
3045
+ uint32_t rangeCount,
3046
+ const VkImageSubresourceRange* pRanges);
3047
+
3048
+ VKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage(
3049
+ VkCommandBuffer commandBuffer,
3050
+ VkImage image,
3051
+ VkImageLayout imageLayout,
3052
+ const VkClearDepthStencilValue* pDepthStencil,
3053
+ uint32_t rangeCount,
3054
+ const VkImageSubresourceRange* pRanges);
3055
+
3056
+ VKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments(
3057
+ VkCommandBuffer commandBuffer,
3058
+ uint32_t attachmentCount,
3059
+ const VkClearAttachment* pAttachments,
3060
+ uint32_t rectCount,
3061
+ const VkClearRect* pRects);
3062
+
3063
+ VKAPI_ATTR void VKAPI_CALL vkCmdResolveImage(
3064
+ VkCommandBuffer commandBuffer,
3065
+ VkImage srcImage,
3066
+ VkImageLayout srcImageLayout,
3067
+ VkImage dstImage,
3068
+ VkImageLayout dstImageLayout,
3069
+ uint32_t regionCount,
3070
+ const VkImageResolve* pRegions);
3071
+
3072
+ VKAPI_ATTR void VKAPI_CALL vkCmdSetEvent(
3073
+ VkCommandBuffer commandBuffer,
3074
+ VkEvent event,
3075
+ VkPipelineStageFlags stageMask);
3076
+
3077
+ VKAPI_ATTR void VKAPI_CALL vkCmdResetEvent(
3078
+ VkCommandBuffer commandBuffer,
3079
+ VkEvent event,
3080
+ VkPipelineStageFlags stageMask);
3081
+
3082
+ VKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents(
3083
+ VkCommandBuffer commandBuffer,
3084
+ uint32_t eventCount,
3085
+ const VkEvent* pEvents,
3086
+ VkPipelineStageFlags srcStageMask,
3087
+ VkPipelineStageFlags dstStageMask,
3088
+ uint32_t memoryBarrierCount,
3089
+ const VkMemoryBarrier* pMemoryBarriers,
3090
+ uint32_t bufferMemoryBarrierCount,
3091
+ const VkBufferMemoryBarrier* pBufferMemoryBarriers,
3092
+ uint32_t imageMemoryBarrierCount,
3093
+ const VkImageMemoryBarrier* pImageMemoryBarriers);
3094
+
3095
+ VKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier(
3096
+ VkCommandBuffer commandBuffer,
3097
+ VkPipelineStageFlags srcStageMask,
3098
+ VkPipelineStageFlags dstStageMask,
3099
+ VkDependencyFlags dependencyFlags,
3100
+ uint32_t memoryBarrierCount,
3101
+ const VkMemoryBarrier* pMemoryBarriers,
3102
+ uint32_t bufferMemoryBarrierCount,
3103
+ const VkBufferMemoryBarrier* pBufferMemoryBarriers,
3104
+ uint32_t imageMemoryBarrierCount,
3105
+ const VkImageMemoryBarrier* pImageMemoryBarriers);
3106
+
3107
+ VKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery(
3108
+ VkCommandBuffer commandBuffer,
3109
+ VkQueryPool queryPool,
3110
+ uint32_t query,
3111
+ VkQueryControlFlags flags);
3112
+
3113
+ VKAPI_ATTR void VKAPI_CALL vkCmdEndQuery(
3114
+ VkCommandBuffer commandBuffer,
3115
+ VkQueryPool queryPool,
3116
+ uint32_t query);
3117
+
3118
+ VKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool(
3119
+ VkCommandBuffer commandBuffer,
3120
+ VkQueryPool queryPool,
3121
+ uint32_t firstQuery,
3122
+ uint32_t queryCount);
3123
+
3124
+ VKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp(
3125
+ VkCommandBuffer commandBuffer,
3126
+ VkPipelineStageFlagBits pipelineStage,
3127
+ VkQueryPool queryPool,
3128
+ uint32_t query);
3129
+
3130
+ VKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults(
3131
+ VkCommandBuffer commandBuffer,
3132
+ VkQueryPool queryPool,
3133
+ uint32_t firstQuery,
3134
+ uint32_t queryCount,
3135
+ VkBuffer dstBuffer,
3136
+ VkDeviceSize dstOffset,
3137
+ VkDeviceSize stride,
3138
+ VkQueryResultFlags flags);
3139
+
3140
+ VKAPI_ATTR void VKAPI_CALL vkCmdPushConstants(
3141
+ VkCommandBuffer commandBuffer,
3142
+ VkPipelineLayout layout,
3143
+ VkShaderStageFlags stageFlags,
3144
+ uint32_t offset,
3145
+ uint32_t size,
3146
+ const void* pValues);
3147
+
3148
+ VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass(
3149
+ VkCommandBuffer commandBuffer,
3150
+ const VkRenderPassBeginInfo* pRenderPassBegin,
3151
+ VkSubpassContents contents);
3152
+
3153
+ VKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass(
3154
+ VkCommandBuffer commandBuffer,
3155
+ VkSubpassContents contents);
3156
+
3157
+ VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass(
3158
+ VkCommandBuffer commandBuffer);
3159
+
3160
+ VKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands(
3161
+ VkCommandBuffer commandBuffer,
3162
+ uint32_t commandBufferCount,
3163
+ const VkCommandBuffer* pCommandBuffers);
3164
+ #endif
3165
+
3166
+ #define VK_KHR_surface 1
3167
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)
3168
+
3169
+ #define VK_KHR_SURFACE_SPEC_VERSION 25
3170
+ #define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface"
3171
+
3172
+
3173
+ typedef enum VkColorSpaceKHR {
3174
+ VK_COLORSPACE_SRGB_NONLINEAR_KHR = 0,
3175
+ VK_COLOR_SPACE_BEGIN_RANGE_KHR = VK_COLORSPACE_SRGB_NONLINEAR_KHR,
3176
+ VK_COLOR_SPACE_END_RANGE_KHR = VK_COLORSPACE_SRGB_NONLINEAR_KHR,
3177
+ VK_COLOR_SPACE_RANGE_SIZE_KHR = (VK_COLORSPACE_SRGB_NONLINEAR_KHR - VK_COLORSPACE_SRGB_NONLINEAR_KHR + 1),
3178
+ VK_COLOR_SPACE_MAX_ENUM_KHR = 0x7FFFFFFF
3179
+ } VkColorSpaceKHR;
3180
+
3181
+ typedef enum VkPresentModeKHR {
3182
+ VK_PRESENT_MODE_IMMEDIATE_KHR = 0,
3183
+ VK_PRESENT_MODE_MAILBOX_KHR = 1,
3184
+ VK_PRESENT_MODE_FIFO_KHR = 2,
3185
+ VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3,
3186
+ VK_PRESENT_MODE_BEGIN_RANGE_KHR = VK_PRESENT_MODE_IMMEDIATE_KHR,
3187
+ VK_PRESENT_MODE_END_RANGE_KHR = VK_PRESENT_MODE_FIFO_RELAXED_KHR,
3188
+ VK_PRESENT_MODE_RANGE_SIZE_KHR = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1),
3189
+ VK_PRESENT_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
3190
+ } VkPresentModeKHR;
3191
+
3192
+
3193
+ typedef enum VkSurfaceTransformFlagBitsKHR {
3194
+ VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001,
3195
+ VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,
3196
+ VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,
3197
+ VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,
3198
+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,
3199
+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,
3200
+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,
3201
+ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,
3202
+ VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,
3203
+ VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
3204
+ } VkSurfaceTransformFlagBitsKHR;
3205
+ typedef VkFlags VkSurfaceTransformFlagsKHR;
3206
+
3207
+ typedef enum VkCompositeAlphaFlagBitsKHR {
3208
+ VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,
3209
+ VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002,
3210
+ VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004,
3211
+ VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008,
3212
+ VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
3213
+ } VkCompositeAlphaFlagBitsKHR;
3214
+ typedef VkFlags VkCompositeAlphaFlagsKHR;
3215
+
3216
+ typedef struct VkSurfaceCapabilitiesKHR {
3217
+ uint32_t minImageCount;
3218
+ uint32_t maxImageCount;
3219
+ VkExtent2D currentExtent;
3220
+ VkExtent2D minImageExtent;
3221
+ VkExtent2D maxImageExtent;
3222
+ uint32_t maxImageArrayLayers;
3223
+ VkSurfaceTransformFlagsKHR supportedTransforms;
3224
+ VkSurfaceTransformFlagBitsKHR currentTransform;
3225
+ VkCompositeAlphaFlagsKHR supportedCompositeAlpha;
3226
+ VkImageUsageFlags supportedUsageFlags;
3227
+ } VkSurfaceCapabilitiesKHR;
3228
+
3229
+ typedef struct VkSurfaceFormatKHR {
3230
+ VkFormat format;
3231
+ VkColorSpaceKHR colorSpace;
3232
+ } VkSurfaceFormatKHR;
3233
+
3234
+
3235
+ typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator);
3236
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported);
3237
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
3238
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats);
3239
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);
3240
+
3241
+ #ifndef VK_NO_PROTOTYPES
3242
+ VKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR(
3243
+ VkInstance instance,
3244
+ VkSurfaceKHR surface,
3245
+ const VkAllocationCallbacks* pAllocator);
3246
+
3247
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR(
3248
+ VkPhysicalDevice physicalDevice,
3249
+ uint32_t queueFamilyIndex,
3250
+ VkSurfaceKHR surface,
3251
+ VkBool32* pSupported);
3252
+
3253
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR(
3254
+ VkPhysicalDevice physicalDevice,
3255
+ VkSurfaceKHR surface,
3256
+ VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
3257
+
3258
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR(
3259
+ VkPhysicalDevice physicalDevice,
3260
+ VkSurfaceKHR surface,
3261
+ uint32_t* pSurfaceFormatCount,
3262
+ VkSurfaceFormatKHR* pSurfaceFormats);
3263
+
3264
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR(
3265
+ VkPhysicalDevice physicalDevice,
3266
+ VkSurfaceKHR surface,
3267
+ uint32_t* pPresentModeCount,
3268
+ VkPresentModeKHR* pPresentModes);
3269
+ #endif
3270
+
3271
+ #define VK_KHR_swapchain 1
3272
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)
3273
+
3274
+ #define VK_KHR_SWAPCHAIN_SPEC_VERSION 68
3275
+ #define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain"
3276
+
3277
+ typedef VkFlags VkSwapchainCreateFlagsKHR;
3278
+
3279
+ typedef struct VkSwapchainCreateInfoKHR {
3280
+ VkStructureType sType;
3281
+ const void* pNext;
3282
+ VkSwapchainCreateFlagsKHR flags;
3283
+ VkSurfaceKHR surface;
3284
+ uint32_t minImageCount;
3285
+ VkFormat imageFormat;
3286
+ VkColorSpaceKHR imageColorSpace;
3287
+ VkExtent2D imageExtent;
3288
+ uint32_t imageArrayLayers;
3289
+ VkImageUsageFlags imageUsage;
3290
+ VkSharingMode imageSharingMode;
3291
+ uint32_t queueFamilyIndexCount;
3292
+ const uint32_t* pQueueFamilyIndices;
3293
+ VkSurfaceTransformFlagBitsKHR preTransform;
3294
+ VkCompositeAlphaFlagBitsKHR compositeAlpha;
3295
+ VkPresentModeKHR presentMode;
3296
+ VkBool32 clipped;
3297
+ VkSwapchainKHR oldSwapchain;
3298
+ } VkSwapchainCreateInfoKHR;
3299
+
3300
+ typedef struct VkPresentInfoKHR {
3301
+ VkStructureType sType;
3302
+ const void* pNext;
3303
+ uint32_t waitSemaphoreCount;
3304
+ const VkSemaphore* pWaitSemaphores;
3305
+ uint32_t swapchainCount;
3306
+ const VkSwapchainKHR* pSwapchains;
3307
+ const uint32_t* pImageIndices;
3308
+ VkResult* pResults;
3309
+ } VkPresentInfoKHR;
3310
+
3311
+
3312
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);
3313
+ typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator);
3314
+ typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);
3315
+ typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);
3316
+ typedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);
3317
+
3318
+ #ifndef VK_NO_PROTOTYPES
3319
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR(
3320
+ VkDevice device,
3321
+ const VkSwapchainCreateInfoKHR* pCreateInfo,
3322
+ const VkAllocationCallbacks* pAllocator,
3323
+ VkSwapchainKHR* pSwapchain);
3324
+
3325
+ VKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR(
3326
+ VkDevice device,
3327
+ VkSwapchainKHR swapchain,
3328
+ const VkAllocationCallbacks* pAllocator);
3329
+
3330
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR(
3331
+ VkDevice device,
3332
+ VkSwapchainKHR swapchain,
3333
+ uint32_t* pSwapchainImageCount,
3334
+ VkImage* pSwapchainImages);
3335
+
3336
+ VKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR(
3337
+ VkDevice device,
3338
+ VkSwapchainKHR swapchain,
3339
+ uint64_t timeout,
3340
+ VkSemaphore semaphore,
3341
+ VkFence fence,
3342
+ uint32_t* pImageIndex);
3343
+
3344
+ VKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR(
3345
+ VkQueue queue,
3346
+ const VkPresentInfoKHR* pPresentInfo);
3347
+ #endif
3348
+
3349
+ #define VK_KHR_display 1
3350
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)
3351
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR)
3352
+
3353
+ #define VK_KHR_DISPLAY_SPEC_VERSION 21
3354
+ #define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display"
3355
+
3356
+
3357
+ typedef enum VkDisplayPlaneAlphaFlagBitsKHR {
3358
+ VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001,
3359
+ VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002,
3360
+ VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,
3361
+ VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,
3362
+ VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
3363
+ } VkDisplayPlaneAlphaFlagBitsKHR;
3364
+ typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;
3365
+ typedef VkFlags VkDisplayModeCreateFlagsKHR;
3366
+ typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;
3367
+
3368
+ typedef struct VkDisplayPropertiesKHR {
3369
+ VkDisplayKHR display;
3370
+ const char* displayName;
3371
+ VkExtent2D physicalDimensions;
3372
+ VkExtent2D physicalResolution;
3373
+ VkSurfaceTransformFlagsKHR supportedTransforms;
3374
+ VkBool32 planeReorderPossible;
3375
+ VkBool32 persistentContent;
3376
+ } VkDisplayPropertiesKHR;
3377
+
3378
+ typedef struct VkDisplayModeParametersKHR {
3379
+ VkExtent2D visibleRegion;
3380
+ uint32_t refreshRate;
3381
+ } VkDisplayModeParametersKHR;
3382
+
3383
+ typedef struct VkDisplayModePropertiesKHR {
3384
+ VkDisplayModeKHR displayMode;
3385
+ VkDisplayModeParametersKHR parameters;
3386
+ } VkDisplayModePropertiesKHR;
3387
+
3388
+ typedef struct VkDisplayModeCreateInfoKHR {
3389
+ VkStructureType sType;
3390
+ const void* pNext;
3391
+ VkDisplayModeCreateFlagsKHR flags;
3392
+ VkDisplayModeParametersKHR parameters;
3393
+ } VkDisplayModeCreateInfoKHR;
3394
+
3395
+ typedef struct VkDisplayPlaneCapabilitiesKHR {
3396
+ VkDisplayPlaneAlphaFlagsKHR supportedAlpha;
3397
+ VkOffset2D minSrcPosition;
3398
+ VkOffset2D maxSrcPosition;
3399
+ VkExtent2D minSrcExtent;
3400
+ VkExtent2D maxSrcExtent;
3401
+ VkOffset2D minDstPosition;
3402
+ VkOffset2D maxDstPosition;
3403
+ VkExtent2D minDstExtent;
3404
+ VkExtent2D maxDstExtent;
3405
+ } VkDisplayPlaneCapabilitiesKHR;
3406
+
3407
+ typedef struct VkDisplayPlanePropertiesKHR {
3408
+ VkDisplayKHR currentDisplay;
3409
+ uint32_t currentStackIndex;
3410
+ } VkDisplayPlanePropertiesKHR;
3411
+
3412
+ typedef struct VkDisplaySurfaceCreateInfoKHR {
3413
+ VkStructureType sType;
3414
+ const void* pNext;
3415
+ VkDisplaySurfaceCreateFlagsKHR flags;
3416
+ VkDisplayModeKHR displayMode;
3417
+ uint32_t planeIndex;
3418
+ uint32_t planeStackIndex;
3419
+ VkSurfaceTransformFlagBitsKHR transform;
3420
+ float globalAlpha;
3421
+ VkDisplayPlaneAlphaFlagBitsKHR alphaMode;
3422
+ VkExtent2D imageExtent;
3423
+ } VkDisplaySurfaceCreateInfoKHR;
3424
+
3425
+
3426
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties);
3427
+ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);
3428
+ typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);
3429
+ typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);
3430
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);
3431
+ typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);
3432
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3433
+
3434
+ #ifndef VK_NO_PROTOTYPES
3435
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR(
3436
+ VkPhysicalDevice physicalDevice,
3437
+ uint32_t* pPropertyCount,
3438
+ VkDisplayPropertiesKHR* pProperties);
3439
+
3440
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR(
3441
+ VkPhysicalDevice physicalDevice,
3442
+ uint32_t* pPropertyCount,
3443
+ VkDisplayPlanePropertiesKHR* pProperties);
3444
+
3445
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR(
3446
+ VkPhysicalDevice physicalDevice,
3447
+ uint32_t planeIndex,
3448
+ uint32_t* pDisplayCount,
3449
+ VkDisplayKHR* pDisplays);
3450
+
3451
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR(
3452
+ VkPhysicalDevice physicalDevice,
3453
+ VkDisplayKHR display,
3454
+ uint32_t* pPropertyCount,
3455
+ VkDisplayModePropertiesKHR* pProperties);
3456
+
3457
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(
3458
+ VkPhysicalDevice physicalDevice,
3459
+ VkDisplayKHR display,
3460
+ const VkDisplayModeCreateInfoKHR* pCreateInfo,
3461
+ const VkAllocationCallbacks* pAllocator,
3462
+ VkDisplayModeKHR* pMode);
3463
+
3464
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(
3465
+ VkPhysicalDevice physicalDevice,
3466
+ VkDisplayModeKHR mode,
3467
+ uint32_t planeIndex,
3468
+ VkDisplayPlaneCapabilitiesKHR* pCapabilities);
3469
+
3470
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(
3471
+ VkInstance instance,
3472
+ const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,
3473
+ const VkAllocationCallbacks* pAllocator,
3474
+ VkSurfaceKHR* pSurface);
3475
+ #endif
3476
+
3477
+ #define VK_KHR_display_swapchain 1
3478
+ #define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9
3479
+ #define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"
3480
+
3481
+ typedef struct VkDisplayPresentInfoKHR {
3482
+ VkStructureType sType;
3483
+ const void* pNext;
3484
+ VkRect2D srcRect;
3485
+ VkRect2D dstRect;
3486
+ VkBool32 persistent;
3487
+ } VkDisplayPresentInfoKHR;
3488
+
3489
+
3490
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);
3491
+
3492
+ #ifndef VK_NO_PROTOTYPES
3493
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(
3494
+ VkDevice device,
3495
+ uint32_t swapchainCount,
3496
+ const VkSwapchainCreateInfoKHR* pCreateInfos,
3497
+ const VkAllocationCallbacks* pAllocator,
3498
+ VkSwapchainKHR* pSwapchains);
3499
+ #endif
3500
+
3501
+ #ifdef VK_USE_PLATFORM_XLIB_KHR
3502
+ #define VK_KHR_xlib_surface 1
3503
+ #include <X11/Xlib.h>
3504
+
3505
+ #define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6
3506
+ #define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface"
3507
+
3508
+ typedef VkFlags VkXlibSurfaceCreateFlagsKHR;
3509
+
3510
+ typedef struct VkXlibSurfaceCreateInfoKHR {
3511
+ VkStructureType sType;
3512
+ const void* pNext;
3513
+ VkXlibSurfaceCreateFlagsKHR flags;
3514
+ Display* dpy;
3515
+ Window window;
3516
+ } VkXlibSurfaceCreateInfoKHR;
3517
+
3518
+
3519
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3520
+ typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID);
3521
+
3522
+ #ifndef VK_NO_PROTOTYPES
3523
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR(
3524
+ VkInstance instance,
3525
+ const VkXlibSurfaceCreateInfoKHR* pCreateInfo,
3526
+ const VkAllocationCallbacks* pAllocator,
3527
+ VkSurfaceKHR* pSurface);
3528
+
3529
+ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR(
3530
+ VkPhysicalDevice physicalDevice,
3531
+ uint32_t queueFamilyIndex,
3532
+ Display* dpy,
3533
+ VisualID visualID);
3534
+ #endif
3535
+ #endif /* VK_USE_PLATFORM_XLIB_KHR */
3536
+
3537
+ #ifdef VK_USE_PLATFORM_XCB_KHR
3538
+ #define VK_KHR_xcb_surface 1
3539
+ #include <xcb/xcb.h>
3540
+
3541
+ #define VK_KHR_XCB_SURFACE_SPEC_VERSION 6
3542
+ #define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface"
3543
+
3544
+ typedef VkFlags VkXcbSurfaceCreateFlagsKHR;
3545
+
3546
+ typedef struct VkXcbSurfaceCreateInfoKHR {
3547
+ VkStructureType sType;
3548
+ const void* pNext;
3549
+ VkXcbSurfaceCreateFlagsKHR flags;
3550
+ xcb_connection_t* connection;
3551
+ xcb_window_t window;
3552
+ } VkXcbSurfaceCreateInfoKHR;
3553
+
3554
+
3555
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3556
+ typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id);
3557
+
3558
+ #ifndef VK_NO_PROTOTYPES
3559
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR(
3560
+ VkInstance instance,
3561
+ const VkXcbSurfaceCreateInfoKHR* pCreateInfo,
3562
+ const VkAllocationCallbacks* pAllocator,
3563
+ VkSurfaceKHR* pSurface);
3564
+
3565
+ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(
3566
+ VkPhysicalDevice physicalDevice,
3567
+ uint32_t queueFamilyIndex,
3568
+ xcb_connection_t* connection,
3569
+ xcb_visualid_t visual_id);
3570
+ #endif
3571
+ #endif /* VK_USE_PLATFORM_XCB_KHR */
3572
+
3573
+ #ifdef VK_USE_PLATFORM_WAYLAND_KHR
3574
+ #define VK_KHR_wayland_surface 1
3575
+ #include <wayland-client.h>
3576
+
3577
+ #define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 5
3578
+ #define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface"
3579
+
3580
+ typedef VkFlags VkWaylandSurfaceCreateFlagsKHR;
3581
+
3582
+ typedef struct VkWaylandSurfaceCreateInfoKHR {
3583
+ VkStructureType sType;
3584
+ const void* pNext;
3585
+ VkWaylandSurfaceCreateFlagsKHR flags;
3586
+ struct wl_display* display;
3587
+ struct wl_surface* surface;
3588
+ } VkWaylandSurfaceCreateInfoKHR;
3589
+
3590
+
3591
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3592
+ typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display);
3593
+
3594
+ #ifndef VK_NO_PROTOTYPES
3595
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR(
3596
+ VkInstance instance,
3597
+ const VkWaylandSurfaceCreateInfoKHR* pCreateInfo,
3598
+ const VkAllocationCallbacks* pAllocator,
3599
+ VkSurfaceKHR* pSurface);
3600
+
3601
+ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR(
3602
+ VkPhysicalDevice physicalDevice,
3603
+ uint32_t queueFamilyIndex,
3604
+ struct wl_display* display);
3605
+ #endif
3606
+ #endif /* VK_USE_PLATFORM_WAYLAND_KHR */
3607
+
3608
+ #ifdef VK_USE_PLATFORM_MIR_KHR
3609
+ #define VK_KHR_mir_surface 1
3610
+ #include <mir_toolkit/client_types.h>
3611
+
3612
+ #define VK_KHR_MIR_SURFACE_SPEC_VERSION 4
3613
+ #define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface"
3614
+
3615
+ typedef VkFlags VkMirSurfaceCreateFlagsKHR;
3616
+
3617
+ typedef struct VkMirSurfaceCreateInfoKHR {
3618
+ VkStructureType sType;
3619
+ const void* pNext;
3620
+ VkMirSurfaceCreateFlagsKHR flags;
3621
+ MirConnection* connection;
3622
+ MirSurface* mirSurface;
3623
+ } VkMirSurfaceCreateInfoKHR;
3624
+
3625
+
3626
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3627
+ typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection);
3628
+
3629
+ #ifndef VK_NO_PROTOTYPES
3630
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR(
3631
+ VkInstance instance,
3632
+ const VkMirSurfaceCreateInfoKHR* pCreateInfo,
3633
+ const VkAllocationCallbacks* pAllocator,
3634
+ VkSurfaceKHR* pSurface);
3635
+
3636
+ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR(
3637
+ VkPhysicalDevice physicalDevice,
3638
+ uint32_t queueFamilyIndex,
3639
+ MirConnection* connection);
3640
+ #endif
3641
+ #endif /* VK_USE_PLATFORM_MIR_KHR */
3642
+
3643
+ #ifdef VK_USE_PLATFORM_ANDROID_KHR
3644
+ #define VK_KHR_android_surface 1
3645
+ #include <android/native_window.h>
3646
+
3647
+ #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
3648
+ #define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"
3649
+
3650
+ typedef VkFlags VkAndroidSurfaceCreateFlagsKHR;
3651
+
3652
+ typedef struct VkAndroidSurfaceCreateInfoKHR {
3653
+ VkStructureType sType;
3654
+ const void* pNext;
3655
+ VkAndroidSurfaceCreateFlagsKHR flags;
3656
+ ANativeWindow* window;
3657
+ } VkAndroidSurfaceCreateInfoKHR;
3658
+
3659
+
3660
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3661
+
3662
+ #ifndef VK_NO_PROTOTYPES
3663
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(
3664
+ VkInstance instance,
3665
+ const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
3666
+ const VkAllocationCallbacks* pAllocator,
3667
+ VkSurfaceKHR* pSurface);
3668
+ #endif
3669
+ #endif /* VK_USE_PLATFORM_ANDROID_KHR */
3670
+
3671
+ #ifdef VK_USE_PLATFORM_WIN32_KHR
3672
+ #define VK_KHR_win32_surface 1
3673
+ #include <windows.h>
3674
+
3675
+ #define VK_KHR_WIN32_SURFACE_SPEC_VERSION 5
3676
+ #define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface"
3677
+
3678
+ typedef VkFlags VkWin32SurfaceCreateFlagsKHR;
3679
+
3680
+ typedef struct VkWin32SurfaceCreateInfoKHR {
3681
+ VkStructureType sType;
3682
+ const void* pNext;
3683
+ VkWin32SurfaceCreateFlagsKHR flags;
3684
+ HINSTANCE hinstance;
3685
+ HWND hwnd;
3686
+ } VkWin32SurfaceCreateInfoKHR;
3687
+
3688
+
3689
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
3690
+ typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex);
3691
+
3692
+ #ifndef VK_NO_PROTOTYPES
3693
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(
3694
+ VkInstance instance,
3695
+ const VkWin32SurfaceCreateInfoKHR* pCreateInfo,
3696
+ const VkAllocationCallbacks* pAllocator,
3697
+ VkSurfaceKHR* pSurface);
3698
+
3699
+ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(
3700
+ VkPhysicalDevice physicalDevice,
3701
+ uint32_t queueFamilyIndex);
3702
+ #endif
3703
+ #endif /* VK_USE_PLATFORM_WIN32_KHR */
3704
+
3705
+ #define VK_KHR_sampler_mirror_clamp_to_edge 1
3706
+ #define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1
3707
+ #define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge"
3708
+
3709
+
3710
+ #define VK_EXT_debug_report 1
3711
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
3712
+
3713
+ #define VK_EXT_DEBUG_REPORT_SPEC_VERSION 2
3714
+ #define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"
3715
+ #define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT
3716
+
3717
+
3718
+ typedef enum VkDebugReportObjectTypeEXT {
3719
+ VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0,
3720
+ VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1,
3721
+ VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2,
3722
+ VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3,
3723
+ VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4,
3724
+ VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5,
3725
+ VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6,
3726
+ VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7,
3727
+ VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8,
3728
+ VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9,
3729
+ VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10,
3730
+ VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11,
3731
+ VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12,
3732
+ VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13,
3733
+ VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14,
3734
+ VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15,
3735
+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16,
3736
+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17,
3737
+ VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18,
3738
+ VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19,
3739
+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20,
3740
+ VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21,
3741
+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22,
3742
+ VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23,
3743
+ VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24,
3744
+ VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25,
3745
+ VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,
3746
+ VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,
3747
+ VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = 28,
3748
+ VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
3749
+ VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,
3750
+ VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),
3751
+ VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
3752
+ } VkDebugReportObjectTypeEXT;
3753
+
3754
+ typedef enum VkDebugReportErrorEXT {
3755
+ VK_DEBUG_REPORT_ERROR_NONE_EXT = 0,
3756
+ VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT = 1,
3757
+ VK_DEBUG_REPORT_ERROR_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_ERROR_NONE_EXT,
3758
+ VK_DEBUG_REPORT_ERROR_END_RANGE_EXT = VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT,
3759
+ VK_DEBUG_REPORT_ERROR_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT - VK_DEBUG_REPORT_ERROR_NONE_EXT + 1),
3760
+ VK_DEBUG_REPORT_ERROR_MAX_ENUM_EXT = 0x7FFFFFFF
3761
+ } VkDebugReportErrorEXT;
3762
+
3763
+
3764
+ typedef enum VkDebugReportFlagBitsEXT {
3765
+ VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 0x00000001,
3766
+ VK_DEBUG_REPORT_WARNING_BIT_EXT = 0x00000002,
3767
+ VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 0x00000004,
3768
+ VK_DEBUG_REPORT_ERROR_BIT_EXT = 0x00000008,
3769
+ VK_DEBUG_REPORT_DEBUG_BIT_EXT = 0x00000010,
3770
+ VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
3771
+ } VkDebugReportFlagBitsEXT;
3772
+ typedef VkFlags VkDebugReportFlagsEXT;
3773
+
3774
+ typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)(
3775
+ VkDebugReportFlagsEXT flags,
3776
+ VkDebugReportObjectTypeEXT objectType,
3777
+ uint64_t object,
3778
+ size_t location,
3779
+ int32_t messageCode,
3780
+ const char* pLayerPrefix,
3781
+ const char* pMessage,
3782
+ void* pUserData);
3783
+
3784
+
3785
+ typedef struct VkDebugReportCallbackCreateInfoEXT {
3786
+ VkStructureType sType;
3787
+ const void* pNext;
3788
+ VkDebugReportFlagsEXT flags;
3789
+ PFN_vkDebugReportCallbackEXT pfnCallback;
3790
+ void* pUserData;
3791
+ } VkDebugReportCallbackCreateInfoEXT;
3792
+
3793
+
3794
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateDebugReportCallbackEXT)(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);
3795
+ typedef void (VKAPI_PTR *PFN_vkDestroyDebugReportCallbackEXT)(VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);
3796
+ typedef void (VKAPI_PTR *PFN_vkDebugReportMessageEXT)(VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage);
3797
+
3798
+ #ifndef VK_NO_PROTOTYPES
3799
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDebugReportCallbackEXT(
3800
+ VkInstance instance,
3801
+ const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,
3802
+ const VkAllocationCallbacks* pAllocator,
3803
+ VkDebugReportCallbackEXT* pCallback);
3804
+
3805
+ VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(
3806
+ VkInstance instance,
3807
+ VkDebugReportCallbackEXT callback,
3808
+ const VkAllocationCallbacks* pAllocator);
3809
+
3810
+ VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(
3811
+ VkInstance instance,
3812
+ VkDebugReportFlagsEXT flags,
3813
+ VkDebugReportObjectTypeEXT objectType,
3814
+ uint64_t object,
3815
+ size_t location,
3816
+ int32_t messageCode,
3817
+ const char* pLayerPrefix,
3818
+ const char* pMessage);
3819
+ #endif
3820
+
3821
+ #define VK_NV_glsl_shader 1
3822
+ #define VK_NV_GLSL_SHADER_SPEC_VERSION 1
3823
+ #define VK_NV_GLSL_SHADER_EXTENSION_NAME "VK_NV_glsl_shader"
3824
+
3825
+
3826
+ #define VK_IMG_filter_cubic 1
3827
+ #define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1
3828
+ #define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"
3829
+
3830
+
3831
+ #ifdef __cplusplus
3832
+ }
3833
+ #endif
3834
+
3835
+ #endif