vulkan-ruby 0.1.0 → 1.3.207.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (267) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +6 -4
  3. data/README.md +9 -0
  4. data/lib/vulkan/conversions.rb +13 -2
  5. data/lib/vulkan/generated/commands.rb +469 -291
  6. data/lib/vulkan/generated/enums.rb +3442 -250
  7. data/lib/vulkan/generated/structs.rb +2860 -297
  8. data/lib/vulkan/generated/types.rb +601 -341
  9. data/lib/vulkan/generated/version.rb +16 -0
  10. data/lib/vulkan/generated/vk.xml +13685 -3301
  11. data/lib/vulkan/generated.rb +3 -33
  12. data/lib/vulkan/manual_types.rb +44 -0
  13. data/lib/vulkan/version.rb +8 -1
  14. data/tasks/fetch.rake +2 -1
  15. data/tasks/generate/enums.rake +94 -25
  16. data/tasks/generate/extensions.rake +26 -27
  17. data/tasks/generate/types.rake +97 -75
  18. data/tasks/generate/version.rake +32 -0
  19. data/tasks/generate.rake +7 -1
  20. data/vulkan-ruby.gemspec +5 -5
  21. metadata +14 -257
  22. data/lib/vulkan/generated/extensions/reserved_do_not_use_146.rb +0 -8
  23. data/lib/vulkan/generated/extensions/reserved_do_not_use_94.rb +0 -8
  24. data/lib/vulkan/generated/extensions/vk_amd_buffer_marker.rb +0 -10
  25. data/lib/vulkan/generated/extensions/vk_amd_draw_indirect_count.rb +0 -10
  26. data/lib/vulkan/generated/extensions/vk_amd_extension_134.rb +0 -10
  27. data/lib/vulkan/generated/extensions/vk_amd_extension_135.rb +0 -10
  28. data/lib/vulkan/generated/extensions/vk_amd_extension_136.rb +0 -10
  29. data/lib/vulkan/generated/extensions/vk_amd_extension_140.rb +0 -10
  30. data/lib/vulkan/generated/extensions/vk_amd_extension_142.rb +0 -10
  31. data/lib/vulkan/generated/extensions/vk_amd_extension_143.rb +0 -10
  32. data/lib/vulkan/generated/extensions/vk_amd_extension_17.rb +0 -10
  33. data/lib/vulkan/generated/extensions/vk_amd_extension_18.rb +0 -10
  34. data/lib/vulkan/generated/extensions/vk_amd_extension_182.rb +0 -10
  35. data/lib/vulkan/generated/extensions/vk_amd_extension_183.rb +0 -10
  36. data/lib/vulkan/generated/extensions/vk_amd_extension_184.rb +0 -10
  37. data/lib/vulkan/generated/extensions/vk_amd_extension_187.rb +0 -10
  38. data/lib/vulkan/generated/extensions/vk_amd_extension_188.rb +0 -10
  39. data/lib/vulkan/generated/extensions/vk_amd_extension_189.rb +0 -10
  40. data/lib/vulkan/generated/extensions/vk_amd_extension_20.rb +0 -10
  41. data/lib/vulkan/generated/extensions/vk_amd_extension_214.rb +0 -10
  42. data/lib/vulkan/generated/extensions/vk_amd_extension_226.rb +0 -10
  43. data/lib/vulkan/generated/extensions/vk_amd_extension_227.rb +0 -10
  44. data/lib/vulkan/generated/extensions/vk_amd_extension_228.rb +0 -10
  45. data/lib/vulkan/generated/extensions/vk_amd_extension_229.rb +0 -10
  46. data/lib/vulkan/generated/extensions/vk_amd_extension_230.rb +0 -10
  47. data/lib/vulkan/generated/extensions/vk_amd_extension_231.rb +0 -10
  48. data/lib/vulkan/generated/extensions/vk_amd_extension_232.rb +0 -10
  49. data/lib/vulkan/generated/extensions/vk_amd_extension_233.rb +0 -10
  50. data/lib/vulkan/generated/extensions/vk_amd_extension_234.rb +0 -10
  51. data/lib/vulkan/generated/extensions/vk_amd_extension_235.rb +0 -10
  52. data/lib/vulkan/generated/extensions/vk_amd_extension_236.rb +0 -10
  53. data/lib/vulkan/generated/extensions/vk_amd_extension_24.rb +0 -10
  54. data/lib/vulkan/generated/extensions/vk_amd_extension_25.rb +0 -10
  55. data/lib/vulkan/generated/extensions/vk_amd_extension_32.rb +0 -10
  56. data/lib/vulkan/generated/extensions/vk_amd_extension_33.rb +0 -10
  57. data/lib/vulkan/generated/extensions/vk_amd_extension_35.rb +0 -10
  58. data/lib/vulkan/generated/extensions/vk_amd_extension_39.rb +0 -10
  59. data/lib/vulkan/generated/extensions/vk_amd_extension_40.rb +0 -10
  60. data/lib/vulkan/generated/extensions/vk_amd_extension_41.rb +0 -10
  61. data/lib/vulkan/generated/extensions/vk_amd_extension_44.rb +0 -10
  62. data/lib/vulkan/generated/extensions/vk_amd_extension_45.rb +0 -10
  63. data/lib/vulkan/generated/extensions/vk_amd_extension_46.rb +0 -10
  64. data/lib/vulkan/generated/extensions/vk_amd_gcn_shader.rb +0 -10
  65. data/lib/vulkan/generated/extensions/vk_amd_gpu_shader_half_float.rb +0 -10
  66. data/lib/vulkan/generated/extensions/vk_amd_gpu_shader_int16.rb +0 -10
  67. data/lib/vulkan/generated/extensions/vk_amd_memory_overallocation_behavior.rb +0 -11
  68. data/lib/vulkan/generated/extensions/vk_amd_mixed_attachment_samples.rb +0 -10
  69. data/lib/vulkan/generated/extensions/vk_amd_negative_viewport_height.rb +0 -10
  70. data/lib/vulkan/generated/extensions/vk_amd_rasterization_order.rb +0 -11
  71. data/lib/vulkan/generated/extensions/vk_amd_shader_ballot.rb +0 -10
  72. data/lib/vulkan/generated/extensions/vk_amd_shader_core_properties.rb +0 -11
  73. data/lib/vulkan/generated/extensions/vk_amd_shader_explicit_vertex_parameter.rb +0 -10
  74. data/lib/vulkan/generated/extensions/vk_amd_shader_fragment_mask.rb +0 -10
  75. data/lib/vulkan/generated/extensions/vk_amd_shader_image_load_store_lod.rb +0 -10
  76. data/lib/vulkan/generated/extensions/vk_amd_shader_info.rb +0 -10
  77. data/lib/vulkan/generated/extensions/vk_amd_shader_trinary_minmax.rb +0 -10
  78. data/lib/vulkan/generated/extensions/vk_amd_texture_gather_bias_lod.rb +0 -11
  79. data/lib/vulkan/generated/extensions/vk_android_external_memory_android_hardware_buffer.rb +0 -17
  80. data/lib/vulkan/generated/extensions/vk_android_native_buffer.rb +0 -12
  81. data/lib/vulkan/generated/extensions/vk_arm_extension_01.rb +0 -10
  82. data/lib/vulkan/generated/extensions/vk_arm_extension_198.rb +0 -10
  83. data/lib/vulkan/generated/extensions/vk_ext_acquire_xlib_display.rb +0 -10
  84. data/lib/vulkan/generated/extensions/vk_ext_astc_decode_mode.rb +0 -12
  85. data/lib/vulkan/generated/extensions/vk_ext_blend_operation_advanced.rb +0 -60
  86. data/lib/vulkan/generated/extensions/vk_ext_calibrated_timestamps.rb +0 -11
  87. data/lib/vulkan/generated/extensions/vk_ext_conditional_rendering.rb +0 -16
  88. data/lib/vulkan/generated/extensions/vk_ext_conservative_rasterization.rb +0 -12
  89. data/lib/vulkan/generated/extensions/vk_ext_debug_marker.rb +0 -13
  90. data/lib/vulkan/generated/extensions/vk_ext_debug_report.rb +0 -16
  91. data/lib/vulkan/generated/extensions/vk_ext_debug_utils.rb +0 -16
  92. data/lib/vulkan/generated/extensions/vk_ext_depth_range_unrestricted.rb +0 -10
  93. data/lib/vulkan/generated/extensions/vk_ext_descriptor_indexing.rb +0 -18
  94. data/lib/vulkan/generated/extensions/vk_ext_direct_mode_display.rb +0 -10
  95. data/lib/vulkan/generated/extensions/vk_ext_discard_rectangles.rb +0 -13
  96. data/lib/vulkan/generated/extensions/vk_ext_display_control.rb +0 -14
  97. data/lib/vulkan/generated/extensions/vk_ext_display_surface_counter.rb +0 -12
  98. data/lib/vulkan/generated/extensions/vk_ext_extension_160.rb +0 -10
  99. data/lib/vulkan/generated/extensions/vk_ext_extension_176.rb +0 -10
  100. data/lib/vulkan/generated/extensions/vk_ext_extension_177.rb +0 -10
  101. data/lib/vulkan/generated/extensions/vk_ext_extension_219.rb +0 -15
  102. data/lib/vulkan/generated/extensions/vk_ext_extension_220.rb +0 -10
  103. data/lib/vulkan/generated/extensions/vk_ext_extension_222.rb +0 -10
  104. data/lib/vulkan/generated/extensions/vk_ext_extension_223.rb +0 -10
  105. data/lib/vulkan/generated/extensions/vk_ext_extension_28.rb +0 -10
  106. data/lib/vulkan/generated/extensions/vk_ext_external_memory_dma_buf.rb +0 -11
  107. data/lib/vulkan/generated/extensions/vk_ext_external_memory_host.rb +0 -15
  108. data/lib/vulkan/generated/extensions/vk_ext_global_priority.rb +0 -12
  109. data/lib/vulkan/generated/extensions/vk_ext_hdr_metadata.rb +0 -11
  110. data/lib/vulkan/generated/extensions/vk_ext_image_drm_format_modifier.rb +0 -24
  111. data/lib/vulkan/generated/extensions/vk_ext_inline_uniform_block.rb +0 -15
  112. data/lib/vulkan/generated/extensions/vk_ext_macos_ios_window.rb +0 -10
  113. data/lib/vulkan/generated/extensions/vk_ext_pci_bus_info.rb +0 -11
  114. data/lib/vulkan/generated/extensions/vk_ext_post_depth_coverage.rb +0 -10
  115. data/lib/vulkan/generated/extensions/vk_ext_queue_family_foreign.rb +0 -11
  116. data/lib/vulkan/generated/extensions/vk_ext_sample_locations.rb +0 -17
  117. data/lib/vulkan/generated/extensions/vk_ext_sampler_filter_minmax.rb +0 -13
  118. data/lib/vulkan/generated/extensions/vk_ext_shader_stencil_export.rb +0 -10
  119. data/lib/vulkan/generated/extensions/vk_ext_shader_subgroup_ballot.rb +0 -10
  120. data/lib/vulkan/generated/extensions/vk_ext_shader_subgroup_vote.rb +0 -10
  121. data/lib/vulkan/generated/extensions/vk_ext_shader_viewport_index_layer.rb +0 -10
  122. data/lib/vulkan/generated/extensions/vk_ext_swapchain_colorspace.rb +0 -24
  123. data/lib/vulkan/generated/extensions/vk_ext_transform_feedback.rb +0 -20
  124. data/lib/vulkan/generated/extensions/vk_ext_validation_cache.rb +0 -13
  125. data/lib/vulkan/generated/extensions/vk_ext_validation_flags.rb +0 -11
  126. data/lib/vulkan/generated/extensions/vk_ext_vertex_attribute_divisor.rb +0 -13
  127. data/lib/vulkan/generated/extensions/vk_fuchsia_imagepipe_surface.rb +0 -11
  128. data/lib/vulkan/generated/extensions/vk_google_decorate_string.rb +0 -10
  129. data/lib/vulkan/generated/extensions/vk_google_display_timing.rb +0 -11
  130. data/lib/vulkan/generated/extensions/vk_google_extension_192.rb +0 -10
  131. data/lib/vulkan/generated/extensions/vk_google_extension_193.rb +0 -10
  132. data/lib/vulkan/generated/extensions/vk_google_extension_194.rb +0 -10
  133. data/lib/vulkan/generated/extensions/vk_google_extension_195.rb +0 -10
  134. data/lib/vulkan/generated/extensions/vk_google_extension_196.rb +0 -10
  135. data/lib/vulkan/generated/extensions/vk_google_extension_216.rb +0 -10
  136. data/lib/vulkan/generated/extensions/vk_google_extension_217.rb +0 -10
  137. data/lib/vulkan/generated/extensions/vk_google_extension_49.rb +0 -10
  138. data/lib/vulkan/generated/extensions/vk_google_extension_50.rb +0 -10
  139. data/lib/vulkan/generated/extensions/vk_google_hlsl_functionality1.rb +0 -10
  140. data/lib/vulkan/generated/extensions/vk_img_extension_107.rb +0 -10
  141. data/lib/vulkan/generated/extensions/vk_img_extension_108.rb +0 -10
  142. data/lib/vulkan/generated/extensions/vk_img_extension_109.rb +0 -10
  143. data/lib/vulkan/generated/extensions/vk_img_extension_111.rb +0 -10
  144. data/lib/vulkan/generated/extensions/vk_img_extension_69.rb +0 -10
  145. data/lib/vulkan/generated/extensions/vk_img_filter_cubic.rb +0 -12
  146. data/lib/vulkan/generated/extensions/vk_img_format_pvrtc.rb +0 -18
  147. data/lib/vulkan/generated/extensions/vk_intel_extension_210.rb +0 -10
  148. data/lib/vulkan/generated/extensions/vk_intel_extension_211.rb +0 -10
  149. data/lib/vulkan/generated/extensions/vk_intel_extension_243.rb +0 -10
  150. data/lib/vulkan/generated/extensions/vk_khr_16bit_storage.rb +0 -11
  151. data/lib/vulkan/generated/extensions/vk_khr_8bit_storage.rb +0 -11
  152. data/lib/vulkan/generated/extensions/vk_khr_android_surface.rb +0 -11
  153. data/lib/vulkan/generated/extensions/vk_khr_bind_memory2.rb +0 -13
  154. data/lib/vulkan/generated/extensions/vk_khr_create_renderpass2.rb +0 -17
  155. data/lib/vulkan/generated/extensions/vk_khr_dedicated_allocation.rb +0 -12
  156. data/lib/vulkan/generated/extensions/vk_khr_descriptor_update_template.rb +0 -15
  157. data/lib/vulkan/generated/extensions/vk_khr_device_group.rb +0 -33
  158. data/lib/vulkan/generated/extensions/vk_khr_device_group_creation.rb +0 -14
  159. data/lib/vulkan/generated/extensions/vk_khr_display.rb +0 -14
  160. data/lib/vulkan/generated/extensions/vk_khr_display_swapchain.rb +0 -12
  161. data/lib/vulkan/generated/extensions/vk_khr_draw_indirect_count.rb +0 -10
  162. data/lib/vulkan/generated/extensions/vk_khr_driver_properties.rb +0 -13
  163. data/lib/vulkan/generated/extensions/vk_khr_extension_117.rb +0 -10
  164. data/lib/vulkan/generated/extensions/vk_khr_extension_119.rb +0 -10
  165. data/lib/vulkan/generated/extensions/vk_khr_extension_200.rb +0 -10
  166. data/lib/vulkan/generated/extensions/vk_khr_extension_201.rb +0 -10
  167. data/lib/vulkan/generated/extensions/vk_khr_extension_208.rb +0 -10
  168. data/lib/vulkan/generated/extensions/vk_khr_extension_209.rb +0 -10
  169. data/lib/vulkan/generated/extensions/vk_khr_extension_221.rb +0 -11
  170. data/lib/vulkan/generated/extensions/vk_khr_extension_237.rb +0 -10
  171. data/lib/vulkan/generated/extensions/vk_khr_extension_238.rb +0 -10
  172. data/lib/vulkan/generated/extensions/vk_khr_extension_239.rb +0 -10
  173. data/lib/vulkan/generated/extensions/vk_khr_extension_240.rb +0 -10
  174. data/lib/vulkan/generated/extensions/vk_khr_extension_83.rb +0 -10
  175. data/lib/vulkan/generated/extensions/vk_khr_external_fence.rb +0 -12
  176. data/lib/vulkan/generated/extensions/vk_khr_external_fence_capabilities.rb +0 -19
  177. data/lib/vulkan/generated/extensions/vk_khr_external_fence_fd.rb +0 -12
  178. data/lib/vulkan/generated/extensions/vk_khr_external_fence_win32.rb +0 -13
  179. data/lib/vulkan/generated/extensions/vk_khr_external_memory.rb +0 -15
  180. data/lib/vulkan/generated/extensions/vk_khr_external_memory_capabilities.rb +0 -26
  181. data/lib/vulkan/generated/extensions/vk_khr_external_memory_fd.rb +0 -13
  182. data/lib/vulkan/generated/extensions/vk_khr_external_memory_win32.rb +0 -14
  183. data/lib/vulkan/generated/extensions/vk_khr_external_semaphore.rb +0 -12
  184. data/lib/vulkan/generated/extensions/vk_khr_external_semaphore_capabilities.rb +0 -20
  185. data/lib/vulkan/generated/extensions/vk_khr_external_semaphore_fd.rb +0 -12
  186. data/lib/vulkan/generated/extensions/vk_khr_external_semaphore_win32.rb +0 -14
  187. data/lib/vulkan/generated/extensions/vk_khr_get_display_properties2.rb +0 -15
  188. data/lib/vulkan/generated/extensions/vk_khr_get_memory_requirements2.rb +0 -15
  189. data/lib/vulkan/generated/extensions/vk_khr_get_physical_device_properties2.rb +0 -19
  190. data/lib/vulkan/generated/extensions/vk_khr_get_surface_capabilities2.rb +0 -13
  191. data/lib/vulkan/generated/extensions/vk_khr_image_format_list.rb +0 -11
  192. data/lib/vulkan/generated/extensions/vk_khr_incremental_present.rb +0 -11
  193. data/lib/vulkan/generated/extensions/vk_khr_maintenance1.rb +0 -14
  194. data/lib/vulkan/generated/extensions/vk_khr_maintenance2.rb +0 -22
  195. data/lib/vulkan/generated/extensions/vk_khr_maintenance3.rb +0 -12
  196. data/lib/vulkan/generated/extensions/vk_khr_mir_surface.rb +0 -10
  197. data/lib/vulkan/generated/extensions/vk_khr_multiview.rb +0 -14
  198. data/lib/vulkan/generated/extensions/vk_khr_push_descriptor.rb +0 -13
  199. data/lib/vulkan/generated/extensions/vk_khr_relaxed_block_layout.rb +0 -10
  200. data/lib/vulkan/generated/extensions/vk_khr_sampler_mirror_clamp_to_edge.rb +0 -11
  201. data/lib/vulkan/generated/extensions/vk_khr_sampler_ycbcr_conversion.rb +0 -73
  202. data/lib/vulkan/generated/extensions/vk_khr_shader_atomic_int64.rb +0 -11
  203. data/lib/vulkan/generated/extensions/vk_khr_shader_draw_parameters.rb +0 -10
  204. data/lib/vulkan/generated/extensions/vk_khr_shared_presentable_image.rb +0 -14
  205. data/lib/vulkan/generated/extensions/vk_khr_storage_buffer_storage_class.rb +0 -10
  206. data/lib/vulkan/generated/extensions/vk_khr_surface.rb +0 -13
  207. data/lib/vulkan/generated/extensions/vk_khr_swapchain.rb +0 -24
  208. data/lib/vulkan/generated/extensions/vk_khr_variable_pointers.rb +0 -11
  209. data/lib/vulkan/generated/extensions/vk_khr_vulkan_memory_model.rb +0 -11
  210. data/lib/vulkan/generated/extensions/vk_khr_wayland_surface.rb +0 -11
  211. data/lib/vulkan/generated/extensions/vk_khr_win32_keyed_mutex.rb +0 -11
  212. data/lib/vulkan/generated/extensions/vk_khr_win32_surface.rb +0 -11
  213. data/lib/vulkan/generated/extensions/vk_khr_xcb_surface.rb +0 -11
  214. data/lib/vulkan/generated/extensions/vk_khr_xlib_surface.rb +0 -11
  215. data/lib/vulkan/generated/extensions/vk_mesa_extension_244.rb +0 -10
  216. data/lib/vulkan/generated/extensions/vk_mvk_ios_surface.rb +0 -11
  217. data/lib/vulkan/generated/extensions/vk_mvk_macos_surface.rb +0 -11
  218. data/lib/vulkan/generated/extensions/vk_mvk_moltenvk.rb +0 -10
  219. data/lib/vulkan/generated/extensions/vk_nn_vi_surface.rb +0 -11
  220. data/lib/vulkan/generated/extensions/vk_nv_clip_space_w_scaling.rb +0 -12
  221. data/lib/vulkan/generated/extensions/vk_nv_compute_shader_derivatives.rb +0 -11
  222. data/lib/vulkan/generated/extensions/vk_nv_corner_sampled_image.rb +0 -12
  223. data/lib/vulkan/generated/extensions/vk_nv_dedicated_allocation.rb +0 -13
  224. data/lib/vulkan/generated/extensions/vk_nv_device_diagnostic_checkpoints.rb +0 -12
  225. data/lib/vulkan/generated/extensions/vk_nv_extension_101.rb +0 -10
  226. data/lib/vulkan/generated/extensions/vk_nv_extension_103.rb +0 -10
  227. data/lib/vulkan/generated/extensions/vk_nv_extension_104.rb +0 -10
  228. data/lib/vulkan/generated/extensions/vk_nv_extension_151.rb +0 -10
  229. data/lib/vulkan/generated/extensions/vk_nv_extension_152.rb +0 -10
  230. data/lib/vulkan/generated/extensions/vk_nv_extension_155.rb +0 -10
  231. data/lib/vulkan/generated/extensions/vk_nv_extension_164.rb +0 -10
  232. data/lib/vulkan/generated/extensions/vk_nv_extension_168.rb +0 -10
  233. data/lib/vulkan/generated/extensions/vk_nv_extension_241.rb +0 -10
  234. data/lib/vulkan/generated/extensions/vk_nv_extension_242.rb +0 -10
  235. data/lib/vulkan/generated/extensions/vk_nv_extension_245.rb +0 -10
  236. data/lib/vulkan/generated/extensions/vk_nv_extension_53.rb +0 -10
  237. data/lib/vulkan/generated/extensions/vk_nv_external_memory.rb +0 -12
  238. data/lib/vulkan/generated/extensions/vk_nv_external_memory_capabilities.rb +0 -10
  239. data/lib/vulkan/generated/extensions/vk_nv_external_memory_win32.rb +0 -12
  240. data/lib/vulkan/generated/extensions/vk_nv_fill_rectangle.rb +0 -11
  241. data/lib/vulkan/generated/extensions/vk_nv_fragment_coverage_to_color.rb +0 -11
  242. data/lib/vulkan/generated/extensions/vk_nv_fragment_shader_barycentric.rb +0 -11
  243. data/lib/vulkan/generated/extensions/vk_nv_framebuffer_mixed_samples.rb +0 -11
  244. data/lib/vulkan/generated/extensions/vk_nv_geometry_shader_passthrough.rb +0 -10
  245. data/lib/vulkan/generated/extensions/vk_nv_glsl_shader.rb +0 -11
  246. data/lib/vulkan/generated/extensions/vk_nv_mesh_shader.rb +0 -16
  247. data/lib/vulkan/generated/extensions/vk_nv_ray_tracing.rb +0 -40
  248. data/lib/vulkan/generated/extensions/vk_nv_representative_fragment_test.rb +0 -12
  249. data/lib/vulkan/generated/extensions/vk_nv_sample_mask_override_coverage.rb +0 -10
  250. data/lib/vulkan/generated/extensions/vk_nv_scissor_exclusive.rb +0 -13
  251. data/lib/vulkan/generated/extensions/vk_nv_shader_image_footprint.rb +0 -11
  252. data/lib/vulkan/generated/extensions/vk_nv_shader_subgroup_partitioned.rb +0 -11
  253. data/lib/vulkan/generated/extensions/vk_nv_shading_rate_image.rb +0 -20
  254. data/lib/vulkan/generated/extensions/vk_nv_viewport_array2.rb +0 -10
  255. data/lib/vulkan/generated/extensions/vk_nv_viewport_swizzle.rb +0 -11
  256. data/lib/vulkan/generated/extensions/vk_nv_win32_keyed_mutex.rb +0 -11
  257. data/lib/vulkan/generated/extensions/vk_nvx_device_generated_commands.rb +0 -21
  258. data/lib/vulkan/generated/extensions/vk_nvx_extension_30.rb +0 -10
  259. data/lib/vulkan/generated/extensions/vk_nvx_extension_31.rb +0 -10
  260. data/lib/vulkan/generated/extensions/vk_nvx_extension_48.rb +0 -10
  261. data/lib/vulkan/generated/extensions/vk_nvx_extension_52.rb +0 -10
  262. data/lib/vulkan/generated/extensions/vk_nvx_multiview_per_view_attributes.rb +0 -13
  263. data/lib/vulkan/generated/extensions/vk_qcom_extension_171.rb +0 -10
  264. data/lib/vulkan/generated/extensions/vk_qcom_extension_172.rb +0 -10
  265. data/lib/vulkan/generated/extensions/vk_qcom_extension_173.rb +0 -10
  266. data/lib/vulkan/generated/extensions/vk_qcom_extension_174.rb +0 -10
  267. data/lib/vulkan/generated/extensions.rb +0 -251
@@ -1,10 +1,80 @@
1
- # vulkan-ruby 0.1.0
1
+ # vulkan-ruby 1.3.207.1
2
2
  #
3
3
  # => https://github.com/sinisterchipmunk/vulkan-ruby
4
4
  #
5
5
  # [NOTICE] This is an automatically generated file.
6
6
 
7
7
  module Vulkan
8
+ VkAabbPositionsKHR = struct ["float minX",
9
+ "float minY",
10
+ "float minZ",
11
+ "float maxX",
12
+ "float maxY",
13
+ "float maxZ"]
14
+
15
+ VkAabbPositionsNV = VkAabbPositionsKHR
16
+
17
+ VkDeviceOrHostAddressConstKHR = union ["VkDeviceAddress deviceAddress",
18
+ "void * hostAddress"]
19
+ VkAccelerationStructureGeometryTrianglesDataKHR = struct ["VkStructureType sType",
20
+ "void * pNext",
21
+ "VkFormat vertexFormat",
22
+ { "vertexData" => VkDeviceOrHostAddressConstKHR },
23
+ "VkDeviceSize vertexStride",
24
+ "uint32_t maxVertex",
25
+ "VkIndexType indexType",
26
+ { "indexData" => VkDeviceOrHostAddressConstKHR },
27
+ { "transformData" => VkDeviceOrHostAddressConstKHR }]
28
+ VkAccelerationStructureGeometryAabbsDataKHR = struct ["VkStructureType sType",
29
+ "void * pNext",
30
+ { "data" => VkDeviceOrHostAddressConstKHR },
31
+ "VkDeviceSize stride"]
32
+ VkAccelerationStructureGeometryInstancesDataKHR = struct ["VkStructureType sType",
33
+ "void * pNext",
34
+ "VkBool32 arrayOfPointers",
35
+ { "data" => VkDeviceOrHostAddressConstKHR }]
36
+ VkAccelerationStructureGeometryDataKHR = union [{ "triangles" => VkAccelerationStructureGeometryTrianglesDataKHR },
37
+ { "aabbs" => VkAccelerationStructureGeometryAabbsDataKHR },
38
+ { "instances" => VkAccelerationStructureGeometryInstancesDataKHR }]
39
+ VkAccelerationStructureGeometryKHR = struct ["VkStructureType sType",
40
+ "void * pNext",
41
+ "VkGeometryTypeKHR geometryType",
42
+ { "geometry" => VkAccelerationStructureGeometryDataKHR },
43
+ "VkGeometryFlagsKHR flags"]
44
+ VkDeviceOrHostAddressKHR = union ["VkDeviceAddress deviceAddress",
45
+ "void * hostAddress"]
46
+ VkAccelerationStructureBuildGeometryInfoKHR = struct ["VkStructureType sType",
47
+ "void * pNext",
48
+ "VkAccelerationStructureTypeKHR type",
49
+ "VkBuildAccelerationStructureFlagsKHR flags",
50
+ "VkBuildAccelerationStructureModeKHR mode",
51
+ "VkAccelerationStructureKHR srcAccelerationStructure",
52
+ "VkAccelerationStructureKHR dstAccelerationStructure",
53
+ "uint32_t geometryCount",
54
+ "VkAccelerationStructureGeometryKHR * pGeometries",
55
+ "VkAccelerationStructureGeometryKHR * ppGeometries",
56
+ { "scratchData" => VkDeviceOrHostAddressKHR }]
57
+
58
+ VkAccelerationStructureBuildRangeInfoKHR = struct ["uint32_t primitiveCount",
59
+ "uint32_t primitiveOffset",
60
+ "uint32_t firstVertex",
61
+ "uint32_t transformOffset"]
62
+
63
+ VkAccelerationStructureBuildSizesInfoKHR = struct ["VkStructureType sType",
64
+ "void * pNext",
65
+ "VkDeviceSize accelerationStructureSize",
66
+ "VkDeviceSize updateScratchSize",
67
+ "VkDeviceSize buildScratchSize"]
68
+
69
+ VkAccelerationStructureCreateInfoKHR = struct ["VkStructureType sType",
70
+ "void * pNext",
71
+ "VkAccelerationStructureCreateFlagsKHR createFlags",
72
+ "VkBuffer buffer",
73
+ "VkDeviceSize offset",
74
+ "VkDeviceSize size",
75
+ "VkAccelerationStructureTypeKHR type",
76
+ "VkDeviceAddress deviceAddress"]
77
+
8
78
  VkGeometryTrianglesNV = struct ["VkStructureType sType",
9
79
  "void * pNext",
10
80
  "VkBuffer vertexData",
@@ -28,9 +98,9 @@ module Vulkan
28
98
  { "aabbs" => VkGeometryAABBNV }]
