Update for Vulkan-Docs 1.4.314

This commit is contained in:
Jon Leech 2025-05-05 03:15:03 -07:00 committed by Jon Leech
parent e2e53a7246
commit 9c77de5c3d
16 changed files with 584 additions and 251 deletions

View file

@ -210,6 +210,10 @@ class BaseInfo:
self.elem = elem
"etree Element for this feature"
self.deprecatedbyversion = None
self.deprecatedbyextensions = []
self.deprecatedlink = None
def resetState(self):
"""Reset required/declared to initial values. Used
@ -349,6 +353,8 @@ class FeatureInfo(BaseInfo):
self.number = 0
self.supported = None
self.deprecates = elem.findall('deprecate')
else:
# Extract vendor portion of <APIprefix>_<vendor>_<name>
self.category = self.name.split('_', 2)[1]
@ -1250,6 +1256,51 @@ class Registry:
if matchAPIProfile(api, profile, feature):
self.markRequired(featurename, feature, True)
def deprecateFeatures(self, interface, featurename, api, profile):
"""Process `<require>` tags for a `<version>` or `<extension>`.
- interface - Element for `<version>` or `<extension>`, containing
`<require>` tags
- featurename - name of the feature
- api - string specifying API name being generated
- profile - string specifying API profile being generated"""
versionmatch = APIConventions().is_api_version_name(featurename)
# <deprecate> marks things that are deprecated by this version/profile
for deprecation in interface.findall('deprecate'):
if matchAPIProfile(api, profile, deprecation):
for typeElem in deprecation.findall('type'):
type = self.lookupElementInfo(typeElem.get('name'), self.typedict)
if type:
if versionmatch is not None:
type.deprecatedbyversion = featurename
else:
type.deprecatedbyextensions += featurename
type.deprecatedlink = deprecation.get('explanationlink')
else:
self.gen.logMsg('error', typeElem.get('name'), ' is tagged for deprecation but not present in registry')
for enumElem in deprecation.findall('enum'):
enum = self.lookupElementInfo(enumElem.get('name'), self.enumdict)
if enum:
if versionmatch is not None:
enum.deprecatedbyversion = featurename
else:
enum.deprecatedbyextensions += featurename
enum.deprecatedlink = deprecation.get('explanationlink')
else:
self.gen.logMsg('error', enumElem.get('name'), ' is tagged for deprecation but not present in registry')
for cmdElem in deprecation.findall('command'):
cmd = self.lookupElementInfo(cmdElem.get('name'), self.cmddict)
if cmd:
if versionmatch is not None:
cmd.deprecatedbyversion = featurename
else:
cmd.deprecatedbyextensions += featurename
cmd.deprecatedlink = deprecation.get('explanationlink')
else:
self.gen.logMsg('error', cmdElem.get('name'), ' is tagged for deprecation but not present in registry')
def removeFeatures(self, interface, featurename, api, profile):
"""Process `<remove>` tags for a `<version>` or `<extension>`.
@ -1750,6 +1801,7 @@ class Registry:
self.gen.logMsg('diag', 'PASS 1: Tagging required and features for', f.name)
self.fillFeatureDictionary(f.elem, f.name, self.genOpts.apiname, self.genOpts.profile)
self.requireFeatures(f.elem, f.name, self.genOpts.apiname, self.genOpts.profile)
self.deprecateFeatures(f.elem, f.name, self.genOpts.apiname, self.genOpts.profile)
self.assignAdditionalValidity(f.elem, self.genOpts.apiname, self.genOpts.profile)
for f in features:

File diff suppressed because one or more lines are too long

View file

