diff options
Diffstat (limited to 'registry/vk.xml')
-rw-r--r-- | registry/vk.xml | 322 |
1 files changed, 297 insertions, 25 deletions
diff --git a/registry/vk.xml b/registry/vk.xml index 0d81da0..0625eaf 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -159,7 +159,7 @@ branch of the member gitlab server. <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.3 version number #define <name>VK_API_VERSION_1_3</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, 0)// Patch version should always be set to 0</type> <type category="define">// Version of this file -#define <name>VK_HEADER_VERSION</name> 212</type> +#define <name>VK_HEADER_VERSION</name> 213</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, 3, VK_HEADER_VERSION)</type> @@ -399,6 +399,8 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask">typedef <type>VkFlags</type> <name>VkImageFormatConstraintsFlagsFUCHSIA</name>;</type> <type requires="VkImageConstraintsInfoFlagBitsFUCHSIA" category="bitmask">typedef <type>VkFlags</type> <name>VkImageConstraintsInfoFlagsFUCHSIA</name>;</type> <type requires="VkGraphicsPipelineLibraryFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkGraphicsPipelineLibraryFlagsEXT</name>;</type> + <type requires="VkImageCompressionFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkImageCompressionFlagsEXT</name>;</type> + <type requires="VkImageCompressionFixedRateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkImageCompressionFixedRateFlagsEXT</name>;</type> <comment>Video Core extension</comment> <type requires="VkVideoCodecOperationFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCodecOperationFlagsKHR</name>;</type> @@ -648,6 +650,7 @@ typedef void <name>CAMetalLayer</name>; <type category="enum" name="VkToolPurposeFlagBitsEXT" alias="VkToolPurposeFlagBits"/> <type name="VkFragmentShadingRateNV" category="enum"/> <type name="VkFragmentShadingRateTypeNV" category="enum"/> + <type name="VkSubpassMergeStatusEXT" category="enum"/> <type name="VkAccessFlagBits2" category="enum"/> <type category="enum" name="VkAccessFlagBits2KHR" alias="VkAccessFlagBits2"/> <type name="VkPipelineStageFlagBits2" category="enum"/> @@ -661,6 +664,8 @@ typedef void <name>CAMetalLayer</name>; <type category="enum" name="VkRenderingFlagBitsKHR" alias="VkRenderingFlagBits"/> <type name="VkPipelineDepthStencilStateCreateFlagBits" category="enum"/> <type name="VkPipelineColorBlendStateCreateFlagBits" category="enum"/> + <type name="VkImageCompressionFlagBitsEXT" category="enum"/> + <type name="VkImageCompressionFixedRateFlagBitsEXT" category="enum"/> <comment>WSI extensions</comment> <type name="VkColorSpaceKHR" category="enum"/> @@ -2133,9 +2138,9 @@ typedef void <name>CAMetalLayer</name>; <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsStreamCount</name></member> <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsTokenOffset</name></member> <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsStreamStride</name></member> - <member limittype="noauto"><type>uint32_t</type> <name>minSequencesCountBufferOffsetAlignment</name></member> - <member limittype="noauto"><type>uint32_t</type> <name>minSequencesIndexBufferOffsetAlignment</name></member> - <member limittype="noauto"><type>uint32_t</type> <name>minIndirectCommandsBufferOffsetAlignment</name></member> + <member limittype="min"><type>uint32_t</type> <name>minSequencesCountBufferOffsetAlignment</name></member> + <member limittype="min"><type>uint32_t</type> <name>minSequencesIndexBufferOffsetAlignment</name></member> + <member limittype="min"><type>uint32_t</type> <name>minIndirectCommandsBufferOffsetAlignment</name></member> </type> <type category="struct" name="VkPhysicalDeviceMultiDrawPropertiesEXT" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> @@ -3956,7 +3961,7 @@ typedef void <name>CAMetalLayer</name>; <member limittype="max"><type>VkDeviceSize</type> <name>maxTransformFeedbackBufferSize</name></member> <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackStreamDataSize</name></member> <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackBufferDataSize</name></member> - <member limittype="noauto"><type>uint32_t</type> <name>maxTransformFeedbackBufferDataStride</name></member> + <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackBufferDataStride</name></member> <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackQueries</name></member> <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackStreamsLinesTriangles</name></member> <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackRasterizationStreamSelect</name></member> @@ -4282,6 +4287,28 @@ typedef void <name>CAMetalLayer</name>; <member><type>uint32_t</type> <name>height</name></member> <member><type>uint32_t</type> <name>depth</name></member> </type> + <type category="struct" name="VkTraceRaysIndirectCommand2KHR"> + <member><type>VkDeviceAddress</type> <name>raygenShaderRecordAddress</name></member> + <member><type>VkDeviceSize</type> <name>raygenShaderRecordSize</name></member> + <member><type>VkDeviceAddress</type> <name>missShaderBindingTableAddress</name></member> + <member><type>VkDeviceSize</type> <name>missShaderBindingTableSize</name></member> + <member><type>VkDeviceSize</type> <name>missShaderBindingTableStride</name></member> + <member><type>VkDeviceAddress</type> <name>hitShaderBindingTableAddress</name></member> + <member><type>VkDeviceSize</type> <name>hitShaderBindingTableSize</name></member> + <member><type>VkDeviceSize</type> <name>hitShaderBindingTableStride</name></member> + <member><type>VkDeviceAddress</type> <name>callableShaderBindingTableAddress</name></member> + <member><type>VkDeviceSize</type> <name>callableShaderBindingTableSize</name></member> + <member><type>VkDeviceSize</type> <name>callableShaderBindingTableStride</name></member> + <member><type>uint32_t</type> <name>width</name></member> + <member><type>uint32_t</type> <name>height</name></member> + <member><type>uint32_t</type> <name>depth</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>rayTracingMaintenance1</name></member> + <member><type>VkBool32</type> <name>rayTracingPipelineTraceRaysIndirect2</name></member> + </type> <type category="struct" name="VkDrmFormatModifierPropertiesListEXT" returnedonly="true" structextends="VkFormatProperties2"> <member values="VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member> @@ -4774,6 +4801,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkPipeline</type> <name>pipeline</name></member> </type> + <type category="struct" name="VkPipelineInfoEXT" alias="VkPipelineInfoKHR"/> <type category="struct" name="VkPipelineExecutablePropertiesKHR" returnedonly="true"> <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member> @@ -6773,6 +6801,71 @@ typedef void <name>CAMetalLayer</name>; <member><type>size_t</type> <name>descriptorOffset</name></member> <member><type>uint32_t</type> <name>descriptorSize</name></member> </type> + <type category="struct" name="VkImageCompressionControlEXT" structextends="VkImageCreateInfo,VkSwapchainCreateInfoKHR,VkPhysicalDeviceImageFormatInfo2"> + <member values="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member noautovalidity="true"><type>VkImageCompressionFlagsEXT</type> <name>flags</name></member> + <member optional="true"><type>uint32_t</type> <name>compressionControlPlaneCount</name></member> + <member noautovalidity="true" len="compressionControlPlaneCount"><type>VkImageCompressionFixedRateFlagsEXT</type>* <name>pFixedRateFlags</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceImageCompressionControlFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_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>imageCompressionControl</name></member> + </type> + <type category="struct" name="VkImageCompressionPropertiesEXT" structextends="VkImageFormatProperties2,VkSurfaceFormat2KHR,VkSubresourceLayout2EXT" returnedonly="true"> + <member values="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkImageCompressionFlagsEXT</type> <name>imageCompressionFlags</name></member> + <member><type>VkImageCompressionFixedRateFlagsEXT</type> <name>imageCompressionFixedRateFlags</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_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>imageCompressionControlSwapchain</name></member> + </type> + <type category="struct" name="VkImageSubresource2EXT"> + <member values="VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkImageSubresource</type> <name>imageSubresource</name></member> + </type> + <type category="struct" name="VkSubresourceLayout2EXT"> + <member values="VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkSubresourceLayout</type> <name>subresourceLayout</name></member> + </type> + <type category="struct" name="VkRenderPassCreationControlEXT" structextends="VkRenderPassCreateInfo2,VkSubpassDescription2"> + <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>disallowMerging</name></member> + </type> + <type category="struct" name="VkRenderPassCreationFeedbackInfoEXT" structextends="VkRenderPassCreateInfo2,VkRenderPassCreationControlEXT"> + <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>postMergeSubpassCount</name></member> + </type> + <type category="struct" name="VkRenderPassSubpassFeedbackInfoEXT" structextends="VkSubpassDescription2,VkRenderPassCreationControlEXT"> + <member values="VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>VkSubpassMergeStatusEXT</type> <name>subpassMergeStatus</name></member> + <member><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> + <member><type>uint32_t</type> <name>postMergeIndex</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_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>subpassMergeFeedback</name></member> + </type> + <type category="struct" name="VkPipelinePropertiesIdentifierEXT" structextends="VkBaseOutStructure"> + <member values="VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>uint8_t</type> <name>pipelineIdentifier</name>[<enum>VK_UUID_SIZE</enum>]</member> + </type> + <type category="struct" name="VkPhysicalDevicePipelinePropertiesFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_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>pipelinePropertiesIdentifier</name></member> + </type> </types> <comment>Vulkan enumerant (token) definitions</comment> @@ -8211,6 +8304,22 @@ typedef void <name>CAMetalLayer</name>; <enum value="0" name="VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV"/> <enum value="1" name="VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV"/> </enums> + <enums name="VkSubpassMergeStatusEXT" type="enum"> + <enum value="0" name="VK_SUBPASS_MERGE_STATUS_MERGED_EXT"/> + <enum value="1" name="VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT"/> + <enum value="2" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT"/> + <enum value="3" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT"/> + <enum value="4" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT"/> + <enum value="5" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT"/> + <enum value="6" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT"/> + <enum value="7" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT"/> + <enum value="8" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT"/> + <enum value="9" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT"/> + <enum value="10" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT"/> + <enum value="11" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT"/> + <enum value="12" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT"/> + <enum value="13" name="VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT"/> + </enums> <enums name="VkAccessFlagBits2" type="bitmask" bitwidth="64"> <enum value="0" name="VK_ACCESS_2_NONE"/> <enum name="VK_ACCESS_2_NONE_KHR" alias="VK_ACCESS_2_NONE"/> @@ -8579,6 +8688,39 @@ typedef void <name>CAMetalLayer</name>; </enums> <enums name="VkInstanceCreateFlagBits" type="bitmask"> </enums> + <enums name="VkImageCompressionFlagBitsEXT" type="bitmask"> + <enum value="0" name="VK_IMAGE_COMPRESSION_DEFAULT_EXT"/> + <enum bitpos="0" name="VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT"/> + <enum bitpos="1" name="VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT"/> + <enum bitpos="2" name="VK_IMAGE_COMPRESSION_DISABLED_EXT"/> + </enums> + <enums name="VkImageCompressionFixedRateFlagBitsEXT" type="bitmask"> + <enum value="0" name="VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT"/> + <enum bitpos="0" name="VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT"/> + <enum bitpos="1" name="VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT"/> + <enum bitpos="2" name="VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT"/> + <enum bitpos="3" name="VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT"/> + <enum bitpos="4" name="VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT"/> + <enum bitpos="5" name="VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT"/> + <enum bitpos="6" name="VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT"/> + <enum bitpos="7" name="VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT"/> + <enum bitpos="8" name="VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT"/> + <enum bitpos="9" name="VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT"/> + <enum bitpos="10" name="VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT"/> + <enum bitpos="11" name="VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT"/> + <enum bitpos="12" name="VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT"/> + <enum bitpos="13" name="VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT"/> + <enum bitpos="14" name="VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT"/> + <enum bitpos="15" name="VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT"/> + <enum bitpos="16" name="VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT"/> + <enum bitpos="17" name="VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT"/> + <enum bitpos="18" name="VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT"/> + <enum bitpos="19" name="VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT"/> + <enum bitpos="20" name="VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT"/> + <enum bitpos="21" name="VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT"/> + <enum bitpos="22" name="VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT"/> + <enum bitpos="23" name="VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT"/> + </enums> <commands comment="Vulkan command definitions"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_LAYER_NOT_PRESENT,VK_ERROR_EXTENSION_NOT_PRESENT,VK_ERROR_INCOMPATIBLE_DRIVER"> @@ -8943,7 +9085,7 @@ typedef void <name>CAMetalLayer</name>; <param optional="true" externsync="true"><type>VkBufferView</type> <name>bufferView</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_COMPRESSION_EXHAUSTED_EXT"> <proto><type>VkResult</type> <name>vkCreateImage</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param>const <type>VkImageCreateInfo</type>* <name>pCreateInfo</name></param> @@ -9682,7 +9824,7 @@ typedef void <name>CAMetalLayer</name>; <param optional="false,true"><type>uint32_t</type>* <name>pPresentModeCount</name></param> <param optional="true" len="pPresentModeCount"><type>VkPresentModeKHR</type>* <name>pPresentModes</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_DEVICE_LOST,VK_ERROR_SURFACE_LOST_KHR,VK_ERROR_NATIVE_WINDOW_IN_USE_KHR,VK_ERROR_INITIALIZATION_FAILED"> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_DEVICE_LOST,VK_ERROR_SURFACE_LOST_KHR,VK_ERROR_NATIVE_WINDOW_IN_USE_KHR,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_COMPRESSION_EXHAUSTED_EXT"> <proto><type>VkResult</type> <name>vkCreateSwapchainKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param externsync="pCreateInfo->surface,pCreateInfo->oldSwapchain">const <type>VkSwapchainCreateInfoKHR</type>* <name>pCreateInfo</name></param> @@ -11018,6 +11160,11 @@ typedef void <name>CAMetalLayer</name>; <param>const <type>VkStridedDeviceAddressRegionKHR</type>* <name>pCallableShaderBindingTable</name></param> <param><type>VkDeviceAddress</type> <name>indirectDeviceAddress</name></param> </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdTraceRaysIndirect2KHR</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkDeviceAddress</type> <name>indirectDeviceAddress</name></param> + </command> <command> <proto><type>void</type> <name>vkGetDeviceAccelerationStructureCompatibilityKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> @@ -11747,6 +11894,19 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkDescriptorSet</type> <name>descriptorSet</name></param> <param><type>void</type>** <name>ppData</name></param> </command> + <command> + <proto><type>void</type> <name>vkGetImageSubresourceLayout2EXT</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkImage</type> <name>image</name></param> + <param>const <type>VkImageSubresource2EXT</type>* <name>pSubresource</name></param> + <param><type>VkSubresourceLayout2EXT</type>* <name>pLayout</name></param> + </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY"> + <proto><type>VkResult</type> <name>vkGetPipelinePropertiesEXT</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkPipelineInfoEXT</type>* <name>pPipelineInfo</name></param> + <param><type>VkBaseOutStructure</type>* <name>pPipelineProperties</name></param> + </command> </commands> <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions"> @@ -17558,10 +17718,26 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdResolveImage2KHR"/> </require> </extension> - <extension name="VK_ARM_extension_339" number="339" author="ARM" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> - <require> - <enum value="0" name="VK_ARM_EXTENSION_339_SPEC_VERSION"/> - <enum value=""VK_ARM_extension_339"" name="VK_ARM_EXTENSION_339_EXTENSION_NAME"/> + <extension name="VK_EXT_image_compression_control" number="339" type="device" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="vulkan"> + <require> + <enum value="1" name="VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION"/> + <enum value=""VK_EXT_image_compression_control"" name="VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT"/> + <type name="VkPhysicalDeviceImageCompressionControlFeaturesEXT"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT"/> + <type name="VkImageCompressionControlEXT"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT"/> + <type name="VkSubresourceLayout2EXT"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT"/> + <type name="VkImageSubresource2EXT"/> + <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT"/> + <type name="VkImageCompressionPropertiesEXT"/> + <type name="VkImageCompressionFlagBitsEXT"/> + <type name="VkImageCompressionFlagsEXT"/> + <type name="VkImageCompressionFixedRateFlagBitsEXT"/> + <type name="VkImageCompressionFixedRateFlagsEXT"/> + <enum offset="0" dir="-" extends="VkResult" name="VK_ERROR_COMPRESSION_EXHAUSTED_EXT"/> + <command name="vkGetImageSubresourceLayout2EXT"/> </require> </extension> <extension name="VK_EXT_extension_340" number="340" author="EXT" contact="Joshua Ashton @Joshua-Ashton" supported="disabled"> @@ -17884,10 +18060,17 @@ typedef void <name>CAMetalLayer</name>; <command name="vkGetMemoryRemoteAddressNV"/> </require> </extension> - <extension name="VK_NV_extension_373" number="373" author="NV" contact="Daniel Koch @dgkoch" supported="disabled"> + <extension name="VK_EXT_pipeline_properties" number="373" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Mukund Keshava @mkeshavanv" supported="vulkan"> <require> - <enum value="0" name="VK_NV_EXTENSION_373_SPEC_VERSION"/> - <enum value=""VK_NV_extension_373"" name="VK_NV_EXTENSION_373_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION"/> + <enum value=""VK_EXT_pipeline_properties"" name="VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT"/> + <enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT" alias="VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR"/> + <type name="VkPipelineInfoEXT"/> + <type name="VkPipelinePropertiesIdentifierEXT"/> + <type name="VkPhysicalDevicePipelinePropertiesFeaturesEXT"/> + <command name="vkGetPipelinePropertiesEXT"/> </require> </extension> <extension name="VK_NV_extension_374" number="374" author="NV" contact="Daniel Koch @dgkoch" supported="disabled"> @@ -17999,12 +18182,24 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_GOOGLE_extension_386"" name="VK_GOOGLE_EXTENSION_386_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_KHR_extension_387" number="387" author="KHR" contact="Daniel Koch @dgkoch" supported="disabled"> + <extension name="VK_KHR_ray_tracing_maintenance1" number="387" type="device" requiresCore="1.1" requires="VK_KHR_acceleration_structure" author="KHR" contact="Daniel Koch @dgkoch" supported="vulkan"> <require> - <enum value="0" name="VK_KHR_EXTENSION_387_SPEC_VERSION"/> - <enum value=""VK_KHR_extension_387"" name="VK_KHR_EXTENSION_387_EXTENSION_NAME"/> - <enum bitpos="28" extends="VkPipelineStageFlagBits2" name="VK_PIPELINE_STAGE_2_RESERVED_387_BIT_KHR"/> - <enum bitpos="40" extends="VkAccessFlagBits2" name="VK_ACCESS_2_RESERVED_387_BIT_KHR"/> + <enum value="1" name="VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION"/> + <enum value=""VK_KHR_ray_tracing_maintenance1"" name="VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR"/> + <enum offset="0" extends="VkQueryType" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR"/> + <enum offset="1" extends="VkQueryType" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR"/> + <type name="VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR"/> + </require> + <require extension="VK_KHR_synchronization2"> + <enum bitpos="28" extends="VkPipelineStageFlagBits2" name="VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR"/> + </require> + <require extension="VK_KHR_synchronization2,VK_KHR_ray_tracing_pipeline"> + <enum bitpos="40" extends="VkAccessFlagBits2" name="VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR"/> + </require> + <require extension="VK_KHR_ray_tracing_pipeline"> + <type name="VkTraceRaysIndirectCommand2KHR"/> + <command name="vkCmdTraceRaysIndirect2KHR"/> </require> </extension> <extension name="VK_EXT_extension_388" number="388" author="EXT" contact="Alan Baker @alan-baker" supported="disabled"> @@ -18380,10 +18575,12 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_437"" name="VK_EXT_EXTENSION_437_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_EXT_extension_438" number="438" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> + <extension name="VK_EXT_image_compression_control_swapchain" number="438" type="device" requires="VK_EXT_image_compression_control" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="vulkan"> <require> - <enum value="0" name="VK_EXT_EXTENSION_438_SPEC_VERSION"/> - <enum value=""VK_EXT_extension_438"" name="VK_EXT_EXTENSION_438_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION"/> + <enum value=""VK_EXT_image_compression_control_swapchain"" name="VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT"/> + <type name="VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT"/> </require> </extension> <extension name="VK_SEC_extension_439" number="439" author="SEC" contact="Ralph Potter gitlab:@r_potter" supported="disabled"> @@ -18516,10 +18713,19 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_458"" name="VK_EXT_EXTENSION_458_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_ARM_extension_459" number="459" author="Arm" contact="Ting Wei @catweiting" supported="disabled"> + <extension name="VK_EXT_subpass_merge_feedback" number="459" type="device" author="EXT" contact="Ting Wei @catweiting" supported="vulkan"> <require> - <enum value="0" name="VK_ARM_EXTENSION_459_SPEC_VERSION"/> - <enum value=""VK_ARM_extension_459"" name="VK_ARM_EXTENSION_459_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION"/> + <enum value=""VK_EXT_subpass_merge_feedback"" name="VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_INFO_EXT"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_INFO_EXT"/> + <type name="VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT"/> + <type name="VkRenderPassCreationControlEXT"/> + <type name="VkRenderPassCreationFeedbackInfoEXT"/> + <type name="VkRenderPassSubpassFeedbackInfoEXT"/> + <type name="VkSubpassMergeStatusEXT"/> </require> </extension> <extension name="VK_EXT_extension_460" number="460" author="EXT" contact="Charles Giessen @charles-lunarg" supported="disabled"> @@ -18593,6 +18799,66 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_ANDROID_extension_469"" name="VK_ANDROID_EXTENSION_469_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_AMD_extension_470" number="470" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_470_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_470"" name="VK_AMD_EXTENSION_470_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_471" number="471" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_471_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_471"" name="VK_AMD_EXTENSION_471_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_472" number="472" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_472_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_472"" name="VK_AMD_EXTENSION_472_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_473" number="473" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_473_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_473"" name="VK_AMD_EXTENSION_473_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_474" number="474" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_474_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_474"" name="VK_AMD_EXTENSION_474_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_475" number="475" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_475_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_475"" name="VK_AMD_EXTENSION_475_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_476" number="476" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_476_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_476"" name="VK_AMD_EXTENSION_476_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_477" number="477" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_477_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_477"" name="VK_AMD_EXTENSION_477_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_478" number="478" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_478_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_478"" name="VK_AMD_EXTENSION_478_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_479" number="479" author="AMD" contact="Stu Smith" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_479_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_479"" name="VK_AMD_EXTENSION_479_EXTENSION_NAME"/> + </require> + </extension> </extensions> <formats> <format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8"> @@ -20080,6 +20346,9 @@ typedef void <name>CAMetalLayer</name>; <spirvextension name="SPV_KHR_ray_query"> <enable extension="VK_KHR_ray_query"/> </spirvextension> + <spirvextension name="SPV_KHR_ray_cull_mask"> + <enable extension="VK_KHR_ray_tracing_maintenance1"/> + </spirvextension> <spirvextension name="SPV_GOOGLE_hlsl_functionality1"> <enable extension="VK_GOOGLE_hlsl_functionality1"/> </spirvextension> @@ -20525,6 +20794,9 @@ typedef void <name>CAMetalLayer</name>; <spirvcapability name="RayTraversalPrimitiveCullingKHR"> <enable struct="VkPhysicalDeviceRayTracingPipelineFeaturesKHR" feature="rayTraversalPrimitiveCulling" requires="VK_KHR_ray_tracing_pipeline"/> </spirvcapability> + <spirvcapability name="RayCullMaskKHR"> + <enable struct="VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR" feature="rayTracingMaintenance1" requires="VK_KHR_ray_tracing_maintenance1"/> + </spirvcapability> <spirvcapability name="RayTracingNV"> <enable extension="VK_NV_ray_tracing"/> </spirvcapability> |