comparison fuhtark_test/Vulkan-Headers-1.4.334/include/vulkan/vulkan_extension_inspection.hpp @ 1501:f40d9d814c08 default tip main

did: correct vulkan-api generator
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 23:34:29 +0700
parents
children
comparison
equal deleted inserted replaced
1500:91c8c3b7cbf0 1501:f40d9d814c08
1 // Copyright 2015-2025 The Khronos Group Inc.
2 //
3 // SPDX-License-Identifier: Apache-2.0 OR MIT
4 //
5
6 // This header is generated from the Khronos Vulkan XML API Registry.
7
8 #ifndef VULKAN_EXTENSION_INSPECTION_HPP
9 #define VULKAN_EXTENSION_INSPECTION_HPP
10
11 #if !defined( VULKAN_HPP_CXX_MODULE )
12 # include <map>
13 # include <set>
14 # include <string>
15 # include <vector>
16 # include <vulkan/vulkan.hpp>
17 #endif
18
19 namespace VULKAN_HPP_NAMESPACE
20 {
21 //======================================
22 //=== Extension inspection functions ===
23 //======================================
24
25 std::set<std::string> const & getDeviceExtensions();
26 std::set<std::string> const & getInstanceExtensions();
27 std::map<std::string, std::string> const & getDeprecatedExtensions();
28 std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension );
29 std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version, std::string const & extension );
30 std::map<std::string, std::string> const & getObsoletedExtensions();
31 std::map<std::string, std::string> const & getPromotedExtensions();
32 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension );
33 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension );
34 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension );
35 VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension );
36 VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension );
37 VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension );
38 VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension );
39 VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension );
40
41 //=====================================================
42 //=== Extension inspection function implementations ===
43 //=====================================================
44
45 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getDeprecatedExtensions()
46 {
47 static const std::map<std::string, std::string> deprecatedExtensions = { { "VK_EXT_debug_report", "VK_EXT_debug_utils" },
48 { "VK_NV_glsl_shader", "" },
49 { "VK_NV_dedicated_allocation", "VK_KHR_dedicated_allocation" },
50 { "VK_AMD_gpu_shader_half_float", "VK_KHR_shader_float16_int8" },
51 { "VK_IMG_format_pvrtc", "" },
52 { "VK_NV_external_memory_capabilities", "VK_KHR_external_memory_capabilities" },
53 { "VK_NV_external_memory", "VK_KHR_external_memory" },
54 #if defined( VK_USE_PLATFORM_WIN32_KHR )
55 { "VK_NV_external_memory_win32", "VK_KHR_external_memory_win32" },
56 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
57 { "VK_EXT_validation_flags", "VK_EXT_layer_settings" },
58 { "VK_EXT_shader_subgroup_ballot", "VK_VERSION_1_2" },
59 { "VK_EXT_shader_subgroup_vote", "VK_VERSION_1_1" },
60 #if defined( VK_USE_PLATFORM_IOS_MVK )
61 { "VK_MVK_ios_surface", "VK_EXT_metal_surface" },
62 #endif /*VK_USE_PLATFORM_IOS_MVK*/
63 #if defined( VK_USE_PLATFORM_MACOS_MVK )
64 { "VK_MVK_macos_surface", "VK_EXT_metal_surface" },
65 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
66 { "VK_AMD_gpu_shader_int16", "VK_KHR_shader_float16_int8" },
67 { "VK_NV_ray_tracing", "VK_KHR_ray_tracing_pipeline" },
68 { "VK_EXT_buffer_device_address", "VK_KHR_buffer_device_address" },
69 { "VK_EXT_validation_features", "VK_EXT_layer_settings" },
70 #if defined( VK_ENABLE_BETA_EXTENSIONS )
71 { "VK_NV_displacement_micromap", "VK_NV_cluster_acceleration_structure" }
72 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
73 };
74 return deprecatedExtensions;
75 }
76
77 VULKAN_HPP_INLINE std::set<std::string> const & getDeviceExtensions()
78 {
79 static const std::set<std::string> deviceExtensions = { "VK_KHR_swapchain",
80 "VK_KHR_display_swapchain",
81 "VK_NV_glsl_shader",
82 "VK_EXT_depth_range_unrestricted",
83 "VK_KHR_sampler_mirror_clamp_to_edge",
84 "VK_IMG_filter_cubic",
85 "VK_AMD_rasterization_order",
86 "VK_AMD_shader_trinary_minmax",
87 "VK_AMD_shader_explicit_vertex_parameter",
88 "VK_EXT_debug_marker",
89 "VK_KHR_video_queue",
90 "VK_KHR_video_decode_queue",
91 "VK_AMD_gcn_shader",
92 "VK_NV_dedicated_allocation",
93 "VK_EXT_transform_feedback",
94 "VK_NVX_binary_import",
95 "VK_NVX_image_view_handle",
96 "VK_AMD_draw_indirect_count",
97 "VK_AMD_negative_viewport_height",
98 "VK_AMD_gpu_shader_half_float",
99 "VK_AMD_shader_ballot",
100 "VK_KHR_video_encode_h264",
101 "VK_KHR_video_encode_h265",
102 "VK_KHR_video_decode_h264",
103 "VK_AMD_texture_gather_bias_lod",
104 "VK_AMD_shader_info",
105 "VK_KHR_dynamic_rendering",
106 "VK_AMD_shader_image_load_store_lod",
107 "VK_NV_corner_sampled_image",
108 "VK_KHR_multiview",
109 "VK_IMG_format_pvrtc",
110 "VK_NV_external_memory",
111 #if defined( VK_USE_PLATFORM_WIN32_KHR )
112 "VK_NV_external_memory_win32",
113 "VK_NV_win32_keyed_mutex",
114 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
115 "VK_KHR_device_group",
116 "VK_KHR_shader_draw_parameters",
117 "VK_EXT_shader_subgroup_ballot",
118 "VK_EXT_shader_subgroup_vote",
119 "VK_EXT_texture_compression_astc_hdr",
120 "VK_EXT_astc_decode_mode",
121 "VK_EXT_pipeline_robustness",
122 "VK_KHR_maintenance1",
123 "VK_KHR_external_memory",
124 #if defined( VK_USE_PLATFORM_WIN32_KHR )
125 "VK_KHR_external_memory_win32",
126 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
127 "VK_KHR_external_memory_fd",
128 #if defined( VK_USE_PLATFORM_WIN32_KHR )
129 "VK_KHR_win32_keyed_mutex",
130 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
131 "VK_KHR_external_semaphore",
132 #if defined( VK_USE_PLATFORM_WIN32_KHR )
133 "VK_KHR_external_semaphore_win32",
134 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
135 "VK_KHR_external_semaphore_fd",
136 "VK_KHR_push_descriptor",
137 "VK_EXT_conditional_rendering",
138 "VK_KHR_shader_float16_int8",
139 "VK_KHR_16bit_storage",
140 "VK_KHR_incremental_present",
141 "VK_KHR_descriptor_update_template",
142 "VK_NV_clip_space_w_scaling",
143 "VK_EXT_display_control",
144 "VK_GOOGLE_display_timing",
145 "VK_NV_sample_mask_override_coverage",
146 "VK_NV_geometry_shader_passthrough",
147 "VK_NV_viewport_array2",
148 "VK_NVX_multiview_per_view_attributes",
149 "VK_NV_viewport_swizzle",
150 "VK_EXT_discard_rectangles",
151 "VK_EXT_conservative_rasterization",
152 "VK_EXT_depth_clip_enable",
153 "VK_EXT_hdr_metadata",
154 "VK_KHR_imageless_framebuffer",
155 "VK_KHR_create_renderpass2",
156 "VK_IMG_relaxed_line_rasterization",
157 "VK_KHR_shared_presentable_image",
158 "VK_KHR_external_fence",
159 #if defined( VK_USE_PLATFORM_WIN32_KHR )
160 "VK_KHR_external_fence_win32",
161 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
162 "VK_KHR_external_fence_fd",
163 "VK_KHR_performance_query",
164 "VK_KHR_maintenance2",
165 "VK_KHR_variable_pointers",
166 "VK_EXT_external_memory_dma_buf",
167 "VK_EXT_queue_family_foreign",
168 "VK_KHR_dedicated_allocation",
169 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
170 "VK_ANDROID_external_memory_android_hardware_buffer",
171 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
172 "VK_EXT_sampler_filter_minmax",
173 "VK_KHR_storage_buffer_storage_class",
174 "VK_AMD_gpu_shader_int16",
175 #if defined( VK_ENABLE_BETA_EXTENSIONS )
176 "VK_AMDX_shader_enqueue",
177 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
178 "VK_AMD_mixed_attachment_samples",
179 "VK_AMD_shader_fragment_mask",
180 "VK_EXT_inline_uniform_block",
181 "VK_EXT_shader_stencil_export",
182 "VK_KHR_shader_bfloat16",
183 "VK_EXT_sample_locations",
184 "VK_KHR_relaxed_block_layout",
185 "VK_KHR_get_memory_requirements2",
186 "VK_KHR_image_format_list",
187 "VK_EXT_blend_operation_advanced",
188 "VK_NV_fragment_coverage_to_color",
189 "VK_KHR_acceleration_structure",
190 "VK_KHR_ray_tracing_pipeline",
191 "VK_KHR_ray_query",
192 "VK_NV_framebuffer_mixed_samples",
193 "VK_NV_fill_rectangle",
194 "VK_NV_shader_sm_builtins",
195 "VK_EXT_post_depth_coverage",
196 "VK_KHR_sampler_ycbcr_conversion",
197 "VK_KHR_bind_memory2",
198 "VK_EXT_image_drm_format_modifier",
199 "VK_EXT_validation_cache",
200 "VK_EXT_descriptor_indexing",
201 "VK_EXT_shader_viewport_index_layer",
202 #if defined( VK_ENABLE_BETA_EXTENSIONS )
203 "VK_KHR_portability_subset",
204 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
205 "VK_NV_shading_rate_image",
206 "VK_NV_ray_tracing",
207 "VK_NV_representative_fragment_test",
208 "VK_KHR_maintenance3",
209 "VK_KHR_draw_indirect_count",
210 "VK_EXT_filter_cubic",
211 "VK_QCOM_render_pass_shader_resolve",
212 "VK_EXT_global_priority",
213 "VK_KHR_shader_subgroup_extended_types",
214 "VK_KHR_8bit_storage",
215 "VK_EXT_external_memory_host",
216 "VK_AMD_buffer_marker",
217 "VK_KHR_shader_atomic_int64",
218 "VK_KHR_shader_clock",
219 "VK_AMD_pipeline_compiler_control",
220 "VK_EXT_calibrated_timestamps",
221 "VK_AMD_shader_core_properties",
222 "VK_KHR_video_decode_h265",
223 "VK_KHR_global_priority",
224 "VK_AMD_memory_overallocation_behavior",
225 "VK_EXT_vertex_attribute_divisor",
226 #if defined( VK_USE_PLATFORM_GGP )
227 "VK_GGP_frame_token",
228 #endif /*VK_USE_PLATFORM_GGP*/
229 "VK_EXT_pipeline_creation_feedback",
230 "VK_KHR_driver_properties",
231 "VK_KHR_shader_float_controls",
232 "VK_NV_shader_subgroup_partitioned",
233 "VK_KHR_depth_stencil_resolve",
234 "VK_KHR_swapchain_mutable_format",
235 "VK_NV_compute_shader_derivatives",
236 "VK_NV_mesh_shader",
237 "VK_NV_fragment_shader_barycentric",
238 "VK_NV_shader_image_footprint",
239 "VK_NV_scissor_exclusive",
240 "VK_NV_device_diagnostic_checkpoints",
241 "VK_KHR_timeline_semaphore",
242 "VK_INTEL_shader_integer_functions2",
243 "VK_INTEL_performance_query",
244 "VK_KHR_vulkan_memory_model",
245 "VK_EXT_pci_bus_info",
246 "VK_AMD_display_native_hdr",
247 "VK_KHR_shader_terminate_invocation",
248 "VK_EXT_fragment_density_map",
249 "VK_EXT_scalar_block_layout",
250 "VK_GOOGLE_hlsl_functionality1",
251 "VK_GOOGLE_decorate_string",
252 "VK_EXT_subgroup_size_control",
253 "VK_KHR_fragment_shading_rate",
254 "VK_AMD_shader_core_properties2",
255 "VK_AMD_device_coherent_memory",
256 "VK_KHR_dynamic_rendering_local_read",
257 "VK_EXT_shader_image_atomic_int64",
258 "VK_KHR_shader_quad_control",
259 "VK_KHR_spirv_1_4",
260 "VK_EXT_memory_budget",
261 "VK_EXT_memory_priority",
262 "VK_NV_dedicated_allocation_image_aliasing",
263 "VK_KHR_separate_depth_stencil_layouts",
264 "VK_EXT_buffer_device_address",
265 "VK_EXT_tooling_info",
266 "VK_EXT_separate_stencil_usage",
267 "VK_KHR_present_wait",
268 "VK_NV_cooperative_matrix",
269 "VK_NV_coverage_reduction_mode",
270 "VK_EXT_fragment_shader_interlock",
271 "VK_EXT_ycbcr_image_arrays",
272 "VK_KHR_uniform_buffer_standard_layout",
273 "VK_EXT_provoking_vertex",
274 #if defined( VK_USE_PLATFORM_WIN32_KHR )
275 "VK_EXT_full_screen_exclusive",
276 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
277 "VK_KHR_buffer_device_address",
278 "VK_EXT_line_rasterization",
279 "VK_EXT_shader_atomic_float",
280 "VK_EXT_host_query_reset",
281 "VK_EXT_index_type_uint8",
282 "VK_EXT_extended_dynamic_state",
283 "VK_KHR_deferred_host_operations",
284 "VK_KHR_pipeline_executable_properties",
285 "VK_EXT_host_image_copy",
286 "VK_KHR_map_memory2",
287 "VK_EXT_map_memory_placed",
288 "VK_EXT_shader_atomic_float2",
289 "VK_EXT_swapchain_maintenance1",
290 "VK_EXT_shader_demote_to_helper_invocation",
291 "VK_NV_device_generated_commands",
292 "VK_NV_inherited_viewport_scissor",
293 "VK_KHR_shader_integer_dot_product",
294 "VK_EXT_texel_buffer_alignment",
295 "VK_QCOM_render_pass_transform",
296 "VK_EXT_depth_bias_control",
297 "VK_EXT_device_memory_report",
298 "VK_EXT_robustness2",
299 "VK_EXT_custom_border_color",
300 "VK_GOOGLE_user_type",
301 "VK_KHR_pipeline_library",
302 "VK_NV_present_barrier",
303 "VK_KHR_shader_non_semantic_info",
304 "VK_KHR_present_id",
305 "VK_EXT_private_data",
306 "VK_EXT_pipeline_creation_cache_control",
307 "VK_KHR_video_encode_queue",
308 "VK_NV_device_diagnostics_config",
309 "VK_QCOM_render_pass_store_ops",
310 #if defined( VK_ENABLE_BETA_EXTENSIONS )
311 "VK_NV_cuda_kernel_launch",
312 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
313 "VK_QCOM_tile_shading",
314 "VK_NV_low_latency",
315 #if defined( VK_USE_PLATFORM_METAL_EXT )
316 "VK_EXT_metal_objects",
317 #endif /*VK_USE_PLATFORM_METAL_EXT*/
318 "VK_KHR_synchronization2",
319 "VK_EXT_descriptor_buffer",
320 "VK_EXT_graphics_pipeline_library",
321 "VK_AMD_shader_early_and_late_fragment_tests",
322 "VK_KHR_fragment_shader_barycentric",
323 "VK_KHR_shader_subgroup_uniform_control_flow",
324 "VK_KHR_zero_initialize_workgroup_memory",
325 "VK_NV_fragment_shading_rate_enums",
326 "VK_NV_ray_tracing_motion_blur",
327 "VK_EXT_mesh_shader",
328 "VK_EXT_ycbcr_2plane_444_formats",
329 "VK_EXT_fragment_density_map2",
330 "VK_QCOM_rotated_copy_commands",
331 "VK_EXT_image_robustness",
332 "VK_KHR_workgroup_memory_explicit_layout",
333 "VK_KHR_copy_commands2",
334 "VK_EXT_image_compression_control",
335 "VK_EXT_attachment_feedback_loop_layout",
336 "VK_EXT_4444_formats",
337 "VK_EXT_device_fault",
338 "VK_ARM_rasterization_order_attachment_access",
339 "VK_EXT_rgba10x6_formats",
340 #if defined( VK_USE_PLATFORM_WIN32_KHR )
341 "VK_NV_acquire_winrt_display",
342 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
343 "VK_VALVE_mutable_descriptor_type",
344 "VK_EXT_vertex_input_dynamic_state",
345 "VK_EXT_physical_device_drm",
346 "VK_EXT_device_address_binding_report",
347 "VK_EXT_depth_clip_control",
348 "VK_EXT_primitive_topology_list_restart",
349 "VK_KHR_format_feature_flags2",
350 "VK_EXT_present_mode_fifo_latest_ready",
351 #if defined( VK_USE_PLATFORM_FUCHSIA )
352 "VK_FUCHSIA_external_memory",
353 "VK_FUCHSIA_external_semaphore",
354 "VK_FUCHSIA_buffer_collection",
355 #endif /*VK_USE_PLATFORM_FUCHSIA*/
356 "VK_HUAWEI_subpass_shading",
357 "VK_HUAWEI_invocation_mask",
358 "VK_NV_external_memory_rdma",
359 "VK_EXT_pipeline_properties",
360 "VK_EXT_frame_boundary",
361 "VK_EXT_multisampled_render_to_single_sampled",
362 "VK_EXT_extended_dynamic_state2",
363 "VK_EXT_color_write_enable",
364 "VK_EXT_primitives_generated_query",
365 "VK_KHR_ray_tracing_maintenance1",
366 "VK_KHR_shader_untyped_pointers",
367 "VK_EXT_global_priority_query",
368 "VK_VALVE_video_encode_rgb_conversion",
369 "VK_EXT_image_view_min_lod",
370 "VK_EXT_multi_draw",
371 "VK_EXT_image_2d_view_of_3d",
372 "VK_EXT_shader_tile_image",
373 "VK_EXT_opacity_micromap",
374 #if defined( VK_ENABLE_BETA_EXTENSIONS )
375 "VK_NV_displacement_micromap",
376 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
377 "VK_EXT_load_store_op_none",
378 "VK_HUAWEI_cluster_culling_shader",
379 "VK_EXT_border_color_swizzle",
380 "VK_EXT_pageable_device_local_memory",
381 "VK_KHR_maintenance4",
382 "VK_ARM_shader_core_properties",
383 "VK_KHR_shader_subgroup_rotate",
384 "VK_ARM_scheduling_controls",
385 "VK_EXT_image_sliced_view_of_3d",
386 "VK_VALVE_descriptor_set_host_mapping",
387 "VK_EXT_depth_clamp_zero_one",
388 "VK_EXT_non_seamless_cube_map",
389 "VK_ARM_render_pass_striped",
390 "VK_QCOM_fragment_density_map_offset",
391 "VK_NV_copy_memory_indirect",
392 "VK_NV_memory_decompression",
393 "VK_NV_device_generated_commands_compute",
394 "VK_NV_ray_tracing_linear_swept_spheres",
395 "VK_NV_linear_color_attachment",
396 "VK_KHR_shader_maximal_reconvergence",
397 "VK_EXT_image_compression_control_swapchain",
398 "VK_QCOM_image_processing",
399 "VK_EXT_nested_command_buffer",
400 #if defined( VK_USE_PLATFORM_OHOS )
401 "VK_OHOS_external_memory",
402 #endif /*VK_USE_PLATFORM_OHOS*/
403 "VK_EXT_external_memory_acquire_unmodified",
404 "VK_EXT_extended_dynamic_state3",
405 "VK_EXT_subpass_merge_feedback",
406 "VK_ARM_tensors",
407 "VK_EXT_shader_module_identifier",
408 "VK_EXT_rasterization_order_attachment_access",
409 "VK_NV_optical_flow",
410 "VK_EXT_legacy_dithering",
411 "VK_EXT_pipeline_protected_access",
412 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
413 "VK_ANDROID_external_format_resolve",
414 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
415 "VK_KHR_maintenance5",
416 "VK_AMD_anti_lag",
417 #if defined( VK_ENABLE_BETA_EXTENSIONS )
418 "VK_AMDX_dense_geometry_format",
419 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
420 "VK_KHR_present_id2",
421 "VK_KHR_present_wait2",
422 "VK_KHR_ray_tracing_position_fetch",
423 "VK_EXT_shader_object",
424 "VK_KHR_pipeline_binary",
425 "VK_QCOM_tile_properties",
426 "VK_SEC_amigo_profiling",
427 "VK_KHR_swapchain_maintenance1",
428 "VK_QCOM_multiview_per_view_viewports",
429 "VK_NV_ray_tracing_invocation_reorder",
430 "VK_NV_cooperative_vector",
431 "VK_NV_extended_sparse_address_space",
432 "VK_EXT_mutable_descriptor_type",
433 "VK_EXT_legacy_vertex_attributes",
434 "VK_ARM_shader_core_builtins",
435 "VK_EXT_pipeline_library_group_handles",
436 "VK_EXT_dynamic_rendering_unused_attachments",
437 "VK_NV_low_latency2",
438 "VK_KHR_cooperative_matrix",
439 "VK_ARM_data_graph",
440 "VK_QCOM_multiview_per_view_render_areas",
441 "VK_KHR_compute_shader_derivatives",
442 "VK_KHR_video_decode_av1",
443 "VK_KHR_video_encode_av1",
444 "VK_KHR_video_decode_vp9",
445 "VK_KHR_video_maintenance1",
446 "VK_NV_per_stage_descriptor_set",
447 "VK_QCOM_image_processing2",
448 "VK_QCOM_filter_cubic_weights",
449 "VK_QCOM_ycbcr_degamma",
450 "VK_QCOM_filter_cubic_clamp",
451 "VK_EXT_attachment_feedback_loop_dynamic_state",
452 "VK_KHR_vertex_attribute_divisor",
453 "VK_KHR_load_store_op_none",
454 "VK_KHR_unified_image_layouts",
455 "VK_KHR_shader_float_controls2",
456 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
457 "VK_QNX_external_memory_screen_buffer",
458 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
459 "VK_MSFT_layered_driver",
460 "VK_KHR_index_type_uint8",
461 "VK_KHR_line_rasterization",
462 "VK_KHR_calibrated_timestamps",
463 "VK_KHR_shader_expect_assume",
464 "VK_KHR_maintenance6",
465 "VK_NV_descriptor_pool_overallocation",
466 "VK_QCOM_tile_memory_heap",
467 "VK_KHR_copy_memory_indirect",
468 "VK_EXT_memory_decompression",
469 "VK_KHR_video_encode_intra_refresh",
470 "VK_KHR_video_encode_quantization_map",
471 "VK_NV_raw_access_chains",
472 "VK_NV_external_compute_queue",
473 "VK_KHR_shader_relaxed_extended_instruction",
474 "VK_NV_command_buffer_inheritance",
475 "VK_KHR_maintenance7",
476 "VK_NV_shader_atomic_float16_vector",
477 "VK_EXT_shader_replicated_composites",
478 "VK_EXT_shader_float8",
479 "VK_NV_ray_tracing_validation",
480 "VK_NV_cluster_acceleration_structure",
481 "VK_NV_partitioned_acceleration_structure",
482 "VK_EXT_device_generated_commands",
483 "VK_KHR_maintenance8",
484 "VK_MESA_image_alignment_control",
485 "VK_KHR_shader_fma",
486 "VK_EXT_ray_tracing_invocation_reorder",
487 "VK_EXT_depth_clamp_control",
488 "VK_KHR_maintenance9",
489 "VK_KHR_video_maintenance2",
490 #if defined( VK_USE_PLATFORM_OHOS )
491 "VK_OHOS_native_buffer",
492 #endif /*VK_USE_PLATFORM_OHOS*/
493 "VK_HUAWEI_hdr_vivid",
494 "VK_NV_cooperative_matrix2",
495 "VK_ARM_pipeline_opacity_micromap",
496 #if defined( VK_USE_PLATFORM_METAL_EXT )
497 "VK_EXT_external_memory_metal",
498 #endif /*VK_USE_PLATFORM_METAL_EXT*/
499 "VK_KHR_depth_clamp_zero_one",
500 "VK_ARM_performance_counters_by_region",
501 "VK_EXT_vertex_attribute_robustness",
502 "VK_ARM_format_pack",
503 "VK_VALVE_fragment_density_map_layered",
504 "VK_KHR_robustness2",
505 #if defined( VK_ENABLE_BETA_EXTENSIONS )
506 "VK_NV_present_metering",
507 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
508 "VK_EXT_fragment_density_map_offset",
509 "VK_EXT_zero_initialize_device_memory",
510 "VK_KHR_present_mode_fifo_latest_ready",
511 "VK_EXT_shader_64bit_indexing",
512 "VK_EXT_custom_resolve",
513 "VK_QCOM_data_graph_model",
514 "VK_KHR_maintenance10",
515 "VK_SEC_pipeline_cache_incremental_mode",
516 "VK_EXT_shader_uniform_buffer_unsized_array" };
517 return deviceExtensions;
518 }
519
520 VULKAN_HPP_INLINE std::set<std::string> const & getInstanceExtensions()
521 {
522 static const std::set<std::string> instanceExtensions = { "VK_KHR_surface",
523 "VK_KHR_display",
524 #if defined( VK_USE_PLATFORM_XLIB_KHR )
525 "VK_KHR_xlib_surface",
526 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
527 #if defined( VK_USE_PLATFORM_XCB_KHR )
528 "VK_KHR_xcb_surface",
529 #endif /*VK_USE_PLATFORM_XCB_KHR*/
530 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
531 "VK_KHR_wayland_surface",
532 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
533 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
534 "VK_KHR_android_surface",
535 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
536 #if defined( VK_USE_PLATFORM_WIN32_KHR )
537 "VK_KHR_win32_surface",
538 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
539 "VK_EXT_debug_report",
540 #if defined( VK_USE_PLATFORM_GGP )
541 "VK_GGP_stream_descriptor_surface",
542 #endif /*VK_USE_PLATFORM_GGP*/
543 "VK_NV_external_memory_capabilities",
544 "VK_KHR_get_physical_device_properties2",
545 "VK_EXT_validation_flags",
546 #if defined( VK_USE_PLATFORM_VI_NN )
547 "VK_NN_vi_surface",
548 #endif /*VK_USE_PLATFORM_VI_NN*/
549 "VK_KHR_device_group_creation",
550 "VK_KHR_external_memory_capabilities",
551 "VK_KHR_external_semaphore_capabilities",
552 "VK_EXT_direct_mode_display",
553 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
554 "VK_EXT_acquire_xlib_display",
555 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
556 "VK_EXT_display_surface_counter",
557 "VK_EXT_swapchain_colorspace",
558 "VK_KHR_external_fence_capabilities",
559 "VK_KHR_get_surface_capabilities2",
560 "VK_KHR_get_display_properties2",
561 #if defined( VK_USE_PLATFORM_IOS_MVK )
562 "VK_MVK_ios_surface",
563 #endif /*VK_USE_PLATFORM_IOS_MVK*/
564 #if defined( VK_USE_PLATFORM_MACOS_MVK )
565 "VK_MVK_macos_surface",
566 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
567 "VK_EXT_debug_utils",
568 #if defined( VK_USE_PLATFORM_FUCHSIA )
569 "VK_FUCHSIA_imagepipe_surface",
570 #endif /*VK_USE_PLATFORM_FUCHSIA*/
571 #if defined( VK_USE_PLATFORM_METAL_EXT )
572 "VK_EXT_metal_surface",
573 #endif /*VK_USE_PLATFORM_METAL_EXT*/
574 "VK_KHR_surface_protected_capabilities",
575 "VK_EXT_validation_features",
576 "VK_EXT_headless_surface",
577 "VK_EXT_surface_maintenance1",
578 "VK_EXT_acquire_drm_display",
579 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
580 "VK_EXT_directfb_surface",
581 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
582 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
583 "VK_QNX_screen_surface",
584 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
585 "VK_KHR_portability_enumeration",
586 "VK_GOOGLE_surfaceless_query",
587 "VK_LUNARG_direct_driver_loading",
588 "VK_KHR_surface_maintenance1",
589 "VK_EXT_layer_settings",
590 "VK_NV_display_stereo",
591 #if defined( VK_USE_PLATFORM_OHOS )
592 "VK_OHOS_surface"
593 #endif /*VK_USE_PLATFORM_OHOS*/
594 };
595 return instanceExtensions;
596 }
597
598 VULKAN_HPP_INLINE std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension )
599 {
600 static const std::map<std::string, std::vector<std::vector<std::string>>> noDependencies;
601 static const std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> dependencies = {
602 { "VK_KHR_swapchain",
603 { { "VK_VERSION_1_0",
604 { {
605 "VK_KHR_surface",
606 } } } } },
607 { "VK_KHR_display",
608 { { "VK_VERSION_1_0",
609 { {
610 "VK_KHR_surface",
611 } } } } },
612 { "VK_KHR_display_swapchain",
613 { { "VK_VERSION_1_0",
614 { {
615 "VK_KHR_display",
616 "VK_KHR_swapchain",
617 } } } } }
618 #if defined( VK_USE_PLATFORM_XLIB_KHR )
619 ,
620 { "VK_KHR_xlib_surface",
621 { { "VK_VERSION_1_0",
622 { {
623 "VK_KHR_surface",
624 } } } } }
625 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
626 #if defined( VK_USE_PLATFORM_XCB_KHR )
627 ,
628 { "VK_KHR_xcb_surface",
629 { { "VK_VERSION_1_0",
630 { {
631 "VK_KHR_surface",
632 } } } } }
633 #endif /*VK_USE_PLATFORM_XCB_KHR*/
634 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
635 ,
636 { "VK_KHR_wayland_surface",
637 { { "VK_VERSION_1_0",
638 { {
639 "VK_KHR_surface",
640 } } } } }
641 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
642 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
643 ,
644 { "VK_KHR_android_surface",
645 { { "VK_VERSION_1_0",
646 { {
647 "VK_KHR_surface",
648 } } } } }
649 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
650 #if defined( VK_USE_PLATFORM_WIN32_KHR )
651 ,
652 { "VK_KHR_win32_surface",
653 { { "VK_VERSION_1_0",
654 { {
655 "VK_KHR_surface",
656 } } } } }
657 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
658 ,
659 { "VK_EXT_debug_marker",
660 { { "VK_VERSION_1_0",
661 { {
662 "VK_EXT_debug_report",
663 } } } } },
664 { "VK_KHR_video_queue",
665 { { "VK_VERSION_1_1",
666 { {
667 "VK_KHR_synchronization2",
668 } } },
669 { "VK_VERSION_1_3", { {} } } } },
670 { "VK_KHR_video_decode_queue",
671 { { "VK_VERSION_1_0",
672 { {
673 "VK_KHR_synchronization2",
674 "VK_KHR_video_queue",
675 } } },
676 { "VK_VERSION_1_3",
677 { {
678 "VK_KHR_video_queue",
679 } } } } },
680 { "VK_EXT_transform_feedback",
681 { { "VK_VERSION_1_0",
682 { {
683 "VK_KHR_get_physical_device_properties2",
684 } } },
685 { "VK_VERSION_1_1", { {} } } } },
686 { "VK_KHR_video_encode_h264",
687 { { "VK_VERSION_1_0",
688 { {
689 "VK_KHR_video_encode_queue",
690 } } } } },
691 { "VK_KHR_video_encode_h265",
692 { { "VK_VERSION_1_0",
693 { {
694 "VK_KHR_video_encode_queue",
695 } } } } },
696 { "VK_KHR_video_decode_h264",
697 { { "VK_VERSION_1_0",
698 { {
699 "VK_KHR_video_decode_queue",
700 } } } } },
701 { "VK_AMD_texture_gather_bias_lod",
702 { { "VK_VERSION_1_0",
703 { {
704 "VK_KHR_get_physical_device_properties2",
705 } } },
706 { "VK_VERSION_1_1", { {} } } } },
707 { "VK_KHR_dynamic_rendering",
708 { { "VK_VERSION_1_0",
709 { {
710 "VK_KHR_depth_stencil_resolve",
711 "VK_KHR_get_physical_device_properties2",
712 } } },
713 { "VK_VERSION_1_1",
714 { {
715 "VK_KHR_depth_stencil_resolve",
716 } } },
717 { "VK_VERSION_1_2", { {} } } } }
718 #if defined( VK_USE_PLATFORM_GGP )
719 ,
720 { "VK_GGP_stream_descriptor_surface",
721 { { "VK_VERSION_1_0",
722 { {
723 "VK_KHR_surface",
724 } } } } }
725 #endif /*VK_USE_PLATFORM_GGP*/
726 ,
727 { "VK_NV_corner_sampled_image",
728 { { "VK_VERSION_1_0",
729 { {
730 "VK_KHR_get_physical_device_properties2",
731 } } },
732 { "VK_VERSION_1_1", { {} } } } },
733 { "VK_KHR_multiview",
734 { { "VK_VERSION_1_0",
735 { {
736 "VK_KHR_get_physical_device_properties2",
737 } } },
738 { "VK_VERSION_1_1", { {} } } } },
739 { "VK_NV_external_memory",
740 { { "VK_VERSION_1_0",
741 { {
742 "VK_NV_external_memory_capabilities",
743 } } } } }
744 #if defined( VK_USE_PLATFORM_WIN32_KHR )
745 ,
746 { "VK_NV_external_memory_win32",
747 { { "VK_VERSION_1_0",
748 { {
749 "VK_NV_external_memory",
750 } } } } },
751 { "VK_NV_win32_keyed_mutex",
752 { { "VK_VERSION_1_0",
753 { {
754 "VK_NV_external_memory_win32",
755 } } } } }
756 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
757 ,
758 { "VK_KHR_device_group",
759 { { "VK_VERSION_1_0",
760 { {
761 "VK_KHR_device_group_creation",
762 } } } } }
763 #if defined( VK_USE_PLATFORM_VI_NN )
764 ,
765 { "VK_NN_vi_surface",
766 { { "VK_VERSION_1_0",
767 { {
768 "VK_KHR_surface",
769 } } } } }
770 #endif /*VK_USE_PLATFORM_VI_NN*/
771 ,
772 { "VK_EXT_texture_compression_astc_hdr",
773 { { "VK_VERSION_1_0",
774 { {
775 "VK_KHR_get_physical_device_properties2",
776 } } },
777 { "VK_VERSION_1_1", { {} } } } },
778 { "VK_EXT_astc_decode_mode",
779 { { "VK_VERSION_1_0",
780 { {
781 "VK_KHR_get_physical_device_properties2",
782 } } },
783 { "VK_VERSION_1_1", { {} } } } },
784 { "VK_EXT_pipeline_robustness",
785 { { "VK_VERSION_1_0",
786 { {
787 "VK_KHR_get_physical_device_properties2",
788 } } },
789 { "VK_VERSION_1_1", { {} } } } },
790 { "VK_KHR_external_memory_capabilities",
791 { { "VK_VERSION_1_0",
792 { {
793 "VK_KHR_get_physical_device_properties2",
794 } } },
795 { "VK_VERSION_1_1", { {} } } } },
796 { "VK_KHR_external_memory",
797 { { "VK_VERSION_1_0",
798 { {
799 "VK_KHR_external_memory_capabilities",
800 } } },
801 { "VK_VERSION_1_1", { {} } } } }
802 #if defined( VK_USE_PLATFORM_WIN32_KHR )
803 ,
804 { "VK_KHR_external_memory_win32",
805 { { "VK_VERSION_1_0",
806 { {
807 "VK_KHR_external_memory",
808 } } },
809 { "VK_VERSION_1_1", { {} } } } }
810 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
811 ,
812 { "VK_KHR_external_memory_fd",
813 { { "VK_VERSION_1_0",
814 { {
815 "VK_KHR_external_memory",
816 } } },
817 { "VK_VERSION_1_1", { {} } } } }
818 #if defined( VK_USE_PLATFORM_WIN32_KHR )
819 ,
820 { "VK_KHR_win32_keyed_mutex",
821 { { "VK_VERSION_1_0",
822 { {
823 "VK_KHR_external_memory_win32",
824 } } } } }
825 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
826 ,
827 { "VK_KHR_external_semaphore_capabilities",
828 { { "VK_VERSION_1_0",
829 { {
830 "VK_KHR_get_physical_device_properties2",
831 } } },
832 { "VK_VERSION_1_1", { {} } } } },
833 { "VK_KHR_external_semaphore",
834 { { "VK_VERSION_1_0",
835 { {
836 "VK_KHR_external_semaphore_capabilities",
837 } } } } }
838 #if defined( VK_USE_PLATFORM_WIN32_KHR )
839 ,
840 { "VK_KHR_external_semaphore_win32",
841 { { "VK_VERSION_1_0",
842 { {
843 "VK_KHR_external_semaphore",
844 } } } } }
845 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
846 ,
847 { "VK_KHR_external_semaphore_fd",
848 { { "VK_VERSION_1_0",
849 { {
850 "VK_KHR_external_semaphore",
851 } } },
852 { "VK_VERSION_1_1", { {} } } } },
853 { "VK_KHR_push_descriptor",
854 { { "VK_VERSION_1_0",
855 { {
856 "VK_KHR_get_physical_device_properties2",
857 } } },
858 { "VK_VERSION_1_1", { {} } } } },
859 { "VK_EXT_conditional_rendering",
860 { { "VK_VERSION_1_0",
861 { {
862 "VK_KHR_get_physical_device_properties2",
863 } } },
864 { "VK_VERSION_1_1", { {} } } } },
865 { "VK_KHR_shader_float16_int8",
866 { { "VK_VERSION_1_0",
867 { {
868 "VK_KHR_get_physical_device_properties2",
869 } } },
870 { "VK_VERSION_1_1", { {} } } } },
871 { "VK_KHR_16bit_storage",
872 { { "VK_VERSION_1_0",
873 { {
874 "VK_KHR_get_physical_device_properties2",
875 "VK_KHR_storage_buffer_storage_class",
876 } } },
877 { "VK_VERSION_1_1", { {} } } } },
878 { "VK_KHR_incremental_present",
879 { { "VK_VERSION_1_0",
880 { {
881 "VK_KHR_swapchain",
882 } } } } },
883 { "VK_EXT_direct_mode_display",
884 { { "VK_VERSION_1_0",
885 { {
886 "VK_KHR_display",
887 } } } } }
888 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
889 ,
890 { "VK_EXT_acquire_xlib_display",
891 { { "VK_VERSION_1_0",
892 { {
893 "VK_EXT_direct_mode_display",
894 } } } } }
895 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
896 ,
897 { "VK_EXT_display_surface_counter",
898 { { "VK_VERSION_1_0",
899 { {
900 "VK_KHR_display",
901 } } } } },
902 { "VK_EXT_display_control",
903 { { "VK_VERSION_1_0",
904 { {
905 "VK_EXT_display_surface_counter",
906 "VK_KHR_swapchain",
907 } } } } },
908 { "VK_GOOGLE_display_timing",
909 { { "VK_VERSION_1_0",
910 { {
911 "VK_KHR_swapchain",
912 } } } } },
913 { "VK_NVX_multiview_per_view_attributes",
914 { { "VK_VERSION_1_0",
915 { {
916 "VK_KHR_multiview",
917 } } },
918 { "VK_VERSION_1_1", { {} } } } },
919 { "VK_EXT_discard_rectangles",
920 { { "VK_VERSION_1_0",
921 { {
922 "VK_KHR_get_physical_device_properties2",
923 } } },
924 { "VK_VERSION_1_1", { {} } } } },
925 { "VK_EXT_conservative_rasterization",
926 { { "VK_VERSION_1_0",
927 { {
928 "VK_KHR_get_physical_device_properties2",
929 } } },
930 { "VK_VERSION_1_1", { {} } } } },
931 { "VK_EXT_depth_clip_enable",
932 { { "VK_VERSION_1_0",
933 { {
934 "VK_KHR_get_physical_device_properties2",
935 } } },
936 { "VK_VERSION_1_1", { {} } } } },
937 { "VK_EXT_swapchain_colorspace",
938 { { "VK_VERSION_1_0",
939 { {
940 "VK_KHR_surface",
941 } } } } },
942 { "VK_EXT_hdr_metadata",
943 { { "VK_VERSION_1_0",
944 { {
945 "VK_KHR_swapchain",
946 } } } } },
947 { "VK_KHR_imageless_framebuffer",
948 { { "VK_VERSION_1_0",
949 { {
950 "VK_KHR_get_physical_device_properties2",
951 "VK_KHR_image_format_list",
952 "VK_KHR_maintenance2",
953 } } },
954 { "VK_VERSION_1_1",
955 { {
956 "VK_KHR_image_format_list",
957 } } },
958 { "VK_VERSION_1_2", { {} } } } },
959 { "VK_KHR_create_renderpass2",
960 { { "VK_VERSION_1_0",
961 { {
962 "VK_KHR_maintenance2",
963 "VK_KHR_multiview",
964 } } },
965 { "VK_VERSION_1_1", { {} } } } },
966 { "VK_IMG_relaxed_line_rasterization",
967 { { "VK_VERSION_1_0",
968 { {
969 "VK_KHR_get_physical_device_properties2",
970 } } },
971 { "VK_VERSION_1_1", { {} } } } },
972 { "VK_KHR_shared_presentable_image",
973 { { "VK_VERSION_1_0",
974 { {
975 "VK_KHR_get_physical_device_properties2",
976 "VK_KHR_get_surface_capabilities2",
977 "VK_KHR_swapchain",
978 } } },
979 { "VK_VERSION_1_1",
980 { {
981 "VK_KHR_get_surface_capabilities2",
982 "VK_KHR_swapchain",
983 } } } } },
984 { "VK_KHR_external_fence_capabilities",
985 { { "VK_VERSION_1_0",
986 { {
987 "VK_KHR_get_physical_device_properties2",
988 } } },
989 { "VK_VERSION_1_1", { {} } } } },
990 { "VK_KHR_external_fence",
991 { { "VK_VERSION_1_0",
992 { {
993 "VK_KHR_external_fence_capabilities",
994 } } } } }
995 #if defined( VK_USE_PLATFORM_WIN32_KHR )
996 ,
997 { "VK_KHR_external_fence_win32",
998 { { "VK_VERSION_1_0",
999 { {
1000 "VK_KHR_external_fence",
1001 } } } } }
1002 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
1003 ,
1004 { "VK_KHR_external_fence_fd",
1005 { { "VK_VERSION_1_0",
1006 { {
1007 "VK_KHR_external_fence",
1008 } } },
1009 { "VK_VERSION_1_1", { {} } } } },
1010 { "VK_KHR_performance_query",
1011 { { "VK_VERSION_1_0",
1012 { {
1013 "VK_KHR_get_physical_device_properties2",
1014 } } },
1015 { "VK_VERSION_1_1", { {} } } } },
1016 { "VK_KHR_get_surface_capabilities2",
1017 { { "VK_VERSION_1_0",
1018 { {
1019 "VK_KHR_surface",
1020 } } } } },
1021 { "VK_KHR_variable_pointers",
1022 { { "VK_VERSION_1_0",
1023 { {
1024 "VK_KHR_get_physical_device_properties2",
1025 "VK_KHR_storage_buffer_storage_class",
1026 } } },
1027 { "VK_VERSION_1_1", { {} } } } },
1028 { "VK_KHR_get_display_properties2",
1029 { { "VK_VERSION_1_0",
1030 { {
1031 "VK_KHR_display",
1032 } } } } }
1033 #if defined( VK_USE_PLATFORM_IOS_MVK )
1034 ,
1035 { "VK_MVK_ios_surface",
1036 { { "VK_VERSION_1_0",
1037 { {
1038 "VK_KHR_surface",
1039 } } } } }
1040 #endif /*VK_USE_PLATFORM_IOS_MVK*/
1041 #if defined( VK_USE_PLATFORM_MACOS_MVK )
1042 ,
1043 { "VK_MVK_macos_surface",
1044 { { "VK_VERSION_1_0",
1045 { {
1046 "VK_KHR_surface",
1047 } } } } }
1048 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
1049 ,
1050 { "VK_EXT_external_memory_dma_buf",
1051 { { "VK_VERSION_1_0",
1052 { {
1053 "VK_KHR_external_memory_fd",
1054 } } } } },
1055 { "VK_EXT_queue_family_foreign",
1056 { { "VK_VERSION_1_0",
1057 { {
1058 "VK_KHR_external_memory",
1059 } } },
1060 { "VK_VERSION_1_1", { {} } } } },
1061 { "VK_KHR_dedicated_allocation",
1062 { { "VK_VERSION_1_0",
1063 { {
1064 "VK_KHR_get_memory_requirements2",
1065 } } },
1066 { "VK_VERSION_1_1", { {} } } } }
1067 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
1068 ,
1069 { "VK_ANDROID_external_memory_android_hardware_buffer",
1070 { { "VK_VERSION_1_0",
1071 { {
1072 "VK_EXT_queue_family_foreign",
1073 "VK_KHR_dedicated_allocation",
1074 "VK_KHR_external_memory",
1075 "VK_KHR_sampler_ycbcr_conversion",
1076 } } },
1077 { "VK_VERSION_1_1",
1078 { {
1079 "VK_EXT_queue_family_foreign",
1080 } } } } }
1081 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
1082 ,
1083 { "VK_EXT_sampler_filter_minmax",
1084 { { "VK_VERSION_1_0",
1085 { {
1086 "VK_KHR_get_physical_device_properties2",
1087 } } },
1088 { "VK_VERSION_1_1", { {} } } } }
1089 #if defined( VK_ENABLE_BETA_EXTENSIONS )
1090 ,
1091 { "VK_AMDX_shader_enqueue",
1092 { { "VK_VERSION_1_0",
1093 { {
1094 "VK_EXT_extended_dynamic_state",
1095 "VK_KHR_maintenance5",
1096 "VK_KHR_pipeline_library",
1097 "VK_KHR_spirv_1_4",
1098 "VK_KHR_synchronization2",
1099 } } },
1100 { "VK_VERSION_1_3",
1101 { {
1102 "VK_KHR_maintenance5",
1103 "VK_KHR_pipeline_library",
1104 } } } } }
1105 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
1106 ,
1107 { "VK_EXT_inline_uniform_block",
1108 { { "VK_VERSION_1_0",
1109 { {
1110 "VK_KHR_get_physical_device_properties2",
1111 "VK_KHR_maintenance1",
1112 } } },
1113 { "VK_VERSION_1_1", { {} } } } },
1114 { "VK_KHR_shader_bfloat16",
1115 { { "VK_VERSION_1_0",
1116 { {
1117 "VK_KHR_get_physical_device_properties2",
1118 } } },
1119 { "VK_VERSION_1_1", { {} } } } },
1120 { "VK_EXT_sample_locations",
1121 { { "VK_VERSION_1_0",
1122 { {
1123 "VK_KHR_get_physical_device_properties2",
1124 } } },
1125 { "VK_VERSION_1_1", { {} } } } },
1126 { "VK_EXT_blend_operation_advanced",
1127 { { "VK_VERSION_1_0",
1128 { {
1129 "VK_KHR_get_physical_device_properties2",
1130 } } },
1131 { "VK_VERSION_1_1", { {} } } } },
1132 { "VK_KHR_acceleration_structure",
1133 { { "VK_VERSION_1_1",
1134 { {
1135 "VK_EXT_descriptor_indexing",
1136 "VK_KHR_buffer_device_address",
1137 "VK_KHR_deferred_host_operations",
1138 } } },
1139 { "VK_VERSION_1_2",
1140 { {
1141 "VK_KHR_deferred_host_operations",
1142 } } } } },
1143 { "VK_KHR_ray_tracing_pipeline",
1144 { { "VK_VERSION_1_0",
1145 { {
1146 "VK_KHR_acceleration_structure",
1147 "VK_KHR_spirv_1_4",
1148 } } },
1149 { "VK_VERSION_1_2",
1150 { {
1151 "VK_KHR_acceleration_structure",
1152 } } } } },
1153 { "VK_KHR_ray_query",
1154 { { "VK_VERSION_1_0",
1155 { {
1156 "VK_KHR_acceleration_structure",
1157 "VK_KHR_spirv_1_4",
1158 } } },
1159 { "VK_VERSION_1_2",
1160 { {
1161 "VK_KHR_acceleration_structure",
1162 } } } } },
1163 { "VK_NV_shader_sm_builtins", { { "VK_VERSION_1_1", { {} } } } },
1164 { "VK_KHR_sampler_ycbcr_conversion",
1165 { { "VK_VERSION_1_0",
1166 { {
1167 "VK_KHR_bind_memory2",
1168 "VK_KHR_get_memory_requirements2",
1169 "VK_KHR_get_physical_device_properties2",
1170 "VK_KHR_maintenance1",
1171 } } },
1172 { "VK_VERSION_1_1", { {} } } } },
1173 { "VK_EXT_image_drm_format_modifier",
1174 { { "VK_VERSION_1_0",
1175 { {
1176 "VK_KHR_bind_memory2",
1177 "VK_KHR_get_physical_device_properties2",
1178 "VK_KHR_image_format_list",
1179 "VK_KHR_sampler_ycbcr_conversion",
1180 } } },
1181 { "VK_VERSION_1_1",
1182 { {
1183 "VK_KHR_image_format_list",
1184 } } },
1185 { "VK_VERSION_1_2", { {} } } } },
1186 { "VK_EXT_descriptor_indexing",
1187 { { "VK_VERSION_1_0",
1188 { {
1189 "VK_KHR_get_physical_device_properties2",
1190 "VK_KHR_maintenance3",
1191 } } },
1192 { "VK_VERSION_1_1", { {} } } } }
1193 #if defined( VK_ENABLE_BETA_EXTENSIONS )
1194 ,
1195 { "VK_KHR_portability_subset",
1196 { { "VK_VERSION_1_0",
1197 { {
1198 "VK_KHR_get_physical_device_properties2",
1199 } } },
1200 { "VK_VERSION_1_1", { {} } } } }
1201 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
1202 ,
1203 { "VK_NV_shading_rate_image",
1204 { { "VK_VERSION_1_0",
1205 { {
1206 "VK_KHR_get_physical_device_properties2",
1207 } } },
1208 { "VK_VERSION_1_1", { {} } } } },
1209 { "VK_NV_ray_tracing",
1210 { { "VK_VERSION_1_0",
1211 { {
1212 "VK_KHR_get_memory_requirements2",
1213 "VK_KHR_get_physical_device_properties2",
1214 } } },
1215 { "VK_VERSION_1_1", { {} } } } },
1216 { "VK_NV_representative_fragment_test",
1217 { { "VK_VERSION_1_0",
1218 { {
1219 "VK_KHR_get_physical_device_properties2",
1220 } } },
1221 { "VK_VERSION_1_1", { {} } } } },
1222 { "VK_KHR_maintenance3",
1223 { { "VK_VERSION_1_0",
1224 { {
1225 "VK_KHR_get_physical_device_properties2",
1226 } } },
1227 { "VK_VERSION_1_1", { {} } } } },
1228 { "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { {} } } } },
1229 { "VK_KHR_8bit_storage",
1230 { { "VK_VERSION_1_0",
1231 { {
1232 "VK_KHR_get_physical_device_properties2",
1233 "VK_KHR_storage_buffer_storage_class",
1234 } } },
1235 { "VK_VERSION_1_1", { {} } } } },
1236 { "VK_EXT_external_memory_host",
1237 { { "VK_VERSION_1_0",
1238 { {
1239 "VK_KHR_external_memory",
1240 } } },
1241 { "VK_VERSION_1_1", { {} } } } },
1242 { "VK_KHR_shader_atomic_int64",
1243 { { "VK_VERSION_1_0",
1244 { {
1245 "VK_KHR_get_physical_device_properties2",
1246 } } },
1247 { "VK_VERSION_1_1", { {} } } } },
1248 { "VK_KHR_shader_clock",
1249 { { "VK_VERSION_1_0",
1250 { {
1251 "VK_KHR_get_physical_device_properties2",
1252 } } },
1253 { "VK_VERSION_1_1", { {} } } } },
1254 { "VK_EXT_calibrated_timestamps",
1255 { { "VK_VERSION_1_0",
1256 { {
1257 "VK_KHR_get_physical_device_properties2",
1258 } } },
1259 { "VK_VERSION_1_1", { {} } } } },
1260 { "VK_AMD_shader_core_properties",
1261 { { "VK_VERSION_1_0",
1262 { {
1263 "VK_KHR_get_physical_device_properties2",
1264 } } },
1265 { "VK_VERSION_1_1", { {} } } } },
1266 { "VK_KHR_video_decode_h265",
1267 { { "VK_VERSION_1_0",
1268 { {
1269 "VK_KHR_video_decode_queue",
1270 } } } } },
1271 { "VK_KHR_global_priority",
1272 { { "VK_VERSION_1_0",
1273 { {
1274 "VK_KHR_get_physical_device_properties2",
1275 } } },
1276 { "VK_VERSION_1_1", { {} } } } },
1277 { "VK_EXT_vertex_attribute_divisor",
1278 { { "VK_VERSION_1_0",
1279 { {
1280 "VK_KHR_get_physical_device_properties2",
1281 } } },
1282 { "VK_VERSION_1_1", { {} } } } }
1283 #if defined( VK_USE_PLATFORM_GGP )
1284 ,
1285 { "VK_GGP_frame_token",
1286 { { "VK_VERSION_1_0",
1287 { {
1288 "VK_GGP_stream_descriptor_surface",
1289 "VK_KHR_swapchain",
1290 } } } } }
1291 #endif /*VK_USE_PLATFORM_GGP*/
1292 ,
1293 { "VK_KHR_driver_properties",
1294 { { "VK_VERSION_1_0",
1295 { {
1296 "VK_KHR_get_physical_device_properties2",
1297 } } },
1298 { "VK_VERSION_1_1", { {} } } } },
1299 { "VK_KHR_shader_float_controls",
1300 { { "VK_VERSION_1_0",
1301 { {
1302 "VK_KHR_get_physical_device_properties2",
1303 } } },
1304 { "VK_VERSION_1_1", { {} } } } },
1305 { "VK_NV_shader_subgroup_partitioned", { { "VK_VERSION_1_1", { {} } } } },
1306 { "VK_KHR_depth_stencil_resolve",
1307 { { "VK_VERSION_1_0",
1308 { {
1309 "VK_KHR_create_renderpass2",
1310 } } },
1311 { "VK_VERSION_1_2", { {} } } } },
1312 { "VK_KHR_swapchain_mutable_format",
1313 { { "VK_VERSION_1_0",
1314 { {
1315 "VK_KHR_image_format_list",
1316 "VK_KHR_maintenance2",
1317 "VK_KHR_swapchain",
1318 } } },
1319 { "VK_VERSION_1_1",
1320 { {
1321 "VK_KHR_image_format_list",
1322 "VK_KHR_swapchain",
1323 } } },
1324 { "VK_VERSION_1_2",
1325 { {
1326 "VK_KHR_swapchain",
1327 } } } } },
1328 { "VK_NV_compute_shader_derivatives",
1329 { { "VK_VERSION_1_0",
1330 { {
1331 "VK_KHR_get_physical_device_properties2",
1332 } } },
1333 { "VK_VERSION_1_1", { {} } } } },
1334 { "VK_NV_mesh_shader",
1335 { { "VK_VERSION_1_0",
1336 { {
1337 "VK_KHR_get_physical_device_properties2",
1338 } } },
1339 { "VK_VERSION_1_1", { {} } } } },
1340 { "VK_NV_fragment_shader_barycentric",
1341 { { "VK_VERSION_1_0",
1342 { {
1343 "VK_KHR_get_physical_device_properties2",
1344 } } },
1345 { "VK_VERSION_1_1", { {} } } } },
1346 { "VK_NV_shader_image_footprint",
1347 { { "VK_VERSION_1_0",
1348 { {
1349 "VK_KHR_get_physical_device_properties2",
1350 } } },
1351 { "VK_VERSION_1_1", { {} } } } },
1352 { "VK_NV_scissor_exclusive",
1353 { { "VK_VERSION_1_0",
1354 { {
1355 "VK_KHR_get_physical_device_properties2",
1356 } } },
1357 { "VK_VERSION_1_1", { {} } } } },
1358 { "VK_NV_device_diagnostic_checkpoints",
1359 { { "VK_VERSION_1_0",
1360 { {
1361 "VK_KHR_get_physical_device_properties2",
1362 } } },
1363 { "VK_VERSION_1_1", { {} } } } },
1364 { "VK_KHR_timeline_semaphore",
1365 { { "VK_VERSION_1_0",
1366 { {
1367 "VK_KHR_get_physical_device_properties2",
1368 } } },
1369 { "VK_VERSION_1_1", { {} } } } },
1370 { "VK_INTEL_shader_integer_functions2",
1371 { { "VK_VERSION_1_0",
1372 { {
1373 "VK_KHR_get_physical_device_properties2",
1374 } } },
1375 { "VK_VERSION_1_1", { {} } } } },
1376 { "VK_KHR_vulkan_memory_model",
1377 { { "VK_VERSION_1_0",
1378 { {
1379 "VK_KHR_get_physical_device_properties2",
1380 } } },
1381 { "VK_VERSION_1_1", { {} } } } },
1382 { "VK_EXT_pci_bus_info",
1383 { { "VK_VERSION_1_0",
1384 { {
1385 "VK_KHR_get_physical_device_properties2",
1386 } } },
1387 { "VK_VERSION_1_1", { {} } } } },
1388 { "VK_AMD_display_native_hdr",
1389 { { "VK_VERSION_1_0",
1390 { {
1391 "VK_KHR_get_physical_device_properties2",
1392 "VK_KHR_get_surface_capabilities2",
1393 "VK_KHR_swapchain",
1394 } } },
1395 { "VK_VERSION_1_1",
1396 { {
1397 "VK_KHR_get_surface_capabilities2",
1398 "VK_KHR_swapchain",
1399 } } } } }
1400 #if defined( VK_USE_PLATFORM_FUCHSIA )
1401 ,
1402 { "VK_FUCHSIA_imagepipe_surface",
1403 { { "VK_VERSION_1_0",
1404 { {
1405 "VK_KHR_surface",
1406 } } } } }
1407 #endif /*VK_USE_PLATFORM_FUCHSIA*/
1408 ,
1409 { "VK_KHR_shader_terminate_invocation",
1410 { { "VK_VERSION_1_0",
1411 { {
1412 "VK_KHR_get_physical_device_properties2",
1413 } } },
1414 { "VK_VERSION_1_1", { {} } } } }
1415 #if defined( VK_USE_PLATFORM_METAL_EXT )
1416 ,
1417 { "VK_EXT_metal_surface",
1418 { { "VK_VERSION_1_0",
1419 { {
1420 "VK_KHR_surface",
1421 } } } } }
1422 #endif /*VK_USE_PLATFORM_METAL_EXT*/
1423 ,
1424 { "VK_EXT_fragment_density_map",
1425 { { "VK_VERSION_1_0",
1426 { {
1427 "VK_KHR_get_physical_device_properties2",
1428 } } },
1429 { "VK_VERSION_1_1", { {} } } } },
1430 { "VK_EXT_scalar_block_layout",
1431 { { "VK_VERSION_1_0",
1432 { {
1433 "VK_KHR_get_physical_device_properties2",
1434 } } },
1435 { "VK_VERSION_1_1", { {} } } } },
1436 { "VK_EXT_subgroup_size_control", { { "VK_VERSION_1_1", { {} } } } },
1437 { "VK_KHR_fragment_shading_rate",
1438 { { "VK_VERSION_1_0",
1439 { {
1440 "VK_KHR_create_renderpass2",
1441 "VK_KHR_get_physical_device_properties2",
1442 } } },
1443 { "VK_VERSION_1_1",
1444 { {
1445 "VK_KHR_create_renderpass2",
1446 } } },
1447 { "VK_VERSION_1_2", { {} } } } },
1448 { "VK_AMD_shader_core_properties2",
1449 { { "VK_VERSION_1_0",
1450 { {
1451 "VK_AMD_shader_core_properties",
1452 } } } } },
1453 { "VK_AMD_device_coherent_memory",
1454 { { "VK_VERSION_1_0",
1455 { {
1456 "VK_KHR_get_physical_device_properties2",
1457 } } },
1458 { "VK_VERSION_1_1", { {} } } } },
1459 { "VK_KHR_dynamic_rendering_local_read",
1460 { { "VK_VERSION_1_0",
1461 { {
1462 "VK_KHR_dynamic_rendering",
1463 } } },
1464 { "VK_VERSION_1_3", { {} } } } },
1465 { "VK_EXT_shader_image_atomic_int64",
1466 { { "VK_VERSION_1_0",
1467 { {
1468 "VK_KHR_get_physical_device_properties2",
1469 } } },
1470 { "VK_VERSION_1_1", { {} } } } },
1471 { "VK_KHR_shader_quad_control",
1472 { { "VK_VERSION_1_1",
1473 { {
1474 "VK_KHR_shader_maximal_reconvergence",
1475 "VK_KHR_vulkan_memory_model",
1476 } } },
1477 { "VK_VERSION_1_2",
1478 { {
1479 "VK_KHR_shader_maximal_reconvergence",
1480 } } } } },
1481 { "VK_KHR_spirv_1_4",
1482 { { "VK_VERSION_1_1",
1483 { {
1484 "VK_KHR_shader_float_controls",
1485 } } } } },
1486 { "VK_EXT_memory_budget",
1487 { { "VK_VERSION_1_0",
1488 { {
1489 "VK_KHR_get_physical_device_properties2",
1490 } } },
1491 { "VK_VERSION_1_1", { {} } } } },
1492 { "VK_EXT_memory_priority",
1493 { { "VK_VERSION_1_0",
1494 { {
1495 "VK_KHR_get_physical_device_properties2",
1496 } } },
1497 { "VK_VERSION_1_1", { {} } } } },
1498 { "VK_KHR_surface_protected_capabilities",
1499 { { "VK_VERSION_1_1",
1500 { {
1501 "VK_KHR_get_surface_capabilities2",
1502 } } } } },
1503 { "VK_NV_dedicated_allocation_image_aliasing",
1504 { { "VK_VERSION_1_0",
1505 { {
1506 "VK_KHR_dedicated_allocation",
1507 "VK_KHR_get_physical_device_properties2",
1508 } } },
1509 { "VK_VERSION_1_1", { {} } } } },
1510 { "VK_KHR_separate_depth_stencil_layouts",
1511 { { "VK_VERSION_1_0",
1512 { {
1513 "VK_KHR_create_renderpass2",
1514 "VK_KHR_get_physical_device_properties2",
1515 } } },
1516 { "VK_VERSION_1_1",
1517 { {
1518 "VK_KHR_create_renderpass2",
1519 } } },
1520 { "VK_VERSION_1_2", { {} } } } },
1521 { "VK_EXT_buffer_device_address",
1522 { { "VK_VERSION_1_0",
1523 { {
1524 "VK_KHR_get_physical_device_properties2",
1525 } } },
1526 { "VK_VERSION_1_1", { {} } } } },
1527 { "VK_KHR_present_wait",
1528 { { "VK_VERSION_1_0",
1529 { {
1530 "VK_KHR_present_id",
1531 "VK_KHR_swapchain",
1532 } } } } },
1533 { "VK_NV_cooperative_matrix",
1534 { { "VK_VERSION_1_0",
1535 { {
1536 "VK_KHR_get_physical_device_properties2",
1537 } } },
1538 { "VK_VERSION_1_1", { {} } } } },
1539 { "VK_NV_coverage_reduction_mode",
1540 { { "VK_VERSION_1_0",
1541 { {
1542 "VK_KHR_get_physical_device_properties2",
1543 "VK_NV_framebuffer_mixed_samples",
1544 } } },
1545 { "VK_VERSION_1_1",
1546 { {
1547 "VK_NV_framebuffer_mixed_samples",
1548 } } } } },
1549 { "VK_EXT_fragment_shader_interlock",
1550 { { "VK_VERSION_1_0",
1551 { {
1552 "VK_KHR_get_physical_device_properties2",
1553 } } },
1554 { "VK_VERSION_1_1", { {} } } } },
1555 { "VK_EXT_ycbcr_image_arrays",
1556 { { "VK_VERSION_1_0",
1557 { {
1558 "VK_KHR_sampler_ycbcr_conversion",
1559 } } },
1560 { "VK_VERSION_1_1", { {} } } } },
1561 { "VK_KHR_uniform_buffer_standard_layout",
1562 { { "VK_VERSION_1_0",
1563 { {
1564 "VK_KHR_get_physical_device_properties2",
1565 } } },
1566 { "VK_VERSION_1_1", { {} } } } },
1567 { "VK_EXT_provoking_vertex",
1568 { { "VK_VERSION_1_0",
1569 { {
1570 "VK_KHR_get_physical_device_properties2",
1571 } } },
1572 { "VK_VERSION_1_1", { {} } } } }
1573 #if defined( VK_USE_PLATFORM_WIN32_KHR )
1574 ,
1575 { "VK_EXT_full_screen_exclusive",
1576 { { "VK_VERSION_1_0",
1577 { {
1578 "VK_KHR_get_physical_device_properties2",
1579 "VK_KHR_get_surface_capabilities2",
1580 "VK_KHR_surface",
1581 "VK_KHR_swapchain",
1582 } } },
1583 { "VK_VERSION_1_1",
1584 { {
1585 "VK_KHR_get_surface_capabilities2",
1586 "VK_KHR_surface",
1587 "VK_KHR_swapchain",
1588 } } } } }
1589 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
1590 ,
1591 { "VK_EXT_headless_surface",
1592 { { "VK_VERSION_1_0",
1593 { {
1594 "VK_KHR_surface",
1595 } } } } },
1596 { "VK_KHR_buffer_device_address",
1597 { { "VK_VERSION_1_0",
1598 { {
1599 "VK_KHR_device_group",
1600 "VK_KHR_get_physical_device_properties2",
1601 } } },
1602 { "VK_VERSION_1_1", { {} } } } },
1603 { "VK_EXT_line_rasterization",
1604 { { "VK_VERSION_1_0",
1605 { {
1606 "VK_KHR_get_physical_device_properties2",
1607 } } },
1608 { "VK_VERSION_1_1", { {} } } } },
1609 { "VK_EXT_shader_atomic_float",
1610 { { "VK_VERSION_1_0",
1611 { {
1612 "VK_KHR_get_physical_device_properties2",
1613 } } },
1614 { "VK_VERSION_1_1", { {} } } } },
1615 { "VK_EXT_host_query_reset",
1616 { { "VK_VERSION_1_0",
1617 { {
1618 "VK_KHR_get_physical_device_properties2",
1619 } } },
1620 { "VK_VERSION_1_1", { {} } } } },
1621 { "VK_EXT_index_type_uint8",
1622 { { "VK_VERSION_1_0",
1623 { {
1624 "VK_KHR_get_physical_device_properties2",
1625 } } },
1626 { "VK_VERSION_1_1", { {} } } } },
1627 { "VK_EXT_extended_dynamic_state",
1628 { { "VK_VERSION_1_0",
1629 { {
1630 "VK_KHR_get_physical_device_properties2",
1631 } } },
1632 { "VK_VERSION_1_1", { {} } } } },
1633 { "VK_KHR_pipeline_executable_properties",
1634 { { "VK_VERSION_1_0",
1635 { {
1636 "VK_KHR_get_physical_device_properties2",
1637 } } },
1638 { "VK_VERSION_1_1", { {} } } } },
1639 { "VK_EXT_host_image_copy",
1640 { { "VK_VERSION_1_0",
1641 { {
1642 "VK_KHR_copy_commands2",
1643 "VK_KHR_format_feature_flags2",
1644 "VK_KHR_get_physical_device_properties2",
1645 } } },
1646 { "VK_VERSION_1_1",
1647 { {
1648 "VK_KHR_copy_commands2",
1649 "VK_KHR_format_feature_flags2",
1650 } } },
1651 { "VK_VERSION_1_3", { {} } } } },
1652 { "VK_EXT_map_memory_placed",
1653 { { "VK_VERSION_1_0",
1654 { {
1655 "VK_KHR_map_memory2",
1656 } } },
1657 { "VK_VERSION_1_4", { {} } } } },
1658 { "VK_EXT_shader_atomic_float2",
1659 { { "VK_VERSION_1_0",
1660 { {
1661 "VK_EXT_shader_atomic_float",
1662 } } } } },
1663 { "VK_EXT_surface_maintenance1",
1664 { { "VK_VERSION_1_0",
1665 { {
1666 "VK_KHR_get_surface_capabilities2",
1667 "VK_KHR_surface",
1668 } } } } },
1669 { "VK_EXT_swapchain_maintenance1",
1670 { { "VK_VERSION_1_0",
1671 { {
1672 "VK_EXT_surface_maintenance1",
1673 "VK_KHR_get_physical_device_properties2",
1674 "VK_KHR_swapchain",
1675 } } },
1676 { "VK_VERSION_1_1",
1677 { {
1678 "VK_EXT_surface_maintenance1",
1679 "VK_KHR_swapchain",
1680 } } } } },
1681 { "VK_EXT_shader_demote_to_helper_invocation",
1682 { { "VK_VERSION_1_0",
1683 { {
1684 "VK_KHR_get_physical_device_properties2",
1685 } } },
1686 { "VK_VERSION_1_1", { {} } } } },
1687 { "VK_NV_device_generated_commands",
1688 { { "VK_VERSION_1_1",
1689 { {
1690 "VK_KHR_buffer_device_address",
1691 } } },
1692 { "VK_VERSION_1_2", { {} } } } },
1693 { "VK_NV_inherited_viewport_scissor",
1694 { { "VK_VERSION_1_0",
1695 { {
1696 "VK_KHR_get_physical_device_properties2",
1697 } } },
1698 { "VK_VERSION_1_1", { {} } } } },
1699 { "VK_KHR_shader_integer_dot_product",
1700 { { "VK_VERSION_1_0",
1701 { {
1702 "VK_KHR_get_physical_device_properties2",
1703 } } },
1704 { "VK_VERSION_1_1", { {} } } } },
1705 { "VK_EXT_texel_buffer_alignment",
1706 { { "VK_VERSION_1_0",
1707 { {
1708 "VK_KHR_get_physical_device_properties2",
1709 } } },
1710 { "VK_VERSION_1_1", { {} } } } },
1711 { "VK_EXT_depth_bias_control",
1712 { { "VK_VERSION_1_0",
1713 { {
1714 "VK_KHR_get_physical_device_properties2",
1715 } } },
1716 { "VK_VERSION_1_1", { {} } } } },
1717 { "VK_EXT_device_memory_report",
1718 { { "VK_VERSION_1_0",
1719 { {
1720 "VK_KHR_get_physical_device_properties2",
1721 } } },
1722 { "VK_VERSION_1_1", { {} } } } },
1723 { "VK_EXT_acquire_drm_display",
1724 { { "VK_VERSION_1_0",
1725 { {
1726 "VK_EXT_direct_mode_display",
1727 } } } } },
1728 { "VK_EXT_robustness2",
1729 { { "VK_VERSION_1_0",
1730 { {
1731 "VK_KHR_get_physical_device_properties2",
1732 } } },
1733 { "VK_VERSION_1_1", { {} } } } },
1734 { "VK_EXT_custom_border_color",
1735 { { "VK_VERSION_1_0",
1736 { {
1737 "VK_KHR_get_physical_device_properties2",
1738 } } },
1739 { "VK_VERSION_1_1", { {} } } } },
1740 { "VK_NV_present_barrier",
1741 { { "VK_VERSION_1_0",
1742 { {
1743 "VK_KHR_get_physical_device_properties2",
1744 "VK_KHR_get_surface_capabilities2",
1745 "VK_KHR_surface",
1746 "VK_KHR_swapchain",
1747 } } },
1748 { "VK_VERSION_1_1",
1749 { {
1750 "VK_KHR_get_surface_capabilities2",
1751 "VK_KHR_surface",
1752 "VK_KHR_swapchain",
1753 } } } } },
1754 { "VK_KHR_present_id",
1755 { { "VK_VERSION_1_0",
1756 { {
1757 "VK_KHR_get_physical_device_properties2",
1758 "VK_KHR_swapchain",
1759 } } },
1760 { "VK_VERSION_1_1", { {} } } } },
1761 { "VK_EXT_private_data",
1762 { { "VK_VERSION_1_0",
1763 { {
1764 "VK_KHR_get_physical_device_properties2",
1765 } } },
1766 { "VK_VERSION_1_1", { {} } } } },
1767 { "VK_EXT_pipeline_creation_cache_control",
1768 { { "VK_VERSION_1_0",
1769 { {
1770 "VK_KHR_get_physical_device_properties2",
1771 } } },
1772 { "VK_VERSION_1_1", { {} } } } },
1773 { "VK_KHR_video_encode_queue",
1774 { { "VK_VERSION_1_0",
1775 { {
1776 "VK_KHR_synchronization2",
1777 "VK_KHR_video_queue",
1778 } } },
1779 { "VK_VERSION_1_3",
1780 { {
1781 "VK_KHR_video_queue",
1782 } } } } },
1783 { "VK_NV_device_diagnostics_config",
1784 { { "VK_VERSION_1_0",
1785 { {
1786 "VK_KHR_get_physical_device_properties2",
1787 } } },
1788 { "VK_VERSION_1_1", { {} } } } }
1789 #if defined( VK_ENABLE_BETA_EXTENSIONS )
1790 ,
1791 { "VK_NV_cuda_kernel_launch",
1792 { { "VK_VERSION_1_0",
1793 { {
1794 "VK_KHR_get_physical_device_properties2",
1795 } } },
1796 { "VK_VERSION_1_1", { {} } } } }
1797 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
1798 ,
1799 { "VK_QCOM_tile_shading",
1800 { { "VK_VERSION_1_0",
1801 { {
1802 "VK_QCOM_tile_properties",
1803 },
1804 {
1805 "VK_KHR_get_physical_device_properties2",
1806 } } } } },
1807 { "VK_KHR_synchronization2",
1808 { { "VK_VERSION_1_0",
1809 { {
1810 "VK_KHR_get_physical_device_properties2",
1811 } } },
1812 { "VK_VERSION_1_1", { {} } } } },
1813 { "VK_EXT_descriptor_buffer",
1814 { { "VK_VERSION_1_0",
1815 { {
1816 "VK_EXT_descriptor_indexing",
1817 "VK_KHR_buffer_device_address",
1818 "VK_KHR_get_physical_device_properties2",
1819 "VK_KHR_synchronization2",
1820 } } },
1821 { "VK_VERSION_1_1",
1822 { {
1823 "VK_EXT_descriptor_indexing",
1824 "VK_KHR_buffer_device_address",
1825 "VK_KHR_synchronization2",
1826 } } },
1827 { "VK_VERSION_1_2",
1828 { {
1829 "VK_KHR_synchronization2",
1830 } } },
1831 { "VK_VERSION_1_3", { {} } } } },
1832 { "VK_EXT_graphics_pipeline_library",
1833 { { "VK_VERSION_1_0",
1834 { {
1835 "VK_KHR_get_physical_device_properties2",
1836 "VK_KHR_pipeline_library",
1837 } } },
1838 { "VK_VERSION_1_1",
1839 { {
1840 "VK_KHR_pipeline_library",
1841 } } } } },
1842 { "VK_AMD_shader_early_and_late_fragment_tests",
1843 { { "VK_VERSION_1_0",
1844 { {
1845 "VK_KHR_get_physical_device_properties2",
1846 } } },
1847 { "VK_VERSION_1_1", { {} } } } },
1848 { "VK_KHR_fragment_shader_barycentric",
1849 { { "VK_VERSION_1_0",
1850 { {
1851 "VK_KHR_get_physical_device_properties2",
1852 } } },
1853 { "VK_VERSION_1_1", { {} } } } },
1854 { "VK_KHR_shader_subgroup_uniform_control_flow", { { "VK_VERSION_1_1", { {} } } } },
1855 { "VK_KHR_zero_initialize_workgroup_memory",
1856 { { "VK_VERSION_1_0",
1857 { {
1858 "VK_KHR_get_physical_device_properties2",
1859 } } },
1860 { "VK_VERSION_1_1", { {} } } } },
1861 { "VK_NV_fragment_shading_rate_enums",
1862 { { "VK_VERSION_1_0",
1863 { {
1864 "VK_KHR_fragment_shading_rate",
1865 } } } } },
1866 { "VK_NV_ray_tracing_motion_blur",
1867 { { "VK_VERSION_1_0",
1868 { {
1869 "VK_KHR_ray_tracing_pipeline",
1870 } } } } },
1871 { "VK_EXT_mesh_shader",
1872 { { "VK_VERSION_1_0",
1873 { {
1874 "VK_KHR_spirv_1_4",
1875 } } },
1876 { "VK_VERSION_1_2", { {} } } } },
1877 { "VK_EXT_ycbcr_2plane_444_formats",
1878 { { "VK_VERSION_1_0",
1879 { {
1880 "VK_KHR_sampler_ycbcr_conversion",
1881 } } },
1882 { "VK_VERSION_1_1", { {} } } } },
1883 { "VK_EXT_fragment_density_map2",
1884 { { "VK_VERSION_1_0",
1885 { {
1886 "VK_EXT_fragment_density_map",
1887 } } } } },
1888 { "VK_QCOM_rotated_copy_commands",
1889 { { "VK_VERSION_1_0",
1890 { {
1891 "VK_KHR_copy_commands2",
1892 } } },
1893 { "VK_VERSION_1_3", { {} } } } },
1894 { "VK_EXT_image_robustness",
1895 { { "VK_VERSION_1_0",
1896 { {
1897 "VK_KHR_get_physical_device_properties2",
1898 } } },
1899 { "VK_VERSION_1_1", { {} } } } },
1900 { "VK_KHR_workgroup_memory_explicit_layout",
1901 { { "VK_VERSION_1_0",
1902 { {
1903 "VK_KHR_get_physical_device_properties2",
1904 } } },
1905 { "VK_VERSION_1_1", { {} } } } },
1906 { "VK_KHR_copy_commands2",
1907 { { "VK_VERSION_1_0",
1908 { {
1909 "VK_KHR_get_physical_device_properties2",
1910 } } },
1911 { "VK_VERSION_1_1", { {} } } } },
1912 { "VK_EXT_image_compression_control",
1913 { { "VK_VERSION_1_0",
1914 { {
1915 "VK_KHR_get_physical_device_properties2",
1916 } } },
1917 { "VK_VERSION_1_1", { {} } } } },
1918 { "VK_EXT_attachment_feedback_loop_layout",
1919 { { "VK_VERSION_1_0",
1920 { {
1921 "VK_KHR_get_physical_device_properties2",
1922 } } },
1923 { "VK_VERSION_1_1", { {} } } } },
1924 { "VK_EXT_4444_formats",
1925 { { "VK_VERSION_1_0",
1926 { {
1927 "VK_KHR_get_physical_device_properties2",
1928 } } },
1929 { "VK_VERSION_1_1", { {} } } } },
1930 { "VK_EXT_device_fault",
1931 { { "VK_VERSION_1_0",
1932 { {
1933 "VK_KHR_get_physical_device_properties2",
1934 } } },
1935 { "VK_VERSION_1_1", { {} } } } },
1936 { "VK_ARM_rasterization_order_attachment_access",
1937 { { "VK_VERSION_1_0",
1938 { {
1939 "VK_KHR_get_physical_device_properties2",
1940 } } },
1941 { "VK_VERSION_1_1", { {} } } } },
1942 { "VK_EXT_rgba10x6_formats",
1943 { { "VK_VERSION_1_0",
1944 { {
1945 "VK_KHR_sampler_ycbcr_conversion",
1946 } } },
1947 { "VK_VERSION_1_1", { {} } } } }
1948 #if defined( VK_USE_PLATFORM_WIN32_KHR )
1949 ,
1950 { "VK_NV_acquire_winrt_display",
1951 { { "VK_VERSION_1_0",
1952 { {
1953 "VK_EXT_direct_mode_display",
1954 } } } } }
1955 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
1956 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
1957 ,
1958 { "VK_EXT_directfb_surface",
1959 { { "VK_VERSION_1_0",
1960 { {
1961 "VK_KHR_surface",
1962 } } } } }
1963 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
1964 ,
1965 { "VK_VALVE_mutable_descriptor_type",
1966 { { "VK_VERSION_1_0",
1967 { {
1968 "VK_KHR_maintenance3",
1969 } } } } },
1970 { "VK_EXT_vertex_input_dynamic_state",
1971 { { "VK_VERSION_1_0",
1972 { {
1973 "VK_KHR_get_physical_device_properties2",
1974 } } },
1975 { "VK_VERSION_1_1", { {} } } } },
1976 { "VK_EXT_physical_device_drm",
1977 { { "VK_VERSION_1_0",
1978 { {
1979 "VK_KHR_get_physical_device_properties2",
1980 } } },
1981 { "VK_VERSION_1_1", { {} } } } },
1982 { "VK_EXT_device_address_binding_report",
1983 { { "VK_VERSION_1_0",
1984 { {
1985 "VK_EXT_debug_utils",
1986 "VK_KHR_get_physical_device_properties2",
1987 } } },
1988 { "VK_VERSION_1_1",
1989 { {
1990 "VK_EXT_debug_utils",
1991 } } } } },
1992 { "VK_EXT_depth_clip_control",
1993 { { "VK_VERSION_1_0",
1994 { {
1995 "VK_KHR_get_physical_device_properties2",
1996 } } },
1997 { "VK_VERSION_1_1", { {} } } } },
1998 { "VK_EXT_primitive_topology_list_restart",
1999 { { "VK_VERSION_1_0",
2000 { {
2001 "VK_KHR_get_physical_device_properties2",
2002 } } },
2003 { "VK_VERSION_1_1", { {} } } } },
2004 { "VK_KHR_format_feature_flags2",
2005 { { "VK_VERSION_1_0",
2006 { {
2007 "VK_KHR_get_physical_device_properties2",
2008 } } },
2009 { "VK_VERSION_1_1", { {} } } } },
2010 { "VK_EXT_present_mode_fifo_latest_ready",
2011 { { "VK_VERSION_1_0",
2012 { {
2013 "VK_KHR_swapchain",
2014 } } } } }
2015 #if defined( VK_USE_PLATFORM_FUCHSIA )
2016 ,
2017 { "VK_FUCHSIA_external_memory",
2018 { { "VK_VERSION_1_0",
2019 { {
2020 "VK_KHR_external_memory",
2021 "VK_KHR_external_memory_capabilities",
2022 } } },
2023 { "VK_VERSION_1_1", { {} } } } },
2024 { "VK_FUCHSIA_external_semaphore",
2025 { { "VK_VERSION_1_0",
2026 { {
2027 "VK_KHR_external_semaphore",
2028 "VK_KHR_external_semaphore_capabilities",
2029 } } } } },
2030 { "VK_FUCHSIA_buffer_collection",
2031 { { "VK_VERSION_1_0",
2032 { {
2033 "VK_FUCHSIA_external_memory",
2034 "VK_KHR_sampler_ycbcr_conversion",
2035 } } },
2036 { "VK_VERSION_1_1",
2037 { {
2038 "VK_FUCHSIA_external_memory",
2039 } } } } }
2040 #endif /*VK_USE_PLATFORM_FUCHSIA*/
2041 ,
2042 { "VK_HUAWEI_subpass_shading",
2043 { { "VK_VERSION_1_0",
2044 { {
2045 "VK_KHR_create_renderpass2",
2046 "VK_KHR_synchronization2",
2047 } } },
2048 { "VK_VERSION_1_2",
2049 { {
2050 "VK_KHR_synchronization2",
2051 } } },
2052 { "VK_VERSION_1_3", { {} } } } },
2053 { "VK_HUAWEI_invocation_mask",
2054 { { "VK_VERSION_1_0",
2055 { {
2056 "VK_KHR_ray_tracing_pipeline",
2057 "VK_KHR_synchronization2",
2058 } } },
2059 { "VK_VERSION_1_3",
2060 { {
2061 "VK_KHR_ray_tracing_pipeline",
2062 } } } } },
2063 { "VK_NV_external_memory_rdma",
2064 { { "VK_VERSION_1_0",
2065 { {
2066 "VK_KHR_external_memory",
2067 } } },
2068 { "VK_VERSION_1_1", { {} } } } },
2069 { "VK_EXT_pipeline_properties",
2070 { { "VK_VERSION_1_0",
2071 { {
2072 "VK_KHR_get_physical_device_properties2",
2073 } } },
2074 { "VK_VERSION_1_1", { {} } } } },
2075 { "VK_EXT_frame_boundary",
2076 { { "VK_VERSION_1_0",
2077 { {
2078 "VK_KHR_get_physical_device_properties2",
2079 } } },
2080 { "VK_VERSION_1_1", { {} } } } },
2081 { "VK_EXT_multisampled_render_to_single_sampled",
2082 { { "VK_VERSION_1_0",
2083 { {
2084 "VK_KHR_create_renderpass2",
2085 "VK_KHR_depth_stencil_resolve",
2086 } } },
2087 { "VK_VERSION_1_2", { {} } } } },
2088 { "VK_EXT_extended_dynamic_state2",
2089 { { "VK_VERSION_1_0",
2090 { {
2091 "VK_KHR_get_physical_device_properties2",
2092 } } },
2093 { "VK_VERSION_1_1", { {} } } } }
2094 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
2095 ,
2096 { "VK_QNX_screen_surface",
2097 { { "VK_VERSION_1_0",
2098 { {
2099 "VK_KHR_surface",
2100 } } } } }
2101 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
2102 ,
2103 { "VK_EXT_color_write_enable",
2104 { { "VK_VERSION_1_0",
2105 { {
2106 "VK_KHR_get_physical_device_properties2",
2107 } } },
2108 { "VK_VERSION_1_1", { {} } } } },
2109 { "VK_EXT_primitives_generated_query",
2110 { { "VK_VERSION_1_0",
2111 { {
2112 "VK_EXT_transform_feedback",
2113 } } } } },
2114 { "VK_KHR_ray_tracing_maintenance1",
2115 { { "VK_VERSION_1_0",
2116 { {
2117 "VK_KHR_acceleration_structure",
2118 } } } } },
2119 { "VK_KHR_shader_untyped_pointers",
2120 { { "VK_VERSION_1_0",
2121 { {
2122 "VK_KHR_get_physical_device_properties2",
2123 } } } } },
2124 { "VK_EXT_global_priority_query",
2125 { { "VK_VERSION_1_0",
2126 { {
2127 "VK_EXT_global_priority",
2128 "VK_KHR_get_physical_device_properties2",
2129 } } },
2130 { "VK_VERSION_1_1",
2131 { {
2132 "VK_EXT_global_priority",
2133 } } } } },
2134 { "VK_VALVE_video_encode_rgb_conversion",
2135 { { "VK_VERSION_1_0",
2136 { {
2137 "VK_KHR_sampler_ycbcr_conversion",
2138 "VK_KHR_video_encode_queue",
2139 } } },
2140 { "VK_VERSION_1_1",
2141 { {
2142 "VK_KHR_video_encode_queue",
2143 } } } } },
2144 { "VK_EXT_image_view_min_lod",
2145 { { "VK_VERSION_1_0",
2146 { {
2147 "VK_KHR_get_physical_device_properties2",
2148 } } },
2149 { "VK_VERSION_1_1", { {} } } } },
2150 { "VK_EXT_multi_draw",
2151 { { "VK_VERSION_1_0",
2152 { {
2153 "VK_KHR_get_physical_device_properties2",
2154 } } },
2155 { "VK_VERSION_1_1", { {} } } } },
2156 { "VK_EXT_image_2d_view_of_3d",
2157 { { "VK_VERSION_1_0",
2158 { {
2159 "VK_KHR_get_physical_device_properties2",
2160 "VK_KHR_maintenance1",
2161 } } },
2162 { "VK_VERSION_1_1", { {} } } } },
2163 { "VK_EXT_shader_tile_image", { { "VK_VERSION_1_3", { {} } } } },
2164 { "VK_EXT_opacity_micromap",
2165 { { "VK_VERSION_1_0",
2166 { {
2167 "VK_KHR_acceleration_structure",
2168 "VK_KHR_synchronization2",
2169 } } },
2170 { "VK_VERSION_1_3",
2171 { {
2172 "VK_KHR_acceleration_structure",
2173 } } } } }
2174 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2175 ,
2176 { "VK_NV_displacement_micromap",
2177 { { "VK_VERSION_1_0",
2178 { {
2179 "VK_EXT_opacity_micromap",
2180 } } } } }
2181 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
2182 ,
2183 { "VK_HUAWEI_cluster_culling_shader",
2184 { { "VK_VERSION_1_0",
2185 { {
2186 "VK_KHR_get_physical_device_properties2",
2187 } } },
2188 { "VK_VERSION_1_1", { {} } } } },
2189 { "VK_EXT_border_color_swizzle",
2190 { { "VK_VERSION_1_0",
2191 { {
2192 "VK_EXT_custom_border_color",
2193 } } } } },
2194 { "VK_EXT_pageable_device_local_memory",
2195 { { "VK_VERSION_1_0",
2196 { {
2197 "VK_EXT_memory_priority",
2198 } } } } },
2199 { "VK_KHR_maintenance4", { { "VK_VERSION_1_1", { {} } } } },
2200 { "VK_ARM_shader_core_properties", { { "VK_VERSION_1_1", { {} } } } },
2201 { "VK_KHR_shader_subgroup_rotate",
2202 { { "VK_VERSION_1_0",
2203 { {
2204 "VK_KHR_get_physical_device_properties2",
2205 } } },
2206 { "VK_VERSION_1_1", { {} } } } },
2207 { "VK_ARM_scheduling_controls",
2208 { { "VK_VERSION_1_0",
2209 { {
2210 "VK_ARM_shader_core_builtins",
2211 } } } } },
2212 { "VK_EXT_image_sliced_view_of_3d",
2213 { { "VK_VERSION_1_0",
2214 { {
2215 "VK_KHR_get_physical_device_properties2",
2216 "VK_KHR_maintenance1",
2217 } } },
2218 { "VK_VERSION_1_1", { {} } } } },
2219 { "VK_VALVE_descriptor_set_host_mapping",
2220 { { "VK_VERSION_1_0",
2221 { {
2222 "VK_KHR_get_physical_device_properties2",
2223 } } },
2224 { "VK_VERSION_1_1", { {} } } } },
2225 { "VK_EXT_depth_clamp_zero_one",
2226 { { "VK_VERSION_1_0",
2227 { {
2228 "VK_KHR_get_physical_device_properties2",
2229 } } },
2230 { "VK_VERSION_1_1", { {} } } } },
2231 { "VK_EXT_non_seamless_cube_map",
2232 { { "VK_VERSION_1_0",
2233 { {
2234 "VK_KHR_get_physical_device_properties2",
2235 } } },
2236 { "VK_VERSION_1_1", { {} } } } },
2237 { "VK_ARM_render_pass_striped",
2238 { { "VK_VERSION_1_0",
2239 { {
2240 "VK_KHR_get_physical_device_properties2",
2241 "VK_KHR_synchronization2",
2242 } } },
2243 { "VK_VERSION_1_1",
2244 { {
2245 "VK_KHR_synchronization2",
2246 } } },
2247 { "VK_VERSION_1_3", { {} } } } },
2248 { "VK_QCOM_fragment_density_map_offset",
2249 { { "VK_VERSION_1_0",
2250 { {
2251 "VK_EXT_fragment_density_map",
2252 "VK_KHR_get_physical_device_properties2",
2253 } } },
2254 { "VK_VERSION_1_1",
2255 { {
2256 "VK_EXT_fragment_density_map",
2257 } } } } },
2258 { "VK_NV_copy_memory_indirect",
2259 { { "VK_VERSION_1_0",
2260 { {
2261 "VK_KHR_buffer_device_address",
2262 "VK_KHR_get_physical_device_properties2",
2263 } } },
2264 { "VK_VERSION_1_1",
2265 { {
2266 "VK_KHR_buffer_device_address",
2267 } } },
2268 { "VK_VERSION_1_2", { {} } } } },
2269 { "VK_NV_memory_decompression",
2270 { { "VK_VERSION_1_0",
2271 { {
2272 "VK_KHR_buffer_device_address",
2273 "VK_KHR_get_physical_device_properties2",
2274 } } },
2275 { "VK_VERSION_1_1",
2276 { {
2277 "VK_KHR_buffer_device_address",
2278 } } },
2279 { "VK_VERSION_1_2", { {} } } } },
2280 { "VK_NV_device_generated_commands_compute",
2281 { { "VK_VERSION_1_0",
2282 { {
2283 "VK_NV_device_generated_commands",
2284 } } } } },
2285 { "VK_NV_ray_tracing_linear_swept_spheres",
2286 { { "VK_VERSION_1_0",
2287 { {
2288 "VK_KHR_ray_tracing_pipeline",
2289 } } } } },
2290 { "VK_NV_linear_color_attachment",
2291 { { "VK_VERSION_1_0",
2292 { {
2293 "VK_KHR_get_physical_device_properties2",
2294 } } },
2295 { "VK_VERSION_1_1", { {} } } } },
2296 { "VK_GOOGLE_surfaceless_query",
2297 { { "VK_VERSION_1_0",
2298 { {
2299 "VK_KHR_surface",
2300 } } } } },
2301 { "VK_KHR_shader_maximal_reconvergence", { { "VK_VERSION_1_1", { {} } } } },
2302 { "VK_EXT_image_compression_control_swapchain",
2303 { { "VK_VERSION_1_0",
2304 { {
2305 "VK_EXT_image_compression_control",
2306 } } } } },
2307 { "VK_QCOM_image_processing",
2308 { { "VK_VERSION_1_0",
2309 { {
2310 "VK_KHR_format_feature_flags2",
2311 } } },
2312 { "VK_VERSION_1_3", { {} } } } },
2313 { "VK_EXT_nested_command_buffer",
2314 { { "VK_VERSION_1_0",
2315 { {
2316 "VK_KHR_get_physical_device_properties2",
2317 } } },
2318 { "VK_VERSION_1_1", { {} } } } }
2319 #if defined( VK_USE_PLATFORM_OHOS )
2320 ,
2321 { "VK_OHOS_external_memory",
2322 { { "VK_VERSION_1_0",
2323 { {
2324 "VK_EXT_queue_family_foreign",
2325 "VK_KHR_dedicated_allocation",
2326 "VK_KHR_external_memory",
2327 "VK_KHR_sampler_ycbcr_conversion",
2328 } } },
2329 { "VK_VERSION_1_1",
2330 { {
2331 "VK_EXT_queue_family_foreign",
2332 } } } } }
2333 #endif /*VK_USE_PLATFORM_OHOS*/
2334 ,
2335 { "VK_EXT_external_memory_acquire_unmodified",
2336 { { "VK_VERSION_1_0",
2337 { {
2338 "VK_KHR_external_memory",
2339 } } },
2340 { "VK_VERSION_1_1", { {} } } } },
2341 { "VK_EXT_extended_dynamic_state3",
2342 { { "VK_VERSION_1_0",
2343 { {
2344 "VK_KHR_get_physical_device_properties2",
2345 } } },
2346 { "VK_VERSION_1_1", { {} } } } },
2347 { "VK_EXT_subpass_merge_feedback",
2348 { { "VK_VERSION_1_0",
2349 { {
2350 "VK_KHR_get_physical_device_properties2",
2351 } } },
2352 { "VK_VERSION_1_1", { {} } } } },
2353 { "VK_ARM_tensors", { { "VK_VERSION_1_3", { {} } } } },
2354 { "VK_EXT_shader_module_identifier",
2355 { { "VK_VERSION_1_0",
2356 { {
2357 "VK_EXT_pipeline_creation_cache_control",
2358 "VK_KHR_get_physical_device_properties2",
2359 } } },
2360 { "VK_VERSION_1_1",
2361 { {
2362 "VK_EXT_pipeline_creation_cache_control",
2363 } } },
2364 { "VK_VERSION_1_3", { {} } } } },
2365 { "VK_EXT_rasterization_order_attachment_access",
2366 { { "VK_VERSION_1_0",
2367 { {
2368 "VK_KHR_get_physical_device_properties2",
2369 } } },
2370 { "VK_VERSION_1_1", { {} } } } },
2371 { "VK_NV_optical_flow",
2372 { { "VK_VERSION_1_0",
2373 { {
2374 "VK_KHR_format_feature_flags2",
2375 "VK_KHR_get_physical_device_properties2",
2376 "VK_KHR_synchronization2",
2377 } } },
2378 { "VK_VERSION_1_1",
2379 { {
2380 "VK_KHR_format_feature_flags2",
2381 "VK_KHR_synchronization2",
2382 } } },
2383 { "VK_VERSION_1_3", { {} } } } },
2384 { "VK_EXT_legacy_dithering",
2385 { { "VK_VERSION_1_0",
2386 { {
2387 "VK_KHR_get_physical_device_properties2",
2388 } } },
2389 { "VK_VERSION_1_1", { {} } } } },
2390 { "VK_EXT_pipeline_protected_access",
2391 { { "VK_VERSION_1_0",
2392 { {
2393 "VK_KHR_get_physical_device_properties2",
2394 } } },
2395 { "VK_VERSION_1_1", { {} } } } }
2396 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
2397 ,
2398 { "VK_ANDROID_external_format_resolve",
2399 { { "VK_VERSION_1_0",
2400 { {
2401 "VK_ANDROID_external_memory_android_hardware_buffer",
2402 } } } } }
2403 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
2404 ,
2405 { "VK_KHR_maintenance5",
2406 { { "VK_VERSION_1_1",
2407 { {
2408 "VK_KHR_dynamic_rendering",
2409 } } },
2410 { "VK_VERSION_1_3", { {} } } } },
2411 { "VK_AMD_anti_lag",
2412 { { "VK_VERSION_1_0",
2413 { {
2414 "VK_KHR_get_physical_device_properties2",
2415 } } },
2416 { "VK_VERSION_1_1", { {} } } } }
2417 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2418 ,
2419 { "VK_AMDX_dense_geometry_format",
2420 { { "VK_VERSION_1_0",
2421 { {
2422 "VK_KHR_acceleration_structure",
2423 "VK_KHR_maintenance5",
2424 } } },
2425 { "VK_VERSION_1_4",
2426 { {
2427 "VK_KHR_acceleration_structure",
2428 } } } } }
2429 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
2430 ,
2431 { "VK_KHR_present_id2",
2432 { { "VK_VERSION_1_0",
2433 { {
2434 "VK_KHR_get_surface_capabilities2",
2435 "VK_KHR_surface",
2436 "VK_KHR_swapchain",
2437 } } } } },
2438 { "VK_KHR_present_wait2",
2439 { { "VK_VERSION_1_0",
2440 { {
2441 "VK_KHR_get_surface_capabilities2",
2442 "VK_KHR_present_id2",
2443 "VK_KHR_surface",
2444 "VK_KHR_swapchain",
2445 } } } } },
2446 { "VK_KHR_ray_tracing_position_fetch",
2447 { { "VK_VERSION_1_0",
2448 { {
2449 "VK_KHR_acceleration_structure",
2450 } } } } },
2451 { "VK_EXT_shader_object",
2452 { { "VK_VERSION_1_0",
2453 { {
2454 "VK_KHR_dynamic_rendering",
2455 "VK_KHR_get_physical_device_properties2",
2456 } } },
2457 { "VK_VERSION_1_1",
2458 { {
2459 "VK_KHR_dynamic_rendering",
2460 } } },
2461 { "VK_VERSION_1_3", { {} } } } },
2462 { "VK_KHR_pipeline_binary",
2463 { { "VK_VERSION_1_0",
2464 { {
2465 "VK_KHR_maintenance5",
2466 } } },
2467 { "VK_VERSION_1_4", { {} } } } },
2468 { "VK_QCOM_tile_properties",
2469 { { "VK_VERSION_1_0",
2470 { {
2471 "VK_KHR_get_physical_device_properties2",
2472 } } },
2473 { "VK_VERSION_1_1", { {} } } } },
2474 { "VK_SEC_amigo_profiling",
2475 { { "VK_VERSION_1_0",
2476 { {
2477 "VK_KHR_get_physical_device_properties2",
2478 } } },
2479 { "VK_VERSION_1_1", { {} } } } },
2480 { "VK_KHR_surface_maintenance1",
2481 { { "VK_VERSION_1_0",
2482 { {
2483 "VK_KHR_surface",
2484 },
2485 {
2486 "VK_KHR_get_surface_capabilities2",
2487 } } } } },
2488 { "VK_KHR_swapchain_maintenance1",
2489 { { "VK_VERSION_1_0",
2490 { {
2491 "VK_KHR_swapchain",
2492 },
2493 {
2494 "VK_KHR_surface_maintenance1",
2495 },
2496 {
2497 "VK_KHR_get_physical_device_properties2",
2498 } } } } },
2499 { "VK_QCOM_multiview_per_view_viewports",
2500 { { "VK_VERSION_1_0",
2501 { {
2502 "VK_KHR_get_physical_device_properties2",
2503 } } },
2504 { "VK_VERSION_1_1", { {} } } } },
2505 { "VK_NV_ray_tracing_invocation_reorder",
2506 { { "VK_VERSION_1_0",
2507 { {
2508 "VK_KHR_ray_tracing_pipeline",
2509 } } } } },
2510 { "VK_NV_cooperative_vector",
2511 { { "VK_VERSION_1_0",
2512 { {
2513 "VK_KHR_get_physical_device_properties2",
2514 } } },
2515 { "VK_VERSION_1_1", { {} } } } },
2516 { "VK_NV_extended_sparse_address_space",
2517 { { "VK_VERSION_1_0",
2518 { {
2519 "VK_KHR_get_physical_device_properties2",
2520 } } },
2521 { "VK_VERSION_1_1", { {} } } } },
2522 { "VK_EXT_mutable_descriptor_type",
2523 { { "VK_VERSION_1_0",
2524 { {
2525 "VK_KHR_maintenance3",
2526 } } },
2527 { "VK_VERSION_1_1", { {} } } } },
2528 { "VK_EXT_legacy_vertex_attributes",
2529 { { "VK_VERSION_1_0",
2530 { {
2531 "VK_EXT_vertex_input_dynamic_state",
2532 } } } } },
2533 { "VK_ARM_shader_core_builtins",
2534 { { "VK_VERSION_1_0",
2535 { {
2536 "VK_KHR_get_physical_device_properties2",
2537 } } },
2538 { "VK_VERSION_1_1", { {} } } } },
2539 { "VK_EXT_pipeline_library_group_handles",
2540 { { "VK_VERSION_1_0",
2541 { {
2542 "VK_KHR_pipeline_library",
2543 "VK_KHR_ray_tracing_pipeline",
2544 } } } } },
2545 { "VK_EXT_dynamic_rendering_unused_attachments",
2546 { { "VK_VERSION_1_0",
2547 { {
2548 "VK_KHR_dynamic_rendering",
2549 "VK_KHR_get_physical_device_properties2",
2550 } } },
2551 { "VK_VERSION_1_1",
2552 { {
2553 "VK_KHR_dynamic_rendering",
2554 } } },
2555 { "VK_VERSION_1_3", { {} } } } },
2556 { "VK_NV_low_latency2",
2557 { { "VK_VERSION_1_0",
2558 { {
2559 "VK_KHR_present_id",
2560 "VK_KHR_timeline_semaphore",
2561 },
2562 {
2563 "VK_KHR_present_id2",
2564 "VK_KHR_timeline_semaphore",
2565 } } },
2566 { "VK_VERSION_1_2",
2567 { {
2568 "VK_KHR_present_id",
2569 },
2570 {
2571 "VK_KHR_present_id2",
2572 } } } } },
2573 { "VK_KHR_cooperative_matrix",
2574 { { "VK_VERSION_1_0",
2575 { {
2576 "VK_KHR_get_physical_device_properties2",
2577 } } },
2578 { "VK_VERSION_1_1", { {} } } } },
2579 { "VK_ARM_data_graph",
2580 { { "VK_VERSION_1_3",
2581 { {
2582 "VK_KHR_deferred_host_operations",
2583 "VK_KHR_maintenance5",
2584 } } } } },
2585 { "VK_QCOM_multiview_per_view_render_areas",
2586 { { "VK_VERSION_1_0",
2587 { {
2588 "VK_KHR_get_physical_device_properties2",
2589 } } },
2590 { "VK_VERSION_1_1", { {} } } } },
2591 { "VK_KHR_compute_shader_derivatives",
2592 { { "VK_VERSION_1_0",
2593 { {
2594 "VK_KHR_get_physical_device_properties2",
2595 } } },
2596 { "VK_VERSION_1_1", { {} } } } },
2597 { "VK_KHR_video_decode_av1",
2598 { { "VK_VERSION_1_0",
2599 { {
2600 "VK_KHR_video_decode_queue",
2601 } } } } },
2602 { "VK_KHR_video_encode_av1",
2603 { { "VK_VERSION_1_0",
2604 { {
2605 "VK_KHR_video_encode_queue",
2606 } } } } },
2607 { "VK_KHR_video_decode_vp9",
2608 { { "VK_VERSION_1_0",
2609 { {
2610 "VK_KHR_video_decode_queue",
2611 } } } } },
2612 { "VK_KHR_video_maintenance1",
2613 { { "VK_VERSION_1_0",
2614 { {
2615 "VK_KHR_video_queue",
2616 } } } } },
2617 { "VK_NV_per_stage_descriptor_set",
2618 { { "VK_VERSION_1_0",
2619 { {
2620 "VK_KHR_maintenance6",
2621 } } },
2622 { "VK_VERSION_1_4", { {} } } } },
2623 { "VK_QCOM_image_processing2",
2624 { { "VK_VERSION_1_0",
2625 { {
2626 "VK_QCOM_image_processing",
2627 } } } } },
2628 { "VK_QCOM_filter_cubic_weights",
2629 { { "VK_VERSION_1_0",
2630 { {
2631 "VK_EXT_filter_cubic",
2632 } } } } },
2633 { "VK_QCOM_ycbcr_degamma",
2634 { { "VK_VERSION_1_0",
2635 { {
2636 "VK_KHR_get_physical_device_properties2",
2637 } } },
2638 { "VK_VERSION_1_1", { {} } } } },
2639 { "VK_QCOM_filter_cubic_clamp",
2640 { { "VK_VERSION_1_0",
2641 { {
2642 "VK_EXT_filter_cubic",
2643 "VK_EXT_sampler_filter_minmax",
2644 } } },
2645 { "VK_VERSION_1_2",
2646 { {
2647 "VK_EXT_filter_cubic",
2648 } } } } },
2649 { "VK_EXT_attachment_feedback_loop_dynamic_state",
2650 { { "VK_VERSION_1_0",
2651 { {
2652 "VK_EXT_attachment_feedback_loop_layout",
2653 "VK_KHR_get_physical_device_properties2",
2654 } } },
2655 { "VK_VERSION_1_1",
2656 { {
2657 "VK_EXT_attachment_feedback_loop_layout",
2658 } } } } },
2659 { "VK_KHR_vertex_attribute_divisor",
2660 { { "VK_VERSION_1_0",
2661 { {
2662 "VK_KHR_get_physical_device_properties2",
2663 } } },
2664 { "VK_VERSION_1_1", { {} } } } },
2665 { "VK_KHR_unified_image_layouts",
2666 { { "VK_VERSION_1_0",
2667 { {
2668 "VK_KHR_get_physical_device_properties2",
2669 } } },
2670 { "VK_VERSION_1_1", { {} } } } },
2671 { "VK_KHR_shader_float_controls2",
2672 { { "VK_VERSION_1_1",
2673 { {
2674 "VK_KHR_shader_float_controls",
2675 } } } } }
2676 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
2677 ,
2678 { "VK_QNX_external_memory_screen_buffer",
2679 { { "VK_VERSION_1_0",
2680 { {
2681 "VK_EXT_queue_family_foreign",
2682 "VK_KHR_dedicated_allocation",
2683 "VK_KHR_external_memory",
2684 "VK_KHR_sampler_ycbcr_conversion",
2685 } } },
2686 { "VK_VERSION_1_1",
2687 { {
2688 "VK_EXT_queue_family_foreign",
2689 } } } } }
2690 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
2691 ,
2692 { "VK_MSFT_layered_driver",
2693 { { "VK_VERSION_1_0",
2694 { {
2695 "VK_KHR_get_physical_device_properties2",
2696 } } },
2697 { "VK_VERSION_1_1", { {} } } } },
2698 { "VK_KHR_index_type_uint8",
2699 { { "VK_VERSION_1_0",
2700 { {
2701 "VK_KHR_get_physical_device_properties2",
2702 } } },
2703 { "VK_VERSION_1_1", { {} } } } },
2704 { "VK_KHR_line_rasterization",
2705 { { "VK_VERSION_1_0",
2706 { {
2707 "VK_KHR_get_physical_device_properties2",
2708 } } },
2709 { "VK_VERSION_1_1", { {} } } } },
2710 { "VK_KHR_calibrated_timestamps",
2711 { { "VK_VERSION_1_0",
2712 { {
2713 "VK_KHR_get_physical_device_properties2",
2714 } } },
2715 { "VK_VERSION_1_1", { {} } } } },
2716 { "VK_KHR_shader_expect_assume",
2717 { { "VK_VERSION_1_0",
2718 { {
2719 "VK_KHR_get_physical_device_properties2",
2720 } } },
2721 { "VK_VERSION_1_1", { {} } } } },
2722 { "VK_KHR_maintenance6", { { "VK_VERSION_1_1", { {} } } } },
2723 { "VK_NV_descriptor_pool_overallocation", { { "VK_VERSION_1_1", { {} } } } },
2724 { "VK_QCOM_tile_memory_heap",
2725 { { "VK_VERSION_1_0",
2726 { {
2727 "VK_KHR_get_memory_requirements2",
2728 "VK_KHR_get_physical_device_properties2",
2729 } } },
2730 { "VK_VERSION_1_1", { {} } } } },
2731 { "VK_KHR_copy_memory_indirect",
2732 { { "VK_VERSION_1_0",
2733 { {
2734 "VK_KHR_buffer_device_address",
2735 "VK_KHR_get_physical_device_properties2",
2736 } } },
2737 { "VK_VERSION_1_2", { {} } } } },
2738 { "VK_EXT_memory_decompression",
2739 { { "VK_VERSION_1_0",
2740 { {
2741 "VK_KHR_buffer_device_address",
2742 "VK_KHR_get_physical_device_properties2",
2743 } } } } },
2744 { "VK_NV_display_stereo",
2745 { { "VK_VERSION_1_0",
2746 { {
2747 "VK_KHR_display",
2748 "VK_KHR_get_display_properties2",
2749 } } } } },
2750 { "VK_KHR_video_encode_intra_refresh",
2751 { { "VK_VERSION_1_0",
2752 { {
2753 "VK_KHR_video_encode_queue",
2754 } } } } },
2755 { "VK_KHR_video_encode_quantization_map",
2756 { { "VK_VERSION_1_0",
2757 { {
2758 "VK_KHR_format_feature_flags2",
2759 "VK_KHR_video_encode_queue",
2760 } } },
2761 { "VK_VERSION_1_3",
2762 { {
2763 "VK_KHR_video_encode_queue",
2764 } } } } },
2765 { "VK_NV_raw_access_chains",
2766 { { "VK_VERSION_1_0",
2767 { {
2768 "VK_KHR_get_physical_device_properties2",
2769 } } },
2770 { "VK_VERSION_1_1", { {} } } } },
2771 { "VK_KHR_shader_relaxed_extended_instruction",
2772 { { "VK_VERSION_1_0",
2773 { {
2774 "VK_KHR_get_physical_device_properties2",
2775 } } },
2776 { "VK_VERSION_1_1", { {} } } } },
2777 { "VK_NV_command_buffer_inheritance",
2778 { { "VK_VERSION_1_0",
2779 { {
2780 "VK_KHR_get_physical_device_properties2",
2781 } } },
2782 { "VK_VERSION_1_1", { {} } } } },
2783 { "VK_KHR_maintenance7", { { "VK_VERSION_1_1", { {} } } } },
2784 { "VK_NV_shader_atomic_float16_vector",
2785 { { "VK_VERSION_1_0",
2786 { {
2787 "VK_KHR_get_physical_device_properties2",
2788 } } },
2789 { "VK_VERSION_1_1", { {} } } } },
2790 { "VK_EXT_shader_replicated_composites",
2791 { { "VK_VERSION_1_0",
2792 { {
2793 "VK_KHR_get_physical_device_properties2",
2794 } } },
2795 { "VK_VERSION_1_1", { {} } } } },
2796 { "VK_EXT_shader_float8",
2797 { { "VK_VERSION_1_0",
2798 { {
2799 "VK_KHR_get_physical_device_properties2",
2800 } } },
2801 { "VK_VERSION_1_1", { {} } } } },
2802 { "VK_NV_ray_tracing_validation",
2803 { { "VK_VERSION_1_0",
2804 { {
2805 "VK_KHR_get_physical_device_properties2",
2806 } } },
2807 { "VK_VERSION_1_1", { {} } } } },
2808 { "VK_NV_cluster_acceleration_structure",
2809 { { "VK_VERSION_1_0",
2810 { {
2811 "VK_KHR_acceleration_structure",
2812 } } } } },
2813 { "VK_NV_partitioned_acceleration_structure",
2814 { { "VK_VERSION_1_0",
2815 { {
2816 "VK_KHR_acceleration_structure",
2817 } } } } },
2818 { "VK_EXT_device_generated_commands",
2819 { { "VK_VERSION_1_0",
2820 { {
2821 "VK_KHR_buffer_device_address",
2822 "VK_KHR_maintenance5",
2823 } } },
2824 { "VK_VERSION_1_2",
2825 { {
2826 "VK_KHR_maintenance5",
2827 } } },
2828 { "VK_VERSION_1_3", { {} } } } },
2829 { "VK_KHR_maintenance8", { { "VK_VERSION_1_1", { {} } } } },
2830 { "VK_MESA_image_alignment_control",
2831 { { "VK_VERSION_1_0",
2832 { {
2833 "VK_KHR_get_physical_device_properties2",
2834 } } },
2835 { "VK_VERSION_1_1", { {} } } } },
2836 { "VK_KHR_shader_fma",
2837 { { "VK_VERSION_1_0",
2838 { {
2839 "VK_KHR_get_physical_device_properties2",
2840 } } },
2841 { "VK_VERSION_1_1", { {} } } } },
2842 { "VK_EXT_ray_tracing_invocation_reorder",
2843 { { "VK_VERSION_1_0",
2844 { {
2845 "VK_KHR_ray_tracing_pipeline",
2846 } } } } },
2847 { "VK_EXT_depth_clamp_control",
2848 { { "VK_VERSION_1_0",
2849 { {
2850 "VK_KHR_get_physical_device_properties2",
2851 } } },
2852 { "VK_VERSION_1_1", { {} } } } },
2853 { "VK_KHR_maintenance9",
2854 { { "VK_VERSION_1_0",
2855 { {
2856 "VK_KHR_get_physical_device_properties2",
2857 } } },
2858 { "VK_VERSION_1_1", { {} } } } },
2859 { "VK_KHR_video_maintenance2",
2860 { { "VK_VERSION_1_0",
2861 { {
2862 "VK_KHR_video_queue",
2863 } } } } }
2864 #if defined( VK_USE_PLATFORM_OHOS )
2865 ,
2866 { "VK_OHOS_surface",
2867 { { "VK_VERSION_1_0",
2868 { {
2869 "VK_KHR_surface",
2870 } } } } }
2871 #endif /*VK_USE_PLATFORM_OHOS*/
2872 ,
2873 { "VK_HUAWEI_hdr_vivid",
2874 { { "VK_VERSION_1_0",
2875 { {
2876 "VK_EXT_hdr_metadata",
2877 "VK_KHR_get_physical_device_properties2",
2878 "VK_KHR_swapchain",
2879 } } },
2880 { "VK_VERSION_1_1",
2881 { {
2882 "VK_EXT_hdr_metadata",
2883 "VK_KHR_swapchain",
2884 } } } } },
2885 { "VK_NV_cooperative_matrix2",
2886 { { "VK_VERSION_1_0",
2887 { {
2888 "VK_KHR_cooperative_matrix",
2889 } } } } },
2890 { "VK_ARM_pipeline_opacity_micromap",
2891 { { "VK_VERSION_1_0",
2892 { {
2893 "VK_EXT_opacity_micromap",
2894 } } } } }
2895 #if defined( VK_USE_PLATFORM_METAL_EXT )
2896 ,
2897 { "VK_EXT_external_memory_metal",
2898 { { "VK_VERSION_1_0",
2899 { {
2900 "VK_KHR_external_memory",
2901 } } },
2902 { "VK_VERSION_1_1", { {} } } } }
2903 #endif /*VK_USE_PLATFORM_METAL_EXT*/
2904 ,
2905 { "VK_KHR_depth_clamp_zero_one",
2906 { { "VK_VERSION_1_0",
2907 { {
2908 "VK_KHR_get_physical_device_properties2",
2909 } } },
2910 { "VK_VERSION_1_1", { {} } } } },
2911 { "VK_ARM_performance_counters_by_region",
2912 { { "VK_VERSION_1_0",
2913 { {
2914 "VK_KHR_get_physical_device_properties2",
2915 } } },
2916 { "VK_VERSION_1_1", { {} } } } },
2917 { "VK_EXT_vertex_attribute_robustness",
2918 { { "VK_VERSION_1_0",
2919 { {
2920 "VK_KHR_get_physical_device_properties2",
2921 } } },
2922 { "VK_VERSION_1_1", { {} } } } },
2923 { "VK_ARM_format_pack",
2924 { { "VK_VERSION_1_0",
2925 { {
2926 "VK_KHR_get_physical_device_properties2",
2927 } } },
2928 { "VK_VERSION_1_1", { {} } } } },
2929 { "VK_VALVE_fragment_density_map_layered",
2930 { { "VK_VERSION_1_0",
2931 { {
2932 "VK_EXT_fragment_density_map",
2933 "VK_KHR_maintenance5",
2934 } } },
2935 { "VK_VERSION_1_4",
2936 { {
2937 "VK_EXT_fragment_density_map",
2938 } } } } },
2939 { "VK_KHR_robustness2",
2940 { { "VK_VERSION_1_0",
2941 { {
2942 "VK_KHR_get_physical_device_properties2",
2943 } } },
2944 { "VK_VERSION_1_1", { {} } } } }
2945 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2946 ,
2947 { "VK_NV_present_metering",
2948 { { "VK_VERSION_1_0",
2949 { {
2950 "VK_KHR_get_physical_device_properties2",
2951 } } },
2952 { "VK_VERSION_1_1", { {} } } } }
2953 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
2954 ,
2955 { "VK_EXT_fragment_density_map_offset",
2956 { { "VK_VERSION_1_0",
2957 { {
2958 "VK_EXT_fragment_density_map",
2959 "VK_KHR_create_renderpass2",
2960 "VK_KHR_dynamic_rendering",
2961 "VK_KHR_get_physical_device_properties2",
2962 } } },
2963 { "VK_VERSION_1_1",
2964 { {
2965 "VK_EXT_fragment_density_map",
2966 "VK_KHR_create_renderpass2",
2967 "VK_KHR_dynamic_rendering",
2968 } } },
2969 { "VK_VERSION_1_2",
2970 { {
2971 "VK_EXT_fragment_density_map",
2972 "VK_KHR_dynamic_rendering",
2973 } } },
2974 { "VK_VERSION_1_3",
2975 { {
2976 "VK_EXT_fragment_density_map",
2977 } } } } },
2978 { "VK_EXT_zero_initialize_device_memory",
2979 { { "VK_VERSION_1_0",
2980 { {
2981 "VK_KHR_get_physical_device_properties2",
2982 } } },
2983 { "VK_VERSION_1_1", { {} } } } },
2984 { "VK_KHR_present_mode_fifo_latest_ready",
2985 { { "VK_VERSION_1_0",
2986 { {
2987 "VK_KHR_swapchain",
2988 } } } } },
2989 { "VK_EXT_shader_64bit_indexing",
2990 { { "VK_VERSION_1_0",
2991 { {
2992 "VK_KHR_get_physical_device_properties2",
2993 } } },
2994 { "VK_VERSION_1_1", { {} } } } },
2995 { "VK_EXT_custom_resolve",
2996 { { "VK_VERSION_1_0",
2997 { {
2998 "VK_KHR_get_physical_device_properties2",
2999 } } },
3000 { "VK_VERSION_1_1", { {} } } } },
3001 { "VK_QCOM_data_graph_model",
3002 { { "VK_VERSION_1_0",
3003 { {
3004 "VK_ARM_data_graph",
3005 } } } } },
3006 { "VK_KHR_maintenance10",
3007 { { "VK_VERSION_1_0",
3008 { {
3009 "VK_KHR_get_physical_device_properties2",
3010 } } },
3011 { "VK_VERSION_1_1", { {} } } } },
3012 { "VK_SEC_pipeline_cache_incremental_mode",
3013 { { "VK_VERSION_1_0",
3014 { {
3015 "VK_KHR_get_physical_device_properties2",
3016 } } },
3017 { "VK_VERSION_1_1", { {} } } } },
3018 { "VK_EXT_shader_uniform_buffer_unsized_array",
3019 { { "VK_VERSION_1_0",
3020 { {
3021 "VK_KHR_get_physical_device_properties2",
3022 } } },
3023 { "VK_VERSION_1_1", { {} } } } }
3024 };
3025 auto depIt = dependencies.find( extension );
3026 return ( depIt != dependencies.end() ) ? depIt->second : noDependencies;
3027 }
3028
3029 VULKAN_HPP_INLINE std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version,
3030 std::string const & extension )
3031 {
3032 #if !defined( NDEBUG )
3033 static std::set<std::string> versions = { "VK_VERSION_1_0", "VK_VERSION_1_1", "VK_VERSION_1_2", "VK_VERSION_1_3", "VK_VERSION_1_4" };
3034 VULKAN_HPP_ASSERT( versions.find( version ) != versions.end() );
3035 #endif
3036 static std::vector<std::vector<std::string>> noDependencies;
3037
3038 std::map<std::string, std::vector<std::vector<std::string>>> const & dependencies = getExtensionDepends( extension );
3039 if ( dependencies.empty() )
3040 {
3041 return { true, noDependencies };
3042 }
3043 auto depIt = dependencies.lower_bound( version );
3044 if ( ( depIt == dependencies.end() ) || ( depIt->first != version ) )
3045 {
3046 depIt = std::prev( depIt );
3047 }
3048 if ( depIt == dependencies.end() )
3049 {
3050 return { false, noDependencies };
3051 }
3052 else
3053 {
3054 return { true, depIt->second };
3055 }
3056 }
3057
3058 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getObsoletedExtensions()
3059 {
3060 static const std::map<std::string, std::string> obsoletedExtensions = { { "VK_AMD_negative_viewport_height", "VK_KHR_maintenance1" } };
3061 return obsoletedExtensions;
3062 }
3063
3064 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getPromotedExtensions()
3065 {
3066 static const std::map<std::string, std::string> promotedExtensions = { { "VK_KHR_sampler_mirror_clamp_to_edge", "VK_VERSION_1_2" },
3067 { "VK_EXT_debug_marker", "VK_EXT_debug_utils" },
3068 { "VK_AMD_draw_indirect_count", "VK_KHR_draw_indirect_count" },
3069 { "VK_KHR_dynamic_rendering", "VK_VERSION_1_3" },
3070 { "VK_KHR_multiview", "VK_VERSION_1_1" },
3071 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3072 { "VK_NV_win32_keyed_mutex", "VK_KHR_win32_keyed_mutex" },
3073 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3074 { "VK_KHR_get_physical_device_properties2", "VK_VERSION_1_1" },
3075 { "VK_KHR_device_group", "VK_VERSION_1_1" },
3076 { "VK_KHR_shader_draw_parameters", "VK_VERSION_1_1" },
3077 { "VK_EXT_texture_compression_astc_hdr", "VK_VERSION_1_3" },
3078 { "VK_EXT_pipeline_robustness", "VK_VERSION_1_4" },
3079 { "VK_KHR_maintenance1", "VK_VERSION_1_1" },
3080 { "VK_KHR_device_group_creation", "VK_VERSION_1_1" },
3081 { "VK_KHR_external_memory_capabilities", "VK_VERSION_1_1" },
3082 { "VK_KHR_external_memory", "VK_VERSION_1_1" },
3083 { "VK_KHR_external_semaphore_capabilities", "VK_VERSION_1_1" },
3084 { "VK_KHR_external_semaphore", "VK_VERSION_1_1" },
3085 { "VK_KHR_push_descriptor", "VK_VERSION_1_4" },
3086 { "VK_KHR_shader_float16_int8", "VK_VERSION_1_2" },
3087 { "VK_KHR_16bit_storage", "VK_VERSION_1_1" },
3088 { "VK_KHR_descriptor_update_template", "VK_VERSION_1_1" },
3089 { "VK_KHR_imageless_framebuffer", "VK_VERSION_1_2" },
3090 { "VK_KHR_create_renderpass2", "VK_VERSION_1_2" },
3091 { "VK_KHR_external_fence_capabilities", "VK_VERSION_1_1" },
3092 { "VK_KHR_external_fence", "VK_VERSION_1_1" },
3093 { "VK_KHR_maintenance2", "VK_VERSION_1_1" },
3094 { "VK_KHR_variable_pointers", "VK_VERSION_1_1" },
3095 { "VK_KHR_dedicated_allocation", "VK_VERSION_1_1" },
3096 { "VK_EXT_sampler_filter_minmax", "VK_VERSION_1_2" },
3097 { "VK_KHR_storage_buffer_storage_class", "VK_VERSION_1_1" },
3098 { "VK_EXT_inline_uniform_block", "VK_VERSION_1_3" },
3099 { "VK_KHR_relaxed_block_layout", "VK_VERSION_1_1" },
3100 { "VK_KHR_get_memory_requirements2", "VK_VERSION_1_1" },
3101 { "VK_KHR_image_format_list", "VK_VERSION_1_2" },
3102 { "VK_KHR_sampler_ycbcr_conversion", "VK_VERSION_1_1" },
3103 { "VK_KHR_bind_memory2", "VK_VERSION_1_1" },
3104 { "VK_EXT_descriptor_indexing", "VK_VERSION_1_2" },
3105 { "VK_EXT_shader_viewport_index_layer", "VK_VERSION_1_2" },
3106 { "VK_KHR_maintenance3", "VK_VERSION_1_1" },
3107 { "VK_KHR_draw_indirect_count", "VK_VERSION_1_2" },
3108 { "VK_QCOM_render_pass_shader_resolve", "VK_EXT_custom_resolve" },
3109 { "VK_EXT_global_priority", "VK_KHR_global_priority" },
3110 { "VK_KHR_shader_subgroup_extended_types", "VK_VERSION_1_2" },
3111 { "VK_KHR_8bit_storage", "VK_VERSION_1_2" },
3112 { "VK_KHR_shader_atomic_int64", "VK_VERSION_1_2" },
3113 { "VK_EXT_calibrated_timestamps", "VK_KHR_calibrated_timestamps" },
3114 { "VK_KHR_global_priority", "VK_VERSION_1_4" },
3115 { "VK_EXT_vertex_attribute_divisor", "VK_KHR_vertex_attribute_divisor" },
3116 { "VK_EXT_pipeline_creation_feedback", "VK_VERSION_1_3" },
3117 { "VK_KHR_driver_properties", "VK_VERSION_1_2" },
3118 { "VK_KHR_shader_float_controls", "VK_VERSION_1_2" },
3119 { "VK_KHR_depth_stencil_resolve", "VK_VERSION_1_2" },
3120 { "VK_NV_compute_shader_derivatives", "VK_KHR_compute_shader_derivatives" },
3121 { "VK_NV_fragment_shader_barycentric", "VK_KHR_fragment_shader_barycentric" },
3122 { "VK_KHR_timeline_semaphore", "VK_VERSION_1_2" },
3123 { "VK_KHR_vulkan_memory_model", "VK_VERSION_1_2" },
3124 { "VK_KHR_shader_terminate_invocation", "VK_VERSION_1_3" },
3125 { "VK_EXT_scalar_block_layout", "VK_VERSION_1_2" },
3126 { "VK_EXT_subgroup_size_control", "VK_VERSION_1_3" },
3127 { "VK_KHR_dynamic_rendering_local_read", "VK_VERSION_1_4" },
3128 { "VK_KHR_spirv_1_4", "VK_VERSION_1_2" },
3129 { "VK_KHR_separate_depth_stencil_layouts", "VK_VERSION_1_2" },
3130 { "VK_EXT_tooling_info", "VK_VERSION_1_3" },
3131 { "VK_EXT_separate_stencil_usage", "VK_VERSION_1_2" },
3132 { "VK_KHR_uniform_buffer_standard_layout", "VK_VERSION_1_2" },
3133 { "VK_KHR_buffer_device_address", "VK_VERSION_1_2" },
3134 { "VK_EXT_line_rasterization", "VK_KHR_line_rasterization" },
3135 { "VK_EXT_host_query_reset", "VK_VERSION_1_2" },
3136 { "VK_EXT_index_type_uint8", "VK_KHR_index_type_uint8" },
3137 { "VK_EXT_extended_dynamic_state", "VK_VERSION_1_3" },
3138 { "VK_EXT_host_image_copy", "VK_VERSION_1_4" },
3139 { "VK_KHR_map_memory2", "VK_VERSION_1_4" },
3140 { "VK_EXT_surface_maintenance1", "VK_KHR_surface_maintenance1" },
3141 { "VK_EXT_swapchain_maintenance1", "VK_KHR_swapchain_maintenance1" },
3142 { "VK_EXT_shader_demote_to_helper_invocation", "VK_VERSION_1_3" },
3143 { "VK_KHR_shader_integer_dot_product", "VK_VERSION_1_3" },
3144 { "VK_EXT_texel_buffer_alignment", "VK_VERSION_1_3" },
3145 { "VK_EXT_robustness2", "VK_KHR_robustness2" },
3146 { "VK_KHR_shader_non_semantic_info", "VK_VERSION_1_3" },
3147 { "VK_EXT_private_data", "VK_VERSION_1_3" },
3148 { "VK_EXT_pipeline_creation_cache_control", "VK_VERSION_1_3" },
3149 { "VK_KHR_synchronization2", "VK_VERSION_1_3" },
3150 { "VK_KHR_zero_initialize_workgroup_memory", "VK_VERSION_1_3" },
3151 { "VK_EXT_ycbcr_2plane_444_formats", "VK_VERSION_1_3" },
3152 { "VK_EXT_image_robustness", "VK_VERSION_1_3" },
3153 { "VK_KHR_copy_commands2", "VK_VERSION_1_3" },
3154 { "VK_EXT_4444_formats", "VK_VERSION_1_3" },
3155 { "VK_ARM_rasterization_order_attachment_access",
3156 "VK_EXT_rasterization_order_attachment_access" },
3157 { "VK_VALVE_mutable_descriptor_type", "VK_EXT_mutable_descriptor_type" },
3158 { "VK_KHR_format_feature_flags2", "VK_VERSION_1_3" },
3159 { "VK_EXT_present_mode_fifo_latest_ready", "VK_KHR_present_mode_fifo_latest_ready" },
3160 { "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3" },
3161 { "VK_EXT_global_priority_query", "VK_KHR_global_priority" },
3162 { "VK_EXT_load_store_op_none", "VK_KHR_load_store_op_none" },
3163 { "VK_KHR_maintenance4", "VK_VERSION_1_3" },
3164 { "VK_KHR_shader_subgroup_rotate", "VK_VERSION_1_4" },
3165 { "VK_EXT_depth_clamp_zero_one", "VK_KHR_depth_clamp_zero_one" },
3166 { "VK_QCOM_fragment_density_map_offset", "VK_EXT_fragment_density_map_offset" },
3167 { "VK_NV_copy_memory_indirect", "VK_KHR_copy_memory_indirect" },
3168 { "VK_NV_memory_decompression", "VK_EXT_memory_decompression" },
3169 { "VK_EXT_pipeline_protected_access", "VK_VERSION_1_4" },
3170 { "VK_KHR_maintenance5", "VK_VERSION_1_4" },
3171 { "VK_NV_ray_tracing_invocation_reorder", "VK_EXT_ray_tracing_invocation_reorder" },
3172 { "VK_KHR_vertex_attribute_divisor", "VK_VERSION_1_4" },
3173 { "VK_KHR_load_store_op_none", "VK_VERSION_1_4" },
3174 { "VK_KHR_shader_float_controls2", "VK_VERSION_1_4" },
3175 { "VK_KHR_index_type_uint8", "VK_VERSION_1_4" },
3176 { "VK_KHR_line_rasterization", "VK_VERSION_1_4" },
3177 { "VK_KHR_shader_expect_assume", "VK_VERSION_1_4" },
3178 { "VK_KHR_maintenance6", "VK_VERSION_1_4" },
3179 { "VK_EXT_vertex_attribute_robustness", "VK_KHR_maintenance9" } };
3180 return promotedExtensions;
3181 }
3182
3183 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension )
3184 {
3185 if ( extension == "VK_EXT_debug_report" )
3186 {
3187 return "VK_EXT_debug_utils";
3188 }
3189 if ( extension == "VK_NV_glsl_shader" )
3190 {
3191 return "";
3192 }
3193 if ( extension == "VK_NV_dedicated_allocation" )
3194 {
3195 return "VK_KHR_dedicated_allocation";
3196 }
3197 if ( extension == "VK_AMD_gpu_shader_half_float" )
3198 {
3199 return "VK_KHR_shader_float16_int8";
3200 }
3201 if ( extension == "VK_IMG_format_pvrtc" )
3202 {
3203 return "";
3204 }
3205 if ( extension == "VK_NV_external_memory_capabilities" )
3206 {
3207 return "VK_KHR_external_memory_capabilities";
3208 }
3209 if ( extension == "VK_NV_external_memory" )
3210 {
3211 return "VK_KHR_external_memory";
3212 }
3213 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3214 if ( extension == "VK_NV_external_memory_win32" )
3215 {
3216 return "VK_KHR_external_memory_win32";
3217 }
3218 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3219 if ( extension == "VK_EXT_validation_flags" )
3220 {
3221 return "VK_EXT_layer_settings";
3222 }
3223 if ( extension == "VK_EXT_shader_subgroup_ballot" )
3224 {
3225 return "VK_VERSION_1_2";
3226 }
3227 if ( extension == "VK_EXT_shader_subgroup_vote" )
3228 {
3229 return "VK_VERSION_1_1";
3230 }
3231 #if defined( VK_USE_PLATFORM_IOS_MVK )
3232 if ( extension == "VK_MVK_ios_surface" )
3233 {
3234 return "VK_EXT_metal_surface";
3235 }
3236 #endif /*VK_USE_PLATFORM_IOS_MVK*/
3237 #if defined( VK_USE_PLATFORM_MACOS_MVK )
3238 if ( extension == "VK_MVK_macos_surface" )
3239 {
3240 return "VK_EXT_metal_surface";
3241 }
3242 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
3243 if ( extension == "VK_AMD_gpu_shader_int16" )
3244 {
3245 return "VK_KHR_shader_float16_int8";
3246 }
3247 if ( extension == "VK_NV_ray_tracing" )
3248 {
3249 return "VK_KHR_ray_tracing_pipeline";
3250 }
3251 if ( extension == "VK_EXT_buffer_device_address" )
3252 {
3253 return "VK_KHR_buffer_device_address";
3254 }
3255 if ( extension == "VK_EXT_validation_features" )
3256 {
3257 return "VK_EXT_layer_settings";
3258 }
3259 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3260 if ( extension == "VK_NV_displacement_micromap" )
3261 {
3262 return "VK_NV_cluster_acceleration_structure";
3263 }
3264 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3265
3266 return "";
3267 }
3268
3269 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension )
3270 {
3271 if ( extension == "VK_AMD_negative_viewport_height" )
3272 {
3273 return "VK_KHR_maintenance1";
3274 }
3275 return "";
3276 }
3277
3278 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension )
3279 {
3280 if ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" )
3281 {
3282 return "VK_VERSION_1_2";
3283 }
3284 if ( extension == "VK_EXT_debug_marker" )
3285 {
3286 return "VK_EXT_debug_utils";
3287 }
3288 if ( extension == "VK_AMD_draw_indirect_count" )
3289 {
3290 return "VK_KHR_draw_indirect_count";
3291 }
3292 if ( extension == "VK_KHR_dynamic_rendering" )
3293 {
3294 return "VK_VERSION_1_3";
3295 }
3296 if ( extension == "VK_KHR_multiview" )
3297 {
3298 return "VK_VERSION_1_1";
3299 }
3300 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3301 if ( extension == "VK_NV_win32_keyed_mutex" )
3302 {
3303 return "VK_KHR_win32_keyed_mutex";
3304 }
3305 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3306 if ( extension == "VK_KHR_get_physical_device_properties2" )
3307 {
3308 return "VK_VERSION_1_1";
3309 }
3310 if ( extension == "VK_KHR_device_group" )
3311 {
3312 return "VK_VERSION_1_1";
3313 }
3314 if ( extension == "VK_KHR_shader_draw_parameters" )
3315 {
3316 return "VK_VERSION_1_1";
3317 }
3318 if ( extension == "VK_EXT_texture_compression_astc_hdr" )
3319 {
3320 return "VK_VERSION_1_3";
3321 }
3322 if ( extension == "VK_EXT_pipeline_robustness" )
3323 {
3324 return "VK_VERSION_1_4";
3325 }
3326 if ( extension == "VK_KHR_maintenance1" )
3327 {
3328 return "VK_VERSION_1_1";
3329 }
3330 if ( extension == "VK_KHR_device_group_creation" )
3331 {
3332 return "VK_VERSION_1_1";
3333 }
3334 if ( extension == "VK_KHR_external_memory_capabilities" )
3335 {
3336 return "VK_VERSION_1_1";
3337 }
3338 if ( extension == "VK_KHR_external_memory" )
3339 {
3340 return "VK_VERSION_1_1";
3341 }
3342 if ( extension == "VK_KHR_external_semaphore_capabilities" )
3343 {
3344 return "VK_VERSION_1_1";
3345 }
3346 if ( extension == "VK_KHR_external_semaphore" )
3347 {
3348 return "VK_VERSION_1_1";
3349 }
3350 if ( extension == "VK_KHR_push_descriptor" )
3351 {
3352 return "VK_VERSION_1_4";
3353 }
3354 if ( extension == "VK_KHR_shader_float16_int8" )
3355 {
3356 return "VK_VERSION_1_2";
3357 }
3358 if ( extension == "VK_KHR_16bit_storage" )
3359 {
3360 return "VK_VERSION_1_1";
3361 }
3362 if ( extension == "VK_KHR_descriptor_update_template" )
3363 {
3364 return "VK_VERSION_1_1";
3365 }
3366 if ( extension == "VK_KHR_imageless_framebuffer" )
3367 {
3368 return "VK_VERSION_1_2";
3369 }
3370 if ( extension == "VK_KHR_create_renderpass2" )
3371 {
3372 return "VK_VERSION_1_2";
3373 }
3374 if ( extension == "VK_KHR_external_fence_capabilities" )
3375 {
3376 return "VK_VERSION_1_1";
3377 }
3378 if ( extension == "VK_KHR_external_fence" )
3379 {
3380 return "VK_VERSION_1_1";
3381 }
3382 if ( extension == "VK_KHR_maintenance2" )
3383 {
3384 return "VK_VERSION_1_1";
3385 }
3386 if ( extension == "VK_KHR_variable_pointers" )
3387 {
3388 return "VK_VERSION_1_1";
3389 }
3390 if ( extension == "VK_KHR_dedicated_allocation" )
3391 {
3392 return "VK_VERSION_1_1";
3393 }
3394 if ( extension == "VK_EXT_sampler_filter_minmax" )
3395 {
3396 return "VK_VERSION_1_2";
3397 }
3398 if ( extension == "VK_KHR_storage_buffer_storage_class" )
3399 {
3400 return "VK_VERSION_1_1";
3401 }
3402 if ( extension == "VK_EXT_inline_uniform_block" )
3403 {
3404 return "VK_VERSION_1_3";
3405 }
3406 if ( extension == "VK_KHR_relaxed_block_layout" )
3407 {
3408 return "VK_VERSION_1_1";
3409 }
3410 if ( extension == "VK_KHR_get_memory_requirements2" )
3411 {
3412 return "VK_VERSION_1_1";
3413 }
3414 if ( extension == "VK_KHR_image_format_list" )
3415 {
3416 return "VK_VERSION_1_2";
3417 }
3418 if ( extension == "VK_KHR_sampler_ycbcr_conversion" )
3419 {
3420 return "VK_VERSION_1_1";
3421 }
3422 if ( extension == "VK_KHR_bind_memory2" )
3423 {
3424 return "VK_VERSION_1_1";
3425 }
3426 if ( extension == "VK_EXT_descriptor_indexing" )
3427 {
3428 return "VK_VERSION_1_2";
3429 }
3430 if ( extension == "VK_EXT_shader_viewport_index_layer" )
3431 {
3432 return "VK_VERSION_1_2";
3433 }
3434 if ( extension == "VK_KHR_maintenance3" )
3435 {
3436 return "VK_VERSION_1_1";
3437 }
3438 if ( extension == "VK_KHR_draw_indirect_count" )
3439 {
3440 return "VK_VERSION_1_2";
3441 }
3442 if ( extension == "VK_QCOM_render_pass_shader_resolve" )
3443 {
3444 return "VK_EXT_custom_resolve";
3445 }
3446 if ( extension == "VK_EXT_global_priority" )
3447 {
3448 return "VK_KHR_global_priority";
3449 }
3450 if ( extension == "VK_KHR_shader_subgroup_extended_types" )
3451 {
3452 return "VK_VERSION_1_2";
3453 }
3454 if ( extension == "VK_KHR_8bit_storage" )
3455 {
3456 return "VK_VERSION_1_2";
3457 }
3458 if ( extension == "VK_KHR_shader_atomic_int64" )
3459 {
3460 return "VK_VERSION_1_2";
3461 }
3462 if ( extension == "VK_EXT_calibrated_timestamps" )
3463 {
3464 return "VK_KHR_calibrated_timestamps";
3465 }
3466 if ( extension == "VK_KHR_global_priority" )
3467 {
3468 return "VK_VERSION_1_4";
3469 }
3470 if ( extension == "VK_EXT_vertex_attribute_divisor" )
3471 {
3472 return "VK_KHR_vertex_attribute_divisor";
3473 }
3474 if ( extension == "VK_EXT_pipeline_creation_feedback" )
3475 {
3476 return "VK_VERSION_1_3";
3477 }
3478 if ( extension == "VK_KHR_driver_properties" )
3479 {
3480 return "VK_VERSION_1_2";
3481 }
3482 if ( extension == "VK_KHR_shader_float_controls" )
3483 {
3484 return "VK_VERSION_1_2";
3485 }
3486 if ( extension == "VK_KHR_depth_stencil_resolve" )
3487 {
3488 return "VK_VERSION_1_2";
3489 }
3490 if ( extension == "VK_NV_compute_shader_derivatives" )
3491 {
3492 return "VK_KHR_compute_shader_derivatives";
3493 }
3494 if ( extension == "VK_NV_fragment_shader_barycentric" )
3495 {
3496 return "VK_KHR_fragment_shader_barycentric";
3497 }
3498 if ( extension == "VK_KHR_timeline_semaphore" )
3499 {
3500 return "VK_VERSION_1_2";
3501 }
3502 if ( extension == "VK_KHR_vulkan_memory_model" )
3503 {
3504 return "VK_VERSION_1_2";
3505 }
3506 if ( extension == "VK_KHR_shader_terminate_invocation" )
3507 {
3508 return "VK_VERSION_1_3";
3509 }
3510 if ( extension == "VK_EXT_scalar_block_layout" )
3511 {
3512 return "VK_VERSION_1_2";
3513 }
3514 if ( extension == "VK_EXT_subgroup_size_control" )
3515 {
3516 return "VK_VERSION_1_3";
3517 }
3518 if ( extension == "VK_KHR_dynamic_rendering_local_read" )
3519 {
3520 return "VK_VERSION_1_4";
3521 }
3522 if ( extension == "VK_KHR_spirv_1_4" )
3523 {
3524 return "VK_VERSION_1_2";
3525 }
3526 if ( extension == "VK_KHR_separate_depth_stencil_layouts" )
3527 {
3528 return "VK_VERSION_1_2";
3529 }
3530 if ( extension == "VK_EXT_tooling_info" )
3531 {
3532 return "VK_VERSION_1_3";
3533 }
3534 if ( extension == "VK_EXT_separate_stencil_usage" )
3535 {
3536 return "VK_VERSION_1_2";
3537 }
3538 if ( extension == "VK_KHR_uniform_buffer_standard_layout" )
3539 {
3540 return "VK_VERSION_1_2";
3541 }
3542 if ( extension == "VK_KHR_buffer_device_address" )
3543 {
3544 return "VK_VERSION_1_2";
3545 }
3546 if ( extension == "VK_EXT_line_rasterization" )
3547 {
3548 return "VK_KHR_line_rasterization";
3549 }
3550 if ( extension == "VK_EXT_host_query_reset" )
3551 {
3552 return "VK_VERSION_1_2";
3553 }
3554 if ( extension == "VK_EXT_index_type_uint8" )
3555 {
3556 return "VK_KHR_index_type_uint8";
3557 }
3558 if ( extension == "VK_EXT_extended_dynamic_state" )
3559 {
3560 return "VK_VERSION_1_3";
3561 }
3562 if ( extension == "VK_EXT_host_image_copy" )
3563 {
3564 return "VK_VERSION_1_4";
3565 }
3566 if ( extension == "VK_KHR_map_memory2" )
3567 {
3568 return "VK_VERSION_1_4";
3569 }
3570 if ( extension == "VK_EXT_surface_maintenance1" )
3571 {
3572 return "VK_KHR_surface_maintenance1";
3573 }
3574 if ( extension == "VK_EXT_swapchain_maintenance1" )
3575 {
3576 return "VK_KHR_swapchain_maintenance1";
3577 }
3578 if ( extension == "VK_EXT_shader_demote_to_helper_invocation" )
3579 {
3580 return "VK_VERSION_1_3";
3581 }
3582 if ( extension == "VK_KHR_shader_integer_dot_product" )
3583 {
3584 return "VK_VERSION_1_3";
3585 }
3586 if ( extension == "VK_EXT_texel_buffer_alignment" )
3587 {
3588 return "VK_VERSION_1_3";
3589 }
3590 if ( extension == "VK_EXT_robustness2" )
3591 {
3592 return "VK_KHR_robustness2";
3593 }
3594 if ( extension == "VK_KHR_shader_non_semantic_info" )
3595 {
3596 return "VK_VERSION_1_3";
3597 }
3598 if ( extension == "VK_EXT_private_data" )
3599 {
3600 return "VK_VERSION_1_3";
3601 }
3602 if ( extension == "VK_EXT_pipeline_creation_cache_control" )
3603 {
3604 return "VK_VERSION_1_3";
3605 }
3606 if ( extension == "VK_KHR_synchronization2" )
3607 {
3608 return "VK_VERSION_1_3";
3609 }
3610 if ( extension == "VK_KHR_zero_initialize_workgroup_memory" )
3611 {
3612 return "VK_VERSION_1_3";
3613 }
3614 if ( extension == "VK_EXT_ycbcr_2plane_444_formats" )
3615 {
3616 return "VK_VERSION_1_3";
3617 }
3618 if ( extension == "VK_EXT_image_robustness" )
3619 {
3620 return "VK_VERSION_1_3";
3621 }
3622 if ( extension == "VK_KHR_copy_commands2" )
3623 {
3624 return "VK_VERSION_1_3";
3625 }
3626 if ( extension == "VK_EXT_4444_formats" )
3627 {
3628 return "VK_VERSION_1_3";
3629 }
3630 if ( extension == "VK_ARM_rasterization_order_attachment_access" )
3631 {
3632 return "VK_EXT_rasterization_order_attachment_access";
3633 }
3634 if ( extension == "VK_VALVE_mutable_descriptor_type" )
3635 {
3636 return "VK_EXT_mutable_descriptor_type";
3637 }
3638 if ( extension == "VK_KHR_format_feature_flags2" )
3639 {
3640 return "VK_VERSION_1_3";
3641 }
3642 if ( extension == "VK_EXT_present_mode_fifo_latest_ready" )
3643 {
3644 return "VK_KHR_present_mode_fifo_latest_ready";
3645 }
3646 if ( extension == "VK_EXT_extended_dynamic_state2" )
3647 {
3648 return "VK_VERSION_1_3";
3649 }
3650 if ( extension == "VK_EXT_global_priority_query" )
3651 {
3652 return "VK_KHR_global_priority";
3653 }
3654 if ( extension == "VK_EXT_load_store_op_none" )
3655 {
3656 return "VK_KHR_load_store_op_none";
3657 }
3658 if ( extension == "VK_KHR_maintenance4" )
3659 {
3660 return "VK_VERSION_1_3";
3661 }
3662 if ( extension == "VK_KHR_shader_subgroup_rotate" )
3663 {
3664 return "VK_VERSION_1_4";
3665 }
3666 if ( extension == "VK_EXT_depth_clamp_zero_one" )
3667 {
3668 return "VK_KHR_depth_clamp_zero_one";
3669 }
3670 if ( extension == "VK_QCOM_fragment_density_map_offset" )
3671 {
3672 return "VK_EXT_fragment_density_map_offset";
3673 }
3674 if ( extension == "VK_NV_copy_memory_indirect" )
3675 {
3676 return "VK_KHR_copy_memory_indirect";
3677 }
3678 if ( extension == "VK_NV_memory_decompression" )
3679 {
3680 return "VK_EXT_memory_decompression";
3681 }
3682 if ( extension == "VK_EXT_pipeline_protected_access" )
3683 {
3684 return "VK_VERSION_1_4";
3685 }
3686 if ( extension == "VK_KHR_maintenance5" )
3687 {
3688 return "VK_VERSION_1_4";
3689 }
3690 if ( extension == "VK_NV_ray_tracing_invocation_reorder" )
3691 {
3692 return "VK_EXT_ray_tracing_invocation_reorder";
3693 }
3694 if ( extension == "VK_KHR_vertex_attribute_divisor" )
3695 {
3696 return "VK_VERSION_1_4";
3697 }
3698 if ( extension == "VK_KHR_load_store_op_none" )
3699 {
3700 return "VK_VERSION_1_4";
3701 }
3702 if ( extension == "VK_KHR_shader_float_controls2" )
3703 {
3704 return "VK_VERSION_1_4";
3705 }
3706 if ( extension == "VK_KHR_index_type_uint8" )
3707 {
3708 return "VK_VERSION_1_4";
3709 }
3710 if ( extension == "VK_KHR_line_rasterization" )
3711 {
3712 return "VK_VERSION_1_4";
3713 }
3714 if ( extension == "VK_KHR_shader_expect_assume" )
3715 {
3716 return "VK_VERSION_1_4";
3717 }
3718 if ( extension == "VK_KHR_maintenance6" )
3719 {
3720 return "VK_VERSION_1_4";
3721 }
3722 if ( extension == "VK_EXT_vertex_attribute_robustness" )
3723 {
3724 return "VK_KHR_maintenance9";
3725 }
3726 return "";
3727 }
3728
3729 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension )
3730 {
3731 return ( extension == "VK_EXT_debug_report" ) || ( extension == "VK_NV_glsl_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) ||
3732 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_IMG_format_pvrtc" ) || ( extension == "VK_NV_external_memory_capabilities" ) ||
3733 ( extension == "VK_NV_external_memory" )
3734 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3735 || ( extension == "VK_NV_external_memory_win32" )
3736 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3737 || ( extension == "VK_EXT_validation_flags" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || ( extension == "VK_EXT_shader_subgroup_vote" )
3738 #if defined( VK_USE_PLATFORM_IOS_MVK )
3739 || ( extension == "VK_MVK_ios_surface" )
3740 #endif /*VK_USE_PLATFORM_IOS_MVK*/
3741 #if defined( VK_USE_PLATFORM_MACOS_MVK )
3742 || ( extension == "VK_MVK_macos_surface" )
3743 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
3744 || ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
3745 ( extension == "VK_EXT_validation_features" )
3746 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3747 || ( extension == "VK_NV_displacement_micromap" )
3748 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3749 || false;
3750 }
3751
3752 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension )
3753 {
3754 return ( extension == "VK_KHR_swapchain" ) || ( extension == "VK_KHR_display_swapchain" ) || ( extension == "VK_NV_glsl_shader" ) ||
3755 ( extension == "VK_EXT_depth_range_unrestricted" ) || ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) ||
3756 ( extension == "VK_IMG_filter_cubic" ) || ( extension == "VK_AMD_rasterization_order" ) || ( extension == "VK_AMD_shader_trinary_minmax" ) ||
3757 ( extension == "VK_AMD_shader_explicit_vertex_parameter" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_KHR_video_queue" ) ||
3758 ( extension == "VK_KHR_video_decode_queue" ) || ( extension == "VK_AMD_gcn_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) ||
3759 ( extension == "VK_EXT_transform_feedback" ) || ( extension == "VK_NVX_binary_import" ) || ( extension == "VK_NVX_image_view_handle" ) ||
3760 ( extension == "VK_AMD_draw_indirect_count" ) || ( extension == "VK_AMD_negative_viewport_height" ) ||
3761 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_AMD_shader_ballot" ) || ( extension == "VK_KHR_video_encode_h264" ) ||
3762 ( extension == "VK_KHR_video_encode_h265" ) || ( extension == "VK_KHR_video_decode_h264" ) || ( extension == "VK_AMD_texture_gather_bias_lod" ) ||
3763 ( extension == "VK_AMD_shader_info" ) || ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_AMD_shader_image_load_store_lod" ) ||
3764 ( extension == "VK_NV_corner_sampled_image" ) || ( extension == "VK_KHR_multiview" ) || ( extension == "VK_IMG_format_pvrtc" ) ||
3765 ( extension == "VK_NV_external_memory" )
3766 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3767 || ( extension == "VK_NV_external_memory_win32" ) || ( extension == "VK_NV_win32_keyed_mutex" )
3768 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3769 || ( extension == "VK_KHR_device_group" ) || ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) ||
3770 ( extension == "VK_EXT_shader_subgroup_vote" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) ||
3771 ( extension == "VK_EXT_astc_decode_mode" ) || ( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) ||
3772 ( extension == "VK_KHR_external_memory" )
3773 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3774 || ( extension == "VK_KHR_external_memory_win32" )
3775 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3776 || ( extension == "VK_KHR_external_memory_fd" )
3777 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3778 || ( extension == "VK_KHR_win32_keyed_mutex" )
3779 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3780 || ( extension == "VK_KHR_external_semaphore" )
3781 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3782 || ( extension == "VK_KHR_external_semaphore_win32" )
3783 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3784 || ( extension == "VK_KHR_external_semaphore_fd" ) || ( extension == "VK_KHR_push_descriptor" ) || ( extension == "VK_EXT_conditional_rendering" ) ||
3785 ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) || ( extension == "VK_KHR_incremental_present" ) ||
3786 ( extension == "VK_KHR_descriptor_update_template" ) || ( extension == "VK_NV_clip_space_w_scaling" ) || ( extension == "VK_EXT_display_control" ) ||
3787 ( extension == "VK_GOOGLE_display_timing" ) || ( extension == "VK_NV_sample_mask_override_coverage" ) ||
3788 ( extension == "VK_NV_geometry_shader_passthrough" ) || ( extension == "VK_NV_viewport_array2" ) ||
3789 ( extension == "VK_NVX_multiview_per_view_attributes" ) || ( extension == "VK_NV_viewport_swizzle" ) ||
3790 ( extension == "VK_EXT_discard_rectangles" ) || ( extension == "VK_EXT_conservative_rasterization" ) ||
3791 ( extension == "VK_EXT_depth_clip_enable" ) || ( extension == "VK_EXT_hdr_metadata" ) || ( extension == "VK_KHR_imageless_framebuffer" ) ||
3792 ( extension == "VK_KHR_create_renderpass2" ) || ( extension == "VK_IMG_relaxed_line_rasterization" ) ||
3793 ( extension == "VK_KHR_shared_presentable_image" ) || ( extension == "VK_KHR_external_fence" )
3794 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3795 || ( extension == "VK_KHR_external_fence_win32" )
3796 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3797 || ( extension == "VK_KHR_external_fence_fd" ) || ( extension == "VK_KHR_performance_query" ) || ( extension == "VK_KHR_maintenance2" ) ||
3798 ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_EXT_external_memory_dma_buf" ) || ( extension == "VK_EXT_queue_family_foreign" ) ||
3799 ( extension == "VK_KHR_dedicated_allocation" )
3800 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
3801 || ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" )
3802 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
3803 || ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) ||
3804 ( extension == "VK_AMD_gpu_shader_int16" )
3805 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3806 || ( extension == "VK_AMDX_shader_enqueue" )
3807 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3808 || ( extension == "VK_AMD_mixed_attachment_samples" ) || ( extension == "VK_AMD_shader_fragment_mask" ) ||
3809 ( extension == "VK_EXT_inline_uniform_block" ) || ( extension == "VK_EXT_shader_stencil_export" ) || ( extension == "VK_KHR_shader_bfloat16" ) ||
3810 ( extension == "VK_EXT_sample_locations" ) || ( extension == "VK_KHR_relaxed_block_layout" ) || ( extension == "VK_KHR_get_memory_requirements2" ) ||
3811 ( extension == "VK_KHR_image_format_list" ) || ( extension == "VK_EXT_blend_operation_advanced" ) ||
3812 ( extension == "VK_NV_fragment_coverage_to_color" ) || ( extension == "VK_KHR_acceleration_structure" ) ||
3813 ( extension == "VK_KHR_ray_tracing_pipeline" ) || ( extension == "VK_KHR_ray_query" ) || ( extension == "VK_NV_framebuffer_mixed_samples" ) ||
3814 ( extension == "VK_NV_fill_rectangle" ) || ( extension == "VK_NV_shader_sm_builtins" ) || ( extension == "VK_EXT_post_depth_coverage" ) ||
3815 ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) ||
3816 ( extension == "VK_EXT_image_drm_format_modifier" ) || ( extension == "VK_EXT_validation_cache" ) || ( extension == "VK_EXT_descriptor_indexing" ) ||
3817 ( extension == "VK_EXT_shader_viewport_index_layer" )
3818 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3819 || ( extension == "VK_KHR_portability_subset" )
3820 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3821 || ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) ||
3822 ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) ||
3823 ( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_EXT_global_priority" ) ||
3824 ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) ||
3825 ( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) ||
3826 ( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) ||
3827 ( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) ||
3828 ( extension == "VK_AMD_memory_overallocation_behavior" ) || ( extension == "VK_EXT_vertex_attribute_divisor" )
3829 #if defined( VK_USE_PLATFORM_GGP )
3830 || ( extension == "VK_GGP_frame_token" )
3831 #endif /*VK_USE_PLATFORM_GGP*/
3832 || ( extension == "VK_EXT_pipeline_creation_feedback" ) || ( extension == "VK_KHR_driver_properties" ) ||
3833 ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_NV_shader_subgroup_partitioned" ) ||
3834 ( extension == "VK_KHR_depth_stencil_resolve" ) || ( extension == "VK_KHR_swapchain_mutable_format" ) ||
3835 ( extension == "VK_NV_compute_shader_derivatives" ) || ( extension == "VK_NV_mesh_shader" ) ||
3836 ( extension == "VK_NV_fragment_shader_barycentric" ) || ( extension == "VK_NV_shader_image_footprint" ) ||
3837 ( extension == "VK_NV_scissor_exclusive" ) || ( extension == "VK_NV_device_diagnostic_checkpoints" ) ||
3838 ( extension == "VK_KHR_timeline_semaphore" ) || ( extension == "VK_INTEL_shader_integer_functions2" ) ||
3839 ( extension == "VK_INTEL_performance_query" ) || ( extension == "VK_KHR_vulkan_memory_model" ) || ( extension == "VK_EXT_pci_bus_info" ) ||
3840 ( extension == "VK_AMD_display_native_hdr" ) || ( extension == "VK_KHR_shader_terminate_invocation" ) ||
3841 ( extension == "VK_EXT_fragment_density_map" ) || ( extension == "VK_EXT_scalar_block_layout" ) ||
3842 ( extension == "VK_GOOGLE_hlsl_functionality1" ) || ( extension == "VK_GOOGLE_decorate_string" ) ||
3843 ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_fragment_shading_rate" ) ||
3844 ( extension == "VK_AMD_shader_core_properties2" ) || ( extension == "VK_AMD_device_coherent_memory" ) ||
3845 ( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_EXT_shader_image_atomic_int64" ) ||
3846 ( extension == "VK_KHR_shader_quad_control" ) || ( extension == "VK_KHR_spirv_1_4" ) || ( extension == "VK_EXT_memory_budget" ) ||
3847 ( extension == "VK_EXT_memory_priority" ) || ( extension == "VK_NV_dedicated_allocation_image_aliasing" ) ||
3848 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
3849 ( extension == "VK_EXT_tooling_info" ) || ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_present_wait" ) ||
3850 ( extension == "VK_NV_cooperative_matrix" ) || ( extension == "VK_NV_coverage_reduction_mode" ) ||
3851 ( extension == "VK_EXT_fragment_shader_interlock" ) || ( extension == "VK_EXT_ycbcr_image_arrays" ) ||
3852 ( extension == "VK_KHR_uniform_buffer_standard_layout" ) || ( extension == "VK_EXT_provoking_vertex" )
3853 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3854 || ( extension == "VK_EXT_full_screen_exclusive" )
3855 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3856 || ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_line_rasterization" ) || ( extension == "VK_EXT_shader_atomic_float" ) ||
3857 ( extension == "VK_EXT_host_query_reset" ) || ( extension == "VK_EXT_index_type_uint8" ) || ( extension == "VK_EXT_extended_dynamic_state" ) ||
3858 ( extension == "VK_KHR_deferred_host_operations" ) || ( extension == "VK_KHR_pipeline_executable_properties" ) ||
3859 ( extension == "VK_EXT_host_image_copy" ) || ( extension == "VK_KHR_map_memory2" ) || ( extension == "VK_EXT_map_memory_placed" ) ||
3860 ( extension == "VK_EXT_shader_atomic_float2" ) || ( extension == "VK_EXT_swapchain_maintenance1" ) ||
3861 ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || ( extension == "VK_NV_device_generated_commands" ) ||
3862 ( extension == "VK_NV_inherited_viewport_scissor" ) || ( extension == "VK_KHR_shader_integer_dot_product" ) ||
3863 ( extension == "VK_EXT_texel_buffer_alignment" ) || ( extension == "VK_QCOM_render_pass_transform" ) ||
3864 ( extension == "VK_EXT_depth_bias_control" ) || ( extension == "VK_EXT_device_memory_report" ) || ( extension == "VK_EXT_robustness2" ) ||
3865 ( extension == "VK_EXT_custom_border_color" ) || ( extension == "VK_GOOGLE_user_type" ) || ( extension == "VK_KHR_pipeline_library" ) ||
3866 ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_KHR_present_id" ) ||
3867 ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) ||
3868 ( extension == "VK_KHR_video_encode_queue" ) || ( extension == "VK_NV_device_diagnostics_config" ) ||
3869 ( extension == "VK_QCOM_render_pass_store_ops" )
3870 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3871 || ( extension == "VK_NV_cuda_kernel_launch" )
3872 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3873 || ( extension == "VK_QCOM_tile_shading" ) || ( extension == "VK_NV_low_latency" )
3874 #if defined( VK_USE_PLATFORM_METAL_EXT )
3875 || ( extension == "VK_EXT_metal_objects" )
3876 #endif /*VK_USE_PLATFORM_METAL_EXT*/
3877 || ( extension == "VK_KHR_synchronization2" ) || ( extension == "VK_EXT_descriptor_buffer" ) || ( extension == "VK_EXT_graphics_pipeline_library" ) ||
3878 ( extension == "VK_AMD_shader_early_and_late_fragment_tests" ) || ( extension == "VK_KHR_fragment_shader_barycentric" ) ||
3879 ( extension == "VK_KHR_shader_subgroup_uniform_control_flow" ) || ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) ||
3880 ( extension == "VK_NV_fragment_shading_rate_enums" ) || ( extension == "VK_NV_ray_tracing_motion_blur" ) || ( extension == "VK_EXT_mesh_shader" ) ||
3881 ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || ( extension == "VK_EXT_fragment_density_map2" ) ||
3882 ( extension == "VK_QCOM_rotated_copy_commands" ) || ( extension == "VK_EXT_image_robustness" ) ||
3883 ( extension == "VK_KHR_workgroup_memory_explicit_layout" ) || ( extension == "VK_KHR_copy_commands2" ) ||
3884 ( extension == "VK_EXT_image_compression_control" ) || ( extension == "VK_EXT_attachment_feedback_loop_layout" ) ||
3885 ( extension == "VK_EXT_4444_formats" ) || ( extension == "VK_EXT_device_fault" ) ||
3886 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_EXT_rgba10x6_formats" )
3887 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3888 || ( extension == "VK_NV_acquire_winrt_display" )
3889 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3890 || ( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_EXT_vertex_input_dynamic_state" ) ||
3891 ( extension == "VK_EXT_physical_device_drm" ) || ( extension == "VK_EXT_device_address_binding_report" ) ||
3892 ( extension == "VK_EXT_depth_clip_control" ) || ( extension == "VK_EXT_primitive_topology_list_restart" ) ||
3893 ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_present_mode_fifo_latest_ready" )
3894 #if defined( VK_USE_PLATFORM_FUCHSIA )
3895 || ( extension == "VK_FUCHSIA_external_memory" ) || ( extension == "VK_FUCHSIA_external_semaphore" ) || ( extension == "VK_FUCHSIA_buffer_collection" )
3896 #endif /*VK_USE_PLATFORM_FUCHSIA*/
3897 || ( extension == "VK_HUAWEI_subpass_shading" ) || ( extension == "VK_HUAWEI_invocation_mask" ) || ( extension == "VK_NV_external_memory_rdma" ) ||
3898 ( extension == "VK_EXT_pipeline_properties" ) || ( extension == "VK_EXT_frame_boundary" ) ||
3899 ( extension == "VK_EXT_multisampled_render_to_single_sampled" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) ||
3900 ( extension == "VK_EXT_color_write_enable" ) || ( extension == "VK_EXT_primitives_generated_query" ) ||
3901 ( extension == "VK_KHR_ray_tracing_maintenance1" ) || ( extension == "VK_KHR_shader_untyped_pointers" ) ||
3902 ( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_VALVE_video_encode_rgb_conversion" ) ||
3903 ( extension == "VK_EXT_image_view_min_lod" ) || ( extension == "VK_EXT_multi_draw" ) || ( extension == "VK_EXT_image_2d_view_of_3d" ) ||
3904 ( extension == "VK_EXT_shader_tile_image" ) || ( extension == "VK_EXT_opacity_micromap" )
3905 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3906 || ( extension == "VK_NV_displacement_micromap" )
3907 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3908 || ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_HUAWEI_cluster_culling_shader" ) ||
3909 ( extension == "VK_EXT_border_color_swizzle" ) || ( extension == "VK_EXT_pageable_device_local_memory" ) || ( extension == "VK_KHR_maintenance4" ) ||
3910 ( extension == "VK_ARM_shader_core_properties" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) ||
3911 ( extension == "VK_ARM_scheduling_controls" ) || ( extension == "VK_EXT_image_sliced_view_of_3d" ) ||
3912 ( extension == "VK_VALVE_descriptor_set_host_mapping" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) ||
3913 ( extension == "VK_EXT_non_seamless_cube_map" ) || ( extension == "VK_ARM_render_pass_striped" ) ||
3914 ( extension == "VK_QCOM_fragment_density_map_offset" ) || ( extension == "VK_NV_copy_memory_indirect" ) ||
3915 ( extension == "VK_NV_memory_decompression" ) || ( extension == "VK_NV_device_generated_commands_compute" ) ||
3916 ( extension == "VK_NV_ray_tracing_linear_swept_spheres" ) || ( extension == "VK_NV_linear_color_attachment" ) ||
3917 ( extension == "VK_KHR_shader_maximal_reconvergence" ) || ( extension == "VK_EXT_image_compression_control_swapchain" ) ||
3918 ( extension == "VK_QCOM_image_processing" ) || ( extension == "VK_EXT_nested_command_buffer" )
3919 #if defined( VK_USE_PLATFORM_OHOS )
3920 || ( extension == "VK_OHOS_external_memory" )
3921 #endif /*VK_USE_PLATFORM_OHOS*/
3922 || ( extension == "VK_EXT_external_memory_acquire_unmodified" ) || ( extension == "VK_EXT_extended_dynamic_state3" ) ||
3923 ( extension == "VK_EXT_subpass_merge_feedback" ) || ( extension == "VK_ARM_tensors" ) || ( extension == "VK_EXT_shader_module_identifier" ) ||
3924 ( extension == "VK_EXT_rasterization_order_attachment_access" ) || ( extension == "VK_NV_optical_flow" ) ||
3925 ( extension == "VK_EXT_legacy_dithering" ) || ( extension == "VK_EXT_pipeline_protected_access" )
3926 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
3927 || ( extension == "VK_ANDROID_external_format_resolve" )
3928 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
3929 || ( extension == "VK_KHR_maintenance5" ) || ( extension == "VK_AMD_anti_lag" )
3930 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3931 || ( extension == "VK_AMDX_dense_geometry_format" )
3932 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3933 || ( extension == "VK_KHR_present_id2" ) || ( extension == "VK_KHR_present_wait2" ) || ( extension == "VK_KHR_ray_tracing_position_fetch" ) ||
3934 ( extension == "VK_EXT_shader_object" ) || ( extension == "VK_KHR_pipeline_binary" ) || ( extension == "VK_QCOM_tile_properties" ) ||
3935 ( extension == "VK_SEC_amigo_profiling" ) || ( extension == "VK_KHR_swapchain_maintenance1" ) ||
3936 ( extension == "VK_QCOM_multiview_per_view_viewports" ) || ( extension == "VK_NV_ray_tracing_invocation_reorder" ) ||
3937 ( extension == "VK_NV_cooperative_vector" ) || ( extension == "VK_NV_extended_sparse_address_space" ) ||
3938 ( extension == "VK_EXT_mutable_descriptor_type" ) || ( extension == "VK_EXT_legacy_vertex_attributes" ) ||
3939 ( extension == "VK_ARM_shader_core_builtins" ) || ( extension == "VK_EXT_pipeline_library_group_handles" ) ||
3940 ( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || ( extension == "VK_NV_low_latency2" ) ||
3941 ( extension == "VK_KHR_cooperative_matrix" ) || ( extension == "VK_ARM_data_graph" ) || ( extension == "VK_QCOM_multiview_per_view_render_areas" ) ||
3942 ( extension == "VK_KHR_compute_shader_derivatives" ) || ( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) ||
3943 ( extension == "VK_KHR_video_decode_vp9" ) || ( extension == "VK_KHR_video_maintenance1" ) || ( extension == "VK_NV_per_stage_descriptor_set" ) ||
3944 ( extension == "VK_QCOM_image_processing2" ) || ( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) ||
3945 ( extension == "VK_QCOM_filter_cubic_clamp" ) || ( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) ||
3946 ( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_KHR_load_store_op_none" ) ||
3947 ( extension == "VK_KHR_unified_image_layouts" ) || ( extension == "VK_KHR_shader_float_controls2" )
3948 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
3949 || ( extension == "VK_QNX_external_memory_screen_buffer" )
3950 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
3951 || ( extension == "VK_MSFT_layered_driver" ) || ( extension == "VK_KHR_index_type_uint8" ) || ( extension == "VK_KHR_line_rasterization" ) ||
3952 ( extension == "VK_KHR_calibrated_timestamps" ) || ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) ||
3953 ( extension == "VK_NV_descriptor_pool_overallocation" ) || ( extension == "VK_QCOM_tile_memory_heap" ) ||
3954 ( extension == "VK_KHR_copy_memory_indirect" ) || ( extension == "VK_EXT_memory_decompression" ) ||
3955 ( extension == "VK_KHR_video_encode_intra_refresh" ) || ( extension == "VK_KHR_video_encode_quantization_map" ) ||
3956 ( extension == "VK_NV_raw_access_chains" ) || ( extension == "VK_NV_external_compute_queue" ) ||
3957 ( extension == "VK_KHR_shader_relaxed_extended_instruction" ) || ( extension == "VK_NV_command_buffer_inheritance" ) ||
3958 ( extension == "VK_KHR_maintenance7" ) || ( extension == "VK_NV_shader_atomic_float16_vector" ) ||
3959 ( extension == "VK_EXT_shader_replicated_composites" ) || ( extension == "VK_EXT_shader_float8" ) ||
3960 ( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) ||
3961 ( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) ||
3962 ( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_KHR_shader_fma" ) ||
3963 ( extension == "VK_EXT_ray_tracing_invocation_reorder" ) || ( extension == "VK_EXT_depth_clamp_control" ) ||
3964 ( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" )
3965 #if defined( VK_USE_PLATFORM_OHOS )
3966 || ( extension == "VK_OHOS_native_buffer" )
3967 #endif /*VK_USE_PLATFORM_OHOS*/
3968 || ( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" )
3969 #if defined( VK_USE_PLATFORM_METAL_EXT )
3970 || ( extension == "VK_EXT_external_memory_metal" )
3971 #endif /*VK_USE_PLATFORM_METAL_EXT*/
3972 || ( extension == "VK_KHR_depth_clamp_zero_one" ) || ( extension == "VK_ARM_performance_counters_by_region" ) ||
3973 ( extension == "VK_EXT_vertex_attribute_robustness" ) || ( extension == "VK_ARM_format_pack" ) ||
3974 ( extension == "VK_VALVE_fragment_density_map_layered" ) || ( extension == "VK_KHR_robustness2" )
3975 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3976 || ( extension == "VK_NV_present_metering" )
3977 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3978 || ( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) ||
3979 ( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) ||
3980 ( extension == "VK_EXT_custom_resolve" ) || ( extension == "VK_QCOM_data_graph_model" ) || ( extension == "VK_KHR_maintenance10" ) ||
3981 ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) || ( extension == "VK_EXT_shader_uniform_buffer_unsized_array" );
3982 }
3983
3984 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension )
3985 {
3986 return ( extension == "VK_KHR_surface" ) || ( extension == "VK_KHR_display" )
3987 #if defined( VK_USE_PLATFORM_XLIB_KHR )
3988 || ( extension == "VK_KHR_xlib_surface" )
3989 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
3990 #if defined( VK_USE_PLATFORM_XCB_KHR )
3991 || ( extension == "VK_KHR_xcb_surface" )
3992 #endif /*VK_USE_PLATFORM_XCB_KHR*/
3993 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
3994 || ( extension == "VK_KHR_wayland_surface" )
3995 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
3996 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
3997 || ( extension == "VK_KHR_android_surface" )
3998 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
3999 #if defined( VK_USE_PLATFORM_WIN32_KHR )
4000 || ( extension == "VK_KHR_win32_surface" )
4001 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
4002 || ( extension == "VK_EXT_debug_report" )
4003 #if defined( VK_USE_PLATFORM_GGP )
4004 || ( extension == "VK_GGP_stream_descriptor_surface" )
4005 #endif /*VK_USE_PLATFORM_GGP*/
4006 || ( extension == "VK_NV_external_memory_capabilities" ) || ( extension == "VK_KHR_get_physical_device_properties2" ) ||
4007 ( extension == "VK_EXT_validation_flags" )
4008 #if defined( VK_USE_PLATFORM_VI_NN )
4009 || ( extension == "VK_NN_vi_surface" )
4010 #endif /*VK_USE_PLATFORM_VI_NN*/
4011 || ( extension == "VK_KHR_device_group_creation" ) || ( extension == "VK_KHR_external_memory_capabilities" ) ||
4012 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_EXT_direct_mode_display" )
4013 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
4014 || ( extension == "VK_EXT_acquire_xlib_display" )
4015 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
4016 || ( extension == "VK_EXT_display_surface_counter" ) || ( extension == "VK_EXT_swapchain_colorspace" ) ||
4017 ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_get_surface_capabilities2" ) ||
4018 ( extension == "VK_KHR_get_display_properties2" )
4019 #if defined( VK_USE_PLATFORM_IOS_MVK )
4020 || ( extension == "VK_MVK_ios_surface" )
4021 #endif /*VK_USE_PLATFORM_IOS_MVK*/
4022 #if defined( VK_USE_PLATFORM_MACOS_MVK )
4023 || ( extension == "VK_MVK_macos_surface" )
4024 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
4025 || ( extension == "VK_EXT_debug_utils" )
4026 #if defined( VK_USE_PLATFORM_FUCHSIA )
4027 || ( extension == "VK_FUCHSIA_imagepipe_surface" )
4028 #endif /*VK_USE_PLATFORM_FUCHSIA*/
4029 #if defined( VK_USE_PLATFORM_METAL_EXT )
4030 || ( extension == "VK_EXT_metal_surface" )
4031 #endif /*VK_USE_PLATFORM_METAL_EXT*/
4032 || ( extension == "VK_KHR_surface_protected_capabilities" ) || ( extension == "VK_EXT_validation_features" ) ||
4033 ( extension == "VK_EXT_headless_surface" ) || ( extension == "VK_EXT_surface_maintenance1" ) || ( extension == "VK_EXT_acquire_drm_display" )
4034 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
4035 || ( extension == "VK_EXT_directfb_surface" )
4036 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
4037 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
4038 || ( extension == "VK_QNX_screen_surface" )
4039 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
4040 || ( extension == "VK_KHR_portability_enumeration" ) || ( extension == "VK_GOOGLE_surfaceless_query" ) ||
4041 ( extension == "VK_LUNARG_direct_driver_loading" ) || ( extension == "VK_KHR_surface_maintenance1" ) || ( extension == "VK_EXT_layer_settings" ) ||
4042 ( extension == "VK_NV_display_stereo" )
4043 #if defined( VK_USE_PLATFORM_OHOS )
4044 || ( extension == "VK_OHOS_surface" )
4045 #endif /*VK_USE_PLATFORM_OHOS*/
4046 ;
4047 }
4048
4049 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension )
4050 {
4051 return ( extension == "VK_AMD_negative_viewport_height" );
4052 }
4053
4054 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension )
4055 {
4056 return ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_AMD_draw_indirect_count" ) ||
4057 ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_KHR_multiview" )
4058 #if defined( VK_USE_PLATFORM_WIN32_KHR )
4059 || ( extension == "VK_NV_win32_keyed_mutex" )
4060 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
4061 || ( extension == "VK_KHR_get_physical_device_properties2" ) || ( extension == "VK_KHR_device_group" ) ||
4062 ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) ||
4063 ( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) || ( extension == "VK_KHR_device_group_creation" ) ||
4064 ( extension == "VK_KHR_external_memory_capabilities" ) || ( extension == "VK_KHR_external_memory" ) ||
4065 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_KHR_external_semaphore" ) ||
4066 ( extension == "VK_KHR_push_descriptor" ) || ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) ||
4067 ( extension == "VK_KHR_descriptor_update_template" ) || ( extension == "VK_KHR_imageless_framebuffer" ) ||
4068 ( extension == "VK_KHR_create_renderpass2" ) || ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_external_fence" ) ||
4069 ( extension == "VK_KHR_maintenance2" ) || ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_KHR_dedicated_allocation" ) ||
4070 ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) ||
4071 ( extension == "VK_EXT_inline_uniform_block" ) || ( extension == "VK_KHR_relaxed_block_layout" ) ||
4072 ( extension == "VK_KHR_get_memory_requirements2" ) || ( extension == "VK_KHR_image_format_list" ) ||
4073 ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) || ( extension == "VK_EXT_descriptor_indexing" ) ||
4074 ( extension == "VK_EXT_shader_viewport_index_layer" ) || ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) ||
4075 ( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_EXT_global_priority" ) ||
4076 ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) ||
4077 ( extension == "VK_KHR_shader_atomic_int64" ) || ( extension == "VK_EXT_calibrated_timestamps" ) || ( extension == "VK_KHR_global_priority" ) ||
4078 ( extension == "VK_EXT_vertex_attribute_divisor" ) || ( extension == "VK_EXT_pipeline_creation_feedback" ) ||
4079 ( extension == "VK_KHR_driver_properties" ) || ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_KHR_depth_stencil_resolve" ) ||
4080 ( extension == "VK_NV_compute_shader_derivatives" ) || ( extension == "VK_NV_fragment_shader_barycentric" ) ||
4081 ( extension == "VK_KHR_timeline_semaphore" ) || ( extension == "VK_KHR_vulkan_memory_model" ) ||
4082 ( extension == "VK_KHR_shader_terminate_invocation" ) || ( extension == "VK_EXT_scalar_block_layout" ) ||
4083 ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_KHR_spirv_1_4" ) ||
4084 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_tooling_info" ) ||
4085 ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_uniform_buffer_standard_layout" ) ||
4086 ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_line_rasterization" ) || ( extension == "VK_EXT_host_query_reset" ) ||
4087 ( extension == "VK_EXT_index_type_uint8" ) || ( extension == "VK_EXT_extended_dynamic_state" ) || ( extension == "VK_EXT_host_image_copy" ) ||
4088 ( extension == "VK_KHR_map_memory2" ) || ( extension == "VK_EXT_surface_maintenance1" ) || ( extension == "VK_EXT_swapchain_maintenance1" ) ||
4089 ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || ( extension == "VK_KHR_shader_integer_dot_product" ) ||
4090 ( extension == "VK_EXT_texel_buffer_alignment" ) || ( extension == "VK_EXT_robustness2" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) ||
4091 ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) || ( extension == "VK_KHR_synchronization2" ) ||
4092 ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) ||
4093 ( extension == "VK_EXT_image_robustness" ) || ( extension == "VK_KHR_copy_commands2" ) || ( extension == "VK_EXT_4444_formats" ) ||
4094 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_VALVE_mutable_descriptor_type" ) ||
4095 ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_present_mode_fifo_latest_ready" ) ||
4096 ( extension == "VK_EXT_extended_dynamic_state2" ) || ( extension == "VK_EXT_global_priority_query" ) ||
4097 ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) ||
4098 ( extension == "VK_EXT_depth_clamp_zero_one" ) || ( extension == "VK_QCOM_fragment_density_map_offset" ) ||
4099 ( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_NV_memory_decompression" ) ||
4100 ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
4101 ( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) ||
4102 ( extension == "VK_KHR_load_store_op_none" ) || ( extension == "VK_KHR_shader_float_controls2" ) || ( extension == "VK_KHR_index_type_uint8" ) ||
4103 ( extension == "VK_KHR_line_rasterization" ) || ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) ||
4104 ( extension == "VK_EXT_vertex_attribute_robustness" );
4105 }
4106 } // namespace VULKAN_HPP_NAMESPACE
4107
4108 #endif