@ -179,7 +179,7 @@ branch of the member gitlab server.
#define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type>
<type api="vulkan" category="define">// Version of this file
#define <name>VK_HEADER_VERSION</name> 313</type>
#define <name>VK_HEADER_VERSION</name> 314</type>
<type api="vulkan" 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, 4, VK_HEADER_VERSION)</type>
<type api="vulkansc" category="define">// Version of this file
@ -6481,19 +6481,21 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>VkBool32</type> <name>shaderSubgroupUniformControlFlow</name></member>
</type>
<type category="struct" name="VkPhysicalDeviceRobustness2FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member>
<type category="struct" name="VkPhysicalDeviceRobustness2FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>VkBool32</type> <name>robustBufferAccess2</name></member>
<member><type>VkBool32</type> <name>robustImageAccess2</name></member>
<member><type>VkBool32</type> <name>nullDescriptor</name></member>
</type>
<type category="struct" name="VkPhysicalDeviceRobustness2PropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member>
<type category="struct" name="VkPhysicalDeviceRobustness2FeaturesEXT" alias="VkPhysicalDeviceRobustness2FeaturesKHR"/>
<type category="struct" name="VkPhysicalDeviceRobustness2PropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member>
<member limittype="min,pot"><type>VkDeviceSize</type> <name>robustStorageBufferAccessSizeAlignment</name></member>
<member limittype="min,pot"><type>VkDeviceSize</type> <name>robustUniformBufferAccessSizeAlignment</name></member>
</type>
<type category="struct" name="VkPhysicalDeviceRobustness2PropertiesEXT" alias="VkPhysicalDeviceRobustness2PropertiesKHR"/>
<type category="struct" name="VkPhysicalDeviceImageRobustnessFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member>
@ -14725,16 +14727,16 @@ typedef void* <name>MTLSharedEvent_id</name>;
</command>
<command>
<proto><type>void</type> <name>vkQueueBeginDebugUtilsLabelEXT</name></proto>
<param><type>VkQueue</type> <name>queue</name></param>
<param externsync="true"><type>VkQueue</type> <name>queue</name></param>
<param>const <type>VkDebugUtilsLabelEXT</type>* <name>pLabelInfo</name></param>
</command>
<command>
<proto><type>void</type> <name>vkQueueEndDebugUtilsLabelEXT</name></proto>
<param><type>VkQueue</type> <name>queue</name></param>
<param externsync="true"><type>VkQueue</type> <name>queue</name></param>
</command>
<command>
<proto><type>void</type> <name>vkQueueInsertDebugUtilsLabelEXT</name></proto>
<param><type>VkQueue</type> <name>queue</name></param>
<param externsync="true"><type>VkQueue</type> <name>queue</name></param>
<param>const <type>VkDebugUtilsLabelEXT</type>* <name>pLabelInfo</name></param>
</command>
<command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary" tasks="action,state">
@ -17951,6 +17953,26 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command name="vkGetBufferOpaqueCaptureAddress"/>
<command name="vkGetDeviceMemoryOpaqueCaptureAddress"/>
</require>
<deprecate explanationlink="deprecation-renderpass2">
<command name="vkCreateRenderPass"/>
<type name="VkRenderPassCreateInfo"/>
<type name="VkRenderPassCreateFlags"/>
<type name="VkRenderPassCreateFlagBits"/>
<type name="VkAttachmentDescription"/>
<type name="VkAttachmentDescriptionFlags"/>
<type name="VkAttachmentDescriptionFlagBits"/>
<type name="VkSubpassDescription"/>
<type name="VkSubpassDescriptionFlags"/>
<type name="VkSubpassDescriptionFlagBits"/>
<type name="VkAttachmentReference"/>
<type name="VkSubpassDependency"/>
<type name="VkRenderPassInputAttachmentAspectCreateInfo"/>
<type name="VkInputAttachmentAspectReference"/>
<type name="VkRenderPassMultiviewCreateInfo"/>
<command name="vkCmdBeginRenderPass"/>
<command name="vkCmdNextSubpass"/>
<command name="vkCmdEndRenderPass"/>
</deprecate>
</feature>
<feature api="vulkan,vulkansc" name="VK_VERSION_1_3" number="1.3" depends="VK_VERSION_1_2" comment="Vulkan 1.3 core API interface definitions.">
<require>
@ -18503,6 +18525,45 @@ typedef void* <name>MTLSharedEvent_id</name>;
<!-- type name="VkImageSubresource2" comment="Also promoted from KHR in VK_KHR_maintenance5"/ !-->
<!-- command name="vkGetImageSubresourceLayout2" comment="Also promoted from KHR in VK_KHR_maintenance5"/ !-->
</require>
<deprecate explanationlink="deprecation-dynamicrendering">
<type name="VkRenderPass"/>
<type name="VkRenderPassFragmentDensityMapCreateInfoEXT"/>
<command name="vkCreateRenderPass2"/>
<type name="VkRenderPassCreateInfo2"/>
<type name="VkRenderPassCreationControlEXT"/>
<type name="VkRenderPassCreationFeedbackCreateInfoEXT"/>
<type name="VkRenderPassCreationFeedbackInfoEXT"/>
<type name="VkAttachmentDescription2"/>
<type name="VkAttachmentDescriptionStencilLayout"/>
<type name="VkSubpassDescription2"/>
<type name="VkFragmentShadingRateAttachmentInfoKHR"/>
<type name="VkRenderPassSubpassFeedbackCreateInfoEXT"/>
<type name="VkRenderPassSubpassFeedbackInfoEXT"/>
<type name="VkSubpassDescriptionDepthStencilResolve"/>
<type name="VkAttachmentReference2"/>
<type name="VkSubpassDependency2"/>
<command name="vkDestroyRenderPass"/>
<type name="VkFramebuffer"/>
<command name="vkCreateFramebuffer"/>
<type name="VkFramebufferCreateInfo"/>
<type name="VkFramebufferCreateFlagBits"/>
<type name="VkFramebufferCreateFlags"/>
<type name="VkFramebufferAttachmentsCreateInfo"/>
<type name="VkFramebufferAttachmentImageInfo"/>
<command name="vkDestroyFramebuffer"/>
<command name="vkGetRenderAreaGranularity"/>
<type name="VkRenderPassBeginInfo"/>
<type name="VkRenderPassAttachmentBeginInfo"/>
<type name="VkRenderPassSampleLocationsBeginInfoEXT"/>
<type name="VkAttachmentSampleLocationsEXT"/>
<type name="VkSubpassSampleLocationsEXT"/>
<type name="VkSubpassContents"/>
<command name="vkCmdBeginRenderPass2"/>
<command name="vkCmdNextSubpass2"/>
<type name="VkSubpassBeginInfo"/>
<type name="VkSubpassEndInfo"/>
<command name="vkCmdEndRenderPass2"/>
</deprecate>
</feature>
<feature api="vulkansc" name="VKSC_VERSION_1_0" number="1.0" depends="VK_VERSION_1_2" comment="Vulkan SC core API interface definitions">
<require>
@ -20236,6 +20297,26 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type name="VkSubpassBeginInfoKHR"/>
<type name="VkSubpassEndInfoKHR"/>
</require>
<deprecate explanationlink="deprecation-renderpass2">
<command name="vkCreateRenderPass"/>
<type name="VkRenderPassCreateInfo"/>
<type name="VkRenderPassCreateFlags"/>
<type name="VkRenderPassCreateFlagBits"/>
<type name="VkAttachmentDescription"/>
<type name="VkAttachmentDescriptionFlags"/>
<type name="VkAttachmentDescriptionFlagBits"/>
<type name="VkSubpassDescription"/>
<type name="VkSubpassDescriptionFlags"/>
<type name="VkSubpassDescriptionFlagBits"/>
<type name="VkAttachmentReference"/>
<type name="VkSubpassDependency"/>
<type name="VkRenderPassInputAttachmentAspectCreateInfo"/>
<type name="VkInputAttachmentAspectReference"/>
<type name="VkRenderPassMultiviewCreateInfo"/>
<command name="vkCmdBeginRenderPass"/>
<command name="vkCmdNextSubpass"/>
<command name="vkCmdEndRenderPass"/>
</deprecate>
</extension>
<extension name="VK_IMG_relaxed_line_rasterization" number="111" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="IMG" contact="James Fitzpatrick @jamesfitzpatrick" supported="vulkan" specialuse="glemulation">
<require>
@ -22156,6 +22237,45 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO_KHR" alias="VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO"/>
<feature name="dynamicRenderingLocalRead" struct="VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR"/>
</require>
<deprecate explanationlink="deprecation-dynamicrendering">
<type name="VkRenderPass"/>
<type name="VkRenderPassFragmentDensityMapCreateInfoEXT"/>
<command name="vkCreateRenderPass2"/>
<type name="VkRenderPassCreateInfo2"/>
<type name="VkRenderPassCreationControlEXT"/>
<type name="VkRenderPassCreationFeedbackCreateInfoEXT"/>
<type name="VkRenderPassCreationFeedbackInfoEXT"/>
<type name="VkAttachmentDescription2"/>
<type name="VkAttachmentDescriptionStencilLayout"/>
<type name="VkSubpassDescription2"/>
<type name="VkFragmentShadingRateAttachmentInfoKHR"/>
<type name="VkRenderPassSubpassFeedbackCreateInfoEXT"/>
<type name="VkRenderPassSubpassFeedbackInfoEXT"/>
<type name="VkSubpassDescriptionDepthStencilResolve"/>
<type name="VkAttachmentReference2"/>
<type name="VkSubpassDependency2"/>
<command name="vkDestroyRenderPass"/>
<type name="VkFramebuffer"/>
<command name="vkCreateFramebuffer"/>
<type name="VkFramebufferCreateInfo"/>
<type name="VkFramebufferCreateFlagBits"/>
<type name="VkFramebufferCreateFlags"/>
<type name="VkFramebufferAttachmentsCreateInfo"/>
<type name="VkFramebufferAttachmentImageInfo"/>
<command name="vkDestroyFramebuffer"/>
<command name="vkGetRenderAreaGranularity"/>
<type name="VkRenderPassBeginInfo"/>
<type name="VkRenderPassAttachmentBeginInfo"/>
<type name="VkRenderPassSampleLocationsBeginInfoEXT"/>
<type name="VkAttachmentSampleLocationsEXT"/>
<type name="VkSubpassSampleLocationsEXT"/>
<type name="VkSubpassContents"/>
<command name="vkCmdBeginRenderPass2"/>
<command name="vkCmdNextSubpass2"/>
<type name="VkSubpassBeginInfo"/>
<type name="VkSubpassEndInfo"/>
<command name="vkCmdEndRenderPass2"/>
</deprecate>
</extension>
<extension name="VK_AMD_extension_234" number="234" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled">
<require>
@ -22893,7 +23013,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<feature name="deviceMemoryReport" struct="VkPhysicalDeviceDeviceMemoryReportFeaturesEXT"/>
</require>
</extension>
<extension name="VK_EXT_acquire_drm_display" number="286" type="instance" depends="VK_EXT_direct_mode_display" author="EXT" contact="Drew DeVault sir@cmpwn.com" supported="vulkan" comment="codespell:ignore devault" nofeatures="true">
<extension name="VK_EXT_acquire_drm_display" number="286" type="instance" depends="VK_EXT_direct_mode_display" author="EXT" contact="Drew DeVault sir@cmpwn.com" supported="vulkan" ratified="vulkan" comment="codespell:ignore devault" nofeatures="true">
<require>
<enum value="1" name="VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_acquire_drm_display&quot;" name="VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME"/>
@ -22901,12 +23021,12 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command name="vkGetDrmDisplayEXT"/>
</require>
</extension>
<extension name="VK_EXT_robustness2" number="287" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Liam Middlebrook @liam-middlebrook" supported="vulkan,vulkansc" ratified="vulkan,vulkansc">
<extension name="VK_EXT_robustness2" number="287" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Liam Middlebrook @liam-middlebrook" supported="vulkan,vulkansc" promotedto="VK_KHR_robustness2" ratified="vulkan,vulkansc">
<require>
<enum value="1" name="VK_EXT_ROBUSTNESS_2_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_robustness2&quot;" name="VK_EXT_ROBUSTNESS_2_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"/>
<enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT" alias="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_KHR"/>
<enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT" alias="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_KHR"/>
<type name="VkPhysicalDeviceRobustness2FeaturesEXT"/>
<type name="VkPhysicalDeviceRobustness2PropertiesEXT"/>
<feature name="robustBufferAccess2,robustImageAccess2,nullDescriptor" struct="VkPhysicalDeviceRobustness2FeaturesEXT"/>
@ -23669,7 +23789,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<feature name="rayTracingMotionBlur" struct="VkPhysicalDeviceRayTracingMotionBlurFeaturesNV"/>
</require>
</extension>
<extension name="VK_EXT_mesh_shader" number="329" type="device" depends="VK_KHR_spirv_1_4,VK_VERSION_1_2" author="EXT" sortorder="1" contact="Christoph Kubisch @pixeljetstream" supported="vulkan">
<extension name="VK_EXT_mesh_shader" number="329" type="device" depends="VK_KHR_spirv_1_4,VK_VERSION_1_2" author="EXT" sortorder="1" contact="Christoph Kubisch @pixeljetstream" supported="vulkan" ratified="vulkan">
<require>
<enum value="1" name="VK_EXT_MESH_SHADER_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_mesh_shader&quot;" name="VK_EXT_MESH_SHADER_EXTENSION_NAME"/>
@ -23982,7 +24102,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type name="VkPhysicalDeviceDrmPropertiesEXT"/>
</require>
</extension>
<extension name="VK_EXT_device_address_binding_report" number="355" type="device" depends="(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_debug_utils" author="EXT" contact="Ralph Potter gitlab:@r_potter" specialuse="debugging,devtools" supported="vulkan">
<extension name="VK_EXT_device_address_binding_report" number="355" type="device" depends="(VK_KHR_get_physical_device_properties2,VK_VERSION_1_1)+VK_EXT_debug_utils" author="EXT" contact="Ralph Potter gitlab:@r_potter" specialuse="debugging,devtools" supported="vulkan" ratified="vulkan">
<require>
<enum value="1" name="VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_device_address_binding_report&quot;" name="VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME"/>
@ -24225,7 +24345,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<feature name="externalMemoryRDMA" struct="VkPhysicalDeviceExternalMemoryRDMAFeaturesNV"/>
</require>
</extension>
<extension name="VK_EXT_pipeline_properties" number="373" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Mukund Keshava @mkeshavanv" supported="vulkan">
<extension name="VK_EXT_pipeline_properties" number="373" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Mukund Keshava @mkeshavanv" supported="vulkan" ratified="vulkan">
<require>
<enum value="1" name="VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_pipeline_properties&quot;" name="VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME"/>
@ -24704,7 +24824,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<feature name="borderColorSwizzle" struct="VkPhysicalDeviceBorderColorSwizzleFeaturesEXT"/>
</require>
</extension>
<extension name="VK_EXT_pageable_device_local_memory" number="413" author="EXT" contact="Piers Daniell @pdaniell-nv" type="device" depends="VK_EXT_memory_priority" supported="vulkan">
<extension name="VK_EXT_pageable_device_local_memory" number="413" author="EXT" contact="Piers Daniell @pdaniell-nv" type="device" depends="VK_EXT_memory_priority" supported="vulkan" ratified="vulkan">
<require>
<enum value="1" name="VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_pageable_device_local_memory&quot;" name="VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME"/>
@ -25398,7 +25518,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<feature name="opticalFlow" struct="VkPhysicalDeviceOpticalFlowFeaturesNV"/>
</require>
</extension>
<extension name="VK_EXT_legacy_dithering" number="466" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Shahbaz Youssefi @syoussefi" supported="vulkan" specialuse="glemulation">
<extension name="VK_EXT_legacy_dithering" number="466" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="EXT" contact="Shahbaz Youssefi @syoussefi" supported="vulkan" ratified="vulkan" specialuse="glemulation">
<require>
<enum value="2" name="VK_EXT_LEGACY_DITHERING_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_legacy_dithering&quot;" name="VK_EXT_LEGACY_DITHERING_EXTENSION_NAME"/>
@ -27310,10 +27430,15 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum bitpos="40" extends="VkPipelineCreateFlagBits2" name="VK_PIPELINE_CREATE_2_RESERVED_40_BIT_VALVE"/>
</require>
</extension>
<extension name="VK_KHR_extension_613" number="613" author="KHR" contact="Piers Daniell @pdaniell-nv" supported="disabled">
<extension name="VK_KHR_robustness2" number="613" author="KHR" type="device" contact="Piers Daniell @pdaniell-nv" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" supported="vulkan" ratified="vulkan">
<require>
<enum value="0" name="VK_KHR_EXTENSION_613_SPEC_VERSION"/>
<enum value="&quot;VK_KHR_extension_613&quot;" name="VK_KHR_EXTENSION_613_EXTENSION_NAME"/>
<enum value="1" name="VK_KHR_ROBUSTNESS_2_SPEC_VERSION"/>
<enum value="&quot;VK_KHR_robustness2&quot;" name="VK_KHR_ROBUSTNESS_2_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" extnumber="287" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_KHR"/>
<enum offset="1" extends="VkStructureType" extnumber="287" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_KHR"/>
<type name="VkPhysicalDeviceRobustness2FeaturesKHR"/>
<type name="VkPhysicalDeviceRobustness2PropertiesKHR"/>
<feature name="robustBufferAccess2,robustImageAccess2,nullDescriptor" struct="VkPhysicalDeviceRobustness2FeaturesKHR"/>
</require>
</extension>
<extension name="VK_NV_present_metering" number="614" type="device" author="NV" contact="Charles Hansen @chansen" supported="vulkan" provisional="true" platform="provisional">
@ -27420,6 +27545,12 @@ typedef void* <name>MTLSharedEvent_id</name>;
<enum value="&quot;VK_NV_extension_627&quot;" name="VK_NV_EXTENSION_627_EXTENSION_NAME"/>
</require>
</extension>
<extension name="VK_EXT_extension_628" number="628" author="EXT" contact="Jeff Bolz @jeffbolznv" supported="disabled">
<require>
<enum value="0" name="VK_EXT_EXTENSION_628_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_extension_628&quot;" name="VK_EXT_EXTENSION_628_EXTENSION_NAME"/>
</require>
</extension>
</extensions>
<formats>
<format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">