diff options
author | Jason Ekstrand <[email protected]> | 2020-04-27 01:24:49 -0500 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-04-28 22:55:25 +0000 |
commit | 118f045fb7d1c6520e808317235c175833237631 (patch) | |
tree | 8cb45e16d6062776d011635b1ce24ad1cfe2a2df /src/vulkan/registry | |
parent | 76d2772472037b2b9922f748170bebbce0b2a1de (diff) |
vulkan: Update Vulkan XML and headers to 1.2.139
Acked-by: Caio Marcelo de Oliveira Filho <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4767>
Diffstat (limited to 'src/vulkan/registry')
-rw-r--r-- | src/vulkan/registry/vk.xml | 1628 |
1 files changed, 1213 insertions, 415 deletions
diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 71724b46580..1efa4242359 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -57,6 +57,7 @@ server. <platform name="metal" protect="VK_USE_PLATFORM_METAL_EXT" comment="Metal on CoreAnimation on Apple platforms"/> <platform name="fuchsia" protect="VK_USE_PLATFORM_FUCHSIA" comment="Fuchsia"/> <platform name="ggp" protect="VK_USE_PLATFORM_GGP" comment="Google Games Platform"/> + <platform name="provisional" protect="VK_ENABLE_BETA_EXTENSIONS" comment="Enable declarations for beta/provisional extensions"/> </platforms> <tags comment="Vulkan vendor/author tags for extensions and layers"> @@ -156,7 +157,9 @@ server. <type category="define">// Vulkan 1.2 version number #define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_VERSION</type>(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> 133</type> +#define <name>VK_HEADER_VERSION</name> 139</type> + <type category="define" requires="VK_HEADER_VERSION">// Complete version of this file +#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_VERSION</type>(1, 2, VK_HEADER_VERSION)</type> <type category="define"> #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type> @@ -208,7 +211,7 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkRenderPassCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkRenderPassCreateFlags</name>;</type> <type requires="VkSamplerCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSamplerCreateFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineLayoutCreateFlags</name>;</type> - <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCacheCreateFlags</name>;</type> + <type requires="VkPipelineCacheCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCacheCreateFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDepthStencilStateCreateFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDynamicStateCreateFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineColorBlendStateCreateFlags</name>;</type> @@ -262,12 +265,14 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorPoolResetFlags</name>;</type> <type requires="VkDependencyFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDependencyFlags</name>;</type> <type requires="VkSubgroupFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSubgroupFeatureFlags</name>;</type> - <type requires="VkIndirectCommandsLayoutUsageFlagBitsNVX" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectCommandsLayoutUsageFlagsNVX</name>;</type> - <type requires="VkObjectEntryUsageFlagBitsNVX" category="bitmask">typedef <type>VkFlags</type> <name>VkObjectEntryUsageFlagsNVX</name>;</type> - <type requires="VkGeometryFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryFlagsNV</name>;</type> - <type requires="VkGeometryInstanceFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryInstanceFlagsNV</name>;</type> - <type requires="VkBuildAccelerationStructureFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkBuildAccelerationStructureFlagsNV</name>;</type> - + <type requires="VkIndirectCommandsLayoutUsageFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectCommandsLayoutUsageFlagsNV</name>;</type> + <type requires="VkIndirectStateFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectStateFlagsNV</name>;</type> + <type requires="VkGeometryFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryFlagsKHR</name>;</type> + <type category="bitmask" name="VkGeometryFlagsNV" alias="VkGeometryFlagsKHR"/> + <type requires="VkGeometryInstanceFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryInstanceFlagsKHR</name>;</type> + <type category="bitmask" name="VkGeometryInstanceFlagsNV" alias="VkGeometryInstanceFlagsKHR"/> + <type requires="VkBuildAccelerationStructureFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkBuildAccelerationStructureFlagsKHR</name>;</type> + <type category="bitmask" name="VkBuildAccelerationStructureFlagsNV" alias="VkBuildAccelerationStructureFlagsKHR"/> <type category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorUpdateTemplateCreateFlags</name>;</type> <type category="bitmask" name="VkDescriptorUpdateTemplateCreateFlagsKHR" alias="VkDescriptorUpdateTemplateCreateFlags"/> <type requires="VkPipelineCreationFeedbackFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCreationFeedbackFlagsEXT</name>;</type> @@ -277,6 +282,7 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask" name="VkSemaphoreWaitFlagsKHR" alias="VkSemaphoreWaitFlags"/> <type requires="VkPipelineCompilerControlFlagBitsAMD" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCompilerControlFlagsAMD</name>;</type> <type requires="VkShaderCorePropertiesFlagBitsAMD" category="bitmask">typedef <type>VkFlags</type> <name>VkShaderCorePropertiesFlagsAMD</name>;</type> + <type requires="VkDeviceDiagnosticsConfigFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceDiagnosticsConfigFlagsNV</name>;</type> <comment>WSI extensions</comment> <type requires="VkCompositeAlphaFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkCompositeAlphaFlagsKHR</name>;</type> @@ -372,19 +378,20 @@ typedef void <name>CAMetalLayer</name>; <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkFramebuffer</name>)</type> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkRenderPass</name>)</type> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPipelineCache</name>)</type> - <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkObjectTableNVX</name>)</type> - <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkIndirectCommandsLayoutNVX</name>)</type> + <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkIndirectCommandsLayoutNV</name>)</type> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDescriptorUpdateTemplate</name>)</type> <type category="handle" name="VkDescriptorUpdateTemplateKHR" alias="VkDescriptorUpdateTemplate"/> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSamplerYcbcrConversion</name>)</type> <type category="handle" name="VkSamplerYcbcrConversionKHR" alias="VkSamplerYcbcrConversion"/> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkValidationCacheEXT</name>)</type> - <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureNV</name>)</type> + <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureKHR</name>)</type> + <type category="handle" name="VkAccelerationStructureNV" alias="VkAccelerationStructureKHR"/> <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPerformanceConfigurationINTEL</name>)</type> + <type category="handle" parent="VkDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDeferredOperationKHR</name>)</type> <comment>WSI extensions</comment> - <type category="handle"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayKHR</name>)</type> - <type category="handle" parent="VkPhysicalDevice,VkDisplayKHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayModeKHR</name>)</type> + <type category="handle" parent="VkPhysicalDevice"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayKHR</name>)</type> + <type category="handle" parent="VkDisplayKHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayModeKHR</name>)</type> <type category="handle" parent="VkInstance"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSurfaceKHR</name>)</type> <type category="handle" parent="VkSurfaceKHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSwapchainKHR</name>)</type> <type category="handle" parent="VkInstance"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDebugReportCallbackEXT</name>)</type> @@ -481,10 +488,9 @@ typedef void <name>CAMetalLayer</name>; <type name="VkObjectType" category="enum"/> <comment>Extensions</comment> - <type name="VkIndirectCommandsLayoutUsageFlagBitsNVX" category="enum"/> - <type name="VkIndirectCommandsTokenTypeNVX" category="enum"/> - <type name="VkObjectEntryUsageFlagBitsNVX" category="enum"/> - <type name="VkObjectEntryTypeNVX" category="enum"/> + <type name="VkIndirectCommandsLayoutUsageFlagBitsNV" category="enum"/> + <type name="VkIndirectCommandsTokenTypeNV" category="enum"/> + <type name="VkIndirectStateFlagBitsNV" category="enum"/> <type name="VkDescriptorUpdateTemplateType" category="enum"/> <type category="enum" name="VkDescriptorUpdateTemplateTypeKHR" alias="VkDescriptorUpdateTemplateType"/> <type name="VkViewportCoordinateSwizzleNV" category="enum"/> @@ -506,17 +512,27 @@ typedef void <name>CAMetalLayer</name>; <type name="VkConditionalRenderingFlagBitsEXT" category="enum"/> <type name="VkSemaphoreType" category="enum"/> <type category="enum" name="VkSemaphoreTypeKHR" alias="VkSemaphoreType"/> - <type name="VkGeometryFlagBitsNV" category="enum"/> - <type name="VkGeometryInstanceFlagBitsNV" category="enum"/> - <type name="VkBuildAccelerationStructureFlagBitsNV" category="enum"/> - <type name="VkCopyAccelerationStructureModeNV" category="enum"/> - <type name="VkAccelerationStructureTypeNV" category="enum"/> - <type name="VkGeometryTypeNV" category="enum"/> - <type name="VkRayTracingShaderGroupTypeNV" category="enum"/> - <type name="VkAccelerationStructureMemoryRequirementsTypeNV" category="enum"/> + <type name="VkGeometryFlagBitsKHR" category="enum"/> + <type category="enum" name="VkGeometryFlagBitsNV" alias="VkGeometryFlagBitsKHR"/> + <type name="VkGeometryInstanceFlagBitsKHR" category="enum"/> + <type category="enum" name="VkGeometryInstanceFlagBitsNV" alias="VkGeometryInstanceFlagBitsKHR"/> + <type name="VkBuildAccelerationStructureFlagBitsKHR" category="enum"/> + <type category="enum" name="VkBuildAccelerationStructureFlagBitsNV" alias="VkBuildAccelerationStructureFlagBitsKHR"/> + <type name="VkCopyAccelerationStructureModeKHR" category="enum"/> + <type category="enum" name="VkCopyAccelerationStructureModeNV" alias="VkCopyAccelerationStructureModeKHR"/> + <type name="VkAccelerationStructureTypeKHR" category="enum"/> + <type category="enum" name="VkAccelerationStructureTypeNV" alias="VkAccelerationStructureTypeKHR"/> + <type name="VkGeometryTypeKHR" category="enum"/> + <type category="enum" name="VkGeometryTypeNV" alias="VkGeometryTypeKHR"/> + <type name="VkRayTracingShaderGroupTypeKHR" category="enum"/> + <type category="enum" name="VkRayTracingShaderGroupTypeNV" alias="VkRayTracingShaderGroupTypeKHR"/> + <type name="VkAccelerationStructureMemoryRequirementsTypeKHR" category="enum"/> + <type category="enum" name="VkAccelerationStructureMemoryRequirementsTypeNV" alias="VkAccelerationStructureMemoryRequirementsTypeKHR"/> + <type name="VkAccelerationStructureBuildTypeKHR" category="enum"/> <type name="VkMemoryOverallocationBehaviorAMD" category="enum"/> <type name="VkScopeNV" category="enum"/> <type name="VkComponentTypeNV" category="enum"/> + <type name="VkDeviceDiagnosticsConfigFlagBitsNV" category="enum"/> <type name="VkPipelineCreationFeedbackFlagBitsEXT" category="enum"/> <type name="VkPerformanceCounterScopeKHR" category="enum"/> <type name="VkPerformanceCounterUnitKHR" category="enum"/> @@ -831,7 +847,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkDeviceSize</type> <name>maxResourceSize</name><comment>max size (in bytes) of this resource type</comment></member> </type> <type category="struct" name="VkDescriptorBufferInfo"> - <member><type>VkBuffer</type> <name>buffer</name><comment>Buffer used for this descriptor slot.</comment></member> + <member optional="true"><type>VkBuffer</type> <name>buffer</name><comment>Buffer used for this descriptor slot.</comment></member> <member><type>VkDeviceSize</type> <name>offset</name><comment>Base offset from buffer start in bytes to update in the descriptor set.</comment></member> <member><type>VkDeviceSize</type> <name>range</name><comment>Size in bytes of the buffer resource for this descriptor update.</comment></member> </type> @@ -1559,7 +1575,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true"><type>VkSampleCountFlags</type> <name>framebufferColorSampleCounts</name><comment>supported color sample counts for a framebuffer</comment></member> <member optional="true"><type>VkSampleCountFlags</type> <name>framebufferDepthSampleCounts</name><comment>supported depth sample counts for a framebuffer</comment></member> <member optional="true"><type>VkSampleCountFlags</type> <name>framebufferStencilSampleCounts</name><comment>supported stencil sample counts for a framebuffer</comment></member> - <member optional="true"><type>VkSampleCountFlags</type> <name>framebufferNoAttachmentsSampleCounts</name><comment>supported sample counts for a framebuffer with no attachments</comment></member> + <member optional="true"><type>VkSampleCountFlags</type> <name>framebufferNoAttachmentsSampleCounts</name><comment>supported sample counts for a subpass which uses no attachments</comment></member> <member><type>uint32_t</type> <name>maxColorAttachments</name><comment>max number of color attachments per subpass</comment></member> <member optional="true"><type>VkSampleCountFlags</type> <name>sampledImageColorSampleCounts</name><comment>supported color sample counts for a non-integer sampled image</comment></member> <member optional="true"><type>VkSampleCountFlags</type> <name>sampledImageIntegerSampleCounts</name><comment>supported sample counts for an integer image</comment></member> @@ -1895,105 +1911,111 @@ typedef void <name>CAMetalLayer</name>; <member len="releaseCount">const <type>VkDeviceMemory</type>* <name>pReleaseSyncs</name></member> <member len="releaseCount">const <type>uint64_t</type>* <name>pReleaseKeys</name></member> </type> - <type category="struct" name="VkDeviceGeneratedCommandsFeaturesNVX"> - <member values="VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkBool32</type> <name>computeBindingPointSupport</name></member> - </type> - <type category="struct" name="VkDeviceGeneratedCommandsLimitsNVX"> - <member values="VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>uint32_t</type> <name>maxIndirectCommandsLayoutTokenCount</name></member> - <member><type>uint32_t</type> <name>maxObjectEntryCounts</name></member> - <member><type>uint32_t</type> <name>minSequenceCountBufferOffsetAlignment</name></member> - <member><type>uint32_t</type> <name>minSequenceIndexBufferOffsetAlignment</name></member> - <member><type>uint32_t</type> <name>minCommandsTokenBufferOffsetAlignment</name></member> - </type> - <type category="struct" name="VkIndirectCommandsTokenNVX"> - <member><type>VkIndirectCommandsTokenTypeNVX</type> <name>tokenType</name></member> - <member><type>VkBuffer</type> <name>buffer</name><comment>buffer containing tableEntries and additional data for indirectCommands</comment></member> - <member><type>VkDeviceSize</type> <name>offset</name><comment>offset from the base address of the buffer</comment></member> - </type> - <type category="struct" name="VkIndirectCommandsLayoutTokenNVX"> - <member><type>VkIndirectCommandsTokenTypeNVX</type> <name>tokenType</name></member> - <member><type>uint32_t</type> <name>bindingUnit</name><comment>Binding unit for vertex attribute / descriptor set, offset for pushconstants</comment></member> - <member><type>uint32_t</type> <name>dynamicCount</name><comment>Number of variable dynamic values for descriptor set / push constants</comment></member> - <member><type>uint32_t</type> <name>divisor</name><comment>Rate the which the array is advanced per element (must be power of 2, minimum 1)</comment></member> - </type> - <type category="struct" name="VkIndirectCommandsLayoutCreateInfoNVX"> - <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> - <member><type>VkIndirectCommandsLayoutUsageFlagsNVX</type> <name>flags</name></member> - <member><type>uint32_t</type> <name>tokenCount</name></member> - <member len="tokenCount">const <type>VkIndirectCommandsLayoutTokenNVX</type>* <name>pTokens</name></member> - </type> - <type category="struct" name="VkCmdProcessCommandsInfoNVX"> - <member values="VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member externsync="true"><type>VkObjectTableNVX</type> <name>objectTable</name></member> - <member><type>VkIndirectCommandsLayoutNVX</type> <name>indirectCommandsLayout</name></member> - <member><type>uint32_t</type> <name>indirectCommandsTokenCount</name></member> - <member len="indirectCommandsTokenCount">const <type>VkIndirectCommandsTokenNVX</type>* <name>pIndirectCommandsTokens</name></member> - <member><type>uint32_t</type> <name>maxSequencesCount</name></member> - <member optional="true" externsync="true"><type>VkCommandBuffer</type> <name>targetCommandBuffer</name></member> - <member optional="true"><type>VkBuffer</type> <name>sequencesCountBuffer</name></member> - <member optional="true"><type>VkDeviceSize</type> <name>sequencesCountOffset</name></member> - <member optional="true"><type>VkBuffer</type> <name>sequencesIndexBuffer</name></member> - <member optional="true"><type>VkDeviceSize</type> <name>sequencesIndexOffset</name></member> - </type> - <type category="struct" name="VkCmdReserveSpaceForCommandsInfoNVX"> - <member values="VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member externsync="true"><type>VkObjectTableNVX</type> <name>objectTable</name></member> - <member><type>VkIndirectCommandsLayoutNVX</type> <name>indirectCommandsLayout</name></member> - <member><type>uint32_t</type> <name>maxSequencesCount</name></member> + <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"><type>VkStructureType</type><name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>deviceGeneratedCommands</name></member> </type> - <type category="struct" name="VkObjectTableCreateInfoNVX"> - <member values="VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>uint32_t</type> <name>objectCount</name></member> - <member len="objectCount">const <type>VkObjectEntryTypeNVX</type>* <name>pObjectEntryTypes</name></member> - <member len="objectCount">const <type>uint32_t</type>* <name>pObjectEntryCounts</name></member> - <member len="objectCount">const <type>VkObjectEntryUsageFlagsNVX</type>* <name>pObjectEntryUsageFlags</name></member> - - <member><type>uint32_t</type> <name>maxUniformBuffersPerDescriptor</name></member> - <member><type>uint32_t</type> <name>maxStorageBuffersPerDescriptor</name></member> - <member><type>uint32_t</type> <name>maxStorageImagesPerDescriptor</name></member> - <member><type>uint32_t</type> <name>maxSampledImagesPerDescriptor</name></member> - <member><type>uint32_t</type> <name>maxPipelineLayouts</name></member> - </type> - <type category="struct" name="VkObjectTableEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - </type> - <type category="struct" name="VkObjectTablePipelineEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - <member><type>VkPipeline</type> <name>pipeline</name></member> - </type> - <type category="struct" name="VkObjectTableDescriptorSetEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - <member><type>VkPipelineLayout</type> <name>pipelineLayout</name></member> - <member><type>VkDescriptorSet</type> <name>descriptorSet</name></member> - </type> - <type category="struct" name="VkObjectTableVertexBufferEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - <member><type>VkBuffer</type> <name>buffer</name></member> - </type> - <type category="struct" name="VkObjectTableIndexBufferEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - <member><type>VkBuffer</type> <name>buffer</name></member> - <member><type>VkIndexType</type> <name>indexType</name></member> - </type> - <type category="struct" name="VkObjectTablePushConstantEntryNVX"> - <member><type>VkObjectEntryTypeNVX</type> <name>type</name></member> - <member><type>VkObjectEntryUsageFlagsNVX</type> <name>flags</name></member> - <member><type>VkPipelineLayout</type> <name>pipelineLayout</name></member> - <member><type>VkShaderStageFlags</type> <name>stageFlags</name></member> + <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxGraphicsShaderGroupCount</name></member> + <member><type>uint32_t</type> <name>maxIndirectSequenceCount</name></member> + <member><type>uint32_t</type> <name>maxIndirectCommandsTokenCount</name></member> + <member><type>uint32_t</type> <name>maxIndirectCommandsStreamCount</name></member> + <member><type>uint32_t</type> <name>maxIndirectCommandsTokenOffset</name></member> + <member><type>uint32_t</type> <name>maxIndirectCommandsStreamStride</name></member> + <member><type>uint32_t</type> <name>minSequencesCountBufferOffsetAlignment</name></member> + <member><type>uint32_t</type> <name>minSequencesIndexBufferOffsetAlignment</name></member> + <member><type>uint32_t</type> <name>minIndirectCommandsBufferOffsetAlignment</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>const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>stageCount</name></member> + <member len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name></member> + <member noautovalidity="true" optional="true">const <type>VkPipelineVertexInputStateCreateInfo</type>* <name>pVertexInputState</name></member> + <member noautovalidity="true" optional="true">const <type>VkPipelineTessellationStateCreateInfo</type>* <name>pTessellationState</name></member> + </type> + <type category="struct" name="VkGraphicsPipelineShaderGroupsCreateInfoNV" structextends="VkGraphicsPipelineCreateInfo"> + <member values="VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>groupCount</name></member> + <member len="groupCount">const <type>VkGraphicsShaderGroupCreateInfoNV</type>* <name>pGroups</name></member> + <member optional="true"><type>uint32_t</type> <name>pipelineCount</name></member> + <member len="pipelineCount">const <type>VkPipeline</type>* <name>pPipelines</name></member> + </type> + <type category="struct" name="VkBindShaderGroupIndirectCommandNV"> + <member><type>uint32_t</type> <name>groupIndex</name></member> + </type> + <type category="struct" name="VkBindIndexBufferIndirectCommandNV"> + <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> + <member><type>uint32_t</type> <name>size</name></member> + <member><type>VkIndexType</type> <name>indexType</name></member> + </type> + <type category="struct" name="VkBindVertexBufferIndirectCommandNV"> + <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> + <member><type>uint32_t</type> <name>size</name></member> + <member><type>uint32_t</type> <name>stride</name></member> + </type> + <type category="struct" name="VkSetStateFlagsIndirectCommandNV"> + <member><type>uint32_t</type> <name>data</name></member> + </type> + <type category="struct" name="VkIndirectCommandsStreamNV"> + <member><type>VkBuffer</type> <name>buffer</name></member> + <member><type>VkDeviceSize</type> <name>offset</name></member> + </type> + <type category="struct" name="VkIndirectCommandsLayoutTokenNV"> + <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkIndirectCommandsTokenTypeNV</type> <name>tokenType</name></member> + <member><type>uint32_t</type> <name>stream</name></member> + <member><type>uint32_t</type> <name>offset</name></member> + <member><type>uint32_t</type> <name>vertexBindingUnit</name></member> + <member><type>VkBool32</type> <name>vertexDynamicStride</name></member> + <member optional="true"><type>VkPipelineLayout</type> <name>pushconstantPipelineLayout</name></member> + <member optional="true"><type>VkShaderStageFlags</type> <name>pushconstantShaderStageFlags</name></member> + <member><type>uint32_t</type> <name>pushconstantOffset</name></member> + <member><type>uint32_t</type> <name>pushconstantSize</name></member> + <member optional="true"><type>VkIndirectStateFlagsNV</type> <name>indirectStateFlags</name></member> + <member optional="true"><type>uint32_t</type> <name>indexTypeCount</name></member> + <member len="indexTypeCount">const <type>VkIndexType</type>* <name>pIndexTypes</name></member> + <member len="indexTypeCount">const <type>uint32_t</type>* <name>pIndexTypeValues</name></member> + </type> + <type category="struct" name="VkIndirectCommandsLayoutCreateInfoNV"> + <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkIndirectCommandsLayoutUsageFlagsNV</type> <name>flags</name></member> + <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> + <member><type>uint32_t</type> <name>tokenCount</name></member> + <member len="tokenCount">const <type>VkIndirectCommandsLayoutTokenNV</type>* <name>pTokens</name></member> + <member><type>uint32_t</type> <name>streamCount</name></member> + <member len="streamCount">const <type>uint32_t</type>* <name>pStreamStrides</name></member> + </type> + <type category="struct" name="VkGeneratedCommandsInfoNV"> + <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> + <member><type>VkPipeline</type> <name>pipeline</name></member> + <member><type>VkIndirectCommandsLayoutNV</type> <name>indirectCommandsLayout</name></member> + <member><type>uint32_t</type> <name>streamCount</name></member> + <member len="streamCount">const <type>VkIndirectCommandsStreamNV</type>* <name>pStreams</name></member> + <member><type>uint32_t</type> <name>sequencesCount</name></member> + <member><type>VkBuffer</type> <name>preprocessBuffer</name></member> + <member><type>VkDeviceSize</type> <name>preprocessOffset</name></member> + <member><type>VkDeviceSize</type> <name>preprocessSize</name></member> + <member optional="true"><type>VkBuffer</type> <name>sequencesCountBuffer</name></member> + <member optional="true"><type>VkDeviceSize</type> <name>sequencesCountOffset</name></member> + <member optional="true"><type>VkBuffer</type> <name>sequencesIndexBuffer</name></member> + <member optional="true"><type>VkDeviceSize</type> <name>sequencesIndexOffset</name></member> + </type> + <type category="struct" name="VkGeneratedCommandsMemoryRequirementsInfoNV"> + <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> + <member><type>VkPipeline</type> <name>pipeline</name></member> + <member><type>VkIndirectCommandsLayoutNV</type> <name>indirectCommandsLayout</name></member> + <member><type>uint32_t</type> <name>maxSequencesCount</name></member> </type> <type category="struct" name="VkPhysicalDeviceFeatures2" structextends="VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"><type>VkStructureType</type> <name>sType</name></member> @@ -3702,12 +3724,22 @@ typedef void <name>CAMetalLayer</name>; <type category="struct" name="VkRayTracingShaderGroupCreateInfoNV"> <member values="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkRayTracingShaderGroupTypeNV</type> <name>type</name></member> + <member><type>VkRayTracingShaderGroupTypeKHR</type> <name>type</name></member> <member><type>uint32_t</type> <name>generalShader</name></member> <member><type>uint32_t</type> <name>closestHitShader</name></member> <member><type>uint32_t</type> <name>anyHitShader</name></member> <member><type>uint32_t</type> <name>intersectionShader</name></member> </type> + <type category="struct" name="VkRayTracingShaderGroupCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkRayTracingShaderGroupTypeKHR</type> <name>type</name></member> + <member><type>uint32_t</type> <name>generalShader</name></member> + <member><type>uint32_t</type> <name>closestHitShader</name></member> + <member><type>uint32_t</type> <name>anyHitShader</name></member> + <member><type>uint32_t</type> <name>intersectionShader</name></member> + <member optional="true">const <type>void</type>* <name>pShaderGroupCaptureReplayHandle</name></member> + </type> <type category="struct" name="VkRayTracingPipelineCreateInfoNV"> <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> @@ -3721,6 +3753,21 @@ typedef void <name>CAMetalLayer</name>; <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of</comment></member> <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of</comment></member> </type> + <type category="struct" name="VkRayTracingPipelineCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>VkPipelineCreateFlags</type> <name>flags</name><comment>Pipeline creation flags</comment></member> + <member optional="true"><type>uint32_t</type> <name>stageCount</name></member> + <member len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name><comment>One entry for each active shader stage</comment></member> + <member optional="true"><type>uint32_t</type> <name>groupCount</name></member> + <member len="groupCount">const <type>VkRayTracingShaderGroupCreateInfoKHR</type>* <name>pGroups</name></member> + <member><type>uint32_t</type> <name>maxRecursionDepth</name></member> + <member><type>VkPipelineLibraryCreateInfoKHR</type> <name>libraries</name></member> + <member optional="true">const <type>VkRayTracingPipelineInterfaceCreateInfoKHR</type>* <name>pLibraryInterface</name></member> + <member><type>VkPipelineLayout</type> <name>layout</name><comment>Interface layout of the pipeline</comment></member> + <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of</comment></member> + <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of</comment></member> + </type> <type category="struct" name="VkGeometryTrianglesNV"> <member values="VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> @@ -3750,16 +3797,16 @@ typedef void <name>CAMetalLayer</name>; </type> <type category="struct" name="VkGeometryNV"> <member values="VK_STRUCTURE_TYPE_GEOMETRY_NV"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkGeometryTypeNV</type> <name>geometryType</name></member> - <member><type>VkGeometryDataNV</type> <name>geometry</name></member> - <member optional="true"><type>VkGeometryFlagsNV</type> <name>flags</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkGeometryTypeKHR</type> <name>geometryType</name></member> + <member><type>VkGeometryDataNV</type> <name>geometry</name></member> + <member optional="true"><type>VkGeometryFlagsKHR</type> <name>flags</name></member> </type> <type category="struct" name="VkAccelerationStructureInfoNV"> <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkAccelerationStructureTypeNV</type> <name>type</name></member> - <member optional="true"><type>VkBuildAccelerationStructureFlagsNV</type><name>flags</name></member> + <member noautovalidity="true" optional="true"><type>VkBuildAccelerationStructureFlagsNV</type><name>flags</name></member> <member optional="true"><type>uint32_t</type> <name>instanceCount</name></member> <member optional="true"><type>uint32_t</type> <name>geometryCount</name></member> <member len="geometryCount">const <type>VkGeometryNV</type>* <name>pGeometries</name></member> @@ -3770,26 +3817,61 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkDeviceSize</type> <name>compactedSize</name></member> <member><type>VkAccelerationStructureInfoNV</type> <name>info</name></member> </type> - <type category="struct" name="VkBindAccelerationStructureMemoryInfoNV"> - <member values="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <type category="struct" name="VkBindAccelerationStructureMemoryInfoKHR"> + <member values="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></member> <member><type>VkDeviceMemory</type> <name>memory</name></member> <member><type>VkDeviceSize</type> <name>memoryOffset</name></member> <member optional="true"><type>uint32_t</type> <name>deviceIndexCount</name></member> <member len="deviceIndexCount">const <type>uint32_t</type>* <name>pDeviceIndices</name></member> </type> - <type category="struct" name="VkWriteDescriptorSetAccelerationStructureNV" structextends="VkWriteDescriptorSet"> - <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"><type>VkStructureType</type> <name>sType</name></member> + <type category="struct" name="VkBindAccelerationStructureMemoryInfoNV" alias="VkBindAccelerationStructureMemoryInfoKHR"/> + <type category="struct" name="VkWriteDescriptorSetAccelerationStructureKHR" structextends="VkWriteDescriptorSet"> + <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>accelerationStructureCount</name></member> - <member len="accelerationStructureCount">const <type>VkAccelerationStructureNV</type>* <name>pAccelerationStructures</name></member> + <member len="accelerationStructureCount">const <type>VkAccelerationStructureKHR</type>* <name>pAccelerationStructures</name></member> + </type> + <type category="struct" name="VkWriteDescriptorSetAccelerationStructureNV" alias="VkWriteDescriptorSetAccelerationStructureKHR"/> + <type category="struct" name="VkAccelerationStructureMemoryRequirementsInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkAccelerationStructureMemoryRequirementsTypeKHR</type> <name>type</name></member> + <member><type>VkAccelerationStructureBuildTypeKHR</type> <name>buildType</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></member> </type> <type category="struct" name="VkAccelerationStructureMemoryRequirementsInfoNV"> <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkAccelerationStructureMemoryRequirementsTypeNV</type> <name>type</name></member> - <member><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></member> + <member><type>VkAccelerationStructureMemoryRequirementsTypeNV</type> <name>type</name></member> + <member><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceRayTracingFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>rayTracing</name></member> + <member><type>VkBool32</type> <name>rayTracingShaderGroupHandleCaptureReplay</name></member> + <member><type>VkBool32</type> <name>rayTracingShaderGroupHandleCaptureReplayMixed</name></member> + <member><type>VkBool32</type> <name>rayTracingAccelerationStructureCaptureReplay</name></member> + <member><type>VkBool32</type> <name>rayTracingIndirectTraceRays</name></member> + <member><type>VkBool32</type> <name>rayTracingIndirectAccelerationStructureBuild</name></member> + <member><type>VkBool32</type> <name>rayTracingHostAccelerationStructureCommands</name></member> + <member><type>VkBool32</type> <name>rayQuery</name></member> + <member><type>VkBool32</type> <name>rayTracingPrimitiveCulling</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceRayTracingPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>shaderGroupHandleSize</name></member> + <member><type>uint32_t</type> <name>maxRecursionDepth</name></member> + <member><type>uint32_t</type> <name>maxShaderGroupStride</name></member> + <member><type>uint32_t</type> <name>shaderGroupBaseAlignment</name></member> + <member><type>uint64_t</type> <name>maxGeometryCount</name></member> + <member><type>uint64_t</type> <name>maxInstanceCount</name></member> + <member><type>uint64_t</type> <name>maxPrimitiveCount</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetAccelerationStructures</name></member> + <member><type>uint32_t</type> <name>shaderGroupHandleCaptureReplaySize</name></member> </type> <type category="struct" name="VkPhysicalDeviceRayTracingPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> @@ -3803,6 +3885,17 @@ typedef void <name>CAMetalLayer</name>; <member><type>uint64_t</type> <name>maxTriangleCount</name></member> <member><type>uint32_t</type> <name>maxDescriptorSetAccelerationStructures</name></member> </type> + <type category="struct" name="VkStridedBufferRegionKHR"> + <member optional="true"><type>VkBuffer</type> <name>buffer</name></member> + <member><type>VkDeviceSize</type> <name>offset</name></member> + <member><type>VkDeviceSize</type> <name>stride</name></member> + <member><type>VkDeviceSize</type> <name>size</name></member> + </type> + <type category="struct" name="VkTraceRaysIndirectCommandKHR"> + <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="VkDrmFormatModifierPropertiesListEXT" returnedonly="true" structextends="VkFormatProperties2"> <member values="VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"><type>VkStructureType</type> <name>sType</name></member> <member><type>void</type>* <name>pNext</name></member> @@ -4031,6 +4124,12 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkDescriptorType</type> <name>descriptorType</name></member> <member optional="true"><type>VkSampler</type> <name>sampler</name></member> </type> + <type category="struct" name="VkImageViewAddressPropertiesNVX" returnedonly="true"> + <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>VkDeviceAddress</type> <name>deviceAddress</name></member> + <member><type>VkDeviceSize</type> <name>size</name></member> + </type> <type category="struct" name="VkPresentFrameTokenGGP" structextends="VkPresentInfoKHR"> <member values="VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> @@ -4040,7 +4139,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkPipelineCreationFeedbackFlagsEXT</type> <name>flags</name></member> <member><type>uint64_t</type> <name>duration</name></member> </type> - <type category="struct" name="VkPipelineCreationFeedbackCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkRayTracingPipelineCreateInfoNV"> + <type category="struct" name="VkPipelineCreationFeedbackCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkRayTracingPipelineCreateInfoNV,VkRayTracingPipelineCreateInfoKHR"> <member values="VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkPipelineCreationFeedbackEXT</type>* <name>pPipelineCreationFeedback</name><comment>Output pipeline creation feedback.</comment></member> @@ -4148,7 +4247,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>uint64_t</type> <name>value64</name></member> <member><type>float</type> <name>valueFloat</name></member> <member><type>VkBool32</type> <name>valueBool</name></member> - <member>const <type>char</type>* <name>valueString</name></member> + <member len="null-terminated">const <type>char</type>* <name>valueString</name></member> </type> <type category="struct" name="VkPerformanceValueINTEL"> <member><type>VkPerformanceValueTypeINTEL</type> <name>type</name></member> @@ -4159,11 +4258,12 @@ typedef void <name>CAMetalLayer</name>; <member>const <type>void</type>* <name>pNext</name></member> <member optional="false"><type>void</type>* <name>pUserData</name></member> </type> - <type category="struct" name="VkQueryPoolCreateInfoINTEL"> - <member values="VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> + <type category="struct" name="VkQueryPoolPerformanceQueryCreateInfoINTEL" structextends="VkQueryPoolCreateInfo"> + <member values="VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkQueryPoolSamplingModeINTEL</type> <name>performanceCountersSampling</name></member> </type> + <type category="struct" name="VkQueryPoolCreateInfoINTEL" alias="VkQueryPoolPerformanceQueryCreateInfoINTEL"/> <type category="struct" name="VkPerformanceMarkerInfoINTEL"> <member values="VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> @@ -4353,6 +4453,11 @@ typedef void <name>CAMetalLayer</name>; <member optional="true"><type>uint32_t</type> <name>lineStippleFactor</name></member> <member optional="true"><type>uint16_t</type> <name>lineStipplePattern</name></member> </type> + <type category="struct" name="VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>pipelineCreationCacheControl</name></member> + </type> <type category="struct" name="VkPhysicalDeviceVulkan11Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES"><type>VkStructureType</type><name>sType</name></member> <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> @@ -4369,7 +4474,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkBool32</type> <name>samplerYcbcrConversion</name><comment>Sampler color conversion supported</comment></member> <member><type>VkBool32</type> <name>shaderDrawParameters</name></member> </type> - <type category="struct" name="VkPhysicalDeviceVulkan11Properties" structextends="VkPhysicalDeviceProperties2"> + <type category="struct" name="VkPhysicalDeviceVulkan11Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES"><type>VkStructureType</type><name>sType</name></member> <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> <member><type>uint8_t</type> <name>deviceUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> @@ -4439,7 +4544,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkBool32</type> <name>shaderOutputLayer</name></member> <member><type>VkBool32</type> <name>subgroupBroadcastDynamicId</name></member> </type> - <type category="struct" name="VkPhysicalDeviceVulkan12Properties" structextends="VkPhysicalDeviceProperties2"> + <type category="struct" name="VkPhysicalDeviceVulkan12Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES"><type>VkStructureType</type><name>sType</name></member> <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> <member><type>VkDriverId</type> <name>driverID</name></member> @@ -4514,6 +4619,193 @@ typedef void <name>CAMetalLayer</name>; <member><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> <member><type>char</type> <name>layer</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]</member> </type> + <type category="union" name="VkDeviceOrHostAddressKHR"> + <member noautovalidity="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> + <member noautovalidity="true"><type>void</type>* <name>hostAddress</name></member> + </type> + <type category="union" name="VkDeviceOrHostAddressConstKHR"> + <member noautovalidity="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> + <member noautovalidity="true">const <type>void</type>* <name>hostAddress</name></member> + </type> + <type category="struct" name="VkAccelerationStructureGeometryTrianglesDataKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkFormat</type> <name>vertexFormat</name></member> + <member><type>VkDeviceOrHostAddressConstKHR</type> <name>vertexData</name></member> + <member><type>VkDeviceSize</type> <name>vertexStride</name></member> + <member><type>VkIndexType</type> <name>indexType</name></member> + <member optional="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>indexData</name></member> + <member optional="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>transformData</name></member> + </type> + <type category="struct" name="VkAccelerationStructureGeometryAabbsDataKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkDeviceOrHostAddressConstKHR</type> <name>data</name></member> + <member><type>VkDeviceSize</type> <name>stride</name></member> + </type> + <type category="struct" name="VkAccelerationStructureGeometryInstancesDataKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>arrayOfPointers</name></member> + <member><type>VkDeviceOrHostAddressConstKHR</type> <name>data</name></member> + </type> + <type category="union" name="VkAccelerationStructureGeometryDataKHR"> + <member><type>VkAccelerationStructureGeometryTrianglesDataKHR</type> <name>triangles</name></member> + <member><type>VkAccelerationStructureGeometryAabbsDataKHR</type> <name>aabbs</name></member> + <member><type>VkAccelerationStructureGeometryInstancesDataKHR</type> <name>instances</name></member> + </type> + <type category="struct" name="VkAccelerationStructureGeometryKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkGeometryTypeKHR</type> <name>geometryType</name></member> + <member><type>VkAccelerationStructureGeometryDataKHR</type> <name>geometry</name></member> + <member optional="true"><type>VkGeometryFlagsKHR</type> <name>flags</name></member> + </type> + <type category="struct" name="VkAccelerationStructureBuildGeometryInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkAccelerationStructureTypeKHR</type> <name>type</name></member> + <member optional="true"><type>VkBuildAccelerationStructureFlagsKHR</type> <name>flags</name></member> + <member><type>VkBool32</type> <name>update</name></member> + <member optional="true"><type>VkAccelerationStructureKHR</type> <name>srcAccelerationStructure</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>dstAccelerationStructure</name></member> + <member><type>VkBool32</type> <name>geometryArrayOfPointers</name></member> + <member optional="true"><type>uint32_t</type> <name>geometryCount</name></member> + <member noautovalidity="true">const <type>VkAccelerationStructureGeometryKHR</type>* const* <name>ppGeometries</name></member> + <member><type>VkDeviceOrHostAddressKHR</type> <name>scratchData</name></member> + </type> + <type category="struct" name="VkAccelerationStructureBuildOffsetInfoKHR"> + <member><type>uint32_t</type> <name>primitiveCount</name></member> + <member><type>uint32_t</type> <name>primitiveOffset</name></member> + <member optional="true"><type>uint32_t</type> <name>firstVertex</name></member> + <member optional="true"><type>uint32_t</type> <name>transformOffset</name></member> + </type> + <type category="struct" name="VkAccelerationStructureCreateGeometryTypeInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkGeometryTypeKHR</type> <name>geometryType</name></member> + <member><type>uint32_t</type> <name>maxPrimitiveCount</name></member> + <member><type>VkIndexType</type> <name>indexType</name></member> + <member optional="true"><type>uint32_t</type> <name>maxVertexCount</name></member> + <member optional="true"><type>VkFormat</type> <name>vertexFormat</name></member> + <member optional="true"><type>VkBool32</type> <name>allowsTransforms</name></member> + </type> + <type category="struct" name="VkAccelerationStructureCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkDeviceSize</type> <name>compactedSize</name></member> + <member><type>VkAccelerationStructureTypeKHR</type> <name>type</name></member> + <member optional="true"><type>VkBuildAccelerationStructureFlagsKHR</type> <name>flags</name></member> + <member optional="true"><type>uint32_t</type> <name>maxGeometryCount</name></member> + <member len="maxGeometryCount">const <type>VkAccelerationStructureCreateGeometryTypeInfoKHR</type>* <name>pGeometryInfos</name></member> + <member optional="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> + </type> + <type category="struct" name="VkAabbPositionsKHR"> + <member><type>float</type> <name>minX</name></member> + <member><type>float</type> <name>minY</name></member> + <member><type>float</type> <name>minZ</name></member> + <member><type>float</type> <name>maxX</name></member> + <member><type>float</type> <name>maxY</name></member> + <member><type>float</type> <name>maxZ</name></member> + </type> + <type category="struct" name="VkAabbPositionsNV" alias="VkAabbPositionsKHR"/> + <type category="struct" name="VkTransformMatrixKHR"> + <member><type>float</type> <name>matrix</name>[3][4]</member> + </type> + <type category="struct" name="VkTransformMatrixNV" alias="VkTransformMatrixKHR"/> + <type category="struct" name="VkAccelerationStructureInstanceKHR"> + <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>transform</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="VkAccelerationStructureInstanceNV" alias="VkAccelerationStructureInstanceKHR"/> + <type category="struct" name="VkAccelerationStructureDeviceAddressInfoKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></member> + </type> + <type category="struct" name="VkAccelerationStructureVersionKHR"> + <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member len="2*VK_UUID_SIZE">const <type>uint8_t</type>* <name>versionData</name></member> + </type> + <type category="struct" name="VkCopyAccelerationStructureInfoKHR"> + <member values="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>src</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>dst</name></member> + <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> + </type> + <type category="struct" name="VkCopyAccelerationStructureToMemoryInfoKHR"> + <member values="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>src</name></member> + <member><type>VkDeviceOrHostAddressKHR</type> <name>dst</name></member> + <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> + </type> + <type category="struct" name="VkCopyMemoryToAccelerationStructureInfoKHR"> + <member values="VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkDeviceOrHostAddressConstKHR</type> <name>src</name></member> + <member><type>VkAccelerationStructureKHR</type> <name>dst</name></member> + <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> + </type> + <type category="struct" name="VkRayTracingPipelineInterfaceCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxPayloadSize</name></member> + <member><type>uint32_t</type> <name>maxAttributeSize</name></member> + <member><type>uint32_t</type> <name>maxCallableSize</name></member> + </type> + <type category="struct" name="VkDeferredOperationInfoKHR" structextends="VkRayTracingPipelineCreateInfoKHR,VkAccelerationStructureBuildGeometryInfoKHR,VkCopyAccelerationStructureInfoKHR,VkCopyMemoryToAccelerationStructureInfoKHR,VkCopyAccelerationStructureToMemoryInfoKHR"> + <member values="VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member noautovalidity="true"><type>VkDeferredOperationKHR</type> <name>operationHandle</name></member> + </type> + <type category="struct" name="VkPipelineLibraryCreateInfoKHR"> + <member values="VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>uint32_t</type> <name>libraryCount</name></member> + <member len="libraryCount">const <type>VkPipeline</type>* <name>pLibraries</name></member> + </type> + <type category="struct" name="VkRenderPassTransformBeginInfoQCOM" structextends="VkRenderPassBeginInfo"> + <member values="VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> + <member noautovalidity="true"><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name></member> + </type> + <type category="struct" name="VkCommandBufferInheritanceRenderPassTransformInfoQCOM" structextends="VkCommandBufferInheritanceInfo"> + <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> + <member noautovalidity="true"><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name></member> + <member><type>VkRect2D</type> <name>renderArea</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceDiagnosticsConfigFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"><type>VkStructureType</type><name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>diagnosticsConfig</name></member> + </type> + <type category="struct" name="VkDeviceDiagnosticsConfigCreateInfoNV" structextends="VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>VkDeviceDiagnosticsConfigFlagsNV</type> <name>flags</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> + <member noautovalidity="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> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkDeviceSize</type> <name>robustStorageBufferAccessSizeAlignment</name></member> + <member><type>VkDeviceSize</type> <name>robustUniformBufferAccessSizeAlignment</name></member> + </type> </types> <comment>Vulkan enumerant (token) definitions</comment> @@ -4545,7 +4837,8 @@ typedef void <name>CAMetalLayer</name>; <enum name="VK_MAX_DRIVER_NAME_SIZE_KHR" alias="VK_MAX_DRIVER_NAME_SIZE"/> <enum value="256" name="VK_MAX_DRIVER_INFO_SIZE"/> <enum name="VK_MAX_DRIVER_INFO_SIZE_KHR" alias="VK_MAX_DRIVER_INFO_SIZE"/> - <enum value="(~0U)" name="VK_SHADER_UNUSED_NV"/> + <enum value="(~0U)" name="VK_SHADER_UNUSED_KHR"/> + <enum name="VK_SHADER_UNUSED_NV" alias="VK_SHADER_UNUSED_KHR"/> </enums> <comment> @@ -4641,6 +4934,7 @@ typedef void <name>CAMetalLayer</name>; <enums name="VkPipelineCacheHeaderVersion" type="enum"> <enum value="1" name="VK_PIPELINE_CACHE_HEADER_VERSION_ONE"/> </enums> + <enums name="VkPipelineCacheCreateFlagBits" type="bitmask"></enums> <enums name="VkPrimitiveTopology" type="enum"> <enum value="0" name="VK_PRIMITIVE_TOPOLOGY_POINT_LIST"/> <enum value="1" name="VK_PRIMITIVE_TOPOLOGY_LINE_LIST"/> @@ -5395,8 +5689,8 @@ typedef void <name>CAMetalLayer</name>; <enum name="VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT" alias="VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT" comment="Backwards-compatible alias containing a typo"/> <enum value="29" name="VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT"/> <enum value="30" name="VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT"/> - <enum value="31" name="VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT"/> - <enum value="32" name="VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT"/> + <!--<enum value="31" name="VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT" comment="Removed NVX_device_generated_commands"/>--> + <!--<enum value="32" name="VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT" comment="Removed NVX_device_generated_commands"/>--> <enum value="33" name="VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT"/> <enum name="VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT" alias="VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT" comment="Backwards-compatible alias containing a typo"/> </enums> @@ -5423,6 +5717,7 @@ typedef void <name>CAMetalLayer</name>; <enum value="0" name="VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT"/> <enum value="1" name="VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT"/> <enum value="2" name="VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT"/> + <enum value="3" name="VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT"/> </enums> <enums name="VkValidationFeatureDisableEXT" type="enum"> <enum value="0" name="VK_VALIDATION_FEATURE_DISABLE_ALL_EXT"/> @@ -5443,32 +5738,23 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="6" name="VK_SUBGROUP_FEATURE_CLUSTERED_BIT" comment="Clustered subgroup operations"/> <enum bitpos="7" name="VK_SUBGROUP_FEATURE_QUAD_BIT" comment="Quad subgroup operations"/> </enums> - <enums name="VkIndirectCommandsLayoutUsageFlagBitsNVX" type="bitmask"> - <enum bitpos="0" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX"/> - <enum bitpos="1" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX"/> - <enum bitpos="2" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX"/> - <enum bitpos="3" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX"/> - </enums> - <enums name="VkObjectEntryUsageFlagBitsNVX" type="bitmask"> - <enum bitpos="0" name="VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX"/> - <enum bitpos="1" name="VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX"/> - </enums> - <enums name="VkIndirectCommandsTokenTypeNVX" type="enum"> - <enum value="0" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX"/> - <enum value="1" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX"/> - <enum value="2" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX"/> - <enum value="3" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX"/> - <enum value="4" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX"/> - <enum value="5" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX"/> - <enum value="6" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX"/> - <enum value="7" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX"/> - </enums> - <enums name="VkObjectEntryTypeNVX" type="enum"> - <enum value="0" name="VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX"/> - <enum value="1" name="VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX"/> - <enum value="2" name="VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX"/> - <enum value="3" name="VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX"/> - <enum value="4" name="VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX"/> + <enums name="VkIndirectCommandsLayoutUsageFlagBitsNV" type="bitmask"> + <enum bitpos="0" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV"/> + <enum bitpos="1" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV"/> + <enum bitpos="2" name="VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV"/> + </enums> + <enums name="VkIndirectStateFlagBitsNV" type="bitmask"> + <enum bitpos="0" name="VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV"/> + </enums> + <enums name="VkIndirectCommandsTokenTypeNV" type="enum"> + <enum value="0" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV"/> + <enum value="1" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV"/> + <enum value="2" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV"/> + <enum value="3" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV"/> + <enum value="4" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV"/> + <enum value="5" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV"/> + <enum value="6" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV"/> + <enum value="7" name="VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV"/> </enums> <enums name="VkDescriptorSetLayoutCreateFlagBits" type="bitmask"> </enums> @@ -5696,44 +5982,51 @@ typedef void <name>CAMetalLayer</name>; <enum value="2" name="VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV"/> <enum value="3" name="VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV"/> </enums> - <enums name="VkGeometryInstanceFlagBitsNV" type="bitmask"> - <enum bitpos="0" name="VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV"/> - <enum bitpos="1" name="VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV"/> - <enum bitpos="2" name="VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV"/> - <enum bitpos="3" name="VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV"/> - </enums> - <enums name="VkGeometryFlagBitsNV" type="bitmask"> - <enum bitpos="0" name="VK_GEOMETRY_OPAQUE_BIT_NV"/> - <enum bitpos="1" name="VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV"/> - </enums> - <enums name="VkBuildAccelerationStructureFlagBitsNV" type="bitmask"> - <enum bitpos="0" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV"/> - <enum bitpos="1" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV"/> - <enum bitpos="2" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV"/> - <enum bitpos="3" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV"/> - <enum bitpos="4" name="VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV"/> - </enums> - <enums name="VkCopyAccelerationStructureModeNV" type="enum"> - <enum value="0" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV"/> - <enum value="1" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV"/> - </enums> - <enums name="VkAccelerationStructureTypeNV" type="enum"> - <enum value="0" name="VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV"/> - <enum value="1" name="VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV"/> - </enums> - <enums name="VkGeometryTypeNV" type="enum"> - <enum value="0" name="VK_GEOMETRY_TYPE_TRIANGLES_NV"/> - <enum value="1" name="VK_GEOMETRY_TYPE_AABBS_NV"/> - </enums> - <enums name="VkAccelerationStructureMemoryRequirementsTypeNV" type="enum"> - <enum value="0" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV"/> - <enum value="1" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV"/> - <enum value="2" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV"/> - </enums> - <enums name="VkRayTracingShaderGroupTypeNV" type="enum"> - <enum value="0" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV"/> - <enum value="1" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV"/> - <enum value="2" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV"/> + <enums name="VkGeometryInstanceFlagBitsKHR" type="bitmask"> + <enum bitpos="0" name="VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR"/> + <enum bitpos="1" name="VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR"/> + <enum bitpos="2" name="VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR"/> + <enum bitpos="3" name="VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR"/> + </enums> + <enums name="VkGeometryFlagBitsKHR" type="bitmask"> + <enum bitpos="0" name="VK_GEOMETRY_OPAQUE_BIT_KHR"/> + <enum bitpos="1" name="VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR"/> + </enums> + <enums name="VkBuildAccelerationStructureFlagBitsKHR" type="bitmask"> + <enum bitpos="0" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"/> + <enum bitpos="1" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"/> + <enum bitpos="2" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"/> + <enum bitpos="3" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"/> + <enum bitpos="4" name="VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"/> + </enums> + <enums name="VkCopyAccelerationStructureModeKHR" type="enum"> + <enum value="0" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR"/> + <enum value="1" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR"/> + <enum value="2" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR"/> + <enum value="3" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR"/> + </enums> + <enums name="VkAccelerationStructureTypeKHR" type="enum"> + <enum value="0" name="VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR"/> + <enum value="1" name="VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR"/> + </enums> + <enums name="VkGeometryTypeKHR" type="enum"> + <enum value="0" name="VK_GEOMETRY_TYPE_TRIANGLES_KHR"/> + <enum value="1" name="VK_GEOMETRY_TYPE_AABBS_KHR"/> + </enums> + <enums name="VkAccelerationStructureMemoryRequirementsTypeKHR" type="enum"> + <enum value="0" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR"/> + <enum value="1" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR"/> + <enum value="2" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR"/> + </enums> + <enums name="VkAccelerationStructureBuildTypeKHR" type="enum"> + <enum value="0" name="VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR"/> + <enum value="1" name="VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR"/> + <enum value="2" name="VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR"/> + </enums> + <enums name="VkRayTracingShaderGroupTypeKHR" type="enum"> + <enum value="0" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR"/> + <enum value="1" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR"/> + <enum value="2" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR"/> </enums> <enums name="VkMemoryOverallocationBehaviorAMD" type="enum"> <enum value="0" name="VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD"/> @@ -5761,6 +6054,11 @@ typedef void <name>CAMetalLayer</name>; <enum value="9" name="VK_COMPONENT_TYPE_UINT32_NV"/> <enum value="10" name="VK_COMPONENT_TYPE_UINT64_NV"/> </enums> + <enums name="VkDeviceDiagnosticsConfigFlagBitsNV" type="bitmask"> + <enum bitpos="0" name="VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV"/> + <enum bitpos="1" name="VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV"/> + <enum bitpos="2" name="VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV"/> + </enums> <enums name="VkPipelineCreationFeedbackFlagBitsEXT" type="bitmask"> <enum bitpos="0" name="VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT"/> <enum bitpos="1" name="VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT"/> @@ -5870,6 +6168,9 @@ typedef void <name>CAMetalLayer</name>; <proto><type>void</type> <name>vkDestroyInstance</name></proto> <param optional="true" externsync="true"><type>VkInstance</type> <name>instance</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + <implicitexternsyncparams> + <param>all sname:VkPhysicalDevice objects enumerated from pname:instance</param> + </implicitexternsyncparams> </command> <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED"> <proto><type>VkResult</type> <name>vkEnumeratePhysicalDevices</name></proto> @@ -5936,7 +6237,7 @@ typedef void <name>CAMetalLayer</name>; <param optional="true" externsync="true"><type>VkDevice</type> <name>device</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> - <command successcodes="VK_SUCCESS"> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY"> <proto><type>VkResult</type> <name>vkEnumerateInstanceVersion</name></proto> <param><type>uint32_t</type>* <name>pApiVersion</name></param> </command> @@ -6289,7 +6590,7 @@ typedef void <name>CAMetalLayer</name>; <param><type>uint32_t</type> <name>srcCacheCount</name></param> <param len="srcCacheCount">const <type>VkPipelineCache</type>* <name>pSrcCaches</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> + <command successcodes="VK_SUCCESS,VK_PIPELINE_COMPILE_REQUIRED_EXT" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> <proto><type>VkResult</type> <name>vkCreateGraphicsPipelines</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param optional="true"><type>VkPipelineCache</type> <name>pipelineCache</name></param> @@ -6298,7 +6599,7 @@ 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" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> + <command successcodes="VK_SUCCESS,VK_PIPELINE_COMPILE_REQUIRED_EXT" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> <proto><type>VkResult</type> <name>vkCreateComputePipelines</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param optional="true"><type>VkPipelineCache</type> <name>pipelineCache</name></param> @@ -6377,8 +6678,8 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_FRAGMENTED_POOL,VK_ERROR_OUT_OF_POOL_MEMORY"> <proto><type>VkResult</type> <name>vkAllocateDescriptorSets</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pAllocateInfo::descriptorPool">const <type>VkDescriptorSetAllocateInfo</type>* <name>pAllocateInfo</name></param> - <param len="pAllocateInfo::descriptorSetCount"><type>VkDescriptorSet</type>* <name>pDescriptorSets</name></param> + <param externsync="pAllocateInfo->descriptorPool">const <type>VkDescriptorSetAllocateInfo</type>* <name>pAllocateInfo</name></param> + <param len="pAllocateInfo->descriptorSetCount"><type>VkDescriptorSet</type>* <name>pDescriptorSets</name></param> </command> <command successcodes="VK_SUCCESS"> <proto><type>VkResult</type> <name>vkFreeDescriptorSets</name></proto> @@ -6449,8 +6750,8 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkAllocateCommandBuffers</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pAllocateInfo::commandPool">const <type>VkCommandBufferAllocateInfo</type>* <name>pAllocateInfo</name></param> - <param len="pAllocateInfo::commandBufferCount"><type>VkCommandBuffer</type>* <name>pCommandBuffers</name></param> + <param externsync="pAllocateInfo->commandPool">const <type>VkCommandBufferAllocateInfo</type>* <name>pAllocateInfo</name></param> + <param len="pAllocateInfo->commandBufferCount"><type>VkCommandBuffer</type>* <name>pCommandBuffers</name></param> </command> <command> <proto><type>void</type> <name>vkFreeCommandBuffers</name></proto> @@ -6563,7 +6864,7 @@ typedef void <name>CAMetalLayer</name>; <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param><type>uint32_t</type> <name>firstBinding</name></param> <param><type>uint32_t</type> <name>bindingCount</name></param> - <param len="bindingCount">const <type>VkBuffer</type>* <name>pBuffers</name></param> + <param len="bindingCount" optional="false,true">const <type>VkBuffer</type>* <name>pBuffers</name></param> <param len="bindingCount">const <type>VkDeviceSize</type>* <name>pOffsets</name></param> </command> <command queues="graphics" renderpass="inside" cmdbufferlevel="primary,secondary" pipeline="graphics"> @@ -6926,7 +7227,7 @@ typedef void <name>CAMetalLayer</name>; <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"> <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> + <param externsync="pCreateInfo->surface,pCreateInfo->oldSwapchain">const <type>VkSwapchainCreateInfoKHR</type>* <name>pCreateInfo</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> <param><type>VkSwapchainKHR</type>* <name>pSwapchain</name></param> </command> @@ -6955,7 +7256,7 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS,VK_SUBOPTIMAL_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_DEVICE_LOST,VK_ERROR_OUT_OF_DATE_KHR,VK_ERROR_SURFACE_LOST_KHR,VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT"> <proto><type>VkResult</type> <name>vkQueuePresentKHR</name></proto> <param externsync="true"><type>VkQueue</type> <name>queue</name></param> - <param externsync="pPresentInfo.pWaitSemaphores[],pPresentInfo.pSwapchains[]">const <type>VkPresentInfoKHR</type>* <name>pPresentInfo</name></param> + <param externsync="pPresentInfo->pWaitSemaphores[],pPresentInfo->pSwapchains[]">const <type>VkPresentInfoKHR</type>* <name>pPresentInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"> <proto><type>VkResult</type> <name>vkCreateViSurfaceNN</name></proto> @@ -7058,12 +7359,12 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkDebugMarkerSetObjectNameEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pNameInfo.object">const <type>VkDebugMarkerObjectNameInfoEXT</type>* <name>pNameInfo</name></param> + <param externsync="pNameInfo->object">const <type>VkDebugMarkerObjectNameInfoEXT</type>* <name>pNameInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkDebugMarkerSetObjectTagEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pTagInfo.object">const <type>VkDebugMarkerObjectTagInfoEXT</type>* <name>pTagInfo</name></param> + <param externsync="pTagInfo->object">const <type>VkDebugMarkerObjectTagInfoEXT</type>* <name>pTagInfo</name></param> </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdDebugMarkerBeginEXT</name></proto> @@ -7098,63 +7399,42 @@ typedef void <name>CAMetalLayer</name>; <param><type>HANDLE</type>* <name>pHandle</name></param> </command> <command queues="graphics,compute" renderpass="inside" cmdbufferlevel="primary,secondary"> - <proto><type>void</type> <name>vkCmdProcessCommandsNVX</name></proto> + <proto><type>void</type> <name>vkCmdExecuteGeneratedCommandsNV</name></proto> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> - <param>const <type>VkCmdProcessCommandsInfoNVX</type>* <name>pProcessCommandsInfo</name></param> + <param><type>VkBool32</type> <name>isPreprocessed</name></param> + <param>const <type>VkGeneratedCommandsInfoNV</type>* <name>pGeneratedCommandsInfo</name></param> </command> - <command queues="graphics,compute" renderpass="inside" cmdbufferlevel="secondary"> - <proto><type>void</type> <name>vkCmdReserveSpaceForCommandsNVX</name></proto> + <command queues="graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdPreprocessGeneratedCommandsNV</name></proto> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> - <param>const <type>VkCmdReserveSpaceForCommandsInfoNVX</type>* <name>pReserveSpaceInfo</name></param> + <param>const <type>VkGeneratedCommandsInfoNV</type>* <name>pGeneratedCommandsInfo</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkCreateIndirectCommandsLayoutNVX</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param>const <type>VkIndirectCommandsLayoutCreateInfoNVX</type>* <name>pCreateInfo</name></param> - <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> - <param><type>VkIndirectCommandsLayoutNVX</type>* <name>pIndirectCommandsLayout</name></param> + <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdBindPipelineShaderGroupNV</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></param> + <param><type>VkPipeline</type> <name>pipeline</name></param> + <param><type>uint32_t</type> <name>groupIndex</name></param> </command> <command> - <proto><type>void</type> <name>vkDestroyIndirectCommandsLayoutNVX</name></proto> + <proto><type>void</type> <name>vkGetGeneratedCommandsMemoryRequirementsNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkIndirectCommandsLayoutNVX</type> <name>indirectCommandsLayout</name></param> - <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + <param>const <type>VkGeneratedCommandsMemoryRequirementsInfoNV</type>* <name>pInfo</name></param> + <param><type>VkMemoryRequirements2</type>* <name>pMemoryRequirements</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkCreateObjectTableNVX</name></proto> + <proto><type>VkResult</type> <name>vkCreateIndirectCommandsLayoutNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param>const <type>VkObjectTableCreateInfoNVX</type>* <name>pCreateInfo</name></param> + <param>const <type>VkIndirectCommandsLayoutCreateInfoNV</type>* <name>pCreateInfo</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> - <param><type>VkObjectTableNVX</type>* <name>pObjectTable</name></param> + <param><type>VkIndirectCommandsLayoutNV</type>* <name>pIndirectCommandsLayout</name></param> </command> <command> - <proto><type>void</type> <name>vkDestroyObjectTableNVX</name></proto> + <proto><type>void</type> <name>vkDestroyIndirectCommandsLayoutNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="true"><type>VkObjectTableNVX</type> <name>objectTable</name></param> + <param><type>VkIndirectCommandsLayoutNV</type> <name>indirectCommandsLayout</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"> - <proto><type>VkResult</type> <name>vkRegisterObjectsNVX</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param externsync="true"><type>VkObjectTableNVX</type> <name>objectTable</name></param> - <param><type>uint32_t</type> <name>objectCount</name></param> - <param len="objectCount">const <type>VkObjectTableEntryNVX</type>* const* <name>ppObjectTableEntries</name></param> - <param len="objectCount">const <type>uint32_t</type>* <name>pObjectIndices</name></param> - </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkUnregisterObjectsNVX</name></proto> - <param><type>VkDevice</type> <name>device</name></param> - <param externsync="true"><type>VkObjectTableNVX</type> <name>objectTable</name></param> - <param><type>uint32_t</type> <name>objectCount</name></param> - <param len="objectCount">const <type>VkObjectEntryTypeNVX</type>* <name>pObjectEntryTypes</name></param> - <param len="objectCount">const <type>uint32_t</type>* <name>pObjectIndices</name></param> - </command> - <command> - <proto><type>void</type> <name>vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX</name></proto> - <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> - <param><type>VkDeviceGeneratedCommandsFeaturesNVX</type>* <name>pFeatures</name></param> - <param><type>VkDeviceGeneratedCommandsLimitsNVX</type>* <name>pLimits</name></param> - </command> <command> <proto><type>void</type> <name>vkGetPhysicalDeviceFeatures2</name></proto> <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> @@ -7677,7 +7957,7 @@ typedef void <name>CAMetalLayer</name>; <proto><type>VkResult</type> <name>vkQueueSignalReleaseImageANDROID</name></proto> <param><type>VkQueue</type> <name>queue</name></param> <param><type>uint32_t</type> <name>waitSemaphoreCount</name></param> - <param>const <type>VkSemaphore</type>* <name>pWaitSemaphores</name></param> + <param len="waitSemaphoreCount">const <type>VkSemaphore</type>* <name>pWaitSemaphores</name></param> <param><type>VkImage</type> <name>image</name></param> <param><type>int</type>* <name>pNativeFenceFd</name></param> </command> @@ -7713,12 +7993,12 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkSetDebugUtilsObjectNameEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pNameInfo.objectHandle">const <type>VkDebugUtilsObjectNameInfoEXT</type>* <name>pNameInfo</name></param> + <param externsync="pNameInfo->objectHandle">const <type>VkDebugUtilsObjectNameInfoEXT</type>* <name>pNameInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkSetDebugUtilsObjectTagEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param externsync="pTagInfo.objectHandle">const <type>VkDebugUtilsObjectTagInfoEXT</type>* <name>pTagInfo</name></param> + <param externsync="pTagInfo->objectHandle">const <type>VkDebugUtilsObjectTagInfoEXT</type>* <name>pTagInfo</name></param> </command> <command> <proto><type>void</type> <name>vkQueueBeginDebugUtilsLabelEXT</name></proto> @@ -7993,11 +8273,18 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkAccelerationStructureNV</type>* <name>pAccelerationStructure</name></param> </command> <command> - <proto><type>void</type> <name>vkDestroyAccelerationStructureNV</name></proto> + <proto><type>void</type> <name>vkDestroyAccelerationStructureKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></param> + <param><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> + <command name="vkDestroyAccelerationStructureNV" alias="vkDestroyAccelerationStructureKHR"/> + <command> + <proto><type>void</type> <name>vkGetAccelerationStructureMemoryRequirementsKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkAccelerationStructureMemoryRequirementsInfoKHR</type>* <name>pInfo</name></param> + <param><type>VkMemoryRequirements2</type>* <name>pMemoryRequirements</name></param> + </command> <command> <proto><type>void</type> <name>vkGetAccelerationStructureMemoryRequirementsNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> @@ -8005,27 +8292,59 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkMemoryRequirements2KHR</type>* <name>pMemoryRequirements</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkBindAccelerationStructureMemoryNV</name></proto> + <proto><type>VkResult</type> <name>vkBindAccelerationStructureMemoryKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param><type>uint32_t</type> <name>bindInfoCount</name></param> - <param len="bindInfoCount">const <type>VkBindAccelerationStructureMemoryInfoNV</type>* <name>pBindInfos</name></param> + <param len="bindInfoCount">const <type>VkBindAccelerationStructureMemoryInfoKHR</type>* <name>pBindInfos</name></param> </command> + <command name="vkBindAccelerationStructureMemoryNV" alias="vkBindAccelerationStructureMemoryKHR"/> <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdCopyAccelerationStructureNV</name></proto> <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> - <param><type>VkAccelerationStructureNV</type> <name>dst</name></param> - <param><type>VkAccelerationStructureNV</type> <name>src</name></param> - <param><type>VkCopyAccelerationStructureModeNV</type> <name>mode</name></param> + <param><type>VkAccelerationStructureKHR</type> <name>dst</name></param> + <param><type>VkAccelerationStructureKHR</type> <name>src</name></param> + <param><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdCopyAccelerationStructureKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkCopyAccelerationStructureInfoKHR</type>* <name>pInfo</name></param> + </command> + <command successcodes="VK_SUCCESS,VK_OPERATION_DEFERRED_KHR,VK_OPERATION_NOT_DEFERRED_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkCopyAccelerationStructureKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkCopyAccelerationStructureInfoKHR</type>* <name>pInfo</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdCopyAccelerationStructureToMemoryKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkCopyAccelerationStructureToMemoryInfoKHR</type>* <name>pInfo</name></param> + </command> + <command successcodes="VK_SUCCESS,VK_OPERATION_DEFERRED_KHR,VK_OPERATION_NOT_DEFERRED_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkCopyAccelerationStructureToMemoryKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkCopyAccelerationStructureToMemoryInfoKHR</type>* <name>pInfo</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdCopyMemoryToAccelerationStructureKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkCopyMemoryToAccelerationStructureInfoKHR</type>* <name>pInfo</name></param> + </command> + <command successcodes="VK_SUCCESS,VK_OPERATION_DEFERRED_KHR,VK_OPERATION_NOT_DEFERRED_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkCopyMemoryToAccelerationStructureKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkCopyMemoryToAccelerationStructureInfoKHR</type>* <name>pInfo</name></param> </command> <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> - <proto><type>void</type> <name>vkCmdWriteAccelerationStructuresPropertiesNV</name></proto> + <proto><type>void</type> <name>vkCmdWriteAccelerationStructuresPropertiesKHR</name></proto> <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param><type>uint32_t</type> <name>accelerationStructureCount</name></param> - <param len="accelerationStructureCount">const <type>VkAccelerationStructureNV</type>* <name>pAccelerationStructures</name></param> + <param len="accelerationStructureCount">const <type>VkAccelerationStructureKHR</type>* <name>pAccelerationStructures</name></param> <param><type>VkQueryType</type> <name>queryType</name></param> <param><type>VkQueryPool</type> <name>queryPool</name></param> <param><type>uint32_t</type> <name>firstQuery</name></param> </command> + <command name="vkCmdWriteAccelerationStructuresPropertiesNV" alias="vkCmdWriteAccelerationStructuresPropertiesKHR"/> <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdBuildAccelerationStructureNV</name></proto> <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> @@ -8033,11 +8352,32 @@ typedef void <name>CAMetalLayer</name>; <param optional="true"><type>VkBuffer</type> <name>instanceData</name></param> <param><type>VkDeviceSize</type> <name>instanceOffset</name></param> <param><type>VkBool32</type> <name>update</name></param> - <param><type>VkAccelerationStructureNV</type> <name>dst</name></param> - <param optional="true"><type>VkAccelerationStructureNV</type> <name>src</name></param> + <param><type>VkAccelerationStructureKHR</type> <name>dst</name></param> + <param optional="true"><type>VkAccelerationStructureKHR</type> <name>src</name></param> <param><type>VkBuffer</type> <name>scratch</name></param> <param><type>VkDeviceSize</type> <name>scratchOffset</name></param> </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkWriteAccelerationStructuresPropertiesKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>uint32_t</type> <name>accelerationStructureCount</name></param> + <param len="accelerationStructureCount">const <type>VkAccelerationStructureKHR</type>* <name>pAccelerationStructures</name></param> + <param><type>VkQueryType</type> <name>queryType</name></param> + <param><type>size_t</type> <name>dataSize</name></param> + <param len="dataSize"><type>void</type>* <name>pData</name></param> + <param><type>size_t</type> <name>stride</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdTraceRaysKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pRaygenShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pMissShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pHitShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pCallableShaderBindingTable</name></param> + <param><type>uint32_t</type> <name>width</name></param> + <param><type>uint32_t</type> <name>height</name></param> + <param><type>uint32_t</type> <name>depth</name></param> + </command> <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdTraceRaysNV</name></proto> <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> @@ -8057,7 +8397,17 @@ typedef void <name>CAMetalLayer</name>; <param><type>uint32_t</type> <name>depth</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> - <proto><type>VkResult</type> <name>vkGetRayTracingShaderGroupHandlesNV</name></proto> + <proto><type>VkResult</type> <name>vkGetRayTracingShaderGroupHandlesKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkPipeline</type> <name>pipeline</name></param> + <param><type>uint32_t</type> <name>firstGroup</name></param> + <param><type>uint32_t</type> <name>groupCount</name></param> + <param><type>size_t</type> <name>dataSize</name></param> + <param len="dataSize"><type>void</type>* <name>pData</name></param> + </command> + <command name="vkGetRayTracingShaderGroupHandlesNV" alias="vkGetRayTracingShaderGroupHandlesKHR"/> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkGetRayTracingCaptureReplayShaderGroupHandlesKHR</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param><type>VkPipeline</type> <name>pipeline</name></param> <param><type>uint32_t</type> <name>firstGroup</name></param> @@ -8068,11 +8418,11 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> <proto><type>VkResult</type> <name>vkGetAccelerationStructureHandleNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> - <param><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></param> + <param><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></param> <param><type>size_t</type> <name>dataSize</name></param> <param len="dataSize"><type>void</type>* <name>pData</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> + <command successcodes="VK_SUCCESS,VK_PIPELINE_COMPILE_REQUIRED_EXT" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_SHADER_NV"> <proto><type>VkResult</type> <name>vkCreateRayTracingPipelinesNV</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param optional="true"><type>VkPipelineCache</type> <name>pipelineCache</name></param> @@ -8081,17 +8431,47 @@ 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_OPERATION_DEFERRED_KHR,VK_OPERATION_NOT_DEFERRED_KHR,VK_PIPELINE_COMPILE_REQUIRED_EXT" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS"> + <proto><type>VkResult</type> <name>vkCreateRayTracingPipelinesKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param optional="true"><type>VkPipelineCache</type> <name>pipelineCache</name></param> + <param><type>uint32_t</type> <name>createInfoCount</name></param> + <param len="createInfoCount">const <type>VkRayTracingPipelineCreateInfoKHR</type>* <name>pCreateInfos</name></param> + <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"> <proto><type>VkResult</type> <name>vkGetPhysicalDeviceCooperativeMatrixPropertiesNV</name></proto> <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> <param optional="false,true"><type>uint32_t</type>* <name>pPropertyCount</name></param> <param optional="true" len="pPropertyCount"><type>VkCooperativeMatrixPropertiesNV</type>* <name>pProperties</name></param> </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdTraceRaysIndirectKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pRaygenShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pMissShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pHitShaderBindingTable</name></param> + <param>const <type>VkStridedBufferRegionKHR</type>* <name>pCallableShaderBindingTable</name></param> + <param><type>VkBuffer</type> <name>buffer</name></param> + <param><type>VkDeviceSize</type> <name>offset</name></param> + </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INCOMPATIBLE_VERSION_KHR"> + <proto><type>VkResult</type> <name>vkGetDeviceAccelerationStructureCompatibilityKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkAccelerationStructureVersionKHR</type>* <name>version</name></param> + </command> <command> <proto><type>uint32_t</type> <name>vkGetImageViewHandleNVX</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param>const <type>VkImageViewHandleInfoNVX</type>* <name>pInfo</name></param> </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_UNKNOWN"> + <proto><type>VkResult</type> <name>vkGetImageViewAddressNVX</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkImageView</type> <name>imageView</name></param> + <param><type>VkImageViewAddressPropertiesNVX</type>* <name>pProperties</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>vkGetPhysicalDeviceSurfacePresentModes2EXT</name></proto> <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> @@ -8252,9 +8632,70 @@ typedef void <name>CAMetalLayer</name>; <command successcodes="VK_SUCCESS,VK_INCOMPLETE"> <proto><type>VkResult</type> <name>vkGetPhysicalDeviceToolPropertiesEXT</name></proto> <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> - <param><type>uint32_t</type>* <name>pToolCount</name></param> + <param optional="false,true"><type>uint32_t</type>* <name>pToolCount</name></param> <param optional="true" len="pToolCount"><type>VkPhysicalDeviceToolPropertiesEXT</type>* <name>pToolProperties</name></param> </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR"> + <proto><type>VkResult</type> <name>vkCreateAccelerationStructureKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkAccelerationStructureCreateInfoKHR</type>* <name>pCreateInfo</name></param> + <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + <param><type>VkAccelerationStructureKHR</type>* <name>pAccelerationStructure</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdBuildAccelerationStructureKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>uint32_t</type> <name>infoCount</name></param> + <param len="infoCount">const <type>VkAccelerationStructureBuildGeometryInfoKHR</type>* <name>pInfos</name></param> + <param len="infoCount">const <type>VkAccelerationStructureBuildOffsetInfoKHR</type>* const* <name>ppOffsetInfos</name></param> + </command> + <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdBuildAccelerationStructureIndirectKHR</name></proto> + <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param>const <type>VkAccelerationStructureBuildGeometryInfoKHR</type>* <name>pInfo</name></param> + <param><type>VkBuffer</type> <name>indirectBuffer</name></param> + <param><type>VkDeviceSize</type> <name>indirectOffset</name></param> + <param><type>uint32_t</type> <name>indirectStride</name></param> + </command> + <command successcodes="VK_SUCCESS,VK_OPERATION_DEFERRED_KHR,VK_OPERATION_NOT_DEFERRED_KHR" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <proto><type>VkResult</type> <name>vkBuildAccelerationStructureKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>uint32_t</type> <name>infoCount</name></param> + <param len="infoCount">const <type>VkAccelerationStructureBuildGeometryInfoKHR</type>* <name>pInfos</name></param> + <param len="infoCount">const <type>VkAccelerationStructureBuildOffsetInfoKHR</type>* const* <name>ppOffsetInfos</name></param> + </command> + <command> + <proto><type>VkDeviceAddress</type> <name>vkGetAccelerationStructureDeviceAddressKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkAccelerationStructureDeviceAddressInfoKHR</type>* <name>pInfo</name></param> + </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY"> + <proto><type>VkResult</type> <name>vkCreateDeferredOperationKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + <param><type>VkDeferredOperationKHR</type>* <name>pDeferredOperation</name></param> + </command> + <command> + <proto><type>void</type> <name>vkDestroyDeferredOperationKHR</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> + <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> + </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> + </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> + </command> </commands> <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions"> @@ -8268,6 +8709,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VK_VERSION_MINOR"/> <type name="VK_VERSION_PATCH"/> <type name="VK_HEADER_VERSION"/> + <type name="VK_HEADER_VERSION_COMPLETE"/> </require> <require comment="API constants"> <enum name="VK_LOD_CLAMP_NONE"/> @@ -9169,6 +9611,7 @@ typedef void <name>CAMetalLayer</name>; <enum value="8" name="VK_ANDROID_NATIVE_BUFFER_SPEC_VERSION"/> <enum value="11" name="VK_ANDROID_NATIVE_BUFFER_NUMBER"/> <enum value=""VK_ANDROID_native_buffer"" name="VK_ANDROID_NATIVE_BUFFER_NAME"/> + <enum name="VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME" alias="VK_ANDROID_NATIVE_BUFFER_NAME"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID"/> <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID"/> @@ -9297,7 +9740,10 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="6" extends="VkQueueFlagBits" name="VK_QUEUE_RESERVED_6_BIT_KHR"/> <enum bitpos="27" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_RESERVED_27_BIT_KHR"/> <enum bitpos="30" extends="VkAccessFlagBits" name="VK_ACCESS_RESERVED_30_BIT_KHR"/> + <!-- Comment this out for now to avoid warning messages. + The extension will probably change to avoid it. <enum bitpos="31" extends="VkAccessFlagBits" name="VK_ACCESS_RESERVED_31_BIT_KHR"/> + --> <enum bitpos="15" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_15_BIT_KHR"/> <enum bitpos="16" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_16_BIT_KHR"/> <enum bitpos="13" extends="VkImageUsageFlagBits" name="VK_IMAGE_USAGE_RESERVED_13_BIT_KHR"/> @@ -9391,11 +9837,14 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_NVX_image_view_handle" number="31" type="device" author="NVX" contact="Eric Werness @ewerness" supported="vulkan"> <require> - <enum value="1" name="VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION"/> + <enum value="2" name="VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION"/> <enum value=""VK_NVX_image_view_handle"" name="VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"/> <type name="VkImageViewHandleInfoNVX"/> + <type name="VkImageViewAddressPropertiesNVX"/> <command name="vkGetImageViewHandleNVX"/> + <command name="vkGetImageViewAddressNVX"/> </require> </extension> <extension name="VK_AMD_extension_32" number="32" author="AMD" contact="Daniel Rakos @drakos-amd" supported="disabled"> @@ -10039,52 +10488,10 @@ typedef void <name>CAMetalLayer</name>; <enum extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT" alias="VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT"/> </require> </extension> - <extension name="VK_NVX_device_generated_commands" number="87" type="device" author="NVX" contact="Christoph Kubisch @pixeljetstream" supported="vulkan"> + <extension name="VK_NVX_device_generated_commands" number="87" type="device" author="NVX" contact="Christoph Kubisch @pixeljetstream" supported="disabled"> <require> <enum value="3" name="VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION"/> <enum value=""VK_NVX_device_generated_commands"" name="VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME"/> - <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX"/> - <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX"/> - <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX"/> - <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX"/> - <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX"/> - <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX"/> - <enum bitpos="17" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX"/> - <enum bitpos="17" extends="VkAccessFlagBits" name="VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX"/> - <enum bitpos="18" extends="VkAccessFlagBits" name="VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX"/> - <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_OBJECT_TABLE_NVX" comment="VkobjectTableNVX"/> - <enum offset="1" extends="VkObjectType" name="VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX" comment="VkIndirectCommandsLayoutNVX"/> - <type name="VkObjectTableNVX"/> - <type name="VkIndirectCommandsLayoutNVX"/> - <type name="VkIndirectCommandsLayoutUsageFlagsNVX"/> - <type name="VkObjectEntryUsageFlagsNVX"/> - <type name="VkIndirectCommandsLayoutUsageFlagBitsNVX"/> - <type name="VkIndirectCommandsTokenTypeNVX"/> - <type name="VkObjectEntryUsageFlagBitsNVX"/> - <type name="VkObjectEntryTypeNVX"/> - <type name="VkDeviceGeneratedCommandsFeaturesNVX"/> - <type name="VkDeviceGeneratedCommandsLimitsNVX"/> - <type name="VkIndirectCommandsTokenNVX"/> - <type name="VkIndirectCommandsLayoutTokenNVX"/> - <type name="VkIndirectCommandsLayoutCreateInfoNVX"/> - <type name="VkCmdProcessCommandsInfoNVX"/> - <type name="VkCmdReserveSpaceForCommandsInfoNVX"/> - <type name="VkObjectTableCreateInfoNVX"/> - <type name="VkObjectTableEntryNVX"/> - <type name="VkObjectTablePipelineEntryNVX"/> - <type name="VkObjectTableDescriptorSetEntryNVX"/> - <type name="VkObjectTableVertexBufferEntryNVX"/> - <type name="VkObjectTableIndexBufferEntryNVX"/> - <type name="VkObjectTablePushConstantEntryNVX"/> - <command name="vkCmdProcessCommandsNVX"/> - <command name="vkCmdReserveSpaceForCommandsNVX"/> - <command name="vkCreateIndirectCommandsLayoutNVX"/> - <command name="vkDestroyIndirectCommandsLayoutNVX"/> - <command name="vkCreateObjectTableNVX"/> - <command name="vkDestroyObjectTableNVX"/> - <command name="vkRegisterObjectsNVX"/> - <command name="vkUnregisterObjectsNVX"/> - <command name="vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX"/> </require> </extension> <extension name="VK_NV_clip_space_w_scaling" number="88" type="device" author="NV" contact="Eric Werness @ewerness-nv" supported="vulkan"> @@ -10574,7 +10981,7 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_EXT_debug_utils" number="129" type="instance" author="EXT" contact="Mark Young @marky-lunarg" specialuse="debugging" supported="vulkan"> <require> - <enum value="1" name="VK_EXT_DEBUG_UTILS_SPEC_VERSION"/> + <enum value="2" name="VK_EXT_DEBUG_UTILS_SPEC_VERSION"/> <enum value=""VK_EXT_debug_utils"" name="VK_EXT_DEBUG_UTILS_EXTENSION_NAME"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"/> @@ -10600,7 +11007,7 @@ typedef void <name>CAMetalLayer</name>; <command name="vkSubmitDebugUtilsMessageEXT"/> </require> </extension> - <extension name="VK_ANDROID_external_memory_android_hardware_buffer" number="130" type="device" author="ANDROID" requires="VK_KHR_sampler_ycbcr_conversion,VK_KHR_external_memory,VK_EXT_queue_family_foreign" platform="android" contact="Jesse Hall @critsec" supported="vulkan"> + <extension name="VK_ANDROID_external_memory_android_hardware_buffer" number="130" type="device" author="ANDROID" requires="VK_KHR_sampler_ycbcr_conversion,VK_KHR_external_memory,VK_EXT_queue_family_foreign,VK_KHR_dedicated_allocation" platform="android" contact="Jesse Hall @critsec" supported="vulkan"> <require> <enum value="3" name="VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION"/> <enum value=""VK_ANDROID_external_memory_android_hardware_buffer"" name="VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME"/> @@ -10844,16 +11251,122 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPipelineCoverageToColorStateCreateInfoNV"/> </require> </extension> - <extension name="VK_NV_extension_151" number="151" author="NV" contact="Jeff Bolz @jeffbolznv" supported="disabled"> - <require> - <enum value="0" name="VK_NV_EXTENSION_151_SPEC_VERSION"/> - <enum value=""VK_NV_extension_151"" name="VK_NV_EXTENSION_151_EXTENSION_NAME"/> - <enum bitpos="11" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_151_BIT0_NV"/> - <enum bitpos="29" extends="VkFormatFeatureFlagBits" name="VK_FORMAT_FEATURE_RESERVED_29_BIT_NV"/> - <enum bitpos="14" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_151_BIT1_NV"/> - <enum bitpos="15" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_151_BIT2_NV"/> - <enum bitpos="16" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_151_BIT3_NV"/> - <enum bitpos="17" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_151_BIT4_NV"/> + <extension name="VK_KHR_ray_tracing" number="151" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_get_memory_requirements2,VK_EXT_descriptor_indexing,VK_KHR_buffer_device_address,VK_KHR_deferred_host_operations,VK_KHR_pipeline_library" author="KHR" contact="Daniel Koch @dgkoch" platform="provisional" supported="vulkan" provisional="true" sortorder="1" comment="Explicit sort order to require processing after VK_NV_ray_tracing"> + <require> + <enum value="8" name="VK_KHR_RAY_TRACING_SPEC_VERSION"/> + <enum value=""VK_KHR_ray_tracing"" name="VK_KHR_RAY_TRACING_EXTENSION_NAME"/> + <enum name="VK_SHADER_UNUSED_KHR"/> + <enum offset="6" extends="VkStructureType" extnumber="166" name="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR"/> + <enum offset="7" extends="VkStructureType" extnumber="166" name="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"/> + <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"/> + <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"/> + <enum offset="6" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"/> + <enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR"/> + <enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR"/> + <enum offset="10" extends="VkStructureType" name="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"/> + <enum offset="11" extends="VkStructureType" name="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"/> + <enum offset="12" extends="VkStructureType" name="VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"/> + <enum offset="13" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR"/> + <enum offset="14" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR"/> + <enum offset="15" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"/> + <enum offset="16" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"/> + <enum offset="17" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"/> + <enum offset="18" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"/> + <enum bitpos="8" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_RAYGEN_BIT_KHR"/> + <enum bitpos="9" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_ANY_HIT_BIT_KHR"/> + <enum bitpos="10" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"/> + <enum bitpos="11" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_MISS_BIT_KHR"/> + <enum bitpos="12" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_INTERSECTION_BIT_KHR"/> + <enum bitpos="13" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CALLABLE_BIT_KHR"/> + <enum bitpos="21" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"/> + <enum bitpos="25" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"/> + <enum bitpos="10" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR"/> + <enum offset="0" extends="VkPipelineBindPoint" extnumber="166" name="VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"/> + <enum offset="0" extends="VkDescriptorType" extnumber="166" name="VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR"/> + <enum bitpos="21" extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"/> + <enum bitpos="22" extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"/> + <enum offset="0" extends="VkQueryType" extnumber="166" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR"/> + <enum offset="0" extends="VkQueryType" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR"/> + <enum offset="0" extends="VkObjectType" extnumber="166" name="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"/> + <enum offset="0" extends="VkDebugReportObjectTypeEXT" extnumber="166" name="VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT"/> + <enum offset="0" extends="VkIndexType" extnumber="166" name="VK_INDEX_TYPE_NONE_KHR"/> + <enum offset="0" extends="VkGeometryTypeKHR" name="VK_GEOMETRY_TYPE_INSTANCES_KHR"/> + <enum offset="0" extends="VkResult" dir="-" name="VK_ERROR_INCOMPATIBLE_VERSION_KHR"/> + <enum bitpos="29" extends="VkFormatFeatureFlagBits" name="VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"/> + <enum bitpos="14" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"/> + <enum bitpos="15" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"/> + <enum bitpos="16" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"/> + <enum bitpos="17" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"/> + <enum bitpos="12" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"/> + <enum bitpos="13" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR"/> + <type name="VkAccelerationStructureTypeKHR"/> + <type name="VkDeviceOrHostAddressKHR"/> + <type name="VkDeviceOrHostAddressConstKHR"/> + <type name="VkAccelerationStructureBuildOffsetInfoKHR"/> + <type name="VkRayTracingShaderGroupCreateInfoKHR"/> + <type name="VkRayTracingShaderGroupTypeKHR"/> + <type name="VkRayTracingPipelineCreateInfoKHR"/> + <type name="VkAabbPositionsKHR"/> + <type name="VkAccelerationStructureGeometryTrianglesDataKHR"/> + <type name="VkTransformMatrixKHR"/> + <type name="VkAccelerationStructureBuildGeometryInfoKHR"/> + <type name="VkAccelerationStructureBuildTypeKHR"/> + <type name="VkAccelerationStructureGeometryAabbsDataKHR"/> + <type name="VkAccelerationStructureInstanceKHR"/> + <type name="VkAccelerationStructureGeometryInstancesDataKHR"/> + <type name="VkAccelerationStructureGeometryDataKHR"/> + <type name="VkAccelerationStructureGeometryKHR"/> + <type name="VkGeometryFlagsKHR"/> + <type name="VkGeometryInstanceFlagsKHR"/> + <type name="VkGeometryFlagBitsKHR"/> + <type name="VkGeometryInstanceFlagBitsKHR"/> + <type name="VkAccelerationStructureCreateGeometryTypeInfoKHR"/> + <type name="VkAccelerationStructureCreateInfoKHR"/> + <type name="VkAccelerationStructureKHR"/> + <type name="VkBuildAccelerationStructureFlagBitsKHR"/> + <type name="VkBuildAccelerationStructureFlagsKHR"/> + <type name="VkCopyAccelerationStructureModeKHR"/> + <type name="VkGeometryTypeKHR"/> + <type name="VkBindAccelerationStructureMemoryInfoKHR"/> + <type name="VkWriteDescriptorSetAccelerationStructureKHR"/> + <type name="VkAccelerationStructureMemoryRequirementsInfoKHR"/> + <type name="VkPhysicalDeviceRayTracingFeaturesKHR"/> + <type name="VkPhysicalDeviceRayTracingPropertiesKHR"/> + <type name="VkAccelerationStructureMemoryRequirementsTypeKHR"/> + <type name="VkAccelerationStructureDeviceAddressInfoKHR"/> + <type name="VkAccelerationStructureVersionKHR"/> + <type name="VkStridedBufferRegionKHR"/> + <type name="VkTraceRaysIndirectCommandKHR"/> + <type name="VkCopyAccelerationStructureToMemoryInfoKHR"/> + <type name="VkCopyMemoryToAccelerationStructureInfoKHR"/> + <type name="VkCopyAccelerationStructureInfoKHR"/> + <type name="VkRayTracingPipelineInterfaceCreateInfoKHR"/> + <command name="vkCreateAccelerationStructureKHR"/> + <command name="vkDestroyAccelerationStructureKHR"/> + <command name="vkGetAccelerationStructureMemoryRequirementsKHR"/> + <command name="vkBindAccelerationStructureMemoryKHR"/> + <command name="vkCmdBuildAccelerationStructureKHR"/> + <command name="vkCmdBuildAccelerationStructureIndirectKHR"/> + <command name="vkBuildAccelerationStructureKHR"/> + <command name="vkCopyAccelerationStructureKHR"/> + <command name="vkCopyAccelerationStructureToMemoryKHR"/> + <command name="vkCopyMemoryToAccelerationStructureKHR"/> + <command name="vkWriteAccelerationStructuresPropertiesKHR"/> + <command name="vkCmdCopyAccelerationStructureKHR"/> + <command name="vkCmdCopyAccelerationStructureToMemoryKHR"/> + <command name="vkCmdCopyMemoryToAccelerationStructureKHR"/> + <command name="vkCmdTraceRaysKHR"/> + <command name="vkCreateRayTracingPipelinesKHR"/> + <command name="vkGetRayTracingShaderGroupHandlesKHR"/> + <command name="vkGetAccelerationStructureDeviceAddressKHR"/> + <command name="vkGetRayTracingCaptureReplayShaderGroupHandlesKHR"/> + <command name="vkCmdWriteAccelerationStructuresPropertiesKHR"/> + <command name="vkCmdTraceRaysIndirectKHR"/> + <command name="vkGetDeviceAccelerationStructureCompatibilityKHR"/> </require> </extension> <extension name="VK_NV_extension_152" number="152" author="NV" contact="Jeff Bolz @jeffbolznv" supported="disabled"> @@ -11113,63 +11626,89 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_NV_ray_tracing" number="166" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_get_memory_requirements2" author="NV" contact="Eric Werness @ewerness" supported="vulkan"> <require> - <enum value="3" name="VK_NV_RAY_TRACING_SPEC_VERSION"/> - <enum value=""VK_NV_ray_tracing"" name="VK_NV_RAY_TRACING_EXTENSION_NAME"/> - <enum name="VK_SHADER_UNUSED_NV"/> - <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"/> - <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"/> - <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_NV"/> - <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"/> - <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"/> - <enum offset="6" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"/> - <enum offset="7" extends="VkStructureType" name="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"/> - <enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"/> - <enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"/> - <enum offset="11" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"/> - <enum offset="12" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"/> - <enum bitpos="8" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_RAYGEN_BIT_NV"/> - <enum bitpos="9" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_ANY_HIT_BIT_NV"/> - <enum bitpos="10" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV"/> - <enum bitpos="11" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_MISS_BIT_NV"/> - <enum bitpos="12" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_INTERSECTION_BIT_NV"/> - <enum bitpos="13" extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CALLABLE_BIT_NV"/> - <enum bitpos="21" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV"/> - <enum bitpos="25" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV"/> - <enum bitpos="10" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RAY_TRACING_BIT_NV"/> - <enum offset="0" extends="VkPipelineBindPoint" name="VK_PIPELINE_BIND_POINT_RAY_TRACING_NV"/> - <enum offset="0" extends="VkDescriptorType" name="VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"/> - <enum bitpos="21" extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV"/> - <enum bitpos="22" extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV"/> - <enum offset="0" extends="VkQueryType" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV"/> + <enum value="3" name="VK_NV_RAY_TRACING_SPEC_VERSION"/> + <enum value=""VK_NV_ray_tracing"" name="VK_NV_RAY_TRACING_EXTENSION_NAME"/> + <enum name="VK_SHADER_UNUSED_NV"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_NV"/> + <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"/> + <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"/> + <enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV" alias="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR"/> + <enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV" alias="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"/> + <enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"/> + <enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"/> + <enum offset="11" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"/> + <enum offset="12" extends="VkStructureType" name="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_RAYGEN_BIT_NV" alias="VK_SHADER_STAGE_RAYGEN_BIT_KHR"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_ANY_HIT_BIT_NV" alias="VK_SHADER_STAGE_ANY_HIT_BIT_KHR"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV" alias="VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_MISS_BIT_NV" alias="VK_SHADER_STAGE_MISS_BIT_KHR"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_INTERSECTION_BIT_NV" alias="VK_SHADER_STAGE_INTERSECTION_BIT_KHR"/> + <enum extends="VkShaderStageFlagBits" name="VK_SHADER_STAGE_CALLABLE_BIT_NV" alias="VK_SHADER_STAGE_CALLABLE_BIT_KHR"/> + <enum extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV" alias="VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"/> + <enum extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV" alias="VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"/> + <enum extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RAY_TRACING_BIT_NV" alias="VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR"/> + <enum extends="VkPipelineBindPoint" name="VK_PIPELINE_BIND_POINT_RAY_TRACING_NV" alias="VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"/> + <enum extends="VkDescriptorType" name="VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV" alias="VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR"/> + <enum extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV" alias="VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"/> + <enum extends="VkAccessFlagBits" name="VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV" alias="VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"/> + <enum extends="VkQueryType" name="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV" alias="VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR"/> <enum bitpos="5" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"/> - <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"/> - <enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT"/> - <enum offset="0" extends="VkIndexType" name="VK_INDEX_TYPE_NONE_NV"/> - <type name="VkAccelerationStructureTypeNV"/> + <enum extends="VkObjectType" name="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV" alias="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"/> + <enum extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT" alias="VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT"/> + <enum extends="VkIndexType" name="VK_INDEX_TYPE_NONE_NV" alias="VK_INDEX_TYPE_NONE_KHR"/> <type name="VkRayTracingShaderGroupCreateInfoNV"/> <type name="VkRayTracingShaderGroupTypeNV"/> + <enum extends="VkRayTracingShaderGroupTypeKHR" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV" alias="VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR"/> + <enum extends="VkRayTracingShaderGroupTypeKHR" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV" alias="VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR"/> + <enum extends="VkRayTracingShaderGroupTypeKHR" name="VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV" alias="VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR"/> <type name="VkRayTracingPipelineCreateInfoNV"/> + <type name="VkGeometryTypeNV"/> + <enum extends="VkGeometryTypeKHR" name="VK_GEOMETRY_TYPE_TRIANGLES_NV" alias="VK_GEOMETRY_TYPE_TRIANGLES_KHR"/> + <enum extends="VkGeometryTypeKHR" name="VK_GEOMETRY_TYPE_AABBS_NV" alias="VK_GEOMETRY_TYPE_AABBS_KHR"/> + <type name="VkAccelerationStructureTypeNV"/> + <enum extends="VkAccelerationStructureTypeKHR" name="VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV" alias="VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR"/> + <enum extends="VkAccelerationStructureTypeKHR" name="VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV" alias="VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR"/> <type name="VkGeometryTrianglesNV"/> <type name="VkGeometryAABBNV"/> <type name="VkGeometryDataNV"/> <type name="VkGeometryNV"/> <type name="VkGeometryFlagsNV"/> - <type name="VkGeometryInstanceFlagsNV"/> <type name="VkGeometryFlagBitsNV"/> + <enum extends="VkGeometryFlagBitsKHR" name="VK_GEOMETRY_OPAQUE_BIT_NV" alias="VK_GEOMETRY_OPAQUE_BIT_KHR"/> + <enum extends="VkGeometryFlagBitsKHR" name="VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV" alias="VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR"/> + <type name="VkGeometryInstanceFlagsNV"/> <type name="VkGeometryInstanceFlagBitsNV"/> + <enum extends="VkGeometryInstanceFlagBitsKHR" name="VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV" alias="VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR"/> + <enum extends="VkGeometryInstanceFlagBitsKHR" name="VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV" alias="VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR"/> + <enum extends="VkGeometryInstanceFlagBitsKHR" name="VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV" alias="VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR"/> + <enum extends="VkGeometryInstanceFlagBitsKHR" name="VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV" alias="VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR"/> <type name="VkAccelerationStructureInfoNV"/> <type name="VkAccelerationStructureCreateInfoNV"/> <type name="VkAccelerationStructureNV"/> <type name="VkBuildAccelerationStructureFlagBitsNV"/> + <enum extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV" alias="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"/> + <enum extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV" alias="VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"/> + <enum extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV" alias="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"/> + <enum extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV" alias="VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"/> + <enum extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV" alias="VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"/> <type name="VkBuildAccelerationStructureFlagsNV"/> <type name="VkCopyAccelerationStructureModeNV"/> - <type name="VkGeometryTypeNV"/> + <enum extends="VkCopyAccelerationStructureModeKHR" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV" alias="VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR"/> + <enum extends="VkCopyAccelerationStructureModeKHR" name="VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV" alias="VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR"/> <type name="VkBindAccelerationStructureMemoryInfoNV"/> <type name="VkWriteDescriptorSetAccelerationStructureNV"/> <type name="VkAccelerationStructureMemoryRequirementsInfoNV"/> <type name="VkPhysicalDeviceRayTracingPropertiesNV"/> <type name="VkMemoryRequirements2KHR"/> <type name="VkAccelerationStructureMemoryRequirementsTypeNV"/> + <type name="VkTransformMatrixNV"/> + <type name="VkAabbPositionsNV"/> + <type name="VkAccelerationStructureInstanceNV"/> + <enum extends="VkAccelerationStructureMemoryRequirementsTypeKHR" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV" alias="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR"/> + <enum extends="VkAccelerationStructureMemoryRequirementsTypeKHR" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV" alias="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR"/> + <enum extends="VkAccelerationStructureMemoryRequirementsTypeKHR" name="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV" alias="VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR"/> <command name="vkCreateAccelerationStructureNV"/> <command name="vkDestroyAccelerationStructureNV"/> <command name="vkGetAccelerationStructureMemoryRequirementsNV"/> @@ -11231,12 +11770,12 @@ typedef void <name>CAMetalLayer</name>; <type name="VkFilterCubicImageViewImageFormatPropertiesEXT"/> </require> </extension> - <extension name="VK_QCOM_extension_172" number="172" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="disabled"> + <extension name="VK_QCOM_render_pass_shader_resolve" number="172" type="device" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="vulkan"> <require> - <enum value="0" name="VK_QCOM_extension_172_SPEC_VERSION"/> - <enum value=""VK_QCOM_extension_172"" name="VK_QCOM_extension_172_EXTENSION_NAME"/> - <enum bitpos="2" extends="VkSubpassDescriptionFlagBits" name="VK_SUBPASS_DESCRIPTION_RESERVED_2_BIT_QCOM"/> - <enum bitpos="3" extends="VkSubpassDescriptionFlagBits" name="VK_SUBPASS_DESCRIPTION_RESERVED_3_BIT_QCOM"/> + <enum value="4" name="VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION"/> + <enum value=""VK_QCOM_render_pass_shader_resolve"" name="VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME"/> + <enum bitpos="2" extends="VkSubpassDescriptionFlagBits" name="VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM"/> + <enum bitpos="3" extends="VkSubpassDescriptionFlagBits" name="VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM"/> </require> </extension> <extension name="VK_QCOM_extension_173" number="173" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="disabled"> @@ -11614,9 +12153,10 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_INTEL_performance_query" number="211" type="device" author="INTEL" contact="Lionel Landwerlin @llandwerlin" specialuse="devtools" supported="vulkan"> <require> - <enum value="1" name="VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION"/> + <enum value="2" name="VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION"/> <enum value=""VK_INTEL_performance_query"" name="VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME"/> - <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"/> + <enum extends="VkStructureType" name="VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL" alias="VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL" comment="Backwards-compatible alias"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"/> <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"/> <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL"/> @@ -11633,6 +12173,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPerformanceValueINTEL"/> <type name="VkInitializePerformanceApiInfoINTEL"/> <type name="VkQueryPoolCreateInfoINTEL"/> + <type name="VkQueryPoolPerformanceQueryCreateInfoINTEL"/> <type name="VkPerformanceMarkerInfoINTEL"/> <type name="VkPerformanceStreamMarkerInfoINTEL"/> <type name="VkPerformanceOverrideInfoINTEL"/> @@ -11968,7 +12509,7 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_EXT_validation_features" number="248" type="instance" author="LUNARG" contact="Karl Schultz @karl-lunarg" specialuse="debugging" supported="vulkan"> <require> - <enum value="2" name="VK_EXT_VALIDATION_FEATURES_SPEC_VERSION"/> + <enum value="3" name="VK_EXT_VALIDATION_FEATURES_SPEC_VERSION"/> <enum value=""VK_EXT_validation_features"" name="VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"/> <type name="VkValidationFeaturesEXT"/> @@ -12174,10 +12715,23 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_KHR_extension_268"" name="VK_EXT_extension_268"/> </require> </extension> - <extension name="VK_KHR_extension_269" number="269" type="device" author="KHR" contact="Josh Barczak @jbarczak" supported="disabled"> + <extension name="VK_KHR_deferred_host_operations" number="269" type="device" author="KHR" contact="Josh Barczak @jbarczak" platform="provisional" supported="vulkan" provisional="true"> <require> - <enum value="0" name="VK_KHR_EXTENSION_269_SPEC_VERSION"/> - <enum value=""VK_KHR_extension_269"" name="VK_KHR_extension_269"/> + <enum value="2" name="VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION"/> + <enum value=""VK_KHR_deferred_host_operations"" name="VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR"/> + <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"/> + <type name="VkDeferredOperationKHR"/> + <type name="VkDeferredOperationInfoKHR"/> + <command name="vkCreateDeferredOperationKHR"/> + <command name="vkDestroyDeferredOperationKHR"/> + <command name="vkGetDeferredOperationMaxConcurrencyKHR"/> + <command name="vkGetDeferredOperationResultKHR"/> + <command name="vkDeferredOperationJoinKHR" /> + <enum extends="VkResult" offset="0" name="VK_THREAD_IDLE_KHR" /> + <enum extends="VkResult" offset="1" name="VK_THREAD_DONE_KHR" /> + <enum extends="VkResult" offset="2" name="VK_OPERATION_DEFERRED_KHR" /> + <enum extends="VkResult" offset="3" name="VK_OPERATION_NOT_DEFERRED_KHR" /> </require> </extension> <extension name="VK_KHR_pipeline_executable_properties" number="270" type="device" author="KHR" contact="Jason Ekstrand @jekstrand" specialuse="devtools" supported="vulkan"> @@ -12249,10 +12803,48 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT"/> </require> </extension> - <extension name="VK_NV_extension_278" number="278" type="device" author="NV" contact="Christoph Kubisch @pixeljetstream" supported="disabled"> - <require> - <enum value="0" name="VK_NV_EXTENSION_278_SPEC_VERSION"/> - <enum value=""VK_NV_extension_278"" name="VK_NV_extension_278"/> + <extension name="VK_NV_device_generated_commands" number="278" type="device" requiresCore="1.1" author="NV" contact="Christoph Kubisch @pixeljetstream" supported="vulkan"> + <require> + <enum value="3" name="VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION"/> + <enum value=""VK_NV_device_generated_commands"" name="VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"/> + <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"/> + <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"/> + <enum offset="6" extends="VkStructureType" name="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"/> + <enum offset="7" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"/> + <enum bitpos="18" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV"/> + <enum bitpos="17" extends="VkPipelineStageFlagBits" name="VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"/> + <enum bitpos="17" extends="VkAccessFlagBits" name="VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV"/> + <enum bitpos="18" extends="VkAccessFlagBits" name="VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"/> + <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV" comment="VkIndirectCommandsLayoutNV"/> + <type name="VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV"/> + <type name="VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV"/> + <type name="VkGraphicsShaderGroupCreateInfoNV"/> + <type name="VkGraphicsPipelineShaderGroupsCreateInfoNV"/> + <type name="VkBindShaderGroupIndirectCommandNV"/> + <type name="VkBindIndexBufferIndirectCommandNV"/> + <type name="VkBindVertexBufferIndirectCommandNV"/> + <type name="VkSetStateFlagsIndirectCommandNV"/> + <type name="VkIndirectStateFlagBitsNV"/> + <type name="VkIndirectStateFlagsNV"/> + <type name="VkIndirectCommandsLayoutNV"/> + <type name="VkIndirectCommandsTokenTypeNV"/> + <type name="VkIndirectCommandsLayoutUsageFlagBitsNV"/> + <type name="VkIndirectCommandsLayoutUsageFlagsNV"/> + <type name="VkIndirectCommandsStreamNV"/> + <type name="VkIndirectCommandsLayoutTokenNV"/> + <type name="VkIndirectCommandsLayoutCreateInfoNV"/> + <type name="VkGeneratedCommandsInfoNV"/> + <type name="VkGeneratedCommandsMemoryRequirementsInfoNV"/> + <command name="vkGetGeneratedCommandsMemoryRequirementsNV"/> + <command name="vkCmdPreprocessGeneratedCommandsNV"/> + <command name="vkCmdExecuteGeneratedCommandsNV"/> + <command name="vkCmdBindPipelineShaderGroupNV"/> + <command name="vkCreateIndirectCommandsLayoutNV"/> + <command name="vkDestroyIndirectCommandsLayoutNV"/> </require> </extension> <extension name="VK_NV_extension_279" number="279" type="device" author="NV" contact="Christoph Kubisch @pixeljetstream" supported="disabled"> @@ -12283,11 +12875,16 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT"/> </require> </extension> - <extension name="VK_QCOM_extension_283" number="283" type="device" author="QCOM" contact="Jeff Leger @jackohound" supported="disabled"> + <extension name="VK_QCOM_render_pass_transform" number="283" type="device" requires="VK_KHR_swapchain,VK_KHR_surface" author="QCOM" contact="Jeff Leger @jackohound" supported="vulkan"> <require> - <enum value="0" name="VK_QCOM_EXTENSION_283_SPEC_VERSION"/> - <enum value=""VK_QCOM_extension_283"" name="VK_QCOM_extension_283"/> - <enum bitpos="1" extends="VkRenderPassCreateFlagBits" name="VK_RENDER_PASS_RESERVED_BIT_1_QCOM"/> + <enum value="1" name="VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION"/> + <enum value=""VK_QCOM_render_pass_transform"" name="VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"/> + <enum bitpos="1" extends="VkRenderPassCreateFlagBits" name="VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"/> + <type name="VkRenderPassCreateFlags"/> + <type name="VkRenderPassTransformBeginInfoQCOM"/> + <type name="VkCommandBufferInheritanceRenderPassTransformInfoQCOM"/> </require> </extension> <extension name="VK_EXT_extension_284" number="284" type="device" author="EXT" contact="Samuel Pitoiset @hakzsam" supported="disabled"> @@ -12308,10 +12905,14 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_286"" name="VK_EXT_extension_286"/> </require> </extension> - <extension name="VK_NVX_extension_287" number="287" author="NVX" contact="Liam Middlebrook @liam-middlebrook" supported="disabled"> + <extension name="VK_EXT_robustness2" number="287" type="device" author="EXT" contact="Liam Middlebrook @liam-middlebrook" supported="vulkan"> <require> - <enum value="0" name="VK_NVX_EXTENSION_287_SPEC_VERSION"/> - <enum value=""VK_NVX_extension_287"" name="VK_NVX_EXTENSION_287_EXTENSION_NAME"/> + <enum value="1" name="VK_EXT_ROBUSTNESS_2_SPEC_VERSION"/> + <enum value=""VK_EXT_robustness2"" 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"/> + <type name="VkPhysicalDeviceRobustness2FeaturesEXT"/> + <type name="VkPhysicalDeviceRobustness2PropertiesEXT"/> </require> </extension> <extension name="VK_NVX_extension_288" number="288" author="NVX" contact="Liam Middlebrook @liam-middlebrook" supported="disabled"> @@ -12332,12 +12933,13 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_GOOGLE_user_type"" name="VK_GOOGLE_USER_TYPE_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_NV_extension_291" number="291" author="NV" contact="Daniel Koch @dgkoch" supported="disabled"> + <extension name="VK_KHR_pipeline_library" number="291" type="device" author="KHR" contact="Christoph Kubisch @pixeljetstream" platform="provisional" supported="vulkan" provisional="true"> <require> - <enum value="0" name="VK_NV_EXTENSION_291_SPEC_VERSION"/> - <enum value=""VK_NV_extension_291"" name="VK_NV_EXTENSION_291_EXTENSION_NAME"/> - <enum bitpos="12" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_291_BIT0_NV"/> - <enum bitpos="13" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_EXTENSION_291_BIT1_NV"/> + <enum value="1" name="VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION"/> + <enum value=""VK_KHR_pipeline_library"" name="VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME"/> + <enum bitpos="11" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_LIBRARY_BIT_KHR"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"/> + <type name="VkPipelineLibraryCreateInfoKHR"/> </require> </extension> <extension name="VK_NV_extension_292" number="292" author="NV" contact="Daniel Koch @dgkoch" supported="disabled"> @@ -12377,14 +12979,22 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="3" extends="VkPipelineShaderStageCreateFlagBits" name="VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"/> </require> </extension> - <extension name="VK_EXT_extension_298" number="298" author="AMD" contact="Gregory Grebe @grgrebe-amd" supported="disabled"> + <extension name="VK_EXT_pipeline_creation_cache_control" number="298" type="device" author="AMD" contact="Gregory Grebe @grgrebe_amd" supported="vulkan"> <require> - <enum value="0" name="VK_EXT_EXTENSION_298_SPEC_VERSION"/> - <enum value=""VK_EXT_extension_298"" name="VK_EXT_EXTENSION_298_EXTENSION_NAME"/> - <enum bitpos="8" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RESERVED_8_BIT_EXT"/> - <enum bitpos="9" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RESERVED_9_BIT_EXT"/> - <enum bitpos="10" extends="VkPipelineCreateFlagBits" name="VK_PIPELINE_CREATE_RESERVED_10_BIT_EXT"/> - <enum extends="VkResult" offset="0" name="VK_RESULT_EXT_298_RESERVED_VALUE_0_EXT"/> + <enum value="3" name="VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION"/> + <enum value=""VK_EXT_pipeline_creation_cache_control"" + name="VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" + name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"/> + <type name="VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT"/> + <enum bitpos="8" extends="VkPipelineCreateFlagBits" + name="VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT"/> + <enum bitpos="9" extends="VkPipelineCreateFlagBits" + name="VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT"/> + <enum extends="VkResult" offset="0" name="VK_PIPELINE_COMPILE_REQUIRED_EXT"/> + <enum extends="VkResult" name="VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT" alias="VK_PIPELINE_COMPILE_REQUIRED_EXT"/> + <enum bitpos="0" extends="VkPipelineCacheCreateFlagBits" + name="VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"/> </require> </extension> <extension name="VK_KHR_extension_299" number="299" author="KHR" contact="Mark Bellamy @mark.bellamy_arm" supported="disabled"> @@ -12399,16 +13009,23 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_KHR_extension_300"" name="VK_KHR_EXTENSION_300_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_NV_extension_301" number="301" author="NV" contact="Kedarnath Thangudu @kthangudu" supported="disabled"> + <extension name="VK_NV_device_diagnostics_config" number="301" type="device" requires="VK_KHR_get_physical_device_properties2" author="NV" contact="Kedarnath Thangudu @kthangudu" supported="vulkan"> <require> - <enum value="0" name="VK_NV_EXTENSION_301_SPEC_VERSION"/> - <enum value=""VK_NV_extension_301"" name="VK_NV_EXTENSION_301_EXTENSION_NAME"/> + <enum value="1" name="VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION"/> + <enum value=""VK_NV_device_diagnostics_config"" name="VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"/> + <type name="VkPhysicalDeviceDiagnosticsConfigFeaturesNV"/> + <type name="VkDeviceDiagnosticsConfigCreateInfoNV"/> + <type name="VkDeviceDiagnosticsConfigFlagsNV"/> + <type name="VkDeviceDiagnosticsConfigFlagBitsNV"/> </require> </extension> - <extension name="VK_QCOM_extension_302" number="302" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="disabled"> + <extension name="VK_QCOM_render_pass_store_ops" number="302" type="device" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="vulkan"> <require> - <enum value="0" name="VK_QCOM_extension_302_SPEC_VERSION"/> - <enum value=""VK_QCOM_extension_302"" name="VK_QCOM_extension_302_EXTENSION_NAME"/> + <enum value="2" name="VK_QCOM_render_pass_store_ops_SPEC_VERSION"/> + <enum value=""VK_QCOM_render_pass_store_ops"" name="VK_QCOM_render_pass_store_ops_EXTENSION_NAME"/> + <enum offset="0" extends="VkAttachmentStoreOp" name="VK_ATTACHMENT_STORE_OP_NONE_QCOM"/> </require> </extension> <extension name="VK_QCOM_extension_303" number="303" author="QCOM" contact="Bill Licea-Kane @wwlk" supported="disabled"> @@ -12443,8 +13060,8 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_NV_extension_308" number="308" type="device" author="NV" contact="Tristan Lorach @tlorach" supported="disabled"> <require> - <enum value="0" name="VK_NV_EXTENSION_308_SPEC_VERSION"/> - <enum value=""VK_NV_extension_308"" name="VK_NV_EXTENSION_308_EXTENSION_NAME"/> + <enum value="0" name="VK_NV_EXTENSION_308_SPEC_VERSION"/> + <enum value=""VK_NV_extension_308"" name="VK_NV_EXTENSION_308_EXTENSION_NAME"/> </require> </extension> <extension name="VK_KHR_extension_309" number="309" author="KHR" contact="Aidan Fabius @afabius" supported="disabled"> @@ -12461,5 +13078,186 @@ typedef void <name>CAMetalLayer</name>; <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RESERVED_QCOM"/> </require> </extension> + <extension name="VK_NV_extension_311" number="311" author="NV" contact="Charles Hansen @cshansen" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_311_SPEC_VERSION"/> + <enum value=""VK_NV_extension_311"" name="VK_NV_EXTENSION_311_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_EXT_extension_312" number="312" author="MVK" contact="Bill Hollings @billhollings" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_312_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_312"" name="VK_EXT_EXTENSION_312_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_EXT_extension_313" number="313" author="MVK" contact="Bill Hollings @billhollings" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_313_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_313"" name="VK_EXT_EXTENSION_313_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_314" number="314" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_314_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_314"" name="VK_AMD_EXTENSION_314_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_315" number="315" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_315_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_315"" name="VK_AMD_EXTENSION_315_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_316" number="316" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_316_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_316"" name="VK_AMD_EXTENSION_316_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_317" number="317" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_317_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_317"" name="VK_AMD_EXTENSION_317_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_318" number="318" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_318_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_318"" name="VK_AMD_EXTENSION_318_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_319" number="319" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_319_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_319"" name="VK_AMD_EXTENSION_319_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_320" number="320" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_320_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_320"" name="VK_AMD_EXTENSION_320_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_321" number="321" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_321_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_321"" name="VK_AMD_EXTENSION_321_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_322" number="322" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_322_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_322"" name="VK_AMD_EXTENSION_322_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_AMD_extension_323" number="323" author="AMD" contact="Martin Dinkov @mdinkov" supported="disabled"> + <require> + <enum value="0" name="VK_AMD_EXTENSION_323_SPEC_VERSION"/> + <enum value=""VK_AMD_extension_323"" name="VK_AMD_EXTENSION_323_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_324" number="324" author="KHR" contact="Alan Baker @alan-baker" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_324_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_324"" name="VK_KHR_EXTENSION_324_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_325" number="325" author="KHR" contact="Ralph Potter gitlab:@r_potter" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_325_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_325"" name="VK_KHR_EXTENSION_325_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_326" number="326" author="KHR" contact="Alan Baker @alan-baker" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_326_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_326"" name="VK_KHR_EXTENSION_326_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_327" number="327" author="NV" contact="Pat Brown @pbrown" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_327_SPEC_VERSION"/> + <enum value=""VK_NV_extension_327"" name="VK_NV_EXTENSION_327_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_328" number="328" author="NV" contact="Pat Brown @pbrown" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_328_SPEC_VERSION"/> + <enum value=""VK_NV_extension_328"" name="VK_NV_EXTENSION_328_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_329" number="329" author="NV" contact="Pat Brown @pbrown" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_329_SPEC_VERSION"/> + <enum value=""VK_NV_extension_329"" name="VK_NV_EXTENSION_329_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_330" number="330" author="NV" contact="Liam Middlebrook @liam-middlebrook" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_330_SPEC_VERSION"/> + <enum value=""VK_NV_extension_330"" name="VK_NV_EXTENSION_330_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_331" number="331" author="NV" contact="Tony Zlatinski @tzlatinski" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_331_SPEC_VERSION"/> + <enum value=""VK_NV_extension_331"" name="VK_NV_EXTENSION_331_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_332" number="332" author="NV" contact="Tony Zlatinski @tzlatinski" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_332_SPEC_VERSION"/> + <enum value=""VK_NV_extension_332"" name="VK_NV_EXTENSION_332_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_EXT_extension_333" number="333" author="EXT" contact="Matthew Netsch @mnetsch" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_333_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_333"" name="VK_EXT_EXTENSION_333_EXTENSION_NAME"/> + <enum bitpos="1" extends="VkImageViewCreateFlagBits" name="VK_IMAGE_VIEW_CREATE_RESERVED_1_BIT_EXT"/> + </require> + </extension> + <extension name="VK_EXT_extension_334" number="334" author="EXT" contact="Jeff Leger @jackohound" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_334_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_334"" name="VK_EXT_EXTENSION_334_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_335" number="335" author="KHR" contact="Mark Bellamy @mark.bellamy_arm" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_335_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_335"" name="VK_KHR_EXTENSION_335_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_EXT_extension_336" number="336" author="EXT" contact="Graeme Leese @gnl21" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_336_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_336"" name="VK_EXT_EXTENSION_336_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_337" number="337" type="device" author="KHR" contact="Caio Marcelo de Oliveira Filho @cmarcelo" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_337_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_337"" name="VK_KHR_EXTENSION_337_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_338" number="338" author="KHR" contact="Jeff Leger @jackohound" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_338_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_338"" name="VK_KHR_EXTENSION_338_EXTENSION_NAME"/> + </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"/> + </require> + </extension> + <extension name="VK_EXT_extension_340" number="340" author="EXT" contact="Joshua Ashton @Joshua-Ashton" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_340_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_340"" name="VK_EXT_EXTENSION_340_EXTENSION_NAME"/> + </require> + </extension> </extensions> </registry> |