29
99
  VkGeometryNV = struct ["VkStructureType sType",
30
100
  "void * pNext",
31
- "VkGeometryTypeNV geometryType",
101
+ "VkGeometryTypeKHR geometryType",
32
102
  { "geometry" => VkGeometryDataNV },
33
- "VkGeometryFlagsNV flags"]
103
+ "VkGeometryFlagsKHR flags"]
34
104
  VkAccelerationStructureInfoNV = struct ["VkStructureType sType",
35
105
  "void * pNext",
36
106
  "VkAccelerationStructureTypeNV type",
@@ -43,11 +113,77 @@ module Vulkan
43
113
  "VkDeviceSize compactedSize",
44
114
  { "info" => VkAccelerationStructureInfoNV }]
45
115
 
116
+ VkAccelerationStructureDeviceAddressInfoKHR = struct ["VkStructureType sType",
117
+ "void * pNext",
118
+ "VkAccelerationStructureKHR accelerationStructure"]
119
+
120
+ VkAccelerationStructureGeometryMotionTrianglesDataNV = struct ["VkStructureType sType",
121
+ "void * pNext",
122
+ { "vertexData" => VkDeviceOrHostAddressConstKHR }]
123
+
124
+ VkTransformMatrixKHR = struct ["float matrix [4]"]
125
+ VkAccelerationStructureInstanceKHR = struct [{ "transform" => VkTransformMatrixKHR },
126
+ "uint32_t instanceCustomIndex",
127
+ "uint32_t mask",
128
+ "uint32_t instanceShaderBindingTableRecordOffset",
129
+ "VkGeometryInstanceFlagsKHR flags",
130
+ "uint64_t accelerationStructureReference"]
131
+
132
+ VkAccelerationStructureInstanceNV = VkAccelerationStructureInstanceKHR
133
+
134
+ VkAccelerationStructureMatrixMotionInstanceNV = struct [{ "transformT0" => VkTransformMatrixKHR },
135
+ { "transformT1" => VkTransformMatrixKHR },
136
+ "uint32_t instanceCustomIndex",
137
+ "uint32_t mask",
138
+ "uint32_t instanceShaderBindingTableRecordOffset",
139
+ "VkGeometryInstanceFlagsKHR flags",
140
+ "uint64_t accelerationStructureReference"]
141
+
46
142
  VkAccelerationStructureMemoryRequirementsInfoNV = struct ["VkStructureType sType",
47
143
  "void * pNext",
48
144
  "VkAccelerationStructureMemoryRequirementsTypeNV type",
49
145
  "VkAccelerationStructureNV accelerationStructure"]
50
146
 
147
+ VkAccelerationStructureMotionInfoNV = struct ["VkStructureType sType",
148
+ "void * pNext",
149
+ "uint32_t maxInstances",
150
+ "VkAccelerationStructureMotionInfoFlagsNV flags"]
151
+
152
+ VkSRTDataNV = struct ["float sx",
153
+ "float a",
154
+ "float b",
155
+ "float pvx",
156
+ "float sy",
157
+ "float c",
158
+ "float pvy",
159
+ "float sz",
160
+ "float pvz",
161
+ "float qx",
162
+ "float qy",
163
+ "float qz",
164
+ "float qw",
165
+ "float tx",
166
+ "float ty",
167
+ "float tz"]
168
+ VkAccelerationStructureSRTMotionInstanceNV = struct [{ "transformT0" => VkSRTDataNV },
169
+ { "transformT1" => VkSRTDataNV },
170
+ "uint32_t instanceCustomIndex",
171
+ "uint32_t mask",
172
+ "uint32_t instanceShaderBindingTableRecordOffset",
173
+ "VkGeometryInstanceFlagsKHR flags",
174
+ "uint64_t accelerationStructureReference"]
175
+ VkAccelerationStructureMotionInstanceDataNV = union [{ "staticInstance" => VkAccelerationStructureInstanceKHR },
176
+ { "matrixMotionInstance" => VkAccelerationStructureMatrixMotionInstanceNV },
177
+ { "srtMotionInstance" => VkAccelerationStructureSRTMotionInstanceNV }]
178
+
179
+ VkAccelerationStructureMotionInstanceNV = struct ["VkAccelerationStructureMotionInstanceTypeNV type",
180
+ "VkAccelerationStructureMotionInstanceFlagsNV flags",
181
+ { "data" => VkAccelerationStructureMotionInstanceDataNV }]
182
+
183
+ VkAccelerationStructureVersionInfoKHR = struct ["VkStructureType sType",
184
+ "void * pNext",
185
+ "uint8_t * pVersionData"]
186
+
51
187
  VkAcquireNextImageInfoKHR = struct ["VkStructureType sType",
52
188
  "void * pNext",
53
189
  "VkSwapchainKHR swapchain",
@@ -56,6 +192,11 @@ module Vulkan
56
192
  "VkFence fence",
57
193
  "uint32_t deviceMask"]
58
194
 
195
+ VkAcquireProfilingLockInfoKHR = struct ["VkStructureType sType",
196
+ "void * pNext",
197
+ "VkAcquireProfilingLockFlagsKHR flags",
198
+ "uint64_t timeout"]
199
+
59
200
  VkAllocationCallbacks = struct ["void * pUserData",
60
201
  "PFN_vkAllocationFunction pfnAllocation",
61
202
  "PFN_vkReallocationFunction pfnReallocation",
@@ -67,6 +208,17 @@ module Vulkan
67
208
  "VkComponentSwizzle g",
68
209
  "VkComponentSwizzle b",
69
210
  "VkComponentSwizzle a"]
211
+ VkAndroidHardwareBufferFormatProperties2ANDROID = struct ["VkStructureType sType",
212
+ "void * pNext",
213
+ "VkFormat format",
214
+ "uint64_t externalFormat",
215
+ "VkFormatFeatureFlags2 formatFeatures",
216
+ { "samplerYcbcrConversionComponents" => VkComponentMapping },
217
+ "VkSamplerYcbcrModelConversion suggestedYcbcrModel",
218
+ "VkSamplerYcbcrRange suggestedYcbcrRange",
219
+ "VkChromaLocation suggestedXChromaOffset",
220
+ "VkChromaLocation suggestedYChromaOffset"]
221
+
70
222
  VkAndroidHardwareBufferFormatPropertiesANDROID = struct ["VkStructureType sType",
71
223
  "void * pNext",
72
224
  "VkFormat format",
@@ -110,26 +262,51 @@ module Vulkan
110
262
  "VkImageLayout initialLayout",
111
263
  "VkImageLayout finalLayout"]
112
264
 
113
- VkAttachmentDescription2KHR = struct ["VkStructureType sType",
114
- "void * pNext",
115
- "VkAttachmentDescriptionFlags flags",
116
- "VkFormat format",
117
- "VkSampleCountFlagBits samples",
118
- "VkAttachmentLoadOp loadOp",
119
- "VkAttachmentStoreOp storeOp",
120
- "VkAttachmentLoadOp stencilLoadOp",
121
- "VkAttachmentStoreOp stencilStoreOp",
122
- "VkImageLayout initialLayout",
123
- "VkImageLayout finalLayout"]
265
+ VkAttachmentDescription2 = struct ["VkStructureType sType",
266
+ "void * pNext",
267
+ "VkAttachmentDescriptionFlags flags",
268
+ "VkFormat format",
269
+ "VkSampleCountFlagBits samples",
270
+ "VkAttachmentLoadOp loadOp",
271
+ "VkAttachmentStoreOp storeOp",
272
+ "VkAttachmentLoadOp stencilLoadOp",
273
+ "VkAttachmentStoreOp stencilStoreOp",
274
+ "VkImageLayout initialLayout",
275
+ "VkImageLayout finalLayout"]
276
+
277
+ VkAttachmentDescription2KHR = VkAttachmentDescription2
278
+
279
+ VkAttachmentDescriptionStencilLayout = struct ["VkStructureType sType",
280
+ "void * pNext",
281
+ "VkImageLayout stencilInitialLayout",
282
+ "VkImageLayout stencilFinalLayout"]
283
+
284
+ VkAttachmentDescriptionStencilLayoutKHR = VkAttachmentDescriptionStencilLayout
124
285
 
125
286
  VkAttachmentReference = struct ["uint32_t attachment",
126
287
  "VkImageLayout layout"]
127
288
 
128
- VkAttachmentReference2KHR = struct ["VkStructureType sType",
129
- "void * pNext",
130
- "uint32_t attachment",
131
- "VkImageLayout layout",
132
- "VkImageAspectFlags aspectMask"]
289
+ VkAttachmentReference2 = struct ["VkStructureType sType",
290
+ "void * pNext",
291
+ "uint32_t attachment",
292
+ "VkImageLayout layout",
293
+ "VkImageAspectFlags aspectMask"]
294
+
295
+ VkAttachmentReference2KHR = VkAttachmentReference2
296
+
297
+ VkAttachmentReferenceStencilLayout = struct ["VkStructureType sType",
298
+ "void * pNext",
299
+ "VkImageLayout stencilLayout"]
300
+
301
+ VkAttachmentReferenceStencilLayoutKHR = VkAttachmentReferenceStencilLayout
302
+
303
+ VkAttachmentSampleCountInfoAMD = struct ["VkStructureType sType",
304
+ "void * pNext",
305
+ "uint32_t colorAttachmentCount",
306
+ "VkSampleCountFlagBits * pColorAttachmentSamples",
307
+ "VkSampleCountFlagBits depthStencilAttachmentSamples"]
308
+
309
+ VkAttachmentSampleCountInfoNV = VkAttachmentSampleCountInfoAMD
133
310
 
134
311
  VkExtent2D = struct ["uint32_t width",
135
312
  "uint32_t height"]
@@ -205,6 +382,12 @@ module Vulkan
205
382
 
206
383
  VkBindImagePlaneMemoryInfoKHR = VkBindImagePlaneMemoryInfo
207
384
 
385
+ VkBindIndexBufferIndirectCommandNV = struct ["VkDeviceAddress bufferAddress",
386
+ "uint32_t size",
387
+ "VkIndexType indexType"]
388
+
389
+ VkBindShaderGroupIndirectCommandNV = struct ["uint32_t groupIndex"]
390
+
208
391
  VkSparseMemoryBind = struct ["VkDeviceSize resourceOffset",
209
392
  "VkDeviceSize size",
210
393
  "VkDeviceMemory memory",
@@ -247,9 +430,70 @@ module Vulkan
247
430
  "uint32_t signalSemaphoreCount",
248
431
  "VkSemaphore * pSignalSemaphores"]
249
432
 
250
- VkBufferCopy = struct ["VkDeviceSize srcOffset",
251
- "VkDeviceSize dstOffset",
252
- "VkDeviceSize size"]
433
+ VkBindVertexBufferIndirectCommandNV = struct ["VkDeviceAddress bufferAddress",
434
+ "uint32_t size",
435
+ "uint32_t stride"]
436
+
437
+ VkImageSubresourceLayers = struct ["VkImageAspectFlags aspectMask",
438
+ "uint32_t mipLevel",
439
+ "uint32_t baseArrayLayer",
440
+ "uint32_t layerCount"]
441
+ VkImageBlit2 = struct ["VkStructureType sType",
442
+ "void * pNext",
443
+ { "srcSubresource" => VkImageSubresourceLayers },
444
+ { "srcOffsets[2]" => VkOffset3D },
445
+ { "dstSubresource" => VkImageSubresourceLayers },
446
+ { "dstOffsets[2]" => VkOffset3D }]
447
+ VkBlitImageInfo2 = struct ["VkStructureType sType",
448
+ "void * pNext",
449
+ "VkImage srcImage",
450
+ "VkImageLayout srcImageLayout",
451
+ "VkImage dstImage",
452
+ "VkImageLayout dstImageLayout",
453
+ "uint32_t regionCount",
454
+ "VkImageBlit2 * pRegions",
455
+ "VkFilter filter"]
456
+
457
+ VkBlitImageInfo2KHR = VkBlitImageInfo2
458
+
459
+ VkBufferCollectionBufferCreateInfoFUCHSIA = struct ["VkStructureType sType",
460
+ "void * pNext",
461
+ "VkBufferCollectionFUCHSIA collection",
462
+ "uint32_t index"]
463
+
464
+ VkBufferCollectionConstraintsInfoFUCHSIA = struct ["VkStructureType sType",
465
+ "void * pNext",
466
+ "uint32_t minBufferCount",
467
+ "uint32_t maxBufferCount",
468
+ "uint32_t minBufferCountForCamping",
469
+ "uint32_t minBufferCountForDedicatedSlack",
470
+ "uint32_t minBufferCountForSharedSlack"]
471
+
472
+ VkBufferCollectionCreateInfoFUCHSIA = struct ["VkStructureType sType",
473
+ "void * pNext",
474
+ "zx_handle_t collectionToken"]
475
+
476
+ VkBufferCollectionImageCreateInfoFUCHSIA = struct ["VkStructureType sType",
477
+ "void * pNext",
478
+ "VkBufferCollectionFUCHSIA collection",
479
+ "uint32_t index"]
480
+
481
+ VkSysmemColorSpaceFUCHSIA = struct ["VkStructureType sType",
482
+ "void * pNext",
483
+ "uint32_t colorSpace"]
484
+ VkBufferCollectionPropertiesFUCHSIA = struct ["VkStructureType sType",
485
+ "void * pNext",
486
+ "uint32_t memoryTypeBits",
487
+ "uint32_t bufferCount",
488
+ "uint32_t createInfoIndex",
489
+ "uint64_t sysmemPixelFormat",
490
+ "VkFormatFeatureFlags formatFeatures",
491
+ { "sysmemColorSpaceIndex" => VkSysmemColorSpaceFUCHSIA },
492
+ { "samplerYcbcrConversionComponents" => VkComponentMapping },
493
+ "VkSamplerYcbcrModelConversion suggestedYcbcrModel",
494
+ "VkSamplerYcbcrRange suggestedYcbcrRange",
495
+ "VkChromaLocation suggestedXChromaOffset",
496
+ "VkChromaLocation suggestedYChromaOffset"]
253
497
 
254
498
  VkBufferCreateInfo = struct ["VkStructureType sType",
255
499
  "void * pNext",
@@ -259,11 +503,36 @@ module Vulkan
259
503
  "VkSharingMode sharingMode",
260
504
  "uint32_t queueFamilyIndexCount",
261
505
  "uint32_t * pQueueFamilyIndices"]
506
+ VkBufferConstraintsInfoFUCHSIA = struct ["VkStructureType sType",
507
+ "void * pNext",
508
+ { "createInfo" => VkBufferCreateInfo },
509
+ "VkFormatFeatureFlags requiredFormatFeatures",
510
+ { "bufferCollectionConstraints" => VkBufferCollectionConstraintsInfoFUCHSIA }]
511
+
512
+ VkBufferCopy = struct ["VkDeviceSize srcOffset",
513
+ "VkDeviceSize dstOffset",
514
+ "VkDeviceSize size"]
515
+
516
+ VkBufferCopy2 = struct ["VkStructureType sType",
517
+ "void * pNext",
518
+ "VkDeviceSize srcOffset",
519
+ "VkDeviceSize dstOffset",
520
+ "VkDeviceSize size"]
521
+
522
+ VkBufferCopy2KHR = VkBufferCopy2
523
+
524
+ VkBufferDeviceAddressCreateInfoEXT = struct ["VkStructureType sType",
525
+ "void * pNext",
526
+ "VkDeviceAddress deviceAddress"]
527
+
528
+ VkBufferDeviceAddressInfo = struct ["VkStructureType sType",
529
+ "void * pNext",
530
+ "VkBuffer buffer"]
531
+
532
+ VkBufferDeviceAddressInfoEXT = VkBufferDeviceAddressInfo
533
+
534
+ VkBufferDeviceAddressInfoKHR = VkBufferDeviceAddressInfo
262
535
 
263
- VkImageSubresourceLayers = struct ["VkImageAspectFlags aspectMask",
264
- "uint32_t mipLevel",
265
- "uint32_t baseArrayLayer",
266
- "uint32_t layerCount"]
267
536
  VkBufferImageCopy = struct ["VkDeviceSize bufferOffset",
268
537
  "uint32_t bufferRowLength",
269
538
  "uint32_t bufferImageHeight",
@@ -271,6 +540,17 @@ module Vulkan
271
540
  { "imageOffset" => VkOffset3D },
272
541
  { "imageExtent" => VkExtent3D }]
273
542
 
543
+ VkBufferImageCopy2 = struct ["VkStructureType sType",
544
+ "void * pNext",
545
+ "VkDeviceSize bufferOffset",
546
+ "uint32_t bufferRowLength",
547
+ "uint32_t bufferImageHeight",
548
+ { "imageSubresource" => VkImageSubresourceLayers },
549
+ { "imageOffset" => VkOffset3D },
550
+ { "imageExtent" => VkExtent3D }]
551
+
552
+ VkBufferImageCopy2KHR = VkBufferImageCopy2
553
+
274
554
  VkBufferMemoryBarrier = struct ["VkStructureType sType",
275
555
  "void * pNext",
276
556
  "VkAccessFlags srcAccessMask",
@@ -281,12 +561,32 @@ module Vulkan
281
561
  "VkDeviceSize offset",
282
562
  "VkDeviceSize size"]
283
563
 
564
+ VkBufferMemoryBarrier2 = struct ["VkStructureType sType",
565
+ "void * pNext",
566
+ "VkPipelineStageFlags2 srcStageMask",
567
+ "VkAccessFlags2 srcAccessMask",
568
+ "VkPipelineStageFlags2 dstStageMask",
569
+ "VkAccessFlags2 dstAccessMask",
570
+ "uint32_t srcQueueFamilyIndex",
571
+ "uint32_t dstQueueFamilyIndex",
572
+ "VkBuffer buffer",
573
+ "VkDeviceSize offset",
574
+ "VkDeviceSize size"]
575
+
576
+ VkBufferMemoryBarrier2KHR = VkBufferMemoryBarrier2
577
+
284
578
  VkBufferMemoryRequirementsInfo2 = struct ["VkStructureType sType",
285
579
  "void * pNext",
286
580
  "VkBuffer buffer"]
287
581
 
288
582
  VkBufferMemoryRequirementsInfo2KHR = VkBufferMemoryRequirementsInfo2
289
583
 
584
+ VkBufferOpaqueCaptureAddressCreateInfo = struct ["VkStructureType sType",
585
+ "void * pNext",
586
+ "uint64_t opaqueCaptureAddress"]
587
+
588
+ VkBufferOpaqueCaptureAddressCreateInfoKHR = VkBufferOpaqueCaptureAddressCreateInfo
589
+
290
590
  VkBufferViewCreateInfo = struct ["VkStructureType sType",
291
591
  "void * pNext",
292
592
  "VkBufferViewCreateFlags flags",
@@ -299,6 +599,11 @@ module Vulkan
299
599
  "void * pNext",
300
600
  "VkTimeDomainEXT timeDomain"]
301
601
 
602
+ VkCheckpointData2NV = struct ["VkStructureType sType",
603
+ "void * pNext",
604
+ "VkPipelineStageFlags2 stage",
605
+ "void * pCheckpointMarker"]
606
+
302
607
  VkCheckpointDataNV = struct ["VkStructureType sType",
303
608
  "void * pNext",
304
609
  "VkPipelineStageFlagBits stage",
@@ -321,28 +626,6 @@ module Vulkan
321
626
  "uint32_t baseArrayLayer",
322
627
  "uint32_t layerCount"]
323
628
 
324
- VkIndirectCommandsTokenNVX = struct ["VkIndirectCommandsTokenTypeNVX tokenType",
325
- "VkBuffer buffer",
326
- "VkDeviceSize offset"]
327
- VkCmdProcessCommandsInfoNVX = struct ["VkStructureType sType",
328
- "void * pNext",
329
- "VkObjectTableNVX objectTable",
330
- "VkIndirectCommandsLayoutNVX indirectCommandsLayout",
331
- "uint32_t indirectCommandsTokenCount",
332
- "VkIndirectCommandsTokenNVX * pIndirectCommandsTokens",
333
- "uint32_t maxSequencesCount",
334
- "VkCommandBuffer targetCommandBuffer",
335
- "VkBuffer sequencesCountBuffer",
336
- "VkDeviceSize sequencesCountOffset",
337
- "VkBuffer sequencesIndexBuffer",
338
- "VkDeviceSize sequencesIndexOffset"]
339
-
340
- VkCmdReserveSpaceForCommandsInfoNVX = struct ["VkStructureType sType",
341
- "void * pNext",
342
- "VkObjectTableNVX objectTable",
343
- "VkIndirectCommandsLayoutNVX indirectCommandsLayout",
344
- "uint32_t maxSequencesCount"]
345
-
346
629
  VkCoarseSampleLocationNV = struct ["uint32_t pixelX",
347
630
  "uint32_t pixelY",
348
631
  "uint32_t sample"]
@@ -375,6 +658,42 @@ module Vulkan
375
658
  "void * pNext",
376
659
  "VkBool32 conditionalRenderingEnable"]
377
660
 
661
+ VkCommandBufferInheritanceRenderPassTransformInfoQCOM = struct ["VkStructureType sType",
662
+ "void * pNext",
663
+ "VkSurfaceTransformFlagBitsKHR transform",
664
+ { "renderArea" => VkRect2D }]
665
+
666
+ VkCommandBufferInheritanceRenderingInfo = struct ["VkStructureType sType",
667
+ "void * pNext",
668
+ "VkRenderingFlags flags",
669
+ "uint32_t viewMask",
670
+ "uint32_t colorAttachmentCount",
671
+ "VkFormat * pColorAttachmentFormats",
672
+ "VkFormat depthAttachmentFormat",
673
+ "VkFormat stencilAttachmentFormat",
674
+ "VkSampleCountFlagBits rasterizationSamples"]
675
+
676
+ VkCommandBufferInheritanceRenderingInfoKHR = VkCommandBufferInheritanceRenderingInfo
677
+
678
+ VkViewport = struct ["float x",
679
+ "float y",
680
+ "float width",
681
+ "float height",
682
+ "float minDepth",
683
+ "float maxDepth"]
684
+ VkCommandBufferInheritanceViewportScissorInfoNV = struct ["VkStructureType sType",
685
+ "void * pNext",
686
+ "VkBool32 viewportScissor2D",
687
+ "uint32_t viewportDepthCount",
688
+ "VkViewport * pViewportDepths"]
689
+
690
+ VkCommandBufferSubmitInfo = struct ["VkStructureType sType",
691
+ "void * pNext",
692
+ "VkCommandBuffer commandBuffer",
693
+ "uint32_t deviceMask"]
694
+
695
+ VkCommandBufferSubmitInfoKHR = VkCommandBufferSubmitInfo
696
+
378
697
  VkCommandPoolCreateInfo = struct ["VkStructureType sType",
379
698
  "void * pNext",
380
699
  "VkCommandPoolCreateFlags flags",
@@ -408,10 +727,58 @@ module Vulkan
408
727
  "VkDeviceSize offset",
409
728
  "VkConditionalRenderingFlagsEXT flags"]
410
729
 
411
- VkConformanceVersionKHR = struct ["uint8_t major",
412
- "uint8_t minor",
413
- "uint8_t subminor",
414
- "uint8_t patch"]
730
+ VkConformanceVersion = struct ["uint8_t major",
731
+ "uint8_t minor",
732
+ "uint8_t subminor",
733
+ "uint8_t patch"]
734
+
735
+ VkConformanceVersionKHR = VkConformanceVersion
736
+
737
+ VkCooperativeMatrixPropertiesNV = struct ["VkStructureType sType",
738
+ "void * pNext",
739
+ "uint32_t MSize",
740
+ "uint32_t NSize",
741
+ "uint32_t KSize",
742
+ "VkComponentTypeNV AType",
743
+ "VkComponentTypeNV BType",
744
+ "VkComponentTypeNV CType",
745
+ "VkComponentTypeNV DType",
746
+ "VkScopeNV scope"]
747
+
748
+ VkCopyAccelerationStructureInfoKHR = struct ["VkStructureType sType",
749
+ "void * pNext",
750
+ "VkAccelerationStructureKHR src",
751
+ "VkAccelerationStructureKHR dst",
752
+ "VkCopyAccelerationStructureModeKHR mode"]
753
+
754
+ VkCopyAccelerationStructureToMemoryInfoKHR = struct ["VkStructureType sType",
755
+ "void * pNext",
756
+ "VkAccelerationStructureKHR src",
757
+ { "dst" => VkDeviceOrHostAddressKHR },
758
+ "VkCopyAccelerationStructureModeKHR mode"]
759
+
760
+ VkCopyBufferInfo2 = struct ["VkStructureType sType",
761
+ "void * pNext",
762
+ "VkBuffer srcBuffer",
763
+ "VkBuffer dstBuffer",
764
+ "uint32_t regionCount",
765
+ "VkBufferCopy2 * pRegions"]
766
+
767
+ VkCopyBufferInfo2KHR = VkCopyBufferInfo2
768
+
769
+ VkCopyBufferToImageInfo2 = struct ["VkStructureType sType",
770
+ "void * pNext",
771
+ "VkBuffer srcBuffer",
772
+ "VkImage dstImage",
773
+ "VkImageLayout dstImageLayout",
774
+ "uint32_t regionCount",
775
+ "VkBufferImageCopy2 * pRegions"]
776
+
777
+ VkCopyBufferToImageInfo2KHR = VkCopyBufferToImageInfo2
778
+
779
+ VkCopyCommandTransformInfoQCOM = struct ["VkStructureType sType",
780
+ "void * pNext",
781
+ "VkSurfaceTransformFlagBitsKHR transform"]
415
782
 
416
783
  VkCopyDescriptorSet = struct ["VkStructureType sType",
417
784
  "void * pNext",
@@ -423,6 +790,65 @@ module Vulkan
423
790
  "uint32_t dstArrayElement",
424
791
  "uint32_t descriptorCount"]
425
792
 
793
+ VkImageCopy2 = struct ["VkStructureType sType",
794
+ "void * pNext",
795
+ { "srcSubresource" => VkImageSubresourceLayers },
796
+ { "srcOffset" => VkOffset3D },
797
+ { "dstSubresource" => VkImageSubresourceLayers },
798
+ { "dstOffset" => VkOffset3D },
799
+ { "extent" => VkExtent3D }]
800
+ VkCopyImageInfo2 = struct ["VkStructureType sType",
801
+ "void * pNext",
802
+ "VkImage srcImage",
803
+ "VkImageLayout srcImageLayout",
804
+ "VkImage dstImage",
805
+ "VkImageLayout dstImageLayout",
806
+ "uint32_t regionCount",
807
+ "VkImageCopy2 * pRegions"]
808
+
809
+ VkCopyImageInfo2KHR = VkCopyImageInfo2
810
+
811
+ VkCopyImageToBufferInfo2 = struct ["VkStructureType sType",
812
+ "void * pNext",
813
+ "VkImage srcImage",
814
+ "VkImageLayout srcImageLayout",
815
+ "VkBuffer dstBuffer",
816
+ "uint32_t regionCount",
817
+ "VkBufferImageCopy2 * pRegions"]
818
+
819
+ VkCopyImageToBufferInfo2KHR = VkCopyImageToBufferInfo2
820
+
821
+ VkCopyMemoryToAccelerationStructureInfoKHR = struct ["VkStructureType sType",
822
+ "void * pNext",
823
+ { "src" => VkDeviceOrHostAddressConstKHR },
824
+ "VkAccelerationStructureKHR dst",
825
+ "VkCopyAccelerationStructureModeKHR mode"]
826
+
827
+ VkCuFunctionCreateInfoNVX = struct ["VkStructureType sType",
828
+ "void * pNext",
829
+ "VkCuModuleNVX module",
830
+ "char * pName"]
831
+
832
+ VkCuLaunchInfoNVX = struct ["VkStructureType sType",
833
+ "void * pNext",
834
+ "VkCuFunctionNVX function",
835
+ "uint32_t gridDimX",
836
+ "uint32_t gridDimY",
837
+ "uint32_t gridDimZ",
838
+ "uint32_t blockDimX",
839
+ "uint32_t blockDimY",
840
+ "uint32_t blockDimZ",
841
+ "uint32_t sharedMemBytes",
842
+ "size_t paramCount",
843
+ "void * pParams",
844
+ "size_t extraCount",
845
+ "void * pExtras"]
846
+
847
+ VkCuModuleCreateInfoNVX = struct ["VkStructureType sType",
848
+ "void * pNext",
849
+ "size_t dataSize",
850
+ "void * pData"]
851
+
426
852
  VkD3D12FenceSubmitInfoKHR = struct ["VkStructureType sType",
427
853
  "void * pNext",
428
854
  "uint32_t waitSemaphoreValuesCount",
@@ -507,6 +933,41 @@ module Vulkan
507
933
  "VkImage image",
508
934
  "VkBuffer buffer"]
509
935
 
936
+ VkMemoryBarrier2 = struct ["VkStructureType sType",
937
+ "void * pNext",
938
+ "VkPipelineStageFlags2 srcStageMask",
939
+ "VkAccessFlags2 srcAccessMask",
940
+ "VkPipelineStageFlags2 dstStageMask",
941
+ "VkAccessFlags2 dstAccessMask"]
942
+ VkImageSubresourceRange = struct ["VkImageAspectFlags aspectMask",
943
+ "uint32_t baseMipLevel",
944
+ "uint32_t levelCount",
945
+ "uint32_t baseArrayLayer",
946
+ "uint32_t layerCount"]
947
+ VkImageMemoryBarrier2 = struct ["VkStructureType sType",
948
+ "void * pNext",
949
+ "VkPipelineStageFlags2 srcStageMask",
950
+ "VkAccessFlags2 srcAccessMask",
951
+ "VkPipelineStageFlags2 dstStageMask",
952
+ "VkAccessFlags2 dstAccessMask",
953
+ "VkImageLayout oldLayout",
954
+ "VkImageLayout newLayout",
955
+ "uint32_t srcQueueFamilyIndex",
956
+ "uint32_t dstQueueFamilyIndex",
957
+ "VkImage image",
958
+ { "subresourceRange" => VkImageSubresourceRange }]
959
+ VkDependencyInfo = struct ["VkStructureType sType",
960
+ "void * pNext",
961
+ "VkDependencyFlags dependencyFlags",
962
+ "uint32_t memoryBarrierCount",
963
+ "VkMemoryBarrier2 * pMemoryBarriers",
964
+ "uint32_t bufferMemoryBarrierCount",
965
+ "VkBufferMemoryBarrier2 * pBufferMemoryBarriers",
966
+ "uint32_t imageMemoryBarrierCount",
967
+ "VkImageMemoryBarrier2 * pImageMemoryBarriers"]
968
+
969
+ VkDependencyInfoKHR = VkDependencyInfo
970
+
510
971
  VkDescriptorBufferInfo = struct ["VkBuffer buffer",
511
972
  "VkDeviceSize offset",
512
973
  "VkDeviceSize range"]
