diff options
author | Jon Leech <[email protected]> | 2020-11-15 23:15:15 -0800 |
---|---|---|
committer | Jon Leech <[email protected]> | 2020-11-15 23:15:53 -0800 |
commit | 11c6670b4a4f766ed4f1e777d1b3c3dc082dfa5f (patch) | |
tree | 8e051086f16cfa9b2e0879ef21627fe742c9fe63 | |
parent | 670ffea9d61b9f4b8f68c919dab7caf33dfd9718 (diff) | |
download | Vulkan-Headers-11c6670b4a4f766ed4f1e777d1b3c3dc082dfa5f.tar.gz Vulkan-Headers-11c6670b4a4f766ed4f1e777d1b3c3dc082dfa5f.zip |
Update for Vulkan-Docs 1.2.161v1.2.161
-rw-r--r-- | include/vulkan/vulkan.hpp | 19 | ||||
-rw-r--r-- | include/vulkan/vulkan_core.h | 2 | ||||
-rw-r--r-- | registry/validusage.json | 46 | ||||
-rw-r--r-- | registry/vk.xml | 15 |
4 files changed, 37 insertions, 45 deletions
diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index 9ca2fd6..30d830e 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -94,7 +94,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h #endif -static_assert( VK_HEADER_VERSION == 160 , "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 161 , "Wrong VK_HEADER_VERSION!" ); // 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default. // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION @@ -955,7 +955,7 @@ namespace VULKAN_HPP_NAMESPACE template <typename T = typename std::tuple_element<0, std::tuple<ChainElements...>>::type, size_t Which = 0> T const & get() const VULKAN_HPP_NOEXCEPT { - return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( static_cast<std::tuple<ChainElements...>&>( *this ) ); + return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( static_cast<std::tuple<ChainElements...> const &>( *this ) ); } template <typename T0, typename T1, typename... Ts> @@ -7850,14 +7850,6 @@ namespace VULKAN_HPP_NAMESPACE } } - enum class SemaphoreCreateFlagBits : VkSemaphoreCreateFlags - {}; - - VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits ) - { - return "(void)"; - } - enum class SemaphoreImportFlagBits : VkSemaphoreImportFlags { eTemporary = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT @@ -13078,6 +13070,13 @@ namespace VULKAN_HPP_NAMESPACE return "{ " + result.substr(0, result.size() - 3) + " }"; } + enum class SemaphoreCreateFlagBits : VkFlags + {}; + + VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits ) + { + return "(void)"; + } using SemaphoreCreateFlags = Flags<SemaphoreCreateFlagBits>; diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 13d562f..4dc340d 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -43,7 +43,7 @@ extern "C" { #define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 160 +#define VK_HEADER_VERSION 161 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION) diff --git a/registry/validusage.json b/registry/validusage.json index 04afcfa..773c528 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.2.160", - "comment": "from git branch: github-main commit: f90136facacd25f016e523064f03713bdfe1b22d", - "date": "2020-11-09 03:02:15Z" + "api version": "1.2.161", + "comment": "from git branch: github-main commit: 9f9fd160c8dbd8752447a4a8a2e32fbb92b9722d", + "date": "2020-11-16 06:16:55Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -3841,10 +3841,6 @@ { "vuid": "VUID-VkRenderPassCreateInfo-pNext-02515", "text": " If the <code>pNext</code> chain includes a <a href=\"#VkRenderPassMultiviewCreateInfo\">VkRenderPassMultiviewCreateInfo</a> structure, and each element of its <code>pViewMasks</code> member is <code>0</code>, <code>correlatedViewMaskCount</code> <strong class=\"purple\">must</strong> be <code>0</code>" - }, - { - "vuid": "VUID-VkRenderPassCreateInfo-pNext-02516", - "text": " If the <code>pNext</code> chain includes a <a href=\"#VkRenderPassMultiviewCreateInfo\">VkRenderPassMultiviewCreateInfo</a> structure, each element of its <code>pViewMask</code> member <strong class=\"purple\">must</strong> not have a bit set at an index greater than or equal to <a href=\"#VkPhysicalDeviceLimits\">VkPhysicalDeviceLimits</a>::<code>maxFramebufferLayers</code>" } ] }, @@ -4375,10 +4371,6 @@ "text": " For any element of <code>pDependencies</code> where its <code>srcSubpass</code> member equals its <code>dstSubpass</code> member, if the <code>viewMask</code> member of the corresponding element of <code>pSubpasses</code> includes more than one bit, its <code>dependencyFlags</code> member <strong class=\"purple\">must</strong> include <code>VK_DEPENDENCY_VIEW_LOCAL_BIT</code>" }, { - "vuid": "VUID-VkRenderPassCreateInfo2-viewMask-02524", - "text": " The <code>viewMask</code> member <strong class=\"purple\">must</strong> not have a bit set at an index greater than or equal to <a href=\"#VkPhysicalDeviceLimits\">VkPhysicalDeviceLimits</a>::<code>maxFramebufferLayers</code>" - }, - { "vuid": "VUID-VkRenderPassCreateInfo2-attachment-02525", "text": " If the <code>attachment</code> member of any element of the <code>pInputAttachments</code> member of any element of <code>pSubpasses</code> is not <code>VK_ATTACHMENT_UNUSED</code>, the <code>aspectMask</code> member of that element of <code>pInputAttachments</code> <strong class=\"purple\">must</strong> only include aspects that are present in images of the format specified by the element of <code>pAttachments</code> specified by <code>attachment</code>" }, @@ -4429,8 +4421,12 @@ ], "(VK_VERSION_1_2,VK_KHR_create_renderpass2)+(VK_KHR_fragment_shading_rate)": [ { - "vuid": "VUID-VkRenderPassCreateInfo2-pAttachmentImageInfos-04520", - "text": " If any element of <code>pAttachmentImageInfos</code> is used as a fragment shading rate attachment in any subpass, it <strong class=\"purple\">must</strong> not be used as any other attachment in the render pass" + "vuid": "VUID-VkRenderPassCreateInfo2-pAttachments-04585", + "text": " If any element of <code>pAttachments</code> is used as a fragment shading rate attachment in any subpass, it <strong class=\"purple\">must</strong> not be used as any other attachment in the render pass" + }, + { + "vuid": "VUID-VkRenderPassCreateInfo2-pAttachments-04586", + "text": " If any element of <code>pAttachments</code> is used as a fragment shading rate attachment in any subpass, it <strong class=\"purple\">must</strong> have an image format whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>" } ], "(VK_VERSION_1_2,VK_KHR_create_renderpass2)+(VK_KHR_fragment_shading_rate)+(VK_QCOM_render_pass_transform)": [ @@ -4726,12 +4722,6 @@ "vuid": "VUID-VkSubpassDescription2-attachment-04563", "text": " If the <code>attachment</code> member of any element of <code>pInputAttachments</code> is not <code>VK_ATTACHMENT_UNUSED</code>, then the <code>aspectMask</code> member <strong class=\"purple\">must</strong> not include <code>VK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXT</code> for any index <code>i</code>" } - ], - "(VK_VERSION_1_2,VK_KHR_create_renderpass2)+(VK_KHR_fragment_shading_rate)": [ - { - "vuid": "VUID-VkSubpassDescription2-pFragmentShadingRateAttachment-04522", - "text": " If the <code>pFragmentShadingRateAttachment</code> member of a <a href=\"#VkFragmentShadingRateAttachmentInfoKHR\">VkFragmentShadingRateAttachmentInfoKHR</a> structure included in the <code>pNext</code> chain is not <code>NULL</code>, and its <code>attachment</code> member is not <code>VK_ATTACHMENT_UNUSED</code>, that attachment <strong class=\"purple\">must</strong> not be used as any other attachment in this subpass" - } ] }, "VkSubpassDescriptionDepthStencilResolve": { @@ -4801,10 +4791,6 @@ "VkFragmentShadingRateAttachmentInfoKHR": { "(VK_VERSION_1_2,VK_KHR_create_renderpass2)+(VK_KHR_fragment_shading_rate)": [ { - "vuid": "VUID-VkFragmentShadingRateAttachmentInfoKHR-pFragmentShadingRateAttachment-04523", - "text": " If <code>pFragmentShadingRateAttachment</code> is not <code>NULL</code> and its <code>attachment</code> member is not <code>VK_ATTACHMENT_UNUSED</code> then it <strong class=\"purple\">must</strong> have a format whose features contain <code>VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>" - }, - { "vuid": "VUID-VkFragmentShadingRateAttachmentInfoKHR-pFragmentShadingRateAttachment-04524", "text": " If <code>pFragmentShadingRateAttachment</code> is not <code>NULL</code> and its <code>attachment</code> member is not <code>VK_ATTACHMENT_UNUSED</code>, its <code>layout</code> member <strong class=\"purple\">must</strong> be equal to <code>VK_IMAGE_LAYOUT_GENERAL</code> or <code>VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR</code>" }, @@ -5309,6 +5295,10 @@ { "vuid": "VUID-VkFramebufferCreateInfo-flags-04545", "text": " If <code>flags</code> includes <code>VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT</code>, the <code>layerCount</code> member of any element of the <code>pAttachmentImageInfos</code> member of an instance of <a href=\"#VkFramebufferAttachmentsCreateInfo\">VkFramebufferAttachmentsCreateInfo</a> in the <code>pNext</code> chain that is used as a <a href=\"#primsrast-fragment-shading-rate-attachment\">fragment shading rate attachment</a> <strong class=\"purple\">must</strong> be either <code>1</code>, or greater than or equal to <code>layers</code>" + }, + { + "vuid": "VUID-VkFramebufferCreateInfo-flags-04587", + "text": " If <code>flags</code> includes <code>VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT</code>, and <code>renderPass</code> was specified with non-zero view masks, each element of <code>pAttachments</code> that is used as a <a href=\"#primsrast-fragment-shading-rate-attachment\">fragment shading rate attachment</a> by <code>renderPass</code> <strong class=\"purple\">must</strong> have a <code>layerCount</code> that is either <code>1</code>, or greater than the index of the most significant bit set in any of those view masks" } ], "(VK_VERSION_1_2,VK_KHR_imageless_framebuffer)+(VK_VERSION_1_1,VK_KHR_multiview)": [ @@ -10715,10 +10705,6 @@ { "vuid": "VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> values" - }, - { - "vuid": "VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask", - "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> not be <code>0</code>" } ] }, @@ -11254,17 +11240,17 @@ "(VK_NV_shading_rate_image)": [ { "vuid": "VUID-VkImageViewCreateInfo-image-02087", - "text": " If <code>image</code> was created with <code>usage</code> containing <code>VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV</code>, <code>format</code> <strong class=\"purple\">must</strong> be <code>VK_FORMAT_R8_UINT</code>" + "text": " If the <a href=\"#features-shadingRateImage\"><code>shadingRateImage</code> feature</a> is enabled, and If <code>image</code> was created with <code>usage</code> containing <code>VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV</code>, <code>format</code> <strong class=\"purple\">must</strong> be <code>VK_FORMAT_R8_UINT</code>" } ], "(VK_KHR_fragment_shading_rate)": [ { "vuid": "VUID-VkImageViewCreateInfo-usage-04550", - "text": " If the <code>usage</code> for the image view includes <code>VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>, then the image view’s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>" + "text": " If the <a href=\"#features-attachmentFragmentShadingRate\"><code>attachmentFragmentShadingRate</code> feature</a> is enabled, and the <code>usage</code> for the image view includes <code>VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>, then the image view’s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>" }, { "vuid": "VUID-VkImageViewCreateInfo-usage-04551", - "text": " If the <code>usage</code> for the image view includes <code>VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code> and <a href=\"#limits-layeredShadingRateAttachments\"><code>layeredShadingRateAttachments</code></a> is <code>VK_FALSE</code>, <code>subresourceRange.layerCount</code> <strong class=\"purple\">must</strong> be <code>1</code>" + "text": " If the <a href=\"#features-attachmentFragmentShadingRate\"><code>attachmentFragmentShadingRate</code> feature</a> is enabled, the <code>usage</code> for the image view includes <code>VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>, and <a href=\"#limits-layeredShadingRateAttachments\"><code>layeredShadingRateAttachments</code></a> is <code>VK_FALSE</code>, <code>subresourceRange.layerCount</code> <strong class=\"purple\">must</strong> be <code>1</code>" } ], "(VK_EXT_fragment_density_map)+(VK_EXT_fragment_density_map2)": [ diff --git a/registry/vk.xml b/registry/vk.xml index 331360b..28801ae 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -135,7 +135,7 @@ branch of the member gitlab 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> 160</type> +#define <name>VK_HEADER_VERSION</name> 161</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> @@ -218,6 +218,7 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkPipelineCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCreateFlags</name>;</type> <type requires="VkColorComponentFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkColorComponentFlags</name>;</type> <type requires="VkFenceCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFenceCreateFlags</name>;</type> + <comment>When VkSemaphoreCreateFlagBits is first extended, need to add a requires= attribute for it to VkSemaphoreCreateFlags</comment> <type category="bitmask">typedef <type>VkFlags</type> <name>VkSemaphoreCreateFlags</name>;</type> <type requires="VkFormatFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFormatFeatureFlags</name>;</type> <type requires="VkQueryControlFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryControlFlags</name>;</type> @@ -457,6 +458,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkDescriptorPoolCreateFlagBits" category="enum"/> <type name="VkDependencyFlagBits" category="enum"/> <type name="VkObjectType" category="enum"/> + <comment>When VkSemaphoreCreateFlagBits is first extended, need to add a type enum tag for it here</comment> <comment>Extensions</comment> <type name="VkIndirectCommandsLayoutUsageFlagBitsNV" category="enum"/> @@ -2172,7 +2174,7 @@ typedef void <name>CAMetalLayer</name>; <type category="struct" name="VkExternalMemoryImageCreateInfo" structextends="VkImageCreateInfo"> <member values="VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> - <member><type>VkExternalMemoryHandleTypeFlags</type> <name>handleTypes</name></member> + <member optional="true"><type>VkExternalMemoryHandleTypeFlags</type> <name>handleTypes</name></member> </type> <type category="struct" name="VkExternalMemoryImageCreateInfoKHR" alias="VkExternalMemoryImageCreateInfo"/> <type category="struct" name="VkExternalMemoryBufferCreateInfo" structextends="VkBufferCreateInfo"> @@ -5780,8 +5782,7 @@ typedef void <name>CAMetalLayer</name>; <enums name="VkFenceCreateFlagBits" type="bitmask"> <enum bitpos="0" name="VK_FENCE_CREATE_SIGNALED_BIT"/> </enums> - <enums name="VkSemaphoreCreateFlagBits" type="bitmask"> - </enums> + <comment>When VkSemaphoreCreateFlagBits is first extended, need to add a bitmask enums tag for it here</comment> <enums name="VkFormatFeatureFlagBits" type="bitmask"> <enum bitpos="0" name="VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT" comment="Format can be used for sampled images (SAMPLED_IMAGE and COMBINED_IMAGE_SAMPLER descriptor types)"/> <enum bitpos="1" name="VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT" comment="Format can be used for storage images (STORAGE_IMAGE descriptor type)"/> @@ -14384,6 +14385,12 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_362"" name="VK_EXT_EXTENSION_362_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_EXT_extension_363" number="363" author="EXT" contact="Kaye Mason @chaleur" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_363_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_363"" name="VK_EXT_EXTENSION_363_EXTENSION_NAME"/> + </require> + </extension> </extensions> <spirvextensions comment="SPIR-V Extensions allowed in Vulkan and what is required to use it"> <spirvextension name="SPV_KHR_variable_pointers"> |