diff options
author | Jon Leech <[email protected]> | 2021-06-21 00:19:57 -0700 |
---|---|---|
committer | Jon Leech <[email protected]> | 2021-06-21 00:22:32 -0700 |
commit | ab968ab2fce8d15cb9c8781a3cbe540d4b04f1e3 (patch) | |
tree | 55bc22b122324691cbad97129a89c7cb860434eb /registry/vk.xml | |
parent | 9d10a96f2d57c3c37e167f2e73c9a31ac2e51fa5 (diff) | |
download | Vulkan-Headers-ab968ab2fce8d15cb9c8781a3cbe540d4b04f1e3.tar.gz Vulkan-Headers-ab968ab2fce8d15cb9c8781a3cbe540d4b04f1e3.zip |
Update for Vulkan-Docs 1.2.182
Also includes new header files generated by Vulkan-Hpp. Previously
everything went into the monolithic header vulkan.hpp, which had grown
very long. Now different types of interfaces are segregated into
different files.
Diffstat (limited to 'registry/vk.xml')
-rw-r--r-- | registry/vk.xml | 297 |
1 files changed, 250 insertions, 47 deletions
diff --git a/registry/vk.xml b/registry/vk.xml index a1844b2..ddfcd62 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -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> 181</type> +#define <name>VK_HEADER_VERSION</name> 182</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> @@ -309,6 +309,8 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkDeviceDiagnosticsConfigFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceDiagnosticsConfigFlagsNV</name>;</type> <type bitvalues="VkAccessFlagBits2KHR" category="bitmask">typedef <type>VkFlags64</type> <name>VkAccessFlags2KHR</name>;</type> <type bitvalues="VkPipelineStageFlagBits2KHR" category="bitmask">typedef <type>VkFlags64</type> <name>VkPipelineStageFlags2KHR</name>;</type> + <type category="bitmask">typedef <type>VkFlags</type> <name>VkAccelerationStructureMotionInfoFlagsNV</name>;</type> + <type category="bitmask">typedef <type>VkFlags</type> <name>VkAccelerationStructureMotionInstanceFlagsNV</name>;</type> <comment>WSI extensions</comment> <type requires="VkCompositeAlphaFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkCompositeAlphaFlagsKHR</name>;</type> @@ -1748,6 +1750,15 @@ typedef void <name>CAMetalLayer</name>; <member noautovalidity="true"><type>uint32_t</type> <name>y</name></member> <member noautovalidity="true"><type>uint32_t</type> <name>z</name></member> </type> + <type category="struct" name="VkMultiDrawInfoEXT"> + <member><type>uint32_t</type> <name>firstVertex</name></member> + <member><type>uint32_t</type> <name>vertexCount</name></member> + </type> + <type category="struct" name="VkMultiDrawIndexedInfoEXT"> + <member><type>uint32_t</type> <name>firstIndex</name></member> + <member><type>uint32_t</type> <name>indexCount</name></member> + <member><type>int32_t</type> <name>vertexOffset</name></member> + </type> <type category="struct" name="VkSubmitInfo"> <member values="VK_STRUCTURE_TYPE_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> @@ -1959,14 +1970,14 @@ typedef void <name>CAMetalLayer</name>; <member values="VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkDebugReportObjectTypeEXT</type> <name>objectType</name><comment>The type of the object</comment></member> - <member><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> + <member objecttype="objectType"><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> <member len="null-terminated">const <type>char</type>* <name>pObjectName</name><comment>Name to apply to the object</comment></member> </type> <type category="struct" name="VkDebugMarkerObjectTagInfoEXT"> <member values="VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkDebugReportObjectTypeEXT</type> <name>objectType</name><comment>The type of the object</comment></member> - <member><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> + <member objecttype="objectType"><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> <member><type>uint64_t</type> <name>tagName</name><comment>The name of the tag to set on the object</comment></member> <member><type>size_t</type> <name>tagSize</name><comment>The length in bytes of the tag data</comment></member> <member len="tagSize">const <type>void</type>* <name>pTag</name><comment>Tag data to attach to the object</comment></member> @@ -2065,6 +2076,11 @@ typedef void <name>CAMetalLayer</name>; <member limittype="noauto"><type>uint32_t</type> <name>minSequencesIndexBufferOffsetAlignment</name></member> <member limittype="noauto"><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> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxMultiDrawCount</name></member> + </type> <type category="struct" name="VkGraphicsShaderGroupCreateInfoNV"> <member values="VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> @@ -3134,6 +3150,11 @@ typedef void <name>CAMetalLayer</name>; <member optional="true"><type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>advancedBlendCoherentOperations</name></member> </type> + <type category="struct" name="VkPhysicalDeviceMultiDrawFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>multiDraw</name></member> + </type> <type category="struct" name="VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member> @@ -3319,14 +3340,14 @@ typedef void <name>CAMetalLayer</name>; <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkObjectType</type> <name>objectType</name></member> - <member><type>uint64_t</type> <name>objectHandle</name></member> + <member objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></member> <member optional="true" len="null-terminated">const <type>char</type>* <name>pObjectName</name></member> </type> <type category="struct" name="VkDebugUtilsObjectTagInfoEXT"> <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkObjectType</type> <name>objectType</name></member> - <member><type>uint64_t</type> <name>objectHandle</name></member> + <member objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></member> <member><type>uint64_t</type> <name>tagName</name></member> <member><type>size_t</type> <name>tagSize</name></member> <member len="tagSize">const <type>void</type>* <name>pTag</name></member> @@ -4667,6 +4688,17 @@ typedef void <name>CAMetalLayer</name>; <member optional="true"><type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>requiredSubgroupSize</name></member> </type> + <type category="struct" name="VkSubpassShadingPipelineCreateInfoHUAWEI" returnedonly="true" structextends="VkComputePipelineCreateInfo"> + <member values="VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>VkRenderPass</type> <name>renderPass</name></member> + <member><type>uint32_t</type> <name>subpass</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceSubpassShadingPropertiesHUAWEI" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member limittype="noauto"><type>uint32_t</type> <name>maxSubpassShadingWorkgroupSizeAspectRatio</name></member> + </type> <type category="struct" name="VkMemoryOpaqueCaptureAddressAllocateInfo" structextends="VkMemoryAllocateInfo"> <member values="VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> @@ -5127,6 +5159,11 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkBool32</type> <name>formatA4R4G4B4</name></member> <member><type>VkBool32</type> <name>formatA4B4G4R4</name></member> </type> + <type category="struct" name="VkPhysicalDeviceSubpassShadingFeaturesHUAWEI" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>subpassShading</name></member> + </type> <type category="struct" name="VkBufferCopy2KHR"> <member values="VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> @@ -5894,6 +5931,82 @@ typedef void <name>CAMetalLayer</name>; <member><type>size_t</type> <name>extraCount</name></member> <member>const <type>void</type>* const * <name>pExtras</name></member> </type> + <type category="struct" name="VkPhysicalDeviceDrmPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>hasPrimary</name></member> + <member><type>VkBool32</type> <name>hasRender</name></member> + <member><type>int64_t</type> <name>primaryMajor</name></member> + <member><type>int64_t</type> <name>primaryMinor</name></member> + <member><type>int64_t</type> <name>renderMajor</name></member> + <member><type>int64_t</type> <name>renderMinor</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceRayTracingMotionBlurFeaturesNV" structextends="VkPhysicalDeviceProperties2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>rayTracingMotionBlur</name></member> + <member><type>VkBool32</type> <name>rayTracingMotionBlurPipelineTraceRaysIndirect</name></member> + </type> + <type name="VkAccelerationStructureMotionInstanceTypeNV" category="enum"/> + <type category="struct" name="VkAccelerationStructureGeometryMotionTrianglesDataNV" structextends="VkAccelerationStructureGeometryTrianglesDataKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>vertexData</name></member> + </type> + <type category="struct" name="VkAccelerationStructureMotionInfoNV" structextends="VkAccelerationStructureCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxInstances</name></member> + <member optional="true"><type>VkAccelerationStructureMotionInfoFlagsNV</type> <name>flags</name></member> + </type> + <type category="struct" name="VkSRTDataNV"> + <member><type>float</type> <name>sx</name></member> + <member><type>float</type> <name>a</name></member> + <member><type>float</type> <name>b</name></member> + <member><type>float</type> <name>pvx</name></member> + <member><type>float</type> <name>sy</name></member> + <member><type>float</type> <name>c</name></member> + <member><type>float</type> <name>pvy</name></member> + <member><type>float</type> <name>sz</name></member> + <member><type>float</type> <name>pvz</name></member> + <member><type>float</type> <name>qx</name></member> + <member><type>float</type> <name>qy</name></member> + <member><type>float</type> <name>qz</name></member> + <member><type>float</type> <name>qw</name></member> + <member><type>float</type> <name>tx</name></member> + <member><type>float</type> <name>ty</name></member> + <member><type>float</type> <name>tz</name></member> + </type> + <type category="struct" name="VkAccelerationStructureSRTMotionInstanceNV"> + <comment>The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout.</comment> + <member><type>VkSRTDataNV</type> <name>transformT0</name></member> + <member><type>VkSRTDataNV</type> <name>transformT1</name></member> + <member><type>uint32_t</type> <name>instanceCustomIndex</name>:24</member> + <member><type>uint32_t</type> <name>mask</name>:8</member> + <member><type>uint32_t</type> <name>instanceShaderBindingTableRecordOffset</name>:24</member> + <member optional="true"><type>VkGeometryInstanceFlagsKHR</type> <name>flags</name>:8</member> + <member><type>uint64_t</type> <name>accelerationStructureReference</name></member> + </type> + <type category="struct" name="VkAccelerationStructureMatrixMotionInstanceNV"> + <comment>The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout.</comment> + <member><type>VkTransformMatrixKHR</type> <name>transformT0</name></member> + <member><type>VkTransformMatrixKHR</type> <name>transformT1</name></member> + <member><type>uint32_t</type> <name>instanceCustomIndex</name>:24</member> + <member><type>uint32_t</type> <name>mask</name>:8</member> + <member><type>uint32_t</type> <name>instanceShaderBindingTableRecordOffset</name>:24</member> + <member optional="true"><type>VkGeometryInstanceFlagsKHR</type> <name>flags</name>:8</member> + <member><type>uint64_t</type> <name>accelerationStructureReference</name></member> + </type> + <type category="union" name="VkAccelerationStructureMotionInstanceDataNV"> + <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV"><type>VkAccelerationStructureInstanceKHR</type> <name>staticInstance</name></member> + <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV"><type>VkAccelerationStructureMatrixMotionInstanceNV</type> <name>matrixMotionInstance</name></member> + <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV"><type>VkAccelerationStructureSRTMotionInstanceNV</type> <name>srtMotionInstance</name></member> + </type> + <type category="struct" name="VkAccelerationStructureMotionInstanceNV"> + <member><type>VkAccelerationStructureMotionInstanceTypeNV</type> <name>type</name></member> + <member optional="true"><type>VkAccelerationStructureMotionInstanceFlagsNV</type> <name>flags</name></member> + <member selector="type"><type>VkAccelerationStructureMotionInstanceDataNV</type> <name>data</name></member> + </type> </types> <comment>Vulkan enumerant (token) definitions</comment> @@ -7372,6 +7485,12 @@ typedef void <name>CAMetalLayer</name>; <enum value="0" name="VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT"/> <enum value="1" name="VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT"/> </enums> + <enums name="VkAccelerationStructureMotionInstanceTypeNV" type="enum"> + <enum value="0" name="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV"/> + <enum value="1" name="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV"/> + <enum value="2" name="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV"/> + </enums> + <enums name="VkVideoCodecOperationFlagBitsKHR" type="bitmask"> <enum value="0" name="VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR"/> </enums> @@ -7915,6 +8034,11 @@ typedef void <name>CAMetalLayer</name>; <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> <param len="createInfoCount"><type>VkPipeline</type>* <name>pPipelines</name></param> </command> + <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_SURFACE_LOST_KHR"> + <proto><type>VkResult</type> <name>vkGetSubpassShadingMaxWorkgroupSizeHUAWEI</name></proto> + <param><type>VkRenderPass</type> <name>renderpass</name></param> + <param><type>VkExtent2D</type>* <name>pMaxWorkgroupSize</name></param> + </command> <command> <proto><type>void</type> <name>vkDestroyPipeline</name></proto> <param><type>VkDevice</type> <name>device</name></param> @@ -8192,6 +8316,25 @@ typedef void <name>CAMetalLayer</name>; <param><type>uint32_t</type> <name>firstInstance</name></param> </command> <command queues="graphics" renderpass="inside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdDrawMultiEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param optional="true"><type>uint32_t</type> <name>drawCount</name></param> + <param noautovalidity="true" len="drawCount">const <type>VkMultiDrawInfoEXT</type>* <name>pVertexInfo</name></param> + <param><type>uint32_t</type> <name>instanceCount</name></param> + <param><type>uint32_t</type> <name>firstInstance</name></param> + <param><type>uint32_t</type> <name>stride</name></param> + </command> + <command queues="graphics" renderpass="inside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdDrawMultiIndexedEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param optional="true"><type>uint32_t</type> <name>drawCount</name></param> + <param noautovalidity="true" len="drawCount">const <type>VkMultiDrawIndexedInfoEXT</type>* <name>pIndexInfo</name></param> + <param><type>uint32_t</type> <name>instanceCount</name></param> + <param><type>uint32_t</type> <name>firstInstance</name></param> + <param><type>uint32_t</type> <name>stride</name></param> + <param optional="true">const <type>int32_t</type>* <name>pVertexOffset</name></param> + </command> + <command queues="graphics" renderpass="inside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdDrawIndirect</name></proto> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param><type>VkBuffer</type> <name>buffer</name></param> @@ -8220,6 +8363,10 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkBuffer</type> <name>buffer</name></param> <param><type>VkDeviceSize</type> <name>offset</name></param> </command> + <command queues="graphics" renderpass="inside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSubpassShadingHUAWEI</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + </command> <command queues="transfer,graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdCopyBuffer</name></proto> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> @@ -8683,7 +8830,7 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkInstance</type> <name>instance</name></param> <param><type>VkDebugReportFlagsEXT</type> <name>flags</name></param> <param><type>VkDebugReportObjectTypeEXT</type> <name>objectType</name></param> - <param><type>uint64_t</type> <name>object</name></param> + <param objecttype="objectType"><type>uint64_t</type> <name>object</name></param> <param><type>size_t</type> <name>location</name></param> <param><type>int32_t</type> <name>messageCode</name></param> <param len="null-terminated">const <type>char</type>* <name>pLayerPrefix</name></param> @@ -10074,19 +10221,19 @@ typedef void <name>CAMetalLayer</name>; <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> <command> - <proto><type>uint32_t</type> <name>vkGetDeferredOperationMaxConcurrencyKHR</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> + <proto><type>uint32_t</type> <name>vkGetDeferredOperationMaxConcurrencyKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> </command> <command successcodes="VK_SUCCESS,VK_NOT_READY"> - <proto><type>VkResult</type> <name>vkGetDeferredOperationResultKHR</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> + <proto><type>VkResult</type> <name>vkGetDeferredOperationResultKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> </command> <command successcodes="VK_SUCCESS,VK_THREAD_DONE_KHR,VK_THREAD_IDLE_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkDeferredOperationJoinKHR</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> + <proto><type>VkResult</type> <name>vkDeferredOperationJoinKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> </command> <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdSetCullModeEXT</name></proto> @@ -10201,7 +10348,7 @@ typedef void <name>CAMetalLayer</name>; <proto><type>VkResult</type> <name>vkSetPrivateDataEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param><type>VkObjectType</type> <name>objectType</name></param> - <param><type>uint64_t</type> <name>objectHandle</name></param> + <param objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></param> <param><type>VkPrivateDataSlotEXT</type> <name>privateDataSlot</name></param> <param><type>uint64_t</type> <name>data</name></param> </command> @@ -10209,7 +10356,7 @@ typedef void <name>CAMetalLayer</name>; <proto><type>void</type> <name>vkGetPrivateDataEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param><type>VkObjectType</type> <name>objectType</name></param> - <param><type>uint64_t</type> <name>objectHandle</name></param> + <param objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></param> <param><type>VkPrivateDataSlotEXT</type> <name>privateDataSlot</name></param> <param><type>uint64_t</type>* <name>pData</name></param> </command> @@ -10380,11 +10527,11 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkVideoSessionParametersKHR</type> <name>videoSessionParameters</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> - <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_INITIALIZATION_FAILED"> + <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_INITIALIZATION_FAILED"> <proto><type>VkResult</type> <name>vkGetVideoSessionMemoryRequirementsKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param><type>VkVideoSessionKHR</type> <name>videoSession</name></param> - <param><type>uint32_t</type>* <name>pVideoSessionMemoryRequirementsCount</name></param> + <param optional="false,true"><type>uint32_t</type>* <name>pVideoSessionMemoryRequirementsCount</name></param> <param optional="true" len="pVideoSessionMemoryRequirementsCount"><type>VkVideoGetMemoryPropertiesKHR</type>* <name>pVideoSessionMemoryRequirements</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED"> @@ -10450,6 +10597,19 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkCuLaunchInfoNVX</type>* <name>pLaunchInfo</name></param> </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED"> + <proto><type>VkResult</type> <name>vkAcquireDrmDisplayEXT</name></proto> + <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> + <param><type>int32_t</type> <name>drmFd</name></param> + <param><type>VkDisplayKHR</type> <name>display</name></param> + </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY"> + <proto><type>VkResult</type> <name>vkGetDrmDisplayEXT</name></proto> + <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> + <param><type>int32_t</type> <name>drmFd</name></param> + <param><type>uint32_t</type> <name>connectorId</name></param> + <param><type>VkDisplayKHR</type>* <name>display</name></param> + </command> </commands> <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions"> @@ -15023,8 +15183,8 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdSetDepthBoundsTestEnableEXT"/> <command name="vkCmdSetStencilTestEnableEXT"/> <command name="vkCmdSetStencilOpEXT"/> - </require> - </extension> + </require> + </extension> <extension name="VK_KHR_deferred_host_operations" number="269" type="device" author="KHR" contact="Josh Barczak @jbarczak" supported="vulkan"> <require> <enum value="4" name="VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION"/> @@ -15219,10 +15379,12 @@ typedef void <name>CAMetalLayer</name>; <type name="PFN_vkDeviceMemoryReportCallbackEXT"/> </require> </extension> - <extension name="VK_EXT_extension_286" number="286" type="instance" author="EXT" contact="Drew DeVault [email protected]" supported="disabled"> + <extension name="VK_EXT_acquire_drm_display" number="286" type="instance" requires="VK_EXT_direct_mode_display" author="EXT" contact="Drew DeVault [email protected]" supported="vulkan"> <require> - <enum value="0" name="VK_EXT_EXTENSION_286_SPEC_VERSION"/> - <enum value=""VK_EXT_extension_286"" name="VK_EXT_extension_286"/> + <enum value="1" name="VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION"/> + <enum value=""VK_EXT_acquire_drm_display"" name="VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME"/> + <command name="vkAcquireDrmDisplayEXT"/> + <command name="vkGetDrmDisplayEXT"/> </require> </extension> <extension name="VK_EXT_robustness2" number="287" type="device" author="EXT" contact="Liam Middlebrook @liam-middlebrook" supported="vulkan"> @@ -15661,10 +15823,10 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_KHR_shader_subgroup_uniform_control_flow" number="324" type="device" requiresCore="1.1" author="KHR" contact="Alan Baker @alan-baker" supported="vulkan"> <require> - <enum value="1" name="VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION"/> - <enum value=""VK_KHR_shader_subgroup_uniform_control_flow"" name="VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME"/> - <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"/> - <type name="VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR"/> + <enum value="1" name="VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION"/> + <enum value=""VK_KHR_shader_subgroup_uniform_control_flow"" name="VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"/> + <type name="VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR"/> </require> </extension> <extension name="VK_KHR_extension_325" number="325" author="KHR" contact="Ralph Potter gitlab:@r_potter" supported="disabled"> @@ -15696,13 +15858,28 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdSetFragmentShadingRateEnumNV"/> </require> </extension> - <extension name="VK_NV_extension_328" number="328" author="NV" contact="Eric Werness @ewerness-nv" supported="disabled" requires="VK_KHR_acceleration_structure"> - <require> - <enum value="0" name="VK_NV_EXTENSION_328_SPEC_VERSION"/> - <enum value=""VK_NV_extension_328"" name="VK_NV_EXTENSION_328_EXTENSION_NAME"/> - <enum bitpos="5" extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_RESERVED_BIT_5_NV"/> - <enum bitpos="2" extends="VkAccelerationStructureCreateFlagBitsKHR" name="VK_ACCELERATION_STRUCTURE_CREATE_RESERVED_BIT_2_NV"/> - <enum bitpos="20" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RESERVED_BIT_20_NV"/> + <extension name="VK_NV_ray_tracing_motion_blur" number="328" type="device" + requires="VK_KHR_ray_tracing_pipeline" author="NV" contact="Eric Werness" supported="vulkan"> + <require> + <enum value="1" name="VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION"/> + <enum value=""VK_NV_ray_tracing_motion_blur"" name="VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"/> + <enum bitpos="5" extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV"/> + <enum bitpos="2" extends="VkAccelerationStructureCreateFlagBitsKHR" name="VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV"/> + <enum bitpos="20" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"/> + <type name="VkAccelerationStructureGeometryMotionTrianglesDataNV"/> + <type name="VkAccelerationStructureMotionInfoNV"/> + <type name="VkAccelerationStructureMotionInstanceNV"/> + <type name="VkAccelerationStructureMotionInstanceDataNV"/> + <type name="VkAccelerationStructureMatrixMotionInstanceNV"/> + <type name="VkAccelerationStructureSRTMotionInstanceNV"/> + <type name="VkSRTDataNV"/> + <type name="VkAccelerationStructureMotionInstanceTypeNV"/> + <type name="VkPhysicalDeviceRayTracingMotionBlurFeaturesNV"/> + <type name="VkAccelerationStructureMotionInfoFlagsNV"/> + <type name="VkAccelerationStructureMotionInstanceFlagsNV"/> </require> </extension> <extension name="VK_NV_extension_329" number="329" author="NV" contact="Pat Brown @nvpbrown" supported="disabled"> @@ -15915,10 +16092,14 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdSetVertexInputEXT"/> </require> </extension> - <extension name="VK_EXT_extension_354" number="354" author="EXT" contact="Simon Ser @emersion" supported="disabled"> + <extension name="VK_EXT_physical_device_drm" number="354" author="EXT" type="device" contact="Simon Ser @emersion" supported="vulkan" requires="VK_KHR_get_physical_device_properties2"> <require> - <enum value="0" name="VK_EXT_EXTENSION_354_SPEC_VERSION"/> - <enum value=""VK_EXT_extension_354"" name="VK_EXT_EXTENSION_354_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION"/> + <enum value=""VK_EXT_physical_device_drm"" name="VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME"/> + + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"/> + + <type name="VkPhysicalDeviceDrmPropertiesEXT"/> </require> </extension> <extension name="VK_EXT_extension_355" number="355" author="EXT" contact="Ralph Potter gitlab:@r_potter" supported="disabled"> @@ -16028,10 +16209,21 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="4" extends="VkDescriptorBindingFlagBits" name="VK_DESCRIPTOR_BINDING_RESERVED_4_BIT_QCOM"/> </require> </extension> - <extension name="VK_HUAWEI_extension_370" number="370" author="HUAWEI" contact="Hueilong Wang @wyvernathuawei" supported="disabled"> + <extension name="VK_HUAWEI_subpass_shading" number="370" type="device" author="HUAWEI" contact="Hueilong Wang @wyvernathuawei" requires="VK_KHR_create_renderpass2,VK_KHR_synchronization2" supported="vulkan"> <require> - <enum value="0" name="VK_HUAWEI_EXTENSION_370_SPEC_VERSION"/> - <enum value=""VK_HUAWEI_extension_370"" name="VK_HUAWEI_EXTENSION_370_EXTENSION_NAME"/> + <enum value="0" name="VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION"/> + <enum value=""VK_HUAWEI_subpass_shading"" name="VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SUBPASSS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"/> + <enum offset="3" extends="VkPipelineBindPoint" extnumber="370" name="VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI"/> + <enum bitpos="39" extends="VkPipelineStageFlagBits2KHR" name="VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI"/> + <enum bitpos="14" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"/> + <type name="VkSubpassShadingPipelineCreateInfoHUAWEI"/> + <type name="VkPhysicalDeviceSubpassShadingFeaturesHUAWEI"/> + <type name="VkPhysicalDeviceSubpassShadingPropertiesHUAWEI"/> + <command name="vkGetSubpassShadingMaxWorkgroupSizeHUAWEI"/> + <command name="vkCmdSubpassShadingHUAWEI"/> </require> </extension> <extension name="VK_HUAWEI_extension_371" number="371" author="HUAWEI" contact="Hueilong Wang @wyvernathuawei" supported="disabled"> @@ -16102,8 +16294,8 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdSetDepthBiasEnableEXT"/> <command name="vkCmdSetLogicOpEXT"/> <command name="vkCmdSetPrimitiveRestartEnableEXT"/> - </require> - </extension> + </require> + </extension> <extension name="VK_QNX_screen_surface" number="379" type="instance" requires="VK_KHR_surface" platform="screen" author="QNX" contact="Mike Gorchak @mgorchak-blackberry" supported="vulkan"> <require> <enum value="1" name="VK_QNX_SCREEN_SURFACE_SPEC_VERSION"/> @@ -16168,7 +16360,7 @@ typedef void <name>CAMetalLayer</name>; <enum value="0" name="VK_KHR_EXTENSION_387_SPEC_VERSION"/> <enum value=""VK_KHR_extension_387"" name="VK_KHR_EXTENSION_387_EXTENSION_NAME"/> </require> - </extension> + </extension> <extension name="VK_EXT_extension_388" number="388" author="EXT" contact="Alan Baker @alan-baker" supported="disabled"> <require> <enum value="0" name="VK_EXT_EXTENSION_388_SPEC_VERSION"/> @@ -16204,10 +16396,18 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_392"" name="VK_EXT_EXTENSION_392_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_MESA_multi_draw" number="393" author="MESA" contact="Mike Blumenkrantz @zmike" type="device" supported="disabled"> + <extension name="VK_EXT_multi_draw" number="393" author="EXT" contact="Mike Blumenkrantz @zmike" type="device" supported="vulkan"> <require> - <enum value="0" name="VK_MESA_MULTI_DRAW_SPEC_VERSION"/> - <enum value=""VK_MESA_multi_draw"" name="VK_MESA_MULTI_DRAW_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_MULTI_DRAW_SPEC_VERSION"/> + <enum value=""VK_EXT_multi_draw"" name="VK_EXT_MULTI_DRAW_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"/> + <type name="VkPhysicalDeviceMultiDrawFeaturesEXT"/> + <type name="VkPhysicalDeviceMultiDrawPropertiesEXT"/> + <command name="vkCmdDrawMultiEXT"/> + <command name="vkCmdDrawMultiIndexedEXT"/> + <type name="VkMultiDrawInfoEXT"/> + <type name="VkMultiDrawIndexedInfoEXT"/> </require> </extension> <extension name="VK_EXT_extension_394" number="394" author="EXT" contact="Mike Blumenkrantz @zmike" type="device" supported="disabled"> @@ -16871,6 +17071,9 @@ typedef void <name>CAMetalLayer</name>; <spirvcapability name="RayTracingNV"> <enable extension="VK_NV_ray_tracing"/> </spirvcapability> + <spirvcapability name="RayTracingMotionBlurNV"> + <enable struct="VkPhysicalDeviceRayTracingMotionBlurFeaturesNV" feature="rayTracingMotionBlur" requires="VK_NV_ray_tracing_motion_blur"/> + </spirvcapability> <spirvcapability name="TransformFeedback"> <enable struct="VkPhysicalDeviceTransformFeedbackFeaturesEXT" feature="transformFeedback" requires="VK_EXT_transform_feedback"/> </spirvcapability> |