@@ -524,9 +985,11 @@ module Vulkan
524
985
  "uint32_t poolSizeCount",
525
986
  "VkDescriptorPoolSize * pPoolSizes"]
526
987
 
527
- VkDescriptorPoolInlineUniformBlockCreateInfoEXT = struct ["VkStructureType sType",
528
- "void * pNext",
529
- "uint32_t maxInlineUniformBlockBindings"]
988
+ VkDescriptorPoolInlineUniformBlockCreateInfo = struct ["VkStructureType sType",
989
+ "void * pNext",
990
+ "uint32_t maxInlineUniformBlockBindings"]
991
+
992
+ VkDescriptorPoolInlineUniformBlockCreateInfoEXT = VkDescriptorPoolInlineUniformBlockCreateInfo
530
993
 
531
994
  VkDescriptorSetAllocateInfo = struct ["VkStructureType sType",
532
995
  "void * pNext",
@@ -534,16 +997,23 @@ module Vulkan
534
997
  "uint32_t descriptorSetCount",
535
998
  "VkDescriptorSetLayout * pSetLayouts"]
536
999
 
1000
+ VkDescriptorSetBindingReferenceVALVE = struct ["VkStructureType sType",
1001
+ "void * pNext",
1002
+ "VkDescriptorSetLayout descriptorSetLayout",
1003
+ "uint32_t binding"]
1004
+
537
1005
  VkDescriptorSetLayoutBinding = struct ["uint32_t binding",
538
1006
  "VkDescriptorType descriptorType",
539
1007
  "uint32_t descriptorCount",
540
1008
  "VkShaderStageFlags stageFlags",
541
1009
  "VkSampler * pImmutableSamplers"]
542
1010
 
543
- VkDescriptorSetLayoutBindingFlagsCreateInfoEXT = struct ["VkStructureType sType",
544
- "void * pNext",
545
- "uint32_t bindingCount",
546
- "VkDescriptorBindingFlagsEXT * pBindingFlags"]
1011
+ VkDescriptorSetLayoutBindingFlagsCreateInfo = struct ["VkStructureType sType",
1012
+ "void * pNext",
1013
+ "uint32_t bindingCount",
1014
+ "VkDescriptorBindingFlags * pBindingFlags"]
1015
+
1016
+ VkDescriptorSetLayoutBindingFlagsCreateInfoEXT = VkDescriptorSetLayoutBindingFlagsCreateInfo
547
1017
 
548
1018
  VkDescriptorSetLayoutCreateInfo = struct ["VkStructureType sType",
549
1019
  "void * pNext",
@@ -551,20 +1021,29 @@ module Vulkan
551
1021
  "uint32_t bindingCount",
552
1022
  "VkDescriptorSetLayoutBinding * pBindings"]
553
1023
 
1024
+ VkDescriptorSetLayoutHostMappingInfoVALVE = struct ["VkStructureType sType",
1025
+ "void * pNext",
1026
+ "size_t descriptorOffset",
1027
+ "uint32_t descriptorSize"]
1028
+
554
1029
  VkDescriptorSetLayoutSupport = struct ["VkStructureType sType",
555
1030
  "void * pNext",
556
1031
  "VkBool32 supported"]
557
1032
 
558
1033
  VkDescriptorSetLayoutSupportKHR = VkDescriptorSetLayoutSupport
559
1034
 
560
- VkDescriptorSetVariableDescriptorCountAllocateInfoEXT = struct ["VkStructureType sType",
561
- "void * pNext",
562
- "uint32_t descriptorSetCount",
563
- "uint32_t * pDescriptorCounts"]
1035
+ VkDescriptorSetVariableDescriptorCountAllocateInfo = struct ["VkStructureType sType",
1036
+ "void * pNext",
1037
+ "uint32_t descriptorSetCount",
1038
+ "uint32_t * pDescriptorCounts"]
564
1039
 
565
- VkDescriptorSetVariableDescriptorCountLayoutSupportEXT = struct ["VkStructureType sType",
566
- "void * pNext",
567
- "uint32_t maxVariableDescriptorCount"]
1040
+ VkDescriptorSetVariableDescriptorCountAllocateInfoEXT = VkDescriptorSetVariableDescriptorCountAllocateInfo
1041
+
1042
+ VkDescriptorSetVariableDescriptorCountLayoutSupport = struct ["VkStructureType sType",
1043
+ "void * pNext",
1044
+ "uint32_t maxVariableDescriptorCount"]
1045
+
1046
+ VkDescriptorSetVariableDescriptorCountLayoutSupportEXT = VkDescriptorSetVariableDescriptorCountLayoutSupport
568
1047
 
569
1048
  VkDescriptorUpdateTemplateEntry = struct ["uint32_t dstBinding",
570
1049
  "uint32_t dstArrayElement",
@@ -587,6 +1066,12 @@ module Vulkan
587
1066
 
588
1067
  VkDescriptorUpdateTemplateEntryKHR = VkDescriptorUpdateTemplateEntry
589
1068
 
1069
+ VkDeviceBufferMemoryRequirements = struct ["VkStructureType sType",
1070
+ "void * pNext",
1071
+ "VkBufferCreateInfo * pCreateInfo"]
1072
+
1073
+ VkDeviceBufferMemoryRequirementsKHR = VkDeviceBufferMemoryRequirements
1074
+
590
1075
  VkDeviceQueueCreateInfo = struct ["VkStructureType sType",
591
1076
  "void * pNext",
592
1077
  "VkDeviceQueueCreateFlags flags",
@@ -659,22 +1144,20 @@ module Vulkan
659
1144
  "char * ppEnabledExtensionNames",
660
1145
  "VkPhysicalDeviceFeatures * pEnabledFeatures"]
661
1146
 
1147
+ VkDeviceDeviceMemoryReportCreateInfoEXT = struct ["VkStructureType sType",
1148
+ "void * pNext",
1149
+ "VkDeviceMemoryReportFlagsEXT flags",
1150
+ "PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback",
1151
+ "void * pUserData"]
1152
+
1153
+ VkDeviceDiagnosticsConfigCreateInfoNV = struct ["VkStructureType sType",
1154
+ "void * pNext",
1155
+ "VkDeviceDiagnosticsConfigFlagsNV flags"]
1156
+
662
1157
  VkDeviceEventInfoEXT = struct ["VkStructureType sType",
663
1158
  "void * pNext",
664
1159
  "VkDeviceEventTypeEXT deviceEvent"]
665
1160
 
666
- VkDeviceGeneratedCommandsFeaturesNVX = struct ["VkStructureType sType",
667
- "void * pNext",
668
- "VkBool32 computeBindingPointSupport"]
669
-
670
- VkDeviceGeneratedCommandsLimitsNVX = struct ["VkStructureType sType",
671
- "void * pNext",
672
- "uint32_t maxIndirectCommandsLayoutTokenCount",
673
- "uint32_t maxObjectEntryCounts",
674
- "uint32_t minSequenceCountBufferOffsetAlignment",
675
- "uint32_t minSequenceIndexBufferOffsetAlignment",
676
- "uint32_t minCommandsTokenBufferOffsetAlignment"]
677
-
678
1161
  VkDeviceGroupBindSparseInfo = struct ["VkStructureType sType",
679
1162
  "void * pNext",
680
1163
  "uint32_t resourceDeviceIndex",
@@ -729,13 +1212,58 @@ module Vulkan
729
1212
  "void * pNext",
730
1213
  "VkDeviceGroupPresentModeFlagsKHR modes"]
731
1214
 
1215
+ VkImageCreateInfo = struct ["VkStructureType sType",
1216
+ "void * pNext",
1217
+ "VkImageCreateFlags flags",
1218
+ "VkImageType imageType",
1219
+ "VkFormat format",
1220
+ { "extent" => VkExtent3D },
1221
+ "uint32_t mipLevels",
1222
+ "uint32_t arrayLayers",
1223
+ "VkSampleCountFlagBits samples",
1224
+ "VkImageTiling tiling",
1225
+ "VkImageUsageFlags usage",
1226
+ "VkSharingMode sharingMode",
1227
+ "uint32_t queueFamilyIndexCount",
1228
+ "uint32_t * pQueueFamilyIndices",
1229
+ "VkImageLayout initialLayout"]
1230
+ VkDeviceImageMemoryRequirements = struct ["VkStructureType sType",
1231
+ "void * pNext",
1232
+ "VkImageCreateInfo * pCreateInfo",
1233
+ "VkImageAspectFlagBits planeAspect"]
1234
+
1235
+ VkDeviceImageMemoryRequirementsKHR = VkDeviceImageMemoryRequirements
1236
+
1237
+ VkDeviceMemoryOpaqueCaptureAddressInfo = struct ["VkStructureType sType",
1238
+ "void * pNext",
1239
+ "VkDeviceMemory memory"]
1240
+
1241
+ VkDeviceMemoryOpaqueCaptureAddressInfoKHR = VkDeviceMemoryOpaqueCaptureAddressInfo
1242
+
732
1243
  VkDeviceMemoryOverallocationCreateInfoAMD = struct ["VkStructureType sType",
733
1244
  "void * pNext",
734
1245
  "VkMemoryOverallocationBehaviorAMD overallocationBehavior"]
735
1246
 
736
- VkDeviceQueueGlobalPriorityCreateInfoEXT = struct ["VkStructureType sType",
1247
+ VkDeviceMemoryReportCallbackDataEXT = struct ["VkStructureType sType",
1248
+ "void * pNext",
1249
+ "VkDeviceMemoryReportFlagsEXT flags",
1250
+ "VkDeviceMemoryReportEventTypeEXT type",
1251
+ "uint64_t memoryObjectId",
1252
+ "VkDeviceSize size",
1253
+ "VkObjectType objectType",
1254
+ "uint64_t objectHandle",
1255
+ "uint32_t heapIndex"]
1256
+
1257
+ VkDevicePrivateDataCreateInfo = struct ["VkStructureType sType",
1258
+ "void * pNext",
1259
+ "uint32_t privateDataSlotRequestCount"]
1260
+
1261
+ VkDevicePrivateDataCreateInfoEXT = VkDevicePrivateDataCreateInfo
1262
+
1263
+ VkDeviceQueueGlobalPriorityCreateInfoKHR = struct ["VkStructureType sType",
737
1264
  "void * pNext",
738
- "VkQueueGlobalPriorityEXT globalPriority"]
1265
+ "VkQueueGlobalPriorityKHR globalPriority"]
1266
+ VkDeviceQueueGlobalPriorityCreateInfoEXT = VkDeviceQueueGlobalPriorityCreateInfoKHR
739
1267
 
740
1268
  VkDeviceQueueInfo2 = struct ["VkStructureType sType",
741
1269
  "void * pNext",
@@ -743,6 +1271,12 @@ module Vulkan
743
1271
  "uint32_t queueFamilyIndex",
744
1272
  "uint32_t queueIndex"]
745
1273
 
1274
+ VkDirectFBSurfaceCreateInfoEXT = struct ["VkStructureType sType",
1275
+ "void * pNext",
1276
+ "VkDirectFBSurfaceCreateFlagsEXT flags",
1277
+ "IDirectFB * dfb",
1278
+ "IDirectFBSurface * surface"]
1279
+
746
1280
  VkDispatchIndirectCommand = struct ["uint32_t x",
747
1281
  "uint32_t y",
748
1282
  "uint32_t z"]
@@ -764,6 +1298,10 @@ module Vulkan
764
1298
  "void * pNext",
765
1299
  { "displayModeProperties" => VkDisplayModePropertiesKHR }]
766
1300
 
1301
+ VkDisplayNativeHdrSurfaceCapabilitiesAMD = struct ["VkStructureType sType",
1302
+ "void * pNext",
1303
+ "VkBool32 localDimmingSupport"]
1304
+
767
1305
  VkDisplayPlaneCapabilitiesKHR = struct ["VkDisplayPlaneAlphaFlagsKHR supportedAlpha",
768
1306
  { "minSrcPosition" => VkOffset2D },
769
1307
  { "maxSrcPosition" => VkOffset2D },
@@ -834,10 +1372,19 @@ module Vulkan
834
1372
  VkDrawMeshTasksIndirectCommandNV = struct ["uint32_t taskCount",
835
1373
  "uint32_t firstTask"]
836
1374
 
1375
+ VkDrmFormatModifierProperties2EXT = struct ["uint64_t drmFormatModifier",
1376
+ "uint32_t drmFormatModifierPlaneCount",
1377
+ "VkFormatFeatureFlags2 drmFormatModifierTilingFeatures"]
1378
+
837
1379
  VkDrmFormatModifierPropertiesEXT = struct ["uint64_t drmFormatModifier",
838
1380
  "uint32_t drmFormatModifierPlaneCount",
839
1381
  "VkFormatFeatureFlags drmFormatModifierTilingFeatures"]
840
1382
 
1383
+ VkDrmFormatModifierPropertiesList2EXT = struct ["VkStructureType sType",
1384
+ "void * pNext",
1385
+ "uint32_t drmFormatModifierCount",
1386
+ "VkDrmFormatModifierProperties2EXT * pDrmFormatModifierProperties"]
1387
+
841
1388
  VkDrmFormatModifierPropertiesListEXT = struct ["VkStructureType sType",
842
1389
  "void * pNext",
843
1390
  "uint32_t drmFormatModifierCount",
@@ -972,6 +1519,11 @@ module Vulkan
972
1519
  "VkFence fence",
973
1520
  "VkExternalFenceHandleTypeFlagBits handleType"]
974
1521
 
1522
+ VkFilterCubicImageViewImageFormatPropertiesEXT = struct ["VkStructureType sType",
1523
+ "void * pNext",
1524
+ "VkBool32 filterCubic",
1525
+ "VkBool32 filterCubicMinmax"]
1526
+
975
1527
  VkFormatProperties = struct ["VkFormatFeatureFlags linearTilingFeatures",
976
1528
  "VkFormatFeatureFlags optimalTilingFeatures",
977
1529
  "VkFormatFeatureFlags bufferFeatures"]
@@ -982,6 +1534,38 @@ module Vulkan
982
1534
 
983
1535
  VkFormatProperties2KHR = VkFormatProperties2
984
1536
 
1537
+ VkFormatProperties3 = struct ["VkStructureType sType",
1538
+ "void * pNext",
1539
+ "VkFormatFeatureFlags2 linearTilingFeatures",
1540
+ "VkFormatFeatureFlags2 optimalTilingFeatures",
1541
+ "VkFormatFeatureFlags2 bufferFeatures"]
1542
+
1543
+ VkFormatProperties3KHR = VkFormatProperties3
1544
+
1545
+ VkFragmentShadingRateAttachmentInfoKHR = struct ["VkStructureType sType",
1546
+ "void * pNext",
1547
+ "VkAttachmentReference2 * pFragmentShadingRateAttachment",
1548
+ { "shadingRateAttachmentTexelSize" => VkExtent2D }]
1549
+
1550
+ VkFramebufferAttachmentImageInfo = struct ["VkStructureType sType",
1551
+ "void * pNext",
1552
+ "VkImageCreateFlags flags",
1553
+ "VkImageUsageFlags usage",
1554
+ "uint32_t width",
1555
+ "uint32_t height",
1556
+ "uint32_t layerCount",
1557
+ "uint32_t viewFormatCount",
1558
+ "VkFormat * pViewFormats"]
1559
+
1560
+ VkFramebufferAttachmentImageInfoKHR = VkFramebufferAttachmentImageInfo
1561
+
1562
+ VkFramebufferAttachmentsCreateInfo = struct ["VkStructureType sType",
1563
+ "void * pNext",
1564
+ "uint32_t attachmentImageInfoCount",
1565
+ "VkFramebufferAttachmentImageInfo * pAttachmentImageInfos"]
1566
+
1567
+ VkFramebufferAttachmentsCreateInfoKHR = VkFramebufferAttachmentsCreateInfo
1568
+
985
1569
  VkFramebufferCreateInfo = struct ["VkStructureType sType",
986
1570
  "void * pNext",
987
1571
  "VkFramebufferCreateFlags flags",
@@ -992,6 +1576,38 @@ module Vulkan
992
1576
  "uint32_t height",
993
1577
  "uint32_t layers"]
994
1578
 
1579
+ VkFramebufferMixedSamplesCombinationNV = struct ["VkStructureType sType",
1580
+ "void * pNext",
1581
+ "VkCoverageReductionModeNV coverageReductionMode",
1582
+ "VkSampleCountFlagBits rasterizationSamples",
1583
+ "VkSampleCountFlags depthStencilSamples",
1584
+ "VkSampleCountFlags colorSamples"]
1585
+
1586
+ VkIndirectCommandsStreamNV = struct ["VkBuffer buffer",
1587
+ "VkDeviceSize offset"]
1588
+ VkGeneratedCommandsInfoNV = struct ["VkStructureType sType",
1589
+ "void * pNext",
1590
+ "VkPipelineBindPoint pipelineBindPoint",
1591
+ "VkPipeline pipeline",
1592
+ "VkIndirectCommandsLayoutNV indirectCommandsLayout",
1593
+ "uint32_t streamCount",
1594
+ "VkIndirectCommandsStreamNV * pStreams",
1595
+ "uint32_t sequencesCount",
1596
+ "VkBuffer preprocessBuffer",
1597
+ "VkDeviceSize preprocessOffset",
1598
+ "VkDeviceSize preprocessSize",
1599
+ "VkBuffer sequencesCountBuffer",
1600
+ "VkDeviceSize sequencesCountOffset",
1601
+ "VkBuffer sequencesIndexBuffer",
1602
+ "VkDeviceSize sequencesIndexOffset"]
1603
+
1604
+ VkGeneratedCommandsMemoryRequirementsInfoNV = struct ["VkStructureType sType",
1605
+ "void * pNext",
1606
+ "VkPipelineBindPoint pipelineBindPoint",
1607
+ "VkPipeline pipeline",
1608
+ "VkIndirectCommandsLayoutNV indirectCommandsLayout",
1609
+ "uint32_t maxSequencesCount"]
1610
+
995
1611
  VkVertexInputBindingDescription = struct ["uint32_t binding",
996
1612
  "uint32_t stride",
997
1613
  "VkVertexInputRate inputRate"]
@@ -1015,12 +1631,6 @@ module Vulkan
1015
1631
  "void * pNext",
1016
1632
  "VkPipelineTessellationStateCreateFlags flags",
1017
1633
  "uint32_t patchControlPoints"]
1018
- VkViewport = struct ["float x",
1019
- "float y",
1020
- "float width",
1021
- "float height",
1022
- "float minDepth",
1023
- "float maxDepth"]
1024
1634
  VkPipelineViewportStateCreateInfo = struct ["VkStructureType sType",
1025
1635
  "void * pNext",
1026
1636
  "VkPipelineViewportStateCreateFlags flags",
@@ -1110,6 +1720,19 @@ module Vulkan
1110
1720
  "VkPipeline basePipelineHandle",
1111
1721
  "int32_t basePipelineIndex"]
1112
1722
 
1723
+ VkGraphicsShaderGroupCreateInfoNV = struct ["VkStructureType sType",
1724
+ "void * pNext",
1725
+ "uint32_t stageCount",
1726
+ "VkPipelineShaderStageCreateInfo * pStages",
1727
+ "VkPipelineVertexInputStateCreateInfo * pVertexInputState",
1728
+ "VkPipelineTessellationStateCreateInfo * pTessellationState"]
1729
+ VkGraphicsPipelineShaderGroupsCreateInfoNV = struct ["VkStructureType sType",
1730
+ "void * pNext",
1731
+ "uint32_t groupCount",
1732
+ "VkGraphicsShaderGroupCreateInfoNV * pGroups",
1733
+ "uint32_t pipelineCount",
1734
+ "VkPipeline * pPipelines"]
1735
+
1113
1736
  # Chromaticity coordinate
1114
1737
  VkXYColorEXT = struct ["float x",
1115
1738
  "float y"]
@@ -1124,6 +1747,10 @@ module Vulkan
1124
1747
  "float maxContentLightLevel",
1125
1748
  "float maxFrameAverageLightLevel"]
1126
1749
 
1750
+ VkHeadlessSurfaceCreateInfoEXT = struct ["VkStructureType sType",
1751
+ "void * pNext",
1752
+ "VkHeadlessSurfaceCreateFlagsEXT flags"]
1753
+
1127
1754
  VkIOSSurfaceCreateInfoMVK = struct ["VkStructureType sType",
1128
1755
  "void * pNext",
1129
1756
  "VkIOSSurfaceCreateFlagsMVK flags",
@@ -1134,27 +1761,30 @@ module Vulkan
1134
1761
  { "dstSubresource" => VkImageSubresourceLayers },
1135
1762
  { "dstOffsets[2]" => VkOffset3D }]
1136
1763
 
1764
+ VkImageBlit2KHR = VkImageBlit2
1765
+
1766
+ VkImageFormatConstraintsInfoFUCHSIA = struct ["VkStructureType sType",
1767
+ "void * pNext",
1768
+ { "imageCreateInfo" => VkImageCreateInfo },
1769
+ "VkFormatFeatureFlags requiredFormatFeatures",
1770
+ "VkImageFormatConstraintsFlagsFUCHSIA flags",
1771
+ "uint64_t sysmemPixelFormat",
1772
+ "uint32_t colorSpaceCount",
1773
+ "VkSysmemColorSpaceFUCHSIA * pColorSpaces"]
1774
+ VkImageConstraintsInfoFUCHSIA = struct ["VkStructureType sType",
1775
+ "void * pNext",
1776
+ "uint32_t formatConstraintsCount",
1777
+ "VkImageFormatConstraintsInfoFUCHSIA * pFormatConstraints",
1778
+ { "bufferCollectionConstraints" => VkBufferCollectionConstraintsInfoFUCHSIA },
1779
+ "VkImageConstraintsInfoFlagsFUCHSIA flags"]
1780
+
1137
1781
  VkImageCopy = struct [{ "srcSubresource" => VkImageSubresourceLayers },
1138
1782
  { "srcOffset" => VkOffset3D },
1139
1783
  { "dstSubresource" => VkImageSubresourceLayers },
1140
1784
  { "dstOffset" => VkOffset3D },
1141
1785
  { "extent" => VkExtent3D }]
1142
1786
 
1143
- VkImageCreateInfo = struct ["VkStructureType sType",
1144
- "void * pNext",
1145
- "VkImageCreateFlags flags",
1146
- "VkImageType imageType",
1147
- "VkFormat format",
1148
- { "extent" => VkExtent3D },
1149
- "uint32_t mipLevels",
1150
- "uint32_t arrayLayers",
1151
- "VkSampleCountFlagBits samples",
1152
- "VkImageTiling tiling",
1153
- "VkImageUsageFlags usage",
1154
- "VkSharingMode sharingMode",
1155
- "uint32_t queueFamilyIndexCount",
1156
- "uint32_t * pQueueFamilyIndices",
1157
- "VkImageLayout initialLayout"]
1787
+ VkImageCopy2KHR = VkImageCopy2
1158
1788
 
1159
1789
  VkSubresourceLayout = struct ["VkDeviceSize offset",
1160
1790
  "VkDeviceSize size",
@@ -1176,10 +1806,12 @@ module Vulkan
1176
1806
  "void * pNext",
1177
1807
  "uint64_t drmFormatModifier"]
1178
1808
 
1179
- VkImageFormatListCreateInfoKHR = struct ["VkStructureType sType",
1180
- "void * pNext",
1181
- "uint32_t viewFormatCount",
1182
- "VkFormat * pViewFormats"]
1809
+ VkImageFormatListCreateInfo = struct ["VkStructureType sType",
1810
+ "void * pNext",
1811
+ "uint32_t viewFormatCount",
1812
+ "VkFormat * pViewFormats"]
1813
+
1814
+ VkImageFormatListCreateInfoKHR = VkImageFormatListCreateInfo
1183
1815
 
1184
1816
  VkImageFormatProperties2 = struct ["VkStructureType sType",
1185
1817
  "void * pNext",
@@ -1187,11 +1819,6 @@ module Vulkan
1187
1819
 
1188
1820
  VkImageFormatProperties2KHR = VkImageFormatProperties2
1189
1821
 
1190
- VkImageSubresourceRange = struct ["VkImageAspectFlags aspectMask",
1191
- "uint32_t baseMipLevel",
1192
- "uint32_t levelCount",
1193
- "uint32_t baseArrayLayer",
1194
- "uint32_t layerCount"]
1195
1822
  VkImageMemoryBarrier = struct ["VkStructureType sType",
1196
1823
  "void * pNext",
1197
1824
  "VkAccessFlags srcAccessMask",
@@ -1203,6 +1830,8 @@ module Vulkan
1203
1830
  "VkImage image",
1204
1831
  { "subresourceRange" => VkImageSubresourceRange }]
1205
1832
 
1833
+ VkImageMemoryBarrier2KHR = VkImageMemoryBarrier2
1834
+
1206
1835
  VkImageMemoryRequirementsInfo2 = struct ["VkStructureType sType",
1207
1836
  "void * pNext",
1208
1837
  "VkImage image"]
@@ -1226,12 +1855,28 @@ module Vulkan
1226
1855
  { "dstOffset" => VkOffset3D },
1227
1856
  { "extent" => VkExtent3D }]
1228
1857
 
1858
+ VkImageResolve2 = struct ["VkStructureType sType",
1859
+ "void * pNext",
1860
+ { "srcSubresource" => VkImageSubresourceLayers },
1861
+ { "srcOffset" => VkOffset3D },
1862
+ { "dstSubresource" => VkImageSubresourceLayers },
1863
+ { "dstOffset" => VkOffset3D },
1864
+ { "extent" => VkExtent3D }]
1865
+
1866
+ VkImageResolve2KHR = VkImageResolve2
1867
+
1229
1868
  VkImageSparseMemoryRequirementsInfo2 = struct ["VkStructureType sType",
1230
1869
  "void * pNext",
1231
1870
  "VkImage image"]
1232
1871
 
1233
1872
  VkImageSparseMemoryRequirementsInfo2KHR = VkImageSparseMemoryRequirementsInfo2
1234
1873
 
1874
+ VkImageStencilUsageCreateInfo = struct ["VkStructureType sType",
1875
+ "void * pNext",
1876
+ "VkImageUsageFlags stencilUsage"]
1877
+
1878
+ VkImageStencilUsageCreateInfoEXT = VkImageStencilUsageCreateInfo
1879
+
1235
1880
  VkImageSwapchainCreateInfoKHR = struct ["VkStructureType sType",
1236
1881
  "void * pNext",
1237
1882
  "VkSwapchainKHR swapchain"]
@@ -1240,6 +1885,11 @@ module Vulkan
1240
1885
  "void * pNext",
1241
1886
  "VkFormat decodeMode"]
1242
1887
 
1888
+ VkImageViewAddressPropertiesNVX = struct ["VkStructureType sType",
1889
+ "void * pNext",
1890
+ "VkDeviceAddress deviceAddress",
1891
+ "VkDeviceSize size"]
1892
+
1243
1893
  VkImageViewCreateInfo = struct ["VkStructureType sType",
1244
1894
  "void * pNext",
1245
1895
  "VkImageViewCreateFlags flags",
@@ -1249,6 +1899,16 @@ module Vulkan
1249
1899
  { "components" => VkComponentMapping },
1250
1900
  { "subresourceRange" => VkImageSubresourceRange }]
1251
1901
 
1902
+ VkImageViewHandleInfoNVX = struct ["VkStructureType sType",
1903
+ "void * pNext",
1904
+ "VkImageView imageView",
1905
+ "VkDescriptorType descriptorType",
1906
+ "VkSampler sampler"]
1907
+
1908
+ VkImageViewMinLodCreateInfoEXT = struct ["VkStructureType sType",
1909
+ "void * pNext",
1910
+ "float minLod"]
1911
+
1252
1912
  VkImageViewUsageCreateInfo = struct ["VkStructureType sType",
1253
1913
  "void * pNext",
1254
1914
  "VkImageUsageFlags usage"]
@@ -1274,6 +1934,11 @@ module Vulkan
1274
1934
  "HANDLE handle",
1275
1935
  "LPCWSTR name"]
1276
1936
 
1937
+ VkImportMemoryBufferCollectionFUCHSIA = struct ["VkStructureType sType",
1938
+ "void * pNext",
1939
+ "VkBufferCollectionFUCHSIA collection",
1940
+ "uint32_t index"]
1941
+
1277
1942
  VkImportMemoryFdInfoKHR = struct ["VkStructureType sType",
1278
1943
  "void * pNext",
1279
1944
  "VkExternalMemoryHandleTypeFlagBits handleType",
@@ -1295,6 +1960,11 @@ module Vulkan
1295
1960
  "VkExternalMemoryHandleTypeFlagsNV handleType",
1296
1961
  "HANDLE handle"]
1297
1962
 
1963
+ VkImportMemoryZirconHandleInfoFUCHSIA = struct ["VkStructureType sType",
1964
+ "void * pNext",
1965
+ "VkExternalMemoryHandleTypeFlagBits handleType",
1966
+ "zx_handle_t handle"]
1967
+
1298
1968
  VkImportSemaphoreFdInfoKHR = struct ["VkStructureType sType",
1299
1969
  "void * pNext",
1300
1970
  "VkSemaphore semaphore",
@@ -1310,16 +1980,40 @@ module Vulkan
1310
1980
  "HANDLE handle",
1311
1981
  "LPCWSTR name"]
1312
1982
 
