vulkan-ruby 0.1.0 → 1.3.207.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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",