vulkan: Update the XML and headers to 1.2.199
authorJoshua Ashton <joshua@froggi.es>
Tue, 16 Nov 2021 15:03:42 +0000 (15:03 +0000)
committerMarge Bot <emma+marge@anholt.net>
Thu, 18 Nov 2021 01:05:06 +0000 (01:05 +0000)
Signed-off-by: Joshua Ashton <joshua@froggi.es>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13820>

include/vulkan/vk_icd.h
include/vulkan/vulkan_core.h
src/vulkan/registry/vk.xml

index ae006d0..41989ee 100644 (file)
@@ -33,7 +33,7 @@
 //   Version 2 - Add Loader/ICD Interface version negotiation
 //               via vk_icdNegotiateLoaderICDInterfaceVersion.
 //   Version 3 - Add ICD creation/destruction of KHR_surface objects.
-//   Version 4 - Add unknown physical device extension qyering via
+//   Version 4 - Add unknown physical device extension querying via
 //               vk_icdGetPhysicalDeviceProcAddr.
 //   Version 5 - Tells ICDs that the loader is now paying attention to the
 //               application version of Vulkan passed into the ApplicationInfo
index a2f4e77..6f7b871 100644 (file)
@@ -72,7 +72,7 @@ extern "C" {
 #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
 
 // Version of this file
-#define VK_HEADER_VERSION 197
+#define VK_HEADER_VERSION 199
 
 // Complete version of this file
 #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION)
@@ -897,6 +897,8 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = 1000388000,
     VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = 1000388001,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT = 1000391000,
+    VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT = 1000391001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000,
@@ -5352,6 +5354,7 @@ typedef enum VkDriverId {
     VK_DRIVER_ID_MESA_TURNIP = 18,
     VK_DRIVER_ID_MESA_V3DV = 19,
     VK_DRIVER_ID_MESA_PANVK = 20,
+    VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
     VK_DRIVER_ID_AMD_PROPRIETARY_KHR = VK_DRIVER_ID_AMD_PROPRIETARY,
     VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = VK_DRIVER_ID_AMD_OPEN_SOURCE,
     VK_DRIVER_ID_MESA_RADV_KHR = VK_DRIVER_ID_MESA_RADV,
@@ -13002,6 +13005,23 @@ typedef struct VkQueueFamilyGlobalPriorityPropertiesEXT {
 
 
 
+#define VK_EXT_image_view_min_lod 1
+#define VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION 1
+#define VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME "VK_EXT_image_view_min_lod"
+typedef struct VkPhysicalDeviceImageViewMinLodFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           minLod;
+} VkPhysicalDeviceImageViewMinLodFeaturesEXT;
+
+typedef struct VkImageViewMinLodCreateInfoEXT {
+    VkStructureType    sType;
+    const void*        pNext;
+    float              minLod;
+} VkImageViewMinLodCreateInfoEXT;
+
+
+
 #define VK_EXT_multi_draw 1
 #define VK_EXT_MULTI_DRAW_SPEC_VERSION    1
 #define VK_EXT_MULTI_DRAW_EXTENSION_NAME  "VK_EXT_multi_draw"
index af8373a..c753e0a 100644 (file)
@@ -155,7 +155,7 @@ branch of the member gitlab server.
         <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.2 version number
 #define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, 0)// Patch version should always be set to 0</type>
         <type category="define">// Version of this file
-#define <name>VK_HEADER_VERSION</name> 197</type>
+#define <name>VK_HEADER_VERSION</name> 199</type>
         <type category="define" requires="VK_HEADER_VERSION">// Complete version of this file
 #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, VK_HEADER_VERSION)</type>
 
@@ -6008,7 +6008,6 @@ typedef void <name>CAMetalLayer</name>;
         </type>
         <type category="include" name="vk_video/vulkan_video_codec_h265std_encode.h">#include "vk_video/vulkan_video_codec_h265std_encode.h"</type>
         <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265PictureInfoFlags"/>
-        <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265SliceSegmentHeader"/>
         <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265PictureInfo"/>
         <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265SliceHeader"/>
         <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265ReferenceInfo"/>
@@ -6451,6 +6450,16 @@ typedef void <name>CAMetalLayer</name>;
             <member><type>VkBool32</type>                               <name>perViewAttributes</name></member>
             <member><type>VkBool32</type>                               <name>perViewAttributesPositionXOnly</name></member>
         </type>
+        <type category="struct" name="VkPhysicalDeviceImageViewMinLodFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
+            <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member>
+            <member optional="true" noautovalidity="true"><type>void</type>*     <name>pNext</name></member>
+            <member><type>VkBool32</type>                                        <name>minLod</name></member>
+        </type>
+        <type category="struct" name="VkImageViewMinLodCreateInfoEXT" structextends="VkImageViewCreateInfo">
+            <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
+            <member optional="true">const <type>void</type>* <name>pNext</name></member>
+            <member><type>float</type>                       <name>minLod</name></member>
+        </type>
     </types>
     <comment>Vulkan enumerant (token) definitions</comment>
 
@@ -7622,6 +7631,7 @@ typedef void <name>CAMetalLayer</name>;
         <enum value="18"      name="VK_DRIVER_ID_MESA_TURNIP"                   comment="Mesa open source project"/>
         <enum value="19"      name="VK_DRIVER_ID_MESA_V3DV"                     comment="Mesa open source project"/>
         <enum value="20"      name="VK_DRIVER_ID_MESA_PANVK"                    comment="Mesa open source project"/>
+        <enum value="21"      name="VK_DRIVER_ID_SAMSUNG_PROPRIETARY"           comment="Samsung Electronics Co., Ltd."/>
     </enums>
     <enums name="VkConditionalRenderingFlagBitsEXT" type="bitmask">
         <enum bitpos="0"    name="VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT"/>
@@ -16505,6 +16515,7 @@ typedef void <name>CAMetalLayer</name>;
                 <enum bitpos="5" extends="VkBufferCreateFlagBits"               name="VK_BUFFER_CREATE_RESERVED_5_BIT_AMD"/>
                 <enum bitpos="16" extends="VkImageCreateFlagBits"               name="VK_IMAGE_CREATE_RESERVED_16_BIT_AMD"/>
                 <enum bitpos="3" extends="VkSamplerCreateFlagBits"              name="VK_SAMPLER_CREATE_RESERVED_3_BIT_AMD"/>
+                <enum bitpos="41" extends="VkAccessFlagBits2KHR"                name="VK_ACCESS_2_RESERVED_41_BIT_AMD"/>
             </require>
         </extension>
         <extension name="VK_AMD_extension_318" number="318" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled">
@@ -17167,10 +17178,14 @@ typedef void <name>CAMetalLayer</name>;
                 <enum value="&quot;VK_EXT_extension_391&quot;"              name="VK_EXT_EXTENSION_391_EXTENSION_NAME"/>
             </require>
         </extension>
-        <extension name="VK_EXT_extension_392" number="392" author="EXT" contact="Joshua Ashton @Joshua-Ashton" supported="disabled">
+        <extension name="VK_EXT_image_view_min_lod" number="392" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Joshua Ashton @Joshua-Ashton" supported="vulkan">
             <require>
-                <enum value="0"                                             name="VK_EXT_EXTENSION_392_SPEC_VERSION"/>
-                <enum value="&quot;VK_EXT_extension_392&quot;"              name="VK_EXT_EXTENSION_392_EXTENSION_NAME"/>
+                <enum value="1"                                             name="VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION"/>
+                <enum value="&quot;VK_EXT_image_view_min_lod&quot;"         name="VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME"/>
+                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"/>
+                <enum offset="1" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"/>
+                <type                                                       name="VkPhysicalDeviceImageViewMinLodFeaturesEXT"/>
+                <type                                                       name="VkImageViewMinLodCreateInfoEXT"/>
             </require>
         </extension>
         <extension name="VK_EXT_multi_draw" number="393" author="EXT" contact="Mike Blumenkrantz @zmike" type="device" supported="vulkan">
@@ -17450,10 +17465,1390 @@ typedef void <name>CAMetalLayer</name>;
                 <enum value="&quot;VK_NV_extension_433&quot;"           name="VK_NV_EXTENSION_433_EXTENSION_NAME"/>
             </require>
         </extension>
+        <extension name="VK_EXT_extension_434" number="434" author="EXT" contact="Shahbaz Youssefi @syoussefi" supported="disabled">
+            <require>
+                <enum value="0"                                         name="VK_EXT_EXTENSION_434_SPEC_VERSION"/>
+                <enum value="&quot;VK_EXT_extension_434&quot;"          name="VK_EXT_EXTENSION_434_EXTENSION_NAME"/>
+            </require>
+        </extension>
+        <extension name="VK_KHR_extension_435" number="435" author="KHR" contact="Alan Baker @alan-baker" supported="disabled">
+            <require>
+                <enum value="0"                                         name="VK_KHR_EXTENSION_435_SPEC_VERSION"/>
+                <enum value="&quot;VK_KHR_extension_435&quot;"          name="VK_KHR_EXTENSION_435_EXTENSION_NAME"/>
+            </require>
+        </extension>
     </extensions>
+    <formats>
+        <format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">
+            <component name="R" bits="4" numericFormat="UNORM"/>
+            <component name="G" bits="4" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R4G4B4A4_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="R" bits="4" numericFormat="UNORM"/>
+            <component name="G" bits="4" numericFormat="UNORM"/>
+            <component name="B" bits="4" numericFormat="UNORM"/>
+            <component name="A" bits="4" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B4G4R4A4_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="B" bits="4" numericFormat="UNORM"/>
+            <component name="G" bits="4" numericFormat="UNORM"/>
+            <component name="R" bits="4" numericFormat="UNORM"/>
+            <component name="A" bits="4" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R5G6B5_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="R" bits="5" numericFormat="UNORM"/>
+            <component name="G" bits="6" numericFormat="UNORM"/>
+            <component name="B" bits="5" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B5G6R5_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="B" bits="5" numericFormat="UNORM"/>
+            <component name="G" bits="6" numericFormat="UNORM"/>
+            <component name="R" bits="5" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R5G5B5A1_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="R" bits="5" numericFormat="UNORM"/>
+            <component name="G" bits="5" numericFormat="UNORM"/>
+            <component name="B" bits="5" numericFormat="UNORM"/>
+            <component name="A" bits="1" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B5G5R5A1_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="B" bits="5" numericFormat="UNORM"/>
+            <component name="R" bits="5" numericFormat="UNORM"/>
+            <component name="G" bits="5" numericFormat="UNORM"/>
+            <component name="A" bits="1" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_A1R5G5B5_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="A" bits="1" numericFormat="UNORM"/>
+            <component name="R" bits="5" numericFormat="UNORM"/>
+            <component name="G" bits="5" numericFormat="UNORM"/>
+            <component name="B" bits="5" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R8_UNORM" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <spirvimageformat name="R8"/>
+        </format>
+        <format name="VK_FORMAT_R8_SNORM" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SNORM"/>
+            <spirvimageformat name="R8Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R8_USCALED" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8_SSCALED" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8_UINT" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UINT"/>
+            <spirvimageformat name="R8ui"/>
+        </format>
+        <format name="VK_FORMAT_R8_SINT" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SINT"/>
+            <spirvimageformat name="R8i"/>
+        </format>
+        <format name="VK_FORMAT_R8_SRGB" class="8-bit" blockSize="1" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_UNORM" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <spirvimageformat name="Rg8"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_SNORM" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <spirvimageformat name="Rg8Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_USCALED" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_SSCALED" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_UINT" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <spirvimageformat name="Rg8ui"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_SINT" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <spirvimageformat name="Rg8i"/>
+        </format>
+        <format name="VK_FORMAT_R8G8_SRGB" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_UNORM" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="B" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_SNORM" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <component name="B" bits="8" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_USCALED" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+            <component name="B" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_SSCALED" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+            <component name="B" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_UINT" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <component name="B" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_SINT" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <component name="B" bits="8" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8_SRGB" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+            <component name="B" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_UNORM" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="R" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_SNORM" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <component name="R" bits="8" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_USCALED" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+            <component name="R" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_SSCALED" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_UINT" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <component name="R" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_SINT" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <component name="R" bits="8" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8_SRGB" class="24-bit" blockSize="3" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+            <component name="R" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_UNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="A" bits="8" numericFormat="UNORM"/>
+            <spirvimageformat name="Rgba8"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_SNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <component name="B" bits="8" numericFormat="SNORM"/>
+            <component name="A" bits="8" numericFormat="SNORM"/>
+            <spirvimageformat name="Rgba8Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_USCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+            <component name="B" bits="8" numericFormat="USCALED"/>
+            <component name="A" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_SSCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+            <component name="B" bits="8" numericFormat="SSCALED"/>
+            <component name="A" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_UINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <component name="B" bits="8" numericFormat="UINT"/>
+            <component name="A" bits="8" numericFormat="UINT"/>
+            <spirvimageformat name="Rgba8ui"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_SINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <component name="B" bits="8" numericFormat="SINT"/>
+            <component name="A" bits="8" numericFormat="SINT"/>
+            <spirvimageformat name="Rgba8i"/>
+        </format>
+        <format name="VK_FORMAT_R8G8B8A8_SRGB" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+            <component name="B" bits="8" numericFormat="SRGB"/>
+            <component name="A" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_UNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <component name="A" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_SNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <component name="R" bits="8" numericFormat="SNORM"/>
+            <component name="A" bits="8" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_USCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+            <component name="R" bits="8" numericFormat="USCALED"/>
+            <component name="A" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_SSCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+            <component name="A" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_UINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <component name="R" bits="8" numericFormat="UINT"/>
+            <component name="A" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_SINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <component name="R" bits="8" numericFormat="SINT"/>
+            <component name="A" bits="8" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8A8_SRGB" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="B" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+            <component name="R" bits="8" numericFormat="SRGB"/>
+            <component name="A" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_UNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="UNORM"/>
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="R" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_SNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="SNORM"/>
+            <component name="B" bits="8" numericFormat="SNORM"/>
+            <component name="G" bits="8" numericFormat="SNORM"/>
+            <component name="R" bits="8" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_USCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="USCALED"/>
+            <component name="B" bits="8" numericFormat="USCALED"/>
+            <component name="G" bits="8" numericFormat="USCALED"/>
+            <component name="R" bits="8" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_SSCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="SSCALED"/>
+            <component name="B" bits="8" numericFormat="SSCALED"/>
+            <component name="G" bits="8" numericFormat="SSCALED"/>
+            <component name="R" bits="8" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_UINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="UINT"/>
+            <component name="B" bits="8" numericFormat="UINT"/>
+            <component name="G" bits="8" numericFormat="UINT"/>
+            <component name="R" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_SINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="SINT"/>
+            <component name="B" bits="8" numericFormat="SINT"/>
+            <component name="G" bits="8" numericFormat="SINT"/>
+            <component name="R" bits="8" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_A8B8G8R8_SRGB_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="8" numericFormat="SRGB"/>
+            <component name="B" bits="8" numericFormat="SRGB"/>
+            <component name="G" bits="8" numericFormat="SRGB"/>
+            <component name="R" bits="8" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_UNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="UNORM"/>
+            <component name="R" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="B" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_SNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SNORM"/>
+            <component name="R" bits="10" numericFormat="SNORM"/>
+            <component name="G" bits="10" numericFormat="SNORM"/>
+            <component name="B" bits="10" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_USCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="USCALED"/>
+            <component name="R" bits="10" numericFormat="USCALED"/>
+            <component name="G" bits="10" numericFormat="USCALED"/>
+            <component name="B" bits="10" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_SSCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SSCALED"/>
+            <component name="R" bits="10" numericFormat="SSCALED"/>
+            <component name="G" bits="10" numericFormat="SSCALED"/>
+            <component name="B" bits="10" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_UINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="UINT"/>
+            <component name="R" bits="10" numericFormat="UINT"/>
+            <component name="G" bits="10" numericFormat="UINT"/>
+            <component name="B" bits="10" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_A2R10G10B10_SINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SINT"/>
+            <component name="R" bits="10" numericFormat="SINT"/>
+            <component name="G" bits="10" numericFormat="SINT"/>
+            <component name="B" bits="10" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_UNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="UNORM"/>
+            <component name="B" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="R" bits="10" numericFormat="UNORM"/>
+            <spirvimageformat name="Rgb10A2"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_SNORM_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SNORM"/>
+            <component name="B" bits="10" numericFormat="SNORM"/>
+            <component name="G" bits="10" numericFormat="SNORM"/>
+            <component name="R" bits="10" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_USCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="USCALED"/>
+            <component name="B" bits="10" numericFormat="USCALED"/>
+            <component name="G" bits="10" numericFormat="USCALED"/>
+            <component name="R" bits="10" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_SSCALED_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SSCALED"/>
+            <component name="B" bits="10" numericFormat="SSCALED"/>
+            <component name="G" bits="10" numericFormat="SSCALED"/>
+            <component name="R" bits="10" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_UINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="UINT"/>
+            <component name="B" bits="10" numericFormat="UINT"/>
+            <component name="G" bits="10" numericFormat="UINT"/>
+            <component name="R" bits="10" numericFormat="UINT"/>
+            <spirvimageformat name="Rgb10a2ui"/>
+        </format>
+        <format name="VK_FORMAT_A2B10G10R10_SINT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="A" bits="2" numericFormat="SINT"/>
+            <component name="B" bits="10" numericFormat="SINT"/>
+            <component name="G" bits="10" numericFormat="SINT"/>
+            <component name="R" bits="10" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R16_UNORM" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UNORM"/>
+            <spirvimageformat name="R16"/>
+        </format>
+        <format name="VK_FORMAT_R16_SNORM" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SNORM"/>
+            <spirvimageformat name="R16Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R16_USCALED" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16_SSCALED" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16_UINT" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UINT"/>
+            <spirvimageformat name="R16ui"/>
+        </format>
+        <format name="VK_FORMAT_R16_SINT" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SINT"/>
+            <spirvimageformat name="R16i"/>
+        </format>
+        <format name="VK_FORMAT_R16_SFLOAT" class="16-bit" blockSize="2" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SFLOAT"/>
+            <spirvimageformat name="R16f"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_UNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <spirvimageformat name="Rg16"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_SNORM" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SNORM"/>
+            <component name="G" bits="16" numericFormat="SNORM"/>
+            <spirvimageformat name="Rg16Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_USCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="USCALED"/>
+            <component name="G" bits="16" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_SSCALED" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SSCALED"/>
+            <component name="G" bits="16" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_UINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UINT"/>
+            <component name="G" bits="16" numericFormat="UINT"/>
+            <spirvimageformat name="Rg16ui"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_SINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SINT"/>
+            <component name="G" bits="16" numericFormat="SINT"/>
+            <spirvimageformat name="Rg16i"/>
+        </format>
+        <format name="VK_FORMAT_R16G16_SFLOAT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SFLOAT"/>
+            <component name="G" bits="16" numericFormat="SFLOAT"/>
+            <spirvimageformat name="Rg16f"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_UNORM" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <component name="B" bits="16" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_SNORM" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SNORM"/>
+            <component name="G" bits="16" numericFormat="SNORM"/>
+            <component name="B" bits="16" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_USCALED" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="USCALED"/>
+            <component name="G" bits="16" numericFormat="USCALED"/>
+            <component name="B" bits="16" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_SSCALED" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SSCALED"/>
+            <component name="G" bits="16" numericFormat="SSCALED"/>
+            <component name="B" bits="16" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_UINT" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UINT"/>
+            <component name="G" bits="16" numericFormat="UINT"/>
+            <component name="B" bits="16" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_SINT" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SINT"/>
+            <component name="G" bits="16" numericFormat="SINT"/>
+            <component name="B" bits="16" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16_SFLOAT" class="48-bit" blockSize="6" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SFLOAT"/>
+            <component name="G" bits="16" numericFormat="SFLOAT"/>
+            <component name="B" bits="16" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_UNORM" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <component name="B" bits="16" numericFormat="UNORM"/>
+            <component name="A" bits="16" numericFormat="UNORM"/>
+            <spirvimageformat name="Rgba16"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_SNORM" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SNORM"/>
+            <component name="G" bits="16" numericFormat="SNORM"/>
+            <component name="B" bits="16" numericFormat="SNORM"/>
+            <component name="A" bits="16" numericFormat="SNORM"/>
+            <spirvimageformat name="Rgba16Snorm"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_USCALED" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="USCALED"/>
+            <component name="G" bits="16" numericFormat="USCALED"/>
+            <component name="B" bits="16" numericFormat="USCALED"/>
+            <component name="A" bits="16" numericFormat="USCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_SSCALED" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SSCALED"/>
+            <component name="G" bits="16" numericFormat="SSCALED"/>
+            <component name="B" bits="16" numericFormat="SSCALED"/>
+            <component name="A" bits="16" numericFormat="SSCALED"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_UINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="UINT"/>
+            <component name="G" bits="16" numericFormat="UINT"/>
+            <component name="B" bits="16" numericFormat="UINT"/>
+            <component name="A" bits="16" numericFormat="UINT"/>
+            <spirvimageformat name="Rgba16ui"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_SINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SINT"/>
+            <component name="G" bits="16" numericFormat="SINT"/>
+            <component name="B" bits="16" numericFormat="SINT"/>
+            <component name="A" bits="16" numericFormat="SINT"/>
+            <spirvimageformat name="Rgba16i"/>
+        </format>
+        <format name="VK_FORMAT_R16G16B16A16_SFLOAT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="16" numericFormat="SFLOAT"/>
+            <component name="G" bits="16" numericFormat="SFLOAT"/>
+            <component name="B" bits="16" numericFormat="SFLOAT"/>
+            <component name="A" bits="16" numericFormat="SFLOAT"/>
+            <spirvimageformat name="Rgba16f"/>
+        </format>
+        <format name="VK_FORMAT_R32_UINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="UINT"/>
+            <spirvimageformat name="R32ui"/>
+        </format>
+        <format name="VK_FORMAT_R32_SINT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SINT"/>
+            <spirvimageformat name="R32i"/>
+        </format>
+        <format name="VK_FORMAT_R32_SFLOAT" class="32-bit" blockSize="4" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SFLOAT"/>
+            <spirvimageformat name="R32f"/>
+        </format>
+        <format name="VK_FORMAT_R32G32_UINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="UINT"/>
+            <component name="G" bits="32" numericFormat="UINT"/>
+            <spirvimageformat name="Rg32ui"/>
+        </format>
+        <format name="VK_FORMAT_R32G32_SINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SINT"/>
+            <component name="G" bits="32" numericFormat="SINT"/>
+            <spirvimageformat name="Rg32i"/>
+        </format>
+        <format name="VK_FORMAT_R32G32_SFLOAT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SFLOAT"/>
+            <component name="G" bits="32" numericFormat="SFLOAT"/>
+            <spirvimageformat name="Rg32f"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32_UINT" class="96-bit" blockSize="12" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="UINT"/>
+            <component name="G" bits="32" numericFormat="UINT"/>
+            <component name="B" bits="32" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32_SINT" class="96-bit" blockSize="12" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SINT"/>
+            <component name="G" bits="32" numericFormat="SINT"/>
+            <component name="B" bits="32" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32_SFLOAT" class="96-bit" blockSize="12" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SFLOAT"/>
+            <component name="G" bits="32" numericFormat="SFLOAT"/>
+            <component name="B" bits="32" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32A32_UINT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="UINT"/>
+            <component name="G" bits="32" numericFormat="UINT"/>
+            <component name="B" bits="32" numericFormat="UINT"/>
+            <component name="A" bits="32" numericFormat="UINT"/>
+            <spirvimageformat name="Rgba32ui"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32A32_SINT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SINT"/>
+            <component name="G" bits="32" numericFormat="SINT"/>
+            <component name="B" bits="32" numericFormat="SINT"/>
+            <component name="A" bits="32" numericFormat="SINT"/>
+            <spirvimageformat name="Rgba32i"/>
+        </format>
+        <format name="VK_FORMAT_R32G32B32A32_SFLOAT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="32" numericFormat="SFLOAT"/>
+            <component name="G" bits="32" numericFormat="SFLOAT"/>
+            <component name="B" bits="32" numericFormat="SFLOAT"/>
+            <component name="A" bits="32" numericFormat="SFLOAT"/>
+            <spirvimageformat name="Rgba32f"/>
+        </format>
+        <format name="VK_FORMAT_R64_UINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="UINT"/>
+            <spirvimageformat name="R64ui"/>
+        </format>
+        <format name="VK_FORMAT_R64_SINT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SINT"/>
+            <spirvimageformat name="R64i"/>
+        </format>
+        <format name="VK_FORMAT_R64_SFLOAT" class="64-bit" blockSize="8" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64_UINT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="UINT"/>
+            <component name="B" bits="64" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64_SINT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SINT"/>
+            <component name="B" bits="64" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64_SFLOAT" class="128-bit" blockSize="16" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SFLOAT"/>
+            <component name="B" bits="64" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64_UINT" class="192-bit" blockSize="24" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="UINT"/>
+            <component name="G" bits="64" numericFormat="UINT"/>
+            <component name="B" bits="64" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64_SINT" class="192-bit" blockSize="24" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SINT"/>
+            <component name="G" bits="64" numericFormat="SINT"/>
+            <component name="B" bits="64" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64_SFLOAT" class="192-bit" blockSize="24" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SFLOAT"/>
+            <component name="G" bits="64" numericFormat="SFLOAT"/>
+            <component name="B" bits="64" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64A64_UINT" class="256-bit" blockSize="32" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="UINT"/>
+            <component name="G" bits="64" numericFormat="UINT"/>
+            <component name="B" bits="64" numericFormat="UINT"/>
+            <component name="A" bits="64" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64A64_SINT" class="256-bit" blockSize="32" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SINT"/>
+            <component name="G" bits="64" numericFormat="SINT"/>
+            <component name="B" bits="64" numericFormat="SINT"/>
+            <component name="A" bits="64" numericFormat="SINT"/>
+        </format>
+        <format name="VK_FORMAT_R64G64B64A64_SFLOAT" class="256-bit" blockSize="32" texelsPerBlock="1">
+            <component name="R" bits="64" numericFormat="SFLOAT"/>
+            <component name="G" bits="64" numericFormat="SFLOAT"/>
+            <component name="B" bits="64" numericFormat="SFLOAT"/>
+            <component name="A" bits="64" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_B10G11R11_UFLOAT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="B" bits="10" numericFormat="UFLOAT"/>
+            <component name="G" bits="11" numericFormat="UFLOAT"/>
+            <component name="R" bits="10" numericFormat="UFLOAT"/>
+            <spirvimageformat name="R11fG11fB10f"/>
+        </format>
+        <format name="VK_FORMAT_E5B9G9R9_UFLOAT_PACK32" class="32-bit" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="B" bits="9" numericFormat="UFLOAT"/>
+            <component name="G" bits="9" numericFormat="UFLOAT"/>
+            <component name="R" bits="9" numericFormat="UFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_D16_UNORM" class="D16" blockSize="2" texelsPerBlock="1">
+            <component name="D" bits="16" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_X8_D24_UNORM_PACK32" class="D24" blockSize="4" texelsPerBlock="1" packed="32">
+            <component name="D" bits="24" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_D32_SFLOAT" class="D32" blockSize="4" texelsPerBlock="1">
+            <component name="D" bits="32" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_S8_UINT" class="S8" blockSize="1" texelsPerBlock="1">
+            <component name="S" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_D16_UNORM_S8_UINT" class="D16S8" blockSize="3" texelsPerBlock="1">
+            <component name="D" bits="16" numericFormat="UNORM"/>
+            <component name="S" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_D24_UNORM_S8_UINT" class="D24S8" blockSize="4" texelsPerBlock="1">
+            <component name="D" bits="24" numericFormat="UNORM"/>
+            <component name="S" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_D32_SFLOAT_S8_UINT" class="D32S8" blockSize="5" texelsPerBlock="1">
+            <component name="D" bits="32" numericFormat="SFLOAT"/>
+            <component name="S" bits="8" numericFormat="UINT"/>
+        </format>
+        <format name="VK_FORMAT_BC1_RGB_UNORM_BLOCK" class="BC1_RGB" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC1_RGB_SRGB_BLOCK" class="BC1_RGB" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC1_RGBA_UNORM_BLOCK" class="BC1_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC1_RGBA_SRGB_BLOCK" class="BC1_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC2_UNORM_BLOCK" class="BC2" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC2_SRGB_BLOCK" class="BC2" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC3_UNORM_BLOCK" class="BC3" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC3_SRGB_BLOCK" class="BC3" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC4_UNORM_BLOCK" class="BC4" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC4_SNORM_BLOCK" class="BC4" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC5_UNORM_BLOCK" class="BC5" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC5_SNORM_BLOCK" class="BC5" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_BC6H_UFLOAT_BLOCK" class="BC6H" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="UFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="UFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_BC6H_SFLOAT_BLOCK" class="BC6H" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_BC7_UNORM_BLOCK" class="BC7" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_BC7_SRGB_BLOCK" class="BC7" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="BC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK" class="ETC2_RGB" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK" class="ETC2_RGB" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK" class="ETC2_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK" class="ETC2_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK" class="ETC2_EAC_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK" class="ETC2_EAC_RGBA" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="ETC2">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_EAC_R11_UNORM_BLOCK" class="EAC_R" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="EAC">
+            <component name="R" bits="11" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_EAC_R11_SNORM_BLOCK" class="EAC_R" blockSize="8" texelsPerBlock="16" blockExtent="4,4,1" compressed="EAC">
+            <component name="R" bits="11" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_EAC_R11G11_UNORM_BLOCK" class="EAC_RG" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="EAC">
+            <component name="R" bits="11" numericFormat="UNORM"/>
+            <component name="G" bits="11" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_EAC_R11G11_SNORM_BLOCK" class="EAC_RG" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="EAC">
+            <component name="R" bits="11" numericFormat="SNORM"/>
+            <component name="G" bits="11" numericFormat="SNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_4x4_UNORM_BLOCK" class="ASTC_4x4" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_4x4_SRGB_BLOCK" class="ASTC_4x4" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x4_UNORM_BLOCK" class="ASTC_5x4" blockSize="16" texelsPerBlock="20" blockExtent="5,4,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x4_SRGB_BLOCK" class="ASTC_5x4" blockSize="16" texelsPerBlock="20" blockExtent="5,4,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x5_UNORM_BLOCK" class="ASTC_5x5" blockSize="16" texelsPerBlock="25" blockExtent="5,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x5_SRGB_BLOCK" class="ASTC_5x5" blockSize="16" texelsPerBlock="25" blockExtent="5,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x5_UNORM_BLOCK" class="ASTC_6x5" blockSize="16" texelsPerBlock="30" blockExtent="6,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x5_SRGB_BLOCK" class="ASTC_6x5" blockSize="16" texelsPerBlock="30" blockExtent="6,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x6_UNORM_BLOCK" class="ASTC_6x6" blockSize="16" texelsPerBlock="36" blockExtent="6,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x6_SRGB_BLOCK" class="ASTC_6x6" blockSize="16" texelsPerBlock="36" blockExtent="6,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x5_UNORM_BLOCK" class="ASTC_8x5" blockSize="16" texelsPerBlock="40" blockExtent="8,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x5_SRGB_BLOCK" class="ASTC_8x5" blockSize="16" texelsPerBlock="40" blockExtent="8,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x6_UNORM_BLOCK" class="ASTC_8x6" blockSize="16" texelsPerBlock="48" blockExtent="8,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x6_SRGB_BLOCK" class="ASTC_8x6" blockSize="16" texelsPerBlock="48" blockExtent="8,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x8_UNORM_BLOCK" class="ASTC_8x8" blockSize="16" texelsPerBlock="64" blockExtent="8,8,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x8_SRGB_BLOCK" class="ASTC_8x8" blockSize="16" texelsPerBlock="64" blockExtent="8,8,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x5_UNORM_BLOCK" class="ASTC_10x5" blockSize="16" texelsPerBlock="50" blockExtent="10,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x5_SRGB_BLOCK" class="ASTC_10x5" blockSize="16" texelsPerBlock="50" blockExtent="10,5,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x6_UNORM_BLOCK" class="ASTC_10x6" blockSize="16" texelsPerBlock="60" blockExtent="10,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x6_SRGB_BLOCK" class="ASTC_10x6" blockSize="16" texelsPerBlock="60" blockExtent="10,6,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x8_UNORM_BLOCK" class="ASTC_10x8" blockSize="16" texelsPerBlock="80" blockExtent="10,8,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x8_SRGB_BLOCK" class="ASTC_10x8" blockSize="16" texelsPerBlock="80" blockExtent="10,8,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x10_UNORM_BLOCK" class="ASTC_10x10" blockSize="16" texelsPerBlock="100" blockExtent="10,10,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x10_SRGB_BLOCK" class="ASTC_10x10" blockSize="16" texelsPerBlock="100" blockExtent="10,10,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x10_UNORM_BLOCK" class="ASTC_12x10" blockSize="16" texelsPerBlock="120" blockExtent="12,10,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x10_SRGB_BLOCK" class="ASTC_12x10" blockSize="16" texelsPerBlock="120" blockExtent="12,10,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x12_UNORM_BLOCK" class="ASTC_12x12" blockSize="16" texelsPerBlock="144" blockExtent="12,12,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x12_SRGB_BLOCK" class="ASTC_12x12" blockSize="16" texelsPerBlock="144" blockExtent="12,12,1" compressed="ASTC LDR">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_G8B8G8R8_422_UNORM" class="32-bit G8B8G8R8" blockSize="4" texelsPerBlock="1" blockExtent="2,1,1" chroma="422">
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="R" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B8G8R8G8_422_UNORM" class="32-bit B8G8R8G8" blockSize="4" texelsPerBlock="1" blockExtent="2,1,1" chroma="422">
+            <component name="B" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+            <component name="R" bits="8" numericFormat="UNORM"/>
+            <component name="G" bits="8" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM" class="8-bit 3-plane 420" blockSize="3" texelsPerBlock="1" chroma="420">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="2" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8R8_2PLANE_420_UNORM" class="8-bit 2-plane 420" blockSize="3" texelsPerBlock="1" chroma="420">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R8G8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM" class="8-bit 3-plane 422" blockSize="3" texelsPerBlock="1" chroma="422">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="2" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8R8_2PLANE_422_UNORM" class="8-bit 2-plane 422" blockSize="3" texelsPerBlock="1" chroma="422">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R8G8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM" class="8-bit 3-plane 444" blockSize="3" texelsPerBlock="1" chroma="444">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="2" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R10X6_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="R" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R10X6G10X6_UNORM_2PACK16" class="32-bit" blockSize="4" texelsPerBlock="1" packed="16">
+            <component name="R" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16" class="64-bit R10G10B10A10" blockSize="8" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="R" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="B" bits="10" numericFormat="UNORM"/>
+            <component name="A" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16" class="64-bit G10B10G10R10" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" packed="16" chroma="422">
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="B" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="R" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16" class="64-bit B10G10R10G10" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" packed="16" chroma="422">
+            <component name="B" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+            <component name="R" bits="10" numericFormat="UNORM"/>
+            <component name="G" bits="10" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16" class="10-bit 3-plane 420" blockSize="6" texelsPerBlock="1" packed="16" chroma="420">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16" class="10-bit 2-plane 420" blockSize="6" texelsPerBlock="1" packed="16" chroma="420">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R10X6G10X6_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16" class="10-bit 3-plane 422" blockSize="6" texelsPerBlock="1" packed="16" chroma="422">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16" class="10-bit 2-plane 422" blockSize="6" texelsPerBlock="1" packed="16" chroma="422">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R10X6G10X6_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16" class="10-bit 3-plane 444" blockSize="6" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_R12X4_UNORM_PACK16" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="R" bits="12" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R12X4G12X4_UNORM_2PACK16" class="32-bit" blockSize="4" texelsPerBlock="1" packed="16">
+            <component name="R" bits="12" numericFormat="UNORM"/>
+            <component name="G" bits="12" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16" class="64-bit R12G12B12A12" blockSize="8" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="R" bits="12" numericFormat="UNORM"/>
+            <component name="G" bits="12" numericFormat="UNORM"/>
+            <component name="B" bits="12" numericFormat="UNORM"/>
+            <component name="A" bits="12" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16" class="64-bit G12B12G12R12" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" packed="16" chroma="422">
+            <component name="G" bits="12" numericFormat="UNORM"/>
+            <component name="B" bits="12" numericFormat="UNORM"/>
+            <component name="G" bits="12" numericFormat="UNORM"/>
+            <component name="R" bits="12" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16" class="64-bit B12G12R12G12" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" packed="16" chroma="422">
+            <component name="B" bits="12" numericFormat="UNORM"/>
+            <component name="G" bits="12" numericFormat="UNORM"/>
+            <component name="R" bits="12" numericFormat="UNORM"/>
+            <component name="G" bits="12" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16" class="12-bit 3-plane 420" blockSize="6" texelsPerBlock="1" packed="16" chroma="420">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16" class="12-bit 2-plane 420" blockSize="6" texelsPerBlock="1" packed="16" chroma="420">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R12X4G12X4_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16" class="12-bit 3-plane 422" blockSize="6" texelsPerBlock="1" packed="16" chroma="422">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16" class="12-bit 2-plane 422" blockSize="6" texelsPerBlock="1" packed="16" chroma="422">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R12X4G12X4_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16" class="12-bit 3-plane 444" blockSize="6" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="2" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G16B16G16R16_422_UNORM" class="64-bit G16B16G16R16" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" chroma="422">
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <component name="B" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <component name="R" bits="16" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_B16G16R16G16_422_UNORM" class="64-bit B16G16R16G16" blockSize="8" texelsPerBlock="1" blockExtent="2,1,1" chroma="422">
+            <component name="B" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+            <component name="R" bits="16" numericFormat="UNORM"/>
+            <component name="G" bits="16" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM" class="16-bit 3-plane 420" blockSize="6" texelsPerBlock="1" chroma="420">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="2" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16R16_2PLANE_420_UNORM" class="16-bit 2-plane 420" blockSize="6" texelsPerBlock="1" chroma="420">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="2" compatible="VK_FORMAT_R16G16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM" class="16-bit 3-plane 422" blockSize="6" texelsPerBlock="1" chroma="422">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="2" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16R16_2PLANE_422_UNORM" class="16-bit 2-plane 422" blockSize="6" texelsPerBlock="1" chroma="422">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R16G16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM" class="16-bit 3-plane 444" blockSize="6" texelsPerBlock="1" chroma="444">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="2"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="2" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG" class="PVRTC1_2BPP" blockSize="8" texelsPerBlock="1" blockExtent="8,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG" class="PVRTC1_4BPP" blockSize="8" texelsPerBlock="1" blockExtent="4,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG" class="PVRTC2_2BPP" blockSize="8" texelsPerBlock="1" blockExtent="8,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG" class="PVRTC2_4BPP" blockSize="8" texelsPerBlock="1" blockExtent="4,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="UNORM"/>
+            <component name="G" bits="compressed" numericFormat="UNORM"/>
+            <component name="B" bits="compressed" numericFormat="UNORM"/>
+            <component name="A" bits="compressed" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG" class="PVRTC1_2BPP" blockSize="8" texelsPerBlock="1" blockExtent="8,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG" class="PVRTC1_4BPP" blockSize="8" texelsPerBlock="1" blockExtent="4,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG" class="PVRTC2_2BPP" blockSize="8" texelsPerBlock="1" blockExtent="8,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG" class="PVRTC2_4BPP" blockSize="8" texelsPerBlock="1" blockExtent="4,4,1" compressed="PVRTC">
+            <component name="R" bits="compressed" numericFormat="SRGB"/>
+            <component name="G" bits="compressed" numericFormat="SRGB"/>
+            <component name="B" bits="compressed" numericFormat="SRGB"/>
+            <component name="A" bits="compressed" numericFormat="SRGB"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT" class="ASTC_4x4" blockSize="16" texelsPerBlock="16" blockExtent="4,4,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT" class="ASTC_5x4" blockSize="16" texelsPerBlock="20" blockExtent="5,4,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT" class="ASTC_5x5" blockSize="16" texelsPerBlock="25" blockExtent="5,5,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT" class="ASTC_6x5" blockSize="16" texelsPerBlock="30" blockExtent="6,5,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT" class="ASTC_6x6" blockSize="16" texelsPerBlock="36" blockExtent="6,6,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT" class="ASTC_8x5" blockSize="16" texelsPerBlock="40" blockExtent="8,5,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT" class="ASTC_8x6" blockSize="16" texelsPerBlock="48" blockExtent="8,6,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT" class="ASTC_8x8" blockSize="16" texelsPerBlock="64" blockExtent="8,8,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT" class="ASTC_10x5" blockSize="16" texelsPerBlock="50" blockExtent="10,5,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT" class="ASTC_10x6" blockSize="16" texelsPerBlock="60" blockExtent="10,6,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT" class="ASTC_10x8" blockSize="16" texelsPerBlock="80" blockExtent="10,8,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT" class="ASTC_10x10" blockSize="16" texelsPerBlock="100" blockExtent="10,10,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT" class="ASTC_12x10" blockSize="16" texelsPerBlock="120" blockExtent="12,10,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT" class="ASTC_12x12" blockSize="16" texelsPerBlock="144" blockExtent="12,12,1" compressed="ASTC HDR">
+            <component name="R" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="G" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="B" bits="compressed" numericFormat="SFLOAT"/>
+            <component name="A" bits="compressed" numericFormat="SFLOAT"/>
+        </format>
+        <format name="VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT" class="8-bit 2-plane 444" blockSize="3" texelsPerBlock="1" chroma="444">
+            <component name="G" bits="8" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="8" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8_UNORM"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R8G8_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT" class="10-bit 2-plane 444" blockSize="6" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="10" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6G10X6_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT" class="12-bit 2-plane 444" blockSize="6" texelsPerBlock="1" packed="16" chroma="444">
+            <component name="G" bits="12" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="12" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4_UNORM_PACK16"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R12X4G12X4_UNORM_2PACK16"/>
+        </format>
+        <format name="VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT" class="16-bit 2-plane 444" blockSize="6" texelsPerBlock="1" chroma="444">
+            <component name="G" bits="16" numericFormat="UNORM" planeIndex="0"/>
+            <component name="B" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <component name="R" bits="16" numericFormat="UNORM" planeIndex="1"/>
+            <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16_UNORM"/>
+            <plane index="1" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R16G16_UNORM"/>
+        </format>
+        <format name="VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="A" bits="4" numericFormat="UNORM"/>
+            <component name="R" bits="4" numericFormat="UNORM"/>
+            <component name="G" bits="4" numericFormat="UNORM"/>
+            <component name="B" bits="4" numericFormat="UNORM"/>
+        </format>
+        <format name="VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT" class="16-bit" blockSize="2" texelsPerBlock="1" packed="16">
+            <component name="A" bits="4" numericFormat="UNORM"/>
+            <component name="B" bits="4" numericFormat="UNORM"/>
+            <component name="G" bits="4" numericFormat="UNORM"/>
+            <component name="R" bits="4" numericFormat="UNORM"/>
+        </format>
+    </formats>
     <spirvextensions comment="SPIR-V Extensions allowed in Vulkan and what is required to use it">
         <spirvextension name="SPV_KHR_variable_pointers">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_variable_pointers"/>
         </spirvextension>
         <spirvextension name="SPV_AMD_shader_explicit_vertex_parameter">
@@ -17484,26 +18879,26 @@ typedef void <name>CAMetalLayer</name>;
             <enable extension="VK_AMD_texture_gather_bias_lod"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_shader_draw_parameters">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_shader_draw_parameters"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_8bit_storage">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_KHR_8bit_storage"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_16bit_storage">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_16bit_storage"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_shader_clock">
             <enable extension="VK_KHR_shader_clock"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_float_controls">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_KHR_shader_float_controls"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_storage_buffer_storage_class">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_storage_buffer_storage_class"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_post_depth_coverage">
@@ -17534,18 +18929,18 @@ typedef void <name>CAMetalLayer</name>;
             <enable extension="VK_NV_shader_subgroup_partitioned"/>
         </spirvextension>
         <spirvextension name="SPV_EXT_shader_viewport_index_layer">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_EXT_shader_viewport_index_layer"/>
         </spirvextension>
         <spirvextension name="SPV_NVX_multiview_per_view_attributes">
             <enable extension="VK_NVX_multiview_per_view_attributes"/>
         </spirvextension>
         <spirvextension name="SPV_EXT_descriptor_indexing">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_EXT_descriptor_indexing"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_vulkan_memory_model">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_KHR_vulkan_memory_model"/>
         </spirvextension>
         <spirvextension name="SPV_NV_compute_shader_derivatives">
@@ -17582,7 +18977,7 @@ typedef void <name>CAMetalLayer</name>;
             <enable extension="VK_EXT_fragment_density_map"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_physical_storage_buffer">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_KHR_buffer_device_address"/>
         </spirvextension>
         <spirvextension name="SPV_EXT_physical_storage_buffer">
@@ -17613,7 +19008,7 @@ typedef void <name>CAMetalLayer</name>;
             <enable extension="VK_KHR_shader_terminate_invocation"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_multiview">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_multiview"/>
         </spirvextension>
         <spirvextension name="SPV_KHR_workgroup_memory_explicit_layout">
@@ -17637,31 +19032,31 @@ typedef void <name>CAMetalLayer</name>;
     </spirvextensions>
     <spirvcapabilities comment="SPIR-V Capabilities allowed in Vulkan and what is required to use it">
         <spirvcapability name="Matrix">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="Shader">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="InputAttachment">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="Sampled1D">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="Image1D">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="SampledBuffer">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="ImageBuffer">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="ImageQuery">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="DerivativeControl">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="Geometry">
             <enable struct="VkPhysicalDeviceFeatures" feature="geometryShader" requires="VK_VERSION_1_0"/>
@@ -17761,7 +19156,7 @@ typedef void <name>CAMetalLayer</name>;
             <enable struct="VkPhysicalDeviceFeatures" feature="shaderStorageImageMultisample" requires="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="StorageImageExtendedFormats">
-            <enable version="VK_API_VERSION_1_0"/>
+            <enable version="VK_VERSION_1_0"/>
         </spirvcapability>
         <spirvcapability name="InterpolationFunction">
             <enable struct="VkPhysicalDeviceFeatures" feature="sampleRateShading" requires="VK_VERSION_1_0"/>
@@ -17787,7 +19182,7 @@ typedef void <name>CAMetalLayer</name>;
             <enable struct="VkPhysicalDeviceMultiviewFeatures" feature="multiview" requires="VK_KHR_multiview"/>
         </spirvcapability>
         <spirvcapability name="DeviceGroup">
-            <enable version="VK_API_VERSION_1_1"/>
+            <enable version="VK_VERSION_1_1"/>
             <enable extension="VK_KHR_device_group"/>
         </spirvcapability>
         <spirvcapability name="VariablePointersStorageBuffer">
@@ -17890,7 +19285,7 @@ typedef void <name>CAMetalLayer</name>;
             <enable extension="VK_EXT_post_depth_coverage"/>
         </spirvcapability>
         <spirvcapability name="ShaderNonUniform">
-            <enable version="VK_API_VERSION_1_2"/>
+            <enable version="VK_VERSION_1_2"/>
             <enable extension="VK_EXT_descriptor_indexing"/>
         </spirvcapability>
         <spirvcapability name="RuntimeDescriptorArray">