1313
- VkIndirectCommandsLayoutTokenNVX = struct ["VkIndirectCommandsTokenTypeNVX tokenType",
1314
- "uint32_t bindingUnit",
1315
- "uint32_t dynamicCount",
1316
- "uint32_t divisor"]
1317
- VkIndirectCommandsLayoutCreateInfoNVX = struct ["VkStructureType sType",
1318
- "void * pNext",
1319
- "VkPipelineBindPoint pipelineBindPoint",
1320
- "VkIndirectCommandsLayoutUsageFlagsNVX flags",
1321
- "uint32_t tokenCount",
1322
- "VkIndirectCommandsLayoutTokenNVX * pTokens"]
1983
+ VkImportSemaphoreZirconHandleInfoFUCHSIA = struct ["VkStructureType sType",
1984
+ "void * pNext",
1985
+ "VkSemaphore semaphore",
1986
+ "VkSemaphoreImportFlags flags",
1987
+ "VkExternalSemaphoreHandleTypeFlagBits handleType",
1988
+ "zx_handle_t zirconHandle"]
1989
+
1990
+ VkIndirectCommandsLayoutTokenNV = struct ["VkStructureType sType",
1991
+ "void * pNext",
1992
+ "VkIndirectCommandsTokenTypeNV tokenType",
1993
+ "uint32_t stream",
1994
+ "uint32_t offset",
1995
+ "uint32_t vertexBindingUnit",
1996
+ "VkBool32 vertexDynamicStride",
1997
+ "VkPipelineLayout pushconstantPipelineLayout",
1998
+ "VkShaderStageFlags pushconstantShaderStageFlags",
1999
+ "uint32_t pushconstantOffset",
2000
+ "uint32_t pushconstantSize",
2001
+ "VkIndirectStateFlagsNV indirectStateFlags",
2002
+ "uint32_t indexTypeCount",
2003
+ "VkIndexType * pIndexTypes",
2004
+ "uint32_t * pIndexTypeValues"]
2005
+ VkIndirectCommandsLayoutCreateInfoNV = struct ["VkStructureType sType",
2006
+ "void * pNext",
2007
+ "VkIndirectCommandsLayoutUsageFlagsNV flags",
2008
+ "VkPipelineBindPoint pipelineBindPoint",
2009
+ "uint32_t tokenCount",
2010
+ "VkIndirectCommandsLayoutTokenNV * pTokens",
2011
+ "uint32_t streamCount",
2012
+ "uint32_t * pStreamStrides"]
2013
+
2014
+ VkInitializePerformanceApiInfoINTEL = struct ["VkStructureType sType",
2015
+ "void * pNext",
2016
+ "void * pUserData"]
1323
2017
 
1324
2018
  VkInputAttachmentAspectReference = struct ["uint32_t subpass",
1325
2019
  "uint32_t inputAttachmentIndex",
@@ -1369,6 +2063,8 @@ module Vulkan
1369
2063
  "VkAccessFlags srcAccessMask",
1370
2064
  "VkAccessFlags dstAccessMask"]
1371
2065
 
2066
+ VkMemoryBarrier2KHR = VkMemoryBarrier2
2067
+
1372
2068
  VkMemoryDedicatedAllocateInfo = struct ["VkStructureType sType",
1373
2069
  "void * pNext",
1374
2070
  "VkImage image",
@@ -1396,11 +2092,21 @@ module Vulkan
1396
2092
  "VkDeviceMemory memory",
1397
2093
  "VkExternalMemoryHandleTypeFlagBits handleType"]
1398
2094
 
2095
+ VkMemoryGetRemoteAddressInfoNV = struct ["VkStructureType sType",
2096
+ "void * pNext",
2097
+ "VkDeviceMemory memory",
2098
+ "VkExternalMemoryHandleTypeFlagBits handleType"]
2099
+
1399
2100
  VkMemoryGetWin32HandleInfoKHR = struct ["VkStructureType sType",
1400
2101
  "void * pNext",
1401
2102
  "VkDeviceMemory memory",
1402
2103
  "VkExternalMemoryHandleTypeFlagBits handleType"]
1403
2104
 
2105
+ VkMemoryGetZirconHandleInfoFUCHSIA = struct ["VkStructureType sType",
2106
+ "void * pNext",
2107
+ "VkDeviceMemory memory",
2108
+ "VkExternalMemoryHandleTypeFlagBits handleType"]
2109
+
1404
2110
  VkMemoryHeap = struct ["VkDeviceSize size",
1405
2111
  "VkMemoryHeapFlags flags"]
1406
2112
 
@@ -1408,6 +2114,16 @@ module Vulkan
1408
2114
  "void * pNext",
1409
2115
  "uint32_t memoryTypeBits"]
1410
2116
 
2117
+ VkMemoryOpaqueCaptureAddressAllocateInfo = struct ["VkStructureType sType",
2118
+ "void * pNext",
2119
+ "uint64_t opaqueCaptureAddress"]
2120
+
2121
+ VkMemoryOpaqueCaptureAddressAllocateInfoKHR = VkMemoryOpaqueCaptureAddressAllocateInfo
2122
+
2123
+ VkMemoryPriorityAllocateInfoEXT = struct ["VkStructureType sType",
2124
+ "void * pNext",
2125
+ "float priority"]
2126
+
1411
2127
  VkMemoryRequirements = struct ["VkDeviceSize size",
1412
2128
  "VkDeviceSize alignment",
1413
2129
  "uint32_t memoryTypeBits"]
@@ -1425,54 +2141,47 @@ module Vulkan
1425
2141
  "void * pNext",
1426
2142
  "uint32_t memoryTypeBits"]
1427
2143
 
2144
+ VkMemoryZirconHandlePropertiesFUCHSIA = struct ["VkStructureType sType",
2145
+ "void * pNext",
2146
+ "uint32_t memoryTypeBits"]
2147
+
2148
+ VkMetalSurfaceCreateInfoEXT = struct ["VkStructureType sType",
2149
+ "void * pNext",
2150
+ "VkMetalSurfaceCreateFlagsEXT flags",
2151
+ "CAMetalLayer * pLayer"]
2152
+
2153
+ VkMultiDrawIndexedInfoEXT = struct ["uint32_t firstIndex",
2154
+ "uint32_t indexCount",
2155
+ "int32_t vertexOffset"]
2156
+
2157
+ VkMultiDrawInfoEXT = struct ["uint32_t firstVertex",
2158
+ "uint32_t vertexCount"]
2159
+
1428
2160
  VkMultisamplePropertiesEXT = struct ["VkStructureType sType",
1429
2161
  "void * pNext",
1430
2162
  { "maxSampleLocationGridSize" => VkExtent2D }]
1431
2163
 
2164
+ VkMultiviewPerViewAttributesInfoNVX = struct ["VkStructureType sType",
2165
+ "void * pNext",
2166
+ "VkBool32 perViewAttributes",
2167
+ "VkBool32 perViewAttributesPositionXOnly"]
2168
+
2169
+ VkMutableDescriptorTypeListVALVE = struct ["uint32_t descriptorTypeCount",
2170
+ "VkDescriptorType * pDescriptorTypes"]
2171
+ VkMutableDescriptorTypeCreateInfoVALVE = struct ["VkStructureType sType",
2172
+ "void * pNext",
2173
+ "uint32_t mutableDescriptorTypeListCount",
2174
+ "VkMutableDescriptorTypeListVALVE * pMutableDescriptorTypeLists"]
2175
+
2176
+ VkNativeBufferUsage2ANDROID = struct ["uint64_t consumer",
2177
+ "uint64_t producer"]
1432
2178
  VkNativeBufferANDROID = struct ["VkStructureType sType",
1433
2179
  "void * pNext",
1434
2180
  "void * handle",
1435
2181
  "int stride",
1436
2182
  "int format",
1437
- "int usage"]
1438
-
1439
- VkObjectTableCreateInfoNVX = struct ["VkStructureType sType",
1440
- "void * pNext",
1441
- "uint32_t objectCount",
1442
- "VkObjectEntryTypeNVX * pObjectEntryTypes",
1443
- "uint32_t * pObjectEntryCounts",
1444
- "VkObjectEntryUsageFlagsNVX * pObjectEntryUsageFlags",
1445
- "uint32_t maxUniformBuffersPerDescriptor",
1446
- "uint32_t maxStorageBuffersPerDescriptor",
1447
- "uint32_t maxStorageImagesPerDescriptor",
1448
- "uint32_t maxSampledImagesPerDescriptor",
1449
- "uint32_t maxPipelineLayouts"]
1450
-
1451
- VkObjectTableDescriptorSetEntryNVX = struct ["VkObjectEntryTypeNVX type",
1452
- "VkObjectEntryUsageFlagsNVX flags",
1453
- "VkPipelineLayout pipelineLayout",
1454
- "VkDescriptorSet descriptorSet"]
1455
-
1456
- VkObjectTableEntryNVX = struct ["VkObjectEntryTypeNVX type",
1457
- "VkObjectEntryUsageFlagsNVX flags"]
1458
-
1459
- VkObjectTableIndexBufferEntryNVX = struct ["VkObjectEntryTypeNVX type",
1460
- "VkObjectEntryUsageFlagsNVX flags",
1461
- "VkBuffer buffer",
1462
- "VkIndexType indexType"]
1463
-
1464
- VkObjectTablePipelineEntryNVX = struct ["VkObjectEntryTypeNVX type",
1465
- "VkObjectEntryUsageFlagsNVX flags",
1466
- "VkPipeline pipeline"]
1467
-
1468
- VkObjectTablePushConstantEntryNVX = struct ["VkObjectEntryTypeNVX type",
1469
- "VkObjectEntryUsageFlagsNVX flags",
1470
- "VkPipelineLayout pipelineLayout",
1471
- "VkShaderStageFlags stageFlags"]
1472
-
1473
- VkObjectTableVertexBufferEntryNVX = struct ["VkObjectEntryTypeNVX type",
1474
- "VkObjectEntryUsageFlagsNVX flags",
1475
- "VkBuffer buffer"]
2183
+ "int usage",
2184
+ { "usage2" => VkNativeBufferUsage2ANDROID }]
1476
2185
 
1477
2186
  VkPastPresentationTimingGOOGLE = struct ["uint32_t presentID",
1478
2187
  "uint64_t desiredPresentTime",
@@ -1480,6 +2189,59 @@ module Vulkan
1480
2189
  "uint64_t earliestPresentTime",
1481
2190
  "uint64_t presentMargin"]
1482
2191
 
2192
+ VkPerformanceConfigurationAcquireInfoINTEL = struct ["VkStructureType sType",
2193
+ "void * pNext",
2194
+ "VkPerformanceConfigurationTypeINTEL type"]
2195
+
2196
+ VkPerformanceCounterDescriptionKHR = struct ["VkStructureType sType",
2197
+ "void * pNext",
2198
+ "VkPerformanceCounterDescriptionFlagsKHR flags",
2199
+ "char name[#{VK_MAX_DESCRIPTION_SIZE}]",
2200
+ "char category[#{VK_MAX_DESCRIPTION_SIZE}]",
2201
+ "char description[#{VK_MAX_DESCRIPTION_SIZE}]"]
2202
+
2203
+ VkPerformanceCounterKHR = struct ["VkStructureType sType",
2204
+ "void * pNext",
2205
+ "VkPerformanceCounterUnitKHR unit",
2206
+ "VkPerformanceCounterScopeKHR scope",
2207
+ "VkPerformanceCounterStorageKHR storage",
2208
+ "uint8_t uuid[#{VK_UUID_SIZE}]"]
2209
+
2210
+ # Union of all the possible return types a counter result could return
2211
+ VkPerformanceCounterResultKHR = union ["int32_t int32",
2212
+ "int64_t int64",
2213
+ "uint32_t uint32",
2214
+ "uint64_t uint64",
2215
+ "float float32",
2216
+ "double float64"]
2217
+
2218
+ VkPerformanceMarkerInfoINTEL = struct ["VkStructureType sType",
2219
+ "void * pNext",
2220
+ "uint64_t marker"]
2221
+
2222
+ VkPerformanceOverrideInfoINTEL = struct ["VkStructureType sType",
2223
+ "void * pNext",
2224
+ "VkPerformanceOverrideTypeINTEL type",
2225
+ "VkBool32 enable",
2226
+ "uint64_t parameter"]
2227
+
2228
+ VkPerformanceQuerySubmitInfoKHR = struct ["VkStructureType sType",
2229
+ "void * pNext",
2230
+ "uint32_t counterPassIndex"]
2231
+
2232
+ VkPerformanceStreamMarkerInfoINTEL = struct ["VkStructureType sType",
2233
+ "void * pNext",
2234
+ "uint32_t marker"]
2235
+
2236
+ VkPerformanceValueDataINTEL = union ["uint32_t value32",
2237
+ "uint64_t value64",
2238
+ "float valueFloat",
2239
+ "VkBool32 valueBool",
2240
+ "char * valueString"]
2241
+
2242
+ VkPerformanceValueINTEL = struct ["VkPerformanceValueTypeINTEL type",
2243
+ { "data" => VkPerformanceValueDataINTEL }]
2244
+
1483
2245
  VkPhysicalDevice16BitStorageFeatures = struct ["VkStructureType sType",
1484
2246
  "void * pNext",
1485
2247
  "VkBool32 storageBuffer16BitAccess",
@@ -1489,16 +2251,42 @@ module Vulkan
1489
2251
 
1490
2252
  VkPhysicalDevice16BitStorageFeaturesKHR = VkPhysicalDevice16BitStorageFeatures
1491
2253
 
1492
- VkPhysicalDevice8BitStorageFeaturesKHR = struct ["VkStructureType sType",
2254
+ VkPhysicalDevice4444FormatsFeaturesEXT = struct ["VkStructureType sType",
1493
2255
  "void * pNext",
1494
- "VkBool32 storageBuffer8BitAccess",
1495
- "VkBool32 uniformAndStorageBuffer8BitAccess",
1496
- "VkBool32 storagePushConstant8"]
2256
+ "VkBool32 formatA4R4G4B4",
2257
+ "VkBool32 formatA4B4G4R4"]
2258
+
2259
+ VkPhysicalDevice8BitStorageFeatures = struct ["VkStructureType sType",
2260
+ "void * pNext",
2261
+ "VkBool32 storageBuffer8BitAccess",
2262
+ "VkBool32 uniformAndStorageBuffer8BitAccess",
2263
+ "VkBool32 storagePushConstant8"]
2264
+
2265
+ VkPhysicalDevice8BitStorageFeaturesKHR = VkPhysicalDevice8BitStorageFeatures
1497
2266
 
1498
2267
  VkPhysicalDeviceASTCDecodeFeaturesEXT = struct ["VkStructureType sType",
1499
2268
  "void * pNext",
1500
2269
  "VkBool32 decodeModeSharedExponent"]
1501
2270
 
2271
+ VkPhysicalDeviceAccelerationStructureFeaturesKHR = struct ["VkStructureType sType",
2272
+ "void * pNext",
2273
+ "VkBool32 accelerationStructure",
2274
+ "VkBool32 accelerationStructureCaptureReplay",
2275
+ "VkBool32 accelerationStructureIndirectBuild",
2276
+ "VkBool32 accelerationStructureHostCommands",
2277
+ "VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind"]
2278
+
2279
+ VkPhysicalDeviceAccelerationStructurePropertiesKHR = struct ["VkStructureType sType",
2280
+ "void * pNext",
2281
+ "uint64_t maxGeometryCount",
2282
+ "uint64_t maxInstanceCount",
2283
+ "uint64_t maxPrimitiveCount",
2284
+ "uint32_t maxPerStageDescriptorAccelerationStructures",
2285
+ "uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures",
2286
+ "uint32_t maxDescriptorSetAccelerationStructures",
2287
+ "uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures",
2288
+ "uint32_t minAccelerationStructureScratchOffsetAlignment"]
2289
+
1502
2290
  VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = struct ["VkStructureType sType",
1503
2291
  "void * pNext",
1504
2292
  "VkBool32 advancedBlendCoherentOperations"]
@@ -1512,6 +2300,34 @@ module Vulkan
1512
2300
  "VkBool32 advancedBlendCorrelatedOverlap",
1513
2301
  "VkBool32 advancedBlendAllOperations"]
1514
2302
 
2303
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = struct ["VkStructureType sType",
2304
+ "void * pNext",
2305
+ "VkBool32 borderColorSwizzle",
2306
+ "VkBool32 borderColorSwizzleFromImage"]
2307
+
2308
+ VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = struct ["VkStructureType sType",
2309
+ "void * pNext",
2310
+ "VkBool32 bufferDeviceAddress",
2311
+ "VkBool32 bufferDeviceAddressCaptureReplay",
2312
+ "VkBool32 bufferDeviceAddressMultiDevice"]
2313
+ VkPhysicalDeviceBufferAddressFeaturesEXT = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT
2314
+
2315
+ VkPhysicalDeviceBufferDeviceAddressFeatures = struct ["VkStructureType sType",
2316
+ "void * pNext",
2317
+ "VkBool32 bufferDeviceAddress",
2318
+ "VkBool32 bufferDeviceAddressCaptureReplay",
2319
+ "VkBool32 bufferDeviceAddressMultiDevice"]
2320
+
2321
+ VkPhysicalDeviceBufferDeviceAddressFeaturesKHR = VkPhysicalDeviceBufferDeviceAddressFeatures
2322
+
2323
+ VkPhysicalDeviceCoherentMemoryFeaturesAMD = struct ["VkStructureType sType",
2324
+ "void * pNext",
2325
+ "VkBool32 deviceCoherentMemory"]
2326
+
2327
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT = struct ["VkStructureType sType",
2328
+ "void * pNext",
2329
+ "VkBool32 colorWriteEnable"]
2330
+
1515
2331
  VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = struct ["VkStructureType sType",
1516
2332
  "void * pNext",
1517
2333
  "VkBool32 computeDerivativeGroupQuads",
@@ -1534,74 +2350,176 @@ module Vulkan
1534
2350
  "VkBool32 fullyCoveredFragmentShaderInputVariable",
1535
2351
  "VkBool32 conservativeRasterizationPostDepthCoverage"]
1536
2352
 
2353
+ VkPhysicalDeviceCooperativeMatrixFeaturesNV = struct ["VkStructureType sType",
2354
+ "void * pNext",
2355
+ "VkBool32 cooperativeMatrix",
2356
+ "VkBool32 cooperativeMatrixRobustBufferAccess"]
2357
+
2358
+ VkPhysicalDeviceCooperativeMatrixPropertiesNV = struct ["VkStructureType sType",
2359
+ "void * pNext",
2360
+ "VkShaderStageFlags cooperativeMatrixSupportedStages"]
2361
+
1537
2362
  VkPhysicalDeviceCornerSampledImageFeaturesNV = struct ["VkStructureType sType",
1538
2363
  "void * pNext",
1539
2364
  "VkBool32 cornerSampledImage"]
1540
2365
 
1541
- VkPhysicalDeviceDescriptorIndexingFeaturesEXT = struct ["VkStructureType sType",
1542
- "void * pNext",
1543
- "VkBool32 shaderInputAttachmentArrayDynamicIndexing",
1544
- "VkBool32 shaderUniformTexelBufferArrayDynamicIndexing",
1545
- "VkBool32 shaderStorageTexelBufferArrayDynamicIndexing",
1546
- "VkBool32 shaderUniformBufferArrayNonUniformIndexing",
1547
- "VkBool32 shaderSampledImageArrayNonUniformIndexing",
1548
- "VkBool32 shaderStorageBufferArrayNonUniformIndexing",
1549
- "VkBool32 shaderStorageImageArrayNonUniformIndexing",
1550
- "VkBool32 shaderInputAttachmentArrayNonUniformIndexing",
1551
- "VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing",
1552
- "VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing",
1553
- "VkBool32 descriptorBindingUniformBufferUpdateAfterBind",
1554
- "VkBool32 descriptorBindingSampledImageUpdateAfterBind",
1555
- "VkBool32 descriptorBindingStorageImageUpdateAfterBind",
1556
- "VkBool32 descriptorBindingStorageBufferUpdateAfterBind",
1557
- "VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind",
1558
- "VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind",
1559
- "VkBool32 descriptorBindingUpdateUnusedWhilePending",
1560
- "VkBool32 descriptorBindingPartiallyBound",
1561
- "VkBool32 descriptorBindingVariableDescriptorCount",
1562
- "VkBool32 runtimeDescriptorArray"]
1563
-
1564
- VkPhysicalDeviceDescriptorIndexingPropertiesEXT = struct ["VkStructureType sType",
2366
+ VkPhysicalDeviceCoverageReductionModeFeaturesNV = struct ["VkStructureType sType",
1565
2367
  "void * pNext",
1566
- "uint32_t maxUpdateAfterBindDescriptorsInAllPools",
1567
- "VkBool32 shaderUniformBufferArrayNonUniformIndexingNative",
1568
- "VkBool32 shaderSampledImageArrayNonUniformIndexingNative",
1569
- "VkBool32 shaderStorageBufferArrayNonUniformIndexingNative",
1570
- "VkBool32 shaderStorageImageArrayNonUniformIndexingNative",
1571
- "VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative",
1572
- "VkBool32 robustBufferAccessUpdateAfterBind",
1573
- "VkBool32 quadDivergentImplicitLod",
1574
- "uint32_t maxPerStageDescriptorUpdateAfterBindSamplers",
1575
- "uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers",
1576
- "uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers",
1577
- "uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages",
1578
- "uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages",
1579
- "uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments",
1580
- "uint32_t maxPerStageUpdateAfterBindResources",
1581
- "uint32_t maxDescriptorSetUpdateAfterBindSamplers",
1582
- "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers",
1583
- "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic",
1584
- "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers",
1585
- "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic",
1586
- "uint32_t maxDescriptorSetUpdateAfterBindSampledImages",
1587
- "uint32_t maxDescriptorSetUpdateAfterBindStorageImages",
1588
- "uint32_t maxDescriptorSetUpdateAfterBindInputAttachments"]
2368
+ "VkBool32 coverageReductionMode"]
2369
+
2370
+ VkPhysicalDeviceCustomBorderColorFeaturesEXT = struct ["VkStructureType sType",
2371
+ "void * pNext",
2372
+ "VkBool32 customBorderColors",
2373
+ "VkBool32 customBorderColorWithoutFormat"]
2374
+
2375
+ VkPhysicalDeviceCustomBorderColorPropertiesEXT = struct ["VkStructureType sType",
2376
+ "void * pNext",
2377
+ "uint32_t maxCustomBorderColorSamplers"]
2378
+
2379
+ VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = struct ["VkStructureType sType",
2380
+ "void * pNext",
2381
+ "VkBool32 dedicatedAllocationImageAliasing"]
2382
+
2383
+ VkPhysicalDeviceDepthClipControlFeaturesEXT = struct ["VkStructureType sType",
2384
+ "void * pNext",
2385
+ "VkBool32 depthClipControl"]
2386
+
2387
+ VkPhysicalDeviceDepthClipEnableFeaturesEXT = struct ["VkStructureType sType",
2388
+ "void * pNext",
2389
+ "VkBool32 depthClipEnable"]
2390
+
2391
+ VkPhysicalDeviceDepthStencilResolveProperties = struct ["VkStructureType sType",
2392
+ "void * pNext",
2393
+ "VkResolveModeFlags supportedDepthResolveModes",
2394
+ "VkResolveModeFlags supportedStencilResolveModes",
2395
+ "VkBool32 independentResolveNone",
2396
+ "VkBool32 independentResolve"]
2397
+
2398
+ VkPhysicalDeviceDepthStencilResolvePropertiesKHR = VkPhysicalDeviceDepthStencilResolveProperties
2399
+
2400
+ VkPhysicalDeviceDescriptorIndexingFeatures = struct ["VkStructureType sType",
2401
+ "void * pNext",
2402
+ "VkBool32 shaderInputAttachmentArrayDynamicIndexing",
2403
+ "VkBool32 shaderUniformTexelBufferArrayDynamicIndexing",
2404
+ "VkBool32 shaderStorageTexelBufferArrayDynamicIndexing",
2405
+ "VkBool32 shaderUniformBufferArrayNonUniformIndexing",
2406
+ "VkBool32 shaderSampledImageArrayNonUniformIndexing",
2407
+ "VkBool32 shaderStorageBufferArrayNonUniformIndexing",
2408
+ "VkBool32 shaderStorageImageArrayNonUniformIndexing",
2409
+ "VkBool32 shaderInputAttachmentArrayNonUniformIndexing",
2410
+ "VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing",
2411
+ "VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing",
2412
+ "VkBool32 descriptorBindingUniformBufferUpdateAfterBind",
2413
+ "VkBool32 descriptorBindingSampledImageUpdateAfterBind",
2414
+ "VkBool32 descriptorBindingStorageImageUpdateAfterBind",
2415
+ "VkBool32 descriptorBindingStorageBufferUpdateAfterBind",
2416
+ "VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind",
2417
+ "VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind",
2418
+ "VkBool32 descriptorBindingUpdateUnusedWhilePending",
2419
+ "VkBool32 descriptorBindingPartiallyBound",
2420
+ "VkBool32 descriptorBindingVariableDescriptorCount",
2421
+ "VkBool32 runtimeDescriptorArray"]
2422
+
2423
+ VkPhysicalDeviceDescriptorIndexingFeaturesEXT = VkPhysicalDeviceDescriptorIndexingFeatures
2424
+
2425
+ VkPhysicalDeviceDescriptorIndexingProperties = struct ["VkStructureType sType",
2426
+ "void * pNext",
2427
+ "uint32_t maxUpdateAfterBindDescriptorsInAllPools",
2428
+ "VkBool32 shaderUniformBufferArrayNonUniformIndexingNative",
2429
+ "VkBool32 shaderSampledImageArrayNonUniformIndexingNative",
2430
+ "VkBool32 shaderStorageBufferArrayNonUniformIndexingNative",
2431
+ "VkBool32 shaderStorageImageArrayNonUniformIndexingNative",
2432
+ "VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative",
2433
+ "VkBool32 robustBufferAccessUpdateAfterBind",
2434
+ "VkBool32 quadDivergentImplicitLod",
2435
+ "uint32_t maxPerStageDescriptorUpdateAfterBindSamplers",
2436
+ "uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers",
2437
+ "uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers",
2438
+ "uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages",
2439
+ "uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages",
2440
+ "uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments",
2441
+ "uint32_t maxPerStageUpdateAfterBindResources",
2442
+ "uint32_t maxDescriptorSetUpdateAfterBindSamplers",
2443
+ "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers",
2444
+ "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic",
2445
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers",
2446
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic",
2447
+ "uint32_t maxDescriptorSetUpdateAfterBindSampledImages",
2448
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageImages",
2449
+ "uint32_t maxDescriptorSetUpdateAfterBindInputAttachments"]
2450
+
2451
+ VkPhysicalDeviceDescriptorIndexingPropertiesEXT = VkPhysicalDeviceDescriptorIndexingProperties
2452
+
2453
+ VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = struct ["VkStructureType sType",
2454
+ "void * pNext",
2455
+ "VkBool32 descriptorSetHostMapping"]
2456
+
2457
+ VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = struct ["VkStructureType sType",
2458
+ "void * pNext",
2459
+ "VkBool32 deviceGeneratedCommands"]
2460
+
2461
+ VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = struct ["VkStructureType sType",
2462
+ "void * pNext",
2463
+ "uint32_t maxGraphicsShaderGroupCount",
2464
+ "uint32_t maxIndirectSequenceCount",
2465
+ "uint32_t maxIndirectCommandsTokenCount",
2466
+ "uint32_t maxIndirectCommandsStreamCount",
2467
+ "uint32_t maxIndirectCommandsTokenOffset",
2468
+ "uint32_t maxIndirectCommandsStreamStride",
2469
+ "uint32_t minSequencesCountBufferOffsetAlignment",
2470
+ "uint32_t minSequencesIndexBufferOffsetAlignment",
2471
+ "uint32_t minIndirectCommandsBufferOffsetAlignment"]
2472
+
2473
+ VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = struct ["VkStructureType sType",
2474
+ "void * pNext",
2475
+ "VkBool32 deviceMemoryReport"]
2476
+
2477
+ VkPhysicalDeviceDiagnosticsConfigFeaturesNV = struct ["VkStructureType sType",
2478
+ "void * pNext",
2479
+ "VkBool32 diagnosticsConfig"]
1589
2480
 
1590
2481
  VkPhysicalDeviceDiscardRectanglePropertiesEXT = struct ["VkStructureType sType",
1591
2482
  "void * pNext",
1592
2483
  "uint32_t maxDiscardRectangles"]
1593
2484
 
1594
- VkPhysicalDeviceDriverPropertiesKHR = struct ["VkStructureType sType",
1595
- "void * pNext",
1596
- "VkDriverIdKHR driverID",
1597
- "char driverName[#{VK_MAX_DRIVER_NAME_SIZE_KHR}]",
1598
- "char driverInfo[#{VK_MAX_DRIVER_INFO_SIZE_KHR}]",
1599
- { "conformanceVersion" => VkConformanceVersionKHR }]
2485
+ VkPhysicalDeviceDriverProperties = struct ["VkStructureType sType",
2486
+ "void * pNext",
2487
+ "VkDriverId driverID",
2488
+ "char driverName[#{VK_MAX_DRIVER_NAME_SIZE}]",
2489
+ "char driverInfo[#{VK_MAX_DRIVER_INFO_SIZE}]",
2490
+ { "conformanceVersion" => VkConformanceVersion }]
2491
+
2492
+ VkPhysicalDeviceDriverPropertiesKHR = VkPhysicalDeviceDriverProperties
2493
+
2494
+ VkPhysicalDeviceDrmPropertiesEXT = struct ["VkStructureType sType",
2495
+ "void * pNext",
2496
+ "VkBool32 hasPrimary",
2497
+ "VkBool32 hasRender",
2498
+ "int64_t primaryMajor",
2499
+ "int64_t primaryMinor",
2500
+ "int64_t renderMajor",
2501
+ "int64_t renderMinor"]
2502
+
2503
+ VkPhysicalDeviceDynamicRenderingFeatures = struct ["VkStructureType sType",
2504
+ "void * pNext",
2505
+ "VkBool32 dynamicRendering"]
2506
+
2507
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR = VkPhysicalDeviceDynamicRenderingFeatures
1600
2508
 
1601
2509
  VkPhysicalDeviceExclusiveScissorFeaturesNV = struct ["VkStructureType sType",
1602
2510
  "void * pNext",
1603
2511
  "VkBool32 exclusiveScissor"]
1604
2512
 
2513
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = struct ["VkStructureType sType",
2514
+ "void * pNext",
2515
+ "VkBool32 extendedDynamicState2",
2516
+ "VkBool32 extendedDynamicState2LogicOp",
2517
+ "VkBool32 extendedDynamicState2PatchControlPoints"]
2518
+
2519
+ VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = struct ["VkStructureType sType",
2520
+ "void * pNext",
2521
+ "VkBool32 extendedDynamicState"]
2522
+
1605
2523
  VkPhysicalDeviceExternalBufferInfo = struct ["VkStructureType sType",
1606
2524
  "void * pNext",
1607
2525
  "VkBufferCreateFlags flags",
@@ -1626,6 +2544,10 @@ module Vulkan
1626
2544
  "void * pNext",
1627
2545
  "VkDeviceSize minImportedHostPointerAlignment"]
