8 #ifndef VULKAN_EXTENSION_INSPECTION_HPP
9 #define VULKAN_EXTENSION_INSPECTION_HPP
17 namespace VULKAN_HPP_NAMESPACE
26 std::map<std::string, std::vector<std::vector<std::string>>>
const &
getExtensionDepends( std::string
const & extension );
27 std::pair<bool, std::vector<std::vector<std::string>>
const &>
getExtensionDepends( std::string
const & version, std::string
const & extension );
45 static std::map<std::string, std::string> deprecatedExtensions = {
46 {
"VK_EXT_debug_report",
"VK_EXT_debug_utils" },
47 {
"VK_NV_glsl_shader",
"" },
48 {
"VK_NV_dedicated_allocation",
"VK_KHR_dedicated_allocation" },
49 {
"VK_AMD_gpu_shader_half_float",
"VK_KHR_shader_float16_int8" },
50 {
"VK_IMG_format_pvrtc",
"" },
51 {
"VK_NV_external_memory_capabilities",
"VK_KHR_external_memory_capabilities" },
52 {
"VK_NV_external_memory",
"VK_KHR_external_memory" },
53 #if defined( VK_USE_PLATFORM_WIN32_KHR )
54 {
"VK_NV_external_memory_win32",
"VK_KHR_external_memory_win32" },
56 {
"VK_EXT_validation_flags",
"VK_EXT_layer_settings" },
57 {
"VK_EXT_shader_subgroup_ballot",
"VK_VERSION_1_2" },
58 {
"VK_EXT_shader_subgroup_vote",
"VK_VERSION_1_1" },
59 #if defined( VK_USE_PLATFORM_IOS_MVK )
60 {
"VK_MVK_ios_surface",
"VK_EXT_metal_surface" },
62 #if defined( VK_USE_PLATFORM_MACOS_MVK )
63 {
"VK_MVK_macos_surface",
"VK_EXT_metal_surface" },
65 {
"VK_AMD_gpu_shader_int16",
"VK_KHR_shader_float16_int8" },
66 {
"VK_EXT_buffer_device_address",
"VK_KHR_buffer_device_address" },
67 {
"VK_EXT_validation_features",
"VK_EXT_layer_settings" }
69 return deprecatedExtensions;
74 static std::set<std::string> deviceExtensions = {
76 "VK_KHR_display_swapchain",
78 "VK_EXT_depth_range_unrestricted",
79 "VK_KHR_sampler_mirror_clamp_to_edge",
80 "VK_IMG_filter_cubic",
81 "VK_AMD_rasterization_order",
82 "VK_AMD_shader_trinary_minmax",
83 "VK_AMD_shader_explicit_vertex_parameter",
84 "VK_EXT_debug_marker",
86 "VK_KHR_video_decode_queue",
88 "VK_NV_dedicated_allocation",
89 "VK_EXT_transform_feedback",
90 "VK_NVX_binary_import",
91 "VK_NVX_image_view_handle",
92 "VK_AMD_draw_indirect_count",
93 "VK_AMD_negative_viewport_height",
94 "VK_AMD_gpu_shader_half_float",
95 "VK_AMD_shader_ballot",
96 "VK_KHR_video_encode_h264",
97 "VK_KHR_video_encode_h265",
98 "VK_KHR_video_decode_h264",
99 "VK_AMD_texture_gather_bias_lod",
100 "VK_AMD_shader_info",
101 "VK_KHR_dynamic_rendering",
102 "VK_AMD_shader_image_load_store_lod",
103 "VK_NV_corner_sampled_image",
105 "VK_IMG_format_pvrtc",
106 "VK_NV_external_memory",
107 #if defined( VK_USE_PLATFORM_WIN32_KHR )
108 "VK_NV_external_memory_win32",
109 "VK_NV_win32_keyed_mutex",
111 "VK_KHR_device_group",
112 "VK_KHR_shader_draw_parameters",
113 "VK_EXT_shader_subgroup_ballot",
114 "VK_EXT_shader_subgroup_vote",
115 "VK_EXT_texture_compression_astc_hdr",
116 "VK_EXT_astc_decode_mode",
117 "VK_EXT_pipeline_robustness",
118 "VK_KHR_maintenance1",
119 "VK_KHR_external_memory",
120 #if defined( VK_USE_PLATFORM_WIN32_KHR )
121 "VK_KHR_external_memory_win32",
123 "VK_KHR_external_memory_fd",
124 #if defined( VK_USE_PLATFORM_WIN32_KHR )
125 "VK_KHR_win32_keyed_mutex",
127 "VK_KHR_external_semaphore",
128 #if defined( VK_USE_PLATFORM_WIN32_KHR )
129 "VK_KHR_external_semaphore_win32",
131 "VK_KHR_external_semaphore_fd",
132 "VK_KHR_push_descriptor",
133 "VK_EXT_conditional_rendering",
134 "VK_KHR_shader_float16_int8",
135 "VK_KHR_16bit_storage",
136 "VK_KHR_incremental_present",
137 "VK_KHR_descriptor_update_template",
138 "VK_NV_clip_space_w_scaling",
139 "VK_EXT_display_control",
140 "VK_GOOGLE_display_timing",
141 "VK_NV_sample_mask_override_coverage",
142 "VK_NV_geometry_shader_passthrough",
143 "VK_NV_viewport_array2",
144 "VK_NVX_multiview_per_view_attributes",
145 "VK_NV_viewport_swizzle",
146 "VK_EXT_discard_rectangles",
147 "VK_EXT_conservative_rasterization",
148 "VK_EXT_depth_clip_enable",
149 "VK_EXT_hdr_metadata",
150 "VK_KHR_imageless_framebuffer",
151 "VK_KHR_create_renderpass2",
152 "VK_IMG_relaxed_line_rasterization",
153 "VK_KHR_shared_presentable_image",
154 "VK_KHR_external_fence",
155 #if defined( VK_USE_PLATFORM_WIN32_KHR )
156 "VK_KHR_external_fence_win32",
158 "VK_KHR_external_fence_fd",
159 "VK_KHR_performance_query",
160 "VK_KHR_maintenance2",
161 "VK_KHR_variable_pointers",
162 "VK_EXT_external_memory_dma_buf",
163 "VK_EXT_queue_family_foreign",
164 "VK_KHR_dedicated_allocation",
165 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
166 "VK_ANDROID_external_memory_android_hardware_buffer",
168 "VK_EXT_sampler_filter_minmax",
169 "VK_KHR_storage_buffer_storage_class",
170 "VK_AMD_gpu_shader_int16",
171 #if defined( VK_ENABLE_BETA_EXTENSIONS )
172 "VK_AMDX_shader_enqueue",
174 "VK_AMD_mixed_attachment_samples",
175 "VK_AMD_shader_fragment_mask",
176 "VK_EXT_inline_uniform_block",
177 "VK_EXT_shader_stencil_export",
178 "VK_EXT_sample_locations",
179 "VK_KHR_relaxed_block_layout",
180 "VK_KHR_get_memory_requirements2",
181 "VK_KHR_image_format_list",
182 "VK_EXT_blend_operation_advanced",
183 "VK_NV_fragment_coverage_to_color",
184 "VK_KHR_acceleration_structure",
185 "VK_KHR_ray_tracing_pipeline",
187 "VK_NV_framebuffer_mixed_samples",
188 "VK_NV_fill_rectangle",
189 "VK_NV_shader_sm_builtins",
190 "VK_EXT_post_depth_coverage",
191 "VK_KHR_sampler_ycbcr_conversion",
192 "VK_KHR_bind_memory2",
193 "VK_EXT_image_drm_format_modifier",
194 "VK_EXT_validation_cache",
195 "VK_EXT_descriptor_indexing",
196 "VK_EXT_shader_viewport_index_layer",
197 #if defined( VK_ENABLE_BETA_EXTENSIONS )
198 "VK_KHR_portability_subset",
200 "VK_NV_shading_rate_image",
202 "VK_NV_representative_fragment_test",
203 "VK_KHR_maintenance3",
204 "VK_KHR_draw_indirect_count",
205 "VK_EXT_filter_cubic",
206 "VK_QCOM_render_pass_shader_resolve",
207 "VK_EXT_global_priority",
208 "VK_KHR_shader_subgroup_extended_types",
209 "VK_KHR_8bit_storage",
210 "VK_EXT_external_memory_host",
211 "VK_AMD_buffer_marker",
212 "VK_KHR_shader_atomic_int64",
213 "VK_KHR_shader_clock",
214 "VK_AMD_pipeline_compiler_control",
215 "VK_EXT_calibrated_timestamps",
216 "VK_AMD_shader_core_properties",
217 "VK_KHR_video_decode_h265",
218 "VK_KHR_global_priority",
219 "VK_AMD_memory_overallocation_behavior",
220 "VK_EXT_vertex_attribute_divisor",
221 #if defined( VK_USE_PLATFORM_GGP )
222 "VK_GGP_frame_token",
224 "VK_EXT_pipeline_creation_feedback",
225 "VK_KHR_driver_properties",
226 "VK_KHR_shader_float_controls",
227 "VK_NV_shader_subgroup_partitioned",
228 "VK_KHR_depth_stencil_resolve",
229 "VK_KHR_swapchain_mutable_format",
230 "VK_NV_compute_shader_derivatives",
232 "VK_NV_fragment_shader_barycentric",
233 "VK_NV_shader_image_footprint",
234 "VK_NV_scissor_exclusive",
235 "VK_NV_device_diagnostic_checkpoints",
236 "VK_KHR_timeline_semaphore",
237 "VK_INTEL_shader_integer_functions2",
238 "VK_INTEL_performance_query",
239 "VK_KHR_vulkan_memory_model",
240 "VK_EXT_pci_bus_info",
241 "VK_AMD_display_native_hdr",
242 "VK_KHR_shader_terminate_invocation",
243 "VK_EXT_fragment_density_map",
244 "VK_EXT_scalar_block_layout",
245 "VK_GOOGLE_hlsl_functionality1",
246 "VK_GOOGLE_decorate_string",
247 "VK_EXT_subgroup_size_control",
248 "VK_KHR_fragment_shading_rate",
249 "VK_AMD_shader_core_properties2",
250 "VK_AMD_device_coherent_memory",
251 "VK_EXT_shader_image_atomic_int64",
253 "VK_EXT_memory_budget",
254 "VK_EXT_memory_priority",
255 "VK_NV_dedicated_allocation_image_aliasing",
256 "VK_KHR_separate_depth_stencil_layouts",
257 "VK_EXT_buffer_device_address",
258 "VK_EXT_tooling_info",
259 "VK_EXT_separate_stencil_usage",
260 "VK_KHR_present_wait",
261 "VK_NV_cooperative_matrix",
262 "VK_NV_coverage_reduction_mode",
263 "VK_EXT_fragment_shader_interlock",
264 "VK_EXT_ycbcr_image_arrays",
265 "VK_KHR_uniform_buffer_standard_layout",
266 "VK_EXT_provoking_vertex",
267 #if defined( VK_USE_PLATFORM_WIN32_KHR )
268 "VK_EXT_full_screen_exclusive",
270 "VK_KHR_buffer_device_address",
271 "VK_EXT_line_rasterization",
272 "VK_EXT_shader_atomic_float",
273 "VK_EXT_host_query_reset",
274 "VK_EXT_index_type_uint8",
275 "VK_EXT_extended_dynamic_state",
276 "VK_KHR_deferred_host_operations",
277 "VK_KHR_pipeline_executable_properties",
278 "VK_EXT_host_image_copy",
279 "VK_KHR_map_memory2",
280 "VK_EXT_shader_atomic_float2",
281 "VK_EXT_swapchain_maintenance1",
282 "VK_EXT_shader_demote_to_helper_invocation",
283 "VK_NV_device_generated_commands",
284 "VK_NV_inherited_viewport_scissor",
285 "VK_KHR_shader_integer_dot_product",
286 "VK_EXT_texel_buffer_alignment",
287 "VK_QCOM_render_pass_transform",
288 "VK_EXT_depth_bias_control",
289 "VK_EXT_device_memory_report",
290 "VK_EXT_robustness2",
291 "VK_EXT_custom_border_color",
292 "VK_GOOGLE_user_type",
293 "VK_KHR_pipeline_library",
294 "VK_NV_present_barrier",
295 "VK_KHR_shader_non_semantic_info",
297 "VK_EXT_private_data",
298 "VK_EXT_pipeline_creation_cache_control",
299 "VK_KHR_video_encode_queue",
300 "VK_NV_device_diagnostics_config",
301 "VK_QCOM_render_pass_store_ops",
302 #if defined( VK_ENABLE_BETA_EXTENSIONS )
303 "VK_NV_cuda_kernel_launch",
306 #if defined( VK_USE_PLATFORM_METAL_EXT )
307 "VK_EXT_metal_objects",
309 "VK_KHR_synchronization2",
310 "VK_EXT_descriptor_buffer",
311 "VK_EXT_graphics_pipeline_library",
312 "VK_AMD_shader_early_and_late_fragment_tests",
313 "VK_KHR_fragment_shader_barycentric",
314 "VK_KHR_shader_subgroup_uniform_control_flow",
315 "VK_KHR_zero_initialize_workgroup_memory",
316 "VK_NV_fragment_shading_rate_enums",
317 "VK_NV_ray_tracing_motion_blur",
318 "VK_EXT_mesh_shader",
319 "VK_EXT_ycbcr_2plane_444_formats",
320 "VK_EXT_fragment_density_map2",
321 "VK_QCOM_rotated_copy_commands",
322 "VK_EXT_image_robustness",
323 "VK_KHR_workgroup_memory_explicit_layout",
324 "VK_KHR_copy_commands2",
325 "VK_EXT_image_compression_control",
326 "VK_EXT_attachment_feedback_loop_layout",
327 "VK_EXT_4444_formats",
328 "VK_EXT_device_fault",
329 "VK_ARM_rasterization_order_attachment_access",
330 "VK_EXT_rgba10x6_formats",
331 #if defined( VK_USE_PLATFORM_WIN32_KHR )
332 "VK_NV_acquire_winrt_display",
334 "VK_VALVE_mutable_descriptor_type",
335 "VK_EXT_vertex_input_dynamic_state",
336 "VK_EXT_physical_device_drm",
337 "VK_EXT_device_address_binding_report",
338 "VK_EXT_depth_clip_control",
339 "VK_EXT_primitive_topology_list_restart",
340 "VK_KHR_format_feature_flags2",
341 #if defined( VK_USE_PLATFORM_FUCHSIA )
342 "VK_FUCHSIA_external_memory",
343 "VK_FUCHSIA_external_semaphore",
344 "VK_FUCHSIA_buffer_collection",
346 "VK_HUAWEI_subpass_shading",
347 "VK_HUAWEI_invocation_mask",
348 "VK_NV_external_memory_rdma",
349 "VK_EXT_pipeline_properties",
350 "VK_EXT_frame_boundary",
351 "VK_EXT_multisampled_render_to_single_sampled",
352 "VK_EXT_extended_dynamic_state2",
353 "VK_EXT_color_write_enable",
354 "VK_EXT_primitives_generated_query",
355 "VK_KHR_ray_tracing_maintenance1",
356 "VK_EXT_global_priority_query",
357 "VK_EXT_image_view_min_lod",
359 "VK_EXT_image_2d_view_of_3d",
360 "VK_EXT_shader_tile_image",
361 "VK_EXT_opacity_micromap",
362 #if defined( VK_ENABLE_BETA_EXTENSIONS )
363 "VK_NV_displacement_micromap",
365 "VK_EXT_load_store_op_none",
366 "VK_HUAWEI_cluster_culling_shader",
367 "VK_EXT_border_color_swizzle",
368 "VK_EXT_pageable_device_local_memory",
369 "VK_KHR_maintenance4",
370 "VK_ARM_shader_core_properties",
371 "VK_ARM_scheduling_controls",
372 "VK_EXT_image_sliced_view_of_3d",
373 "VK_VALVE_descriptor_set_host_mapping",
374 "VK_EXT_depth_clamp_zero_one",
375 "VK_EXT_non_seamless_cube_map",
376 "VK_ARM_render_pass_striped",
377 "VK_QCOM_fragment_density_map_offset",
378 "VK_NV_copy_memory_indirect",
379 "VK_NV_memory_decompression",
380 "VK_NV_device_generated_commands_compute",
381 "VK_NV_linear_color_attachment",
382 "VK_EXT_image_compression_control_swapchain",
383 "VK_QCOM_image_processing",
384 "VK_EXT_nested_command_buffer",
385 "VK_EXT_external_memory_acquire_unmodified",
386 "VK_EXT_extended_dynamic_state3",
387 "VK_EXT_subpass_merge_feedback",
388 "VK_EXT_shader_module_identifier",
389 "VK_EXT_rasterization_order_attachment_access",
390 "VK_NV_optical_flow",
391 "VK_EXT_legacy_dithering",
392 "VK_EXT_pipeline_protected_access",
393 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
394 "VK_ANDROID_external_format_resolve",
396 "VK_KHR_maintenance5",
397 "VK_KHR_ray_tracing_position_fetch",
398 "VK_EXT_shader_object",
399 "VK_QCOM_tile_properties",
400 "VK_SEC_amigo_profiling",
401 "VK_QCOM_multiview_per_view_viewports",
402 "VK_NV_ray_tracing_invocation_reorder",
403 "VK_NV_extended_sparse_address_space",
404 "VK_EXT_mutable_descriptor_type",
405 "VK_ARM_shader_core_builtins",
406 "VK_EXT_pipeline_library_group_handles",
407 "VK_EXT_dynamic_rendering_unused_attachments",
408 "VK_NV_low_latency2",
409 "VK_KHR_cooperative_matrix",
410 "VK_QCOM_multiview_per_view_render_areas",
411 "VK_KHR_video_maintenance1",
412 "VK_NV_per_stage_descriptor_set",
413 "VK_QCOM_image_processing2",
414 "VK_QCOM_filter_cubic_weights",
415 "VK_QCOM_ycbcr_degamma",
416 "VK_QCOM_filter_cubic_clamp",
417 "VK_EXT_attachment_feedback_loop_dynamic_state",
418 "VK_KHR_vertex_attribute_divisor",
419 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
420 "VK_QNX_external_memory_screen_buffer",
422 "VK_MSFT_layered_driver",
423 "VK_KHR_calibrated_timestamps",
424 "VK_KHR_maintenance6",
425 "VK_NV_descriptor_pool_overallocation"
427 return deviceExtensions;
432 static std::set<std::string> instanceExtensions = {
435 #if defined( VK_USE_PLATFORM_XLIB_KHR )
436 "VK_KHR_xlib_surface",
438 #if defined( VK_USE_PLATFORM_XCB_KHR )
439 "VK_KHR_xcb_surface",
441 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
442 "VK_KHR_wayland_surface",
444 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
445 "VK_KHR_android_surface",
447 #if defined( VK_USE_PLATFORM_WIN32_KHR )
448 "VK_KHR_win32_surface",
450 "VK_EXT_debug_report",
451 #if defined( VK_USE_PLATFORM_GGP )
452 "VK_GGP_stream_descriptor_surface",
454 "VK_NV_external_memory_capabilities",
455 "VK_KHR_get_physical_device_properties2",
456 "VK_EXT_validation_flags",
457 #if defined( VK_USE_PLATFORM_VI_NN )
460 "VK_KHR_device_group_creation",
461 "VK_KHR_external_memory_capabilities",
462 "VK_KHR_external_semaphore_capabilities",
463 "VK_EXT_direct_mode_display",
464 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
465 "VK_EXT_acquire_xlib_display",
467 "VK_EXT_display_surface_counter",
468 "VK_EXT_swapchain_colorspace",
469 "VK_KHR_external_fence_capabilities",
470 "VK_KHR_get_surface_capabilities2",
471 "VK_KHR_get_display_properties2",
472 #if defined( VK_USE_PLATFORM_IOS_MVK )
473 "VK_MVK_ios_surface",
475 #if defined( VK_USE_PLATFORM_MACOS_MVK )
476 "VK_MVK_macos_surface",
478 "VK_EXT_debug_utils",
479 #if defined( VK_USE_PLATFORM_FUCHSIA )
480 "VK_FUCHSIA_imagepipe_surface",
482 #if defined( VK_USE_PLATFORM_METAL_EXT )
483 "VK_EXT_metal_surface",
485 "VK_KHR_surface_protected_capabilities",
486 "VK_EXT_validation_features",
487 "VK_EXT_headless_surface",
488 "VK_EXT_surface_maintenance1",
489 "VK_EXT_acquire_drm_display",
490 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
491 "VK_EXT_directfb_surface",
493 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
494 "VK_QNX_screen_surface",
496 "VK_KHR_portability_enumeration",
497 "VK_GOOGLE_surfaceless_query",
498 "VK_LUNARG_direct_driver_loading",
499 "VK_EXT_layer_settings"
501 return instanceExtensions;
506 static std::map<std::string, std::vector<std::vector<std::string>>> noDependencies;
507 static std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> dependencies = {
508 {
"VK_KHR_swapchain",
509 { {
"VK_VERSION_1_0",
514 { {
"VK_VERSION_1_0",
518 {
"VK_KHR_display_swapchain",
519 { {
"VK_VERSION_1_0",
524 #if defined( VK_USE_PLATFORM_XLIB_KHR )
525 {
"VK_KHR_xlib_surface",
526 { {
"VK_VERSION_1_0",
531 #if defined( VK_USE_PLATFORM_XCB_KHR )
532 {
"VK_KHR_xcb_surface",
533 { {
"VK_VERSION_1_0",
538 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
539 {
"VK_KHR_wayland_surface",
540 { {
"VK_VERSION_1_0",
545 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
546 {
"VK_KHR_android_surface",
547 { {
"VK_VERSION_1_0",
552 #if defined( VK_USE_PLATFORM_WIN32_KHR )
553 {
"VK_KHR_win32_surface",
554 { {
"VK_VERSION_1_0",
559 {
"VK_EXT_debug_marker",
560 { {
"VK_VERSION_1_0",
562 "VK_EXT_debug_report",
564 {
"VK_KHR_video_queue",
565 { {
"VK_VERSION_1_1",
567 "VK_KHR_synchronization2",
569 {
"VK_KHR_video_decode_queue",
570 { {
"VK_VERSION_1_0",
572 "VK_KHR_video_queue",
573 "VK_KHR_synchronization2",
575 {
"VK_EXT_transform_feedback",
576 { {
"VK_VERSION_1_0",
578 "VK_KHR_get_physical_device_properties2",
580 {
"VK_KHR_video_encode_h264",
581 { {
"VK_VERSION_1_0",
583 "VK_KHR_video_encode_queue",
585 {
"VK_KHR_video_encode_h265",
586 { {
"VK_VERSION_1_0",
588 "VK_KHR_video_encode_queue",
590 {
"VK_KHR_video_decode_h264",
591 { {
"VK_VERSION_1_0",
593 "VK_KHR_video_decode_queue",
595 {
"VK_AMD_texture_gather_bias_lod",
596 { {
"VK_VERSION_1_0",
598 "VK_KHR_get_physical_device_properties2",
600 {
"VK_KHR_dynamic_rendering",
601 { {
"VK_VERSION_1_0",
603 "VK_KHR_depth_stencil_resolve",
604 "VK_KHR_get_physical_device_properties2",
606 #if defined( VK_USE_PLATFORM_GGP )
607 {
"VK_GGP_stream_descriptor_surface",
608 { {
"VK_VERSION_1_0",
613 {
"VK_NV_corner_sampled_image",
614 { {
"VK_VERSION_1_0",
616 "VK_KHR_get_physical_device_properties2",
618 {
"VK_KHR_multiview",
619 { {
"VK_VERSION_1_0",
621 "VK_KHR_get_physical_device_properties2",
623 {
"VK_NV_external_memory",
624 { {
"VK_VERSION_1_0",
626 "VK_NV_external_memory_capabilities",
628 #if defined( VK_USE_PLATFORM_WIN32_KHR )
629 {
"VK_NV_external_memory_win32",
630 { {
"VK_VERSION_1_0",
632 "VK_NV_external_memory",
634 {
"VK_NV_win32_keyed_mutex",
635 { {
"VK_VERSION_1_0",
637 "VK_NV_external_memory_win32",
640 {
"VK_KHR_device_group",
641 { {
"VK_VERSION_1_0",
643 "VK_KHR_device_group_creation",
645 #if defined( VK_USE_PLATFORM_VI_NN )
646 {
"VK_NN_vi_surface",
647 { {
"VK_VERSION_1_0",
652 {
"VK_EXT_texture_compression_astc_hdr",
653 { {
"VK_VERSION_1_0",
655 "VK_KHR_get_physical_device_properties2",
657 {
"VK_VERSION_1_1", { {} } } } },
658 {
"VK_EXT_astc_decode_mode",
659 { {
"VK_VERSION_1_0",
661 "VK_KHR_get_physical_device_properties2",
663 {
"VK_VERSION_1_1", { {} } } } },
664 {
"VK_EXT_pipeline_robustness",
665 { {
"VK_VERSION_1_0",
667 "VK_KHR_get_physical_device_properties2",
669 {
"VK_KHR_external_memory_capabilities",
670 { {
"VK_VERSION_1_0",
672 "VK_KHR_get_physical_device_properties2",
674 {
"VK_KHR_external_memory",
675 { {
"VK_VERSION_1_0",
677 "VK_KHR_external_memory_capabilities",
679 #if defined( VK_USE_PLATFORM_WIN32_KHR )
680 {
"VK_KHR_external_memory_win32",
681 { {
"VK_VERSION_1_0",
683 "VK_KHR_external_memory",
686 {
"VK_KHR_external_memory_fd",
687 { {
"VK_VERSION_1_0",
689 "VK_KHR_external_memory",
691 {
"VK_VERSION_1_1", { {} } } } },
692 #if defined( VK_USE_PLATFORM_WIN32_KHR )
693 {
"VK_KHR_win32_keyed_mutex",
694 { {
"VK_VERSION_1_0",
696 "VK_KHR_external_memory_win32",
699 {
"VK_KHR_external_semaphore_capabilities",
700 { {
"VK_VERSION_1_0",
702 "VK_KHR_get_physical_device_properties2",
704 {
"VK_KHR_external_semaphore",
705 { {
"VK_VERSION_1_0",
707 "VK_KHR_external_semaphore_capabilities",
709 #if defined( VK_USE_PLATFORM_WIN32_KHR )
710 {
"VK_KHR_external_semaphore_win32",
711 { {
"VK_VERSION_1_0",
713 "VK_KHR_external_semaphore",
716 {
"VK_KHR_external_semaphore_fd",
717 { {
"VK_VERSION_1_0",
719 "VK_KHR_external_semaphore",
721 {
"VK_VERSION_1_1", { {} } } } },
722 {
"VK_KHR_push_descriptor",
723 { {
"VK_VERSION_1_0",
725 "VK_KHR_get_physical_device_properties2",
727 {
"VK_EXT_conditional_rendering",
728 { {
"VK_VERSION_1_0",
730 "VK_KHR_get_physical_device_properties2",
732 {
"VK_KHR_shader_float16_int8",
733 { {
"VK_VERSION_1_0",
735 "VK_KHR_get_physical_device_properties2",
737 {
"VK_KHR_16bit_storage",
738 { {
"VK_VERSION_1_0",
740 "VK_KHR_get_physical_device_properties2",
741 "VK_KHR_storage_buffer_storage_class",
743 {
"VK_KHR_incremental_present",
744 { {
"VK_VERSION_1_0",
748 {
"VK_EXT_direct_mode_display",
749 { {
"VK_VERSION_1_0",
753 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
754 {
"VK_EXT_acquire_xlib_display",
755 { {
"VK_VERSION_1_0",
757 "VK_EXT_direct_mode_display",
760 {
"VK_EXT_display_surface_counter",
761 { {
"VK_VERSION_1_0",
765 {
"VK_EXT_display_control",
766 { {
"VK_VERSION_1_0",
768 "VK_EXT_display_surface_counter",
771 {
"VK_GOOGLE_display_timing",
772 { {
"VK_VERSION_1_0",
776 {
"VK_NVX_multiview_per_view_attributes",
777 { {
"VK_VERSION_1_0",
781 {
"VK_EXT_discard_rectangles",
782 { {
"VK_VERSION_1_0",
784 "VK_KHR_get_physical_device_properties2",
786 {
"VK_VERSION_1_1", { {} } } } },
787 {
"VK_EXT_conservative_rasterization",
788 { {
"VK_VERSION_1_0",
790 "VK_KHR_get_physical_device_properties2",
792 {
"VK_VERSION_1_1", { {} } } } },
793 {
"VK_EXT_depth_clip_enable",
794 { {
"VK_VERSION_1_0",
796 "VK_KHR_get_physical_device_properties2",
798 {
"VK_VERSION_1_1", { {} } } } },
799 {
"VK_EXT_swapchain_colorspace",
800 { {
"VK_VERSION_1_0",
804 {
"VK_EXT_hdr_metadata",
805 { {
"VK_VERSION_1_0",
809 {
"VK_KHR_imageless_framebuffer",
810 { {
"VK_VERSION_1_0",
812 "VK_KHR_maintenance2",
813 "VK_KHR_image_format_list",
814 "VK_KHR_get_physical_device_properties2",
816 {
"VK_KHR_create_renderpass2",
817 { {
"VK_VERSION_1_0",
820 "VK_KHR_maintenance2",
822 {
"VK_IMG_relaxed_line_rasterization",
823 { {
"VK_VERSION_1_0",
825 "VK_KHR_get_physical_device_properties2",
827 {
"VK_VERSION_1_1", { {} } } } },
828 {
"VK_KHR_shared_presentable_image",
829 { {
"VK_VERSION_1_0",
832 "VK_KHR_get_surface_capabilities2",
833 "VK_KHR_get_physical_device_properties2",
838 "VK_KHR_get_surface_capabilities2",
840 {
"VK_KHR_external_fence_capabilities",
841 { {
"VK_VERSION_1_0",
843 "VK_KHR_get_physical_device_properties2",
845 {
"VK_KHR_external_fence",
846 { {
"VK_VERSION_1_0",
848 "VK_KHR_external_fence_capabilities",
850 #if defined( VK_USE_PLATFORM_WIN32_KHR )
851 {
"VK_KHR_external_fence_win32",
852 { {
"VK_VERSION_1_0",
854 "VK_KHR_external_fence",
857 {
"VK_KHR_external_fence_fd",
858 { {
"VK_VERSION_1_0",
860 "VK_KHR_external_fence",
862 {
"VK_VERSION_1_1", { {} } } } },
863 {
"VK_KHR_performance_query",
864 { {
"VK_VERSION_1_0",
866 "VK_KHR_get_physical_device_properties2",
868 {
"VK_VERSION_1_1", { {} } } } },
869 {
"VK_KHR_get_surface_capabilities2",
870 { {
"VK_VERSION_1_0",
874 {
"VK_KHR_variable_pointers",
875 { {
"VK_VERSION_1_0",
877 "VK_KHR_get_physical_device_properties2",
878 "VK_KHR_storage_buffer_storage_class",
880 {
"VK_KHR_get_display_properties2",
881 { {
"VK_VERSION_1_0",
885 #if defined( VK_USE_PLATFORM_IOS_MVK )
886 {
"VK_MVK_ios_surface",
887 { {
"VK_VERSION_1_0",
892 #if defined( VK_USE_PLATFORM_MACOS_MVK )
893 {
"VK_MVK_macos_surface",
894 { {
"VK_VERSION_1_0",
899 {
"VK_EXT_external_memory_dma_buf",
900 { {
"VK_VERSION_1_0",
902 "VK_KHR_external_memory_fd",
904 {
"VK_EXT_queue_family_foreign",
905 { {
"VK_VERSION_1_0",
907 "VK_KHR_external_memory",
909 {
"VK_VERSION_1_1", { {} } } } },
910 {
"VK_KHR_dedicated_allocation",
911 { {
"VK_VERSION_1_0",
913 "VK_KHR_get_memory_requirements2",
915 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
916 {
"VK_ANDROID_external_memory_android_hardware_buffer",
917 { {
"VK_VERSION_1_0",
919 "VK_KHR_sampler_ycbcr_conversion",
920 "VK_KHR_external_memory",
921 "VK_EXT_queue_family_foreign",
922 "VK_KHR_dedicated_allocation",
925 {
"VK_EXT_sampler_filter_minmax",
926 { {
"VK_VERSION_1_0",
928 "VK_KHR_get_physical_device_properties2",
930 #if defined( VK_ENABLE_BETA_EXTENSIONS )
931 {
"VK_AMDX_shader_enqueue",
932 { {
"VK_VERSION_1_0",
934 "VK_KHR_get_physical_device_properties2",
935 "VK_KHR_synchronization2",
936 "VK_KHR_pipeline_library",
940 {
"VK_EXT_inline_uniform_block",
941 { {
"VK_VERSION_1_0",
943 "VK_KHR_get_physical_device_properties2",
944 "VK_KHR_maintenance1",
946 {
"VK_EXT_sample_locations",
947 { {
"VK_VERSION_1_0",
949 "VK_KHR_get_physical_device_properties2",
951 {
"VK_VERSION_1_1", { {} } } } },
952 {
"VK_EXT_blend_operation_advanced",
953 { {
"VK_VERSION_1_0",
955 "VK_KHR_get_physical_device_properties2",
957 {
"VK_VERSION_1_1", { {} } } } },
958 {
"VK_KHR_acceleration_structure",
959 { {
"VK_VERSION_1_1",
961 "VK_EXT_descriptor_indexing",
962 "VK_KHR_buffer_device_address",
963 "VK_KHR_deferred_host_operations",
965 {
"VK_KHR_ray_tracing_pipeline",
966 { {
"VK_VERSION_1_0",
969 "VK_KHR_acceleration_structure",
971 {
"VK_KHR_ray_query",
972 { {
"VK_VERSION_1_0",
975 "VK_KHR_acceleration_structure",
977 {
"VK_NV_shader_sm_builtins", { {
"VK_VERSION_1_1", { {} } } } },
978 {
"VK_KHR_sampler_ycbcr_conversion",
979 { {
"VK_VERSION_1_0",
981 "VK_KHR_maintenance1",
982 "VK_KHR_bind_memory2",
983 "VK_KHR_get_memory_requirements2",
984 "VK_KHR_get_physical_device_properties2",
986 {
"VK_EXT_image_drm_format_modifier",
987 { {
"VK_VERSION_1_0",
989 "VK_KHR_bind_memory2",
990 "VK_KHR_get_physical_device_properties2",
991 "VK_KHR_sampler_ycbcr_conversion",
992 "VK_KHR_image_format_list",
996 "VK_KHR_image_format_list",
998 {
"VK_VERSION_1_2", { {} } } } },
999 {
"VK_EXT_descriptor_indexing",
1000 { {
"VK_VERSION_1_0",
1002 "VK_KHR_get_physical_device_properties2",
1003 "VK_KHR_maintenance3",
1005 #if defined( VK_ENABLE_BETA_EXTENSIONS )
1006 {
"VK_KHR_portability_subset",
1007 { {
"VK_VERSION_1_0",
1009 "VK_KHR_get_physical_device_properties2",
1012 {
"VK_NV_shading_rate_image",
1013 { {
"VK_VERSION_1_0",
1015 "VK_KHR_get_physical_device_properties2",
1017 {
"VK_NV_ray_tracing",
1018 { {
"VK_VERSION_1_0",
1020 "VK_KHR_get_physical_device_properties2",
1021 "VK_KHR_get_memory_requirements2",
1023 {
"VK_NV_representative_fragment_test",
1024 { {
"VK_VERSION_1_0",
1026 "VK_KHR_get_physical_device_properties2",
1028 {
"VK_KHR_maintenance3",
1029 { {
"VK_VERSION_1_0",
1031 "VK_KHR_get_physical_device_properties2",
1033 {
"VK_KHR_shader_subgroup_extended_types", { {
"VK_VERSION_1_1", { {} } } } },
1034 {
"VK_KHR_8bit_storage",
1035 { {
"VK_VERSION_1_0",
1037 "VK_KHR_get_physical_device_properties2",
1038 "VK_KHR_storage_buffer_storage_class",
1040 {
"VK_EXT_external_memory_host",
1041 { {
"VK_VERSION_1_0",
1043 "VK_KHR_external_memory",
1045 {
"VK_VERSION_1_1", { {} } } } },
1046 {
"VK_KHR_shader_atomic_int64",
1047 { {
"VK_VERSION_1_0",
1049 "VK_KHR_get_physical_device_properties2",
1051 {
"VK_KHR_shader_clock",
1052 { {
"VK_VERSION_1_0",
1054 "VK_KHR_get_physical_device_properties2",
1056 {
"VK_VERSION_1_1", { {} } } } },
1057 {
"VK_EXT_calibrated_timestamps",
1058 { {
"VK_VERSION_1_0",
1060 "VK_KHR_get_physical_device_properties2",
1062 {
"VK_VERSION_1_1", { {} } } } },
1063 {
"VK_AMD_shader_core_properties",
1064 { {
"VK_VERSION_1_0",
1066 "VK_KHR_get_physical_device_properties2",
1068 {
"VK_KHR_video_decode_h265",
1069 { {
"VK_VERSION_1_0",
1071 "VK_KHR_video_decode_queue",
1073 {
"VK_KHR_global_priority",
1074 { {
"VK_VERSION_1_0",
1076 "VK_KHR_get_physical_device_properties2",
1078 {
"VK_EXT_vertex_attribute_divisor",
1079 { {
"VK_VERSION_1_0",
1081 "VK_KHR_get_physical_device_properties2",
1083 {
"VK_VERSION_1_1", { {} } } } },
1084 #if defined( VK_USE_PLATFORM_GGP )
1085 {
"VK_GGP_frame_token",
1086 { {
"VK_VERSION_1_0",
1089 "VK_GGP_stream_descriptor_surface",
1092 {
"VK_KHR_driver_properties",
1093 { {
"VK_VERSION_1_0",
1095 "VK_KHR_get_physical_device_properties2",
1097 {
"VK_KHR_shader_float_controls",
1098 { {
"VK_VERSION_1_0",
1100 "VK_KHR_get_physical_device_properties2",
1102 {
"VK_NV_shader_subgroup_partitioned", { {
"VK_VERSION_1_1", { {} } } } },
1103 {
"VK_KHR_depth_stencil_resolve",
1104 { {
"VK_VERSION_1_0",
1106 "VK_KHR_create_renderpass2",
1108 {
"VK_KHR_swapchain_mutable_format",
1109 { {
"VK_VERSION_1_0",
1112 "VK_KHR_maintenance2",
1113 "VK_KHR_image_format_list",
1118 "VK_KHR_image_format_list",
1124 {
"VK_NV_compute_shader_derivatives",
1125 { {
"VK_VERSION_1_0",
1127 "VK_KHR_get_physical_device_properties2",
1129 {
"VK_NV_mesh_shader",
1130 { {
"VK_VERSION_1_0",
1132 "VK_KHR_get_physical_device_properties2",
1134 {
"VK_NV_fragment_shader_barycentric",
1135 { {
"VK_VERSION_1_0",
1137 "VK_KHR_get_physical_device_properties2",
1139 {
"VK_NV_shader_image_footprint",
1140 { {
"VK_VERSION_1_0",
1142 "VK_KHR_get_physical_device_properties2",
1144 {
"VK_NV_scissor_exclusive",
1145 { {
"VK_VERSION_1_0",
1147 "VK_KHR_get_physical_device_properties2",
1149 {
"VK_NV_device_diagnostic_checkpoints",
1150 { {
"VK_VERSION_1_0",
1152 "VK_KHR_get_physical_device_properties2",
1154 {
"VK_KHR_timeline_semaphore",
1155 { {
"VK_VERSION_1_0",
1157 "VK_KHR_get_physical_device_properties2",
1159 {
"VK_INTEL_shader_integer_functions2",
1160 { {
"VK_VERSION_1_0",
1162 "VK_KHR_get_physical_device_properties2",
1164 {
"VK_KHR_vulkan_memory_model",
1165 { {
"VK_VERSION_1_0",
1167 "VK_KHR_get_physical_device_properties2",
1169 {
"VK_EXT_pci_bus_info",
1170 { {
"VK_VERSION_1_0",
1172 "VK_KHR_get_physical_device_properties2",
1174 {
"VK_VERSION_1_1", { {} } } } },
1175 {
"VK_AMD_display_native_hdr",
1176 { {
"VK_VERSION_1_0",
1178 "VK_KHR_get_physical_device_properties2",
1179 "VK_KHR_get_surface_capabilities2",
1182 #if defined( VK_USE_PLATFORM_FUCHSIA )
1183 {
"VK_FUCHSIA_imagepipe_surface",
1184 { {
"VK_VERSION_1_0",
1189 {
"VK_KHR_shader_terminate_invocation",
1190 { {
"VK_VERSION_1_0",
1192 "VK_KHR_get_physical_device_properties2",
1194 {
"VK_VERSION_1_1", { {} } } } },
1195 #if defined( VK_USE_PLATFORM_METAL_EXT )
1196 {
"VK_EXT_metal_surface",
1197 { {
"VK_VERSION_1_0",
1202 {
"VK_EXT_fragment_density_map",
1203 { {
"VK_VERSION_1_0",
1205 "VK_KHR_get_physical_device_properties2",
1207 {
"VK_EXT_scalar_block_layout",
1208 { {
"VK_VERSION_1_0",
1210 "VK_KHR_get_physical_device_properties2",
1212 {
"VK_EXT_subgroup_size_control", { {
"VK_VERSION_1_1", { {} } } } },
1213 {
"VK_KHR_fragment_shading_rate",
1214 { {
"VK_VERSION_1_0",
1216 "VK_KHR_create_renderpass2",
1217 "VK_KHR_get_physical_device_properties2",
1221 "VK_KHR_create_renderpass2",
1223 {
"VK_VERSION_1_2", { {} } } } },
1224 {
"VK_AMD_shader_core_properties2",
1225 { {
"VK_VERSION_1_0",
1227 "VK_AMD_shader_core_properties",
1229 {
"VK_AMD_device_coherent_memory",
1230 { {
"VK_VERSION_1_0",
1232 "VK_KHR_get_physical_device_properties2",
1234 {
"VK_EXT_shader_image_atomic_int64",
1235 { {
"VK_VERSION_1_0",
1237 "VK_KHR_get_physical_device_properties2",
1239 {
"VK_VERSION_1_1", { {} } } } },
1240 {
"VK_KHR_spirv_1_4",
1241 { {
"VK_VERSION_1_1",
1243 "VK_KHR_shader_float_controls",
1245 {
"VK_EXT_memory_budget",
1246 { {
"VK_VERSION_1_0",
1248 "VK_KHR_get_physical_device_properties2",
1250 {
"VK_VERSION_1_1", { {} } } } },
1251 {
"VK_EXT_memory_priority",
1252 { {
"VK_VERSION_1_0",
1254 "VK_KHR_get_physical_device_properties2",
1256 {
"VK_KHR_surface_protected_capabilities",
1257 { {
"VK_VERSION_1_1",
1259 "VK_KHR_get_surface_capabilities2",
1261 {
"VK_NV_dedicated_allocation_image_aliasing",
1262 { {
"VK_VERSION_1_0",
1264 "VK_KHR_dedicated_allocation",
1265 "VK_KHR_get_physical_device_properties2",
1267 {
"VK_KHR_separate_depth_stencil_layouts",
1268 { {
"VK_VERSION_1_0",
1270 "VK_KHR_get_physical_device_properties2",
1271 "VK_KHR_create_renderpass2",
1273 {
"VK_EXT_buffer_device_address",
1274 { {
"VK_VERSION_1_0",
1276 "VK_KHR_get_physical_device_properties2",
1278 {
"VK_KHR_present_wait",
1279 { {
"VK_VERSION_1_0",
1282 "VK_KHR_present_id",
1284 {
"VK_NV_cooperative_matrix",
1285 { {
"VK_VERSION_1_0",
1287 "VK_KHR_get_physical_device_properties2",
1289 {
"VK_NV_coverage_reduction_mode",
1290 { {
"VK_VERSION_1_0",
1292 "VK_NV_framebuffer_mixed_samples",
1293 "VK_KHR_get_physical_device_properties2",
1295 {
"VK_EXT_fragment_shader_interlock",
1296 { {
"VK_VERSION_1_0",
1298 "VK_KHR_get_physical_device_properties2",
1300 {
"VK_VERSION_1_1", { {} } } } },
1301 {
"VK_EXT_ycbcr_image_arrays",
1302 { {
"VK_VERSION_1_0",
1304 "VK_KHR_sampler_ycbcr_conversion",
1306 {
"VK_VERSION_1_1", { {} } } } },
1307 {
"VK_KHR_uniform_buffer_standard_layout",
1308 { {
"VK_VERSION_1_0",
1310 "VK_KHR_get_physical_device_properties2",
1312 {
"VK_EXT_provoking_vertex",
1313 { {
"VK_VERSION_1_0",
1315 "VK_KHR_get_physical_device_properties2",
1317 #if defined( VK_USE_PLATFORM_WIN32_KHR )
1318 {
"VK_EXT_full_screen_exclusive",
1319 { {
"VK_VERSION_1_0",
1321 "VK_KHR_get_physical_device_properties2",
1323 "VK_KHR_get_surface_capabilities2",
1327 {
"VK_EXT_headless_surface",
1328 { {
"VK_VERSION_1_0",
1332 {
"VK_KHR_buffer_device_address",
1333 { {
"VK_VERSION_1_0",
1335 "VK_KHR_get_physical_device_properties2",
1336 "VK_KHR_device_group",
1338 {
"VK_VERSION_1_1", { {} } } } },
1339 {
"VK_EXT_line_rasterization",
1340 { {
"VK_VERSION_1_0",
1342 "VK_KHR_get_physical_device_properties2",
1344 {
"VK_VERSION_1_1", { {} } } } },
1345 {
"VK_EXT_shader_atomic_float",
1346 { {
"VK_VERSION_1_0",
1348 "VK_KHR_get_physical_device_properties2",
1350 {
"VK_VERSION_1_1", { {} } } } },
1351 {
"VK_EXT_host_query_reset",
1352 { {
"VK_VERSION_1_0",
1354 "VK_KHR_get_physical_device_properties2",
1356 {
"VK_EXT_index_type_uint8",
1357 { {
"VK_VERSION_1_0",
1359 "VK_KHR_get_physical_device_properties2",
1361 {
"VK_VERSION_1_1", { {} } } } },
1362 {
"VK_EXT_extended_dynamic_state",
1363 { {
"VK_VERSION_1_0",
1365 "VK_KHR_get_physical_device_properties2",
1367 {
"VK_VERSION_1_1", { {} } } } },
1368 {
"VK_KHR_pipeline_executable_properties",
1369 { {
"VK_VERSION_1_0",
1371 "VK_KHR_get_physical_device_properties2",
1373 {
"VK_EXT_host_image_copy",
1374 { {
"VK_VERSION_1_0",
1376 "VK_KHR_get_physical_device_properties2",
1377 "VK_KHR_copy_commands2",
1378 "VK_KHR_format_feature_flags2",
1380 {
"VK_EXT_shader_atomic_float2",
1381 { {
"VK_VERSION_1_0",
1383 "VK_EXT_shader_atomic_float",
1385 {
"VK_EXT_surface_maintenance1",
1386 { {
"VK_VERSION_1_0",
1389 "VK_KHR_get_surface_capabilities2",
1391 {
"VK_EXT_swapchain_maintenance1",
1392 { {
"VK_VERSION_1_0",
1395 "VK_EXT_surface_maintenance1",
1396 "VK_KHR_get_physical_device_properties2",
1398 {
"VK_EXT_shader_demote_to_helper_invocation",
1399 { {
"VK_VERSION_1_0",
1401 "VK_KHR_get_physical_device_properties2",
1403 {
"VK_VERSION_1_1", { {} } } } },
1404 {
"VK_NV_device_generated_commands",
1405 { {
"VK_VERSION_1_1",
1407 "VK_KHR_buffer_device_address",
1409 {
"VK_NV_inherited_viewport_scissor",
1410 { {
"VK_VERSION_1_0",
1412 "VK_KHR_get_physical_device_properties2",
1414 {
"VK_KHR_shader_integer_dot_product",
1415 { {
"VK_VERSION_1_0",
1417 "VK_KHR_get_physical_device_properties2",
1419 {
"VK_EXT_texel_buffer_alignment",
1420 { {
"VK_VERSION_1_0",
1422 "VK_KHR_get_physical_device_properties2",
1424 {
"VK_VERSION_1_1", { {} } } } },
1425 {
"VK_EXT_depth_bias_control",
1426 { {
"VK_VERSION_1_0",
1428 "VK_KHR_get_physical_device_properties2",
1430 {
"VK_EXT_device_memory_report",
1431 { {
"VK_VERSION_1_0",
1433 "VK_KHR_get_physical_device_properties2",
1435 {
"VK_EXT_acquire_drm_display",
1436 { {
"VK_VERSION_1_0",
1438 "VK_EXT_direct_mode_display",
1440 {
"VK_EXT_robustness2",
1441 { {
"VK_VERSION_1_0",
1443 "VK_KHR_get_physical_device_properties2",
1445 {
"VK_VERSION_1_1", { {} } } } },
1446 {
"VK_EXT_custom_border_color",
1447 { {
"VK_VERSION_1_0",
1449 "VK_KHR_get_physical_device_properties2",
1451 {
"VK_VERSION_1_1", { {} } } } },
1452 {
"VK_NV_present_barrier",
1453 { {
"VK_VERSION_1_0",
1455 "VK_KHR_get_physical_device_properties2",
1457 "VK_KHR_get_surface_capabilities2",
1460 {
"VK_KHR_present_id",
1461 { {
"VK_VERSION_1_0",
1464 "VK_KHR_get_physical_device_properties2",
1466 {
"VK_EXT_private_data",
1467 { {
"VK_VERSION_1_0",
1469 "VK_KHR_get_physical_device_properties2",
1471 {
"VK_EXT_pipeline_creation_cache_control",
1472 { {
"VK_VERSION_1_0",
1474 "VK_KHR_get_physical_device_properties2",
1476 {
"VK_KHR_video_encode_queue",
1477 { {
"VK_VERSION_1_0",
1479 "VK_KHR_video_queue",
1480 "VK_KHR_synchronization2",
1482 {
"VK_NV_device_diagnostics_config",
1483 { {
"VK_VERSION_1_0",
1485 "VK_KHR_get_physical_device_properties2",
1487 {
"VK_KHR_synchronization2",
1488 { {
"VK_VERSION_1_0",
1490 "VK_KHR_get_physical_device_properties2",
1492 {
"VK_VERSION_1_1", { {} } } } },
1493 {
"VK_EXT_descriptor_buffer",
1494 { {
"VK_VERSION_1_0",
1496 "VK_KHR_get_physical_device_properties2",
1497 "VK_KHR_buffer_device_address",
1498 "VK_KHR_synchronization2",
1499 "VK_EXT_descriptor_indexing",
1501 {
"VK_EXT_graphics_pipeline_library",
1502 { {
"VK_VERSION_1_0",
1504 "VK_KHR_get_physical_device_properties2",
1505 "VK_KHR_pipeline_library",
1507 {
"VK_AMD_shader_early_and_late_fragment_tests",
1508 { {
"VK_VERSION_1_0",
1510 "VK_KHR_get_physical_device_properties2",
1512 {
"VK_KHR_fragment_shader_barycentric",
1513 { {
"VK_VERSION_1_0",
1515 "VK_KHR_get_physical_device_properties2",
1517 {
"VK_KHR_shader_subgroup_uniform_control_flow", { {
"VK_VERSION_1_1", { {} } } } },
1518 {
"VK_KHR_zero_initialize_workgroup_memory",
1519 { {
"VK_VERSION_1_0",
1521 "VK_KHR_get_physical_device_properties2",
1523 {
"VK_NV_fragment_shading_rate_enums",
1524 { {
"VK_VERSION_1_0",
1526 "VK_KHR_fragment_shading_rate",
1528 {
"VK_NV_ray_tracing_motion_blur",
1529 { {
"VK_VERSION_1_0",
1531 "VK_KHR_ray_tracing_pipeline",
1533 {
"VK_EXT_mesh_shader",
1534 { {
"VK_VERSION_1_0",
1538 {
"VK_EXT_ycbcr_2plane_444_formats",
1539 { {
"VK_VERSION_1_0",
1541 "VK_KHR_sampler_ycbcr_conversion",
1543 {
"VK_VERSION_1_1", { {} } } } },
1544 {
"VK_EXT_fragment_density_map2",
1545 { {
"VK_VERSION_1_0",
1547 "VK_EXT_fragment_density_map",
1549 {
"VK_QCOM_rotated_copy_commands",
1550 { {
"VK_VERSION_1_0",
1552 "VK_KHR_copy_commands2",
1554 {
"VK_EXT_image_robustness",
1555 { {
"VK_VERSION_1_0",
1557 "VK_KHR_get_physical_device_properties2",
1559 {
"VK_VERSION_1_1", { {} } } } },
1560 {
"VK_KHR_workgroup_memory_explicit_layout",
1561 { {
"VK_VERSION_1_0",
1563 "VK_KHR_get_physical_device_properties2",
1565 {
"VK_KHR_copy_commands2",
1566 { {
"VK_VERSION_1_0",
1568 "VK_KHR_get_physical_device_properties2",
1570 {
"VK_VERSION_1_1", { {} } } } },
1571 {
"VK_EXT_image_compression_control",
1572 { {
"VK_VERSION_1_0",
1574 "VK_KHR_get_physical_device_properties2",
1576 {
"VK_EXT_attachment_feedback_loop_layout",
1577 { {
"VK_VERSION_1_0",
1579 "VK_KHR_get_physical_device_properties2",
1581 {
"VK_EXT_4444_formats",
1582 { {
"VK_VERSION_1_0",
1584 "VK_KHR_get_physical_device_properties2",
1586 {
"VK_VERSION_1_1", { {} } } } },
1587 {
"VK_EXT_device_fault",
1588 { {
"VK_VERSION_1_0",
1590 "VK_KHR_get_physical_device_properties2",
1592 {
"VK_ARM_rasterization_order_attachment_access",
1593 { {
"VK_VERSION_1_0",
1595 "VK_KHR_get_physical_device_properties2",
1597 {
"VK_EXT_rgba10x6_formats",
1598 { {
"VK_VERSION_1_0",
1600 "VK_KHR_sampler_ycbcr_conversion",
1602 #if defined( VK_USE_PLATFORM_WIN32_KHR )
1603 {
"VK_NV_acquire_winrt_display",
1604 { {
"VK_VERSION_1_0",
1606 "VK_EXT_direct_mode_display",
1609 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
1610 {
"VK_EXT_directfb_surface",
1611 { {
"VK_VERSION_1_0",
1616 {
"VK_VALVE_mutable_descriptor_type",
1617 { {
"VK_VERSION_1_0",
1619 "VK_KHR_maintenance3",
1621 {
"VK_EXT_vertex_input_dynamic_state",
1622 { {
"VK_VERSION_1_0",
1624 "VK_KHR_get_physical_device_properties2",
1626 {
"VK_VERSION_1_1", { {} } } } },
1627 {
"VK_EXT_physical_device_drm",
1628 { {
"VK_VERSION_1_0",
1630 "VK_KHR_get_physical_device_properties2",
1632 {
"VK_EXT_device_address_binding_report",
1633 { {
"VK_VERSION_1_0",
1635 "VK_KHR_get_physical_device_properties2",
1636 "VK_EXT_debug_utils",
1638 {
"VK_EXT_depth_clip_control",
1639 { {
"VK_VERSION_1_0",
1641 "VK_KHR_get_physical_device_properties2",
1643 {
"VK_EXT_primitive_topology_list_restart",
1644 { {
"VK_VERSION_1_0",
1646 "VK_KHR_get_physical_device_properties2",
1648 {
"VK_KHR_format_feature_flags2",
1649 { {
"VK_VERSION_1_0",
1651 "VK_KHR_get_physical_device_properties2",
1653 #if defined( VK_USE_PLATFORM_FUCHSIA )
1654 {
"VK_FUCHSIA_external_memory",
1655 { {
"VK_VERSION_1_0",
1657 "VK_KHR_external_memory_capabilities",
1658 "VK_KHR_external_memory",
1660 {
"VK_FUCHSIA_external_semaphore",
1661 { {
"VK_VERSION_1_0",
1663 "VK_KHR_external_semaphore_capabilities",
1664 "VK_KHR_external_semaphore",
1666 {
"VK_FUCHSIA_buffer_collection",
1667 { {
"VK_VERSION_1_0",
1669 "VK_FUCHSIA_external_memory",
1670 "VK_KHR_sampler_ycbcr_conversion",
1673 {
"VK_HUAWEI_subpass_shading",
1674 { {
"VK_VERSION_1_0",
1676 "VK_KHR_create_renderpass2",
1677 "VK_KHR_synchronization2",
1679 {
"VK_HUAWEI_invocation_mask",
1680 { {
"VK_VERSION_1_0",
1682 "VK_KHR_ray_tracing_pipeline",
1683 "VK_KHR_synchronization2",
1685 {
"VK_NV_external_memory_rdma",
1686 { {
"VK_VERSION_1_0",
1688 "VK_KHR_external_memory",
1690 {
"VK_EXT_pipeline_properties",
1691 { {
"VK_VERSION_1_0",
1693 "VK_KHR_get_physical_device_properties2",
1695 {
"VK_EXT_multisampled_render_to_single_sampled",
1696 { {
"VK_VERSION_1_0",
1698 "VK_KHR_create_renderpass2",
1699 "VK_KHR_depth_stencil_resolve",
1701 {
"VK_EXT_extended_dynamic_state2",
1702 { {
"VK_VERSION_1_0",
1704 "VK_KHR_get_physical_device_properties2",
1706 {
"VK_VERSION_1_1", { {} } } } },
1707 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
1708 {
"VK_QNX_screen_surface",
1709 { {
"VK_VERSION_1_0",
1714 {
"VK_EXT_color_write_enable",
1715 { {
"VK_VERSION_1_0",
1717 "VK_KHR_get_physical_device_properties2",
1719 {
"VK_VERSION_1_1", { {} } } } },
1720 {
"VK_EXT_primitives_generated_query",
1721 { {
"VK_VERSION_1_0",
1723 "VK_EXT_transform_feedback",
1725 {
"VK_KHR_ray_tracing_maintenance1",
1726 { {
"VK_VERSION_1_0",
1728 "VK_KHR_acceleration_structure",
1730 {
"VK_EXT_global_priority_query",
1731 { {
"VK_VERSION_1_0",
1733 "VK_EXT_global_priority",
1734 "VK_KHR_get_physical_device_properties2",
1736 {
"VK_EXT_image_view_min_lod",
1737 { {
"VK_VERSION_1_0",
1739 "VK_KHR_get_physical_device_properties2",
1741 {
"VK_EXT_multi_draw",
1742 { {
"VK_VERSION_1_0",
1744 "VK_KHR_get_physical_device_properties2",
1746 {
"VK_EXT_image_2d_view_of_3d",
1747 { {
"VK_VERSION_1_0",
1749 "VK_KHR_maintenance1",
1750 "VK_KHR_get_physical_device_properties2",
1752 {
"VK_EXT_shader_tile_image", { {
"VK_VERSION_1_3", { {} } } } },
1753 {
"VK_EXT_opacity_micromap",
1754 { {
"VK_VERSION_1_0",
1756 "VK_KHR_acceleration_structure",
1757 "VK_KHR_synchronization2",
1759 #if defined( VK_ENABLE_BETA_EXTENSIONS )
1760 {
"VK_NV_displacement_micromap",
1761 { {
"VK_VERSION_1_0",
1763 "VK_EXT_opacity_micromap",
1766 {
"VK_HUAWEI_cluster_culling_shader",
1767 { {
"VK_VERSION_1_0",
1769 "VK_KHR_get_physical_device_properties2",
1771 {
"VK_EXT_border_color_swizzle",
1772 { {
"VK_VERSION_1_0",
1774 "VK_EXT_custom_border_color",
1776 {
"VK_EXT_pageable_device_local_memory",
1777 { {
"VK_VERSION_1_0",
1779 "VK_EXT_memory_priority",
1781 {
"VK_KHR_maintenance4", { {
"VK_VERSION_1_1", { {} } } } },
1782 {
"VK_ARM_shader_core_properties", { {
"VK_VERSION_1_1", { {} } } } },
1783 {
"VK_ARM_scheduling_controls",
1784 { {
"VK_VERSION_1_0",
1786 "VK_ARM_shader_core_builtins",
1788 {
"VK_EXT_image_sliced_view_of_3d",
1789 { {
"VK_VERSION_1_0",
1791 "VK_KHR_maintenance1",
1792 "VK_KHR_get_physical_device_properties2",
1794 {
"VK_VALVE_descriptor_set_host_mapping",
1795 { {
"VK_VERSION_1_0",
1797 "VK_KHR_get_physical_device_properties2",
1799 {
"VK_EXT_depth_clamp_zero_one",
1800 { {
"VK_VERSION_1_0",
1802 "VK_KHR_get_physical_device_properties2",
1804 {
"VK_EXT_non_seamless_cube_map",
1805 { {
"VK_VERSION_1_0",
1807 "VK_KHR_get_physical_device_properties2",
1809 {
"VK_ARM_render_pass_striped",
1810 { {
"VK_VERSION_1_0",
1812 "VK_KHR_get_physical_device_properties2",
1813 "VK_KHR_synchronization2",
1815 {
"VK_QCOM_fragment_density_map_offset",
1816 { {
"VK_VERSION_1_0",
1818 "VK_KHR_get_physical_device_properties2",
1819 "VK_EXT_fragment_density_map",
1821 {
"VK_NV_copy_memory_indirect",
1822 { {
"VK_VERSION_1_0",
1824 "VK_KHR_get_physical_device_properties2",
1825 "VK_KHR_buffer_device_address",
1827 {
"VK_NV_memory_decompression",
1828 { {
"VK_VERSION_1_0",
1830 "VK_KHR_get_physical_device_properties2",
1831 "VK_KHR_buffer_device_address",
1833 {
"VK_NV_device_generated_commands_compute",
1834 { {
"VK_VERSION_1_0",
1836 "VK_NV_device_generated_commands",
1838 {
"VK_NV_linear_color_attachment",
1839 { {
"VK_VERSION_1_0",
1841 "VK_KHR_get_physical_device_properties2",
1843 {
"VK_GOOGLE_surfaceless_query",
1844 { {
"VK_VERSION_1_0",
1848 {
"VK_EXT_image_compression_control_swapchain",
1849 { {
"VK_VERSION_1_0",
1851 "VK_EXT_image_compression_control",
1853 {
"VK_QCOM_image_processing",
1854 { {
"VK_VERSION_1_0",
1856 "VK_KHR_format_feature_flags2",
1858 {
"VK_EXT_nested_command_buffer",
1859 { {
"VK_VERSION_1_0",
1861 "VK_KHR_get_physical_device_properties2",
1863 {
"VK_EXT_external_memory_acquire_unmodified",
1864 { {
"VK_VERSION_1_0",
1866 "VK_KHR_external_memory",
1868 {
"VK_EXT_extended_dynamic_state3",
1869 { {
"VK_VERSION_1_0",
1871 "VK_KHR_get_physical_device_properties2",
1873 {
"VK_EXT_subpass_merge_feedback",
1874 { {
"VK_VERSION_1_0",
1876 "VK_KHR_get_physical_device_properties2",
1878 {
"VK_EXT_shader_module_identifier",
1879 { {
"VK_VERSION_1_0",
1881 "VK_KHR_get_physical_device_properties2",
1882 "VK_EXT_pipeline_creation_cache_control",
1884 {
"VK_EXT_rasterization_order_attachment_access",
1885 { {
"VK_VERSION_1_0",
1887 "VK_KHR_get_physical_device_properties2",
1889 {
"VK_NV_optical_flow",
1890 { {
"VK_VERSION_1_0",
1892 "VK_KHR_get_physical_device_properties2",
1893 "VK_KHR_format_feature_flags2",
1894 "VK_KHR_synchronization2",
1896 {
"VK_EXT_legacy_dithering",
1897 { {
"VK_VERSION_1_0",
1899 "VK_KHR_get_physical_device_properties2",
1901 {
"VK_EXT_pipeline_protected_access",
1902 { {
"VK_VERSION_1_0",
1904 "VK_KHR_get_physical_device_properties2",
1906 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
1907 {
"VK_ANDROID_external_format_resolve",
1908 { {
"VK_VERSION_1_0",
1910 "VK_ANDROID_external_memory_android_hardware_buffer",
1913 {
"VK_KHR_maintenance5",
1914 { {
"VK_VERSION_1_1",
1916 "VK_KHR_dynamic_rendering",
1918 {
"VK_KHR_ray_tracing_position_fetch",
1919 { {
"VK_VERSION_1_0",
1921 "VK_KHR_acceleration_structure",
1923 {
"VK_EXT_shader_object",
1924 { {
"VK_VERSION_1_0",
1926 "VK_KHR_get_physical_device_properties2",
1927 "VK_KHR_dynamic_rendering",
1931 "VK_KHR_dynamic_rendering",
1933 {
"VK_VERSION_1_3", { {} } } } },
1934 {
"VK_QCOM_tile_properties",
1935 { {
"VK_VERSION_1_0",
1937 "VK_KHR_get_physical_device_properties2",
1939 {
"VK_SEC_amigo_profiling",
1940 { {
"VK_VERSION_1_0",
1942 "VK_KHR_get_physical_device_properties2",
1944 {
"VK_QCOM_multiview_per_view_viewports",
1945 { {
"VK_VERSION_1_0",
1947 "VK_KHR_get_physical_device_properties2",
1949 {
"VK_NV_ray_tracing_invocation_reorder",
1950 { {
"VK_VERSION_1_0",
1952 "VK_KHR_ray_tracing_pipeline",
1954 {
"VK_EXT_mutable_descriptor_type",
1955 { {
"VK_VERSION_1_0",
1957 "VK_KHR_maintenance3",
1959 {
"VK_ARM_shader_core_builtins",
1960 { {
"VK_VERSION_1_0",
1962 "VK_KHR_get_physical_device_properties2",
1964 {
"VK_EXT_pipeline_library_group_handles",
1965 { {
"VK_VERSION_1_0",
1967 "VK_KHR_ray_tracing_pipeline",
1968 "VK_KHR_pipeline_library",
1970 {
"VK_EXT_dynamic_rendering_unused_attachments",
1971 { {
"VK_VERSION_1_0",
1973 "VK_KHR_get_physical_device_properties2",
1974 "VK_KHR_dynamic_rendering",
1978 "VK_KHR_dynamic_rendering",
1980 {
"VK_VERSION_1_3", { {} } } } },
1981 {
"VK_NV_low_latency2",
1982 { {
"VK_VERSION_1_0",
1984 "VK_KHR_timeline_semaphore",
1986 {
"VK_VERSION_1_2", { {} } } } },
1987 {
"VK_KHR_cooperative_matrix",
1988 { {
"VK_VERSION_1_0",
1990 "VK_KHR_get_physical_device_properties2",
1992 {
"VK_KHR_video_maintenance1",
1993 { {
"VK_VERSION_1_0",
1995 "VK_KHR_video_queue",
1997 {
"VK_NV_per_stage_descriptor_set",
1998 { {
"VK_VERSION_1_0",
2000 "VK_KHR_maintenance6",
2002 {
"VK_QCOM_image_processing2",
2003 { {
"VK_VERSION_1_0",
2005 "VK_QCOM_image_processing",
2007 {
"VK_QCOM_filter_cubic_weights",
2008 { {
"VK_VERSION_1_0",
2010 "VK_EXT_filter_cubic",
2012 {
"VK_QCOM_filter_cubic_clamp",
2013 { {
"VK_VERSION_1_0",
2015 "VK_EXT_filter_cubic",
2016 "VK_EXT_sampler_filter_minmax",
2020 "VK_EXT_filter_cubic",
2022 {
"VK_EXT_attachment_feedback_loop_dynamic_state",
2023 { {
"VK_VERSION_1_0",
2025 "VK_KHR_get_physical_device_properties2",
2026 "VK_EXT_attachment_feedback_loop_layout",
2028 {
"VK_KHR_vertex_attribute_divisor",
2029 { {
"VK_VERSION_1_0",
2031 "VK_KHR_get_physical_device_properties2",
2033 {
"VK_VERSION_1_1", { {} } } } },
2034 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
2035 {
"VK_QNX_external_memory_screen_buffer",
2036 { {
"VK_VERSION_1_0",
2038 "VK_KHR_sampler_ycbcr_conversion",
2039 "VK_KHR_external_memory",
2040 "VK_KHR_dedicated_allocation",
2044 "VK_EXT_queue_family_foreign",
2047 {
"VK_MSFT_layered_driver",
2048 { {
"VK_VERSION_1_0",
2050 "VK_KHR_get_physical_device_properties2",
2052 {
"VK_KHR_calibrated_timestamps",
2053 { {
"VK_VERSION_1_0",
2055 "VK_KHR_get_physical_device_properties2",
2057 {
"VK_VERSION_1_1", { {} } } } },
2058 {
"VK_KHR_maintenance6", { {
"VK_VERSION_1_1", { {} } } } },
2059 {
"VK_NV_descriptor_pool_overallocation", { {
"VK_VERSION_1_1", { {} } } } }
2061 auto depIt = dependencies.find( extension );
2062 return ( depIt != dependencies.end() ) ? depIt->second : noDependencies;
2066 std::string
const & extension )
2068 #if !defined( NDEBUG )
2069 static std::set<std::string> versions = {
"VK_VERSION_1_0",
"VK_VERSION_1_1",
"VK_VERSION_1_2",
"VK_VERSION_1_3" };
2070 assert( versions.find( version ) != versions.end() );
2072 static std::vector<std::vector<std::string>> noDependencies;
2074 std::map<std::string, std::vector<std::vector<std::string>>>
const & dependencies =
getExtensionDepends( extension );
2075 if ( dependencies.empty() )
2077 return {
true, noDependencies };
2079 auto depIt = dependencies.lower_bound( version );
2080 if ( ( depIt == dependencies.end() ) || ( depIt->first != version ) )
2082 depIt = std::prev( depIt );
2084 if ( depIt == dependencies.end() )
2086 return {
false, noDependencies };
2090 return {
true, depIt->second };
2096 static std::map<std::string, std::string> obsoletedExtensions = { {
"VK_AMD_negative_viewport_height",
"VK_KHR_maintenance1" } };
2097 return obsoletedExtensions;
2102 static std::map<std::string, std::string> promotedExtensions = {
2103 {
"VK_KHR_sampler_mirror_clamp_to_edge",
"VK_VERSION_1_2" },
2104 {
"VK_EXT_debug_marker",
"VK_EXT_debug_utils" },
2105 {
"VK_AMD_draw_indirect_count",
"VK_KHR_draw_indirect_count" },
2106 {
"VK_KHR_dynamic_rendering",
"VK_VERSION_1_3" },
2107 {
"VK_KHR_multiview",
"VK_VERSION_1_1" },
2108 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2109 {
"VK_NV_win32_keyed_mutex",
"VK_KHR_win32_keyed_mutex" },
2111 {
"VK_KHR_get_physical_device_properties2",
"VK_VERSION_1_1" },
2112 {
"VK_KHR_device_group",
"VK_VERSION_1_1" },
2113 {
"VK_KHR_shader_draw_parameters",
"VK_VERSION_1_1" },
2114 {
"VK_EXT_texture_compression_astc_hdr",
"VK_VERSION_1_3" },
2115 {
"VK_KHR_maintenance1",
"VK_VERSION_1_1" },
2116 {
"VK_KHR_device_group_creation",
"VK_VERSION_1_1" },
2117 {
"VK_KHR_external_memory_capabilities",
"VK_VERSION_1_1" },
2118 {
"VK_KHR_external_memory",
"VK_VERSION_1_1" },
2119 {
"VK_KHR_external_semaphore_capabilities",
"VK_VERSION_1_1" },
2120 {
"VK_KHR_external_semaphore",
"VK_VERSION_1_1" },
2121 {
"VK_KHR_shader_float16_int8",
"VK_VERSION_1_2" },
2122 {
"VK_KHR_16bit_storage",
"VK_VERSION_1_1" },
2123 {
"VK_KHR_descriptor_update_template",
"VK_VERSION_1_1" },
2124 {
"VK_KHR_imageless_framebuffer",
"VK_VERSION_1_2" },
2125 {
"VK_KHR_create_renderpass2",
"VK_VERSION_1_2" },
2126 {
"VK_KHR_external_fence_capabilities",
"VK_VERSION_1_1" },
2127 {
"VK_KHR_external_fence",
"VK_VERSION_1_1" },
2128 {
"VK_KHR_maintenance2",
"VK_VERSION_1_1" },
2129 {
"VK_KHR_variable_pointers",
"VK_VERSION_1_1" },
2130 {
"VK_KHR_dedicated_allocation",
"VK_VERSION_1_1" },
2131 {
"VK_EXT_sampler_filter_minmax",
"VK_VERSION_1_2" },
2132 {
"VK_KHR_storage_buffer_storage_class",
"VK_VERSION_1_1" },
2133 {
"VK_EXT_inline_uniform_block",
"VK_VERSION_1_3" },
2134 {
"VK_KHR_relaxed_block_layout",
"VK_VERSION_1_1" },
2135 {
"VK_KHR_get_memory_requirements2",
"VK_VERSION_1_1" },
2136 {
"VK_KHR_image_format_list",
"VK_VERSION_1_2" },
2137 {
"VK_KHR_sampler_ycbcr_conversion",
"VK_VERSION_1_1" },
2138 {
"VK_KHR_bind_memory2",
"VK_VERSION_1_1" },
2139 {
"VK_EXT_descriptor_indexing",
"VK_VERSION_1_2" },
2140 {
"VK_EXT_shader_viewport_index_layer",
"VK_VERSION_1_2" },
2141 {
"VK_KHR_maintenance3",
"VK_VERSION_1_1" },
2142 {
"VK_KHR_draw_indirect_count",
"VK_VERSION_1_2" },
2143 {
"VK_EXT_global_priority",
"VK_KHR_global_priority" },
2144 {
"VK_KHR_shader_subgroup_extended_types",
"VK_VERSION_1_2" },
2145 {
"VK_KHR_8bit_storage",
"VK_VERSION_1_2" },
2146 {
"VK_KHR_shader_atomic_int64",
"VK_VERSION_1_2" },
2147 {
"VK_EXT_calibrated_timestamps",
"VK_KHR_calibrated_timestamps" },
2148 {
"VK_EXT_vertex_attribute_divisor",
"VK_KHR_vertex_attribute_divisor" },
2149 {
"VK_EXT_pipeline_creation_feedback",
"VK_VERSION_1_3" },
2150 {
"VK_KHR_driver_properties",
"VK_VERSION_1_2" },
2151 {
"VK_KHR_shader_float_controls",
"VK_VERSION_1_2" },
2152 {
"VK_KHR_depth_stencil_resolve",
"VK_VERSION_1_2" },
2153 {
"VK_NV_fragment_shader_barycentric",
"VK_KHR_fragment_shader_barycentric" },
2154 {
"VK_KHR_timeline_semaphore",
"VK_VERSION_1_2" },
2155 {
"VK_KHR_vulkan_memory_model",
"VK_VERSION_1_2" },
2156 {
"VK_KHR_shader_terminate_invocation",
"VK_VERSION_1_3" },
2157 {
"VK_EXT_scalar_block_layout",
"VK_VERSION_1_2" },
2158 {
"VK_EXT_subgroup_size_control",
"VK_VERSION_1_3" },
2159 {
"VK_KHR_spirv_1_4",
"VK_VERSION_1_2" },
2160 {
"VK_KHR_separate_depth_stencil_layouts",
"VK_VERSION_1_2" },
2161 {
"VK_EXT_tooling_info",
"VK_VERSION_1_3" },
2162 {
"VK_EXT_separate_stencil_usage",
"VK_VERSION_1_2" },
2163 {
"VK_KHR_uniform_buffer_standard_layout",
"VK_VERSION_1_2" },
2164 {
"VK_KHR_buffer_device_address",
"VK_VERSION_1_2" },
2165 {
"VK_EXT_host_query_reset",
"VK_VERSION_1_2" },
2166 {
"VK_EXT_extended_dynamic_state",
"VK_VERSION_1_3" },
2167 {
"VK_EXT_shader_demote_to_helper_invocation",
"VK_VERSION_1_3" },
2168 {
"VK_KHR_shader_integer_dot_product",
"VK_VERSION_1_3" },
2169 {
"VK_EXT_texel_buffer_alignment",
"VK_VERSION_1_3" },
2170 {
"VK_KHR_shader_non_semantic_info",
"VK_VERSION_1_3" },
2171 {
"VK_EXT_private_data",
"VK_VERSION_1_3" },
2172 {
"VK_EXT_pipeline_creation_cache_control",
"VK_VERSION_1_3" },
2173 {
"VK_KHR_synchronization2",
"VK_VERSION_1_3" },
2174 {
"VK_KHR_zero_initialize_workgroup_memory",
"VK_VERSION_1_3" },
2175 {
"VK_EXT_ycbcr_2plane_444_formats",
"VK_VERSION_1_3" },
2176 {
"VK_EXT_image_robustness",
"VK_VERSION_1_3" },
2177 {
"VK_KHR_copy_commands2",
"VK_VERSION_1_3" },
2178 {
"VK_EXT_4444_formats",
"VK_VERSION_1_3" },
2179 {
"VK_ARM_rasterization_order_attachment_access",
"VK_EXT_rasterization_order_attachment_access" },
2180 {
"VK_VALVE_mutable_descriptor_type",
"VK_EXT_mutable_descriptor_type" },
2181 {
"VK_KHR_format_feature_flags2",
"VK_VERSION_1_3" },
2182 {
"VK_EXT_extended_dynamic_state2",
"VK_VERSION_1_3" },
2183 {
"VK_EXT_global_priority_query",
"VK_KHR_global_priority" },
2184 {
"VK_KHR_maintenance4",
"VK_VERSION_1_3" }
2186 return promotedExtensions;
2191 if ( extension ==
"VK_EXT_debug_report" )
2193 return "VK_EXT_debug_utils";
2195 if ( extension ==
"VK_NV_glsl_shader" )
2199 if ( extension ==
"VK_NV_dedicated_allocation" )
2201 return "VK_KHR_dedicated_allocation";
2203 if ( extension ==
"VK_AMD_gpu_shader_half_float" )
2205 return "VK_KHR_shader_float16_int8";
2207 if ( extension ==
"VK_IMG_format_pvrtc" )
2211 if ( extension ==
"VK_NV_external_memory_capabilities" )
2213 return "VK_KHR_external_memory_capabilities";
2215 if ( extension ==
"VK_NV_external_memory" )
2217 return "VK_KHR_external_memory";
2219 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2220 if ( extension ==
"VK_NV_external_memory_win32" )
2222 return "VK_KHR_external_memory_win32";
2225 if ( extension ==
"VK_EXT_validation_flags" )
2227 return "VK_EXT_layer_settings";
2229 if ( extension ==
"VK_EXT_shader_subgroup_ballot" )
2231 return "VK_VERSION_1_2";
2233 if ( extension ==
"VK_EXT_shader_subgroup_vote" )
2235 return "VK_VERSION_1_1";
2237 #if defined( VK_USE_PLATFORM_IOS_MVK )
2238 if ( extension ==
"VK_MVK_ios_surface" )
2240 return "VK_EXT_metal_surface";
2243 #if defined( VK_USE_PLATFORM_MACOS_MVK )
2244 if ( extension ==
"VK_MVK_macos_surface" )
2246 return "VK_EXT_metal_surface";
2249 if ( extension ==
"VK_AMD_gpu_shader_int16" )
2251 return "VK_KHR_shader_float16_int8";
2253 if ( extension ==
"VK_EXT_buffer_device_address" )
2255 return "VK_KHR_buffer_device_address";
2257 if ( extension ==
"VK_EXT_validation_features" )
2259 return "VK_EXT_layer_settings";
2266 if ( extension ==
"VK_AMD_negative_viewport_height" )
2268 return "VK_KHR_maintenance1";
2275 if ( extension ==
"VK_KHR_sampler_mirror_clamp_to_edge" )
2277 return "VK_VERSION_1_2";
2279 if ( extension ==
"VK_EXT_debug_marker" )
2281 return "VK_EXT_debug_utils";
2283 if ( extension ==
"VK_AMD_draw_indirect_count" )
2285 return "VK_KHR_draw_indirect_count";
2287 if ( extension ==
"VK_KHR_dynamic_rendering" )
2289 return "VK_VERSION_1_3";
2291 if ( extension ==
"VK_KHR_multiview" )
2293 return "VK_VERSION_1_1";
2295 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2296 if ( extension ==
"VK_NV_win32_keyed_mutex" )
2298 return "VK_KHR_win32_keyed_mutex";
2301 if ( extension ==
"VK_KHR_get_physical_device_properties2" )
2303 return "VK_VERSION_1_1";
2305 if ( extension ==
"VK_KHR_device_group" )
2307 return "VK_VERSION_1_1";
2309 if ( extension ==
"VK_KHR_shader_draw_parameters" )
2311 return "VK_VERSION_1_1";
2313 if ( extension ==
"VK_EXT_texture_compression_astc_hdr" )
2315 return "VK_VERSION_1_3";
2317 if ( extension ==
"VK_KHR_maintenance1" )
2319 return "VK_VERSION_1_1";
2321 if ( extension ==
"VK_KHR_device_group_creation" )
2323 return "VK_VERSION_1_1";
2325 if ( extension ==
"VK_KHR_external_memory_capabilities" )
2327 return "VK_VERSION_1_1";
2329 if ( extension ==
"VK_KHR_external_memory" )
2331 return "VK_VERSION_1_1";
2333 if ( extension ==
"VK_KHR_external_semaphore_capabilities" )
2335 return "VK_VERSION_1_1";
2337 if ( extension ==
"VK_KHR_external_semaphore" )
2339 return "VK_VERSION_1_1";
2341 if ( extension ==
"VK_KHR_shader_float16_int8" )
2343 return "VK_VERSION_1_2";
2345 if ( extension ==
"VK_KHR_16bit_storage" )
2347 return "VK_VERSION_1_1";
2349 if ( extension ==
"VK_KHR_descriptor_update_template" )
2351 return "VK_VERSION_1_1";
2353 if ( extension ==
"VK_KHR_imageless_framebuffer" )
2355 return "VK_VERSION_1_2";
2357 if ( extension ==
"VK_KHR_create_renderpass2" )
2359 return "VK_VERSION_1_2";
2361 if ( extension ==
"VK_KHR_external_fence_capabilities" )
2363 return "VK_VERSION_1_1";
2365 if ( extension ==
"VK_KHR_external_fence" )
2367 return "VK_VERSION_1_1";
2369 if ( extension ==
"VK_KHR_maintenance2" )
2371 return "VK_VERSION_1_1";
2373 if ( extension ==
"VK_KHR_variable_pointers" )
2375 return "VK_VERSION_1_1";
2377 if ( extension ==
"VK_KHR_dedicated_allocation" )
2379 return "VK_VERSION_1_1";
2381 if ( extension ==
"VK_EXT_sampler_filter_minmax" )
2383 return "VK_VERSION_1_2";
2385 if ( extension ==
"VK_KHR_storage_buffer_storage_class" )
2387 return "VK_VERSION_1_1";
2389 if ( extension ==
"VK_EXT_inline_uniform_block" )
2391 return "VK_VERSION_1_3";
2393 if ( extension ==
"VK_KHR_relaxed_block_layout" )
2395 return "VK_VERSION_1_1";
2397 if ( extension ==
"VK_KHR_get_memory_requirements2" )
2399 return "VK_VERSION_1_1";
2401 if ( extension ==
"VK_KHR_image_format_list" )
2403 return "VK_VERSION_1_2";
2405 if ( extension ==
"VK_KHR_sampler_ycbcr_conversion" )
2407 return "VK_VERSION_1_1";
2409 if ( extension ==
"VK_KHR_bind_memory2" )
2411 return "VK_VERSION_1_1";
2413 if ( extension ==
"VK_EXT_descriptor_indexing" )
2415 return "VK_VERSION_1_2";
2417 if ( extension ==
"VK_EXT_shader_viewport_index_layer" )
2419 return "VK_VERSION_1_2";
2421 if ( extension ==
"VK_KHR_maintenance3" )
2423 return "VK_VERSION_1_1";
2425 if ( extension ==
"VK_KHR_draw_indirect_count" )
2427 return "VK_VERSION_1_2";
2429 if ( extension ==
"VK_EXT_global_priority" )
2431 return "VK_KHR_global_priority";
2433 if ( extension ==
"VK_KHR_shader_subgroup_extended_types" )
2435 return "VK_VERSION_1_2";
2437 if ( extension ==
"VK_KHR_8bit_storage" )
2439 return "VK_VERSION_1_2";
2441 if ( extension ==
"VK_KHR_shader_atomic_int64" )
2443 return "VK_VERSION_1_2";
2445 if ( extension ==
"VK_EXT_calibrated_timestamps" )
2447 return "VK_KHR_calibrated_timestamps";
2449 if ( extension ==
"VK_EXT_vertex_attribute_divisor" )
2451 return "VK_KHR_vertex_attribute_divisor";
2453 if ( extension ==
"VK_EXT_pipeline_creation_feedback" )
2455 return "VK_VERSION_1_3";
2457 if ( extension ==
"VK_KHR_driver_properties" )
2459 return "VK_VERSION_1_2";
2461 if ( extension ==
"VK_KHR_shader_float_controls" )
2463 return "VK_VERSION_1_2";
2465 if ( extension ==
"VK_KHR_depth_stencil_resolve" )
2467 return "VK_VERSION_1_2";
2469 if ( extension ==
"VK_NV_fragment_shader_barycentric" )
2471 return "VK_KHR_fragment_shader_barycentric";
2473 if ( extension ==
"VK_KHR_timeline_semaphore" )
2475 return "VK_VERSION_1_2";
2477 if ( extension ==
"VK_KHR_vulkan_memory_model" )
2479 return "VK_VERSION_1_2";
2481 if ( extension ==
"VK_KHR_shader_terminate_invocation" )
2483 return "VK_VERSION_1_3";
2485 if ( extension ==
"VK_EXT_scalar_block_layout" )
2487 return "VK_VERSION_1_2";
2489 if ( extension ==
"VK_EXT_subgroup_size_control" )
2491 return "VK_VERSION_1_3";
2493 if ( extension ==
"VK_KHR_spirv_1_4" )
2495 return "VK_VERSION_1_2";
2497 if ( extension ==
"VK_KHR_separate_depth_stencil_layouts" )
2499 return "VK_VERSION_1_2";
2501 if ( extension ==
"VK_EXT_tooling_info" )
2503 return "VK_VERSION_1_3";
2505 if ( extension ==
"VK_EXT_separate_stencil_usage" )
2507 return "VK_VERSION_1_2";
2509 if ( extension ==
"VK_KHR_uniform_buffer_standard_layout" )
2511 return "VK_VERSION_1_2";
2513 if ( extension ==
"VK_KHR_buffer_device_address" )
2515 return "VK_VERSION_1_2";
2517 if ( extension ==
"VK_EXT_host_query_reset" )
2519 return "VK_VERSION_1_2";
2521 if ( extension ==
"VK_EXT_extended_dynamic_state" )
2523 return "VK_VERSION_1_3";
2525 if ( extension ==
"VK_EXT_shader_demote_to_helper_invocation" )
2527 return "VK_VERSION_1_3";
2529 if ( extension ==
"VK_KHR_shader_integer_dot_product" )
2531 return "VK_VERSION_1_3";
2533 if ( extension ==
"VK_EXT_texel_buffer_alignment" )
2535 return "VK_VERSION_1_3";
2537 if ( extension ==
"VK_KHR_shader_non_semantic_info" )
2539 return "VK_VERSION_1_3";
2541 if ( extension ==
"VK_EXT_private_data" )
2543 return "VK_VERSION_1_3";
2545 if ( extension ==
"VK_EXT_pipeline_creation_cache_control" )
2547 return "VK_VERSION_1_3";
2549 if ( extension ==
"VK_KHR_synchronization2" )
2551 return "VK_VERSION_1_3";
2553 if ( extension ==
"VK_KHR_zero_initialize_workgroup_memory" )
2555 return "VK_VERSION_1_3";
2557 if ( extension ==
"VK_EXT_ycbcr_2plane_444_formats" )
2559 return "VK_VERSION_1_3";
2561 if ( extension ==
"VK_EXT_image_robustness" )
2563 return "VK_VERSION_1_3";
2565 if ( extension ==
"VK_KHR_copy_commands2" )
2567 return "VK_VERSION_1_3";
2569 if ( extension ==
"VK_EXT_4444_formats" )
2571 return "VK_VERSION_1_3";
2573 if ( extension ==
"VK_ARM_rasterization_order_attachment_access" )
2575 return "VK_EXT_rasterization_order_attachment_access";
2577 if ( extension ==
"VK_VALVE_mutable_descriptor_type" )
2579 return "VK_EXT_mutable_descriptor_type";
2581 if ( extension ==
"VK_KHR_format_feature_flags2" )
2583 return "VK_VERSION_1_3";
2585 if ( extension ==
"VK_EXT_extended_dynamic_state2" )
2587 return "VK_VERSION_1_3";
2589 if ( extension ==
"VK_EXT_global_priority_query" )
2591 return "VK_KHR_global_priority";
2593 if ( extension ==
"VK_KHR_maintenance4" )
2595 return "VK_VERSION_1_3";
2602 return ( extension ==
"VK_EXT_debug_report" ) || ( extension ==
"VK_NV_glsl_shader" ) || ( extension ==
"VK_NV_dedicated_allocation" ) ||
2603 ( extension ==
"VK_AMD_gpu_shader_half_float" ) || ( extension ==
"VK_IMG_format_pvrtc" ) || ( extension ==
"VK_NV_external_memory_capabilities" ) ||
2604 ( extension ==
"VK_NV_external_memory" ) ||
2605 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2606 ( extension ==
"VK_NV_external_memory_win32" ) ||
2608 ( extension ==
"VK_EXT_validation_flags" ) || ( extension ==
"VK_EXT_shader_subgroup_ballot" ) || ( extension ==
"VK_EXT_shader_subgroup_vote" ) ||
2609 #if defined( VK_USE_PLATFORM_IOS_MVK )
2610 ( extension ==
"VK_MVK_ios_surface" ) ||
2612 #
if defined( VK_USE_PLATFORM_MACOS_MVK )
2613 ( extension ==
"VK_MVK_macos_surface" ) ||
2615 ( extension ==
"VK_AMD_gpu_shader_int16" ) || ( extension ==
"VK_EXT_buffer_device_address" ) || ( extension ==
"VK_EXT_validation_features" );
2620 return ( extension ==
"VK_KHR_swapchain" ) || ( extension ==
"VK_KHR_display_swapchain" ) || ( extension ==
"VK_NV_glsl_shader" ) ||
2621 ( extension ==
"VK_EXT_depth_range_unrestricted" ) || ( extension ==
"VK_KHR_sampler_mirror_clamp_to_edge" ) ||
2622 ( extension ==
"VK_IMG_filter_cubic" ) || ( extension ==
"VK_AMD_rasterization_order" ) || ( extension ==
"VK_AMD_shader_trinary_minmax" ) ||
2623 ( extension ==
"VK_AMD_shader_explicit_vertex_parameter" ) || ( extension ==
"VK_EXT_debug_marker" ) || ( extension ==
"VK_KHR_video_queue" ) ||
2624 ( extension ==
"VK_KHR_video_decode_queue" ) || ( extension ==
"VK_AMD_gcn_shader" ) || ( extension ==
"VK_NV_dedicated_allocation" ) ||
2625 ( extension ==
"VK_EXT_transform_feedback" ) || ( extension ==
"VK_NVX_binary_import" ) || ( extension ==
"VK_NVX_image_view_handle" ) ||
2626 ( extension ==
"VK_AMD_draw_indirect_count" ) || ( extension ==
"VK_AMD_negative_viewport_height" ) ||
2627 ( extension ==
"VK_AMD_gpu_shader_half_float" ) || ( extension ==
"VK_AMD_shader_ballot" ) || ( extension ==
"VK_KHR_video_encode_h264" ) ||
2628 ( extension ==
"VK_KHR_video_encode_h265" ) || ( extension ==
"VK_KHR_video_decode_h264" ) || ( extension ==
"VK_AMD_texture_gather_bias_lod" ) ||
2629 ( extension ==
"VK_AMD_shader_info" ) || ( extension ==
"VK_KHR_dynamic_rendering" ) || ( extension ==
"VK_AMD_shader_image_load_store_lod" ) ||
2630 ( extension ==
"VK_NV_corner_sampled_image" ) || ( extension ==
"VK_KHR_multiview" ) || ( extension ==
"VK_IMG_format_pvrtc" ) ||
2631 ( extension ==
"VK_NV_external_memory" )
2632 #
if defined( VK_USE_PLATFORM_WIN32_KHR )
2633 || ( extension ==
"VK_NV_external_memory_win32" ) || ( extension ==
"VK_NV_win32_keyed_mutex" )
2635 || ( extension ==
"VK_KHR_device_group" ) || ( extension ==
"VK_KHR_shader_draw_parameters" ) || ( extension ==
"VK_EXT_shader_subgroup_ballot" ) ||
2636 ( extension ==
"VK_EXT_shader_subgroup_vote" ) || ( extension ==
"VK_EXT_texture_compression_astc_hdr" ) ||
2637 ( extension ==
"VK_EXT_astc_decode_mode" ) || ( extension ==
"VK_EXT_pipeline_robustness" ) || ( extension ==
"VK_KHR_maintenance1" ) ||
2638 ( extension ==
"VK_KHR_external_memory" )
2639 #
if defined( VK_USE_PLATFORM_WIN32_KHR )
2640 || ( extension ==
"VK_KHR_external_memory_win32" )
2642 || ( extension ==
"VK_KHR_external_memory_fd" )
2643 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2644 || ( extension ==
"VK_KHR_win32_keyed_mutex" )
2646 || ( extension ==
"VK_KHR_external_semaphore" )
2647 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2648 || ( extension ==
"VK_KHR_external_semaphore_win32" )
2650 || ( extension ==
"VK_KHR_external_semaphore_fd" ) || ( extension ==
"VK_KHR_push_descriptor" ) || ( extension ==
"VK_EXT_conditional_rendering" ) ||
2651 ( extension ==
"VK_KHR_shader_float16_int8" ) || ( extension ==
"VK_KHR_16bit_storage" ) || ( extension ==
"VK_KHR_incremental_present" ) ||
2652 ( extension ==
"VK_KHR_descriptor_update_template" ) || ( extension ==
"VK_NV_clip_space_w_scaling" ) || ( extension ==
"VK_EXT_display_control" ) ||
2653 ( extension ==
"VK_GOOGLE_display_timing" ) || ( extension ==
"VK_NV_sample_mask_override_coverage" ) ||
2654 ( extension ==
"VK_NV_geometry_shader_passthrough" ) || ( extension ==
"VK_NV_viewport_array2" ) ||
2655 ( extension ==
"VK_NVX_multiview_per_view_attributes" ) || ( extension ==
"VK_NV_viewport_swizzle" ) ||
2656 ( extension ==
"VK_EXT_discard_rectangles" ) || ( extension ==
"VK_EXT_conservative_rasterization" ) ||
2657 ( extension ==
"VK_EXT_depth_clip_enable" ) || ( extension ==
"VK_EXT_hdr_metadata" ) || ( extension ==
"VK_KHR_imageless_framebuffer" ) ||
2658 ( extension ==
"VK_KHR_create_renderpass2" ) || ( extension ==
"VK_IMG_relaxed_line_rasterization" ) ||
2659 ( extension ==
"VK_KHR_shared_presentable_image" ) || ( extension ==
"VK_KHR_external_fence" )
2660 #
if defined( VK_USE_PLATFORM_WIN32_KHR )
2661 || ( extension ==
"VK_KHR_external_fence_win32" )
2663 || ( extension ==
"VK_KHR_external_fence_fd" ) || ( extension ==
"VK_KHR_performance_query" ) || ( extension ==
"VK_KHR_maintenance2" ) ||
2664 ( extension ==
"VK_KHR_variable_pointers" ) || ( extension ==
"VK_EXT_external_memory_dma_buf" ) || ( extension ==
"VK_EXT_queue_family_foreign" ) ||
2665 ( extension ==
"VK_KHR_dedicated_allocation" )
2666 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
2667 || ( extension ==
"VK_ANDROID_external_memory_android_hardware_buffer" )
2669 || ( extension ==
"VK_EXT_sampler_filter_minmax" ) || ( extension ==
"VK_KHR_storage_buffer_storage_class" ) ||
2670 ( extension ==
"VK_AMD_gpu_shader_int16" )
2671 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2672 || ( extension ==
"VK_AMDX_shader_enqueue" )
2674 || ( extension ==
"VK_AMD_mixed_attachment_samples" ) || ( extension ==
"VK_AMD_shader_fragment_mask" ) ||
2675 ( extension ==
"VK_EXT_inline_uniform_block" ) || ( extension ==
"VK_EXT_shader_stencil_export" ) || ( extension ==
"VK_EXT_sample_locations" ) ||
2676 ( extension ==
"VK_KHR_relaxed_block_layout" ) || ( extension ==
"VK_KHR_get_memory_requirements2" ) ||
2677 ( extension ==
"VK_KHR_image_format_list" ) || ( extension ==
"VK_EXT_blend_operation_advanced" ) ||
2678 ( extension ==
"VK_NV_fragment_coverage_to_color" ) || ( extension ==
"VK_KHR_acceleration_structure" ) ||
2679 ( extension ==
"VK_KHR_ray_tracing_pipeline" ) || ( extension ==
"VK_KHR_ray_query" ) || ( extension ==
"VK_NV_framebuffer_mixed_samples" ) ||
2680 ( extension ==
"VK_NV_fill_rectangle" ) || ( extension ==
"VK_NV_shader_sm_builtins" ) || ( extension ==
"VK_EXT_post_depth_coverage" ) ||
2681 ( extension ==
"VK_KHR_sampler_ycbcr_conversion" ) || ( extension ==
"VK_KHR_bind_memory2" ) ||
2682 ( extension ==
"VK_EXT_image_drm_format_modifier" ) || ( extension ==
"VK_EXT_validation_cache" ) || ( extension ==
"VK_EXT_descriptor_indexing" ) ||
2683 ( extension ==
"VK_EXT_shader_viewport_index_layer" )
2684 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2685 || ( extension ==
"VK_KHR_portability_subset" )
2687 || ( extension ==
"VK_NV_shading_rate_image" ) || ( extension ==
"VK_NV_ray_tracing" ) || ( extension ==
"VK_NV_representative_fragment_test" ) ||
2688 ( extension ==
"VK_KHR_maintenance3" ) || ( extension ==
"VK_KHR_draw_indirect_count" ) || ( extension ==
"VK_EXT_filter_cubic" ) ||
2689 ( extension ==
"VK_QCOM_render_pass_shader_resolve" ) || ( extension ==
"VK_EXT_global_priority" ) ||
2690 ( extension ==
"VK_KHR_shader_subgroup_extended_types" ) || ( extension ==
"VK_KHR_8bit_storage" ) ||
2691 ( extension ==
"VK_EXT_external_memory_host" ) || ( extension ==
"VK_AMD_buffer_marker" ) || ( extension ==
"VK_KHR_shader_atomic_int64" ) ||
2692 ( extension ==
"VK_KHR_shader_clock" ) || ( extension ==
"VK_AMD_pipeline_compiler_control" ) || ( extension ==
"VK_EXT_calibrated_timestamps" ) ||
2693 ( extension ==
"VK_AMD_shader_core_properties" ) || ( extension ==
"VK_KHR_video_decode_h265" ) || ( extension ==
"VK_KHR_global_priority" ) ||
2694 ( extension ==
"VK_AMD_memory_overallocation_behavior" ) || ( extension ==
"VK_EXT_vertex_attribute_divisor" )
2695 #if defined( VK_USE_PLATFORM_GGP )
2696 || ( extension ==
"VK_GGP_frame_token" )
2698 || ( extension ==
"VK_EXT_pipeline_creation_feedback" ) || ( extension ==
"VK_KHR_driver_properties" ) ||
2699 ( extension ==
"VK_KHR_shader_float_controls" ) || ( extension ==
"VK_NV_shader_subgroup_partitioned" ) ||
2700 ( extension ==
"VK_KHR_depth_stencil_resolve" ) || ( extension ==
"VK_KHR_swapchain_mutable_format" ) ||
2701 ( extension ==
"VK_NV_compute_shader_derivatives" ) || ( extension ==
"VK_NV_mesh_shader" ) ||
2702 ( extension ==
"VK_NV_fragment_shader_barycentric" ) || ( extension ==
"VK_NV_shader_image_footprint" ) ||
2703 ( extension ==
"VK_NV_scissor_exclusive" ) || ( extension ==
"VK_NV_device_diagnostic_checkpoints" ) ||
2704 ( extension ==
"VK_KHR_timeline_semaphore" ) || ( extension ==
"VK_INTEL_shader_integer_functions2" ) ||
2705 ( extension ==
"VK_INTEL_performance_query" ) || ( extension ==
"VK_KHR_vulkan_memory_model" ) || ( extension ==
"VK_EXT_pci_bus_info" ) ||
2706 ( extension ==
"VK_AMD_display_native_hdr" ) || ( extension ==
"VK_KHR_shader_terminate_invocation" ) ||
2707 ( extension ==
"VK_EXT_fragment_density_map" ) || ( extension ==
"VK_EXT_scalar_block_layout" ) ||
2708 ( extension ==
"VK_GOOGLE_hlsl_functionality1" ) || ( extension ==
"VK_GOOGLE_decorate_string" ) ||
2709 ( extension ==
"VK_EXT_subgroup_size_control" ) || ( extension ==
"VK_KHR_fragment_shading_rate" ) ||
2710 ( extension ==
"VK_AMD_shader_core_properties2" ) || ( extension ==
"VK_AMD_device_coherent_memory" ) ||
2711 ( extension ==
"VK_EXT_shader_image_atomic_int64" ) || ( extension ==
"VK_KHR_spirv_1_4" ) || ( extension ==
"VK_EXT_memory_budget" ) ||
2712 ( extension ==
"VK_EXT_memory_priority" ) || ( extension ==
"VK_NV_dedicated_allocation_image_aliasing" ) ||
2713 ( extension ==
"VK_KHR_separate_depth_stencil_layouts" ) || ( extension ==
"VK_EXT_buffer_device_address" ) ||
2714 ( extension ==
"VK_EXT_tooling_info" ) || ( extension ==
"VK_EXT_separate_stencil_usage" ) || ( extension ==
"VK_KHR_present_wait" ) ||
2715 ( extension ==
"VK_NV_cooperative_matrix" ) || ( extension ==
"VK_NV_coverage_reduction_mode" ) ||
2716 ( extension ==
"VK_EXT_fragment_shader_interlock" ) || ( extension ==
"VK_EXT_ycbcr_image_arrays" ) ||
2717 ( extension ==
"VK_KHR_uniform_buffer_standard_layout" ) || ( extension ==
"VK_EXT_provoking_vertex" )
2718 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2719 || ( extension ==
"VK_EXT_full_screen_exclusive" )
2721 || ( extension ==
"VK_KHR_buffer_device_address" ) || ( extension ==
"VK_EXT_line_rasterization" ) || ( extension ==
"VK_EXT_shader_atomic_float" ) ||
2722 ( extension ==
"VK_EXT_host_query_reset" ) || ( extension ==
"VK_EXT_index_type_uint8" ) || ( extension ==
"VK_EXT_extended_dynamic_state" ) ||
2723 ( extension ==
"VK_KHR_deferred_host_operations" ) || ( extension ==
"VK_KHR_pipeline_executable_properties" ) ||
2724 ( extension ==
"VK_EXT_host_image_copy" ) || ( extension ==
"VK_KHR_map_memory2" ) || ( extension ==
"VK_EXT_shader_atomic_float2" ) ||
2725 ( extension ==
"VK_EXT_swapchain_maintenance1" ) || ( extension ==
"VK_EXT_shader_demote_to_helper_invocation" ) ||
2726 ( extension ==
"VK_NV_device_generated_commands" ) || ( extension ==
"VK_NV_inherited_viewport_scissor" ) ||
2727 ( extension ==
"VK_KHR_shader_integer_dot_product" ) || ( extension ==
"VK_EXT_texel_buffer_alignment" ) ||
2728 ( extension ==
"VK_QCOM_render_pass_transform" ) || ( extension ==
"VK_EXT_depth_bias_control" ) || ( extension ==
"VK_EXT_device_memory_report" ) ||
2729 ( extension ==
"VK_EXT_robustness2" ) || ( extension ==
"VK_EXT_custom_border_color" ) || ( extension ==
"VK_GOOGLE_user_type" ) ||
2730 ( extension ==
"VK_KHR_pipeline_library" ) || ( extension ==
"VK_NV_present_barrier" ) || ( extension ==
"VK_KHR_shader_non_semantic_info" ) ||
2731 ( extension ==
"VK_KHR_present_id" ) || ( extension ==
"VK_EXT_private_data" ) || ( extension ==
"VK_EXT_pipeline_creation_cache_control" ) ||
2732 ( extension ==
"VK_KHR_video_encode_queue" ) || ( extension ==
"VK_NV_device_diagnostics_config" ) ||
2733 ( extension ==
"VK_QCOM_render_pass_store_ops" )
2734 #
if defined( VK_ENABLE_BETA_EXTENSIONS )
2735 || ( extension ==
"VK_NV_cuda_kernel_launch" )
2737 || ( extension ==
"VK_NV_low_latency" )
2738 #if defined( VK_USE_PLATFORM_METAL_EXT )
2739 || ( extension ==
"VK_EXT_metal_objects" )
2741 || ( extension ==
"VK_KHR_synchronization2" ) || ( extension ==
"VK_EXT_descriptor_buffer" ) || ( extension ==
"VK_EXT_graphics_pipeline_library" ) ||
2742 ( extension ==
"VK_AMD_shader_early_and_late_fragment_tests" ) || ( extension ==
"VK_KHR_fragment_shader_barycentric" ) ||
2743 ( extension ==
"VK_KHR_shader_subgroup_uniform_control_flow" ) || ( extension ==
"VK_KHR_zero_initialize_workgroup_memory" ) ||
2744 ( extension ==
"VK_NV_fragment_shading_rate_enums" ) || ( extension ==
"VK_NV_ray_tracing_motion_blur" ) || ( extension ==
"VK_EXT_mesh_shader" ) ||
2745 ( extension ==
"VK_EXT_ycbcr_2plane_444_formats" ) || ( extension ==
"VK_EXT_fragment_density_map2" ) ||
2746 ( extension ==
"VK_QCOM_rotated_copy_commands" ) || ( extension ==
"VK_EXT_image_robustness" ) ||
2747 ( extension ==
"VK_KHR_workgroup_memory_explicit_layout" ) || ( extension ==
"VK_KHR_copy_commands2" ) ||
2748 ( extension ==
"VK_EXT_image_compression_control" ) || ( extension ==
"VK_EXT_attachment_feedback_loop_layout" ) ||
2749 ( extension ==
"VK_EXT_4444_formats" ) || ( extension ==
"VK_EXT_device_fault" ) ||
2750 ( extension ==
"VK_ARM_rasterization_order_attachment_access" ) || ( extension ==
"VK_EXT_rgba10x6_formats" )
2751 #
if defined( VK_USE_PLATFORM_WIN32_KHR )
2752 || ( extension ==
"VK_NV_acquire_winrt_display" )
2754 || ( extension ==
"VK_VALVE_mutable_descriptor_type" ) || ( extension ==
"VK_EXT_vertex_input_dynamic_state" ) ||
2755 ( extension ==
"VK_EXT_physical_device_drm" ) || ( extension ==
"VK_EXT_device_address_binding_report" ) ||
2756 ( extension ==
"VK_EXT_depth_clip_control" ) || ( extension ==
"VK_EXT_primitive_topology_list_restart" ) ||
2757 ( extension ==
"VK_KHR_format_feature_flags2" )
2758 #if defined( VK_USE_PLATFORM_FUCHSIA )
2759 || ( extension ==
"VK_FUCHSIA_external_memory" ) || ( extension ==
"VK_FUCHSIA_external_semaphore" ) || ( extension ==
"VK_FUCHSIA_buffer_collection" )
2761 || ( extension ==
"VK_HUAWEI_subpass_shading" ) || ( extension ==
"VK_HUAWEI_invocation_mask" ) || ( extension ==
"VK_NV_external_memory_rdma" ) ||
2762 ( extension ==
"VK_EXT_pipeline_properties" ) || ( extension ==
"VK_EXT_frame_boundary" ) ||
2763 ( extension ==
"VK_EXT_multisampled_render_to_single_sampled" ) || ( extension ==
"VK_EXT_extended_dynamic_state2" ) ||
2764 ( extension ==
"VK_EXT_color_write_enable" ) || ( extension ==
"VK_EXT_primitives_generated_query" ) ||
2765 ( extension ==
"VK_KHR_ray_tracing_maintenance1" ) || ( extension ==
"VK_EXT_global_priority_query" ) ||
2766 ( extension ==
"VK_EXT_image_view_min_lod" ) || ( extension ==
"VK_EXT_multi_draw" ) || ( extension ==
"VK_EXT_image_2d_view_of_3d" ) ||
2767 ( extension ==
"VK_EXT_shader_tile_image" ) || ( extension ==
"VK_EXT_opacity_micromap" )
2768 #
if defined( VK_ENABLE_BETA_EXTENSIONS )
2769 || ( extension ==
"VK_NV_displacement_micromap" )
2771 || ( extension ==
"VK_EXT_load_store_op_none" ) || ( extension ==
"VK_HUAWEI_cluster_culling_shader" ) ||
2772 ( extension ==
"VK_EXT_border_color_swizzle" ) || ( extension ==
"VK_EXT_pageable_device_local_memory" ) || ( extension ==
"VK_KHR_maintenance4" ) ||
2773 ( extension ==
"VK_ARM_shader_core_properties" ) || ( extension ==
"VK_ARM_scheduling_controls" ) ||
2774 ( extension ==
"VK_EXT_image_sliced_view_of_3d" ) || ( extension ==
"VK_VALVE_descriptor_set_host_mapping" ) ||
2775 ( extension ==
"VK_EXT_depth_clamp_zero_one" ) || ( extension ==
"VK_EXT_non_seamless_cube_map" ) || ( extension ==
"VK_ARM_render_pass_striped" ) ||
2776 ( extension ==
"VK_QCOM_fragment_density_map_offset" ) || ( extension ==
"VK_NV_copy_memory_indirect" ) ||
2777 ( extension ==
"VK_NV_memory_decompression" ) || ( extension ==
"VK_NV_device_generated_commands_compute" ) ||
2778 ( extension ==
"VK_NV_linear_color_attachment" ) || ( extension ==
"VK_EXT_image_compression_control_swapchain" ) ||
2779 ( extension ==
"VK_QCOM_image_processing" ) || ( extension ==
"VK_EXT_nested_command_buffer" ) ||
2780 ( extension ==
"VK_EXT_external_memory_acquire_unmodified" ) || ( extension ==
"VK_EXT_extended_dynamic_state3" ) ||
2781 ( extension ==
"VK_EXT_subpass_merge_feedback" ) || ( extension ==
"VK_EXT_shader_module_identifier" ) ||
2782 ( extension ==
"VK_EXT_rasterization_order_attachment_access" ) || ( extension ==
"VK_NV_optical_flow" ) ||
2783 ( extension ==
"VK_EXT_legacy_dithering" ) || ( extension ==
"VK_EXT_pipeline_protected_access" )
2784 #
if defined( VK_USE_PLATFORM_ANDROID_KHR )
2785 || ( extension ==
"VK_ANDROID_external_format_resolve" )
2787 || ( extension ==
"VK_KHR_maintenance5" ) || ( extension ==
"VK_KHR_ray_tracing_position_fetch" ) || ( extension ==
"VK_EXT_shader_object" ) ||
2788 ( extension ==
"VK_QCOM_tile_properties" ) || ( extension ==
"VK_SEC_amigo_profiling" ) || ( extension ==
"VK_QCOM_multiview_per_view_viewports" ) ||
2789 ( extension ==
"VK_NV_ray_tracing_invocation_reorder" ) || ( extension ==
"VK_NV_extended_sparse_address_space" ) ||
2790 ( extension ==
"VK_EXT_mutable_descriptor_type" ) || ( extension ==
"VK_ARM_shader_core_builtins" ) ||
2791 ( extension ==
"VK_EXT_pipeline_library_group_handles" ) || ( extension ==
"VK_EXT_dynamic_rendering_unused_attachments" ) ||
2792 ( extension ==
"VK_NV_low_latency2" ) || ( extension ==
"VK_KHR_cooperative_matrix" ) ||
2793 ( extension ==
"VK_QCOM_multiview_per_view_render_areas" ) || ( extension ==
"VK_KHR_video_maintenance1" ) ||
2794 ( extension ==
"VK_NV_per_stage_descriptor_set" ) || ( extension ==
"VK_QCOM_image_processing2" ) ||
2795 ( extension ==
"VK_QCOM_filter_cubic_weights" ) || ( extension ==
"VK_QCOM_ycbcr_degamma" ) || ( extension ==
"VK_QCOM_filter_cubic_clamp" ) ||
2796 ( extension ==
"VK_EXT_attachment_feedback_loop_dynamic_state" ) || ( extension ==
"VK_KHR_vertex_attribute_divisor" )
2797 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
2798 || ( extension ==
"VK_QNX_external_memory_screen_buffer" )
2800 || ( extension ==
"VK_MSFT_layered_driver" ) || ( extension ==
"VK_KHR_calibrated_timestamps" ) || ( extension ==
"VK_KHR_maintenance6" ) ||
2801 ( extension ==
"VK_NV_descriptor_pool_overallocation" );
2806 return ( extension ==
"VK_KHR_surface" ) || ( extension ==
"VK_KHR_display" )
2807 #
if defined( VK_USE_PLATFORM_XLIB_KHR )
2808 || ( extension ==
"VK_KHR_xlib_surface" )
2810 #
if defined( VK_USE_PLATFORM_XCB_KHR )
2811 || ( extension ==
"VK_KHR_xcb_surface" )
2813 #
if defined( VK_USE_PLATFORM_WAYLAND_KHR )
2814 || ( extension ==
"VK_KHR_wayland_surface" )
2816 #
if defined( VK_USE_PLATFORM_ANDROID_KHR )
2817 || ( extension ==
"VK_KHR_android_surface" )
2819 #
if defined( VK_USE_PLATFORM_WIN32_KHR )
2820 || ( extension ==
"VK_KHR_win32_surface" )
2822 || ( extension ==
"VK_EXT_debug_report" )
2823 #if defined( VK_USE_PLATFORM_GGP )
2824 || ( extension ==
"VK_GGP_stream_descriptor_surface" )
2826 || ( extension ==
"VK_NV_external_memory_capabilities" ) || ( extension ==
"VK_KHR_get_physical_device_properties2" ) ||
2827 ( extension ==
"VK_EXT_validation_flags" )
2828 #if defined( VK_USE_PLATFORM_VI_NN )
2829 || ( extension ==
"VK_NN_vi_surface" )
2831 || ( extension ==
"VK_KHR_device_group_creation" ) || ( extension ==
"VK_KHR_external_memory_capabilities" ) ||
2832 ( extension ==
"VK_KHR_external_semaphore_capabilities" ) || ( extension ==
"VK_EXT_direct_mode_display" )
2833 #
if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
2834 || ( extension ==
"VK_EXT_acquire_xlib_display" )
2836 || ( extension ==
"VK_EXT_display_surface_counter" ) || ( extension ==
"VK_EXT_swapchain_colorspace" ) ||
2837 ( extension ==
"VK_KHR_external_fence_capabilities" ) || ( extension ==
"VK_KHR_get_surface_capabilities2" ) ||
2838 ( extension ==
"VK_KHR_get_display_properties2" )
2839 #if defined( VK_USE_PLATFORM_IOS_MVK )
2840 || ( extension ==
"VK_MVK_ios_surface" )
2842 #
if defined( VK_USE_PLATFORM_MACOS_MVK )
2843 || ( extension ==
"VK_MVK_macos_surface" )
2845 || ( extension ==
"VK_EXT_debug_utils" )
2846 #if defined( VK_USE_PLATFORM_FUCHSIA )
2847 || ( extension ==
"VK_FUCHSIA_imagepipe_surface" )
2849 #
if defined( VK_USE_PLATFORM_METAL_EXT )
2850 || ( extension ==
"VK_EXT_metal_surface" )
2852 || ( extension ==
"VK_KHR_surface_protected_capabilities" ) || ( extension ==
"VK_EXT_validation_features" ) ||
2853 ( extension ==
"VK_EXT_headless_surface" ) || ( extension ==
"VK_EXT_surface_maintenance1" ) || ( extension ==
"VK_EXT_acquire_drm_display" )
2854 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
2855 || ( extension ==
"VK_EXT_directfb_surface" )
2857 #
if defined( VK_USE_PLATFORM_SCREEN_QNX )
2858 || ( extension ==
"VK_QNX_screen_surface" )
2860 || ( extension ==
"VK_KHR_portability_enumeration" ) || ( extension ==
"VK_GOOGLE_surfaceless_query" ) ||
2861 ( extension ==
"VK_LUNARG_direct_driver_loading" ) || ( extension ==
"VK_EXT_layer_settings" );
2866 return ( extension ==
"VK_AMD_negative_viewport_height" );
2871 return ( extension ==
"VK_KHR_sampler_mirror_clamp_to_edge" ) || ( extension ==
"VK_EXT_debug_marker" ) || ( extension ==
"VK_AMD_draw_indirect_count" ) ||
2872 ( extension ==
"VK_KHR_dynamic_rendering" ) || ( extension ==
"VK_KHR_multiview" ) ||
2873 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2874 ( extension ==
"VK_NV_win32_keyed_mutex" ) ||
2876 ( extension ==
"VK_KHR_get_physical_device_properties2" ) || ( extension ==
"VK_KHR_device_group" ) ||
2877 ( extension ==
"VK_KHR_shader_draw_parameters" ) || ( extension ==
"VK_EXT_texture_compression_astc_hdr" ) ||
2878 ( extension ==
"VK_KHR_maintenance1" ) || ( extension ==
"VK_KHR_device_group_creation" ) ||
2879 ( extension ==
"VK_KHR_external_memory_capabilities" ) || ( extension ==
"VK_KHR_external_memory" ) ||
2880 ( extension ==
"VK_KHR_external_semaphore_capabilities" ) || ( extension ==
"VK_KHR_external_semaphore" ) ||
2881 ( extension ==
"VK_KHR_shader_float16_int8" ) || ( extension ==
"VK_KHR_16bit_storage" ) || ( extension ==
"VK_KHR_descriptor_update_template" ) ||
2882 ( extension ==
"VK_KHR_imageless_framebuffer" ) || ( extension ==
"VK_KHR_create_renderpass2" ) ||
2883 ( extension ==
"VK_KHR_external_fence_capabilities" ) || ( extension ==
"VK_KHR_external_fence" ) || ( extension ==
"VK_KHR_maintenance2" ) ||
2884 ( extension ==
"VK_KHR_variable_pointers" ) || ( extension ==
"VK_KHR_dedicated_allocation" ) || ( extension ==
"VK_EXT_sampler_filter_minmax" ) ||
2885 ( extension ==
"VK_KHR_storage_buffer_storage_class" ) || ( extension ==
"VK_EXT_inline_uniform_block" ) ||
2886 ( extension ==
"VK_KHR_relaxed_block_layout" ) || ( extension ==
"VK_KHR_get_memory_requirements2" ) ||
2887 ( extension ==
"VK_KHR_image_format_list" ) || ( extension ==
"VK_KHR_sampler_ycbcr_conversion" ) || ( extension ==
"VK_KHR_bind_memory2" ) ||
2888 ( extension ==
"VK_EXT_descriptor_indexing" ) || ( extension ==
"VK_EXT_shader_viewport_index_layer" ) || ( extension ==
"VK_KHR_maintenance3" ) ||
2889 ( extension ==
"VK_KHR_draw_indirect_count" ) || ( extension ==
"VK_EXT_global_priority" ) ||
2890 ( extension ==
"VK_KHR_shader_subgroup_extended_types" ) || ( extension ==
"VK_KHR_8bit_storage" ) ||
2891 ( extension ==
"VK_KHR_shader_atomic_int64" ) || ( extension ==
"VK_EXT_calibrated_timestamps" ) ||
2892 ( extension ==
"VK_EXT_vertex_attribute_divisor" ) || ( extension ==
"VK_EXT_pipeline_creation_feedback" ) ||
2893 ( extension ==
"VK_KHR_driver_properties" ) || ( extension ==
"VK_KHR_shader_float_controls" ) || ( extension ==
"VK_KHR_depth_stencil_resolve" ) ||
2894 ( extension ==
"VK_NV_fragment_shader_barycentric" ) || ( extension ==
"VK_KHR_timeline_semaphore" ) ||
2895 ( extension ==
"VK_KHR_vulkan_memory_model" ) || ( extension ==
"VK_KHR_shader_terminate_invocation" ) ||
2896 ( extension ==
"VK_EXT_scalar_block_layout" ) || ( extension ==
"VK_EXT_subgroup_size_control" ) || ( extension ==
"VK_KHR_spirv_1_4" ) ||
2897 ( extension ==
"VK_KHR_separate_depth_stencil_layouts" ) || ( extension ==
"VK_EXT_tooling_info" ) ||
2898 ( extension ==
"VK_EXT_separate_stencil_usage" ) || ( extension ==
"VK_KHR_uniform_buffer_standard_layout" ) ||
2899 ( extension ==
"VK_KHR_buffer_device_address" ) || ( extension ==
"VK_EXT_host_query_reset" ) || ( extension ==
"VK_EXT_extended_dynamic_state" ) ||
2900 ( extension ==
"VK_EXT_shader_demote_to_helper_invocation" ) || ( extension ==
"VK_KHR_shader_integer_dot_product" ) ||
2901 ( extension ==
"VK_EXT_texel_buffer_alignment" ) || ( extension ==
"VK_KHR_shader_non_semantic_info" ) || ( extension ==
"VK_EXT_private_data" ) ||
2902 ( extension ==
"VK_EXT_pipeline_creation_cache_control" ) || ( extension ==
"VK_KHR_synchronization2" ) ||
2903 ( extension ==
"VK_KHR_zero_initialize_workgroup_memory" ) || ( extension ==
"VK_EXT_ycbcr_2plane_444_formats" ) ||
2904 ( extension ==
"VK_EXT_image_robustness" ) || ( extension ==
"VK_KHR_copy_commands2" ) || ( extension ==
"VK_EXT_4444_formats" ) ||
2905 ( extension ==
"VK_ARM_rasterization_order_attachment_access" ) || ( extension ==
"VK_VALVE_mutable_descriptor_type" ) ||
2906 ( extension ==
"VK_KHR_format_feature_flags2" ) || ( extension ==
"VK_EXT_extended_dynamic_state2" ) ||
2907 ( extension ==
"VK_EXT_global_priority_query" ) || ( extension ==
"VK_KHR_maintenance4" );
VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension(std::string const &extension)
std::map< std::string, std::string > const & getDeprecatedExtensions()
VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension(std::string const &extension)
VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy(std::string const &extension)
VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension(std::string const &extension)
std::map< std::string, std::string > const & getObsoletedExtensions()
VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension(std::string const &extension)
VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo(std::string const &extension)
VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension(std::string const &extension)
std::set< std::string > const & getDeviceExtensions()
std::set< std::string > const & getInstanceExtensions()
std::map< std::string, std::string > const & getPromotedExtensions()
VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy(std::string const &extension)
std::pair< bool, std::vector< std::vector< std::string > > const & > getExtensionDepends(std::string const &version, std::string const &extension)
#define VULKAN_HPP_INLINE