diff options
Diffstat (limited to 'src/vulkan/registry')
-rw-r--r-- | src/vulkan/registry/vk.xml | 760 |
1 files changed, 596 insertions, 164 deletions
diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 954f6912201..dcbd24d2c6c 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -3,33 +3,7 @@ <comment> Copyright (c) 2015-2020 The Khronos Group Inc. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ----- Exceptions to the Apache 2.0 License: ---- - -As an exception, if you use this Software to generate code and portions of -this Software are embedded into the generated code as a result, you may -redistribute such product without providing attribution as would otherwise -be required by Sections 4(a), 4(b) and 4(d) of the License. - -In addition, if you combine or link code generated by this Software with -software that is licensed under the GPLv2 or the LGPL v2.0 or 2.1 -("`Combined Software`") and if a court of competent jurisdiction determines -that the patent provision (Section 3), the indemnity provision (Section 9) -or other Section of the License conflicts with the conditions of the -applicable GPL or LGPL license, you may retroactively and prospectively -choose to deem waived or otherwise exclude such Section(s) of the License, -but only in their entirety and only with respect to the Combined Software. +SPDX-License-Identifier: Apache-2.0 OR MIT </comment> <comment> @@ -143,7 +117,7 @@ server. <type requires="ggp_c/vulkan_types.h" name="GgpFrameToken"/> <type category="define">#define <name>VK_MAKE_VERSION</name>(major, minor, patch) \ - (((major) << 22) | ((minor) << 12) | (patch))</type> + ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))</type> <type category="define">#define <name>VK_VERSION_MAJOR</name>(version) ((uint32_t)(version) >> 22)</type> <type category="define">#define <name>VK_VERSION_MINOR</name>(version) (((uint32_t)(version) >> 12) & 0x3ff)</type> <type category="define">#define <name>VK_VERSION_PATCH</name>(version) ((uint32_t)(version) & 0xfff)</type> @@ -157,7 +131,7 @@ 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> 140</type> +#define <name>VK_HEADER_VERSION</name> 145</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> @@ -246,10 +220,10 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkQueryResultFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryResultFlags</name>;</type> <type requires="VkShaderModuleCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkShaderModuleCreateFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkEventCreateFlags</name>;</type> - <type requires="VkCommandPoolCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolCreateFlags</name>;</type> - <type requires="VkCommandPoolResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolResetFlags</name>;</type> - <type requires="VkCommandBufferResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferResetFlags</name>;</type> - <type requires="VkCommandBufferUsageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferUsageFlags</name>;</type> + <type requires="VkCommandPoolCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolCreateFlags</name>;</type> + <type requires="VkCommandPoolResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolResetFlags</name>;</type> + <type requires="VkCommandBufferResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferResetFlags</name>;</type> + <type requires="VkCommandBufferUsageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferUsageFlags</name>;</type> <type requires="VkQueryPipelineStatisticFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryPipelineStatisticFlags</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryMapFlags</name>;</type> <type requires="VkImageAspectFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkImageAspectFlags</name>;</type> @@ -265,20 +239,20 @@ 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="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="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" name="VkBuildAccelerationStructureFlagsNV" alias="VkBuildAccelerationStructureFlagsKHR"/> <type requires="VkPrivateDataSlotCreateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkPrivateDataSlotCreateFlagsEXT</name>;</type> <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> <type requires="VkPerformanceCounterDescriptionFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkPerformanceCounterDescriptionFlagsKHR</name>;</type> - <type requires="VkAcquireProfilingLockFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkAcquireProfilingLockFlagsKHR</name>;</type> + <type requires="VkAcquireProfilingLockFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkAcquireProfilingLockFlagsKHR</name>;</type> <type requires="VkSemaphoreWaitFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSemaphoreWaitFlags</name>;</type> <type category="bitmask" name="VkSemaphoreWaitFlagsKHR" alias="VkSemaphoreWaitFlags"/> <type requires="VkPipelineCompilerControlFlagBitsAMD" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCompilerControlFlagsAMD</name>;</type> @@ -304,20 +278,20 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask">typedef <type>VkFlags</type> <name>VkImagePipeSurfaceCreateFlagsFUCHSIA</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkStreamDescriptorSurfaceCreateFlagsGGP</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkHeadlessSurfaceCreateFlagsEXT</name>;</type> - <type requires="VkPeerMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPeerMemoryFeatureFlags</name>;</type> + <type requires="VkPeerMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPeerMemoryFeatureFlags</name>;</type> <type category="bitmask" name="VkPeerMemoryFeatureFlagsKHR" alias="VkPeerMemoryFeatureFlags"/> - <type requires="VkMemoryAllocateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryAllocateFlags</name>;</type> + <type requires="VkMemoryAllocateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryAllocateFlags</name>;</type> <type category="bitmask" name="VkMemoryAllocateFlagsKHR" alias="VkMemoryAllocateFlags"/> <type requires="VkDeviceGroupPresentModeFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceGroupPresentModeFlagsKHR</name>;</type> - <type requires="VkDebugReportFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugReportFlagsEXT</name>;</type> + <type requires="VkDebugReportFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugReportFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolTrimFlags</name>;</type> <type category="bitmask" name="VkCommandPoolTrimFlagsKHR" alias="VkCommandPoolTrimFlags"/> <type requires="VkExternalMemoryHandleTypeFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryHandleTypeFlagsNV</name>;</type> <type requires="VkExternalMemoryFeatureFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryFeatureFlagsNV</name>;</type> <type requires="VkExternalMemoryHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryHandleTypeFlags</name>;</type> <type category="bitmask" name="VkExternalMemoryHandleTypeFlagsKHR" alias="VkExternalMemoryHandleTypeFlags"/> - <type requires="VkExternalMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryFeatureFlags</name>;</type> + <type requires="VkExternalMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryFeatureFlags</name>;</type> <type category="bitmask" name="VkExternalMemoryFeatureFlagsKHR" alias="VkExternalMemoryFeatureFlags"/> <type requires="VkExternalSemaphoreHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalSemaphoreHandleTypeFlags</name>;</type> <type category="bitmask" name="VkExternalSemaphoreHandleTypeFlagsKHR" alias="VkExternalSemaphoreHandleTypeFlags"/> @@ -327,9 +301,9 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask" name="VkSemaphoreImportFlagsKHR" alias="VkSemaphoreImportFlags"/> <type requires="VkExternalFenceHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalFenceHandleTypeFlags</name>;</type> <type category="bitmask" name="VkExternalFenceHandleTypeFlagsKHR" alias="VkExternalFenceHandleTypeFlags"/> - <type requires="VkExternalFenceFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalFenceFeatureFlags</name>;</type> + <type requires="VkExternalFenceFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalFenceFeatureFlags</name>;</type> <type category="bitmask" name="VkExternalFenceFeatureFlagsKHR" alias="VkExternalFenceFeatureFlags"/> - <type requires="VkFenceImportFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFenceImportFlags</name>;</type> + <type requires="VkFenceImportFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFenceImportFlags</name>;</type> <type category="bitmask" name="VkFenceImportFlagsKHR" alias="VkFenceImportFlags"/> <type requires="VkSurfaceCounterFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkSurfaceCounterFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineViewportSwizzleStateCreateFlagsNV</name>;</type> @@ -338,14 +312,14 @@ typedef void <name>CAMetalLayer</name>; <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCoverageModulationStateCreateFlagsNV</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCoverageReductionStateCreateFlagsNV</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkValidationCacheCreateFlagsEXT</name>;</type> - <type requires="VkDebugUtilsMessageSeverityFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageSeverityFlagsEXT</name>;</type> - <type requires="VkDebugUtilsMessageTypeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageTypeFlagsEXT</name>;</type> + <type requires="VkDebugUtilsMessageSeverityFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageSeverityFlagsEXT</name>;</type> + <type requires="VkDebugUtilsMessageTypeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageTypeFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessengerCreateFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessengerCallbackDataFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationConservativeStateCreateFlagsEXT</name>;</type> <type requires="VkDescriptorBindingFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorBindingFlags</name>;</type> <type category="bitmask" name="VkDescriptorBindingFlagsEXT" alias="VkDescriptorBindingFlags"/> - <type requires="VkConditionalRenderingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkConditionalRenderingFlagsEXT</name>;</type> + <type requires="VkConditionalRenderingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkConditionalRenderingFlagsEXT</name>;</type> <type requires="VkResolveModeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkResolveModeFlags</name>;</type> <type category="bitmask" name="VkResolveModeFlagsKHR" alias="VkResolveModeFlags"/> <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationStateStreamCreateFlagsEXT</name>;</type> @@ -410,20 +384,9 @@ typedef void <name>CAMetalLayer</name>; <type name="VkRenderPassCreateFlagBits" category="enum"/> <type name="VkSamplerCreateFlagBits" category="enum"/> <type name="VkPipelineCacheHeaderVersion" category="enum"/> - <type name="VkPipelineLayoutCreateFlagBits" category="enum"/> <type name="VkPipelineCacheCreateFlagBits" category="enum"/> - <type name="VkPipelineDepthStencilStateCreateFlagBits" category="enum"/> - <type name="VkPipelineDynamicStateCreateFlagBits" category="enum"/> - <type name="VkPipelineColorBlendStateCreateFlagBits" category="enum"/> - <type name="VkPipelineMultisampleStateCreateFlagBits" category="enum"/> - <type name="VkPipelineRasterizationStateCreateFlagBits" category="enum"/> - <type name="VkPipelineViewportStateCreateFlagBits" category="enum"/> - <type name="VkPipelineTessellationStateCreateFlagBits" category="enum"/> - <type name="VkPipelineInputAssemblyStateCreateFlagBits" category="enum"/> - <type name="VkPipelineVertexInputStateCreateFlagBits" category="enum"/> <type name="VkPipelineShaderStageCreateFlagBits" category="enum"/> <type name="VkDescriptorSetLayoutCreateFlagBits" category="enum"/> - <type name="VkBufferViewCreateFlagBits" category="enum"/> <type name="VkInstanceCreateFlagBits" category="enum"/> <type name="VkDeviceQueueCreateFlagBits" category="enum"/> <type name="VkBufferCreateFlagBits" category="enum"/> @@ -516,19 +479,19 @@ typedef void <name>CAMetalLayer</name>; <type name="VkSemaphoreType" category="enum"/> <type category="enum" name="VkSemaphoreTypeKHR" alias="VkSemaphoreType"/> <type name="VkGeometryFlagBitsKHR" category="enum"/> - <type category="enum" name="VkGeometryFlagBitsNV" alias="VkGeometryFlagBitsKHR"/> + <type category="enum" name="VkGeometryFlagBitsNV" alias="VkGeometryFlagBitsKHR"/> <type name="VkGeometryInstanceFlagBitsKHR" category="enum"/> - <type category="enum" name="VkGeometryInstanceFlagBitsNV" alias="VkGeometryInstanceFlagBitsKHR"/> + <type category="enum" name="VkGeometryInstanceFlagBitsNV" alias="VkGeometryInstanceFlagBitsKHR"/> <type name="VkBuildAccelerationStructureFlagBitsKHR" category="enum"/> - <type category="enum" name="VkBuildAccelerationStructureFlagBitsNV" alias="VkBuildAccelerationStructureFlagBitsKHR"/> + <type category="enum" name="VkBuildAccelerationStructureFlagBitsNV" alias="VkBuildAccelerationStructureFlagBitsKHR"/> <type name="VkCopyAccelerationStructureModeKHR" category="enum"/> - <type category="enum" name="VkCopyAccelerationStructureModeNV" alias="VkCopyAccelerationStructureModeKHR"/> + <type category="enum" name="VkCopyAccelerationStructureModeNV" alias="VkCopyAccelerationStructureModeKHR"/> <type name="VkAccelerationStructureTypeKHR" category="enum"/> - <type category="enum" name="VkAccelerationStructureTypeNV" alias="VkAccelerationStructureTypeKHR"/> + <type category="enum" name="VkAccelerationStructureTypeNV" alias="VkAccelerationStructureTypeKHR"/> <type name="VkGeometryTypeKHR" category="enum"/> - <type category="enum" name="VkGeometryTypeNV" alias="VkGeometryTypeKHR"/> + <type category="enum" name="VkGeometryTypeNV" alias="VkGeometryTypeKHR"/> <type name="VkRayTracingShaderGroupTypeKHR" category="enum"/> - <type category="enum" name="VkRayTracingShaderGroupTypeNV" alias="VkRayTracingShaderGroupTypeKHR"/> + <type category="enum" name="VkRayTracingShaderGroupTypeNV" alias="VkRayTracingShaderGroupTypeKHR"/> <type name="VkAccelerationStructureMemoryRequirementsTypeKHR" category="enum"/> <type category="enum" name="VkAccelerationStructureMemoryRequirementsTypeNV" alias="VkAccelerationStructureMemoryRequirementsTypeKHR"/> <type name="VkAccelerationStructureBuildTypeKHR" category="enum"/> @@ -1919,7 +1882,7 @@ typedef void <name>CAMetalLayer</name>; <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>deviceGeneratedCommands</name></member> </type> - <type category="struct" name="VkDevicePrivateDataCreateInfoEXT" allowduplicate="true"> + <type category="struct" name="VkDevicePrivateDataCreateInfoEXT" allowduplicate="true" structextends="VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>privateDataSlotRequestCount</name></member> @@ -1929,7 +1892,7 @@ typedef void <name>CAMetalLayer</name>; <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkPrivateDataSlotCreateFlagsEXT</type> <name>flags</name></member> </type> - <type category="struct" name="VkPhysicalDevicePrivateDataFeaturesEXT"> + <type category="struct" name="VkPhysicalDevicePrivateDataFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> <member><type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>privateData</name></member> @@ -2680,11 +2643,11 @@ typedef void <name>CAMetalLayer</name>; </type> <type category="struct" name="VkPipelineDiscardRectangleStateCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member optional="true"><type>VkPipelineDiscardRectangleStateCreateFlagsEXT</type> <name>flags</name></member> - <member><type>VkDiscardRectangleModeEXT</type> <name>discardRectangleMode</name></member> - <member optional="true"><type>uint32_t</type> <name>discardRectangleCount</name></member> - <member noautovalidity="true" optional="true" len="discardRectangleCount">const <type>VkRect2D</type>* <name>pDiscardRectangles</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>VkPipelineDiscardRectangleStateCreateFlagsEXT</type> <name>flags</name></member> + <member><type>VkDiscardRectangleModeEXT</type> <name>discardRectangleMode</name></member> + <member optional="true"><type>uint32_t</type> <name>discardRectangleCount</name></member> + <member noautovalidity="true" len="discardRectangleCount">const <type>VkRect2D</type>* <name>pDiscardRectangles</name></member> </type> <type category="struct" name="VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"><type>VkStructureType</type> <name>sType</name></member> @@ -3640,9 +3603,9 @@ typedef void <name>CAMetalLayer</name>; </type> <type category="struct" name="VkPipelineViewportExclusiveScissorStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member optional="true"><type>uint32_t</type> <name>exclusiveScissorCount</name></member> - <member len="exclusiveScissorCount" optional="true">const <type>VkRect2D</type>* <name>pExclusiveScissors</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>uint32_t</type> <name>exclusiveScissorCount</name></member> + <member noautovalidity="true" len="exclusiveScissorCount">const <type>VkRect2D</type>* <name>pExclusiveScissors</name></member> </type> <type category="struct" name="VkPhysicalDeviceCornerSampledImageFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> @@ -3676,10 +3639,10 @@ typedef void <name>CAMetalLayer</name>; </type> <type category="struct" name="VkPipelineViewportShadingRateImageStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkBool32</type> <name>shadingRateImageEnable</name></member> - <member optional="true"><type>uint32_t</type> <name>viewportCount</name></member> - <member len="viewportCount" optional="true">const <type>VkShadingRatePaletteNV</type>* <name>pShadingRatePalettes</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>shadingRateImageEnable</name></member> + <member noautovalidity="true"><type>uint32_t</type> <name>viewportCount</name></member> + <member noautovalidity="true" len="viewportCount">const <type>VkShadingRatePaletteNV</type>* <name>pShadingRatePalettes</name></member> </type> <type category="struct" name="VkPhysicalDeviceShadingRateImageFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> @@ -3824,7 +3787,7 @@ typedef void <name>CAMetalLayer</name>; <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 noautovalidity="true" optional="true"><type>VkBuildAccelerationStructureFlagsNV</type><name>flags</name></member> + <member 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> @@ -3844,14 +3807,14 @@ typedef void <name>CAMetalLayer</name>; <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="VkBindAccelerationStructureMemoryInfoNV" alias="VkBindAccelerationStructureMemoryInfoKHR"/> + <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>VkAccelerationStructureKHR</type>* <name>pAccelerationStructures</name></member> </type> - <type category="struct" name="VkWriteDescriptorSetAccelerationStructureNV" alias="VkWriteDescriptorSetAccelerationStructureKHR"/> + <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> @@ -4261,15 +4224,15 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkBool32</type> <name>shaderIntegerFunctions2</name></member> </type> <type category="union" name="VkPerformanceValueDataINTEL"> - <member><type>uint32_t</type> <name>value32</name></member> - <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 len="null-terminated">const <type>char</type>* <name>valueString</name></member> + <member selection="VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL"><type>uint32_t</type> <name>value32</name></member> + <member selection="VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL"><type>uint64_t</type> <name>value64</name></member> + <member selection="VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL"><type>float</type> <name>valueFloat</name></member> + <member selection="VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL"><type>VkBool32</type> <name>valueBool</name></member> + <member selection="VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL" 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> - <member><type>VkPerformanceValueDataINTEL</type> <name>data</name></member> + <member selector="type"><type>VkPerformanceValueDataINTEL</type> <name>data</name></member> </type> <type category="struct" name="VkInitializePerformanceApiInfoINTEL" > <member values="VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> @@ -4281,7 +4244,7 @@ typedef void <name>CAMetalLayer</name>; <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="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> @@ -4377,10 +4340,10 @@ typedef void <name>CAMetalLayer</name>; <member><type>uint32_t</type> <name>executableIndex</name></member> </type> <type category="union" name="VkPipelineExecutableStatisticValueKHR" returnedonly="true"> - <member><type>VkBool32</type> <name>b32</name></member> - <member><type>int64_t</type> <name>i64</name></member> - <member><type>uint64_t</type> <name>u64</name></member> - <member><type>double</type> <name>f64</name></member> + <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR"><type>VkBool32</type> <name>b32</name></member> + <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR"><type>int64_t</type> <name>i64</name></member> + <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR"><type>uint64_t</type> <name>u64</name></member> + <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR"><type>double</type> <name>f64</name></member> </type> <type category="struct" name="VkPipelineExecutableStatisticKHR" returnedonly="true"> <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR"><type>VkStructureType</type> <name>sType</name></member> @@ -4388,7 +4351,7 @@ typedef void <name>CAMetalLayer</name>; <member><type>char</type> <name>name</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> <member><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> <member><type>VkPipelineExecutableStatisticFormatKHR</type> <name>format</name></member> - <member><type>VkPipelineExecutableStatisticValueKHR</type> <name>value</name></member> + <member selector="format"><type>VkPipelineExecutableStatisticValueKHR</type> <name>value</name></member> </type> <type category="struct" name="VkPipelineExecutableInternalRepresentationKHR" returnedonly="true"> <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR"><type>VkStructureType</type> <name>sType</name></member> @@ -4685,15 +4648,15 @@ typedef void <name>CAMetalLayer</name>; <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> + <member selection="VK_GEOMETRY_TYPE_TRIANGLES_KHR"><type>VkAccelerationStructureGeometryTrianglesDataKHR</type> <name>triangles</name></member> + <member selection="VK_GEOMETRY_TYPE_AABBS_KHR"><type>VkAccelerationStructureGeometryAabbsDataKHR</type> <name>aabbs</name></member> + <member selection="VK_GEOMETRY_TYPE_INSTANCES_KHR"><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 selector="geometryType"><type>VkAccelerationStructureGeometryDataKHR</type> <name>geometry</name></member> <member optional="true"><type>VkGeometryFlagsKHR</type> <name>flags</name></member> </type> <type category="struct" name="VkAccelerationStructureBuildGeometryInfoKHR"> @@ -4743,11 +4706,11 @@ typedef void <name>CAMetalLayer</name>; <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="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="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> @@ -4757,7 +4720,7 @@ typedef void <name>CAMetalLayer</name>; <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="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> @@ -4807,6 +4770,11 @@ typedef void <name>CAMetalLayer</name>; <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="VkPhysicalDeviceExtendedDynamicStateFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>extendedDynamicState</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> @@ -5970,7 +5938,8 @@ typedef void <name>CAMetalLayer</name>; <enum value="0x10002" name="VK_VENDOR_ID_VSI" comment="VeriSilicon vendor ID"/> <enum value="0x10003" name="VK_VENDOR_ID_KAZAN" comment="Kazan Software Renderer"/> <enum value="0x10004" name="VK_VENDOR_ID_CODEPLAY" comment="Codeplay Software Ltd. vendor ID"/> - <unused start="0x10005" comment="This is the next unused available Khronos vendor ID"/> + <enum value="0x10005" name="VK_VENDOR_ID_MESA" comment="Mesa vendor ID"/> + <unused start="0x10006" comment="This is the next unused available Khronos vendor ID"/> </enums> <enums name="VkDriverId" type="enum"> <comment>Driver IDs are now represented as enums instead of the old @@ -5988,6 +5957,7 @@ typedef void <name>CAMetalLayer</name>; <enum value="10" name="VK_DRIVER_ID_GOOGLE_SWIFTSHADER" comment="Google LLC"/> <enum value="11" name="VK_DRIVER_ID_GGP_PROPRIETARY" comment="Google LLC"/> <enum value="12" name="VK_DRIVER_ID_BROADCOM_PROPRIETARY" comment="Broadcom Inc."/> + <enum value="13" name="VK_DRIVER_ID_MESA_LLVMPIPE" comment="Mesa"/> </enums> <enums name="VkConditionalRenderingFlagBitsEXT" type="bitmask"> <enum bitpos="0" name="VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT"/> @@ -7408,16 +7378,16 @@ typedef void <name>CAMetalLayer</name>; </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdDebugMarkerBeginEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkDebugMarkerMarkerInfoEXT</type>* <name>pMarkerInfo</name></param> </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdDebugMarkerEndEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdDebugMarkerInsertEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkDebugMarkerMarkerInfoEXT</type>* <name>pMarkerInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_FORMAT_NOT_SUPPORTED"> @@ -8056,16 +8026,16 @@ typedef void <name>CAMetalLayer</name>; </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdBeginDebugUtilsLabelEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkDebugUtilsLabelEXT</type>* <name>pLabelInfo</name></param> </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdEndDebugUtilsLabelEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> </command> <command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdInsertDebugUtilsLabelEXT</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkDebugUtilsLabelEXT</type>* <name>pLabelInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY"> @@ -8189,7 +8159,7 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdDrawIndexedIndirectCountAMD" alias="vkCmdDrawIndexedIndirectCount"/> <command queues="graphics,compute,transfer" renderpass="both" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdSetCheckpointNV</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param noautovalidity="true">const <type>void</type>* <name>pCheckpointMarker</name></param> </command> <command> @@ -8340,14 +8310,14 @@ typedef void <name>CAMetalLayer</name>; <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 externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</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 externsync="true"><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"> @@ -8357,7 +8327,7 @@ typedef void <name>CAMetalLayer</name>; </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 externsync="true"><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"> @@ -8367,7 +8337,7 @@ typedef void <name>CAMetalLayer</name>; </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 externsync="true"><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"> @@ -8377,7 +8347,7 @@ typedef void <name>CAMetalLayer</name>; </command> <command queues="compute" renderpass="outside" cmdbufferlevel="primary,secondary"> <proto><type>void</type> <name>vkCmdWriteAccelerationStructuresPropertiesKHR</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</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> @@ -8387,7 +8357,7 @@ typedef void <name>CAMetalLayer</name>; <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> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkAccelerationStructureInfoNV</type>* <name>pInfo</name></param> <param optional="true"><type>VkBuffer</type> <name>instanceData</name></param> <param><type>VkDeviceSize</type> <name>instanceOffset</name></param> @@ -8409,7 +8379,7 @@ typedef void <name>CAMetalLayer</name>; </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 externsync="true"><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> @@ -8420,7 +8390,7 @@ typedef void <name>CAMetalLayer</name>; </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> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param><type>VkBuffer</type> <name>raygenShaderBindingTableBuffer</name></param> <param><type>VkDeviceSize</type> <name>raygenShaderBindingOffset</name></param> <param optional="true"><type>VkBuffer</type> <name>missShaderBindingTableBuffer</name></param> @@ -8488,7 +8458,7 @@ typedef void <name>CAMetalLayer</name>; </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 externsync="true"><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> @@ -8601,17 +8571,17 @@ typedef void <name>CAMetalLayer</name>; </command> <command queues="graphics,compute,transfer" renderpass="both" cmdbufferlevel="primary,secondary" successcodes="VK_SUCCESS" errorcodes="VK_ERROR_TOO_MANY_OBJECTS,VK_ERROR_OUT_OF_HOST_MEMORY"> <proto><type>VkResult</type> <name>vkCmdSetPerformanceMarkerINTEL</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkPerformanceMarkerInfoINTEL</type>* <name>pMarkerInfo</name></param> </command> <command queues="graphics,compute,transfer" renderpass="both" cmdbufferlevel="primary,secondary" successcodes="VK_SUCCESS" errorcodes="VK_ERROR_TOO_MANY_OBJECTS,VK_ERROR_OUT_OF_HOST_MEMORY"> <proto><type>VkResult</type> <name>vkCmdSetPerformanceStreamMarkerINTEL</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkPerformanceStreamMarkerInfoINTEL</type>* <name>pMarkerInfo</name></param> </command> <command queues="graphics,compute,transfer" renderpass="both" cmdbufferlevel="primary,secondary" successcodes="VK_SUCCESS" errorcodes="VK_ERROR_TOO_MANY_OBJECTS,VK_ERROR_OUT_OF_HOST_MEMORY"> <proto><type>VkResult</type> <name>vkCmdSetPerformanceOverrideINTEL</name></proto> - <param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param>const <type>VkPerformanceOverrideInfoINTEL</type>* <name>pOverrideInfo</name></param> </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_TOO_MANY_OBJECTS,VK_ERROR_OUT_OF_HOST_MEMORY"> @@ -8684,14 +8654,14 @@ typedef void <name>CAMetalLayer</name>; </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 externsync="true"><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 externsync="true"><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> @@ -8736,6 +8706,77 @@ typedef void <name>CAMetalLayer</name>; <param><type>VkDevice</type> <name>device</name></param> <param><type>VkDeferredOperationKHR</type> <name>operation</name></param> </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetCullModeEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param optional="true"><type>VkCullModeFlags</type> <name>cullMode</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetFrontFaceEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkFrontFace</type> <name>frontFace</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetPrimitiveTopologyEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkPrimitiveTopology</type> <name>primitiveTopology</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetViewportWithCountEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>uint32_t</type> <name>viewportCount</name></param> + <param len="viewportCount">const <type>VkViewport</type>* <name>pViewports</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetScissorWithCountEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>uint32_t</type> <name>scissorCount</name></param> + <param len="scissorCount">const <type>VkRect2D</type>* <name>pScissors</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdBindVertexBuffers2EXT</name></proto> + <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">const <type>VkDeviceSize</type>* <name>pOffsets</name></param> + <param optional="true" len="bindingCount">const <type>VkDeviceSize</type>* <name>pSizes</name></param> + <param optional="true" len="bindingCount">const <type>VkDeviceSize</type>* <name>pStrides</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetDepthTestEnableEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkBool32</type> <name>depthTestEnable</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetDepthWriteEnableEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkBool32</type> <name>depthWriteEnable</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetDepthCompareOpEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkCompareOp</type> <name>depthCompareOp</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetDepthBoundsTestEnableEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkBool32</type> <name>depthBoundsTestEnable</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetStencilTestEnableEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkBool32</type> <name>stencilTestEnable</name></param> + </command> + <command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary"> + <proto><type>void</type> <name>vkCmdSetStencilOpEXT</name></proto> + <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> + <param><type>VkStencilFaceFlags</type> <name>faceMask</name></param> + <param><type>VkStencilOp</type> <name>failOp</name></param> + <param><type>VkStencilOp</type> <name>passOp</name></param> + <param><type>VkStencilOp</type> <name>depthFailOp</name></param> + <param><type>VkCompareOp</type> <name>compareOp</name></param> + </command> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY"> <proto><type>VkResult</type> <name>vkCreatePrivateDataSlotEXT</name></proto> <param><type>VkDevice</type> <name>device</name></param> @@ -8770,30 +8811,101 @@ typedef void <name>CAMetalLayer</name>; <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions"> <require comment="Header boilerplate"> <type name="vk_platform"/> + <type name="VK_DEFINE_HANDLE"/> + <type name="VK_DEFINE_NON_DISPATCHABLE_HANDLE"/> + </require> + <require comment="Fundamental types used by many commands and structures"> + <type name="VkBool32"/> + <type name="VkDeviceAddress"/> + <type name="VkDeviceSize"/> + <type name="VkExtent2D"/> + <type name="VkExtent3D"/> + <type name="VkFlags"/> + <type name="VkOffset2D"/> + <type name="VkOffset3D"/> + <type name="VkRect2D"/> + <type name="VkResult"/> + <type name="VkStructureType"/> + </require> + <require comment="These types are part of the API, though not directly used in API commands or data structures"> + <type name="VkBaseInStructure"/> + <type name="VkBaseOutStructure"/> + <type name="VkBufferMemoryBarrier"/> + <type name="VkDispatchIndirectCommand"/> + <type name="VkDrawIndexedIndirectCommand"/> + <type name="VkDrawIndirectCommand"/> + <type name="VkImageMemoryBarrier"/> + <type name="VkMemoryBarrier"/> + <type name="VkObjectType"/> + <type name="VkVendorId"/> </require> - <require comment="API version"> + <require comment="API version macros"> <type name="VK_API_VERSION"/> <type name="VK_API_VERSION_1_0"/> + <type name="VK_HEADER_VERSION"/> + <type name="VK_HEADER_VERSION_COMPLETE"/> + <type name="VK_MAKE_VERSION"/> <type name="VK_VERSION_MAJOR"/> <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"/> - <enum name="VK_REMAINING_MIP_LEVELS"/> - <enum name="VK_REMAINING_ARRAY_LAYERS"/> - <enum name="VK_WHOLE_SIZE"/> <enum name="VK_ATTACHMENT_UNUSED"/> - <enum name="VK_TRUE"/> <enum name="VK_FALSE"/> - <type name="VK_NULL_HANDLE"/> + <enum name="VK_LOD_CLAMP_NONE"/> <enum name="VK_QUEUE_FAMILY_IGNORED"/> + <enum name="VK_REMAINING_ARRAY_LAYERS"/> + <enum name="VK_REMAINING_MIP_LEVELS"/> <enum name="VK_SUBPASS_EXTERNAL"/> + <enum name="VK_TRUE"/> + <enum name="VK_WHOLE_SIZE"/> + <type name="VK_NULL_HANDLE"/> <type name="VkPipelineCacheHeaderVersion"/> </require> <require comment="Device initialization"> + <type name="PFN_vkAllocationFunction"/> + <type name="PFN_vkFreeFunction"/> + <type name="PFN_vkInternalAllocationNotification"/> + <type name="PFN_vkInternalFreeNotification"/> + <type name="PFN_vkReallocationFunction"/> + <type name="PFN_vkVoidFunction"/> + <type name="VkAllocationCallbacks"/> + <type name="VkApplicationInfo"/> + <type name="VkFormat"/> + <type name="VkFormatFeatureFlagBits"/> + <type name="VkFormatFeatureFlags"/> + <type name="VkFormatProperties"/> + <type name="VkImageCreateFlagBits"/> + <type name="VkImageCreateFlags"/> + <type name="VkImageFormatProperties"/> + <type name="VkImageTiling"/> + <type name="VkImageType"/> + <type name="VkImageUsageFlagBits"/> + <type name="VkImageUsageFlags"/> + <type name="VkInstance"/> + <type name="VkInstanceCreateFlags"/> + <type name="VkInstanceCreateInfo"/> + <type name="VkInternalAllocationType"/> + <type name="VkMemoryHeap"/> + <type name="VkMemoryHeapFlagBits"/> + <type name="VkMemoryHeapFlags"/> + <type name="VkMemoryPropertyFlagBits"/> + <type name="VkMemoryPropertyFlags"/> + <type name="VkMemoryType"/> + <type name="VkPhysicalDevice"/> + <type name="VkPhysicalDeviceFeatures"/> + <type name="VkPhysicalDeviceLimits"/> + <type name="VkPhysicalDeviceMemoryProperties"/> + <type name="VkPhysicalDeviceProperties"/> + <type name="VkPhysicalDeviceSparseProperties"/> + <type name="VkPhysicalDeviceType"/> + <type name="VkQueueFamilyProperties"/> + <type name="VkQueueFlagBits"/> + <type name="VkQueueFlags"/> + <type name="VkSampleCountFlagBits"/> + <type name="VkSampleCountFlags"/> + <type name="VkStructureType"/> + <type name="VkSystemAllocationScope"/> <command name="vkCreateInstance"/> <command name="vkDestroyInstance"/> <command name="vkEnumeratePhysicalDevices"/> @@ -8807,24 +8919,39 @@ typedef void <name>CAMetalLayer</name>; <command name="vkGetDeviceProcAddr"/> </require> <require comment="Device commands"> + <type name="VkDevice"/> + <type name="VkDeviceCreateFlags"/> + <type name="VkDeviceCreateInfo"/> + <type name="VkDeviceQueueCreateFlagBits"/> + <type name="VkDeviceQueueCreateFlags"/> + <type name="VkDeviceQueueCreateInfo"/> <command name="vkCreateDevice"/> <command name="vkDestroyDevice"/> </require> <require comment="Extension discovery commands"> + <type name="VkExtensionProperties"/> <command name="vkEnumerateInstanceExtensionProperties"/> <command name="vkEnumerateDeviceExtensionProperties"/> </require> <require comment="Layer discovery commands"> + <type name="VkLayerProperties"/> <command name="vkEnumerateInstanceLayerProperties"/> <command name="vkEnumerateDeviceLayerProperties"/> </require> - <require comment="queue commands"> + <require comment="Queue commands"> + <type name="VkPipelineStageFlagBits"/> + <type name="VkPipelineStageFlags"/> + <type name="VkQueue"/> + <type name="VkSubmitInfo"/> <command name="vkGetDeviceQueue"/> <command name="vkQueueSubmit"/> <command name="vkQueueWaitIdle"/> <command name="vkDeviceWaitIdle"/> </require> <require comment="Memory commands"> + <type name="VkMappedMemoryRange"/> + <type name="VkMemoryAllocateInfo"/> + <type name="VkMemoryMapFlags"/> <command name="vkAllocateMemory"/> <command name="vkFreeMemory"/> <command name="vkMapMemory"/> @@ -8834,17 +8961,38 @@ typedef void <name>CAMetalLayer</name>; <command name="vkGetDeviceMemoryCommitment"/> </require> <require comment="Memory management API commands"> + <type name="VkDeviceMemory"/> + <type name="VkMemoryRequirements"/> <command name="vkBindBufferMemory"/> <command name="vkBindImageMemory"/> <command name="vkGetBufferMemoryRequirements"/> <command name="vkGetImageMemoryRequirements"/> </require> <require comment="Sparse resource memory management API commands"> + <type name="VkBindSparseInfo"/> + <type name="VkImageAspectFlagBits"/> + <type name="VkImageAspectFlags"/> + <type name="VkImageSubresource"/> + <type name="VkSparseBufferMemoryBindInfo"/> + <type name="VkSparseImageFormatFlagBits"/> + <type name="VkSparseImageFormatFlags"/> + <type name="VkSparseImageFormatProperties"/> + <type name="VkSparseImageMemoryBind"/> + <type name="VkSparseImageMemoryBindInfo"/> + <type name="VkSparseImageMemoryRequirements"/> + <type name="VkSparseImageOpaqueMemoryBindInfo"/> + <type name="VkSparseMemoryBind"/> + <type name="VkSparseMemoryBindFlagBits"/> + <type name="VkSparseMemoryBindFlags"/> <command name="vkGetImageSparseMemoryRequirements"/> <command name="vkGetPhysicalDeviceSparseImageFormatProperties"/> <command name="vkQueueBindSparse"/> </require> <require comment="Fence commands"> + <type name="VkFence"/> + <type name="VkFenceCreateFlagBits"/> + <type name="VkFenceCreateFlags"/> + <type name="VkFenceCreateInfo"/> <command name="vkCreateFence"/> <command name="vkDestroyFence"/> <command name="vkResetFences"/> @@ -8852,10 +9000,16 @@ typedef void <name>CAMetalLayer</name>; <command name="vkWaitForFences"/> </require> <require comment="Queue semaphore commands"> + <type name="VkSemaphore"/> + <type name="VkSemaphoreCreateFlags"/> + <type name="VkSemaphoreCreateInfo"/> <command name="vkCreateSemaphore"/> <command name="vkDestroySemaphore"/> </require> <require comment="Event commands"> + <type name="VkEvent"/> + <type name="VkEventCreateFlags"/> + <type name="VkEventCreateInfo"/> <command name="vkCreateEvent"/> <command name="vkDestroyEvent"/> <command name="vkGetEventStatus"/> @@ -8863,51 +9017,169 @@ typedef void <name>CAMetalLayer</name>; <command name="vkResetEvent"/> </require> <require comment="Query commands"> + <type name="VkQueryPipelineStatisticFlagBits"/> + <type name="VkQueryPipelineStatisticFlags"/> + <type name="VkQueryPool"/> + <type name="VkQueryPoolCreateFlags"/> + <type name="VkQueryPoolCreateInfo"/> + <type name="VkQueryResultFlagBits"/> + <type name="VkQueryResultFlags"/> + <type name="VkQueryType"/> <command name="vkCreateQueryPool"/> <command name="vkDestroyQueryPool"/> <command name="vkGetQueryPoolResults"/> </require> <require comment="Buffer commands"> + <type name="VkBuffer"/> + <type name="VkBufferCreateFlagBits"/> + <type name="VkBufferCreateFlags"/> + <type name="VkBufferCreateInfo"/> + <type name="VkBufferUsageFlagBits"/> + <type name="VkBufferUsageFlags"/> + <type name="VkSharingMode"/> <command name="vkCreateBuffer"/> <command name="vkDestroyBuffer"/> </require> <require comment="Buffer view commands"> + <type name="VkBufferView"/> + <type name="VkBufferViewCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkBufferViewCreateInfo"/> <command name="vkCreateBufferView"/> <command name="vkDestroyBufferView"/> </require> <require comment="Image commands"> + <type name="VkImage"/> + <type name="VkImageCreateInfo"/> + <type name="VkImageLayout"/> + <type name="VkSubresourceLayout"/> <command name="vkCreateImage"/> <command name="vkDestroyImage"/> <command name="vkGetImageSubresourceLayout"/> </require> <require comment="Image view commands"> + <type name="VkComponentMapping"/> + <type name="VkComponentSwizzle"/> + <type name="VkImageSubresourceRange"/> + <type name="VkImageView"/> + <type name="VkImageViewCreateFlagBits"/> + <type name="VkImageViewCreateFlags"/> + <type name="VkImageViewCreateInfo"/> + <type name="VkImageViewType"/> <command name="vkCreateImageView"/> <command name="vkDestroyImageView"/> </require> <require comment="Shader commands"> + <type name="VkShaderModule"/> + <type name="VkShaderModuleCreateFlagBits"/> + <type name="VkShaderModuleCreateFlags"/> + <type name="VkShaderModuleCreateInfo"/> <command name="vkCreateShaderModule"/> <command name="vkDestroyShaderModule"/> </require> <require comment="Pipeline Cache commands"> + <type name="VkPipelineCache"/> + <type name="VkPipelineCacheCreateFlagBits"/> + <type name="VkPipelineCacheCreateFlags"/> + <type name="VkPipelineCacheCreateInfo"/> <command name="vkCreatePipelineCache"/> <command name="vkDestroyPipelineCache"/> <command name="vkGetPipelineCacheData"/> <command name="vkMergePipelineCaches"/> </require> <require comment="Pipeline commands"> + <type name="VkBlendFactor"/> + <type name="VkBlendOp"/> + <type name="VkColorComponentFlagBits"/> + <type name="VkColorComponentFlags"/> + <type name="VkCompareOp"/> + <type name="VkComputePipelineCreateInfo"/> + <type name="VkCullModeFlagBits"/> + <type name="VkCullModeFlags"/> + <type name="VkDynamicState"/> + <type name="VkFrontFace"/> + <type name="VkGraphicsPipelineCreateInfo"/> + <type name="VkLogicOp"/> + <type name="VkPipeline"/> + <type name="VkPipelineColorBlendAttachmentState"/> + <type name="VkPipelineColorBlendStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineColorBlendStateCreateInfo"/> + <type name="VkPipelineCreateFlagBits"/> + <type name="VkPipelineCreateFlags"/> + <type name="VkPipelineDepthStencilStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineDepthStencilStateCreateInfo"/> + <type name="VkPipelineDynamicStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineDynamicStateCreateInfo"/> + <type name="VkPipelineInputAssemblyStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineInputAssemblyStateCreateInfo"/> + <type name="VkPipelineLayoutCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineMultisampleStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineMultisampleStateCreateInfo"/> + <type name="VkPipelineRasterizationStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineRasterizationStateCreateInfo"/> + <type name="VkPipelineShaderStageCreateFlagBits"/> + <type name="VkPipelineShaderStageCreateFlags"/> + <type name="VkPipelineShaderStageCreateInfo"/> + <type name="VkPipelineTessellationStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineTessellationStateCreateInfo"/> + <type name="VkPipelineVertexInputStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineVertexInputStateCreateInfo"/> + <type name="VkPipelineViewportStateCreateFlags" comment="Will need FlagBits type eventually"/> + <type name="VkPipelineViewportStateCreateInfo"/> + <type name="VkPolygonMode"/> + <type name="VkPrimitiveTopology"/> + <type name="VkSampleMask"/> + <type name="VkShaderStageFlagBits"/> + <type name="VkShaderStageFlags"/> + <type name="VkSpecializationInfo"/> + <type name="VkSpecializationMapEntry"/> + <type name="VkStencilOp"/> + <type name="VkStencilOpState"/> + <type name="VkVertexInputAttributeDescription"/> + <type name="VkVertexInputBindingDescription"/> + <type name="VkVertexInputRate"/> + <type name="VkViewport"/> <command name="vkCreateGraphicsPipelines"/> <command name="vkCreateComputePipelines"/> <command name="vkDestroyPipeline"/> </require> <require comment="Pipeline layout commands"> + <type name="VkPipelineLayout"/> + <type name="VkPipelineLayoutCreateInfo"/> + <type name="VkPushConstantRange"/> <command name="vkCreatePipelineLayout"/> <command name="vkDestroyPipelineLayout"/> </require> <require comment="Sampler commands"> + <type name="VkBorderColor"/> + <type name="VkFilter"/> + <type name="VkSampler"/> + <type name="VkSamplerAddressMode"/> + <type name="VkSamplerCreateFlagBits"/> + <type name="VkSamplerCreateFlags"/> + <type name="VkSamplerCreateInfo"/> + <type name="VkSamplerMipmapMode"/> <command name="vkCreateSampler"/> <command name="vkDestroySampler"/> </require> <require comment="Descriptor set commands"> + <type name="VkCopyDescriptorSet"/> + <type name="VkDescriptorBufferInfo"/> + <type name="VkDescriptorImageInfo"/> + <type name="VkDescriptorPool"/> + <type name="VkDescriptorPoolCreateFlagBits"/> + <type name="VkDescriptorPoolCreateFlags"/> + <type name="VkDescriptorPoolCreateInfo"/> + <type name="VkDescriptorPoolResetFlags"/> + <type name="VkDescriptorPoolSize"/> + <type name="VkDescriptorSet"/> + <type name="VkDescriptorSetAllocateInfo"/> + <type name="VkDescriptorSetLayout"/> + <type name="VkDescriptorSetLayoutBinding"/> + <type name="VkDescriptorSetLayoutCreateFlagBits"/> + <type name="VkDescriptorSetLayoutCreateFlags"/> + <type name="VkDescriptorSetLayoutCreateInfo"/> + <type name="VkDescriptorType"/> + <type name="VkWriteDescriptorSet"/> <command name="vkCreateDescriptorSetLayout"/> <command name="vkDestroyDescriptorSetLayout"/> <command name="vkCreateDescriptorPool"/> @@ -8918,6 +9190,29 @@ typedef void <name>CAMetalLayer</name>; <command name="vkUpdateDescriptorSets"/> </require> <require comment="Pass commands"> + <type name="VkAccessFlagBits"/> + <type name="VkAccessFlags"/> + <type name="VkAttachmentDescription"/> + <type name="VkAttachmentDescriptionFlagBits"/> + <type name="VkAttachmentDescriptionFlags"/> + <type name="VkAttachmentLoadOp"/> + <type name="VkAttachmentReference"/> + <type name="VkAttachmentStoreOp"/> + <type name="VkDependencyFlagBits"/> + <type name="VkDependencyFlags"/> + <type name="VkFramebuffer"/> + <type name="VkFramebufferCreateFlagBits"/> + <type name="VkFramebufferCreateFlags"/> + <type name="VkFramebufferCreateInfo"/> + <type name="VkPipelineBindPoint"/> + <type name="VkRenderPass"/> + <type name="VkRenderPassCreateFlagBits"/> + <type name="VkRenderPassCreateFlags"/> + <type name="VkRenderPassCreateInfo"/> + <type name="VkSubpassDependency"/> + <type name="VkSubpassDescription"/> + <type name="VkSubpassDescriptionFlagBits"/> + <type name="VkSubpassDescriptionFlags"/> <command name="vkCreateFramebuffer"/> <command name="vkDestroyFramebuffer"/> <command name="vkCreateRenderPass"/> @@ -8925,11 +9220,28 @@ typedef void <name>CAMetalLayer</name>; <command name="vkGetRenderAreaGranularity"/> </require> <require comment="Command pool commands"> + <type name="VkCommandPool"/> + <type name="VkCommandPoolCreateFlagBits"/> + <type name="VkCommandPoolCreateFlags"/> + <type name="VkCommandPoolCreateInfo"/> + <type name="VkCommandPoolResetFlagBits"/> + <type name="VkCommandPoolResetFlags"/> <command name="vkCreateCommandPool"/> <command name="vkDestroyCommandPool"/> <command name="vkResetCommandPool"/> </require> <require comment="Command buffer commands"> + <type name="VkCommandBuffer"/> + <type name="VkCommandBufferAllocateInfo"/> + <type name="VkCommandBufferBeginInfo"/> + <type name="VkCommandBufferInheritanceInfo"/> + <type name="VkCommandBufferLevel"/> + <type name="VkCommandBufferResetFlagBits"/> + <type name="VkCommandBufferResetFlags"/> + <type name="VkCommandBufferUsageFlagBits"/> + <type name="VkCommandBufferUsageFlags"/> + <type name="VkQueryControlFlagBits"/> + <type name="VkQueryControlFlags"/> <command name="vkAllocateCommandBuffers"/> <command name="vkFreeCommandBuffers"/> <command name="vkBeginCommandBuffer"/> @@ -8937,6 +9249,22 @@ typedef void <name>CAMetalLayer</name>; <command name="vkResetCommandBuffer"/> </require> <require comment="Command buffer building commands"> + <type name="VkBufferCopy"/> + <type name="VkBufferImageCopy"/> + <type name="VkClearAttachment"/> + <type name="VkClearColorValue"/> + <type name="VkClearDepthStencilValue"/> + <type name="VkClearRect"/> + <type name="VkClearValue"/> + <type name="VkImageBlit"/> + <type name="VkImageCopy"/> + <type name="VkImageResolve"/> + <type name="VkImageSubresourceLayers"/> + <type name="VkIndexType"/> + <type name="VkRenderPassBeginInfo"/> + <type name="VkStencilFaceFlagBits"/> + <type name="VkStencilFaceFlags"/> + <type name="VkSubpassContents"/> <command name="vkCmdBindPipeline"/> <command name="vkCmdSetViewport"/> <command name="vkCmdSetScissor"/> @@ -8982,18 +9310,6 @@ typedef void <name>CAMetalLayer</name>; <command name="vkCmdEndRenderPass"/> <command name="vkCmdExecuteCommands"/> </require> - <require comment="These types are part of the API and should always be defined, even when no enabled features require them."> - <type name="VkBufferMemoryBarrier"/> - <type name="VkDispatchIndirectCommand"/> - <type name="VkDrawIndexedIndirectCommand"/> - <type name="VkDrawIndirectCommand"/> - <type name="VkImageMemoryBarrier"/> - <type name="VkMemoryBarrier"/> - <type name="VkObjectType"/> - <type name="VkBaseOutStructure"/> - <type name="VkBaseInStructure"/> - <type name="VkVendorId"/> - </require> </feature> <feature api="vulkan" name="VK_VERSION_1_1" number="1.1" comment="Vulkan 1.1 core API interface definitions."> <require> @@ -9079,7 +9395,6 @@ typedef void <name>CAMetalLayer</name>; <type name="VkBufferMemoryRequirementsInfo2"/> <type name="VkImageMemoryRequirementsInfo2"/> <type name="VkImageSparseMemoryRequirementsInfo2"/> - <type name="VkMemoryRequirements2KHR"/> <type name="VkMemoryRequirements2"/> <type name="VkSparseImageMemoryRequirements2"/> <command name="vkGetImageMemoryRequirements2"/> @@ -9395,6 +9710,7 @@ typedef void <name>CAMetalLayer</name>; <require comment="Promoted from VK_KHR_shader_float_controls (extension 198)"> <enum offset="0" extends="VkStructureType" extnumber="198" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES"/> <type name="VkPhysicalDeviceFloatControlsProperties"/> + <type name="VkShaderFloatControlsIndependence"/> </require> <require comment="Promoted from VK_EXT_descriptor_indexing (extension 162)"> <enum offset="0" extends="VkStructureType" extnumber="162" name="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO"/> @@ -9446,6 +9762,7 @@ typedef void <name>CAMetalLayer</name>; <require comment="Promoted from VK_KHR_imageless_framebuffer (extension 109)"> <type name="VkPhysicalDeviceImagelessFramebufferFeatures"/> <type name="VkFramebufferAttachmentsCreateInfo"/> + <type name="VkFramebufferAttachmentImageInfo"/> <type name="VkRenderPassAttachmentBeginInfo"/> <enum offset="0" extends="VkStructureType" extnumber="109" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES"/> <enum offset="1" extends="VkStructureType" extnumber="109" name="VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO"/> @@ -9535,6 +9852,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPresentModeKHR"/> <type name="VkColorSpaceKHR"/> <type name="VkCompositeAlphaFlagBitsKHR"/> + <type name="VkCompositeAlphaFlagsKHR"/> <type name="VkSurfaceCapabilitiesKHR"/> <type name="VkSurfaceFormatKHR"/> <command name="vkDestroySurfaceKHR"/> @@ -9598,16 +9916,19 @@ typedef void <name>CAMetalLayer</name>; <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_DISPLAY_KHR" comment="VkDisplayKHR"/> <enum offset="1" extends="VkObjectType" name="VK_OBJECT_TYPE_DISPLAY_MODE_KHR" comment="VkDisplayModeKHR"/> <type name="VkDisplayKHR"/> + <type name="VkDisplayModeCreateFlagsKHR"/> + <type name="VkDisplayModeCreateInfoKHR"/> <type name="VkDisplayModeKHR"/> - <type name="VkDisplayPlaneAlphaFlagsKHR"/> - <type name="VkDisplayPlaneAlphaFlagBitsKHR"/> - <type name="VkDisplayPropertiesKHR"/> <type name="VkDisplayModeParametersKHR"/> <type name="VkDisplayModePropertiesKHR"/> - <type name="VkDisplayModeCreateInfoKHR"/> + <type name="VkDisplayPlaneAlphaFlagBitsKHR"/> + <type name="VkDisplayPlaneAlphaFlagsKHR"/> <type name="VkDisplayPlaneCapabilitiesKHR"/> <type name="VkDisplayPlanePropertiesKHR"/> + <type name="VkDisplayPropertiesKHR"/> + <type name="VkDisplaySurfaceCreateFlagsKHR"/> <type name="VkDisplaySurfaceCreateInfoKHR"/> + <type name="VkSurfaceTransformFlagsKHR"/> <command name="vkGetPhysicalDeviceDisplayPropertiesKHR"/> <command name="vkGetPhysicalDeviceDisplayPlanePropertiesKHR"/> <command name="vkGetDisplayPlaneSupportedDisplaysKHR"/> @@ -11083,13 +11404,19 @@ typedef void <name>CAMetalLayer</name>; <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT"/> <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT"/> <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT" comment="VkDebugUtilsMessengerEXT"/> - <type name="VkDebugUtilsMessengerEXT"/> <type name="PFN_vkDebugUtilsMessengerCallbackEXT"/> - <type name="VkDebugUtilsObjectNameInfoEXT"/> - <type name="VkDebugUtilsObjectTagInfoEXT"/> <type name="VkDebugUtilsLabelEXT"/> + <type name="VkDebugUtilsMessageSeverityFlagBitsEXT"/> + <type name="VkDebugUtilsMessageSeverityFlagsEXT"/> + <type name="VkDebugUtilsMessageTypeFlagBitsEXT"/> + <type name="VkDebugUtilsMessageTypeFlagsEXT"/> <type name="VkDebugUtilsMessengerCallbackDataEXT"/> + <type name="VkDebugUtilsMessengerCallbackDataFlagsEXT"/> + <type name="VkDebugUtilsMessengerCreateFlagsEXT"/> <type name="VkDebugUtilsMessengerCreateInfoEXT"/> + <type name="VkDebugUtilsMessengerEXT"/> + <type name="VkDebugUtilsObjectNameInfoEXT"/> + <type name="VkDebugUtilsObjectTagInfoEXT"/> <command name="vkSetDebugUtilsObjectNameEXT"/> <command name="vkSetDebugUtilsObjectTagEXT"/> <command name="vkQueueBeginDebugUtilsLabelEXT"/> @@ -11122,6 +11449,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkExternalFormatANDROID"/> <command name="vkGetAndroidHardwareBufferPropertiesANDROID"/> <command name="vkGetMemoryAndroidHardwareBufferANDROID"/> + <type name="AHardwareBuffer"/> </require> </extension> <extension name="VK_EXT_sampler_filter_minmax" number="131" type="device" author="NV" requires="VK_KHR_get_physical_device_properties2" contact="Jeff Bolz @jeffbolznv" supported="vulkan" promotedto="VK_VERSION_1_2"> @@ -12343,6 +12671,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkMetalSurfaceCreateFlagsEXT"/> <type name="VkMetalSurfaceCreateInfoEXT"/> <command name="vkCreateMetalSurfaceEXT"/> + <type name="CAMetalLayer"/> </require> </extension> <extension name="VK_EXT_fragment_density_map" number="219" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Matthew Netsch @mnetsch" supported="vulkan"> @@ -12807,15 +13136,41 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_267"" name="VK_EXT_extension_267"/> </require> </extension> - <extension name="VK_KHR_extension_268" number="268" type="device" author="KHR" contact="Piers Daniell @pdaniell-nv" supported="disabled"> - <require> - <enum value="0" name="VK_EXT_EXTENSION_268_SPEC_VERSION"/> - <enum value=""VK_KHR_extension_268"" name="VK_EXT_extension_268"/> - </require> - </extension> + <extension name="VK_EXT_extended_dynamic_state" number="268" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan"> + <require> + <enum value="1" name="VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION"/> + <enum value=""VK_EXT_extended_dynamic_state"" name="VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"/> + <enum offset="0" extends="VkDynamicState" name="VK_DYNAMIC_STATE_CULL_MODE_EXT"/> + <enum offset="1" extends="VkDynamicState" name="VK_DYNAMIC_STATE_FRONT_FACE_EXT"/> + <enum offset="2" extends="VkDynamicState" name="VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT"/> + <enum offset="3" extends="VkDynamicState" name="VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT"/> + <enum offset="4" extends="VkDynamicState" name="VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT"/> + <enum offset="5" extends="VkDynamicState" name="VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT"/> + <enum offset="6" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT"/> + <enum offset="7" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT"/> + <enum offset="8" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT"/> + <enum offset="9" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT"/> + <enum offset="10" extends="VkDynamicState" name="VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT"/> + <enum offset="11" extends="VkDynamicState" name="VK_DYNAMIC_STATE_STENCIL_OP_EXT"/> + <type name="VkPhysicalDeviceExtendedDynamicStateFeaturesEXT"/> + <command name="vkCmdSetCullModeEXT"/> + <command name="vkCmdSetFrontFaceEXT"/> + <command name="vkCmdSetPrimitiveTopologyEXT"/> + <command name="vkCmdSetViewportWithCountEXT"/> + <command name="vkCmdSetScissorWithCountEXT"/> + <command name="vkCmdBindVertexBuffers2EXT"/> + <command name="vkCmdSetDepthTestEnableEXT"/> + <command name="vkCmdSetDepthWriteEnableEXT"/> + <command name="vkCmdSetDepthCompareOpEXT"/> + <command name="vkCmdSetDepthBoundsTestEnableEXT"/> + <command name="vkCmdSetStencilTestEnableEXT"/> + <command name="vkCmdSetStencilOpEXT"/> + </require> + </extension> <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="2" name="VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION"/> + <enum value="3" 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"/> @@ -12832,7 +13187,7 @@ typedef void <name>CAMetalLayer</name>; <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"> + <extension name="VK_KHR_pipeline_executable_properties" number="270" type="device" requires="VK_KHR_get_physical_device_properties2" author="KHR" contact="Jason Ekstrand @jekstrand" specialuse="devtools" supported="vulkan"> <require> <enum value="1" name="VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION"/> <enum value=""VK_KHR_pipeline_executable_properties"" name="VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME"/> @@ -13029,8 +13384,43 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_EXT_extension_289" number="289" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> <require> + <comment> + These enums are present only to inform downstream + consumers like KTX2. There is no actual Vulkan extension + corresponding to the enums. + </comment> <enum value="0" name="VK_EXT_EXTENSION_289_SPEC_VERSION"/> <enum value=""VK_EXT_extension_289"" name="VK_EXT_EXTENSION_289_EXTENSION_NAME"/> + <enum extends="VkFormat" extnumber="289" offset="0" name="VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="1" name="VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="2" name="VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="3" name="VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="4" name="VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="5" name="VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="6" name="VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="7" name="VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="8" name="VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="9" name="VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="10" name="VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="11" name="VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="12" name="VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="13" name="VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="14" name="VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="15" name="VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="16" name="VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="17" name="VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="18" name="VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="19" name="VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="20" name="VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="21" name="VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="22" name="VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="23" name="VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="24" name="VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="25" name="VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="26" name="VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="27" name="VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="28" name="VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT"/> + <enum extends="VkFormat" extnumber="289" offset="29" name="VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT"/> </require> </extension> <extension name="VK_GOOGLE_user_type" number="290" type="device" author="GOOGLE" contact="Kaye Mason @chaleur" supported="vulkan"> @@ -13391,5 +13781,47 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_342"" name="VK_EXT_EXTENSION_342_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_ARM_extension_343" number="343" author="ARM" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> + <require> + <enum value="0" name="VK_ARM_EXTENSION_343_SPEC_VERSION"/> + <enum value=""VK_ARM_extension_343"" name="VK_ARM_EXTENSION_343_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_ARM_extension_344" number="344" author="ARM" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> + <require> + <enum value="0" name="VK_ARM_EXTENSION_344_SPEC_VERSION"/> + <enum value=""VK_ARM_extension_344"" name="VK_ARM_EXTENSION_344_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_ARM_extension_345" number="345" author="ARM" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> + <require> + <enum value="0" name="VK_ARM_EXTENSION_345_SPEC_VERSION"/> + <enum value=""VK_ARM_extension_345"" name="VK_ARM_EXTENSION_345_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_NV_extension_346" number="346" author="NV" contact="Jeff Juliano @jjuliano" supported="disabled"> + <require> + <enum value="0" name="VK_NV_EXTENSION_346_SPEC_VERSION"/> + <enum value=""VK_NV_extension_346"" name="VK_NV_EXTENSION_346_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_EXT_extension_347" number="347" author="EXT" contact="Nicolas Caramelli @caramelli" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_347_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_347"" name="VK_EXT_EXTENSION_347_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_348" number="348" author="KHR" contact="Daniel Koch @dgkoch" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_348_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_348"" name="VK_KHR_EXTENSION_348_EXTENSION_NAME"/> + </require> + </extension> + <extension name="VK_KHR_extension_349" number="349" author="KHR" contact="Daniel Koch @dgkoch" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_349_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_349"" name="VK_KHR_EXTENSION_349_EXTENSION_NAME"/> + </require> + </extension> </extensions> </registry> |