1628
2546
 
2547
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = struct ["VkStructureType sType",
2548
+ "void * pNext",
2549
+ "VkBool32 externalMemoryRDMA"]
2550
+
1629
2551
  VkPhysicalDeviceExternalSemaphoreInfo = struct ["VkStructureType sType",
1630
2552
  "void * pNext",
1631
2553
  "VkExternalSemaphoreHandleTypeFlagBits handleType"]
@@ -1638,10 +2560,121 @@ module Vulkan
1638
2560
 
1639
2561
  VkPhysicalDeviceFeatures2KHR = VkPhysicalDeviceFeatures2
1640
2562
 
2563
+ VkPhysicalDeviceShaderFloat16Int8Features = struct ["VkStructureType sType",
2564
+ "void * pNext",
2565
+ "VkBool32 shaderFloat16",
2566
+ "VkBool32 shaderInt8"]
2567
+ VkPhysicalDeviceFloat16Int8FeaturesKHR = VkPhysicalDeviceShaderFloat16Int8Features
2568
+
2569
+ VkPhysicalDeviceFloatControlsProperties = struct ["VkStructureType sType",
2570
+ "void * pNext",
2571
+ "VkShaderFloatControlsIndependence denormBehaviorIndependence",
2572
+ "VkShaderFloatControlsIndependence roundingModeIndependence",
2573
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat16",
2574
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat32",
2575
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat64",
2576
+ "VkBool32 shaderDenormPreserveFloat16",
2577
+ "VkBool32 shaderDenormPreserveFloat32",
2578
+ "VkBool32 shaderDenormPreserveFloat64",
2579
+ "VkBool32 shaderDenormFlushToZeroFloat16",
2580
+ "VkBool32 shaderDenormFlushToZeroFloat32",
2581
+ "VkBool32 shaderDenormFlushToZeroFloat64",
2582
+ "VkBool32 shaderRoundingModeRTEFloat16",
2583
+ "VkBool32 shaderRoundingModeRTEFloat32",
2584
+ "VkBool32 shaderRoundingModeRTEFloat64",
2585
+ "VkBool32 shaderRoundingModeRTZFloat16",
2586
+ "VkBool32 shaderRoundingModeRTZFloat32",
2587
+ "VkBool32 shaderRoundingModeRTZFloat64"]
2588
+
2589
+ VkPhysicalDeviceFloatControlsPropertiesKHR = VkPhysicalDeviceFloatControlsProperties
2590
+
2591
+ VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = struct ["VkStructureType sType",
2592
+ "void * pNext",
2593
+ "VkBool32 fragmentDensityMapDeferred"]
2594
+
2595
+ VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = struct ["VkStructureType sType",
2596
+ "void * pNext",
2597
+ "VkBool32 subsampledLoads",
2598
+ "VkBool32 subsampledCoarseReconstructionEarlyAccess",
2599
+ "uint32_t maxSubsampledArrayLayers",
2600
+ "uint32_t maxDescriptorSetSubsampledSamplers"]
2601
+
2602
+ VkPhysicalDeviceFragmentDensityMapFeaturesEXT = struct ["VkStructureType sType",
2603
+ "void * pNext",
2604
+ "VkBool32 fragmentDensityMap",
2605
+ "VkBool32 fragmentDensityMapDynamic",
2606
+ "VkBool32 fragmentDensityMapNonSubsampledImages"]
2607
+
2608
+ VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = struct ["VkStructureType sType",
2609
+ "void * pNext",
2610
+ "VkBool32 fragmentDensityMapOffset"]
2611
+
2612
+ VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = struct ["VkStructureType sType",
2613
+ "void * pNext",
2614
+ { "fragmentDensityOffsetGranularity" => VkExtent2D }]
2615
+
2616
+ VkPhysicalDeviceFragmentDensityMapPropertiesEXT = struct ["VkStructureType sType",
2617
+ "void * pNext",
2618
+ { "minFragmentDensityTexelSize" => VkExtent2D },
2619
+ { "maxFragmentDensityTexelSize" => VkExtent2D },
2620
+ "VkBool32 fragmentDensityInvocations"]
2621
+
1641
2622
  VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV = struct ["VkStructureType sType",
1642
2623
  "void * pNext",
1643
2624
  "VkBool32 fragmentShaderBarycentric"]
1644
2625
 
2626
+ VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = struct ["VkStructureType sType",
2627
+ "void * pNext",
2628
+ "VkBool32 fragmentShaderSampleInterlock",
2629
+ "VkBool32 fragmentShaderPixelInterlock",
2630
+ "VkBool32 fragmentShaderShadingRateInterlock"]
2631
+
2632
+ VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = struct ["VkStructureType sType",
2633
+ "void * pNext",
2634
+ "VkBool32 fragmentShadingRateEnums",
2635
+ "VkBool32 supersampleFragmentShadingRates",
2636
+ "VkBool32 noInvocationFragmentShadingRates"]
2637
+
2638
+ VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = struct ["VkStructureType sType",
2639
+ "void * pNext",
2640
+ "VkSampleCountFlagBits maxFragmentShadingRateInvocationCount"]
2641
+
2642
+ VkPhysicalDeviceFragmentShadingRateFeaturesKHR = struct ["VkStructureType sType",
2643
+ "void * pNext",
2644
+ "VkBool32 pipelineFragmentShadingRate",
2645
+ "VkBool32 primitiveFragmentShadingRate",
2646
+ "VkBool32 attachmentFragmentShadingRate"]
2647
+
2648
+ VkPhysicalDeviceFragmentShadingRateKHR = struct ["VkStructureType sType",
2649
+ "void * pNext",
2650
+ "VkSampleCountFlags sampleCounts",
2651
+ { "fragmentSize" => VkExtent2D }]
2652
+
2653
+ VkPhysicalDeviceFragmentShadingRatePropertiesKHR = struct ["VkStructureType sType",
2654
+ "void * pNext",
2655
+ { "minFragmentShadingRateAttachmentTexelSize" => VkExtent2D },
2656
+ { "maxFragmentShadingRateAttachmentTexelSize" => VkExtent2D },
2657
+ "uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio",
2658
+ "VkBool32 primitiveFragmentShadingRateWithMultipleViewports",
2659
+ "VkBool32 layeredShadingRateAttachments",
2660
+ "VkBool32 fragmentShadingRateNonTrivialCombinerOps",
2661
+ { "maxFragmentSize" => VkExtent2D },
2662
+ "uint32_t maxFragmentSizeAspectRatio",
2663
+ "uint32_t maxFragmentShadingRateCoverageSamples",
2664
+ "VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples",
2665
+ "VkBool32 fragmentShadingRateWithShaderDepthStencilWrites",
2666
+ "VkBool32 fragmentShadingRateWithSampleMask",
2667
+ "VkBool32 fragmentShadingRateWithShaderSampleMask",
2668
+ "VkBool32 fragmentShadingRateWithConservativeRasterization",
2669
+ "VkBool32 fragmentShadingRateWithFragmentShaderInterlock",
2670
+ "VkBool32 fragmentShadingRateWithCustomSampleLocations",
2671
+ "VkBool32 fragmentShadingRateStrictMultiplyCombiner"]
2672
+
2673
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = struct ["VkStructureType sType",
2674
+ "void * pNext",
2675
+ "VkBool32 globalPriorityQuery"]
2676
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR
2677
+
1645
2678
  VkPhysicalDeviceGroupProperties = struct ["VkStructureType sType",
1646
2679
  "void * pNext",
1647
2680
  "uint32_t physicalDeviceCount",
@@ -1650,6 +2683,12 @@ module Vulkan
1650
2683
 
1651
2684
  VkPhysicalDeviceGroupPropertiesKHR = VkPhysicalDeviceGroupProperties
1652
2685
 
2686
+ VkPhysicalDeviceHostQueryResetFeatures = struct ["VkStructureType sType",
2687
+ "void * pNext",
2688
+ "VkBool32 hostQueryReset"]
2689
+
2690
+ VkPhysicalDeviceHostQueryResetFeaturesEXT = VkPhysicalDeviceHostQueryResetFeatures
2691
+
1653
2692
  VkPhysicalDeviceIDProperties = struct ["VkStructureType sType",
1654
2693
  "void * pNext",
1655
2694
  "uint8_t deviceUUID[#{VK_UUID_SIZE}]",
@@ -1677,18 +2716,54 @@ module Vulkan
1677
2716
 
1678
2717
  VkPhysicalDeviceImageFormatInfo2KHR = VkPhysicalDeviceImageFormatInfo2
1679
2718
 
1680
- VkPhysicalDeviceInlineUniformBlockFeaturesEXT = struct ["VkStructureType sType",
1681
- "void * pNext",
1682
- "VkBool32 inlineUniformBlock",
1683
- "VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind"]
2719
+ VkPhysicalDeviceImageRobustnessFeatures = struct ["VkStructureType sType",
2720
+ "void * pNext",
2721
+ "VkBool32 robustImageAccess"]
1684
2722
 
1685
- VkPhysicalDeviceInlineUniformBlockPropertiesEXT = struct ["VkStructureType sType",
1686
- "void * pNext",
1687
- "uint32_t maxInlineUniformBlockSize",
1688
- "uint32_t maxPerStageDescriptorInlineUniformBlocks",
1689
- "uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks",
1690
- "uint32_t maxDescriptorSetInlineUniformBlocks",
1691
- "uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks"]
2723
+ VkPhysicalDeviceImageRobustnessFeaturesEXT = VkPhysicalDeviceImageRobustnessFeatures
2724
+
2725
+ VkPhysicalDeviceImageViewImageFormatInfoEXT = struct ["VkStructureType sType",
2726
+ "void * pNext",
2727
+ "VkImageViewType imageViewType"]
2728
+
2729
+ VkPhysicalDeviceImageViewMinLodFeaturesEXT = struct ["VkStructureType sType",
2730
+ "void * pNext",
2731
+ "VkBool32 minLod"]
2732
+
2733
+ VkPhysicalDeviceImagelessFramebufferFeatures = struct ["VkStructureType sType",
2734
+ "void * pNext",
2735
+ "VkBool32 imagelessFramebuffer"]
2736
+
2737
+ VkPhysicalDeviceImagelessFramebufferFeaturesKHR = VkPhysicalDeviceImagelessFramebufferFeatures
2738
+
2739
+ VkPhysicalDeviceIndexTypeUint8FeaturesEXT = struct ["VkStructureType sType",
2740
+ "void * pNext",
2741
+ "VkBool32 indexTypeUint8"]
2742
+
2743
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV = struct ["VkStructureType sType",
2744
+ "void * pNext",
2745
+ "VkBool32 inheritedViewportScissor2D"]
2746
+
2747
+ VkPhysicalDeviceInlineUniformBlockFeatures = struct ["VkStructureType sType",
2748
+ "void * pNext",
2749
+ "VkBool32 inlineUniformBlock",
2750
+ "VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind"]
2751
+
2752
+ VkPhysicalDeviceInlineUniformBlockFeaturesEXT = VkPhysicalDeviceInlineUniformBlockFeatures
2753
+
2754
+ VkPhysicalDeviceInlineUniformBlockProperties = struct ["VkStructureType sType",
2755
+ "void * pNext",
2756
+ "uint32_t maxInlineUniformBlockSize",
2757
+ "uint32_t maxPerStageDescriptorInlineUniformBlocks",
2758
+ "uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks",
2759
+ "uint32_t maxDescriptorSetInlineUniformBlocks",
2760
+ "uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks"]
2761
+
2762
+ VkPhysicalDeviceInlineUniformBlockPropertiesEXT = VkPhysicalDeviceInlineUniformBlockProperties
2763
+
2764
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = struct ["VkStructureType sType",
2765
+ "void * pNext",
2766
+ "VkBool32 invocationMask"]
1692
2767
 
1693
2768
  VkPhysicalDeviceLimits = struct ["uint32_t maxImageDimension1D",
1694
2769
  "uint32_t maxImageDimension2D",
@@ -1797,6 +2872,23 @@ module Vulkan
1797
2872
  "VkDeviceSize optimalBufferCopyRowPitchAlignment",
1798
2873
  "VkDeviceSize nonCoherentAtomSize"]
1799
2874
 
2875
+ VkPhysicalDeviceLineRasterizationFeaturesEXT = struct ["VkStructureType sType",
2876
+ "void * pNext",
2877
+ "VkBool32 rectangularLines",
2878
+ "VkBool32 bresenhamLines",
2879
+ "VkBool32 smoothLines",
2880
+ "VkBool32 stippledRectangularLines",
2881
+ "VkBool32 stippledBresenhamLines",
2882
+ "VkBool32 stippledSmoothLines"]
2883
+
2884
+ VkPhysicalDeviceLineRasterizationPropertiesEXT = struct ["VkStructureType sType",
2885
+ "void * pNext",
2886
+ "uint32_t lineSubPixelPrecisionBits"]
2887
+
2888
+ VkPhysicalDeviceLinearColorAttachmentFeaturesNV = struct ["VkStructureType sType",
2889
+ "void * pNext",
2890
+ "VkBool32 linearColorAttachment"]
2891
+
1800
2892
  VkPhysicalDeviceMaintenance3Properties = struct ["VkStructureType sType",
1801
2893
  "void * pNext",
1802
2894
  "uint32_t maxPerSetDescriptors",
@@ -1804,6 +2896,27 @@ module Vulkan
1804
2896
 
1805
2897
  VkPhysicalDeviceMaintenance3PropertiesKHR = VkPhysicalDeviceMaintenance3Properties
1806
2898
 
2899
+ VkPhysicalDeviceMaintenance4Features = struct ["VkStructureType sType",
2900
+ "void * pNext",
2901
+ "VkBool32 maintenance4"]
2902
+
2903
+ VkPhysicalDeviceMaintenance4FeaturesKHR = VkPhysicalDeviceMaintenance4Features
2904
+
2905
+ VkPhysicalDeviceMaintenance4Properties = struct ["VkStructureType sType",
2906
+ "void * pNext",
2907
+ "VkDeviceSize maxBufferSize"]
2908
+
2909
+ VkPhysicalDeviceMaintenance4PropertiesKHR = VkPhysicalDeviceMaintenance4Properties
2910
+
2911
+ VkPhysicalDeviceMemoryBudgetPropertiesEXT = struct ["VkStructureType sType",
2912
+ "void * pNext",
2913
+ "VkDeviceSize heapBudget[#{VK_MAX_MEMORY_HEAPS}]",
2914
+ "VkDeviceSize heapUsage[#{VK_MAX_MEMORY_HEAPS}]"]
2915
+
2916
+ VkPhysicalDeviceMemoryPriorityFeaturesEXT = struct ["VkStructureType sType",
2917
+ "void * pNext",
2918
+ "VkBool32 memoryPriority"]
2919
+
1807
2920
  VkPhysicalDeviceMemoryProperties = struct ["uint32_t memoryTypeCount",
1808
2921
  { "memoryTypes[#{VK_MAX_MEMORY_TYPES}]" => VkMemoryType },
1809
2922
  "uint32_t memoryHeapCount",
@@ -1836,6 +2949,14 @@ module Vulkan
1836
2949
  "uint32_t meshOutputPerVertexGranularity",
1837
2950
  "uint32_t meshOutputPerPrimitiveGranularity"]
1838
2951
 
2952
+ VkPhysicalDeviceMultiDrawFeaturesEXT = struct ["VkStructureType sType",
2953
+ "void * pNext",
2954
+ "VkBool32 multiDraw"]
2955
+
2956
+ VkPhysicalDeviceMultiDrawPropertiesEXT = struct ["VkStructureType sType",
2957
+ "void * pNext",
2958
+ "uint32_t maxMultiDrawCount"]
2959
+
1839
2960
  VkPhysicalDeviceMultiviewFeatures = struct ["VkStructureType sType",
1840
2961
  "void * pNext",
1841
2962
  "VkBool32 multiview",
@@ -1855,12 +2976,39 @@ module Vulkan
1855
2976
 
1856
2977
  VkPhysicalDeviceMultiviewPropertiesKHR = VkPhysicalDeviceMultiviewProperties
1857
2978
 
2979
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE = struct ["VkStructureType sType",
2980
+ "void * pNext",
2981
+ "VkBool32 mutableDescriptorType"]
2982
+
1858
2983
  VkPhysicalDevicePCIBusInfoPropertiesEXT = struct ["VkStructureType sType",
1859
2984
  "void * pNext",
1860
- "uint16_t pciDomain",
1861
- "uint8_t pciBus",
1862
- "uint8_t pciDevice",
1863
- "uint8_t pciFunction"]
2985
+ "uint32_t pciDomain",
2986
+ "uint32_t pciBus",
2987
+ "uint32_t pciDevice",
2988
+ "uint32_t pciFunction"]
2989
+
2990
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = struct ["VkStructureType sType",
2991
+ "void * pNext",
2992
+ "VkBool32 pageableDeviceLocalMemory"]
2993
+
2994
+ VkPhysicalDevicePerformanceQueryFeaturesKHR = struct ["VkStructureType sType",
2995
+ "void * pNext",
2996
+ "VkBool32 performanceCounterQueryPools",
2997
+ "VkBool32 performanceCounterMultipleQueryPools"]
2998
+
2999
+ VkPhysicalDevicePerformanceQueryPropertiesKHR = struct ["VkStructureType sType",
3000
+ "void * pNext",
3001
+ "VkBool32 allowCommandBufferQueryCopies"]
3002
+
3003
+ VkPhysicalDevicePipelineCreationCacheControlFeatures = struct ["VkStructureType sType",
3004
+ "void * pNext",
3005
+ "VkBool32 pipelineCreationCacheControl"]
3006
+
3007
+ VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT = VkPhysicalDevicePipelineCreationCacheControlFeatures
3008
+
3009
+ VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = struct ["VkStructureType sType",
3010
+ "void * pNext",
3011
+ "VkBool32 pipelineExecutableInfo"]
1864
3012
 
1865
3013
  VkPhysicalDevicePointClippingProperties = struct ["VkStructureType sType",
1866
3014
  "void * pNext",
@@ -1868,6 +3016,51 @@ module Vulkan
1868
3016
 
1869
3017
  VkPhysicalDevicePointClippingPropertiesKHR = VkPhysicalDevicePointClippingProperties
1870
3018
 
3019
+ VkPhysicalDevicePortabilitySubsetFeaturesKHR = struct ["VkStructureType sType",
3020
+ "void * pNext",
3021
+ "VkBool32 constantAlphaColorBlendFactors",
3022
+ "VkBool32 events",
3023
+ "VkBool32 imageViewFormatReinterpretation",
3024
+ "VkBool32 imageViewFormatSwizzle",
3025
+ "VkBool32 imageView2DOn3DImage",
3026
+ "VkBool32 multisampleArrayImage",
3027
+ "VkBool32 mutableComparisonSamplers",
3028
+ "VkBool32 pointPolygons",
3029
+ "VkBool32 samplerMipLodBias",
3030
+ "VkBool32 separateStencilMaskRef",
3031
+ "VkBool32 shaderSampleRateInterpolationFunctions",
3032
+ "VkBool32 tessellationIsolines",
3033
+ "VkBool32 tessellationPointMode",
3034
+ "VkBool32 triangleFans",
3035
+ "VkBool32 vertexAttributeAccessBeyondStride"]
3036
+
3037
+ VkPhysicalDevicePortabilitySubsetPropertiesKHR = struct ["VkStructureType sType",
3038
+ "void * pNext",
3039
+ "uint32_t minVertexInputBindingStrideAlignment"]
3040
+
3041
+ VkPhysicalDevicePresentIdFeaturesKHR = struct ["VkStructureType sType",
3042
+ "void * pNext",
3043
+ "VkBool32 presentId"]
3044
+
3045
+ VkPhysicalDevicePresentWaitFeaturesKHR = struct ["VkStructureType sType",
3046
+ "void * pNext",
3047
+ "VkBool32 presentWait"]
3048
+
3049
+ VkPhysicalDevicePresentationPropertiesANDROID = struct ["VkStructureType sType",
3050
+ "void * pNext",
3051
+ "VkBool32 sharedImage"]
3052
+
3053
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = struct ["VkStructureType sType",
3054
+ "void * pNext",
3055
+ "VkBool32 primitiveTopologyListRestart",
3056
+ "VkBool32 primitiveTopologyPatchListRestart"]
3057
+
3058
+ VkPhysicalDevicePrivateDataFeatures = struct ["VkStructureType sType",
3059
+ "void * pNext",
3060
+ "VkBool32 privateData"]
3061
+
3062
+ VkPhysicalDevicePrivateDataFeaturesEXT = VkPhysicalDevicePrivateDataFeatures
3063
+
1871
3064
  VkPhysicalDeviceSparseProperties = struct ["VkBool32 residencyStandard2DBlockShape",
1872
3065
  "VkBool32 residencyStandard2DMultisampleBlockShape",
1873
3066
  "VkBool32 residencyStandard3DBlockShape",
@@ -1897,10 +3090,58 @@ module Vulkan
1897
3090
  "void * pNext",
1898
3091
  "VkBool32 protectedNoFault"]
1899
3092
 
3093
+ VkPhysicalDeviceProvokingVertexFeaturesEXT = struct ["VkStructureType sType",
3094
+ "void * pNext",
3095
+ "VkBool32 provokingVertexLast",
3096
+ "VkBool32 transformFeedbackPreservesProvokingVertex"]
3097
+
3098
+ VkPhysicalDeviceProvokingVertexPropertiesEXT = struct ["VkStructureType sType",
3099
+ "void * pNext",
3100
+ "VkBool32 provokingVertexModePerPipeline",
3101
+ "VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex"]
3102
+
1900
3103
  VkPhysicalDevicePushDescriptorPropertiesKHR = struct ["VkStructureType sType",
1901
3104
  "void * pNext",
1902
3105
  "uint32_t maxPushDescriptors"]
1903
3106
 
3107
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = struct ["VkStructureType sType",
3108
+ "void * pNext",
3109
+ "VkBool32 formatRgba10x6WithoutYCbCrSampler"]
3110
+
3111
+ VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = struct ["VkStructureType sType",
3112
+ "void * pNext",
3113
+ "VkBool32 rasterizationOrderColorAttachmentAccess",
3114
+ "VkBool32 rasterizationOrderDepthAttachmentAccess",
3115
+ "VkBool32 rasterizationOrderStencilAttachmentAccess"]
3116
+
3117
+ VkPhysicalDeviceRayQueryFeaturesKHR = struct ["VkStructureType sType",
3118
+ "void * pNext",
3119
+ "VkBool32 rayQuery"]
3120
+
3121
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = struct ["VkStructureType sType",
3122
+ "void * pNext",
3123
+ "VkBool32 rayTracingMotionBlur",
3124
+ "VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect"]
3125
+
3126
+ VkPhysicalDeviceRayTracingPipelineFeaturesKHR = struct ["VkStructureType sType",
3127
+ "void * pNext",
3128
+ "VkBool32 rayTracingPipeline",
3129
+ "VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay",
3130
+ "VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed",
3131
+ "VkBool32 rayTracingPipelineTraceRaysIndirect",
3132
+ "VkBool32 rayTraversalPrimitiveCulling"]
3133
+
3134
+ VkPhysicalDeviceRayTracingPipelinePropertiesKHR = struct ["VkStructureType sType",
3135
+ "void * pNext",
3136
+ "uint32_t shaderGroupHandleSize",
3137
+ "uint32_t maxRayRecursionDepth",
3138
+ "uint32_t maxShaderGroupStride",
3139
+ "uint32_t shaderGroupBaseAlignment",
3140
+ "uint32_t shaderGroupHandleCaptureReplaySize",
3141
+ "uint32_t maxRayDispatchInvocationCount",
3142
+ "uint32_t shaderGroupHandleAlignment",
3143
+ "uint32_t maxRayHitAttributeSize"]
3144
+
1904
3145
  VkPhysicalDeviceRayTracingPropertiesNV = struct ["VkStructureType sType",
1905
3146
  "void * pNext",
1906
3147
  "uint32_t shaderGroupHandleSize",
@@ -1916,6 +3157,17 @@ module Vulkan
1916
3157
  "void * pNext",
1917
3158
  "VkBool32 representativeFragmentTest"]
1918
3159
 
3160
+ VkPhysicalDeviceRobustness2FeaturesEXT = struct ["VkStructureType sType",
3161
+ "void * pNext",
3162
+ "VkBool32 robustBufferAccess2",
3163
+ "VkBool32 robustImageAccess2",
3164
+ "VkBool32 nullDescriptor"]
3165
+
3166
+ VkPhysicalDeviceRobustness2PropertiesEXT = struct ["VkStructureType sType",
3167
+ "void * pNext",
3168
+ "VkDeviceSize robustStorageBufferAccessSizeAlignment",
3169
+ "VkDeviceSize robustUniformBufferAccessSizeAlignment"]
3170
+
1919
3171
  VkPhysicalDeviceSampleLocationsPropertiesEXT = struct ["VkStructureType sType",
1920
3172
  "void * pNext",
1921
3173
  "VkSampleCountFlags sampleLocationSampleCounts",
@@ -1924,10 +3176,12 @@ module Vulkan
1924
3176
  "uint32_t sampleLocationSubPixelBits",
1925
3177
  "VkBool32 variableSampleLocations"]
1926
3178
 
1927
- VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT = struct ["VkStructureType sType",
1928
- "void * pNext",
1929
- "VkBool32 filterMinmaxSingleComponentFormats",
1930
- "VkBool32 filterMinmaxImageComponentMapping"]
3179
+ VkPhysicalDeviceSamplerFilterMinmaxProperties = struct ["VkStructureType sType",
3180
+ "void * pNext",
3181
+ "VkBool32 filterMinmaxSingleComponentFormats",
3182
+ "VkBool32 filterMinmaxImageComponentMapping"]
3183
+
3184
+ VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT = VkPhysicalDeviceSamplerFilterMinmaxProperties
1931
3185
 
1932
3186
  VkPhysicalDeviceSamplerYcbcrConversionFeatures = struct ["VkStructureType sType",
1933
3187
  "void * pNext",
@@ -1935,10 +3189,64 @@ module Vulkan
1935
3189
 
1936
3190
  VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR = VkPhysicalDeviceSamplerYcbcrConversionFeatures
1937
3191
 
1938
- VkPhysicalDeviceShaderAtomicInt64FeaturesKHR = struct ["VkStructureType sType",
1939
- "void * pNext",
1940
- "VkBool32 shaderBufferInt64Atomics",
1941
- "VkBool32 shaderSharedInt64Atomics"]
3192
+ VkPhysicalDeviceScalarBlockLayoutFeatures = struct ["VkStructureType sType",
3193
+ "void * pNext",
3194
+ "VkBool32 scalarBlockLayout"]
3195
+
3196
+ VkPhysicalDeviceScalarBlockLayoutFeaturesEXT = VkPhysicalDeviceScalarBlockLayoutFeatures
3197
+
3198
+ VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = struct ["VkStructureType sType",
3199
+ "void * pNext",
3200
+ "VkBool32 separateDepthStencilLayouts"]
3201
+
3202
+ VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures
3203
+
3204
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT = struct ["VkStructureType sType",
3205
+ "void * pNext",
3206
+ "VkBool32 shaderBufferFloat16Atomics",
3207
+ "VkBool32 shaderBufferFloat16AtomicAdd",
3208
+ "VkBool32 shaderBufferFloat16AtomicMinMax",
3209
+ "VkBool32 shaderBufferFloat32AtomicMinMax",
3210
+ "VkBool32 shaderBufferFloat64AtomicMinMax",
3211
+ "VkBool32 shaderSharedFloat16Atomics",
3212
+ "VkBool32 shaderSharedFloat16AtomicAdd",
3213
+ "VkBool32 shaderSharedFloat16AtomicMinMax",
3214
+ "VkBool32 shaderSharedFloat32AtomicMinMax",
3215
+ "VkBool32 shaderSharedFloat64AtomicMinMax",
3216
+ "VkBool32 shaderImageFloat32AtomicMinMax",
3217
+ "VkBool32 sparseImageFloat32AtomicMinMax"]
3218
+
3219
+ VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = struct ["VkStructureType sType",
3220
+ "void * pNext",
3221
+ "VkBool32 shaderBufferFloat32Atomics",
3222
+ "VkBool32 shaderBufferFloat32AtomicAdd",
3223
+ "VkBool32 shaderBufferFloat64Atomics",
3224
+ "VkBool32 shaderBufferFloat64AtomicAdd",
3225
+ "VkBool32 shaderSharedFloat32Atomics",
3226
+ "VkBool32 shaderSharedFloat32AtomicAdd",
3227
+ "VkBool32 shaderSharedFloat64Atomics",
3228
+ "VkBool32 shaderSharedFloat64AtomicAdd",
3229
+ "VkBool32 shaderImageFloat32Atomics",
3230
+ "VkBool32 shaderImageFloat32AtomicAdd",
3231
+ "VkBool32 sparseImageFloat32Atomics",
3232
+ "VkBool32 sparseImageFloat32AtomicAdd"]
3233
+
3234
+ VkPhysicalDeviceShaderAtomicInt64Features = struct ["VkStructureType sType",
3235
+ "void * pNext",
3236
+ "VkBool32 shaderBufferInt64Atomics",
3237
+ "VkBool32 shaderSharedInt64Atomics"]
3238
+
3239
+ VkPhysicalDeviceShaderAtomicInt64FeaturesKHR = VkPhysicalDeviceShaderAtomicInt64Features
3240
+
3241
+ VkPhysicalDeviceShaderClockFeaturesKHR = struct ["VkStructureType sType",
3242
+ "void * pNext",
3243
+ "VkBool32 shaderSubgroupClock",
3244
+ "VkBool32 shaderDeviceClock"]
3245
+
3246
+ VkPhysicalDeviceShaderCoreProperties2AMD = struct ["VkStructureType sType",
3247
+ "void * pNext",
3248
+ "VkShaderCorePropertiesFlagsAMD shaderCoreFeatures",
3249
+ "uint32_t activeComputeUnitCount"]
1942
3250
 
1943
3251
  VkPhysicalDeviceShaderCorePropertiesAMD = struct ["VkStructureType sType",
1944
3252
  "void * pNext",
@@ -1957,14 +3265,98 @@ module Vulkan
1957
3265
  "uint32_t maxVgprAllocation",
1958
3266
  "uint32_t vgprAllocationGranularity"]
1959
3267
 
1960
- VkPhysicalDeviceShaderDrawParameterFeatures = struct ["VkStructureType sType",
1961
- "void * pNext",
1962
- "VkBool32 shaderDrawParameters"]
3268
+ VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = struct ["VkStructureType sType",
3269
+ "void * pNext",
3270
+ "VkBool32 shaderDemoteToHelperInvocation"]
3271
+
3272
+ VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures
3273
+
3274
+ VkPhysicalDeviceShaderDrawParametersFeatures = struct ["VkStructureType sType",
3275
+ "void * pNext",
3276
+ "VkBool32 shaderDrawParameters"]
3277
+ VkPhysicalDeviceShaderDrawParameterFeatures = VkPhysicalDeviceShaderDrawParametersFeatures
3278
+
3279
+ VkPhysicalDeviceShaderFloat16Int8FeaturesKHR = VkPhysicalDeviceShaderFloat16Int8Features
3280
+
3281
+ VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = struct ["VkStructureType sType",
3282
+ "void * pNext",
3283
+ "VkBool32 shaderImageInt64Atomics",
3284
+ "VkBool32 sparseImageInt64Atomics"]
1963
3285
 
1964
3286
  VkPhysicalDeviceShaderImageFootprintFeaturesNV = struct ["VkStructureType sType",
1965
3287
  "void * pNext",
1966
3288
  "VkBool32 imageFootprint"]
1967
3289
 
3290
+ VkPhysicalDeviceShaderIntegerDotProductFeatures = struct ["VkStructureType sType",
3291
+ "void * pNext",
3292
+ "VkBool32 shaderIntegerDotProduct"]
3293
+
3294
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR = VkPhysicalDeviceShaderIntegerDotProductFeatures
3295
+
3296
+ VkPhysicalDeviceShaderIntegerDotProductProperties = struct ["VkStructureType sType",
3297
+ "void * pNext",
3298
+ "VkBool32 integerDotProduct8BitUnsignedAccelerated",
3299
+ "VkBool32 integerDotProduct8BitSignedAccelerated",
3300
+ "VkBool32 integerDotProduct8BitMixedSignednessAccelerated",
3301
+ "VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated",
3302
+ "VkBool32 integerDotProduct4x8BitPackedSignedAccelerated",
3303
+ "VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated",
3304
+ "VkBool32 integerDotProduct16BitUnsignedAccelerated",
3305
+ "VkBool32 integerDotProduct16BitSignedAccelerated",
3306
+ "VkBool32 integerDotProduct16BitMixedSignednessAccelerated",
3307
+ "VkBool32 integerDotProduct32BitUnsignedAccelerated",
3308
+ "VkBool32 integerDotProduct32BitSignedAccelerated",
3309
+ "VkBool32 integerDotProduct32BitMixedSignednessAccelerated",
3310
+ "VkBool32 integerDotProduct64BitUnsignedAccelerated",
3311
+ "VkBool32 integerDotProduct64BitSignedAccelerated",
3312
+ "VkBool32 integerDotProduct64BitMixedSignednessAccelerated",
3313
+ "VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated",
3314
+ "VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated",
3315
+ "VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated",
3316
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated",
3317
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated",
3318
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated",
3319
+ "VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated",
3320
+ "VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated",
3321
+ "VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated",
3322
+ "VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated",
3323
+ "VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated",
3324
+ "VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated",
3325
+ "VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated",
3326
+ "VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated",
3327
+ "VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated"]
3328
+
3329
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR = VkPhysicalDeviceShaderIntegerDotProductProperties
3330
+
3331
+ VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = struct ["VkStructureType sType",
3332
+ "void * pNext",
3333
+ "VkBool32 shaderIntegerFunctions2"]
3334
+
3335
+ VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = struct ["VkStructureType sType",
3336
+ "void * pNext",
3337
+ "VkBool32 shaderSMBuiltins"]
3338
+
3339
+ VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = struct ["VkStructureType sType",
3340
+ "void * pNext",
3341
+ "uint32_t shaderSMCount",
3342
+ "uint32_t shaderWarpsPerSM"]
3343
+
3344
+ VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = struct ["VkStructureType sType",
3345
+ "void * pNext",
3346
+ "VkBool32 shaderSubgroupExtendedTypes"]
3347
+
3348
+ VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures
3349
+
3350
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = struct ["VkStructureType sType",
3351
+ "void * pNext",
3352
+ "VkBool32 shaderSubgroupUniformControlFlow"]
3353
+
3354
+ VkPhysicalDeviceShaderTerminateInvocationFeatures = struct ["VkStructureType sType",
3355
+ "void * pNext",
3356
+ "VkBool32 shaderTerminateInvocation"]
3357
+
3358
+ VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR = VkPhysicalDeviceShaderTerminateInvocationFeatures
3359
+
1968
3360
  VkPhysicalDeviceShadingRateImageFeaturesNV = struct ["VkStructureType sType",
1969
3361
  "void * pNext",
1970
3362
  "VkBool32 shadingRateImage",
@@ -1993,10 +3385,81 @@ module Vulkan
1993
3385
  "VkSubgroupFeatureFlags supportedOperations",
1994
3386
  "VkBool32 quadOperationsInAllStages"]
1995
3387
 
3388
+ VkPhysicalDeviceSubgroupSizeControlFeatures = struct ["VkStructureType sType",
3389
+ "void * pNext",
3390
+ "VkBool32 subgroupSizeControl",
3391
+ "VkBool32 computeFullSubgroups"]
3392
+
3393
+ VkPhysicalDeviceSubgroupSizeControlFeaturesEXT = VkPhysicalDeviceSubgroupSizeControlFeatures
3394
+
3395
+ VkPhysicalDeviceSubgroupSizeControlProperties = struct ["VkStructureType sType",
3396
+ "void * pNext",
3397
+ "uint32_t minSubgroupSize",
3398
+ "uint32_t maxSubgroupSize",
3399
+ "uint32_t maxComputeWorkgroupSubgroups",
3400
+ "VkShaderStageFlags requiredSubgroupSizeStages"]
3401
+
3402
+ VkPhysicalDeviceSubgroupSizeControlPropertiesEXT = VkPhysicalDeviceSubgroupSizeControlProperties
3403
+
3404
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = struct ["VkStructureType sType",
3405
+ "void * pNext",
3406
+ "VkBool32 subpassShading"]
3407
+
3408
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = struct ["VkStructureType sType",
3409
+ "void * pNext",
3410
+ "uint32_t maxSubpassShadingWorkgroupSizeAspectRatio"]
3411
+
1996
3412
  VkPhysicalDeviceSurfaceInfo2KHR = struct ["VkStructureType sType",
1997
3413
  "void * pNext",
1998
3414
  "VkSurfaceKHR surface"]
1999
3415
 
3416
+ VkPhysicalDeviceSynchronization2Features = struct ["VkStructureType sType",
3417
+ "void * pNext",
3418
+ "VkBool32 synchronization2"]
3419
+
3420
+ VkPhysicalDeviceSynchronization2FeaturesKHR = VkPhysicalDeviceSynchronization2Features
3421
+
3422
+ VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = struct ["VkStructureType sType",
3423
+ "void * pNext",
3424
+ "VkBool32 texelBufferAlignment"]
3425
+
3426
+ VkPhysicalDeviceTexelBufferAlignmentProperties = struct ["VkStructureType sType",
3427
+ "void * pNext",
3428
+ "VkDeviceSize storageTexelBufferOffsetAlignmentBytes",
3429
+ "VkBool32 storageTexelBufferOffsetSingleTexelAlignment",
3430
+ "VkDeviceSize uniformTexelBufferOffsetAlignmentBytes",
3431
+ "VkBool32 uniformTexelBufferOffsetSingleTexelAlignment"]
3432
+
3433
+ VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT = VkPhysicalDeviceTexelBufferAlignmentProperties
3434
+
3435
+ VkPhysicalDeviceTextureCompressionASTCHDRFeatures = struct ["VkStructureType sType",
3436
+ "void * pNext",
3437
+ "VkBool32 textureCompressionASTC_HDR"]
3438
+
3439
+ VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = VkPhysicalDeviceTextureCompressionASTCHDRFeatures
3440
+
3441
+ VkPhysicalDeviceTimelineSemaphoreFeatures = struct ["VkStructureType sType",
3442
+ "void * pNext",
3443
+ "VkBool32 timelineSemaphore"]
3444
+
3445
+ VkPhysicalDeviceTimelineSemaphoreFeaturesKHR = VkPhysicalDeviceTimelineSemaphoreFeatures
3446
+
3447
+ VkPhysicalDeviceTimelineSemaphoreProperties = struct ["VkStructureType sType",
3448
+ "void * pNext",
3449
+ "uint64_t maxTimelineSemaphoreValueDifference"]
3450
+
3451
+ VkPhysicalDeviceTimelineSemaphorePropertiesKHR = VkPhysicalDeviceTimelineSemaphoreProperties
3452
+
3453
+ VkPhysicalDeviceToolProperties = struct ["VkStructureType sType",
3454
+ "void * pNext",
3455
+ "char name[#{VK_MAX_EXTENSION_NAME_SIZE}]",
3456
+ "char version[#{VK_MAX_EXTENSION_NAME_SIZE}]",
3457
+ "VkToolPurposeFlags purposes",
3458
+ "char description[#{VK_MAX_DESCRIPTION_SIZE}]",
3459
+ "char layer[#{VK_MAX_EXTENSION_NAME_SIZE}]"]
3460
+
3461
+ VkPhysicalDeviceToolPropertiesEXT = VkPhysicalDeviceToolProperties
3462
+
2000
3463
  VkPhysicalDeviceTransformFeedbackFeaturesEXT = struct ["VkStructureType sType",
2001
3464
  "void * pNext",
2002
3465
  "VkBool32 transformFeedback",
@@ -2015,12 +3478,21 @@ module Vulkan
2015
3478
  "VkBool32 transformFeedbackRasterizationStreamSelect",
2016
3479
  "VkBool32 transformFeedbackDraw"]
2017
3480
 
2018
- VkPhysicalDeviceVariablePointerFeatures = struct ["VkStructureType sType",
2019
- "void * pNext",
2020
- "VkBool32 variablePointersStorageBuffer",
2021
- "VkBool32 variablePointers"]
3481
+ VkPhysicalDeviceUniformBufferStandardLayoutFeatures = struct ["VkStructureType sType",
3482
+ "void * pNext",
3483
+ "VkBool32 uniformBufferStandardLayout"]
3484
+
3485
+ VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = VkPhysicalDeviceUniformBufferStandardLayoutFeatures
3486
+
3487
+ VkPhysicalDeviceVariablePointersFeatures = struct ["VkStructureType sType",
3488
+ "void * pNext",
3489
+ "VkBool32 variablePointersStorageBuffer",
3490
+ "VkBool32 variablePointers"]
3491
+ VkPhysicalDeviceVariablePointerFeatures = VkPhysicalDeviceVariablePointersFeatures
2022
3492
 
2023
- VkPhysicalDeviceVariablePointerFeaturesKHR = VkPhysicalDeviceVariablePointerFeatures
3493
+ VkPhysicalDeviceVariablePointerFeaturesKHR = VkPhysicalDeviceVariablePointersFeatures
3494
+
3495
+ VkPhysicalDeviceVariablePointersFeaturesKHR = VkPhysicalDeviceVariablePointersFeatures
2024
3496
 
2025
3497
  VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT = struct ["VkStructureType sType",
2026
3498
  "void * pNext",
@@ -2031,10 +3503,257 @@ module Vulkan
2031
3503
  "void * pNext",
2032
3504
  "uint32_t maxVertexAttribDivisor"]
2033
3505
 
2034
- VkPhysicalDeviceVulkanMemoryModelFeaturesKHR = struct ["VkStructureType sType",
2035
- "void * pNext",
2036
- "VkBool32 vulkanMemoryModel",
2037
- "VkBool32 vulkanMemoryModelDeviceScope"]
3506
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = struct ["VkStructureType sType",
3507
+ "void * pNext",
3508
+ "VkBool32 vertexInputDynamicState"]
3509
+
3510
+ VkVideoProfileKHR = struct ["VkStructureType sType",
3511
+ "void * pNext",
3512
+ "VkVideoCodecOperationFlagBitsKHR videoCodecOperation",
3513
+ "VkVideoChromaSubsamplingFlagsKHR chromaSubsampling",
3514
+ "VkVideoComponentBitDepthFlagsKHR lumaBitDepth",
3515
+ "VkVideoComponentBitDepthFlagsKHR chromaBitDepth"]
3516
+ VkVideoProfilesKHR = struct ["VkStructureType sType",
3517
+ "void * pNext",
3518
+ "uint32_t profileCount",
3519
+ "VkVideoProfileKHR * pProfiles"]
3520
+ VkPhysicalDeviceVideoFormatInfoKHR = struct ["VkStructureType sType",
3521
+ "void * pNext",
3522
+ "VkImageUsageFlags imageUsage",
3523
+ "VkVideoProfilesKHR * pVideoProfiles"]
3524
+
3525
+ VkPhysicalDeviceVulkan11Features = struct ["VkStructureType sType",
3526
+ "void * pNext",
3527
+ "VkBool32 storageBuffer16BitAccess",
3528
+ "VkBool32 uniformAndStorageBuffer16BitAccess",
3529
+ "VkBool32 storagePushConstant16",
3530
+ "VkBool32 storageInputOutput16",
3531
+ "VkBool32 multiview",
3532
+ "VkBool32 multiviewGeometryShader",
3533
+ "VkBool32 multiviewTessellationShader",
3534
+ "VkBool32 variablePointersStorageBuffer",
3535
+ "VkBool32 variablePointers",
3536
+ "VkBool32 protectedMemory",
3537
+ "VkBool32 samplerYcbcrConversion",
3538
+ "VkBool32 shaderDrawParameters"]
3539
+
3540
+ VkPhysicalDeviceVulkan11Properties = struct ["VkStructureType sType",
3541
+ "void * pNext",
3542
+ "uint8_t deviceUUID[#{VK_UUID_SIZE}]",
3543
+ "uint8_t driverUUID[#{VK_UUID_SIZE}]",
3544
+ "uint8_t deviceLUID[#{VK_LUID_SIZE}]",
3545
+ "uint32_t deviceNodeMask",
3546
+ "VkBool32 deviceLUIDValid",
3547
+ "uint32_t subgroupSize",
3548
+ "VkShaderStageFlags subgroupSupportedStages",
3549
+ "VkSubgroupFeatureFlags subgroupSupportedOperations",
3550
+ "VkBool32 subgroupQuadOperationsInAllStages",
3551
+ "VkPointClippingBehavior pointClippingBehavior",
3552
+ "uint32_t maxMultiviewViewCount",
3553
+ "uint32_t maxMultiviewInstanceIndex",
3554
+ "VkBool32 protectedNoFault",
3555
+ "uint32_t maxPerSetDescriptors",
3556
+ "VkDeviceSize maxMemoryAllocationSize"]
3557
+
3558
+ VkPhysicalDeviceVulkan12Features = struct ["VkStructureType sType",
3559
+ "void * pNext",
3560
+ "VkBool32 samplerMirrorClampToEdge",
3561
+ "VkBool32 drawIndirectCount",
3562
+ "VkBool32 storageBuffer8BitAccess",
3563
+ "VkBool32 uniformAndStorageBuffer8BitAccess",
3564
+ "VkBool32 storagePushConstant8",
3565
+ "VkBool32 shaderBufferInt64Atomics",
3566
+ "VkBool32 shaderSharedInt64Atomics",
3567
+ "VkBool32 shaderFloat16",
3568
+ "VkBool32 shaderInt8",
3569
+ "VkBool32 descriptorIndexing",
3570
+ "VkBool32 shaderInputAttachmentArrayDynamicIndexing",
3571
+ "VkBool32 shaderUniformTexelBufferArrayDynamicIndexing",
3572
+ "VkBool32 shaderStorageTexelBufferArrayDynamicIndexing",
3573
+ "VkBool32 shaderUniformBufferArrayNonUniformIndexing",
3574
+ "VkBool32 shaderSampledImageArrayNonUniformIndexing",
3575
+ "VkBool32 shaderStorageBufferArrayNonUniformIndexing",
3576
+ "VkBool32 shaderStorageImageArrayNonUniformIndexing",
3577
+ "VkBool32 shaderInputAttachmentArrayNonUniformIndexing",
3578
+ "VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing",
3579
+ "VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing",
3580
+ "VkBool32 descriptorBindingUniformBufferUpdateAfterBind",
3581
+ "VkBool32 descriptorBindingSampledImageUpdateAfterBind",
3582
+ "VkBool32 descriptorBindingStorageImageUpdateAfterBind",
3583
+ "VkBool32 descriptorBindingStorageBufferUpdateAfterBind",
3584
+ "VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind",
3585
+ "VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind",
3586
+ "VkBool32 descriptorBindingUpdateUnusedWhilePending",
3587
+ "VkBool32 descriptorBindingPartiallyBound",
3588
+ "VkBool32 descriptorBindingVariableDescriptorCount",
3589
+ "VkBool32 runtimeDescriptorArray",
3590
+ "VkBool32 samplerFilterMinmax",
3591
+ "VkBool32 scalarBlockLayout",
3592
+ "VkBool32 imagelessFramebuffer",
3593
+ "VkBool32 uniformBufferStandardLayout",
3594
+ "VkBool32 shaderSubgroupExtendedTypes",
3595
+ "VkBool32 separateDepthStencilLayouts",
3596
+ "VkBool32 hostQueryReset",
3597
+ "VkBool32 timelineSemaphore",
3598
+ "VkBool32 bufferDeviceAddress",
3599
+ "VkBool32 bufferDeviceAddressCaptureReplay",
3600
+ "VkBool32 bufferDeviceAddressMultiDevice",
3601
+ "VkBool32 vulkanMemoryModel",
3602
+ "VkBool32 vulkanMemoryModelDeviceScope",
3603
+ "VkBool32 vulkanMemoryModelAvailabilityVisibilityChains",
3604
+ "VkBool32 shaderOutputViewportIndex",
3605
+ "VkBool32 shaderOutputLayer",
3606
+ "VkBool32 subgroupBroadcastDynamicId"]
3607
+
3608
+ VkPhysicalDeviceVulkan12Properties = struct ["VkStructureType sType",
3609
+ "void * pNext",
3610
+ "VkDriverId driverID",
3611
+ "char driverName[#{VK_MAX_DRIVER_NAME_SIZE}]",
3612
+ "char driverInfo[#{VK_MAX_DRIVER_INFO_SIZE}]",
3613
+ { "conformanceVersion" => VkConformanceVersion },
3614
+ "VkShaderFloatControlsIndependence denormBehaviorIndependence",
3615
+ "VkShaderFloatControlsIndependence roundingModeIndependence",
3616
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat16",
3617
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat32",
3618
+ "VkBool32 shaderSignedZeroInfNanPreserveFloat64",
3619
+ "VkBool32 shaderDenormPreserveFloat16",
3620
+ "VkBool32 shaderDenormPreserveFloat32",
3621
+ "VkBool32 shaderDenormPreserveFloat64",
3622
+ "VkBool32 shaderDenormFlushToZeroFloat16",
3623
+ "VkBool32 shaderDenormFlushToZeroFloat32",
3624
+ "VkBool32 shaderDenormFlushToZeroFloat64",
3625
+ "VkBool32 shaderRoundingModeRTEFloat16",
3626
+ "VkBool32 shaderRoundingModeRTEFloat32",
3627
+ "VkBool32 shaderRoundingModeRTEFloat64",
3628
+ "VkBool32 shaderRoundingModeRTZFloat16",
3629
+ "VkBool32 shaderRoundingModeRTZFloat32",
3630
+ "VkBool32 shaderRoundingModeRTZFloat64",
3631
+ "uint32_t maxUpdateAfterBindDescriptorsInAllPools",
3632
+ "VkBool32 shaderUniformBufferArrayNonUniformIndexingNative",
3633
+ "VkBool32 shaderSampledImageArrayNonUniformIndexingNative",
3634
+ "VkBool32 shaderStorageBufferArrayNonUniformIndexingNative",
3635
+ "VkBool32 shaderStorageImageArrayNonUniformIndexingNative",
3636
+ "VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative",
3637
+ "VkBool32 robustBufferAccessUpdateAfterBind",
3638
+ "VkBool32 quadDivergentImplicitLod",
3639
+ "uint32_t maxPerStageDescriptorUpdateAfterBindSamplers",
3640
+ "uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers",
3641
+ "uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers",
3642
+ "uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages",
3643
+ "uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages",
3644
+ "uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments",
3645
+ "uint32_t maxPerStageUpdateAfterBindResources",
3646
+ "uint32_t maxDescriptorSetUpdateAfterBindSamplers",
3647
+ "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers",
3648
+ "uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic",
3649
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers",
3650
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic",
3651
+ "uint32_t maxDescriptorSetUpdateAfterBindSampledImages",
3652
+ "uint32_t maxDescriptorSetUpdateAfterBindStorageImages",
3653
+ "uint32_t maxDescriptorSetUpdateAfterBindInputAttachments",
3654
+ "VkResolveModeFlags supportedDepthResolveModes",
3655
+ "VkResolveModeFlags supportedStencilResolveModes",
3656
+ "VkBool32 independentResolveNone",
3657
+ "VkBool32 independentResolve",
3658
+ "VkBool32 filterMinmaxSingleComponentFormats",
3659
+ "VkBool32 filterMinmaxImageComponentMapping",
3660
+ "uint64_t maxTimelineSemaphoreValueDifference",
3661
+ "VkSampleCountFlags framebufferIntegerColorSampleCounts"]
3662
+
3663
+ VkPhysicalDeviceVulkan13Features = struct ["VkStructureType sType",
3664
+ "void * pNext",
3665
+ "VkBool32 robustImageAccess",
3666
+ "VkBool32 inlineUniformBlock",
3667
+ "VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind",
3668
+ "VkBool32 pipelineCreationCacheControl",
3669
+ "VkBool32 privateData",
3670
+ "VkBool32 shaderDemoteToHelperInvocation",
3671
+ "VkBool32 shaderTerminateInvocation",
3672
+ "VkBool32 subgroupSizeControl",
3673
+ "VkBool32 computeFullSubgroups",
3674
+ "VkBool32 synchronization2",
3675
+ "VkBool32 textureCompressionASTC_HDR",
3676
+ "VkBool32 shaderZeroInitializeWorkgroupMemory",
3677
+ "VkBool32 dynamicRendering",
3678
+ "VkBool32 shaderIntegerDotProduct",
3679
+ "VkBool32 maintenance4"]
3680
+
3681
+ VkPhysicalDeviceVulkan13Properties = struct ["VkStructureType sType",
3682
+ "void * pNext",
3683
+ "uint32_t minSubgroupSize",
3684
+ "uint32_t maxSubgroupSize",
3685
+ "uint32_t maxComputeWorkgroupSubgroups",
3686
+ "VkShaderStageFlags requiredSubgroupSizeStages",
3687
+ "uint32_t maxInlineUniformBlockSize",
3688
+ "uint32_t maxPerStageDescriptorInlineUniformBlocks",
3689
+ "uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks",
3690
+ "uint32_t maxDescriptorSetInlineUniformBlocks",
3691
+ "uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks",
3692
+ "uint32_t maxInlineUniformTotalSize",
3693
+ "VkBool32 integerDotProduct8BitUnsignedAccelerated",
3694
+ "VkBool32 integerDotProduct8BitSignedAccelerated",
3695
+ "VkBool32 integerDotProduct8BitMixedSignednessAccelerated",
3696
+ "VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated",
3697
+ "VkBool32 integerDotProduct4x8BitPackedSignedAccelerated",
3698
+ "VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated",
3699
+ "VkBool32 integerDotProduct16BitUnsignedAccelerated",
3700
+ "VkBool32 integerDotProduct16BitSignedAccelerated",
3701
+ "VkBool32 integerDotProduct16BitMixedSignednessAccelerated",
3702
+ "VkBool32 integerDotProduct32BitUnsignedAccelerated",
3703
+ "VkBool32 integerDotProduct32BitSignedAccelerated",
3704
+ "VkBool32 integerDotProduct32BitMixedSignednessAccelerated",
3705
+ "VkBool32 integerDotProduct64BitUnsignedAccelerated",
3706
+ "VkBool32 integerDotProduct64BitSignedAccelerated",
3707
+ "VkBool32 integerDotProduct64BitMixedSignednessAccelerated",
3708
+ "VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated",
3709
+ "VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated",
3710
+ "VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated",
3711
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated",
3712
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated",
3713
+ "VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated",
3714
+ "VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated",
3715
+ "VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated",
3716
+ "VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated",
3717
+ "VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated",
3718
+ "VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated",
3719
+ "VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated",
3720
+ "VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated",
3721
+ "VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated",
3722
+ "VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated",
3723
+ "VkDeviceSize storageTexelBufferOffsetAlignmentBytes",
3724
+ "VkBool32 storageTexelBufferOffsetSingleTexelAlignment",
3725
+ "VkDeviceSize uniformTexelBufferOffsetAlignmentBytes",
3726
+ "VkBool32 uniformTexelBufferOffsetSingleTexelAlignment",
3727
+ "VkDeviceSize maxBufferSize"]
3728
+
3729
+ VkPhysicalDeviceVulkanMemoryModelFeatures = struct ["VkStructureType sType",
3730
+ "void * pNext",
3731
+ "VkBool32 vulkanMemoryModel",
3732
+ "VkBool32 vulkanMemoryModelDeviceScope",
3733
+ "VkBool32 vulkanMemoryModelAvailabilityVisibilityChains"]
3734
+
3735
+ VkPhysicalDeviceVulkanMemoryModelFeaturesKHR = VkPhysicalDeviceVulkanMemoryModelFeatures
3736
+
3737
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = struct ["VkStructureType sType",
3738
+ "void * pNext",
3739
+ "VkBool32 workgroupMemoryExplicitLayout",
3740
+ "VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout",
3741
+ "VkBool32 workgroupMemoryExplicitLayout8BitAccess",
3742
+ "VkBool32 workgroupMemoryExplicitLayout16BitAccess"]
3743
+
3744
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = struct ["VkStructureType sType",
3745
+ "void * pNext",
3746
+ "VkBool32 ycbcr2plane444Formats"]
3747
+
3748
+ VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = struct ["VkStructureType sType",
3749
+ "void * pNext",
3750
+ "VkBool32 ycbcrImageArrays"]
3751
+
3752
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = struct ["VkStructureType sType",
3753
+ "void * pNext",
3754
+ "VkBool32 shaderZeroInitializeWorkgroupMemory"]
3755
+
3756
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures
2038
3757
 
2039
3758
  VkPipelineCacheCreateInfo = struct ["VkStructureType sType",
2040
3759
  "void * pNext",
@@ -2042,12 +3761,27 @@ module Vulkan
2042
3761
  "size_t initialDataSize",
2043
3762
  "void * pInitialData"]
2044
3763
 
3764
+ VkPipelineCacheHeaderVersionOne = struct ["uint32_t headerSize",
3765
+ "VkPipelineCacheHeaderVersion headerVersion",
3766
+ "uint32_t vendorID",
3767
+ "uint32_t deviceID",
3768
+ "uint8_t pipelineCacheUUID[#{VK_UUID_SIZE}]"]
3769
+
2045
3770
  VkPipelineColorBlendAdvancedStateCreateInfoEXT = struct ["VkStructureType sType",
2046
3771
  "void * pNext",
2047
3772
  "VkBool32 srcPremultiplied",
2048
3773
  "VkBool32 dstPremultiplied",
2049
3774
  "VkBlendOverlapEXT blendOverlap"]
2050
3775
 
3776
+ VkPipelineColorWriteCreateInfoEXT = struct ["VkStructureType sType",
3777
+ "void * pNext",
3778
+ "uint32_t attachmentCount",
3779
+ "VkBool32 * pColorWriteEnables"]
3780
+
3781
+ VkPipelineCompilerControlCreateInfoAMD = struct ["VkStructureType sType",
3782
+ "void * pNext",
3783
+ "VkPipelineCompilerControlFlagsAMD compilerControlFlags"]
3784
+
2051
3785
  VkPipelineCoverageModulationStateCreateInfoNV = struct ["VkStructureType sType",
2052
3786
  "void * pNext",
2053
3787
  "VkPipelineCoverageModulationStateCreateFlagsNV flags",
@@ -2056,12 +3790,30 @@ module Vulkan
2056
3790
  "uint32_t coverageModulationTableCount",
2057
3791
  "float * pCoverageModulationTable"]
2058
3792
 
3793
+ VkPipelineCoverageReductionStateCreateInfoNV = struct ["VkStructureType sType",
3794
+ "void * pNext",
3795
+ "VkPipelineCoverageReductionStateCreateFlagsNV flags",
3796
+ "VkCoverageReductionModeNV coverageReductionMode"]
3797
+
2059
3798
  VkPipelineCoverageToColorStateCreateInfoNV = struct ["VkStructureType sType",
2060
3799
  "void * pNext",
2061
3800
  "VkPipelineCoverageToColorStateCreateFlagsNV flags",
2062
3801
  "VkBool32 coverageToColorEnable",
2063
3802
  "uint32_t coverageToColorLocation"]
2064
3803
 
3804
+ VkPipelineCreationFeedback = struct ["VkPipelineCreationFeedbackFlags flags",
3805
+ "uint64_t duration"]
3806
+
3807
+ VkPipelineCreationFeedbackCreateInfo = struct ["VkStructureType sType",
3808
+ "void * pNext",
3809
+ "VkPipelineCreationFeedback * pPipelineCreationFeedback",
3810
+ "uint32_t pipelineStageCreationFeedbackCount",
3811
+ "VkPipelineCreationFeedback * pPipelineStageCreationFeedbacks"]
3812
+
3813
+ VkPipelineCreationFeedbackCreateInfoEXT = VkPipelineCreationFeedbackCreateInfo
3814
+
3815
+ VkPipelineCreationFeedbackEXT = VkPipelineCreationFeedback
3816
+
2065
3817
  VkPipelineDiscardRectangleStateCreateInfoEXT = struct ["VkStructureType sType",
2066
3818
  "void * pNext",
2067
3819
  "VkPipelineDiscardRectangleStateCreateFlagsEXT flags",
@@ -2069,6 +3821,52 @@ module Vulkan
2069
3821
  "uint32_t discardRectangleCount",
2070
3822
  "VkRect2D * pDiscardRectangles"]
2071
3823
 
3824
+ VkPipelineExecutableInfoKHR = struct ["VkStructureType sType",
3825
+ "void * pNext",
3826
+ "VkPipeline pipeline",
3827
+ "uint32_t executableIndex"]
3828
+
3829
+ VkPipelineExecutableInternalRepresentationKHR = struct ["VkStructureType sType",
3830
+ "void * pNext",
3831
+ "char name[#{VK_MAX_DESCRIPTION_SIZE}]",
3832
+ "char description[#{VK_MAX_DESCRIPTION_SIZE}]",
3833
+ "VkBool32 isText",
3834
+ "size_t dataSize",
3835
+ "void * pData"]
3836
+
3837
+ VkPipelineExecutablePropertiesKHR = struct ["VkStructureType sType",
3838
+ "void * pNext",
3839
+ "VkShaderStageFlags stages",
3840
+ "char name[#{VK_MAX_DESCRIPTION_SIZE}]",
3841
+ "char description[#{VK_MAX_DESCRIPTION_SIZE}]",
3842
+ "uint32_t subgroupSize"]
3843
+
3844
+ VkPipelineExecutableStatisticValueKHR = union ["VkBool32 b32",
3845
+ "int64_t i64",
3846
+ "uint64_t u64",
3847
+ "double f64"]
3848
+ VkPipelineExecutableStatisticKHR = struct ["VkStructureType sType",
3849
+ "void * pNext",
3850
+ "char name[#{VK_MAX_DESCRIPTION_SIZE}]",
3851
+ "char description[#{VK_MAX_DESCRIPTION_SIZE}]",
3852
+ "VkPipelineExecutableStatisticFormatKHR format",
3853
+ { "value" => VkPipelineExecutableStatisticValueKHR }]
3854
+
3855
+ VkPipelineFragmentShadingRateEnumStateCreateInfoNV = struct ["VkStructureType sType",
3856
+ "void * pNext",
3857
+ "VkFragmentShadingRateTypeNV shadingRateType",
3858
+ "VkFragmentShadingRateNV shadingRate",
3859
+ "VkFragmentShadingRateCombinerOpKHR combinerOps [2]"]
3860
+
3861
+ VkPipelineFragmentShadingRateStateCreateInfoKHR = struct ["VkStructureType sType",
3862
+ "void * pNext",
3863
+ { "fragmentSize" => VkExtent2D },
3864
+ "VkFragmentShadingRateCombinerOpKHR combinerOps [2]"]
3865
+
3866
+ VkPipelineInfoKHR = struct ["VkStructureType sType",
3867
+ "void * pNext",
3868
+ "VkPipeline pipeline"]
3869
+
2072
3870
  VkPushConstantRange = struct ["VkShaderStageFlags stageFlags",
2073
3871
  "uint32_t offset",
2074
3872
  "uint32_t size"]
@@ -2080,12 +3878,33 @@ module Vulkan
2080
3878
  "uint32_t pushConstantRangeCount",
2081
3879
  "VkPushConstantRange * pPushConstantRanges"]
2082
3880
 
3881
+ VkPipelineLibraryCreateInfoKHR = struct ["VkStructureType sType",
3882
+ "void * pNext",
3883
+ "uint32_t libraryCount",
3884
+ "VkPipeline * pLibraries"]
3885
+
2083
3886
  VkPipelineRasterizationConservativeStateCreateInfoEXT = struct ["VkStructureType sType",
2084
3887
  "void * pNext",
2085
3888
  "VkPipelineRasterizationConservativeStateCreateFlagsEXT flags",
2086
3889
  "VkConservativeRasterizationModeEXT conservativeRasterizationMode",
2087
3890
  "float extraPrimitiveOverestimationSize"]
2088
3891
 
3892
+ VkPipelineRasterizationDepthClipStateCreateInfoEXT = struct ["VkStructureType sType",
3893
+ "void * pNext",
3894
+ "VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags",
3895
+ "VkBool32 depthClipEnable"]
3896
+
3897
+ VkPipelineRasterizationLineStateCreateInfoEXT = struct ["VkStructureType sType",
3898
+ "void * pNext",
3899
+ "VkLineRasterizationModeEXT lineRasterizationMode",
3900
+ "VkBool32 stippledLineEnable",
3901
+ "uint32_t lineStippleFactor",
3902
+ "uint16_t lineStipplePattern"]
3903
+
3904
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = struct ["VkStructureType sType",
3905
+ "void * pNext",
3906
+ "VkProvokingVertexModeEXT provokingVertexMode"]
3907
+
2089
3908
  VkPipelineRasterizationStateRasterizationOrderAMD = struct ["VkStructureType sType",
2090
3909
  "void * pNext",
2091
3910
  "VkRasterizationOrderAMD rasterizationOrder"]
@@ -2095,6 +3914,16 @@ module Vulkan
2095
3914
  "VkPipelineRasterizationStateStreamCreateFlagsEXT flags",
2096
3915
  "uint32_t rasterizationStream"]
2097
3916
 
3917
+ VkPipelineRenderingCreateInfo = struct ["VkStructureType sType",
3918
+ "void * pNext",
3919
+ "uint32_t viewMask",
3920
+ "uint32_t colorAttachmentCount",
3921
+ "VkFormat * pColorAttachmentFormats",
3922
+ "VkFormat depthAttachmentFormat",
3923
+ "VkFormat stencilAttachmentFormat"]
3924
+
3925
+ VkPipelineRenderingCreateInfoKHR = VkPipelineRenderingCreateInfo
3926
+
2098
3927
  VkPipelineRepresentativeFragmentTestStateCreateInfoNV = struct ["VkStructureType sType",
2099
3928
  "void * pNext",
2100
3929
  "VkBool32 representativeFragmentTestEnable"]
@@ -2104,6 +3933,12 @@ module Vulkan
2104
3933
  "VkBool32 sampleLocationsEnable",
2105
3934
  { "sampleLocationsInfo" => VkSampleLocationsInfoEXT }]
2106
3935
 
3936
+ VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = struct ["VkStructureType sType",
3937
+ "void * pNext",
3938
+ "uint32_t requiredSubgroupSize"]
3939
+
3940
+ VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo
3941
+
2107
3942
  VkPipelineTessellationDomainOriginStateCreateInfo = struct ["VkStructureType sType",
2108
3943
  "void * pNext",
2109
3944
  "VkTessellationDomainOrigin domainOrigin"]
@@ -2123,6 +3958,10 @@ module Vulkan
2123
3958
  "uint32_t customSampleOrderCount",
2124
3959
  "VkCoarseSampleOrderCustomNV * pCustomSampleOrders"]
2125
3960
 
3961
+ VkPipelineViewportDepthClipControlCreateInfoEXT = struct ["VkStructureType sType",
3962
+ "void * pNext",
3963
+ "VkBool32 negativeOneToOne"]
3964
+
2126
3965
  VkPipelineViewportExclusiveScissorStateCreateInfoNV = struct ["VkStructureType sType",
2127
3966
  "void * pNext",
2128
3967
  "uint32_t exclusiveScissorCount",
@@ -2154,6 +3993,15 @@ module Vulkan
2154
3993
  "uint32_t viewportCount",
2155
3994
  "VkViewportWScalingNV * pViewportWScalings"]
2156
3995
 
3996
+ VkPresentFrameTokenGGP = struct ["VkStructureType sType",
3997
+ "void * pNext",
3998
+ "GgpFrameToken frameToken"]
3999
+
4000
+ VkPresentIdKHR = struct ["VkStructureType sType",
4001
+ "void * pNext",
4002
+ "uint32_t swapchainCount",
4003
+ "uint64_t * pPresentIds"]
4004
+
2157
4005
  VkPresentInfoKHR = struct ["VkStructureType sType",
2158
4006
  "void * pNext",
2159
4007
  "uint32_t waitSemaphoreCount",
@@ -2182,6 +4030,12 @@ module Vulkan
2182
4030
  "uint32_t swapchainCount",
2183
4031
  "VkPresentTimeGOOGLE * pTimes"]
2184
4032
 
4033
+ VkPrivateDataSlotCreateInfo = struct ["VkStructureType sType",
4034
+ "void * pNext",
4035
+ "VkPrivateDataSlotCreateFlags flags"]
4036
+
4037
+ VkPrivateDataSlotCreateInfoEXT = VkPrivateDataSlotCreateInfo
4038
+
2185
4039
  VkProtectedSubmitInfo = struct ["VkStructureType sType",
2186
4040
  "void * pNext",
2187
4041
  "VkBool32 protectedSubmit"]
@@ -2193,10 +4047,31 @@ module Vulkan
2193
4047
  "uint32_t queryCount",
2194
4048
  "VkQueryPipelineStatisticFlags pipelineStatistics"]
2195
4049
 
4050
+ VkQueryPoolPerformanceQueryCreateInfoINTEL = struct ["VkStructureType sType",
4051
+ "void * pNext",
4052
+ "VkQueryPoolSamplingModeINTEL performanceCountersSampling"]
4053
+ VkQueryPoolCreateInfoINTEL = VkQueryPoolPerformanceQueryCreateInfoINTEL
4054
+
4055
+ VkQueryPoolPerformanceCreateInfoKHR = struct ["VkStructureType sType",
4056
+ "void * pNext",
4057
+ "uint32_t queueFamilyIndex",
4058
+ "uint32_t counterIndexCount",
4059
+ "uint32_t * pCounterIndices"]
4060
+
4061
+ VkQueueFamilyCheckpointProperties2NV = struct ["VkStructureType sType",
4062
+ "void * pNext",
4063
+ "VkPipelineStageFlags2 checkpointExecutionStageMask"]
4064
+
2196
4065
  VkQueueFamilyCheckpointPropertiesNV = struct ["VkStructureType sType",
2197
4066
  "void * pNext",
2198
4067
  "VkPipelineStageFlags checkpointExecutionStageMask"]
2199
4068
 
4069
+ VkQueueFamilyGlobalPriorityPropertiesKHR = struct ["VkStructureType sType",
4070
+ "void * pNext",
4071
+ "uint32_t priorityCount",
4072
+ "VkQueueGlobalPriorityKHR priorities[#{VK_MAX_GLOBAL_PRIORITY_SIZE_KHR}]"]
4073
+ VkQueueFamilyGlobalPriorityPropertiesEXT = VkQueueFamilyGlobalPriorityPropertiesKHR
4074
+
2200
4075
  VkQueueFamilyProperties = struct ["VkQueueFlags queueFlags",
2201
4076
  "uint32_t queueCount",
2202
4077
  "uint32_t timestampValidBits",
@@ -2208,9 +4083,40 @@ module Vulkan
2208
4083
 
2209
4084
  VkQueueFamilyProperties2KHR = VkQueueFamilyProperties2
2210
4085
 
4086
+ VkQueueFamilyQueryResultStatusProperties2KHR = struct ["VkStructureType sType",
4087
+ "void * pNext",
4088
+ "VkBool32 supported"]
4089
+
4090
+ VkRayTracingShaderGroupCreateInfoKHR = struct ["VkStructureType sType",
4091
+ "void * pNext",
4092
+ "VkRayTracingShaderGroupTypeKHR type",
4093
+ "uint32_t generalShader",
4094
+ "uint32_t closestHitShader",
4095
+ "uint32_t anyHitShader",
4096
+ "uint32_t intersectionShader",
4097
+ "void * pShaderGroupCaptureReplayHandle"]
4098
+ VkRayTracingPipelineInterfaceCreateInfoKHR = struct ["VkStructureType sType",
4099
+ "void * pNext",
4100
+ "uint32_t maxPipelineRayPayloadSize",
4101
+ "uint32_t maxPipelineRayHitAttributeSize"]
4102
+ VkRayTracingPipelineCreateInfoKHR = struct ["VkStructureType sType",
4103
+ "void * pNext",
4104
+ "VkPipelineCreateFlags flags",
4105
+ "uint32_t stageCount",
4106
+ "VkPipelineShaderStageCreateInfo * pStages",
4107
+ "uint32_t groupCount",
4108
+ "VkRayTracingShaderGroupCreateInfoKHR * pGroups",
4109
+ "uint32_t maxPipelineRayRecursionDepth",
4110
+ "VkPipelineLibraryCreateInfoKHR * pLibraryInfo",
4111
+ "VkRayTracingPipelineInterfaceCreateInfoKHR * pLibraryInterface",
4112
+ "VkPipelineDynamicStateCreateInfo * pDynamicState",
4113
+ "VkPipelineLayout layout",
4114
+ "VkPipeline basePipelineHandle",
4115
+ "int32_t basePipelineIndex"]
4116
+
2211
4117
  VkRayTracingShaderGroupCreateInfoNV = struct ["VkStructureType sType",
2212
4118
  "void * pNext",
2213
- "VkRayTracingShaderGroupTypeNV type",
4119
+ "VkRayTracingShaderGroupTypeKHR type",
2214
4120
  "uint32_t generalShader",
2215
4121
  "uint32_t closestHitShader",
2216
4122
  "uint32_t anyHitShader",
@@ -2229,6 +4135,13 @@ module Vulkan
2229
4135
 
2230
4136
  VkRefreshCycleDurationGOOGLE = struct ["uint64_t refreshDuration"]
2231
4137
 
4138
+ VkRenderPassAttachmentBeginInfo = struct ["VkStructureType sType",
4139
+ "void * pNext",
4140
+ "uint32_t attachmentCount",
4141
+ "VkImageView * pAttachments"]
4142
+
4143
+ VkRenderPassAttachmentBeginInfoKHR = VkRenderPassAttachmentBeginInfo
4144
+
2232
4145
  VkRenderPassBeginInfo = struct ["VkStructureType sType",
2233
4146
  "void * pNext",
2234
4147
  "VkRenderPass renderPass",
@@ -2264,40 +4177,46 @@ module Vulkan
2264
4177
  "uint32_t dependencyCount",
2265
4178
  "VkSubpassDependency * pDependencies"]
2266
4179
 
2267
- VkSubpassDescription2KHR = struct ["VkStructureType sType",
2268
- "void * pNext",
2269
- "VkSubpassDescriptionFlags flags",
2270
- "VkPipelineBindPoint pipelineBindPoint",
2271
- "uint32_t viewMask",
2272
- "uint32_t inputAttachmentCount",
2273
- "VkAttachmentReference2KHR * pInputAttachments",
2274
- "uint32_t colorAttachmentCount",
2275
- "VkAttachmentReference2KHR * pColorAttachments",
2276
- "VkAttachmentReference2KHR * pResolveAttachments",
2277
- "VkAttachmentReference2KHR * pDepthStencilAttachment",
2278
- "uint32_t preserveAttachmentCount",
2279
- "uint32_t * pPreserveAttachments"]
2280
- VkSubpassDependency2KHR = struct ["VkStructureType sType",
4180
+ VkSubpassDescription2 = struct ["VkStructureType sType",
4181
+ "void * pNext",
4182
+ "VkSubpassDescriptionFlags flags",
4183
+ "VkPipelineBindPoint pipelineBindPoint",
4184
+ "uint32_t viewMask",
4185
+ "uint32_t inputAttachmentCount",
4186
+ "VkAttachmentReference2 * pInputAttachments",
4187
+ "uint32_t colorAttachmentCount",
4188
+ "VkAttachmentReference2 * pColorAttachments",
4189
+ "VkAttachmentReference2 * pResolveAttachments",
4190
+ "VkAttachmentReference2 * pDepthStencilAttachment",
4191
+ "uint32_t preserveAttachmentCount",
4192
+ "uint32_t * pPreserveAttachments"]
4193
+ VkSubpassDependency2 = struct ["VkStructureType sType",
4194
+ "void * pNext",
4195
+ "uint32_t srcSubpass",
4196
+ "uint32_t dstSubpass",
4197
+ "VkPipelineStageFlags srcStageMask",
4198
+ "VkPipelineStageFlags dstStageMask",
4199
+ "VkAccessFlags srcAccessMask",
4200
+ "VkAccessFlags dstAccessMask",
4201
+ "VkDependencyFlags dependencyFlags",
4202
+ "int32_t viewOffset"]
4203
+ VkRenderPassCreateInfo2 = struct ["VkStructureType sType",
2281
4204
  "void * pNext",
2282
- "uint32_t srcSubpass",
2283
- "uint32_t dstSubpass",
2284
- "VkPipelineStageFlags srcStageMask",
2285
- "VkPipelineStageFlags dstStageMask",
2286
- "VkAccessFlags srcAccessMask",
2287
- "VkAccessFlags dstAccessMask",
2288
- "VkDependencyFlags dependencyFlags",
2289
- "int32_t viewOffset"]
2290
- VkRenderPassCreateInfo2KHR = struct ["VkStructureType sType",
2291
- "void * pNext",
2292
- "VkRenderPassCreateFlags flags",
2293
- "uint32_t attachmentCount",
2294
- "VkAttachmentDescription2KHR * pAttachments",
2295
- "uint32_t subpassCount",
2296
- "VkSubpassDescription2KHR * pSubpasses",
2297
- "uint32_t dependencyCount",
2298
- "VkSubpassDependency2KHR * pDependencies",
2299
- "uint32_t correlatedViewMaskCount",
2300
- "uint32_t * pCorrelatedViewMasks"]
4205
+ "VkRenderPassCreateFlags flags",
4206
+ "uint32_t attachmentCount",
4207
+ "VkAttachmentDescription2 * pAttachments",
4208
+ "uint32_t subpassCount",
4209
+ "VkSubpassDescription2 * pSubpasses",
4210
+ "uint32_t dependencyCount",
4211
+ "VkSubpassDependency2 * pDependencies",
4212
+ "uint32_t correlatedViewMaskCount",
4213
+ "uint32_t * pCorrelatedViewMasks"]
4214
+
4215
+ VkRenderPassCreateInfo2KHR = VkRenderPassCreateInfo2
4216
+
4217
+ VkRenderPassFragmentDensityMapCreateInfoEXT = struct ["VkStructureType sType",
4218
+ "void * pNext",
4219
+ { "fragmentDensityMapAttachment" => VkAttachmentReference }]
2301
4220
 
2302
4221
  VkRenderPassInputAttachmentAspectCreateInfo = struct ["VkStructureType sType",
2303
4222
  "void * pNext",
@@ -2326,6 +4245,63 @@ module Vulkan
2326
4245
  "uint32_t postSubpassSampleLocationsCount",
2327
4246
  "VkSubpassSampleLocationsEXT * pPostSubpassSampleLocations"]
2328
4247
 
4248
+ VkRenderPassTransformBeginInfoQCOM = struct ["VkStructureType sType",
4249
+ "void * pNext",
4250
+ "VkSurfaceTransformFlagBitsKHR transform"]
4251
+
4252
+ VkRenderingAttachmentInfo = struct ["VkStructureType sType",
4253
+ "void * pNext",
4254
+ "VkImageView imageView",
4255
+ "VkImageLayout imageLayout",
4256
+ "VkResolveModeFlagBits resolveMode",
4257
+ "VkImageView resolveImageView",
4258
+ "VkImageLayout resolveImageLayout",
4259
+ "VkAttachmentLoadOp loadOp",
4260
+ "VkAttachmentStoreOp storeOp",
4261
+ { "clearValue" => VkClearValue }]
4262
+
4263
+ VkRenderingAttachmentInfoKHR = VkRenderingAttachmentInfo
4264
+
4265
+ VkRenderingFragmentDensityMapAttachmentInfoEXT = struct ["VkStructureType sType",
4266
+ "void * pNext",
4267
+ "VkImageView imageView",
4268
+ "VkImageLayout imageLayout"]
4269
+
4270
+ VkRenderingFragmentShadingRateAttachmentInfoKHR = struct ["VkStructureType sType",
4271
+ "void * pNext",
4272
+ "VkImageView imageView",
4273
+ "VkImageLayout imageLayout",
4274
+ { "shadingRateAttachmentTexelSize" => VkExtent2D }]
4275
+
4276
+ VkRenderingInfo = struct ["VkStructureType sType",
4277
+ "void * pNext",
4278
+ "VkRenderingFlags flags",
4279
+ { "renderArea" => VkRect2D },
4280
+ "uint32_t layerCount",
4281
+ "uint32_t viewMask",
4282
+ "uint32_t colorAttachmentCount",
4283
+ "VkRenderingAttachmentInfo * pColorAttachments",
4284
+ "VkRenderingAttachmentInfo * pDepthAttachment",
4285
+ "VkRenderingAttachmentInfo * pStencilAttachment"]
4286
+
4287
+ VkRenderingInfoKHR = VkRenderingInfo
4288
+
4289
+ VkResolveImageInfo2 = struct ["VkStructureType sType",
4290
+ "void * pNext",
4291
+ "VkImage srcImage",
4292
+ "VkImageLayout srcImageLayout",
4293
+ "VkImage dstImage",
4294
+ "VkImageLayout dstImageLayout",
4295
+ "uint32_t regionCount",
4296
+ "VkImageResolve2 * pRegions"]
4297
+
4298
+ VkResolveImageInfo2KHR = VkResolveImageInfo2
4299
+
4300
+ VkSamplerBorderColorComponentMappingCreateInfoEXT = struct ["VkStructureType sType",
4301
+ "void * pNext",
4302
+ { "components" => VkComponentMapping },
4303
+ "VkBool32 srgb"]
4304
+
2329
4305
  VkSamplerCreateInfo = struct ["VkStructureType sType",
2330
4306
  "void * pNext",
2331
4307
  "VkSamplerCreateFlags flags",
@@ -2345,9 +4321,16 @@ module Vulkan
2345
4321
  "VkBorderColor borderColor",
2346
4322
  "VkBool32 unnormalizedCoordinates"]
2347
4323
 
2348
- VkSamplerReductionModeCreateInfoEXT = struct ["VkStructureType sType",
2349
- "void * pNext",
2350
- "VkSamplerReductionModeEXT reductionMode"]
4324
+ VkSamplerCustomBorderColorCreateInfoEXT = struct ["VkStructureType sType",
4325
+ "void * pNext",
4326
+ { "customBorderColor" => VkClearColorValue },
4327
+ "VkFormat format"]
4328
+
4329
+ VkSamplerReductionModeCreateInfo = struct ["VkStructureType sType",
4330
+ "void * pNext",
4331
+ "VkSamplerReductionMode reductionMode"]
4332
+
4333
+ VkSamplerReductionModeCreateInfoEXT = VkSamplerReductionModeCreateInfo
2351
4334
 
2352
4335
  VkSamplerYcbcrConversionCreateInfo = struct ["VkStructureType sType",
2353
4336
  "void * pNext",
@@ -2374,6 +4357,12 @@ module Vulkan
2374
4357
 
2375
4358
  VkSamplerYcbcrConversionInfoKHR = VkSamplerYcbcrConversionInfo
2376
4359
 
4360
+ VkScreenSurfaceCreateInfoQNX = struct ["VkStructureType sType",
4361
+ "void * pNext",
4362
+ "VkScreenSurfaceCreateFlagsQNX flags",
4363
+ "_screen_context * context",
4364
+ "_screen_window * window"]
4365
+
2377
4366
  VkSemaphoreCreateInfo = struct ["VkStructureType sType",
2378
4367
  "void * pNext",
2379
4368
  "VkSemaphoreCreateFlags flags"]
@@ -2388,6 +4377,45 @@ module Vulkan
2388
4377
  "VkSemaphore semaphore",
2389
4378
  "VkExternalSemaphoreHandleTypeFlagBits handleType"]
2390
4379
 
4380
+ VkSemaphoreGetZirconHandleInfoFUCHSIA = struct ["VkStructureType sType",
4381
+ "void * pNext",
4382
+ "VkSemaphore semaphore",
4383
+ "VkExternalSemaphoreHandleTypeFlagBits handleType"]
4384
+
4385
+ VkSemaphoreSignalInfo = struct ["VkStructureType sType",
4386
+ "void * pNext",
4387
+ "VkSemaphore semaphore",
4388
+ "uint64_t value"]
4389
+
4390
+ VkSemaphoreSignalInfoKHR = VkSemaphoreSignalInfo
4391
+
4392
+ VkSemaphoreSubmitInfo = struct ["VkStructureType sType",
4393
+ "void * pNext",
4394
+ "VkSemaphore semaphore",
4395
+ "uint64_t value",
4396
+ "VkPipelineStageFlags2 stageMask",
4397
+ "uint32_t deviceIndex"]
4398
+
4399
+ VkSemaphoreSubmitInfoKHR = VkSemaphoreSubmitInfo
4400
+
4401
+ VkSemaphoreTypeCreateInfo = struct ["VkStructureType sType",
4402
+ "void * pNext",
4403
+ "VkSemaphoreType semaphoreType",
4404
+ "uint64_t initialValue"]
4405
+
4406
+ VkSemaphoreTypeCreateInfoKHR = VkSemaphoreTypeCreateInfo
4407
+
4408
+ VkSemaphoreWaitInfo = struct ["VkStructureType sType",
4409
+ "void * pNext",
4410
+ "VkSemaphoreWaitFlags flags",
4411
+ "uint32_t semaphoreCount",
4412
+ "VkSemaphore * pSemaphores",
4413
+ "uint64_t * pValues"]
4414
+
4415
+ VkSemaphoreWaitInfoKHR = VkSemaphoreWaitInfo
4416
+
4417
+ VkSetStateFlagsIndirectCommandNV = struct ["uint32_t data"]
4418
+
2391
4419
  VkShaderModuleCreateInfo = struct ["VkStructureType sType",
2392
4420
  "void * pNext",
2393
4421
  "VkShaderModuleCreateFlags flags",
@@ -2438,6 +4466,15 @@ module Vulkan
2438
4466
 
2439
4467
  VkSparseImageMemoryRequirements2KHR = VkSparseImageMemoryRequirements2
2440
4468
 
4469
+ VkStreamDescriptorSurfaceCreateInfoGGP = struct ["VkStructureType sType",
4470
+ "void * pNext",
4471
+ "VkStreamDescriptorSurfaceCreateFlagsGGP flags",
4472
+ "GgpStreamDescriptor streamDescriptor"]
4473
+
4474
+ VkStridedDeviceAddressRegionKHR = struct ["VkDeviceAddress deviceAddress",
4475
+ "VkDeviceSize stride",
4476
+ "VkDeviceSize size"]
4477
+
2441
4478
  VkSubmitInfo = struct ["VkStructureType sType",
2442
4479
  "void * pNext",
2443
4480
  "uint32_t waitSemaphoreCount",
@@ -2448,12 +4485,50 @@ module Vulkan
2448
4485
  "uint32_t signalSemaphoreCount",
2449
4486
  "VkSemaphore * pSignalSemaphores"]
2450
4487
 
2451
- VkSubpassBeginInfoKHR = struct ["VkStructureType sType",
2452
- "void * pNext",
2453
- "VkSubpassContents contents"]
4488
+ VkSubmitInfo2 = struct ["VkStructureType sType",
4489
+ "void * pNext",
4490
+ "VkSubmitFlags flags",
4491
+ "uint32_t waitSemaphoreInfoCount",
4492
+ "VkSemaphoreSubmitInfo * pWaitSemaphoreInfos",
4493
+ "uint32_t commandBufferInfoCount",
4494
+ "VkCommandBufferSubmitInfo * pCommandBufferInfos",
4495
+ "uint32_t signalSemaphoreInfoCount",
4496
+ "VkSemaphoreSubmitInfo * pSignalSemaphoreInfos"]
4497
+
4498
+ VkSubmitInfo2KHR = VkSubmitInfo2
4499
+
4500
+ VkSubpassBeginInfo = struct ["VkStructureType sType",
4501
+ "void * pNext",
4502
+ "VkSubpassContents contents"]
4503
+
4504
+ VkSubpassBeginInfoKHR = VkSubpassBeginInfo
4505
+
4506
+ VkSubpassDependency2KHR = VkSubpassDependency2
4507
+
4508
+ VkSubpassDescription2KHR = VkSubpassDescription2
4509
+
4510
+ VkSubpassDescriptionDepthStencilResolve = struct ["VkStructureType sType",
4511
+ "void * pNext",
4512
+ "VkResolveModeFlagBits depthResolveMode",
4513
+ "VkResolveModeFlagBits stencilResolveMode",
4514
+ "VkAttachmentReference2 * pDepthStencilResolveAttachment"]
4515
+
4516
+ VkSubpassDescriptionDepthStencilResolveKHR = VkSubpassDescriptionDepthStencilResolve
4517
+
4518
+ VkSubpassEndInfo = struct ["VkStructureType sType",
4519
+ "void * pNext"]
4520
+
4521
+ VkSubpassEndInfoKHR = VkSubpassEndInfo
4522
+
4523
+ VkSubpassFragmentDensityMapOffsetEndInfoQCOM = struct ["VkStructureType sType",
4524
+ "void * pNext",
4525
+ "uint32_t fragmentDensityOffsetCount",
4526
+ "VkOffset2D * pFragmentDensityOffsets"]
2454
4527
 
2455
- VkSubpassEndInfoKHR = struct ["VkStructureType sType",
2456
- "void * pNext"]
4528
+ VkSubpassShadingPipelineCreateInfoHUAWEI = struct ["VkStructureType sType",
4529
+ "void * pNext",
4530
+ "VkRenderPass renderPass",
4531
+ "uint32_t subpass"]
2457
4532
 
2458
4533
  VkSurfaceCapabilities2EXT = struct ["VkStructureType sType",
2459
4534
  "void * pNext",
@@ -2483,12 +4558,28 @@ module Vulkan
2483
4558
  "void * pNext",
2484
4559
  { "surfaceCapabilities" => VkSurfaceCapabilitiesKHR }]
2485
4560
 
4561
+ VkSurfaceCapabilitiesFullScreenExclusiveEXT = struct ["VkStructureType sType",
4562
+ "void * pNext",
4563
+ "VkBool32 fullScreenExclusiveSupported"]
4564
+
2486
4565
  VkSurfaceFormatKHR = struct ["VkFormat format",
2487
4566
  "VkColorSpaceKHR colorSpace"]
2488
4567
  VkSurfaceFormat2KHR = struct ["VkStructureType sType",
2489
4568
  "void * pNext",
2490
4569
  { "surfaceFormat" => VkSurfaceFormatKHR }]
2491
4570
 
4571
+ VkSurfaceFullScreenExclusiveInfoEXT = struct ["VkStructureType sType",
4572
+ "void * pNext",
4573
+ "VkFullScreenExclusiveEXT fullScreenExclusive"]
4574
+
4575
+ VkSurfaceFullScreenExclusiveWin32InfoEXT = struct ["VkStructureType sType",
4576
+ "void * pNext",
4577
+ "HMONITOR hmonitor"]
4578
+
4579
+ VkSurfaceProtectedCapabilitiesKHR = struct ["VkStructureType sType",
4580
+ "void * pNext",
4581
+ "VkBool32 supportsProtected"]
4582
+
2492
4583
  VkSwapchainCounterCreateInfoEXT = struct ["VkStructureType sType",
2493
4584
  "void * pNext",
2494
4585
  "VkSurfaceCounterFlagsEXT surfaceCounters"]
@@ -2512,26 +4603,491 @@ module Vulkan
2512
4603
  "VkBool32 clipped",
2513
4604
  "VkSwapchainKHR oldSwapchain"]
2514
4605
 
4606
+ VkSwapchainDisplayNativeHdrCreateInfoAMD = struct ["VkStructureType sType",
4607
+ "void * pNext",
4608
+ "VkBool32 localDimmingEnable"]
4609
+
4610
+ VkSwapchainImageCreateInfoANDROID = struct ["VkStructureType sType",
4611
+ "void * pNext",
4612
+ "VkSwapchainImageUsageFlagsANDROID usage"]
4613
+
2515
4614
  VkTextureLODGatherFormatPropertiesAMD = struct ["VkStructureType sType",
2516
4615
  "void * pNext",
2517
4616
  "VkBool32 supportsTextureGatherLODBiasAMD"]
2518
4617
 
4618
+ VkTimelineSemaphoreSubmitInfo = struct ["VkStructureType sType",
4619
+ "void * pNext",
4620
+ "uint32_t waitSemaphoreValueCount",
4621
+ "uint64_t * pWaitSemaphoreValues",
4622
+ "uint32_t signalSemaphoreValueCount",
4623
+ "uint64_t * pSignalSemaphoreValues"]
4624
+
4625
+ VkTimelineSemaphoreSubmitInfoKHR = VkTimelineSemaphoreSubmitInfo
4626
+
4627
+ VkTraceRaysIndirectCommandKHR = struct ["uint32_t width",
4628
+ "uint32_t height",
4629
+ "uint32_t depth"]
4630
+
4631
+ VkTransformMatrixNV = VkTransformMatrixKHR
4632
+
2519
4633
  VkValidationCacheCreateInfoEXT = struct ["VkStructureType sType",
2520
4634
  "void * pNext",
2521
4635
  "VkValidationCacheCreateFlagsEXT flags",
2522
4636
  "size_t initialDataSize",
2523
4637
  "void * pInitialData"]
2524
4638
 
4639
+ VkValidationFeaturesEXT = struct ["VkStructureType sType",
4640
+ "void * pNext",
4641
+ "uint32_t enabledValidationFeatureCount",
4642
+ "VkValidationFeatureEnableEXT * pEnabledValidationFeatures",
4643
+ "uint32_t disabledValidationFeatureCount",
4644
+ "VkValidationFeatureDisableEXT * pDisabledValidationFeatures"]
4645
+
2525
4646
  VkValidationFlagsEXT = struct ["VkStructureType sType",
2526
4647
  "void * pNext",
2527
4648
  "uint32_t disabledValidationCheckCount",
2528
4649
  "VkValidationCheckEXT * pDisabledValidationChecks"]
2529
4650
 
4651
+ VkVertexInputAttributeDescription2EXT = struct ["VkStructureType sType",
4652
+ "void * pNext",
4653
+ "uint32_t location",
4654
+ "uint32_t binding",
4655
+ "VkFormat format",
4656
+ "uint32_t offset"]
4657
+
4658
+ VkVertexInputBindingDescription2EXT = struct ["VkStructureType sType",
4659
+ "void * pNext",
4660
+ "uint32_t binding",
4661
+ "uint32_t stride",
4662
+ "VkVertexInputRate inputRate",
4663
+ "uint32_t divisor"]
4664
+
2530
4665
  VkViSurfaceCreateInfoNN = struct ["VkStructureType sType",
2531
4666
  "void * pNext",
2532
4667
  "VkViSurfaceCreateFlagsNN flags",
2533
4668
  "void * window"]
2534
4669
 
4670
+ VkVideoPictureResourceKHR = struct ["VkStructureType sType",
4671
+ "void * pNext",
4672
+ { "codedOffset" => VkOffset2D },
4673
+ { "codedExtent" => VkExtent2D },
4674
+ "uint32_t baseArrayLayer",
4675
+ "VkImageView imageViewBinding"]
4676
+ VkVideoReferenceSlotKHR = struct ["VkStructureType sType",
4677
+ "void * pNext",
4678
+ "int8_t slotIndex",
4679
+ "VkVideoPictureResourceKHR * pPictureResource"]
4680
+ VkVideoBeginCodingInfoKHR = struct ["VkStructureType sType",
4681
+ "void * pNext",
4682
+ "VkVideoBeginCodingFlagsKHR flags",
4683
+ "VkVideoCodingQualityPresetFlagsKHR codecQualityPreset",
4684
+ "VkVideoSessionKHR videoSession",
4685
+ "VkVideoSessionParametersKHR videoSessionParameters",
4686
+ "uint32_t referenceSlotCount",
4687
+ "VkVideoReferenceSlotKHR * pReferenceSlots"]
4688
+
4689
+ VkVideoBindMemoryKHR = struct ["VkStructureType sType",
4690
+ "void * pNext",
4691
+ "uint32_t memoryBindIndex",
4692
+ "VkDeviceMemory memory",
4693
+ "VkDeviceSize memoryOffset",
4694
+ "VkDeviceSize memorySize"]
4695
+
4696
+ VkVideoCapabilitiesKHR = struct ["VkStructureType sType",
4697
+ "void * pNext",
4698
+ "VkVideoCapabilityFlagsKHR capabilityFlags",
4699
+ "VkDeviceSize minBitstreamBufferOffsetAlignment",
4700
+ "VkDeviceSize minBitstreamBufferSizeAlignment",
4701
+ { "videoPictureExtentGranularity" => VkExtent2D },
4702
+ { "minExtent" => VkExtent2D },
4703
+ { "maxExtent" => VkExtent2D },
4704
+ "uint32_t maxReferencePicturesSlotsCount",
4705
+ "uint32_t maxReferencePicturesActiveCount"]
4706
+
4707
+ VkVideoCodingControlInfoKHR = struct ["VkStructureType sType",
4708
+ "void * pNext",
4709
+ "VkVideoCodingControlFlagsKHR flags"]
4710
+
4711
+ VkVideoDecodeCapabilitiesKHR = struct ["VkStructureType sType",
4712
+ "void * pNext",
4713
+ "VkVideoDecodeCapabilityFlagsKHR flags"]
4714
+
4715
+ VkVideoDecodeH264CapabilitiesEXT = struct ["VkStructureType sType",
4716
+ "void * pNext",
4717
+ "uint32_t maxLevel",
4718
+ { "fieldOffsetGranularity" => VkOffset2D },
4719
+ { "stdExtensionVersion" => VkExtensionProperties }]
4720
+
4721
+ VkVideoDecodeH264DpbSlotInfoEXT = struct ["VkStructureType sType",
4722
+ "void * pNext",
4723
+ "StdVideoDecodeH264ReferenceInfo * pStdReferenceInfo"]
4724
+
4725
+ VkVideoDecodeH264MvcEXT = struct ["VkStructureType sType",
4726
+ "void * pNext",
4727
+ "StdVideoDecodeH264Mvc * pStdMvc"]
4728
+
4729
+ VkVideoDecodeH264PictureInfoEXT = struct ["VkStructureType sType",
4730
+ "void * pNext",
4731
+ "StdVideoDecodeH264PictureInfo * pStdPictureInfo",
4732
+ "uint32_t slicesCount",
4733
+ "uint32_t * pSlicesDataOffsets"]
4734
+
4735
+ VkVideoDecodeH264ProfileEXT = struct ["VkStructureType sType",
4736
+ "void * pNext",
4737
+ "StdVideoH264ProfileIdc stdProfileIdc",
4738
+ "VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout"]
4739
+
4740
+ VkVideoDecodeH264SessionCreateInfoEXT = struct ["VkStructureType sType",
4741
+ "void * pNext",
4742
+ "VkVideoDecodeH264CreateFlagsEXT flags",
4743
+ "VkExtensionProperties * pStdExtensionVersion"]
4744
+
4745
+ VkVideoDecodeH264SessionParametersAddInfoEXT = struct ["VkStructureType sType",
4746
+ "void * pNext",
4747
+ "uint32_t spsStdCount",
4748
+ "StdVideoH264SequenceParameterSet * pSpsStd",
4749
+ "uint32_t ppsStdCount",
4750
+ "StdVideoH264PictureParameterSet * pPpsStd"]
4751
+
4752
+ VkVideoDecodeH264SessionParametersCreateInfoEXT = struct ["VkStructureType sType",
4753
+ "void * pNext",
4754
+ "uint32_t maxSpsStdCount",
4755
+ "uint32_t maxPpsStdCount",
4756
+ "VkVideoDecodeH264SessionParametersAddInfoEXT * pParametersAddInfo"]
4757
+
4758
+ VkVideoDecodeH265CapabilitiesEXT = struct ["VkStructureType sType",
4759
+ "void * pNext",
4760
+ "uint32_t maxLevel",
4761
+ { "stdExtensionVersion" => VkExtensionProperties }]
4762
+
4763
+ VkVideoDecodeH265DpbSlotInfoEXT = struct ["VkStructureType sType",
4764
+ "void * pNext",
4765
+ "StdVideoDecodeH265ReferenceInfo * pStdReferenceInfo"]
4766
+
4767
+ VkVideoDecodeH265PictureInfoEXT = struct ["VkStructureType sType",
4768
+ "void * pNext",
4769
+ "StdVideoDecodeH265PictureInfo * pStdPictureInfo",
4770
+ "uint32_t slicesCount",
4771
+ "uint32_t * pSlicesDataOffsets"]
4772
+
4773
+ VkVideoDecodeH265ProfileEXT = struct ["VkStructureType sType",
4774
+ "void * pNext",
4775
+ "StdVideoH265ProfileIdc stdProfileIdc"]
4776
+
4777
+ VkVideoDecodeH265SessionCreateInfoEXT = struct ["VkStructureType sType",
4778
+ "void * pNext",
4779
+ "VkVideoDecodeH265CreateFlagsEXT flags",
4780
+ "VkExtensionProperties * pStdExtensionVersion"]
4781
+
4782
+ VkVideoDecodeH265SessionParametersAddInfoEXT = struct ["VkStructureType sType",
4783
+ "void * pNext",
4784
+ "uint32_t spsStdCount",
4785
+ "StdVideoH265SequenceParameterSet * pSpsStd",
4786
+ "uint32_t ppsStdCount",
4787
+ "StdVideoH265PictureParameterSet * pPpsStd"]
4788
+
4789
+ VkVideoDecodeH265SessionParametersCreateInfoEXT = struct ["VkStructureType sType",
4790
+ "void * pNext",
4791
+ "uint32_t maxSpsStdCount",
4792
+ "uint32_t maxPpsStdCount",
4793
+ "VkVideoDecodeH265SessionParametersAddInfoEXT * pParametersAddInfo"]
4794
+
4795
+ VkVideoDecodeInfoKHR = struct ["VkStructureType sType",
4796
+ "void * pNext",
4797
+ "VkVideoDecodeFlagsKHR flags",
4798
+ { "codedOffset" => VkOffset2D },
4799
+ { "codedExtent" => VkExtent2D },
4800
+ "VkBuffer srcBuffer",
4801
+ "VkDeviceSize srcBufferOffset",
4802
+ "VkDeviceSize srcBufferRange",
4803
+ { "dstPictureResource" => VkVideoPictureResourceKHR },
4804
+ "VkVideoReferenceSlotKHR * pSetupReferenceSlot",
4805
+ "uint32_t referenceSlotCount",
4806
+ "VkVideoReferenceSlotKHR * pReferenceSlots"]
4807
+
4808
+ VkVideoEncodeCapabilitiesKHR = struct ["VkStructureType sType",
4809
+ "void * pNext",
4810
+ "VkVideoEncodeCapabilityFlagsKHR flags",
4811
+ "VkVideoEncodeRateControlModeFlagsKHR rateControlModes",
4812
+ "uint8_t rateControlLayerCount",
4813
+ "uint8_t qualityLevelCount",
4814
+ { "inputImageDataFillAlignment" => VkExtent2D }]
4815
+
4816
+ VkVideoEncodeH264CapabilitiesEXT = struct ["VkStructureType sType",
4817
+ "void * pNext",
4818
+ "VkVideoEncodeH264CapabilityFlagsEXT flags",
4819
+ "VkVideoEncodeH264InputModeFlagsEXT inputModeFlags",
4820
+ "VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags",
4821
+ "uint8_t maxPPictureL0ReferenceCount",
4822
+ "uint8_t maxBPictureL0ReferenceCount",
4823
+ "uint8_t maxL1ReferenceCount",
4824
+ "VkBool32 motionVectorsOverPicBoundariesFlag",
4825
+ "uint32_t maxBytesPerPicDenom",
4826
+ "uint32_t maxBitsPerMbDenom",
4827
+ "uint32_t log2MaxMvLengthHorizontal",
4828
+ "uint32_t log2MaxMvLengthVertical",
4829
+ { "stdExtensionVersion" => VkExtensionProperties }]
4830
+
4831
+ VkVideoEncodeH264DpbSlotInfoEXT = struct ["VkStructureType sType",
4832
+ "void * pNext",
4833
+ "int8_t slotIndex",
4834
+ "StdVideoEncodeH264ReferenceInfo * pStdReferenceInfo"]
4835
+
4836
+ VkVideoEncodeH264EmitPictureParametersEXT = struct ["VkStructureType sType",
4837
+ "void * pNext",
4838
+ "uint8_t spsId",
4839
+ "VkBool32 emitSpsEnable",
4840
+ "uint32_t ppsIdEntryCount",
4841
+ "uint8_t * ppsIdEntries"]
4842
+
4843
+ VkVideoEncodeH264FrameSizeEXT = struct ["uint32_t frameISize",
4844
+ "uint32_t framePSize",
4845
+ "uint32_t frameBSize"]
4846
+
4847
+ VkVideoEncodeH264ReferenceListsEXT = struct ["VkStructureType sType",
4848
+ "void * pNext",
4849
+ "uint8_t referenceList0EntryCount",
4850
+ "VkVideoEncodeH264DpbSlotInfoEXT * pReferenceList0Entries",
4851
+ "uint8_t referenceList1EntryCount",
4852
+ "VkVideoEncodeH264DpbSlotInfoEXT * pReferenceList1Entries",
4853
+ "StdVideoEncodeH264RefMemMgmtCtrlOperations * pMemMgmtCtrlOperations"]
4854
+ VkVideoEncodeH264NaluSliceEXT = struct ["VkStructureType sType",
4855
+ "void * pNext",
4856
+ "uint32_t mbCount",
4857
+ "VkVideoEncodeH264ReferenceListsEXT * pReferenceFinalLists",
4858
+ "StdVideoEncodeH264SliceHeader * pSliceHeaderStd"]
4859
+
4860
+ VkVideoEncodeH264ProfileEXT = struct ["VkStructureType sType",
4861
+ "void * pNext",
4862
+ "StdVideoH264ProfileIdc stdProfileIdc"]
4863
+
4864
+ VkVideoEncodeH264QpEXT = struct ["int32_t qpI",
4865
+ "int32_t qpP",
4866
+ "int32_t qpB"]
4867
+
4868
+ VkVideoEncodeH264RateControlInfoEXT = struct ["VkStructureType sType",
4869
+ "void * pNext",
4870
+ "uint32_t gopFrameCount",
4871
+ "uint32_t idrPeriod",
4872
+ "uint32_t consecutiveBFrameCount",
4873
+ "VkVideoEncodeH264RateControlStructureFlagBitsEXT rateControlStructure",
4874
+ "uint8_t temporalLayerCount"]
4875
+
4876
+ VkVideoEncodeH264RateControlLayerInfoEXT = struct ["VkStructureType sType",
4877
+ "void * pNext",
4878
+ "uint8_t temporalLayerId",
4879
+ "VkBool32 useInitialRcQp",
4880
+ { "initialRcQp" => VkVideoEncodeH264QpEXT },
4881
+ "VkBool32 useMinQp",
4882
+ { "minQp" => VkVideoEncodeH264QpEXT },
4883
+ "VkBool32 useMaxQp",
4884
+ { "maxQp" => VkVideoEncodeH264QpEXT },
4885
+ "VkBool32 useMaxFrameSize",
4886
+ { "maxFrameSize" => VkVideoEncodeH264FrameSizeEXT }]
4887
+
4888
+ VkVideoEncodeH264SessionCreateInfoEXT = struct ["VkStructureType sType",
4889
+ "void * pNext",
4890
+ "VkVideoEncodeH264CreateFlagsEXT flags",
4891
+ { "maxPictureSizeInMbs" => VkExtent2D },
4892
+ "VkExtensionProperties * pStdExtensionVersion"]
4893
+
4894
+ VkVideoEncodeH264SessionParametersAddInfoEXT = struct ["VkStructureType sType",
4895
+ "void * pNext",
4896
+ "uint32_t spsStdCount",
4897
+ "StdVideoH264SequenceParameterSet * pSpsStd",
4898
+ "uint32_t ppsStdCount",
4899
+ "StdVideoH264PictureParameterSet * pPpsStd"]
4900
+
4901
+ VkVideoEncodeH264SessionParametersCreateInfoEXT = struct ["VkStructureType sType",
4902
+ "void * pNext",
4903
+ "uint32_t maxSpsStdCount",
4904
+ "uint32_t maxPpsStdCount",
4905
+ "VkVideoEncodeH264SessionParametersAddInfoEXT * pParametersAddInfo"]
4906
+
4907
+ VkVideoEncodeH264VclFrameInfoEXT = struct ["VkStructureType sType",
4908
+ "void * pNext",
4909
+ "VkVideoEncodeH264ReferenceListsEXT * pReferenceFinalLists",
4910
+ "uint32_t naluSliceEntryCount",
4911
+ "VkVideoEncodeH264NaluSliceEXT * pNaluSliceEntries",
4912
+ "StdVideoEncodeH264PictureInfo * pCurrentPictureInfo"]
4913
+
4914
+ VkVideoEncodeH265CapabilitiesEXT = struct ["VkStructureType sType",
4915
+ "void * pNext",
4916
+ "VkVideoEncodeH265CapabilityFlagsEXT flags",
4917
+ "VkVideoEncodeH265InputModeFlagsEXT inputModeFlags",
4918
+ "VkVideoEncodeH265OutputModeFlagsEXT outputModeFlags",
4919
+ "VkVideoEncodeH265CtbSizeFlagsEXT ctbSizes",
4920
+ "VkVideoEncodeH265TransformBlockSizeFlagsEXT transformBlockSizes",
4921
+ "uint8_t maxPPictureL0ReferenceCount",
4922
+ "uint8_t maxBPictureL0ReferenceCount",
4923
+ "uint8_t maxL1ReferenceCount",
4924
+ "uint8_t maxSubLayersCount",
4925
+ "uint8_t minLog2MinLumaCodingBlockSizeMinus3",
4926
+ "uint8_t maxLog2MinLumaCodingBlockSizeMinus3",
4927
+ "uint8_t minLog2MinLumaTransformBlockSizeMinus2",
4928
+ "uint8_t maxLog2MinLumaTransformBlockSizeMinus2",
4929
+ "uint8_t minMaxTransformHierarchyDepthInter",
4930
+ "uint8_t maxMaxTransformHierarchyDepthInter",
4931
+ "uint8_t minMaxTransformHierarchyDepthIntra",
4932
+ "uint8_t maxMaxTransformHierarchyDepthIntra",
4933
+ "uint8_t maxDiffCuQpDeltaDepth",
4934
+ "uint8_t minMaxNumMergeCand",
4935
+ "uint8_t maxMaxNumMergeCand",
4936
+ { "stdExtensionVersion" => VkExtensionProperties }]
4937
+
4938
+ VkVideoEncodeH265DpbSlotInfoEXT = struct ["VkStructureType sType",
4939
+ "void * pNext",
4940
+ "int8_t slotIndex",
4941
+ "StdVideoEncodeH265ReferenceInfo * pStdReferenceInfo"]
4942
+
4943
+ VkVideoEncodeH265EmitPictureParametersEXT = struct ["VkStructureType sType",
4944
+ "void * pNext",
4945
+ "uint8_t vpsId",
4946
+ "uint8_t spsId",
4947
+ "VkBool32 emitVpsEnable",
4948
+ "VkBool32 emitSpsEnable",
4949
+ "uint32_t ppsIdEntryCount",
4950
+ "uint8_t * ppsIdEntries"]
4951
+
4952
+ VkVideoEncodeH265FrameSizeEXT = struct ["uint32_t frameISize",
4953
+ "uint32_t framePSize",
4954
+ "uint32_t frameBSize"]
4955
+
4956
+ VkVideoEncodeH265ReferenceListsEXT = struct ["VkStructureType sType",
4957
+ "void * pNext",
4958
+ "uint8_t referenceList0EntryCount",
4959
+ "VkVideoEncodeH265DpbSlotInfoEXT * pReferenceList0Entries",
4960
+ "uint8_t referenceList1EntryCount",
4961
+ "VkVideoEncodeH265DpbSlotInfoEXT * pReferenceList1Entries",
4962
+ "StdVideoEncodeH265ReferenceModifications * pReferenceModifications"]
4963
+ VkVideoEncodeH265NaluSliceSegmentEXT = struct ["VkStructureType sType",
4964
+ "void * pNext",
4965
+ "uint32_t ctbCount",
4966
+ "VkVideoEncodeH265ReferenceListsEXT * pReferenceFinalLists",
4967
+ "StdVideoEncodeH265SliceSegmentHeader * pSliceSegmentHeaderStd"]
4968
+
4969
+ VkVideoEncodeH265ProfileEXT = struct ["VkStructureType sType",
4970
+ "void * pNext",
4971
+ "StdVideoH265ProfileIdc stdProfileIdc"]
4972
+
4973
+ VkVideoEncodeH265QpEXT = struct ["int32_t qpI",
4974
+ "int32_t qpP",
4975
+ "int32_t qpB"]
4976
+
4977
+ VkVideoEncodeH265RateControlInfoEXT = struct ["VkStructureType sType",
4978
+ "void * pNext",
4979
+ "uint32_t gopFrameCount",
4980
+ "uint32_t idrPeriod",
4981
+ "uint32_t consecutiveBFrameCount",
4982
+ "VkVideoEncodeH265RateControlStructureFlagBitsEXT rateControlStructure",
4983
+ "uint8_t subLayerCount"]
4984
+
4985
+ VkVideoEncodeH265RateControlLayerInfoEXT = struct ["VkStructureType sType",
4986
+ "void * pNext",
4987
+ "uint8_t temporalId",
4988
+ "VkBool32 useInitialRcQp",
4989
+ { "initialRcQp" => VkVideoEncodeH265QpEXT },
4990
+ "VkBool32 useMinQp",
4991
+ { "minQp" => VkVideoEncodeH265QpEXT },
4992
+ "VkBool32 useMaxQp",
4993
+ { "maxQp" => VkVideoEncodeH265QpEXT },
4994
+ "VkBool32 useMaxFrameSize",
4995
+ { "maxFrameSize" => VkVideoEncodeH265FrameSizeEXT }]
4996
+
4997
+ VkVideoEncodeH265SessionCreateInfoEXT = struct ["VkStructureType sType",
4998
+ "void * pNext",
4999
+ "VkVideoEncodeH265CreateFlagsEXT flags",
5000
+ "VkExtensionProperties * pStdExtensionVersion"]
5001
+
5002
+ VkVideoEncodeH265SessionParametersAddInfoEXT = struct ["VkStructureType sType",
5003
+ "void * pNext",
5004
+ "uint32_t vpsStdCount",
5005
+ "StdVideoH265VideoParameterSet * pVpsStd",
5006
+ "uint32_t spsStdCount",
5007
+ "StdVideoH265SequenceParameterSet * pSpsStd",
5008
+ "uint32_t ppsStdCount",
5009
+ "StdVideoH265PictureParameterSet * pPpsStd"]
5010
+
5011
+ VkVideoEncodeH265SessionParametersCreateInfoEXT = struct ["VkStructureType sType",
5012
+ "void * pNext",
5013
+ "uint32_t maxVpsStdCount",
5014
+ "uint32_t maxSpsStdCount",
5015
+ "uint32_t maxPpsStdCount",
5016
+ "VkVideoEncodeH265SessionParametersAddInfoEXT * pParametersAddInfo"]
5017
+
5018
+ VkVideoEncodeH265VclFrameInfoEXT = struct ["VkStructureType sType",
5019
+ "void * pNext",
5020
+ "VkVideoEncodeH265ReferenceListsEXT * pReferenceFinalLists",
5021
+ "uint32_t naluSliceSegmentEntryCount",
5022
+ "VkVideoEncodeH265NaluSliceSegmentEXT * pNaluSliceSegmentEntries",
5023
+ "StdVideoEncodeH265PictureInfo * pCurrentPictureInfo"]
5024
+
5025
+ VkVideoEncodeInfoKHR = struct ["VkStructureType sType",
5026
+ "void * pNext",
5027
+ "VkVideoEncodeFlagsKHR flags",
5028
+ "uint32_t qualityLevel",
5029
+ { "codedExtent" => VkExtent2D },
5030
+ "VkBuffer dstBitstreamBuffer",
5031
+ "VkDeviceSize dstBitstreamBufferOffset",
5032
+ "VkDeviceSize dstBitstreamBufferMaxRange",
5033
+ { "srcPictureResource" => VkVideoPictureResourceKHR },
5034
+ "VkVideoReferenceSlotKHR * pSetupReferenceSlot",
5035
+ "uint32_t referenceSlotCount",
5036
+ "VkVideoReferenceSlotKHR * pReferenceSlots",
5037
+ "uint32_t precedingExternallyEncodedBytes"]
5038
+
5039
+ VkVideoEncodeRateControlLayerInfoKHR = struct ["VkStructureType sType",
5040
+ "void * pNext",
5041
+ "uint32_t averageBitrate",
5042
+ "uint32_t maxBitrate",
5043
+ "uint32_t frameRateNumerator",
5044
+ "uint32_t frameRateDenominator",
5045
+ "uint32_t virtualBufferSizeInMs",
5046
+ "uint32_t initialVirtualBufferSizeInMs"]
5047
+ VkVideoEncodeRateControlInfoKHR = struct ["VkStructureType sType",
5048
+ "void * pNext",
5049
+ "VkVideoEncodeRateControlFlagsKHR flags",
5050
+ "VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode",
5051
+ "uint8_t layerCount",
5052
+ "VkVideoEncodeRateControlLayerInfoKHR * pLayerConfigs"]
5053
+
5054
+ VkVideoEndCodingInfoKHR = struct ["VkStructureType sType",
5055
+ "void * pNext",
5056
+ "VkVideoEndCodingFlagsKHR flags"]
5057
+
5058
+ VkVideoFormatPropertiesKHR = struct ["VkStructureType sType",
5059
+ "void * pNext",
5060
+ "VkFormat format"]
5061
+
5062
+ VkVideoGetMemoryPropertiesKHR = struct ["VkStructureType sType",
5063
+ "void * pNext",
5064
+ "uint32_t memoryBindIndex",
5065
+ "VkMemoryRequirements2 * pMemoryRequirements"]
5066
+
5067
+ VkVideoQueueFamilyProperties2KHR = struct ["VkStructureType sType",
5068
+ "void * pNext",
5069
+ "VkVideoCodecOperationFlagsKHR videoCodecOperations"]
5070
+
5071
+ VkVideoSessionCreateInfoKHR = struct ["VkStructureType sType",
5072
+ "void * pNext",
5073
+ "uint32_t queueFamilyIndex",
5074
+ "VkVideoSessionCreateFlagsKHR flags",
5075
+ "VkVideoProfileKHR * pVideoProfile",
5076
+ "VkFormat pictureFormat",
5077
+ { "maxCodedExtent" => VkExtent2D },
5078
+ "VkFormat referencePicturesFormat",
5079
+ "uint32_t maxReferencePicturesSlotsCount",
5080
+ "uint32_t maxReferencePicturesActiveCount"]
5081
+
5082
+ VkVideoSessionParametersCreateInfoKHR = struct ["VkStructureType sType",
5083
+ "void * pNext",
5084
+ "VkVideoSessionParametersKHR videoSessionParametersTemplate",
5085
+ "VkVideoSessionKHR videoSession"]
5086
+
5087
+ VkVideoSessionParametersUpdateInfoKHR = struct ["VkStructureType sType",
5088
+ "void * pNext",
5089
+ "uint32_t updateSequenceCount"]
5090
+
2535
5091
  VkWaylandSurfaceCreateInfoKHR = struct ["VkStructureType sType",
2536
5092
  "void * pNext",
2537
5093
  "VkWaylandSurfaceCreateFlagsKHR flags",
@@ -2575,15 +5131,22 @@ module Vulkan
2575
5131
  "VkDescriptorBufferInfo * pBufferInfo",
2576
5132
  "VkBufferView * pTexelBufferView"]
2577
5133
 
5134
+ VkWriteDescriptorSetAccelerationStructureKHR = struct ["VkStructureType sType",
5135
+ "void * pNext",
5136
+ "uint32_t accelerationStructureCount",
5137
+ "VkAccelerationStructureKHR * pAccelerationStructures"]
5138
+
2578
5139
  VkWriteDescriptorSetAccelerationStructureNV = struct ["VkStructureType sType",
2579
5140
  "void * pNext",
2580
5141
  "uint32_t accelerationStructureCount",
2581
5142
  "VkAccelerationStructureNV * pAccelerationStructures"]
2582
5143
 
2583
- VkWriteDescriptorSetInlineUniformBlockEXT = struct ["VkStructureType sType",
2584
- "void * pNext",
2585
- "uint32_t dataSize",
2586
- "void * pData"]
5144
+ VkWriteDescriptorSetInlineUniformBlock = struct ["VkStructureType sType",
5145
+ "void * pNext",
5146
+ "uint32_t dataSize",
5147
+ "void * pData"]
5148
+
5149
+ VkWriteDescriptorSetInlineUniformBlockEXT = VkWriteDescriptorSetInlineUniformBlock
2587
5150
 
2588
5151
  VkXcbSurfaceCreateInfoKHR = struct ["VkStructureType sType",
2589
5152
  "void * pNext",