diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2018-04-05 15:46:53 -0600 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2018-04-06 10:45:21 -0600 |
| commit | 3a4ca3c9dfd29cce96eb1a197ebd53a29185a6b9 (patch) | |
| tree | d310f3618e05e9c4473751a98872f3b8817f5564 | |
| parent | 220f967de08b04f724e8ad3372598c4db1ae7f3b (diff) | |
| download | usermoji-3a4ca3c9dfd29cce96eb1a197ebd53a29185a6b9.tar.xz | |
header: Update to version 1.1.72 of the Vulkan hdr
- updated layer json files
- updated vulkan_core.h
- updated validusage.json
- updated vk_validation_error_database.txt
- updated vk_validation_error_messages.h
- updated vuid_mapping.py
- updated vk.xml
- updated vulkan.hpp
- moved vuid 1ae00652 to 1ae00f06
Change-Id: Id6ba342841cca04c0669b7feb39d82e2b8052443
22 files changed, 2057 insertions, 1077 deletions
diff --git a/icd/linux/VkICD_mock_icd.json b/icd/linux/VkICD_mock_icd.json index 58b6dcbb..fbcc1df3 100644 --- a/icd/linux/VkICD_mock_icd.json +++ b/icd/linux/VkICD_mock_icd.json @@ -2,7 +2,7 @@ "file_format_version" : "1.0.1", "ICD": { "library_path": "./libVkICD_mock_icd.so", - "api_version": "1.1.71" + "api_version": "1.1.72" } } diff --git a/icd/windows/VkICD_mock_icd.json b/icd/windows/VkICD_mock_icd.json index 23c99255..baffe794 100644 --- a/icd/windows/VkICD_mock_icd.json +++ b/icd/windows/VkICD_mock_icd.json @@ -2,7 +2,7 @@ "file_format_version" : "1.0.1", "ICD": { "library_path": ".\\VkICD_mock_icd.dll", - "api_version": "1.1.71" + "api_version": "1.1.72" } } diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index aa796cf4..2f982471 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -36,7 +36,7 @@ # include <cassert> # define VULKAN_HPP_ASSERT assert #endif -static_assert( VK_HEADER_VERSION == 71 , "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 72 , "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 @@ -544,6 +544,7 @@ namespace VULKAN_HPP_NAMESPACE eErrorIncompatibleDisplayKHR = VK_ERROR_INCOMPATIBLE_DISPLAY_KHR, eErrorValidationFailedEXT = VK_ERROR_VALIDATION_FAILED_EXT, eErrorInvalidShaderNV = VK_ERROR_INVALID_SHADER_NV, + eErrorFragmentationEXT = VK_ERROR_FRAGMENTATION_EXT, eErrorNotPermittedEXT = VK_ERROR_NOT_PERMITTED_EXT }; @@ -578,6 +579,7 @@ namespace VULKAN_HPP_NAMESPACE case Result::eErrorIncompatibleDisplayKHR: return "ErrorIncompatibleDisplayKHR"; case Result::eErrorValidationFailedEXT: return "ErrorValidationFailedEXT"; case Result::eErrorInvalidShaderNV: return "ErrorInvalidShaderNV"; + case Result::eErrorFragmentationEXT: return "ErrorFragmentationEXT"; case Result::eErrorNotPermittedEXT: return "ErrorNotPermittedEXT"; default: return "invalid"; } @@ -823,6 +825,14 @@ namespace VULKAN_HPP_NAMESPACE InvalidShaderNVError( char const * message ) : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message ) {} }; + class FragmentationEXTError : public SystemError + { + public: + FragmentationEXTError( std::string const& message ) + : SystemError( make_error_code( Result::eErrorFragmentationEXT ), message ) {} + FragmentationEXTError( char const * message ) + : SystemError( make_error_code( Result::eErrorFragmentationEXT ), message ) {} + }; class NotPermittedEXTError : public SystemError { public: @@ -856,6 +866,7 @@ namespace VULKAN_HPP_NAMESPACE case Result::eErrorIncompatibleDisplayKHR: throw IncompatibleDisplayKHRError ( message ); case Result::eErrorValidationFailedEXT: throw ValidationFailedEXTError ( message ); case Result::eErrorInvalidShaderNV: throw InvalidShaderNVError ( message ); + case Result::eErrorFragmentationEXT: throw FragmentationEXTError ( message ); case Result::eErrorNotPermittedEXT: throw NotPermittedEXTError ( message ); default: throw SystemError( make_error_code( result ) ); } @@ -8558,10 +8569,16 @@ public: ePipelineCoverageModulationStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV, eValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT, eShaderModuleValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT, + eDescriptorSetLayoutBindingFlagsCreateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT, + ePhysicalDeviceDescriptorIndexingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT, + ePhysicalDeviceDescriptorIndexingPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT, + eDescriptorSetVariableDescriptorCountAllocateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT, + eDescriptorSetVariableDescriptorCountLayoutSupportEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT, eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT, eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT, eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT, ePhysicalDeviceExternalMemoryHostPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, + ePhysicalDeviceShaderCorePropertiesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, ePhysicalDeviceVertexAttributeDivisorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT }; @@ -15738,6 +15755,450 @@ public: }; static_assert( sizeof( PhysicalDeviceConservativeRasterizationPropertiesEXT ) == sizeof( VkPhysicalDeviceConservativeRasterizationPropertiesEXT ), "struct and wrapper have different size!" ); + struct PhysicalDeviceShaderCorePropertiesAMD + { + operator const VkPhysicalDeviceShaderCorePropertiesAMD&() const + { + return *reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD*>(this); + } + + bool operator==( PhysicalDeviceShaderCorePropertiesAMD const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( shaderEngineCount == rhs.shaderEngineCount ) + && ( shaderArraysPerEngineCount == rhs.shaderArraysPerEngineCount ) + && ( computeUnitsPerShaderArray == rhs.computeUnitsPerShaderArray ) + && ( simdPerComputeUnit == rhs.simdPerComputeUnit ) + && ( wavefrontsPerSimd == rhs.wavefrontsPerSimd ) + && ( wavefrontSize == rhs.wavefrontSize ) + && ( sgprsPerSimd == rhs.sgprsPerSimd ) + && ( minSgprAllocation == rhs.minSgprAllocation ) + && ( maxSgprAllocation == rhs.maxSgprAllocation ) + && ( sgprAllocationGranularity == rhs.sgprAllocationGranularity ) + && ( vgprsPerSimd == rhs.vgprsPerSimd ) + && ( minVgprAllocation == rhs.minVgprAllocation ) + && ( maxVgprAllocation == rhs.maxVgprAllocation ) + && ( vgprAllocationGranularity == rhs.vgprAllocationGranularity ); + } + + bool operator!=( PhysicalDeviceShaderCorePropertiesAMD const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD; + + public: + void* pNext = nullptr; + uint32_t shaderEngineCount; + uint32_t shaderArraysPerEngineCount; + uint32_t computeUnitsPerShaderArray; + uint32_t simdPerComputeUnit; + uint32_t wavefrontsPerSimd; + uint32_t wavefrontSize; + uint32_t sgprsPerSimd; + uint32_t minSgprAllocation; + uint32_t maxSgprAllocation; + uint32_t sgprAllocationGranularity; + uint32_t vgprsPerSimd; + uint32_t minVgprAllocation; + uint32_t maxVgprAllocation; + uint32_t vgprAllocationGranularity; + }; + static_assert( sizeof( PhysicalDeviceShaderCorePropertiesAMD ) == sizeof( VkPhysicalDeviceShaderCorePropertiesAMD ), "struct and wrapper have different size!" ); + + struct PhysicalDeviceDescriptorIndexingFeaturesEXT + { + PhysicalDeviceDescriptorIndexingFeaturesEXT( Bool32 shaderInputAttachmentArrayDynamicIndexing_ = 0, Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = 0, Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = 0, Bool32 shaderUniformBufferArrayNonUniformIndexing_ = 0, Bool32 shaderSampledImageArrayNonUniformIndexing_ = 0, Bool32 shaderStorageBufferArrayNonUniformIndexing_ = 0, Bool32 shaderStorageImageArrayNonUniformIndexing_ = 0, Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = 0, Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = 0, Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = 0, Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = 0, Bool32 descriptorBindingSampledImageUpdateAfterBind_ = 0, Bool32 descriptorBindingStorageImageUpdateAfterBind_ = 0, Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = 0, Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = 0, Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = 0, Bool32 descriptorBindingUpdateUnusedWhilePending_ = 0, Bool32 descriptorBindingPartiallyBound_ = 0, Bool32 descriptorBindingVariableDescriptorCount_ = 0, Bool32 runtimeDescriptorArray_ = 0 ) + : shaderInputAttachmentArrayDynamicIndexing( shaderInputAttachmentArrayDynamicIndexing_ ) + , shaderUniformTexelBufferArrayDynamicIndexing( shaderUniformTexelBufferArrayDynamicIndexing_ ) + , shaderStorageTexelBufferArrayDynamicIndexing( shaderStorageTexelBufferArrayDynamicIndexing_ ) + , shaderUniformBufferArrayNonUniformIndexing( shaderUniformBufferArrayNonUniformIndexing_ ) + , shaderSampledImageArrayNonUniformIndexing( shaderSampledImageArrayNonUniformIndexing_ ) + , shaderStorageBufferArrayNonUniformIndexing( shaderStorageBufferArrayNonUniformIndexing_ ) + , shaderStorageImageArrayNonUniformIndexing( shaderStorageImageArrayNonUniformIndexing_ ) + , shaderInputAttachmentArrayNonUniformIndexing( shaderInputAttachmentArrayNonUniformIndexing_ ) + , shaderUniformTexelBufferArrayNonUniformIndexing( shaderUniformTexelBufferArrayNonUniformIndexing_ ) + , shaderStorageTexelBufferArrayNonUniformIndexing( shaderStorageTexelBufferArrayNonUniformIndexing_ ) + , descriptorBindingUniformBufferUpdateAfterBind( descriptorBindingUniformBufferUpdateAfterBind_ ) + , descriptorBindingSampledImageUpdateAfterBind( descriptorBindingSampledImageUpdateAfterBind_ ) + , descriptorBindingStorageImageUpdateAfterBind( descriptorBindingStorageImageUpdateAfterBind_ ) + , descriptorBindingStorageBufferUpdateAfterBind( descriptorBindingStorageBufferUpdateAfterBind_ ) + , descriptorBindingUniformTexelBufferUpdateAfterBind( descriptorBindingUniformTexelBufferUpdateAfterBind_ ) + , descriptorBindingStorageTexelBufferUpdateAfterBind( descriptorBindingStorageTexelBufferUpdateAfterBind_ ) + , descriptorBindingUpdateUnusedWhilePending( descriptorBindingUpdateUnusedWhilePending_ ) + , descriptorBindingPartiallyBound( descriptorBindingPartiallyBound_ ) + , descriptorBindingVariableDescriptorCount( descriptorBindingVariableDescriptorCount_ ) + , runtimeDescriptorArray( runtimeDescriptorArray_ ) + { + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT( VkPhysicalDeviceDescriptorIndexingFeaturesEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( PhysicalDeviceDescriptorIndexingFeaturesEXT ) ); + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& operator=( VkPhysicalDeviceDescriptorIndexingFeaturesEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( PhysicalDeviceDescriptorIndexingFeaturesEXT ) ); + return *this; + } + PhysicalDeviceDescriptorIndexingFeaturesEXT& setPNext( void* pNext_ ) + { + pNext = pNext_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderInputAttachmentArrayDynamicIndexing( Bool32 shaderInputAttachmentArrayDynamicIndexing_ ) + { + shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderUniformTexelBufferArrayDynamicIndexing( Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ ) + { + shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderStorageTexelBufferArrayDynamicIndexing( Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ ) + { + shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderUniformBufferArrayNonUniformIndexing( Bool32 shaderUniformBufferArrayNonUniformIndexing_ ) + { + shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderSampledImageArrayNonUniformIndexing( Bool32 shaderSampledImageArrayNonUniformIndexing_ ) + { + shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderStorageBufferArrayNonUniformIndexing( Bool32 shaderStorageBufferArrayNonUniformIndexing_ ) + { + shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderStorageImageArrayNonUniformIndexing( Bool32 shaderStorageImageArrayNonUniformIndexing_ ) + { + shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderInputAttachmentArrayNonUniformIndexing( Bool32 shaderInputAttachmentArrayNonUniformIndexing_ ) + { + shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderUniformTexelBufferArrayNonUniformIndexing( Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ ) + { + shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setShaderStorageTexelBufferArrayNonUniformIndexing( Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ ) + { + shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingUniformBufferUpdateAfterBind( Bool32 descriptorBindingUniformBufferUpdateAfterBind_ ) + { + descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingSampledImageUpdateAfterBind( Bool32 descriptorBindingSampledImageUpdateAfterBind_ ) + { + descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingStorageImageUpdateAfterBind( Bool32 descriptorBindingStorageImageUpdateAfterBind_ ) + { + descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingStorageBufferUpdateAfterBind( Bool32 descriptorBindingStorageBufferUpdateAfterBind_ ) + { + descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingUniformTexelBufferUpdateAfterBind( Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ ) + { + descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingStorageTexelBufferUpdateAfterBind( Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ ) + { + descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingUpdateUnusedWhilePending( Bool32 descriptorBindingUpdateUnusedWhilePending_ ) + { + descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingPartiallyBound( Bool32 descriptorBindingPartiallyBound_ ) + { + descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setDescriptorBindingVariableDescriptorCount( Bool32 descriptorBindingVariableDescriptorCount_ ) + { + descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_; + return *this; + } + + PhysicalDeviceDescriptorIndexingFeaturesEXT& setRuntimeDescriptorArray( Bool32 runtimeDescriptorArray_ ) + { + runtimeDescriptorArray = runtimeDescriptorArray_; + return *this; + } + + operator const VkPhysicalDeviceDescriptorIndexingFeaturesEXT&() const + { + return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeaturesEXT*>(this); + } + + bool operator==( PhysicalDeviceDescriptorIndexingFeaturesEXT const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing ) + && ( shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing ) + && ( shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing ) + && ( shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing ) + && ( shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing ) + && ( shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing ) + && ( shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing ) + && ( shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing ) + && ( shaderUniformTexelBufferArrayNonUniformIndexing == rhs.shaderUniformTexelBufferArrayNonUniformIndexing ) + && ( shaderStorageTexelBufferArrayNonUniformIndexing == rhs.shaderStorageTexelBufferArrayNonUniformIndexing ) + && ( descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind ) + && ( descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind ) + && ( descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind ) + && ( descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind ) + && ( descriptorBindingUniformTexelBufferUpdateAfterBind == rhs.descriptorBindingUniformTexelBufferUpdateAfterBind ) + && ( descriptorBindingStorageTexelBufferUpdateAfterBind == rhs.descriptorBindingStorageTexelBufferUpdateAfterBind ) + && ( descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending ) + && ( descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound ) + && ( descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount ) + && ( runtimeDescriptorArray == rhs.runtimeDescriptorArray ); + } + + bool operator!=( PhysicalDeviceDescriptorIndexingFeaturesEXT const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingFeaturesEXT; + + public: + void* pNext = nullptr; + Bool32 shaderInputAttachmentArrayDynamicIndexing; + Bool32 shaderUniformTexelBufferArrayDynamicIndexing; + Bool32 shaderStorageTexelBufferArrayDynamicIndexing; + Bool32 shaderUniformBufferArrayNonUniformIndexing; + Bool32 shaderSampledImageArrayNonUniformIndexing; + Bool32 shaderStorageBufferArrayNonUniformIndexing; + Bool32 shaderStorageImageArrayNonUniformIndexing; + Bool32 shaderInputAttachmentArrayNonUniformIndexing; + Bool32 shaderUniformTexelBufferArrayNonUniformIndexing; + Bool32 shaderStorageTexelBufferArrayNonUniformIndexing; + Bool32 descriptorBindingUniformBufferUpdateAfterBind; + Bool32 descriptorBindingSampledImageUpdateAfterBind; + Bool32 descriptorBindingStorageImageUpdateAfterBind; + Bool32 descriptorBindingStorageBufferUpdateAfterBind; + Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind; + Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind; + Bool32 descriptorBindingUpdateUnusedWhilePending; + Bool32 descriptorBindingPartiallyBound; + Bool32 descriptorBindingVariableDescriptorCount; + Bool32 runtimeDescriptorArray; + }; + static_assert( sizeof( PhysicalDeviceDescriptorIndexingFeaturesEXT ) == sizeof( VkPhysicalDeviceDescriptorIndexingFeaturesEXT ), "struct and wrapper have different size!" ); + + struct PhysicalDeviceDescriptorIndexingPropertiesEXT + { + operator const VkPhysicalDeviceDescriptorIndexingPropertiesEXT&() const + { + return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingPropertiesEXT*>(this); + } + + bool operator==( PhysicalDeviceDescriptorIndexingPropertiesEXT const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools ) + && ( shaderUniformBufferArrayNonUniformIndexingNative == rhs.shaderUniformBufferArrayNonUniformIndexingNative ) + && ( shaderSampledImageArrayNonUniformIndexingNative == rhs.shaderSampledImageArrayNonUniformIndexingNative ) + && ( shaderStorageBufferArrayNonUniformIndexingNative == rhs.shaderStorageBufferArrayNonUniformIndexingNative ) + && ( shaderStorageImageArrayNonUniformIndexingNative == rhs.shaderStorageImageArrayNonUniformIndexingNative ) + && ( shaderInputAttachmentArrayNonUniformIndexingNative == rhs.shaderInputAttachmentArrayNonUniformIndexingNative ) + && ( robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind ) + && ( quadDivergentImplicitLod == rhs.quadDivergentImplicitLod ) + && ( maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers ) + && ( maxPerStageDescriptorUpdateAfterBindUniformBuffers == rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers ) + && ( maxPerStageDescriptorUpdateAfterBindStorageBuffers == rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers ) + && ( maxPerStageDescriptorUpdateAfterBindSampledImages == rhs.maxPerStageDescriptorUpdateAfterBindSampledImages ) + && ( maxPerStageDescriptorUpdateAfterBindStorageImages == rhs.maxPerStageDescriptorUpdateAfterBindStorageImages ) + && ( maxPerStageDescriptorUpdateAfterBindInputAttachments == rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments ) + && ( maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources ) + && ( maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers ) + && ( maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers ) + && ( maxDescriptorSetUpdateAfterBindUniformBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic ) + && ( maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers ) + && ( maxDescriptorSetUpdateAfterBindStorageBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic ) + && ( maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages ) + && ( maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages ) + && ( maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments ); + } + + bool operator!=( PhysicalDeviceDescriptorIndexingPropertiesEXT const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingPropertiesEXT; + + public: + void* pNext = nullptr; + uint32_t maxUpdateAfterBindDescriptorsInAllPools; + Bool32 shaderUniformBufferArrayNonUniformIndexingNative; + Bool32 shaderSampledImageArrayNonUniformIndexingNative; + Bool32 shaderStorageBufferArrayNonUniformIndexingNative; + Bool32 shaderStorageImageArrayNonUniformIndexingNative; + Bool32 shaderInputAttachmentArrayNonUniformIndexingNative; + Bool32 robustBufferAccessUpdateAfterBind; + Bool32 quadDivergentImplicitLod; + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; + uint32_t maxPerStageUpdateAfterBindResources; + uint32_t maxDescriptorSetUpdateAfterBindSamplers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindSampledImages; + uint32_t maxDescriptorSetUpdateAfterBindStorageImages; + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; + }; + static_assert( sizeof( PhysicalDeviceDescriptorIndexingPropertiesEXT ) == sizeof( VkPhysicalDeviceDescriptorIndexingPropertiesEXT ), "struct and wrapper have different size!" ); + + struct DescriptorSetVariableDescriptorCountAllocateInfoEXT + { + DescriptorSetVariableDescriptorCountAllocateInfoEXT( uint32_t descriptorSetCount_ = 0, const uint32_t* pDescriptorCounts_ = nullptr ) + : descriptorSetCount( descriptorSetCount_ ) + , pDescriptorCounts( pDescriptorCounts_ ) + { + } + + DescriptorSetVariableDescriptorCountAllocateInfoEXT( VkDescriptorSetVariableDescriptorCountAllocateInfoEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( DescriptorSetVariableDescriptorCountAllocateInfoEXT ) ); + } + + DescriptorSetVariableDescriptorCountAllocateInfoEXT& operator=( VkDescriptorSetVariableDescriptorCountAllocateInfoEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( DescriptorSetVariableDescriptorCountAllocateInfoEXT ) ); + return *this; + } + DescriptorSetVariableDescriptorCountAllocateInfoEXT& setPNext( const void* pNext_ ) + { + pNext = pNext_; + return *this; + } + + DescriptorSetVariableDescriptorCountAllocateInfoEXT& setDescriptorSetCount( uint32_t descriptorSetCount_ ) + { + descriptorSetCount = descriptorSetCount_; + return *this; + } + + DescriptorSetVariableDescriptorCountAllocateInfoEXT& setPDescriptorCounts( const uint32_t* pDescriptorCounts_ ) + { + pDescriptorCounts = pDescriptorCounts_; + return *this; + } + + operator const VkDescriptorSetVariableDescriptorCountAllocateInfoEXT&() const + { + return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfoEXT*>(this); + } + + bool operator==( DescriptorSetVariableDescriptorCountAllocateInfoEXT const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( descriptorSetCount == rhs.descriptorSetCount ) + && ( pDescriptorCounts == rhs.pDescriptorCounts ); + } + + bool operator!=( DescriptorSetVariableDescriptorCountAllocateInfoEXT const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfoEXT; + + public: + const void* pNext = nullptr; + uint32_t descriptorSetCount; + const uint32_t* pDescriptorCounts; + }; + static_assert( sizeof( DescriptorSetVariableDescriptorCountAllocateInfoEXT ) == sizeof( VkDescriptorSetVariableDescriptorCountAllocateInfoEXT ), "struct and wrapper have different size!" ); + + struct DescriptorSetVariableDescriptorCountLayoutSupportEXT + { + operator const VkDescriptorSetVariableDescriptorCountLayoutSupportEXT&() const + { + return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupportEXT*>(this); + } + + bool operator==( DescriptorSetVariableDescriptorCountLayoutSupportEXT const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( maxVariableDescriptorCount == rhs.maxVariableDescriptorCount ); + } + + bool operator!=( DescriptorSetVariableDescriptorCountLayoutSupportEXT const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupportEXT; + + public: + void* pNext = nullptr; + uint32_t maxVariableDescriptorCount; + }; + static_assert( sizeof( DescriptorSetVariableDescriptorCountLayoutSupportEXT ) == sizeof( VkDescriptorSetVariableDescriptorCountLayoutSupportEXT ), "struct and wrapper have different size!" ); + struct PipelineVertexInputDivisorStateCreateInfoEXT { PipelineVertexInputDivisorStateCreateInfoEXT( uint32_t vertexBindingDivisorCount_ = 0, const VertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors_ = nullptr ) @@ -22600,7 +23061,8 @@ public: enum class DescriptorPoolCreateFlagBits { - eFreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT + eFreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, + eUpdateAfterBindEXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT }; using DescriptorPoolCreateFlags = Flags<DescriptorPoolCreateFlagBits, VkDescriptorPoolCreateFlags>; @@ -22619,7 +23081,7 @@ public: { enum { - allFlags = VkFlags(DescriptorPoolCreateFlagBits::eFreeDescriptorSet) + allFlags = VkFlags(DescriptorPoolCreateFlagBits::eFreeDescriptorSet) | VkFlags(DescriptorPoolCreateFlagBits::eUpdateAfterBindEXT) }; }; @@ -23960,7 +24422,8 @@ public: eShuffle = VK_SUBGROUP_FEATURE_SHUFFLE_BIT, eShuffleRelative = VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT, eClustered = VK_SUBGROUP_FEATURE_CLUSTERED_BIT, - eQuad = VK_SUBGROUP_FEATURE_QUAD_BIT + eQuad = VK_SUBGROUP_FEATURE_QUAD_BIT, + ePartitionedNV = VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV }; using SubgroupFeatureFlags = Flags<SubgroupFeatureFlagBits, VkSubgroupFeatureFlags>; @@ -23979,7 +24442,7 @@ public: { enum { - allFlags = VkFlags(SubgroupFeatureFlagBits::eBasic) | VkFlags(SubgroupFeatureFlagBits::eVote) | VkFlags(SubgroupFeatureFlagBits::eArithmetic) | VkFlags(SubgroupFeatureFlagBits::eBallot) | VkFlags(SubgroupFeatureFlagBits::eShuffle) | VkFlags(SubgroupFeatureFlagBits::eShuffleRelative) | VkFlags(SubgroupFeatureFlagBits::eClustered) | VkFlags(SubgroupFeatureFlagBits::eQuad) + allFlags = VkFlags(SubgroupFeatureFlagBits::eBasic) | VkFlags(SubgroupFeatureFlagBits::eVote) | VkFlags(SubgroupFeatureFlagBits::eArithmetic) | VkFlags(SubgroupFeatureFlagBits::eBallot) | VkFlags(SubgroupFeatureFlagBits::eShuffle) | VkFlags(SubgroupFeatureFlagBits::eShuffleRelative) | VkFlags(SubgroupFeatureFlagBits::eClustered) | VkFlags(SubgroupFeatureFlagBits::eQuad) | VkFlags(SubgroupFeatureFlagBits::ePartitionedNV) }; }; @@ -24810,7 +25273,8 @@ public: enum class DescriptorSetLayoutCreateFlagBits { - ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR + ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, + eUpdateAfterBindPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT }; using DescriptorSetLayoutCreateFlags = Flags<DescriptorSetLayoutCreateFlagBits, VkDescriptorSetLayoutCreateFlags>; @@ -24829,7 +25293,7 @@ public: { enum { - allFlags = VkFlags(DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR) + allFlags = VkFlags(DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR) | VkFlags(DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPoolEXT) }; }; @@ -28976,6 +29440,98 @@ public: }; static_assert( sizeof( PipelineRasterizationConservativeStateCreateInfoEXT ) == sizeof( VkPipelineRasterizationConservativeStateCreateInfoEXT ), "struct and wrapper have different size!" ); + enum class DescriptorBindingFlagBitsEXT + { + eUpdateAfterBind = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT, + eUpdateUnusedWhilePending = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT, + ePartiallyBound = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT, + eVariableDescriptorCount = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT + }; + + using DescriptorBindingFlagsEXT = Flags<DescriptorBindingFlagBitsEXT, VkDescriptorBindingFlagsEXT>; + + VULKAN_HPP_INLINE DescriptorBindingFlagsEXT operator|( DescriptorBindingFlagBitsEXT bit0, DescriptorBindingFlagBitsEXT bit1 ) + { + return DescriptorBindingFlagsEXT( bit0 ) | bit1; + } + + VULKAN_HPP_INLINE DescriptorBindingFlagsEXT operator~( DescriptorBindingFlagBitsEXT bits ) + { + return ~( DescriptorBindingFlagsEXT( bits ) ); + } + + template <> struct FlagTraits<DescriptorBindingFlagBitsEXT> + { + enum + { + allFlags = VkFlags(DescriptorBindingFlagBitsEXT::eUpdateAfterBind) | VkFlags(DescriptorBindingFlagBitsEXT::eUpdateUnusedWhilePending) | VkFlags(DescriptorBindingFlagBitsEXT::ePartiallyBound) | VkFlags(DescriptorBindingFlagBitsEXT::eVariableDescriptorCount) + }; + }; + + struct DescriptorSetLayoutBindingFlagsCreateInfoEXT + { + DescriptorSetLayoutBindingFlagsCreateInfoEXT( uint32_t bindingCount_ = 0, const DescriptorBindingFlagsEXT* pBindingFlags_ = nullptr ) + : bindingCount( bindingCount_ ) + , pBindingFlags( pBindingFlags_ ) + { + } + + DescriptorSetLayoutBindingFlagsCreateInfoEXT( VkDescriptorSetLayoutBindingFlagsCreateInfoEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( DescriptorSetLayoutBindingFlagsCreateInfoEXT ) ); + } + + DescriptorSetLayoutBindingFlagsCreateInfoEXT& operator=( VkDescriptorSetLayoutBindingFlagsCreateInfoEXT const & rhs ) + { + memcpy( this, &rhs, sizeof( DescriptorSetLayoutBindingFlagsCreateInfoEXT ) ); + return *this; + } + DescriptorSetLayoutBindingFlagsCreateInfoEXT& setPNext( const void* pNext_ ) + { + pNext = pNext_; + return *this; + } + + DescriptorSetLayoutBindingFlagsCreateInfoEXT& setBindingCount( uint32_t bindingCount_ ) + { + bindingCount = bindingCount_; + return *this; + } + + DescriptorSetLayoutBindingFlagsCreateInfoEXT& setPBindingFlags( const DescriptorBindingFlagsEXT* pBindingFlags_ ) + { + pBindingFlags = pBindingFlags_; + return *this; + } + + operator const VkDescriptorSetLayoutBindingFlagsCreateInfoEXT&() const + { + return *reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfoEXT*>(this); + } + + bool operator==( DescriptorSetLayoutBindingFlagsCreateInfoEXT const& rhs ) const + { + return ( sType == rhs.sType ) + && ( pNext == rhs.pNext ) + && ( bindingCount == rhs.bindingCount ) + && ( pBindingFlags == rhs.pBindingFlags ); + } + + bool operator!=( DescriptorSetLayoutBindingFlagsCreateInfoEXT const& rhs ) const + { + return !operator==( rhs ); + } + + private: + StructureType sType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfoEXT; + + public: + const void* pNext = nullptr; + uint32_t bindingCount; + const DescriptorBindingFlagsEXT* pBindingFlags; + }; + static_assert( sizeof( DescriptorSetLayoutBindingFlagsCreateInfoEXT ) == sizeof( VkDescriptorSetLayoutBindingFlagsCreateInfoEXT ), "struct and wrapper have different size!" ); + template<typename Dispatch = DispatchLoaderStatic> Result enumerateInstanceVersion( uint32_t* pApiVersion, Dispatch const &d = Dispatch() ); #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE @@ -32097,6 +32653,8 @@ public: #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE template<typename Dispatch = DispatchLoaderStatic> DescriptorSetLayoutSupport getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d = Dispatch() ) const; + template <typename ...T, typename Dispatch = DispatchLoaderStatic> + StructureChain<T...> getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d = Dispatch() ) const; #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ template<typename Dispatch = DispatchLoaderStatic> @@ -32104,6 +32662,8 @@ public: #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE template<typename Dispatch = DispatchLoaderStatic> DescriptorSetLayoutSupport getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d = Dispatch() ) const; + template <typename ...T, typename Dispatch = DispatchLoaderStatic> + StructureChain<T...> getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d = Dispatch() ) const; #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ template<typename Dispatch = DispatchLoaderStatic> @@ -35063,6 +35623,14 @@ public: d.vkGetDescriptorSetLayoutSupport( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo*>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport*>( &support ) ); return support; } + template <typename ...T, typename Dispatch> + VULKAN_HPP_INLINE StructureChain<T...> Device::getDescriptorSetLayoutSupport( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d ) const + { + StructureChain<T...> structureChain; + DescriptorSetLayoutSupport& support = structureChain.template get<DescriptorSetLayoutSupport>(); + d.vkGetDescriptorSetLayoutSupport( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo*>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport*>( &support ) ); + return structureChain; + } #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ template<typename Dispatch> @@ -35078,6 +35646,14 @@ public: d.vkGetDescriptorSetLayoutSupportKHR( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo*>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport*>( &support ) ); return support; } + template <typename ...T, typename Dispatch> + VULKAN_HPP_INLINE StructureChain<T...> Device::getDescriptorSetLayoutSupportKHR( const DescriptorSetLayoutCreateInfo & createInfo, Dispatch const &d ) const + { + StructureChain<T...> structureChain; + DescriptorSetLayoutSupport& support = structureChain.template get<DescriptorSetLayoutSupport>(); + d.vkGetDescriptorSetLayoutSupportKHR( m_device, reinterpret_cast<const VkDescriptorSetLayoutCreateInfo*>( &createInfo ), reinterpret_cast<VkDescriptorSetLayoutSupport*>( &support ) ); + return structureChain; + } #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ template<typename Dispatch> @@ -37933,6 +38509,12 @@ public: template <> struct isStructureChainValid<PhysicalDeviceFeatures2, PhysicalDeviceShaderDrawParameterFeatures>{ enum { value = true }; }; template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceExternalMemoryHostPropertiesEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceConservativeRasterizationPropertiesEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceShaderCorePropertiesAMD>{ enum { value = true }; }; + template <> struct isStructureChainValid<PhysicalDeviceFeatures2, PhysicalDeviceDescriptorIndexingFeaturesEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<DeviceCreateInfo, PhysicalDeviceDescriptorIndexingFeaturesEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceDescriptorIndexingPropertiesEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<DescriptorSetAllocateInfo, DescriptorSetVariableDescriptorCountAllocateInfoEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<DescriptorSetLayoutSupport, DescriptorSetVariableDescriptorCountLayoutSupportEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<PipelineVertexInputStateCreateInfo, PipelineVertexInputDivisorStateCreateInfoEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceVertexAttributeDivisorPropertiesEXT>{ enum { value = true }; }; #ifdef VK_USE_PLATFORM_ANDROID_ANDROID @@ -37994,6 +38576,7 @@ public: template <> struct isStructureChainValid<DeviceQueueCreateInfo, DeviceQueueGlobalPriorityCreateInfoEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<InstanceCreateInfo, DebugUtilsMessengerCreateInfoEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<PipelineRasterizationStateCreateInfo, PipelineRasterizationConservativeStateCreateInfoEXT>{ enum { value = true }; }; + template <> struct isStructureChainValid<DescriptorSetLayoutCreateInfo, DescriptorSetLayoutBindingFlagsCreateInfoEXT>{ enum { value = true }; }; template <> struct isStructureChainValid<DeviceCreateInfo, DeviceGroupDeviceCreateInfo>{ enum { value = true }; }; VULKAN_HPP_INLINE std::string to_string(FramebufferCreateFlagBits) { @@ -39421,10 +40004,16 @@ public: case StructureType::ePipelineCoverageModulationStateCreateInfoNV: return "PipelineCoverageModulationStateCreateInfoNV"; case StructureType::eValidationCacheCreateInfoEXT: return "ValidationCacheCreateInfoEXT"; case StructureType::eShaderModuleValidationCacheCreateInfoEXT: return "ShaderModuleValidationCacheCreateInfoEXT"; + case StructureType::eDescriptorSetLayoutBindingFlagsCreateInfoEXT: return "DescriptorSetLayoutBindingFlagsCreateInfoEXT"; + case StructureType::ePhysicalDeviceDescriptorIndexingFeaturesEXT: return "PhysicalDeviceDescriptorIndexingFeaturesEXT"; + case StructureType::ePhysicalDeviceDescriptorIndexingPropertiesEXT: return "PhysicalDeviceDescriptorIndexingPropertiesEXT"; + case StructureType::eDescriptorSetVariableDescriptorCountAllocateInfoEXT: return "DescriptorSetVariableDescriptorCountAllocateInfoEXT"; + case StructureType::eDescriptorSetVariableDescriptorCountLayoutSupportEXT: return "DescriptorSetVariableDescriptorCountLayoutSupportEXT"; case StructureType::eDeviceQueueGlobalPriorityCreateInfoEXT: return "DeviceQueueGlobalPriorityCreateInfoEXT"; case StructureType::eImportMemoryHostPointerInfoEXT: return "ImportMemoryHostPointerInfoEXT"; case StructureType::eMemoryHostPointerPropertiesEXT: return "MemoryHostPointerPropertiesEXT"; case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT: return "PhysicalDeviceExternalMemoryHostPropertiesEXT"; + case StructureType::ePhysicalDeviceShaderCorePropertiesAMD: return "PhysicalDeviceShaderCorePropertiesAMD"; case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT: return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT"; case StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT: return "PipelineVertexInputDivisorStateCreateInfoEXT"; default: return "invalid"; @@ -40289,6 +40878,7 @@ public: switch (value) { case DescriptorPoolCreateFlagBits::eFreeDescriptorSet: return "FreeDescriptorSet"; + case DescriptorPoolCreateFlagBits::eUpdateAfterBindEXT: return "UpdateAfterBindEXT"; default: return "invalid"; } } @@ -40298,6 +40888,7 @@ public: if (!value) return "{}"; std::string result; if (value & DescriptorPoolCreateFlagBits::eFreeDescriptorSet) result += "FreeDescriptorSet | "; + if (value & DescriptorPoolCreateFlagBits::eUpdateAfterBindEXT) result += "UpdateAfterBindEXT | "; return "{" + result.substr(0, result.size() - 3) + "}"; } @@ -40583,6 +41174,7 @@ public: case SubgroupFeatureFlagBits::eShuffleRelative: return "ShuffleRelative"; case SubgroupFeatureFlagBits::eClustered: return "Clustered"; case SubgroupFeatureFlagBits::eQuad: return "Quad"; + case SubgroupFeatureFlagBits::ePartitionedNV: return "PartitionedNV"; default: return "invalid"; } } @@ -40599,6 +41191,7 @@ public: if (value & SubgroupFeatureFlagBits::eShuffleRelative) result += "ShuffleRelative | "; if (value & SubgroupFeatureFlagBits::eClustered) result += "Clustered | "; if (value & SubgroupFeatureFlagBits::eQuad) result += "Quad | "; + if (value & SubgroupFeatureFlagBits::ePartitionedNV) result += "PartitionedNV | "; return "{" + result.substr(0, result.size() - 3) + "}"; } @@ -40678,6 +41271,7 @@ public: switch (value) { case DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR: return "PushDescriptorKHR"; + case DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPoolEXT: return "UpdateAfterBindPoolEXT"; default: return "invalid"; } } @@ -40687,6 +41281,7 @@ public: if (!value) return "{}"; std::string result; if (value & DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR) result += "PushDescriptorKHR | "; + if (value & DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPoolEXT) result += "UpdateAfterBindPoolEXT | "; return "{" + result.substr(0, result.size() - 3) + "}"; } @@ -41215,6 +41810,29 @@ public: } } + VULKAN_HPP_INLINE std::string to_string(DescriptorBindingFlagBitsEXT value) + { + switch (value) + { + case DescriptorBindingFlagBitsEXT::eUpdateAfterBind: return "UpdateAfterBind"; + case DescriptorBindingFlagBitsEXT::eUpdateUnusedWhilePending: return "UpdateUnusedWhilePending"; + case DescriptorBindingFlagBitsEXT::ePartiallyBound: return "PartiallyBound"; + case DescriptorBindingFlagBitsEXT::eVariableDescriptorCount: return "VariableDescriptorCount"; + default: return "invalid"; + } + } + + VULKAN_HPP_INLINE std::string to_string(DescriptorBindingFlagsEXT value) + { + if (!value) return "{}"; + std::string result; + if (value & DescriptorBindingFlagBitsEXT::eUpdateAfterBind) result += "UpdateAfterBind | "; + if (value & DescriptorBindingFlagBitsEXT::eUpdateUnusedWhilePending) result += "UpdateUnusedWhilePending | "; + if (value & DescriptorBindingFlagBitsEXT::ePartiallyBound) result += "PartiallyBound | "; + if (value & DescriptorBindingFlagBitsEXT::eVariableDescriptorCount) result += "VariableDescriptorCount | "; + return "{" + result.substr(0, result.size() - 3) + "}"; + } + class DispatchLoaderDynamic { public: diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 943493c4..ed0d596f 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -43,7 +43,7 @@ extern "C" { #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff) #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff) // Version of this file -#define VK_HEADER_VERSION 71 +#define VK_HEADER_VERSION 72 #define VK_NULL_HANDLE 0 @@ -147,6 +147,7 @@ typedef enum VkResult { VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001, VK_ERROR_VALIDATION_FAILED_EXT = -1000011001, VK_ERROR_INVALID_SHADER_NV = -1000012000, + VK_ERROR_FRAGMENTATION_EXT = -1000161000, VK_ERROR_NOT_PERMITTED_EXT = -1000174001, VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY, VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE, @@ -377,10 +378,16 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000, VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000, VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160001, + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT = 1000161000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT = 1000161001, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = 1000161002, + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = 1000161003, + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = 1000161004, VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT = 1000174000, VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000, VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD = 1000185000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT = 1000190000, VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT = 1000190001, VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, @@ -1498,12 +1505,14 @@ typedef VkFlags VkSamplerCreateFlags; typedef enum VkDescriptorSetLayoutCreateFlagBits { VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001, + VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = 0x00000002, VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF } VkDescriptorSetLayoutCreateFlagBits; typedef VkFlags VkDescriptorSetLayoutCreateFlags; typedef enum VkDescriptorPoolCreateFlagBits { VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001, + VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = 0x00000002, VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF } VkDescriptorPoolCreateFlagBits; typedef VkFlags VkDescriptorPoolCreateFlags; @@ -3738,6 +3747,7 @@ typedef enum VkSubgroupFeatureFlagBits { VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 0x00000020, VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 0x00000040, VK_SUBGROUP_FEATURE_QUAD_BIT = 0x00000080, + VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100, VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF } VkSubgroupFeatureFlagBits; typedef VkFlags VkSubgroupFeatureFlags; @@ -7232,6 +7242,95 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetValidationCacheDataEXT( void* pData); #endif +#define VK_EXT_descriptor_indexing 1 +#define VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION 2 +#define VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME "VK_EXT_descriptor_indexing" + + +typedef enum VkDescriptorBindingFlagBitsEXT { + VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT = 0x00000001, + VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT = 0x00000002, + VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT = 0x00000004, + VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT = 0x00000008, + VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF +} VkDescriptorBindingFlagBitsEXT; +typedef VkFlags VkDescriptorBindingFlagsEXT; + +typedef struct VkDescriptorSetLayoutBindingFlagsCreateInfoEXT { + VkStructureType sType; + const void* pNext; + uint32_t bindingCount; + const VkDescriptorBindingFlagsEXT* pBindingFlags; +} VkDescriptorSetLayoutBindingFlagsCreateInfoEXT; + +typedef struct VkPhysicalDeviceDescriptorIndexingFeaturesEXT { + VkStructureType sType; + void* pNext; + VkBool32 shaderInputAttachmentArrayDynamicIndexing; + VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; + VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; + VkBool32 shaderUniformBufferArrayNonUniformIndexing; + VkBool32 shaderSampledImageArrayNonUniformIndexing; + VkBool32 shaderStorageBufferArrayNonUniformIndexing; + VkBool32 shaderStorageImageArrayNonUniformIndexing; + VkBool32 shaderInputAttachmentArrayNonUniformIndexing; + VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; + VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; + VkBool32 descriptorBindingUniformBufferUpdateAfterBind; + VkBool32 descriptorBindingSampledImageUpdateAfterBind; + VkBool32 descriptorBindingStorageImageUpdateAfterBind; + VkBool32 descriptorBindingStorageBufferUpdateAfterBind; + VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingUpdateUnusedWhilePending; + VkBool32 descriptorBindingPartiallyBound; + VkBool32 descriptorBindingVariableDescriptorCount; + VkBool32 runtimeDescriptorArray; +} VkPhysicalDeviceDescriptorIndexingFeaturesEXT; + +typedef struct VkPhysicalDeviceDescriptorIndexingPropertiesEXT { + VkStructureType sType; + void* pNext; + uint32_t maxUpdateAfterBindDescriptorsInAllPools; + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; + VkBool32 shaderSampledImageArrayNonUniformIndexingNative; + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; + VkBool32 shaderStorageImageArrayNonUniformIndexingNative; + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; + VkBool32 robustBufferAccessUpdateAfterBind; + VkBool32 quadDivergentImplicitLod; + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; + uint32_t maxPerStageUpdateAfterBindResources; + uint32_t maxDescriptorSetUpdateAfterBindSamplers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindSampledImages; + uint32_t maxDescriptorSetUpdateAfterBindStorageImages; + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; +} VkPhysicalDeviceDescriptorIndexingPropertiesEXT; + +typedef struct VkDescriptorSetVariableDescriptorCountAllocateInfoEXT { + VkStructureType sType; + const void* pNext; + uint32_t descriptorSetCount; + const uint32_t* pDescriptorCounts; +} VkDescriptorSetVariableDescriptorCountAllocateInfoEXT; + +typedef struct VkDescriptorSetVariableDescriptorCountLayoutSupportEXT { + VkStructureType sType; + void* pNext; + uint32_t maxVariableDescriptorCount; +} VkDescriptorSetVariableDescriptorCountLayoutSupportEXT; + + + #define VK_EXT_shader_viewport_index_layer 1 #define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 1 #define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME "VK_EXT_shader_viewport_index_layer" @@ -7310,6 +7409,31 @@ VKAPI_ATTR void VKAPI_CALL vkCmdWriteBufferMarkerAMD( uint32_t marker); #endif +#define VK_AMD_shader_core_properties 1 +#define VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION 1 +#define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME "VK_AMD_shader_core_properties" + +typedef struct VkPhysicalDeviceShaderCorePropertiesAMD { + VkStructureType sType; + void* pNext; + uint32_t shaderEngineCount; + uint32_t shaderArraysPerEngineCount; + uint32_t computeUnitsPerShaderArray; + uint32_t simdPerComputeUnit; + uint32_t wavefrontsPerSimd; + uint32_t wavefrontSize; + uint32_t sgprsPerSimd; + uint32_t minSgprAllocation; + uint32_t maxSgprAllocation; + uint32_t sgprAllocationGranularity; + uint32_t vgprsPerSimd; + uint32_t minVgprAllocation; + uint32_t maxVgprAllocation; + uint32_t vgprAllocationGranularity; +} VkPhysicalDeviceShaderCorePropertiesAMD; + + + #define VK_EXT_vertex_attribute_divisor 1 #define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION 1 #define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME "VK_EXT_vertex_attribute_divisor" @@ -7334,6 +7458,11 @@ typedef struct VkPipelineVertexInputDivisorStateCreateInfoEXT { +#define VK_NV_shader_subgroup_partitioned 1 +#define VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION 1 +#define VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME "VK_NV_shader_subgroup_partitioned" + + #ifdef __cplusplus } #endif diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index a36cc789..668274b6 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -8115,7 +8115,7 @@ VKAPI_ATTR void VKAPI_CALL CmdEndQuery(VkCommandBuffer commandBuffer, VkQueryPoo if (cb_state) { if (!cb_state->activeQueries.count(query)) { skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, - HandleToUint64(commandBuffer), VALIDATION_ERROR_1ae00652, + HandleToUint64(commandBuffer), VALIDATION_ERROR_1ae00f06, "Ending a query before it was started: queryPool 0x%" PRIx64 ", index %d.", HandleToUint64(queryPool), slot); } diff --git a/layers/linux/VkLayer_core_validation.json b/layers/linux/VkLayer_core_validation.json index b12e0717..69bd181a 100644 --- a/layers/linux/VkLayer_core_validation.json +++ b/layers/linux/VkLayer_core_validation.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_core_validation", "type": "GLOBAL", "library_path": "./libVkLayer_core_validation.so", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/linux/VkLayer_object_tracker.json b/layers/linux/VkLayer_object_tracker.json index a2228624..43d13b41 100644 --- a/layers/linux/VkLayer_object_tracker.json +++ b/layers/linux/VkLayer_object_tracker.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_object_tracker", "type": "GLOBAL", "library_path": "./libVkLayer_object_tracker.so", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/linux/VkLayer_parameter_validation.json b/layers/linux/VkLayer_parameter_validation.json index 0740f904..ac6c3f1f 100644 --- a/layers/linux/VkLayer_parameter_validation.json +++ b/layers/linux/VkLayer_parameter_validation.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_parameter_validation", "type": "GLOBAL", "library_path": "./libVkLayer_parameter_validation.so", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/linux/VkLayer_standard_validation.json b/layers/linux/VkLayer_standard_validation.json index 42245a10..1a545483 100644 --- a/layers/linux/VkLayer_standard_validation.json +++ b/layers/linux/VkLayer_standard_validation.json @@ -3,7 +3,7 @@ "layer": { "name": "VK_LAYER_LUNARG_standard_validation", "type": "GLOBAL", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Standard Validation", "component_layers": [ diff --git a/layers/linux/VkLayer_threading.json b/layers/linux/VkLayer_threading.json index 3d3b0ded..bfe91f65 100644 --- a/layers/linux/VkLayer_threading.json +++ b/layers/linux/VkLayer_threading.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_GOOGLE_threading", "type": "GLOBAL", "library_path": "./libVkLayer_threading.so", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "Google Validation Layer", "instance_extensions": [ diff --git a/layers/linux/VkLayer_unique_objects.json b/layers/linux/VkLayer_unique_objects.json index 3bc9120e..0275119e 100644 --- a/layers/linux/VkLayer_unique_objects.json +++ b/layers/linux/VkLayer_unique_objects.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_GOOGLE_unique_objects", "type": "GLOBAL", "library_path": "./libVkLayer_unique_objects.so", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "Google Validation Layer" } diff --git a/layers/vk_validation_error_database.txt b/layers/vk_validation_error_database.txt index 2c14e159..8c8bd593 100644 --- a/layers/vk_validation_error_database.txt +++ b/layers/vk_validation_error_database.txt @@ -62,7 +62,7 @@ VALIDATION_ERROR_00c00c84~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBuffe VALIDATION_ERROR_00c00c86~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-buffer-01603~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-01603)~^~ VALIDATION_ERROR_00c00c88~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-buffer-01604~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_NV_dedicated_allocation)+!(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-01604)~^~ VALIDATION_ERROR_00c00c8a~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-pNext-01605~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If the pNext chain includes VkBindBufferMemoryDeviceGroupInfo, all instances of memory specified by VkBindBufferMemoryDeviceGroupInfo::pDeviceIndices must have been allocated' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-pNext-01605)~^~ -VALIDATION_ERROR_00c00ed8~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfoKHR-memory-01900~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::buffer was not VK_NULL_HANDLE, then buffer must equal VkMemoryDedicatedAllocateInfo::buffer and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfoKHR-memory-01900)~^~ +VALIDATION_ERROR_00c00ed8~^~N~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-memory-01900~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::buffer was not VK_NULL_HANDLE, then buffer must equal VkMemoryDedicatedAllocateInfo::buffer and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-memory-01900)~^~ VALIDATION_ERROR_00c01a01~^~Y~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-buffer-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-parameter)~^~implicit VALIDATION_ERROR_00c0c601~^~Y~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-memory-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-memory-parameter)~^~implicit VALIDATION_ERROR_00c1c40d~^~Y~^~None~^~VkBindBufferMemoryInfo~^~VUID-VkBindBufferMemoryInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkBindBufferMemoryDeviceGroupInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-pNext-pNext)~^~implicit @@ -92,7 +92,7 @@ VALIDATION_ERROR_00e00cba~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageM VALIDATION_ERROR_00e00cbc~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-image-01630~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)+(VK_KHR_swapchain)~^~The spec valid usage text states 'If image was created with a valid swapchain handle in VkImageSwapchainCreateInfoKHR::swapchain, then the pNext chain must include a valid instance of VkBindImageMemorySwapchainInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-image-01630)~^~ VALIDATION_ERROR_00e00cbe~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-pNext-01631~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)+(VK_KHR_swapchain)~^~The spec valid usage text states 'If the pNext chain includes an instance of VkBindImageMemorySwapchainInfoKHR, memory must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-01631)~^~ VALIDATION_ERROR_00e00cc0~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-pNext-01632~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)+(VK_KHR_swapchain)~^~The spec valid usage text states 'If the pNext chain does not include an instance of VkBindImageMemorySwapchainInfoKHR, memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-01632)~^~ -VALIDATION_ERROR_00e00ede~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfoKHR-memory-01903~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::image was not VK_NULL_HANDLE, then image must equal VkMemoryDedicatedAllocateInfo::image and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfoKHR-memory-01903)~^~ +VALIDATION_ERROR_00e00ede~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-memory-01903~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::image was not VK_NULL_HANDLE, then image must equal VkMemoryDedicatedAllocateInfo::image and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-memory-01903)~^~ VALIDATION_ERROR_00e0a001~^~Y~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-image-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-image-parameter)~^~implicit VALIDATION_ERROR_00e1c40d~^~Y~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkBindImageMemoryDeviceGroupInfo, VkBindImageMemorySwapchainInfoKHR, or VkBindImagePlaneMemoryInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_00e2b00b~^~N~^~None~^~VkBindImageMemoryInfo~^~VUID-VkBindImageMemoryInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-sType-sType)~^~implicit @@ -270,6 +270,10 @@ VALIDATION_ERROR_032002b4~^~Y~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescr VALIDATION_ERROR_032002b6~^~Y~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-dstBinding-00347~^~core~^~The spec valid usage text states 'dstBinding must be a valid binding within dstSet' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstBinding-00347)~^~ VALIDATION_ERROR_032002b8~^~Y~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-dstArrayElement-00348~^~core~^~The spec valid usage text states 'The sum of dstArrayElement and descriptorCount must be less than or equal to the number of array elements in the descriptor set binding specified by dstBinding, and all applicable consecutive bindings, as described by descriptorsets-updates-consecutive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstArrayElement-00348)~^~ VALIDATION_ERROR_032002ba~^~Y~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-srcSet-00349~^~core~^~The spec valid usage text states 'If srcSet is equal to dstSet, then the source and destination ranges of descriptors must not overlap, where the ranges may include array elements from consecutive bindings as described by descriptorsets-updates-consecutive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-00349)~^~ +VALIDATION_ERROR_03200efc~^~N~^~None~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-srcSet-01918~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If srcSet's layout was created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set, then dstSet's layout must also have been created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01918)~^~ +VALIDATION_ERROR_03200efe~^~N~^~None~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-srcSet-01919~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If srcSet's layout was created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set, then dstSet's layout must also have been created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01919)~^~ +VALIDATION_ERROR_03200f00~^~N~^~None~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-srcSet-01920~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If the descriptor pool from which srcSet was allocated was created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set, then the descriptor pool from which dstSet was allocated must also have been created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01920)~^~ +VALIDATION_ERROR_03200f02~^~N~^~None~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-srcSet-01921~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If the descriptor pool from which srcSet was allocated was created without the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set, then the descriptor pool from which dstSet was allocated must also have been created without the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01921)~^~ VALIDATION_ERROR_03207601~^~Y~^~UpdateDestroyDescriptorSetLayout~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-dstSet-parameter~^~core~^~The spec valid usage text states 'dstSet must be a valid VkDescriptorSet handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstSet-parameter)~^~implicit VALIDATION_ERROR_0321c40d~^~Y~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0322b00b~^~N~^~Unknown~^~VkCopyDescriptorSet~^~VUID-VkCopyDescriptorSet-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-sType-sType)~^~implicit, TBD in parameter validation layer. @@ -299,7 +303,6 @@ VALIDATION_ERROR_03a2b00b~^~Y~^~Unknown~^~VkDebugMarkerObjectTagInfoEXT~^~VUID-V VALIDATION_ERROR_03a2f41b~^~Y~^~Unknown~^~VkDebugMarkerObjectTagInfoEXT~^~VUID-VkDebugMarkerObjectTagInfoEXT-tagSize-arraylength~^~(VK_EXT_debug_marker)~^~The spec valid usage text states 'tagSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugMarkerObjectTagInfoEXT-tagSize-arraylength)~^~implicit VALIDATION_ERROR_03c00ad2~^~N~^~Unknown~^~VkDebugReportCallbackCreateInfoEXT~^~VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385~^~(VK_EXT_debug_report)~^~The spec valid usage text states 'pfnCallback must be a valid PFN_vkDebugReportCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)~^~ VALIDATION_ERROR_03c09001~^~Y~^~Unknown~^~VkDebugReportCallbackCreateInfoEXT~^~VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter~^~(VK_EXT_debug_report)~^~The spec valid usage text states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter)~^~implicit, TBD in parameter validation layer. -VALIDATION_ERROR_03c1c40d~^~Y~^~Unknown~^~VkDebugReportCallbackCreateInfoEXT~^~VUID-VkDebugReportCallbackCreateInfoEXT-pNext-pNext~^~(VK_EXT_debug_report)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_03c2b00b~^~Y~^~Unknown~^~VkDebugReportCallbackCreateInfoEXT~^~VUID-VkDebugReportCallbackCreateInfoEXT-sType-sType~^~(VK_EXT_debug_report)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_03e2b00b~^~N~^~Unknown~^~VkDedicatedAllocationBufferCreateInfoNV~^~VUID-VkDedicatedAllocationBufferCreateInfoNV-sType-sType~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationBufferCreateInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_040007c4~^~N~^~Unknown~^~VkDedicatedAllocationImageCreateInfoNV~^~VUID-VkDedicatedAllocationImageCreateInfoNV-dedicatedAllocation-00994~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If dedicatedAllocation is VK_TRUE, VkImageCreateInfo::flags must not include VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationImageCreateInfoNV-dedicatedAllocation-00994)~^~ @@ -336,9 +339,10 @@ VALIDATION_ERROR_04c00009~^~Y~^~Unknown~^~VkDescriptorSetAllocateInfo~^~VUID-VkD VALIDATION_ERROR_04c00264~^~Y~^~AllocDescriptorFromEmptyPool~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-00306~^~!(VK_VERSION_1_1,VK_KHR_maintenance1)~^~The spec valid usage text states 'descriptorSetCount must not be greater than the number of sets that are currently available for allocation in descriptorPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-00306)~^~ VALIDATION_ERROR_04c00266~^~Y~^~AllocDescriptorFromEmptyPool~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-descriptorPool-00307~^~!(VK_VERSION_1_1,VK_KHR_maintenance1)~^~The spec valid usage text states 'descriptorPool must have enough free descriptor capacity remaining to allocate the descriptor sets of the specified layouts' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorPool-00307)~^~ VALIDATION_ERROR_04c00268~^~Y~^~AllocatePushDescriptorSet~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-pSetLayouts-00308~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'Each element of pSetLayouts must not have been created with VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-00308)~^~ +VALIDATION_ERROR_04c017c8~^~N~^~None~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-pSetLayouts-03044~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If any element of pSetLayouts was created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set, descriptorPool must have been created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-03044)~^~ VALIDATION_ERROR_04c04601~^~Y~^~None~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-descriptorPool-parameter~^~core~^~The spec valid usage text states 'descriptorPool must be a valid VkDescriptorPool handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorPool-parameter)~^~implicit VALIDATION_ERROR_04c04a1b~^~N~^~Unknown~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-arraylength~^~core~^~The spec valid usage text states 'descriptorSetCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-arraylength)~^~implicit -VALIDATION_ERROR_04c1c40d~^~Y~^~Unknown~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. +VALIDATION_ERROR_04c1c40d~^~Y~^~Unknown~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountAllocateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_04c22c01~^~Y~^~None~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-pSetLayouts-parameter~^~core~^~The spec valid usage text states 'pSetLayouts must be a valid pointer to an array of descriptorSetCount valid VkDescriptorSetLayout handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-parameter)~^~implicit VALIDATION_ERROR_04c2b00b~^~Y~^~Unknown~^~VkDescriptorSetAllocateInfo~^~VUID-VkDescriptorSetAllocateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_04e00234~^~Y~^~None~^~VkDescriptorSetLayoutBinding~^~VUID-VkDescriptorSetLayoutBinding-descriptorType-00282~^~core~^~The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_SAMPLER or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and descriptorCount is not 0 and pImmutableSamplers is not NULL, pImmutableSamplers must be a valid pointer to an array of descriptorCount valid VkSampler handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutBinding-descriptorType-00282)~^~ @@ -348,9 +352,11 @@ VALIDATION_ERROR_04e04e01~^~Y~^~Unknown~^~VkDescriptorSetLayoutBinding~^~VUID-Vk VALIDATION_ERROR_0500022e~^~Y~^~DuplicateDescriptorBinding~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-binding-00279~^~core~^~The spec valid usage text states 'The VkDescriptorSetLayoutBinding::binding members of the elements of the pBindings array must each have different values.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-binding-00279)~^~ VALIDATION_ERROR_05000230~^~Y~^~InvalidPushDescriptorSetLayout~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-flags-00280~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'If flags contains VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all elements of pBindings must not have a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-00280)~^~ VALIDATION_ERROR_05000232~^~Y~^~InvalidPushDescriptorSetLayout~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-flags-00281~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'If flags contains VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then the total number of elements of all bindings must be less than or equal to VkPhysicalDevicePushDescriptorPropertiesKHR::maxPushDescriptors' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-00281)~^~ +VALIDATION_ERROR_05001770~^~N~^~None~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-flags-03000~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If any binding has the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT bit set, flags must include VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-03000)~^~ +VALIDATION_ERROR_05001772~^~N~^~None~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-descriptorType-03001~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If any binding has the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT bit set, then all bindings must not have descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-descriptorType-03001)~^~ VALIDATION_ERROR_05009001~^~Y~^~Unknown~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkDescriptorSetLayoutCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-parameter)~^~implicit VALIDATION_ERROR_0500fc01~^~Y~^~Unknown~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-pBindings-parameter~^~core~^~The spec valid usage text states 'If bindingCount is not 0, pBindings must be a valid pointer to an array of bindingCount valid VkDescriptorSetLayoutBinding structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pBindings-parameter)~^~implicit -VALIDATION_ERROR_0501c40d~^~Y~^~Unknown~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. +VALIDATION_ERROR_0501c40d~^~Y~^~Unknown~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetLayoutBindingFlagsCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0502b00b~^~Y~^~Unknown~^~VkDescriptorSetLayoutCreateInfo~^~VUID-VkDescriptorSetLayoutCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_05200009~^~Y~^~Unknown~^~VkDescriptorUpdateTemplateCreateInfo~^~VUID-VkDescriptorUpdateTemplateCreateInfo-commonparent~^~(VK_VERSION_1_1,VK_KHR_descriptor_update_template)~^~The spec valid usage text states 'Both of descriptorSetLayout, and pipelineLayout that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorUpdateTemplateCreateInfo-commonparent)~^~implicit VALIDATION_ERROR_052002bc~^~Y~^~CreateDescriptorUpdateTemplate~^~VkDescriptorUpdateTemplateCreateInfo~^~VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00350~^~(VK_VERSION_1_1,VK_KHR_descriptor_update_template)~^~The spec valid usage text states 'If templateType is VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET, descriptorSetLayout must be a valid VkDescriptorSetLayout handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00350)~^~ @@ -373,7 +379,7 @@ VALIDATION_ERROR_056002ec~^~Y~^~Maintenance1AndNegativeViewport~^~VkDeviceCreate VALIDATION_ERROR_05600e60~^~N~^~None~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-01840~^~(VK_AMD_negative_viewport_height)+(VK_VERSION_1_1)~^~The spec valid usage text states 'ppEnabledExtensionNames must not contain VK_AMD_negative_viewport_height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-01840)~^~ VALIDATION_ERROR_05609005~^~Y~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_05615a01~^~N~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter~^~core~^~The spec valid usage text states 'If pEnabledFeatures is not NULL, pEnabledFeatures must be a valid pointer to a valid VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter)~^~implicit -VALIDATION_ERROR_0561c40d~^~N~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupDeviceCreateInfo, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceFeatures2, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)~^~implicit +VALIDATION_ERROR_0561c40d~^~N~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupDeviceCreateInfo, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceDescriptorIndexingFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_0561fe01~^~Y~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter~^~core~^~The spec valid usage text states 'pQueueCreateInfos must be a valid pointer to an array of queueCreateInfoCount valid VkDeviceQueueCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter)~^~implicit VALIDATION_ERROR_05628e01~^~Y~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter~^~core~^~The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a valid pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter)~^~implicit VALIDATION_ERROR_05629001~^~Y~^~Unknown~^~VkDeviceCreateInfo~^~VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter~^~core~^~The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a valid pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter)~^~implicit @@ -464,7 +470,7 @@ VALIDATION_ERROR_0781c40d~^~Y~^~Unknown~^~VkDisplaySurfaceCreateInfoKHR~^~VUID-V VALIDATION_ERROR_0782b00b~^~Y~^~Unknown~^~VkDisplaySurfaceCreateInfoKHR~^~VUID-VkDisplaySurfaceCreateInfoKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_display)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDisplaySurfaceCreateInfoKHR-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_07830201~^~Y~^~Unknown~^~VkDisplaySurfaceCreateInfoKHR~^~VUID-VkDisplaySurfaceCreateInfoKHR-transform-parameter~^~(VK_KHR_surface)+(VK_KHR_display)~^~The spec valid usage text states 'transform must be a valid VkSurfaceTransformFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDisplaySurfaceCreateInfoKHR-transform-parameter)~^~implicit VALIDATION_ERROR_07a00450~^~N~^~Unknown~^~VkDrawIndexedIndirectCommand~^~VUID-VkDrawIndexedIndirectCommand-None-00552~^~core~^~The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-None-00552)~^~ -VALIDATION_ERROR_07a00452~^~N~^~Unknown~^~VkDrawIndexedIndirectCommand~^~VUID-VkDrawIndexedIndirectCommand-indexSize-00553~^~core~^~The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the currently bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-indexSize-00553)~^~ +VALIDATION_ERROR_07a00452~^~N~^~Unknown~^~VkDrawIndexedIndirectCommand~^~VUID-VkDrawIndexedIndirectCommand-indexSize-00553~^~core~^~The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-indexSize-00553)~^~ VALIDATION_ERROR_07a00454~^~N~^~Unknown~^~VkDrawIndexedIndirectCommand~^~VUID-VkDrawIndexedIndirectCommand-firstInstance-00554~^~core~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, firstInstance must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-firstInstance-00554)~^~ VALIDATION_ERROR_07c003e8~^~N~^~Unknown~^~VkDrawIndirectCommand~^~VUID-VkDrawIndirectCommand-None-00500~^~core~^~The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndirectCommand-None-00500)~^~ VALIDATION_ERROR_07c003ea~^~N~^~Unknown~^~VkDrawIndirectCommand~^~VUID-VkDrawIndirectCommand-firstInstance-00501~^~core~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, firstInstance must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndirectCommand-firstInstance-00501)~^~ @@ -473,35 +479,26 @@ VALIDATION_ERROR_07e1c40d~^~Y~^~Unknown~^~VkEventCreateInfo~^~VUID-VkEventCreate VALIDATION_ERROR_07e2b00b~^~Y~^~Unknown~^~VkEventCreateInfo~^~VUID-VkEventCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_08000520~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-handleTypes-00656~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-00656)~^~ VALIDATION_ERROR_08009e01~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_0801c40d~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_0802b00b~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-sType-sType)~^~implicit VALIDATION_ERROR_08209e01~^~N~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_0821c40d~^~N~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-pNext-pNext~^~(VK_NV_external_memory)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-pNext-pNext)~^~implicit VALIDATION_ERROR_0822b00b~^~N~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-sType-sType~^~(VK_NV_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)~^~implicit VALIDATION_ERROR_08400522~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If VkExportMemoryAllocateInfo::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, VkExportMemoryWin32HandleInfoKHR must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657)~^~ VALIDATION_ERROR_0840f401~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter)~^~implicit -VALIDATION_ERROR_0841c40d~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_0842b00b~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_0860f401~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoNV~^~VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)~^~implicit -VALIDATION_ERROR_0861c40d~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoNV~^~VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit VALIDATION_ERROR_0862b00b~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoNV~^~VUID-VkExportMemoryWin32HandleInfoNV-sType-sType~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)~^~implicit VALIDATION_ERROR_088008c8~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-handleTypes-01124~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphoreProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-01124)~^~ VALIDATION_ERROR_08809e01~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_0881c40d~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_0882b00b~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_08a008ca~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'If VkExportSemaphoreCreateInfo::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT, VkExportSemaphoreWin32HandleInfoKHR must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125)~^~ VALIDATION_ERROR_08a0f401~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter)~^~implicit -VALIDATION_ERROR_08a1c40d~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_08a2b00b~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_08c09e01~^~N~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_08c1c40d~^~N~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_08c2b00b~^~N~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_08e09e01~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter)~^~implicit VALIDATION_ERROR_08e09e03~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask)~^~implicit -VALIDATION_ERROR_08e1c40d~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_08e2b00b~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_09009e01~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_0901c40d~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext~^~(VK_NV_external_memory)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0902b00b~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-sType-sType~^~(VK_NV_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_09209001~^~Y~^~Unknown~^~VkFenceCreateInfo~^~VUID-VkFenceCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkFenceCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0921c40d~^~Y~^~Unknown~^~VkFenceCreateInfo~^~VUID-VkFenceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportFenceCreateInfo or VkExportFenceWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. @@ -734,6 +731,8 @@ VALIDATION_ERROR_09e00ec4~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInf VALIDATION_ERROR_09e00ec6~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-None-01891~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If any of the bits VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT are set, VK_IMAGE_CREATE_PROTECTED_BIT must not also be set.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-None-01891)~^~ VALIDATION_ERROR_09e00ec8~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-pNext-01892~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If the pNext chain includes a VkExternalMemoryImageCreateInfo structure whose handleTypes member includes VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01892)~^~ VALIDATION_ERROR_09e00eca~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-pNext-01893~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If the pNext chain includes a VkExternalFormatANDROID structure whose externalFormat member is not 0:' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01893)~^~ +VALIDATION_ERROR_09e00f08~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-flags-01924~^~core~^~The spec valid usage text states 'If the sparse aliased residency feature is not enabled, flags must not contain VK_IMAGE_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-01924)~^~ +VALIDATION_ERROR_09e00f0a~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-None-01925~^~core~^~The spec valid usage text states 'If any of the bits VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT are set, VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT must not also be set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-None-01925)~^~ VALIDATION_ERROR_09e09001~^~Y~^~Unknown~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_09e09201~^~Y~^~Unknown~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-format-parameter~^~core~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-format-parameter)~^~implicit VALIDATION_ERROR_09e0ac01~^~Y~^~Unknown~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-imageType-parameter~^~core~^~The spec valid usage text states 'imageType must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-imageType-parameter)~^~implicit @@ -861,7 +860,6 @@ VALIDATION_ERROR_0ae0053c~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImpor VALIDATION_ERROR_0ae00be0~^~N~^~None~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-fd-01520~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'fd must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01520)~^~ VALIDATION_ERROR_0ae00da4~^~N~^~None~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-fd-01746~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'The memory represented by fd must have been created from a physical device and driver that is compatible with device and handleType, as described in external-memory-handle-types-compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01746)~^~ VALIDATION_ERROR_0ae09c01~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)~^~implicit -VALIDATION_ERROR_0ae1c40d~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-pNext-pNext~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_0ae2b00b~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-sType-sType~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_0b000524~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658)~^~ VALIDATION_ERROR_0b000526~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'The memory from which handle was exported, or the memory named by name must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659)~^~ @@ -873,12 +871,10 @@ VALIDATION_ERROR_0b000b42~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-V VALIDATION_ERROR_0b000bdc~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handle is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518)~^~ VALIDATION_ERROR_0b000bde~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-name-01519~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If name is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-name-01519)~^~ VALIDATION_ERROR_0b009c01~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)~^~implicit -VALIDATION_ERROR_0b01c40d~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_0b02b00b~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_0b200a5e~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)~^~ VALIDATION_ERROR_0b200a60~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handle-01328~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)~^~ VALIDATION_ERROR_0b209c01~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)~^~implicit -VALIDATION_ERROR_0b21c40d~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit VALIDATION_ERROR_0b22b00b~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-sType-sType~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)~^~implicit VALIDATION_ERROR_0b4008ee~^~N~^~Unknown~^~VkImportSemaphoreFdInfoKHR~^~VUID-VkImportSemaphoreFdInfoKHR-handleType-01143~^~(VK_KHR_external_semaphore_fd)~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01143)~^~ VALIDATION_ERROR_0b400c10~^~N~^~None~^~VkImportSemaphoreFdInfoKHR~^~VUID-VkImportSemaphoreFdInfoKHR-fd-01544~^~(VK_KHR_external_semaphore_fd)~^~The spec valid usage text states 'fd must obey any requirements listed for handleType in external semaphore handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-fd-01544)~^~ @@ -1020,7 +1016,6 @@ VALIDATION_ERROR_0d801a01~^~N~^~Unknown~^~VkObjectTableVertexBufferEntryNVX~^~VU VALIDATION_ERROR_0d809001~^~N~^~Unknown~^~VkObjectTableVertexBufferEntryNVX~^~VUID-VkObjectTableVertexBufferEntryNVX-flags-parameter~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'flags must be a valid combination of VkObjectEntryUsageFlagBitsNVX values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-flags-parameter)~^~implicit VALIDATION_ERROR_0d809003~^~N~^~Unknown~^~VkObjectTableVertexBufferEntryNVX~^~VUID-VkObjectTableVertexBufferEntryNVX-flags-requiredbitmask~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-flags-requiredbitmask)~^~implicit VALIDATION_ERROR_0d830401~^~N~^~Unknown~^~VkObjectTableVertexBufferEntryNVX~^~VUID-VkObjectTableVertexBufferEntryNVX-type-parameter~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'type must be a valid VkObjectEntryTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-type-parameter)~^~implicit -VALIDATION_ERROR_0da1c40d~^~N~^~Unknown~^~VkPhysicalDeviceDiscardRectanglePropertiesEXT~^~VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_0da2b00b~^~N~^~Unknown~^~VkPhysicalDeviceDiscardRectanglePropertiesEXT~^~VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType)~^~implicit VALIDATION_ERROR_0dc09001~^~Y~^~Unknown~^~VkPhysicalDeviceExternalBufferInfo~^~VUID-VkPhysicalDeviceExternalBufferInfo-flags-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-flags-parameter)~^~implicit VALIDATION_ERROR_0dc09c01~^~Y~^~Unknown~^~VkPhysicalDeviceExternalBufferInfo~^~VUID-VkPhysicalDeviceExternalBufferInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-handleType-parameter)~^~implicit @@ -1033,9 +1028,7 @@ VALIDATION_ERROR_0de2b00b~^~N~^~Unknown~^~VkPhysicalDeviceExternalImageFormatInf VALIDATION_ERROR_0e009c01~^~Y~^~Unknown~^~VkPhysicalDeviceExternalSemaphoreInfo~^~VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter)~^~implicit VALIDATION_ERROR_0e01c40d~^~Y~^~Unknown~^~VkPhysicalDeviceExternalSemaphoreInfo~^~VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_0e02b00b~^~Y~^~Unknown~^~VkPhysicalDeviceExternalSemaphoreInfo~^~VUID-VkPhysicalDeviceExternalSemaphoreInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-sType-sType)~^~implicit -VALIDATION_ERROR_0e41c40d~^~N~^~Unknown~^~VkPhysicalDeviceFeatures2~^~VUID-VkPhysicalDeviceFeatures2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, VkPhysicalDeviceShaderDrawParameterFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-pNext-pNext)~^~implicit VALIDATION_ERROR_0e42b00b~^~Y~^~Unknown~^~VkPhysicalDeviceFeatures2~^~VUID-VkPhysicalDeviceFeatures2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-sType-sType)~^~implicit -VALIDATION_ERROR_0e42b00f~^~N~^~None~^~VkPhysicalDeviceFeatures2~^~VUID-VkPhysicalDeviceFeatures2-sType-unique~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-sType-unique)~^~implicit VALIDATION_ERROR_0e609001~^~Y~^~Unknown~^~VkPhysicalDeviceImageFormatInfo2~^~VUID-VkPhysicalDeviceImageFormatInfo2-flags-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-flags-parameter)~^~implicit VALIDATION_ERROR_0e609201~^~Y~^~Unknown~^~VkPhysicalDeviceImageFormatInfo2~^~VUID-VkPhysicalDeviceImageFormatInfo2-format-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-format-parameter)~^~implicit VALIDATION_ERROR_0e61c40d~^~Y~^~Unknown~^~VkPhysicalDeviceImageFormatInfo2~^~VUID-VkPhysicalDeviceImageFormatInfo2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-pNext-pNext)~^~implicit @@ -1047,7 +1040,6 @@ VALIDATION_ERROR_0e630603~^~Y~^~Unknown~^~VkPhysicalDeviceImageFormatInfo2~^~VUI VALIDATION_ERROR_0e800488~^~N~^~Unknown~^~VkPhysicalDeviceMultiviewFeatures~^~VUID-VkPhysicalDeviceMultiviewFeatures-multiviewGeometryShader-00580~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If multiviewGeometryShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-multiviewGeometryShader-00580)~^~ VALIDATION_ERROR_0e80048a~^~N~^~Unknown~^~VkPhysicalDeviceMultiviewFeatures~^~VUID-VkPhysicalDeviceMultiviewFeatures-multiviewTessellationShader-00581~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If multiviewTessellationShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-multiviewTessellationShader-00581)~^~ VALIDATION_ERROR_0e82b00b~^~N~^~Unknown~^~VkPhysicalDeviceMultiviewFeatures~^~VUID-VkPhysicalDeviceMultiviewFeatures-sType-sType~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-sType-sType)~^~implicit -VALIDATION_ERROR_0ea1c40d~^~N~^~Unknown~^~VkPhysicalDevicePushDescriptorPropertiesKHR~^~VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-pNext-pNext~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_0ea2b00b~^~N~^~Unknown~^~VkPhysicalDevicePushDescriptorPropertiesKHR~^~VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-sType-sType~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-sType-sType)~^~implicit VALIDATION_ERROR_0ec0088e~^~N~^~Unknown~^~VkPhysicalDeviceSparseImageFormatInfo2~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-01095~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'samples must be a bit value that is set in VkImageFormatProperties::sampleCounts returned by vkGetPhysicalDeviceImageFormatProperties with format, type, tiling, and usage equal to those in this command and flags equal to the value that is set in VkImageCreateInfo::flags when the image is created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-01095)~^~ VALIDATION_ERROR_0ec09201~^~Y~^~Unknown~^~VkPhysicalDeviceSparseImageFormatInfo2~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2-format-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSparseImageFormatInfo2-format-parameter)~^~implicit @@ -1100,7 +1092,6 @@ VALIDATION_ERROR_0f62b00b~^~N~^~Unknown~^~VkPipelineDepthStencilStateCreateInfo~ VALIDATION_ERROR_0f80048c~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'discardRectangleCount must be between 0 and VkPhysicalDeviceDiscardRectanglePropertiesEXT::maxDiscardRectangles, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582)~^~ VALIDATION_ERROR_0f805e01~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'discardRectangleMode must be a valid VkDiscardRectangleModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter)~^~implicit VALIDATION_ERROR_0f809005~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)~^~implicit -VALIDATION_ERROR_0f81c40d~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_0f82b00b~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_0fa00b44~^~N~^~None~^~VkPipelineDynamicStateCreateInfo~^~VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442~^~core~^~The spec valid usage text states 'Each element of pDynamicStates must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442)~^~ VALIDATION_ERROR_0fa07c1b~^~N~^~Unknown~^~VkPipelineDynamicStateCreateInfo~^~VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength~^~core~^~The spec valid usage text states 'dynamicStateCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength)~^~implicit @@ -1116,22 +1107,50 @@ VALIDATION_ERROR_0fc1c40d~^~Y~^~Unknown~^~VkPipelineInputAssemblyStateCreateInfo VALIDATION_ERROR_0fc2b00b~^~Y~^~Unknown~^~VkPipelineInputAssemblyStateCreateInfo~^~VUID-VkPipelineInputAssemblyStateCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineInputAssemblyStateCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0fc30001~^~Y~^~Unknown~^~VkPipelineInputAssemblyStateCreateInfo~^~VUID-VkPipelineInputAssemblyStateCreateInfo-topology-parameter~^~core~^~The spec valid usage text states 'topology must be a valid VkPrimitiveTopology value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineInputAssemblyStateCreateInfo-topology-parameter)~^~implicit VALIDATION_ERROR_0fe0023c~^~Y~^~CreatePipelineLayoutExceedsSetLimit~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-setLayoutCount-00286~^~core~^~The spec valid usage text states 'setLayoutCount must be less than or equal to VkPhysicalDeviceLimits::maxBoundDescriptorSets' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-setLayoutCount-00286)~^~ -VALIDATION_ERROR_0fe0023e~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00287~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00287)~^~ -VALIDATION_ERROR_0fe00240~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00288~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00288)~^~ -VALIDATION_ERROR_0fe00242~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00289~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00289)~^~ -VALIDATION_ERROR_0fe00244~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00290~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00290)~^~ -VALIDATION_ERROR_0fe00246~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00291~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00291)~^~ +VALIDATION_ERROR_0fe0023e~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00287~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00287)~^~ +VALIDATION_ERROR_0fe00240~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00288~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00288)~^~ +VALIDATION_ERROR_0fe00242~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00289~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00289)~^~ +VALIDATION_ERROR_0fe00244~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00290~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00290)~^~ +VALIDATION_ERROR_0fe00246~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00291~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00291)~^~ VALIDATION_ERROR_0fe00248~^~Y~^~InvalidPushConstants~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292~^~core~^~The spec valid usage text states 'Any two elements of pPushConstantRanges must not include the same stage in stageFlags' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292)~^~ VALIDATION_ERROR_0fe0024a~^~Y~^~MultiplePushDescriptorSets~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00293~^~(VK_KHR_push_descriptor)~^~The spec valid usage text states 'pSetLayouts must not contain more than one descriptor set layout that was created with VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00293)~^~ -VALIDATION_ERROR_0fe00d18~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01676~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01676)~^~ -VALIDATION_ERROR_0fe00d1a~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01677~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01677)~^~ -VALIDATION_ERROR_0fe00d1c~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01678~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01678)~^~ -VALIDATION_ERROR_0fe00d1e~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01679~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01679)~^~ -VALIDATION_ERROR_0fe00d20~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01680~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01680)~^~ -VALIDATION_ERROR_0fe00d22~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01681~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01681)~^~ -VALIDATION_ERROR_0fe00d24~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682)~^~ -VALIDATION_ERROR_0fe00d26~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683)~^~ -VALIDATION_ERROR_0fe00d28~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684~^~core~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684)~^~ +VALIDATION_ERROR_0fe00d18~^~Y~^~CreatePipelineLayoutExcessPerStageDescriptors~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01676~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01676)~^~ +VALIDATION_ERROR_0fe00d1a~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01677~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01677)~^~ +VALIDATION_ERROR_0fe00d1c~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01678~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01678)~^~ +VALIDATION_ERROR_0fe00d1e~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01679~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01679)~^~ +VALIDATION_ERROR_0fe00d20~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01680~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01680)~^~ +VALIDATION_ERROR_0fe00d22~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01681~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01681)~^~ +VALIDATION_ERROR_0fe00d24~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682)~^~ +VALIDATION_ERROR_0fe00d26~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683)~^~ +VALIDATION_ERROR_0fe00d28~^~Y~^~CreatePipelineLayoutExcessDescriptorsOverall~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684)~^~ +VALIDATION_ERROR_0fe01790~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03016~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03016)~^~ +VALIDATION_ERROR_0fe01792~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03017~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03017)~^~ +VALIDATION_ERROR_0fe01794~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03018~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03018)~^~ +VALIDATION_ERROR_0fe01796~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03019~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03019)~^~ +VALIDATION_ERROR_0fe01798~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03020~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03020)~^~ +VALIDATION_ERROR_0fe0179a~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03021~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03021)~^~ +VALIDATION_ERROR_0fe0179c~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03022~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03022)~^~ +VALIDATION_ERROR_0fe0179e~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03023~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03023)~^~ +VALIDATION_ERROR_0fe017a0~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03024~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03024)~^~ +VALIDATION_ERROR_0fe017a2~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03025~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03025)~^~ +VALIDATION_ERROR_0fe017a4~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03026~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03026)~^~ +VALIDATION_ERROR_0fe017a6~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03027~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03027)~^~ +VALIDATION_ERROR_0fe017a8~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03028~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03028)~^~ +VALIDATION_ERROR_0fe017aa~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03029~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03029)~^~ +VALIDATION_ERROR_0fe017ac~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03030~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03030)~^~ +VALIDATION_ERROR_0fe017ae~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03031~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03031)~^~ +VALIDATION_ERROR_0fe017b0~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03032~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03032)~^~ +VALIDATION_ERROR_0fe017b2~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03033~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03033)~^~ +VALIDATION_ERROR_0fe017b4~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03034~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03034)~^~ +VALIDATION_ERROR_0fe017b6~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-descriptorType-03035~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03035)~^~ +VALIDATION_ERROR_0fe017b8~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036)~^~ +VALIDATION_ERROR_0fe017ba~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037)~^~ +VALIDATION_ERROR_0fe017bc~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038)~^~ +VALIDATION_ERROR_0fe017be~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039)~^~ +VALIDATION_ERROR_0fe017c0~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040)~^~ +VALIDATION_ERROR_0fe017c2~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041)~^~ +VALIDATION_ERROR_0fe017c4~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042)~^~ +VALIDATION_ERROR_0fe017c6~^~N~^~None~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043)~^~ VALIDATION_ERROR_0fe09005~^~Y~^~Unknown~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0fe1c40d~^~Y~^~Unknown~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_0fe1f801~^~Y~^~Unknown~^~VkPipelineLayoutCreateInfo~^~VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter~^~core~^~The spec valid usage text states 'If pushConstantRangeCount is not 0, pPushConstantRanges must be a valid pointer to an array of pushConstantRangeCount valid VkPushConstantRange structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter)~^~implicit @@ -1212,7 +1231,6 @@ VALIDATION_ERROR_10c2b61b~^~Y~^~PSOViewportStateMultiViewportTests~^~VkPipelineV VALIDATION_ERROR_10c30a1b~^~Y~^~PSOViewportStateMultiViewportTests~^~VkPipelineViewportStateCreateInfo~^~VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength~^~core~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength)~^~implicit VALIDATION_ERROR_10e0097e~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'viewportCount must match the viewportCount set in VkPipelineViewportStateCreateInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215)~^~ VALIDATION_ERROR_10e09005~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask)~^~implicit, TBD in parameter validation layer. -VALIDATION_ERROR_10e1c40d~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-pNext-pNext~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_10e2b00b~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType)~^~implicit VALIDATION_ERROR_10e30a1b~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength)~^~implicit VALIDATION_ERROR_1102b00b~^~N~^~Unknown~^~VkPipelineViewportWScalingStateCreateInfoNV~^~VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType)~^~implicit @@ -1283,7 +1301,6 @@ VALIDATION_ERROR_12400690~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID VALIDATION_ERROR_12400692~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'Each view index must not be set in more than one element of pCorrelationMasks' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841)~^~ VALIDATION_ERROR_12400694~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-00842~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If an element of pViewOffsets is non-zero, the corresponding VkSubpassDependency structure must have different values of srcSubpass and dstSubpass.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-00842)~^~ VALIDATION_ERROR_12411a01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If correlationMaskCount is not 0, pCorrelationMasks must be a valid pointer to an array of correlationMaskCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter)~^~implicit -VALIDATION_ERROR_1241c40d~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_12426c01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If subpassCount is not 0, pViewMasks must be a valid pointer to an array of subpassCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter)~^~implicit VALIDATION_ERROR_12426e01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If dependencyCount is not 0, pViewOffsets must be a valid pointer to an array of dependencyCount int32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter)~^~implicit VALIDATION_ERROR_1242b00b~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-sType-sType)~^~implicit @@ -1437,7 +1454,6 @@ VALIDATION_ERROR_142009bc~^~N~^~Unknown~^~VkSurfaceCapabilities2EXT~^~VUID-VkSur VALIDATION_ERROR_1421c40d~^~N~^~None~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-pNext-pNext~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-pNext-pNext)~^~implicit VALIDATION_ERROR_1422b00b~^~Y~^~None~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-sType-sType~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-sType-sType)~^~implicit VALIDATION_ERROR_144009b8~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'The bits in surfaceCounters must be supported by VkSwapchainCreateInfoKHR::surface, as reported by vkGetPhysicalDeviceSurfaceCapabilities2EXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244)~^~ -VALIDATION_ERROR_1441c40d~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_1442b00b~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_1442ee01~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'surfaceCounters must be a valid combination of VkSurfaceCounterFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter)~^~implicit VALIDATION_ERROR_14600009~^~Y~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-commonparent~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'Both of oldSwapchain, and surface that are valid handles must have been created, allocated, or retrieved from the same VkInstance' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-commonparent)~^~implicit @@ -1479,7 +1495,6 @@ VALIDATION_ERROR_1462b00f~^~N~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapcha VALIDATION_ERROR_1462ec01~^~Y~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-surface-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'surface must be a valid VkSurfaceKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-parameter)~^~implicit, This error applies to both vkCreateSwapchainKHR and vkCreateSharedSwapchainsKHR. VALIDATION_ERROR_14805a1b~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)~^~implicit VALIDATION_ERROR_14814401~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'pDisabledValidationChecks must be a valid pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)~^~implicit -VALIDATION_ERROR_1481c40d~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-pNext-pNext~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_1482b00b~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-sType-sType~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-sType-sType)~^~implicit VALIDATION_ERROR_14a004d8~^~Y~^~VALIDATION_ERROR_14a004d8~^~VkVertexInputAttributeDescription~^~VUID-VkVertexInputAttributeDescription-location-00620~^~core~^~The spec valid usage text states 'location must be less than VkPhysicalDeviceLimits::maxVertexInputAttributes' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-location-00620)~^~ VALIDATION_ERROR_14a004da~^~Y~^~VALIDATION_ERROR_14a004da~^~VkVertexInputAttributeDescription~^~VUID-VkVertexInputAttributeDescription-binding-00621~^~core~^~The spec valid usage text states 'binding must be less than VkPhysicalDeviceLimits::maxVertexInputBindings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-binding-00621)~^~ @@ -1562,6 +1577,7 @@ VALIDATION_ERROR_15c002a4~^~N~^~Unknown~^~VkWriteDescriptorSet~^~VUID-VkWriteDes VALIDATION_ERROR_15c002a6~^~N~^~Unknown~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorType-00339~^~core~^~The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, the imageView member of each element of pImageInfo must have been created with VK_IMAGE_USAGE_STORAGE_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-00339)~^~ VALIDATION_ERROR_15c00af4~^~N~^~None~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorType-01402~^~core~^~The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, for each descriptor that will be accessed via load or store operations the imageLayout member for corresponding elements of pImageInfo must be VK_IMAGE_LAYOUT_GENERAL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-01402)~^~ VALIDATION_ERROR_15c00af6~^~N~^~None~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorType-01403~^~core~^~The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, the imageLayout member of each element of pImageInfo must be VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL or VK_IMAGE_LAYOUT_GENERAL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-01403)~^~ +VALIDATION_ERROR_15c017d0~^~N~^~None~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorCount-03048~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'All consecutive bindings updated via a single VkWriteDescriptorSet structure, except those with a descriptorCount of zero, must have identical VkDescriptorBindingFlagBitsEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorCount-03048)~^~ VALIDATION_ERROR_15c0441b~^~Y~^~Unknown~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorCount-arraylength~^~core~^~The spec valid usage text states 'descriptorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorCount-arraylength)~^~implicit VALIDATION_ERROR_15c04e01~^~Y~^~Unknown~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-descriptorType-parameter~^~core~^~The spec valid usage text states 'descriptorType must be a valid VkDescriptorType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-parameter)~^~implicit VALIDATION_ERROR_15c1c40d~^~Y~^~Unknown~^~VkWriteDescriptorSet~^~VUID-VkWriteDescriptorSet-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-pNext-pNext)~^~implicit, TBD in parameter validation layer. @@ -1660,18 +1676,15 @@ VALIDATION_ERROR_1760161b~^~N~^~None~^~vkBindImageMemory2~^~VUID-vkBindImageMemo VALIDATION_ERROR_17605601~^~Y~^~None~^~vkBindImageMemory2~^~VUID-vkBindImageMemory2-device-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory2-device-parameter)~^~implicit VALIDATION_ERROR_1760fa01~^~Y~^~None~^~vkBindImageMemory2~^~VUID-vkBindImageMemory2-pBindInfos-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)~^~The spec valid usage text states 'pBindInfos must be a valid pointer to an array of bindInfoCount valid VkBindImageMemoryInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory2-pBindInfos-parameter)~^~implicit VALIDATION_ERROR_17800009~^~Y~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-commonparent~^~core~^~The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commonparent)~^~implicit -VALIDATION_ERROR_1780063c~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryPool-00798~^~core~^~The spec valid usage text states 'The query identified by queryPool and query must currently not be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00798)~^~ -VALIDATION_ERROR_1780063e~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryPool-00799~^~core~^~The spec valid usage text states 'The query identified by queryPool and query must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00799)~^~ VALIDATION_ERROR_17800640~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryType-00800~^~core~^~The spec valid usage text states 'If the precise occlusion queries feature is not enabled, or the queryType used to create queryPool was not VK_QUERY_TYPE_OCCLUSION, flags must not contain VK_QUERY_CONTROL_PRECISE_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00800)~^~ -VALIDATION_ERROR_17800642~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryPool-00801~^~core~^~The spec valid usage text states 'queryPool must have been created with a queryType that differs from that of any other queries that have been made active, and are currently still active within commandBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00801)~^~ VALIDATION_ERROR_17800644~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-query-00802~^~core~^~The spec valid usage text states 'query must be less than the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-query-00802)~^~ VALIDATION_ERROR_17800646~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryType-00803~^~core~^~The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_OCCLUSION, the VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00803)~^~ VALIDATION_ERROR_17800648~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryType-00804~^~core~^~The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_PIPELINE_STATISTICS and any of the pipelineStatistics indicate graphics operations, the VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00804)~^~ VALIDATION_ERROR_1780064a~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryType-00805~^~core~^~The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_PIPELINE_STATISTICS and any of the pipelineStatistics indicate compute operations, the VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00805)~^~ -VALIDATION_ERROR_1780064c~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-None-00806~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'All queries used by the command must not be active' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-None-00806)~^~ -VALIDATION_ERROR_1780064e~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-None-00807~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'All queries used by the command must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-None-00807)~^~ +VALIDATION_ERROR_1780064e~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-None-00807~^~core~^~The spec valid usage text states 'All queries used by the command must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-None-00807)~^~ VALIDATION_ERROR_17800650~^~N~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-query-00808~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If vkCmdBeginQuery is called within a render pass instance, the sum of query and the number of bits set in the current subpass's view mask must be less than or equal to the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-query-00808)~^~ VALIDATION_ERROR_17800eba~^~N~^~None~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-commandBuffer-01885~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'commandBuffer must not be a protected command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-01885)~^~ +VALIDATION_ERROR_17800f04~^~N~^~None~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-queryPool-01922~^~core~^~The spec valid usage text states 'queryPool must have been created with a queryType that differs from that of any queries that are active within commandBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-01922)~^~ VALIDATION_ERROR_17802401~^~Y~^~None~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_17802413~^~Y~^~None~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-recording)~^~implicit VALIDATION_ERROR_17802415~^~Y~^~Unknown~^~vkCmdBeginQuery~^~VUID-vkCmdBeginQuery-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-cmdpool)~^~implicit @@ -1926,6 +1939,7 @@ VALIDATION_ERROR_19000df0~^~N~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-dstO VALIDATION_ERROR_19000e42~^~N~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-01825~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01825)~^~ VALIDATION_ERROR_19000e44~^~N~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-01826~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01826)~^~ VALIDATION_ERROR_19000e46~^~N~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-01827~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01827)~^~ +VALIDATION_ERROR_19000efa~^~N~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-srcImageLayout-01917~^~(VK_KHR_shared_presentable_image)~^~The spec valid usage text states 'srcImageLayout must be VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, or VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-srcImageLayout-01917)~^~ VALIDATION_ERROR_19002401~^~Y~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_19002413~^~Y~^~None~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-recording)~^~implicit VALIDATION_ERROR_19002415~^~Y~^~Unknown~^~vkCmdCopyImage~^~VUID-vkCmdCopyImage-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-cmdpool)~^~implicit @@ -1997,21 +2011,21 @@ VALIDATION_ERROR_19c00017~^~Y~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-ren VALIDATION_ERROR_19c00304~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatch~^~VUID-vkCmdDispatch-groupCountX-00386~^~core~^~The spec valid usage text states 'groupCountX must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountX-00386)~^~ VALIDATION_ERROR_19c00306~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatch~^~VUID-vkCmdDispatch-groupCountY-00387~^~core~^~The spec valid usage text states 'groupCountY must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountY-00387)~^~ VALIDATION_ERROR_19c00308~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatch~^~VUID-vkCmdDispatch-groupCountZ-00388~^~core~^~The spec valid usage text states 'groupCountZ must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountZ-00388)~^~ -VALIDATION_ERROR_19c0030a~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00389~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00389)~^~ -VALIDATION_ERROR_19c0030c~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00390~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00390)~^~ +VALIDATION_ERROR_19c0030a~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00389~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00389)~^~ +VALIDATION_ERROR_19c0030c~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00390~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00390)~^~ VALIDATION_ERROR_19c0030e~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00391~^~core~^~The spec valid usage text states 'A valid compute pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00391)~^~ -VALIDATION_ERROR_19c00310~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00392~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00392)~^~ -VALIDATION_ERROR_19c00312~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00393~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00393)~^~ -VALIDATION_ERROR_19c00314~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00394~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00394)~^~ -VALIDATION_ERROR_19c00316~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00395~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00395)~^~ -VALIDATION_ERROR_19c00318~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00396~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00396)~^~ -VALIDATION_ERROR_19c0031a~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00397~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00397)~^~ +VALIDATION_ERROR_19c00310~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00392~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00392)~^~ +VALIDATION_ERROR_19c00312~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00393~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00393)~^~ +VALIDATION_ERROR_19c00314~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00394~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00394)~^~ +VALIDATION_ERROR_19c00316~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00395~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00395)~^~ +VALIDATION_ERROR_19c00318~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00396~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00396)~^~ +VALIDATION_ERROR_19c0031a~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00397~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00397)~^~ VALIDATION_ERROR_19c0031c~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-linearTilingFeatures-00398~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-linearTilingFeatures-00398)~^~ VALIDATION_ERROR_19c0031e~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-linearTilingFeatures-00399~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-linearTilingFeatures-00399)~^~ VALIDATION_ERROR_19c00320~^~N~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-None-00400~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-None-00400)~^~ -VALIDATION_ERROR_19c00e68~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01844~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01844)~^~ -VALIDATION_ERROR_19c00e6a~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01845~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01845)~^~ -VALIDATION_ERROR_19c00e6c~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01846~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01846)~^~ +VALIDATION_ERROR_19c00e68~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01844~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01844)~^~ +VALIDATION_ERROR_19c00e6a~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01845~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01845)~^~ +VALIDATION_ERROR_19c00e6c~^~N~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-01846~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01846)~^~ VALIDATION_ERROR_19c02401~^~Y~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_19c02413~^~Y~^~None~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-recording)~^~implicit VALIDATION_ERROR_19c02415~^~Y~^~Unknown~^~vkCmdDispatch~^~VUID-vkCmdDispatch-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-cmdpool)~^~implicit @@ -2023,89 +2037,89 @@ VALIDATION_ERROR_19e0034e~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatchBase~^~VU VALIDATION_ERROR_19e00350~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-groupCountX-00424~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'groupCountX must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0] minus baseGroupX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountX-00424)~^~ VALIDATION_ERROR_19e00352~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-groupCountY-00425~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'groupCountY must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1] minus baseGroupY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountY-00425)~^~ VALIDATION_ERROR_19e00354~^~Y~^~CmdDispatchExceedLimits~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-groupCountZ-00426~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'groupCountZ must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2] minus baseGroupZ' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountZ-00426)~^~ -VALIDATION_ERROR_19e00356~^~N~^~Unknown~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-baseGroupX-00427~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If any of baseGroupX, baseGroupY, or baseGroupZ are not zero, then the currently bound compute pipeline must have been created with the VK_PIPELINE_CREATE_DISPATCH_BASE flag.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-baseGroupX-00427)~^~ +VALIDATION_ERROR_19e00356~^~N~^~Unknown~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-baseGroupX-00427~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If any of baseGroupX, baseGroupY, or baseGroupZ are not zero, then the bound compute pipeline must have been created with the VK_PIPELINE_CREATE_DISPATCH_BASE flag.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-baseGroupX-00427)~^~ VALIDATION_ERROR_19e02401~^~Y~^~Unknown~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-commandBuffer-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_19e02413~^~N~^~Unknown~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-commandBuffer-recording~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-recording)~^~implicit VALIDATION_ERROR_19e02415~^~N~^~Unknown~^~vkCmdDispatchBase~^~VUID-vkCmdDispatchBase-commandBuffer-cmdpool~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1a000009~^~Y~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commonparent~^~core~^~The spec valid usage text states 'Both of buffer, and commandBuffer must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commonparent)~^~implicit VALIDATION_ERROR_1a000017~^~Y~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-renderpass~^~core~^~The spec valid usage text states 'This command must only be called outside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-renderpass)~^~implicit VALIDATION_ERROR_1a000322~^~Y~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-buffer-00401~^~core~^~The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-00401)~^~ -VALIDATION_ERROR_1a000324~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00402~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00402)~^~ -VALIDATION_ERROR_1a000326~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00403~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00403)~^~ +VALIDATION_ERROR_1a000324~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00402~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00402)~^~ +VALIDATION_ERROR_1a000326~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00403~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00403)~^~ VALIDATION_ERROR_1a000328~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00404~^~core~^~The spec valid usage text states 'A valid compute pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00404)~^~ VALIDATION_ERROR_1a00032a~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-buffer-00405~^~core~^~The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-00405)~^~ VALIDATION_ERROR_1a00032c~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-offset-00406~^~core~^~The spec valid usage text states 'offset must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-offset-00406)~^~ VALIDATION_ERROR_1a00032e~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-offset-00407~^~core~^~The spec valid usage text states 'The sum of offset and the size of VkDispatchIndirectCommand must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-offset-00407)~^~ -VALIDATION_ERROR_1a000330~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00408~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00408)~^~ -VALIDATION_ERROR_1a000332~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00409~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00409)~^~ -VALIDATION_ERROR_1a000334~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00410~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00410)~^~ -VALIDATION_ERROR_1a000336~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00411~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00411)~^~ -VALIDATION_ERROR_1a000338~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00412~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00412)~^~ -VALIDATION_ERROR_1a00033a~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00413~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00413)~^~ +VALIDATION_ERROR_1a000330~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00408~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00408)~^~ +VALIDATION_ERROR_1a000332~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00409~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00409)~^~ +VALIDATION_ERROR_1a000334~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00410~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00410)~^~ +VALIDATION_ERROR_1a000336~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00411~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00411)~^~ +VALIDATION_ERROR_1a000338~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00412~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00412)~^~ +VALIDATION_ERROR_1a00033a~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00413~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00413)~^~ VALIDATION_ERROR_1a00033c~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-linearTilingFeatures-00414~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-linearTilingFeatures-00414)~^~ VALIDATION_ERROR_1a00033e~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-linearTilingFeatures-00415~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-linearTilingFeatures-00415)~^~ VALIDATION_ERROR_1a000340~^~N~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-None-00416~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00416)~^~ -VALIDATION_ERROR_1a000e6e~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01847~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01847)~^~ -VALIDATION_ERROR_1a000e70~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01848~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01848)~^~ -VALIDATION_ERROR_1a000e72~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01849~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01849)~^~ +VALIDATION_ERROR_1a000e6e~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01847~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01847)~^~ +VALIDATION_ERROR_1a000e70~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01848~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01848)~^~ +VALIDATION_ERROR_1a000e72~^~N~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-01849~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01849)~^~ VALIDATION_ERROR_1a001a01~^~Y~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-parameter)~^~implicit VALIDATION_ERROR_1a002401~^~Y~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1a002413~^~Y~^~None~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1a002415~^~Y~^~Unknown~^~vkCmdDispatchIndirect~^~VUID-vkCmdDispatchIndirect-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1a200017~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-renderpass~^~core~^~The spec valid usage text states 'This command must only be called inside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderpass)~^~implicit -VALIDATION_ERROR_1a200366~^~Y~^~RenderPassIncompatible~^~vkCmdDraw~^~VUID-vkCmdDraw-renderPass-00435~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderPass-00435)~^~ -VALIDATION_ERROR_1a200368~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-subpass-00436~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-subpass-00436)~^~ -VALIDATION_ERROR_1a20036a~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00437~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00437)~^~ -VALIDATION_ERROR_1a20036c~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00438~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00438)~^~ -VALIDATION_ERROR_1a20036e~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00439~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00439)~^~ +VALIDATION_ERROR_1a200366~^~Y~^~RenderPassIncompatible~^~vkCmdDraw~^~VUID-vkCmdDraw-renderPass-00435~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderPass-00435)~^~ +VALIDATION_ERROR_1a200368~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-subpass-00436~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-subpass-00436)~^~ +VALIDATION_ERROR_1a20036a~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00437~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00437)~^~ +VALIDATION_ERROR_1a20036c~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00438~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00438)~^~ +VALIDATION_ERROR_1a20036e~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00439~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00439)~^~ VALIDATION_ERROR_1a200370~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00440~^~core~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00440)~^~ VALIDATION_ERROR_1a200372~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00441~^~core~^~The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00441)~^~ VALIDATION_ERROR_1a200374~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00442~^~core~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00442)~^~ -VALIDATION_ERROR_1a200376~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00443~^~core~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00443)~^~ +VALIDATION_ERROR_1a200376~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00443~^~core~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00443)~^~ VALIDATION_ERROR_1a200378~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00444~^~core~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00444)~^~ -VALIDATION_ERROR_1a20037a~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00445~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00445)~^~ -VALIDATION_ERROR_1a20037c~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00446~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00446)~^~ -VALIDATION_ERROR_1a20037e~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00447~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00447)~^~ -VALIDATION_ERROR_1a200380~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00448~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00448)~^~ -VALIDATION_ERROR_1a200382~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00449~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00449)~^~ +VALIDATION_ERROR_1a20037a~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00445~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00445)~^~ +VALIDATION_ERROR_1a20037c~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00446~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00446)~^~ +VALIDATION_ERROR_1a20037e~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00447~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00447)~^~ +VALIDATION_ERROR_1a200380~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00448~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00448)~^~ +VALIDATION_ERROR_1a200382~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00449~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00449)~^~ VALIDATION_ERROR_1a200384~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-linearTilingFeatures-00450~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-linearTilingFeatures-00450)~^~ VALIDATION_ERROR_1a200386~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-linearTilingFeatures-00451~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-linearTilingFeatures-00451)~^~ VALIDATION_ERROR_1a200388~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-None-00452~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-None-00452)~^~ VALIDATION_ERROR_1a20038a~^~N~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-maxMultiviewInstanceIndex-00453~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-maxMultiviewInstanceIndex-00453)~^~ VALIDATION_ERROR_1a200bb6~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-None-01499~^~core~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-01499)~^~ -VALIDATION_ERROR_1a200bd0~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-sampleLocationsEnable-01512~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-sampleLocationsEnable-01512)~^~ -VALIDATION_ERROR_1a200e74~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01850~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01850)~^~ -VALIDATION_ERROR_1a200e76~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01851~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01851)~^~ -VALIDATION_ERROR_1a200e78~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01852~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01852)~^~ +VALIDATION_ERROR_1a200bd0~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-sampleLocationsEnable-01512~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-sampleLocationsEnable-01512)~^~ +VALIDATION_ERROR_1a200e74~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01850~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01850)~^~ +VALIDATION_ERROR_1a200e76~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01851~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01851)~^~ +VALIDATION_ERROR_1a200e78~^~N~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-01852~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01852)~^~ VALIDATION_ERROR_1a202401~^~Y~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1a202413~^~Y~^~None~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1a202415~^~Y~^~Unknown~^~vkCmdDraw~^~VUID-vkCmdDraw-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1a400017~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-renderpass~^~core~^~The spec valid usage text states 'This command must only be called inside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderpass)~^~implicit -VALIDATION_ERROR_1a40038c~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-renderPass-00454~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-00454)~^~ -VALIDATION_ERROR_1a40038e~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-subpass-00455~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-subpass-00455)~^~ -VALIDATION_ERROR_1a400390~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00456~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00456)~^~ -VALIDATION_ERROR_1a400392~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00457~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00457)~^~ -VALIDATION_ERROR_1a400394~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00458~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00458)~^~ +VALIDATION_ERROR_1a40038c~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-renderPass-00454~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-00454)~^~ +VALIDATION_ERROR_1a40038e~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-subpass-00455~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-subpass-00455)~^~ +VALIDATION_ERROR_1a400390~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00456~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00456)~^~ +VALIDATION_ERROR_1a400392~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00457~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00457)~^~ +VALIDATION_ERROR_1a400394~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00458~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00458)~^~ VALIDATION_ERROR_1a400396~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00459~^~core~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00459)~^~ VALIDATION_ERROR_1a400398~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00460~^~core~^~The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00460)~^~ VALIDATION_ERROR_1a40039a~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00461~^~core~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00461)~^~ -VALIDATION_ERROR_1a40039c~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00462~^~core~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00462)~^~ -VALIDATION_ERROR_1a40039e~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-indexSize-00463~^~core~^~The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the currently bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-indexSize-00463)~^~ +VALIDATION_ERROR_1a40039c~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00462~^~core~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00462)~^~ +VALIDATION_ERROR_1a40039e~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-indexSize-00463~^~core~^~The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-indexSize-00463)~^~ VALIDATION_ERROR_1a4003a0~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00464~^~core~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00464)~^~ -VALIDATION_ERROR_1a4003a2~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00465~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00465)~^~ -VALIDATION_ERROR_1a4003a4~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00466~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00466)~^~ -VALIDATION_ERROR_1a4003a6~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00467~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00467)~^~ -VALIDATION_ERROR_1a4003a8~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00468~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00468)~^~ -VALIDATION_ERROR_1a4003aa~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00469~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00469)~^~ +VALIDATION_ERROR_1a4003a2~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00465~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00465)~^~ +VALIDATION_ERROR_1a4003a4~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00466~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00466)~^~ +VALIDATION_ERROR_1a4003a6~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00467~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00467)~^~ +VALIDATION_ERROR_1a4003a8~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00468~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00468)~^~ +VALIDATION_ERROR_1a4003aa~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00469~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00469)~^~ VALIDATION_ERROR_1a4003ac~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-linearTilingFeatures-00470~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-linearTilingFeatures-00470)~^~ VALIDATION_ERROR_1a4003ae~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-linearTilingFeatures-00471~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-linearTilingFeatures-00471)~^~ VALIDATION_ERROR_1a4003b0~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-00472~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00472)~^~ VALIDATION_ERROR_1a4003b2~^~N~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-maxMultiviewInstanceIndex-00473~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-maxMultiviewInstanceIndex-00473)~^~ VALIDATION_ERROR_1a400bb8~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-None-01500~^~core~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-01500)~^~ -VALIDATION_ERROR_1a400bd2~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513)~^~ -VALIDATION_ERROR_1a400e7a~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01853~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01853)~^~ -VALIDATION_ERROR_1a400e7c~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01854~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01854)~^~ -VALIDATION_ERROR_1a400e7e~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01855~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01855)~^~ +VALIDATION_ERROR_1a400bd2~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513)~^~ +VALIDATION_ERROR_1a400e7a~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01853~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01853)~^~ +VALIDATION_ERROR_1a400e7c~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01854~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01854)~^~ +VALIDATION_ERROR_1a400e7e~^~N~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-01855~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01855)~^~ VALIDATION_ERROR_1a402401~^~Y~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1a402413~^~Y~^~None~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1a402415~^~Y~^~Unknown~^~vkCmdDrawIndexed~^~VUID-vkCmdDrawIndexed-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-cmdpool)~^~implicit @@ -2116,33 +2130,33 @@ VALIDATION_ERROR_1a60041e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdD VALIDATION_ERROR_1a600420~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-drawCount-00528~^~core~^~The spec valid usage text states 'If drawCount is greater than 1, stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndexedIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00528)~^~ VALIDATION_ERROR_1a600422~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-drawCount-00529~^~core~^~The spec valid usage text states 'If the multi-draw indirect feature is not enabled, drawCount must be 0 or 1' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00529)~^~ VALIDATION_ERROR_1a600424~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-firstInstance-00530~^~core~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndexedIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-firstInstance-00530)~^~ -VALIDATION_ERROR_1a600426~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-renderPass-00531~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-renderPass-00531)~^~ -VALIDATION_ERROR_1a600428~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-subpass-00532~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-subpass-00532)~^~ -VALIDATION_ERROR_1a60042a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00533~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00533)~^~ -VALIDATION_ERROR_1a60042c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00534~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00534)~^~ -VALIDATION_ERROR_1a60042e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00535~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00535)~^~ +VALIDATION_ERROR_1a600426~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-renderPass-00531~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-renderPass-00531)~^~ +VALIDATION_ERROR_1a600428~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-subpass-00532~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-subpass-00532)~^~ +VALIDATION_ERROR_1a60042a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00533~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00533)~^~ +VALIDATION_ERROR_1a60042c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00534~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00534)~^~ +VALIDATION_ERROR_1a60042e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00535~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00535)~^~ VALIDATION_ERROR_1a600430~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00536~^~core~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00536)~^~ VALIDATION_ERROR_1a600432~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00537~^~core~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00537)~^~ -VALIDATION_ERROR_1a600434~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00538~^~core~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00538)~^~ +VALIDATION_ERROR_1a600434~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00538~^~core~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00538)~^~ VALIDATION_ERROR_1a600436~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-drawCount-00539~^~core~^~The spec valid usage text states 'If drawCount is equal to 1, (offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00539)~^~ VALIDATION_ERROR_1a600438~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-drawCount-00540~^~core~^~The spec valid usage text states 'If drawCount is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00540)~^~ VALIDATION_ERROR_1a60043a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-drawCount-00541~^~core~^~The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00541)~^~ VALIDATION_ERROR_1a60043c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00542~^~core~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00542)~^~ -VALIDATION_ERROR_1a60043e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00543~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00543)~^~ -VALIDATION_ERROR_1a600440~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00544~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00544)~^~ -VALIDATION_ERROR_1a600442~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00545~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00545)~^~ -VALIDATION_ERROR_1a600444~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00546~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00546)~^~ -VALIDATION_ERROR_1a600446~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00547~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00547)~^~ +VALIDATION_ERROR_1a60043e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00543~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00543)~^~ +VALIDATION_ERROR_1a600440~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00544~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00544)~^~ +VALIDATION_ERROR_1a600442~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00545~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00545)~^~ +VALIDATION_ERROR_1a600444~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00546~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00546)~^~ +VALIDATION_ERROR_1a600446~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00547~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00547)~^~ VALIDATION_ERROR_1a600448~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00548~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00548)~^~ VALIDATION_ERROR_1a60044a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00549~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00549)~^~ VALIDATION_ERROR_1a60044c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-00550~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00550)~^~ VALIDATION_ERROR_1a60044e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-maxMultiviewInstanceIndex-00551~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-maxMultiviewInstanceIndex-00551)~^~ VALIDATION_ERROR_1a600bbe~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-None-01503~^~core~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-01503)~^~ -VALIDATION_ERROR_1a600bd8~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516)~^~ +VALIDATION_ERROR_1a600bd8~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516)~^~ VALIDATION_ERROR_1a600d02~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-buffer-01665~^~core~^~The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-buffer-01665)~^~ -VALIDATION_ERROR_1a600e8c~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862)~^~ -VALIDATION_ERROR_1a600e8e~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863)~^~ -VALIDATION_ERROR_1a600e90~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864)~^~ +VALIDATION_ERROR_1a600e8c~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862)~^~ +VALIDATION_ERROR_1a600e8e~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863)~^~ +VALIDATION_ERROR_1a600e90~^~N~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864)~^~ VALIDATION_ERROR_1a601a01~^~Y~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-buffer-parameter)~^~implicit VALIDATION_ERROR_1a602401~^~Y~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1a602413~^~Y~^~None~^~vkCmdDrawIndexedIndirect~^~VUID-vkCmdDrawIndexedIndirect-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-recording)~^~implicit @@ -2154,34 +2168,34 @@ VALIDATION_ERROR_1a800458~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUI VALIDATION_ERROR_1a80045a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-stride-00557~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-stride-00557)~^~ VALIDATION_ERROR_1a80045c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-maxDrawCount-00558~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If maxDrawCount is greater than or equal to 1, (stride {times} (maxDrawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-maxDrawCount-00558)~^~ VALIDATION_ERROR_1a80045e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-firstInstance-00559~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndexedIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-firstInstance-00559)~^~ -VALIDATION_ERROR_1a800460~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560)~^~ -VALIDATION_ERROR_1a800462~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561)~^~ -VALIDATION_ERROR_1a800464~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562)~^~ -VALIDATION_ERROR_1a800466~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563)~^~ -VALIDATION_ERROR_1a800468~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564)~^~ +VALIDATION_ERROR_1a800460~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560)~^~ +VALIDATION_ERROR_1a800462~^~Y~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561)~^~ +VALIDATION_ERROR_1a800464~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562)~^~ +VALIDATION_ERROR_1a800466~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563)~^~ +VALIDATION_ERROR_1a800468~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564)~^~ VALIDATION_ERROR_1a80046a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00565~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00565)~^~ VALIDATION_ERROR_1a80046c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00566~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00566)~^~ -VALIDATION_ERROR_1a80046e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567)~^~ +VALIDATION_ERROR_1a80046e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567)~^~ VALIDATION_ERROR_1a800470~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00568~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If count stored in countBuffer is equal to 1, (offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00568)~^~ VALIDATION_ERROR_1a800472~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00569~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00569)~^~ VALIDATION_ERROR_1a800474~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-drawCount-00570~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-drawCount-00570)~^~ VALIDATION_ERROR_1a800476~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00571~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00571)~^~ -VALIDATION_ERROR_1a800478~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572)~^~ -VALIDATION_ERROR_1a80047a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573)~^~ -VALIDATION_ERROR_1a80047c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574)~^~ -VALIDATION_ERROR_1a80047e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575)~^~ -VALIDATION_ERROR_1a800480~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576)~^~ +VALIDATION_ERROR_1a800478~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572)~^~ +VALIDATION_ERROR_1a80047a~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573)~^~ +VALIDATION_ERROR_1a80047c~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574)~^~ +VALIDATION_ERROR_1a80047e~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575)~^~ +VALIDATION_ERROR_1a800480~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576)~^~ VALIDATION_ERROR_1a800482~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-linearTilingFeatures-00577~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-linearTilingFeatures-00577)~^~ VALIDATION_ERROR_1a800484~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-maxMultiviewInstanceIndex-00578~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-maxMultiviewInstanceIndex-00578)~^~ VALIDATION_ERROR_1a800bc0~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-None-01504~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-01504)~^~ -VALIDATION_ERROR_1a800bda~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517~^~(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517)~^~ +VALIDATION_ERROR_1a800bda~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517~^~(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517)~^~ VALIDATION_ERROR_1a800d04~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01666~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01666)~^~ VALIDATION_ERROR_1a800d06~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01667~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01667)~^~ VALIDATION_ERROR_1a800d08~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01668~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If countBuffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01668)~^~ VALIDATION_ERROR_1a800d0a~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01669~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'countBuffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01669)~^~ -VALIDATION_ERROR_1a800e92~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865)~^~ -VALIDATION_ERROR_1a800e94~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866)~^~ -VALIDATION_ERROR_1a800e96~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867)~^~ +VALIDATION_ERROR_1a800e92~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865)~^~ +VALIDATION_ERROR_1a800e94~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866)~^~ +VALIDATION_ERROR_1a800e96~^~N~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867)~^~ VALIDATION_ERROR_1a801a01~^~Y~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-parameter~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-parameter)~^~implicit VALIDATION_ERROR_1a802401~^~Y~^~None~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-parameter~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1a802413~^~N~^~Unknown~^~vkCmdDrawIndexedIndirectCountAMD~^~VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-recording~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-recording)~^~implicit @@ -2194,33 +2208,33 @@ VALIDATION_ERROR_1aa003b6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndi VALIDATION_ERROR_1aa003b8~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-drawCount-00476~^~core~^~The spec valid usage text states 'If drawCount is greater than 1, stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00476)~^~ VALIDATION_ERROR_1aa003ba~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-drawCount-00477~^~core~^~The spec valid usage text states 'If the multi-draw indirect feature is not enabled, drawCount must be 0 or 1' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00477)~^~ VALIDATION_ERROR_1aa003bc~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-firstInstance-00478~^~core~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-firstInstance-00478)~^~ -VALIDATION_ERROR_1aa003be~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-renderPass-00479~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-renderPass-00479)~^~ -VALIDATION_ERROR_1aa003c0~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-subpass-00480~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-subpass-00480)~^~ -VALIDATION_ERROR_1aa003c2~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00481~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00481)~^~ -VALIDATION_ERROR_1aa003c4~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00482~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00482)~^~ -VALIDATION_ERROR_1aa003c6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00483~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00483)~^~ +VALIDATION_ERROR_1aa003be~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-renderPass-00479~^~core~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-renderPass-00479)~^~ +VALIDATION_ERROR_1aa003c0~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-subpass-00480~^~core~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-subpass-00480)~^~ +VALIDATION_ERROR_1aa003c2~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00481~^~core~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00481)~^~ +VALIDATION_ERROR_1aa003c4~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00482~^~core~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00482)~^~ +VALIDATION_ERROR_1aa003c6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00483~^~core~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00483)~^~ VALIDATION_ERROR_1aa003c8~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00484~^~core~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00484)~^~ VALIDATION_ERROR_1aa003ca~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00485~^~core~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00485)~^~ -VALIDATION_ERROR_1aa003cc~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00486~^~core~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00486)~^~ +VALIDATION_ERROR_1aa003cc~^~Y~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00486~^~core~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00486)~^~ VALIDATION_ERROR_1aa003ce~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-drawCount-00487~^~core~^~The spec valid usage text states 'If drawCount is equal to 1, (offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00487)~^~ VALIDATION_ERROR_1aa003d0~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-drawCount-00488~^~core~^~The spec valid usage text states 'If drawCount is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00488)~^~ VALIDATION_ERROR_1aa003d2~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-drawCount-00489~^~core~^~The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00489)~^~ VALIDATION_ERROR_1aa003d4~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00490~^~core~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00490)~^~ -VALIDATION_ERROR_1aa003d6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00491~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00491)~^~ -VALIDATION_ERROR_1aa003d8~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00492~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00492)~^~ -VALIDATION_ERROR_1aa003da~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00493~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00493)~^~ -VALIDATION_ERROR_1aa003dc~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00494~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00494)~^~ -VALIDATION_ERROR_1aa003de~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00495~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00495)~^~ +VALIDATION_ERROR_1aa003d6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00491~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00491)~^~ +VALIDATION_ERROR_1aa003d8~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00492~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00492)~^~ +VALIDATION_ERROR_1aa003da~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00493~^~core~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00493)~^~ +VALIDATION_ERROR_1aa003dc~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00494~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00494)~^~ +VALIDATION_ERROR_1aa003de~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00495~^~core~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00495)~^~ VALIDATION_ERROR_1aa003e0~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-linearTilingFeatures-00496~^~core~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-linearTilingFeatures-00496)~^~ VALIDATION_ERROR_1aa003e2~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-linearTilingFeatures-00497~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-linearTilingFeatures-00497)~^~ VALIDATION_ERROR_1aa003e4~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-00498~^~(VK_IMG_filter_cubic)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00498)~^~ VALIDATION_ERROR_1aa003e6~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-maxMultiviewInstanceIndex-00499~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-maxMultiviewInstanceIndex-00499)~^~ VALIDATION_ERROR_1aa00bba~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-None-01501~^~core~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-01501)~^~ -VALIDATION_ERROR_1aa00bd4~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514)~^~ +VALIDATION_ERROR_1aa00bd4~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514)~^~ VALIDATION_ERROR_1aa00cf8~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-buffer-01660~^~core~^~The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-buffer-01660)~^~ -VALIDATION_ERROR_1aa00e80~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01856~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01856)~^~ -VALIDATION_ERROR_1aa00e82~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01857~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01857)~^~ -VALIDATION_ERROR_1aa00e84~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01858~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01858)~^~ +VALIDATION_ERROR_1aa00e80~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01856~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01856)~^~ +VALIDATION_ERROR_1aa00e82~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01857~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01857)~^~ +VALIDATION_ERROR_1aa00e84~^~N~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-01858~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01858)~^~ VALIDATION_ERROR_1aa01a01~^~Y~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-buffer-parameter)~^~implicit VALIDATION_ERROR_1aa02401~^~Y~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1aa02413~^~Y~^~None~^~vkCmdDrawIndirect~^~VUID-vkCmdDrawIndirect-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-recording)~^~implicit @@ -2232,45 +2246,44 @@ VALIDATION_ERROR_1ac003ee~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmd VALIDATION_ERROR_1ac003f0~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-stride-00504~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-stride-00504)~^~ VALIDATION_ERROR_1ac003f2~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-maxDrawCount-00505~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If maxDrawCount is greater than or equal to 1, (stride {times} (maxDrawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-maxDrawCount-00505)~^~ VALIDATION_ERROR_1ac003f4~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-firstInstance-00506~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-firstInstance-00506)~^~ -VALIDATION_ERROR_1ac003f6~^~Y~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-renderPass-00507~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-renderPass-00507)~^~ -VALIDATION_ERROR_1ac003f8~^~Y~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-subpass-00508~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-subpass-00508)~^~ -VALIDATION_ERROR_1ac003fa~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00509~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00509)~^~ -VALIDATION_ERROR_1ac003fc~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00510~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00510)~^~ -VALIDATION_ERROR_1ac003fe~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00511~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00511)~^~ +VALIDATION_ERROR_1ac003f6~^~Y~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-renderPass-00507~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-renderPass-00507)~^~ +VALIDATION_ERROR_1ac003f8~^~Y~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-subpass-00508~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-subpass-00508)~^~ +VALIDATION_ERROR_1ac003fa~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00509~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00509)~^~ +VALIDATION_ERROR_1ac003fc~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00510~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00510)~^~ +VALIDATION_ERROR_1ac003fe~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00511~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00511)~^~ VALIDATION_ERROR_1ac00400~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00512~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00512)~^~ VALIDATION_ERROR_1ac00402~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00513~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00513)~^~ -VALIDATION_ERROR_1ac00404~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00514~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00514)~^~ +VALIDATION_ERROR_1ac00404~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00514~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00514)~^~ VALIDATION_ERROR_1ac00406~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-00515~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the count stored in countBuffer is equal to 1, (offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00515)~^~ VALIDATION_ERROR_1ac00408~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-00516~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00516)~^~ VALIDATION_ERROR_1ac0040a~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-00517~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The count stored in countBuffer must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00517)~^~ VALIDATION_ERROR_1ac0040c~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00518~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00518)~^~ -VALIDATION_ERROR_1ac0040e~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00519~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00519)~^~ -VALIDATION_ERROR_1ac00410~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00520~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00520)~^~ -VALIDATION_ERROR_1ac00412~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00521~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00521)~^~ -VALIDATION_ERROR_1ac00414~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00522~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00522)~^~ -VALIDATION_ERROR_1ac00416~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00523~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00523)~^~ +VALIDATION_ERROR_1ac0040e~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00519~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00519)~^~ +VALIDATION_ERROR_1ac00410~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00520~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00520)~^~ +VALIDATION_ERROR_1ac00412~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00521~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00521)~^~ +VALIDATION_ERROR_1ac00414~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00522~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00522)~^~ +VALIDATION_ERROR_1ac00416~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-00523~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00523)~^~ VALIDATION_ERROR_1ac00418~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-linearTilingFeatures-00524~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-linearTilingFeatures-00524)~^~ VALIDATION_ERROR_1ac0041a~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-maxMultiviewInstanceIndex-00525~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-maxMultiviewInstanceIndex-00525)~^~ VALIDATION_ERROR_1ac00bbc~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-None-01502~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-01502)~^~ -VALIDATION_ERROR_1ac00bd6~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515~^~(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515)~^~ +VALIDATION_ERROR_1ac00bd6~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515~^~(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)~^~The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515)~^~ VALIDATION_ERROR_1ac00cfa~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-buffer-01661~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-01661)~^~ VALIDATION_ERROR_1ac00cfc~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-buffer-01662~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-01662)~^~ VALIDATION_ERROR_1ac00cfe~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-01663~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'If countBuffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-01663)~^~ VALIDATION_ERROR_1ac00d00~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-01664~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'countBuffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-01664)~^~ -VALIDATION_ERROR_1ac00e86~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859)~^~ -VALIDATION_ERROR_1ac00e88~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860)~^~ -VALIDATION_ERROR_1ac00e8a~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861)~^~ +VALIDATION_ERROR_1ac00e86~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859)~^~ +VALIDATION_ERROR_1ac00e88~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860)~^~ +VALIDATION_ERROR_1ac00e8a~^~N~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861~^~(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)~^~The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861)~^~ VALIDATION_ERROR_1ac01a01~^~Y~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-buffer-parameter~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-parameter)~^~implicit VALIDATION_ERROR_1ac02401~^~Y~^~None~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-parameter~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1ac02413~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-recording~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1ac02415~^~N~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-commandBuffer-cmdpool~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1ac03401~^~Y~^~Unknown~^~vkCmdDrawIndirectCountAMD~^~VUID-vkCmdDrawIndirectCountAMD-countBuffer-parameter~^~(VK_AMD_draw_indirect_count)~^~The spec valid usage text states 'countBuffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-parameter)~^~implicit VALIDATION_ERROR_1ae00009~^~Y~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-commonparent~^~core~^~The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commonparent)~^~implicit -VALIDATION_ERROR_1ae00652~^~Y~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-queryPool-00809~^~core~^~The spec valid usage text states 'The query identified by queryPool and query must currently be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-queryPool-00809)~^~ VALIDATION_ERROR_1ae00654~^~N~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-query-00810~^~core~^~The spec valid usage text states 'query must be less than the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-query-00810)~^~ -VALIDATION_ERROR_1ae00656~^~N~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-None-00811~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'All queries used by the command must be active' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-None-00811)~^~ VALIDATION_ERROR_1ae00658~^~N~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-query-00812~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If vkCmdEndQuery is called within a render pass instance, the sum of query and the number of bits set in the current subpass's view mask must be less than or equal to the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-query-00812)~^~ VALIDATION_ERROR_1ae00ebc~^~N~^~None~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-commandBuffer-01886~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'commandBuffer must not be a protected command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-01886)~^~ +VALIDATION_ERROR_1ae00f06~^~Y~^~None~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-None-01923~^~core~^~The spec valid usage text states 'All queries used by the command must be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-None-01923)~^~ VALIDATION_ERROR_1ae02401~^~Y~^~None~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1ae02413~^~Y~^~None~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1ae02415~^~Y~^~Unknown~^~vkCmdEndQuery~^~VUID-vkCmdEndQuery-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-cmdpool)~^~implicit @@ -2464,16 +2477,16 @@ VALIDATION_ERROR_1c821001~^~Y~^~Unknown~^~vkCmdResolveImage~^~VUID-vkCmdResolveI VALIDATION_ERROR_1c82ac1b~^~Y~^~Unknown~^~vkCmdResolveImage~^~VUID-vkCmdResolveImage-regionCount-arraylength~^~core~^~The spec valid usage text states 'regionCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-regionCount-arraylength)~^~implicit VALIDATION_ERROR_1c82ce01~^~Y~^~None~^~vkCmdResolveImage~^~VUID-vkCmdResolveImage-srcImage-parameter~^~core~^~The spec valid usage text states 'srcImage must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-srcImage-parameter)~^~implicit VALIDATION_ERROR_1c82d001~^~Y~^~Unknown~^~vkCmdResolveImage~^~VUID-vkCmdResolveImage-srcImageLayout-parameter~^~core~^~The spec valid usage text states 'srcImageLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-srcImageLayout-parameter)~^~implicit -VALIDATION_ERROR_1ca004c8~^~Y~^~Unknown~^~vkCmdSetBlendConstants~^~VUID-vkCmdSetBlendConstants-None-00612~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_BLEND_CONSTANTS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-None-00612)~^~ +VALIDATION_ERROR_1ca004c8~^~Y~^~Unknown~^~vkCmdSetBlendConstants~^~VUID-vkCmdSetBlendConstants-None-00612~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_BLEND_CONSTANTS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-None-00612)~^~ VALIDATION_ERROR_1ca02401~^~Y~^~None~^~vkCmdSetBlendConstants~^~VUID-vkCmdSetBlendConstants-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1ca02413~^~Y~^~None~^~vkCmdSetBlendConstants~^~VUID-vkCmdSetBlendConstants-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1ca02415~^~Y~^~Unknown~^~vkCmdSetBlendConstants~^~VUID-vkCmdSetBlendConstants-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-cmdpool)~^~implicit -VALIDATION_ERROR_1cc0062a~^~Y~^~Unknown~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-None-00789~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BIAS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-None-00789)~^~ +VALIDATION_ERROR_1cc0062a~^~Y~^~Unknown~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-None-00789~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BIAS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-None-00789)~^~ VALIDATION_ERROR_1cc0062c~^~Y~^~None~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-depthBiasClamp-00790~^~core~^~The spec valid usage text states 'If the depth bias clamping feature is not enabled, depthBiasClamp must be 0.0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-depthBiasClamp-00790)~^~ VALIDATION_ERROR_1cc02401~^~Y~^~None~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1cc02413~^~Y~^~None~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1cc02415~^~Y~^~Unknown~^~vkCmdSetDepthBias~^~VUID-vkCmdSetDepthBias-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-cmdpool)~^~implicit -VALIDATION_ERROR_1ce004ae~^~Y~^~Unknown~^~vkCmdSetDepthBounds~^~VUID-vkCmdSetDepthBounds-None-00599~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BOUNDS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-None-00599)~^~ +VALIDATION_ERROR_1ce004ae~^~Y~^~Unknown~^~vkCmdSetDepthBounds~^~VUID-vkCmdSetDepthBounds-None-00599~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BOUNDS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-None-00599)~^~ VALIDATION_ERROR_1ce004b0~^~N~^~Unknown~^~vkCmdSetDepthBounds~^~VUID-vkCmdSetDepthBounds-minDepthBounds-00600~^~(VK_EXT_depth_range_unrestricted)~^~The spec valid usage text states 'Unless the VK_EXT_depth_range_unrestricted extension is enabled minDepthBounds must be between 0.0 and 1.0, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDepthBounds-minDepthBounds-00600)~^~ VALIDATION_ERROR_1ce004b2~^~N~^~Unknown~^~vkCmdSetDepthBounds~^~VUID-vkCmdSetDepthBounds-maxDepthBounds-00601~^~(VK_EXT_depth_range_unrestricted)~^~The spec valid usage text states 'Unless the VK_EXT_depth_range_unrestricted extension is enabled maxDepthBounds must be between 0.0 and 1.0, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDepthBounds-maxDepthBounds-00601)~^~ VALIDATION_ERROR_1ce02401~^~Y~^~None~^~vkCmdSetDepthBounds~^~VUID-vkCmdSetDepthBounds-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-commandBuffer-parameter)~^~implicit @@ -2486,7 +2499,7 @@ VALIDATION_ERROR_1d0000de~^~N~^~Unknown~^~vkCmdSetDeviceMask~^~VUID-vkCmdSetDevi VALIDATION_ERROR_1d002401~^~Y~^~Unknown~^~vkCmdSetDeviceMask~^~VUID-vkCmdSetDeviceMask-commandBuffer-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1d002413~^~N~^~Unknown~^~vkCmdSetDeviceMask~^~VUID-vkCmdSetDeviceMask-commandBuffer-recording~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1d002415~^~N~^~Unknown~^~vkCmdSetDeviceMask~^~VUID-vkCmdSetDeviceMask-commandBuffer-cmdpool~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, compute, or transfer operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-cmdpool)~^~implicit -VALIDATION_ERROR_1d20048e~^~N~^~Unknown~^~vkCmdSetDiscardRectangleEXT~^~VUID-vkCmdSetDiscardRectangleEXT-None-00583~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-None-00583)~^~ +VALIDATION_ERROR_1d20048e~^~N~^~Unknown~^~vkCmdSetDiscardRectangleEXT~^~VUID-vkCmdSetDiscardRectangleEXT-None-00583~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-None-00583)~^~ VALIDATION_ERROR_1d200492~^~N~^~Unknown~^~vkCmdSetDiscardRectangleEXT~^~VUID-vkCmdSetDiscardRectangleEXT-firstDiscardRectangle-00585~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'The sum of firstDiscardRectangle and discardRectangleCount must be less than or equal to VkPhysicalDeviceDiscardRectanglePropertiesEXT::maxDiscardRectangles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-firstDiscardRectangle-00585)~^~ VALIDATION_ERROR_1d200496~^~N~^~Unknown~^~vkCmdSetDiscardRectangleEXT~^~VUID-vkCmdSetDiscardRectangleEXT-x-00587~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'The x and y member of offset in each VkRect2D element of pDiscardRectangles must be greater than or equal to 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-x-00587)~^~ VALIDATION_ERROR_1d200498~^~N~^~Unknown~^~vkCmdSetDiscardRectangleEXT~^~VUID-vkCmdSetDiscardRectangleEXT-offset-00588~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'Evaluation of (offset.x + extent.width) in each VkRect2D element of pDiscardRectangles must not cause a signed integer addition overflow' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-offset-00588)~^~ @@ -2508,12 +2521,12 @@ VALIDATION_ERROR_1d402415~^~Y~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-com VALIDATION_ERROR_1d407e01~^~Y~^~None~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-event-parameter~^~core~^~The spec valid usage text states 'event must be a valid VkEvent handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-event-parameter)~^~implicit VALIDATION_ERROR_1d42de01~^~N~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-stageMask-parameter~^~core~^~The spec valid usage text states 'stageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-parameter)~^~implicit VALIDATION_ERROR_1d42de03~^~Y~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-stageMask-requiredbitmask~^~core~^~The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-requiredbitmask)~^~implicit -VALIDATION_ERROR_1d600626~^~Y~^~Unknown~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-None-00787~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_LINE_WIDTH dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-None-00787)~^~ +VALIDATION_ERROR_1d600626~^~Y~^~Unknown~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-None-00787~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_LINE_WIDTH dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-None-00787)~^~ VALIDATION_ERROR_1d600628~^~Y~^~PSOLineWidthInvalid~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-lineWidth-00788~^~core~^~The spec valid usage text states 'If the wide lines feature is not enabled, lineWidth must be 1.0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-lineWidth-00788)~^~ VALIDATION_ERROR_1d602401~^~Y~^~None~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1d602413~^~Y~^~None~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1d602415~^~Y~^~Unknown~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-cmdpool)~^~implicit -VALIDATION_ERROR_1d80049c~^~Y~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-None-00590~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-None-00590)~^~ +VALIDATION_ERROR_1d80049c~^~Y~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-None-00590~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-None-00590)~^~ VALIDATION_ERROR_1d80049e~^~N~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-firstScissor-00591~^~core~^~The spec valid usage text states 'firstScissor must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00591)~^~ VALIDATION_ERROR_1d8004a0~^~Y~^~SetDynScissorParamMultiviewportTests~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-firstScissor-00592~^~core~^~The spec valid usage text states 'The sum of firstScissor and scissorCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00592)~^~ VALIDATION_ERROR_1d8004a2~^~Y~^~SetDynScissorParamTests~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-firstScissor-00593~^~core~^~The spec valid usage text states 'If the multiple viewports feature is not enabled, firstScissor must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00593)~^~ @@ -2526,25 +2539,25 @@ VALIDATION_ERROR_1d802413~^~Y~^~None~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-co VALIDATION_ERROR_1d802415~^~Y~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1d822601~^~Y~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-pScissors-parameter~^~core~^~The spec valid usage text states 'pScissors must be a valid pointer to an array of scissorCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-pScissors-parameter)~^~implicit VALIDATION_ERROR_1d82b61b~^~Y~^~Unknown~^~vkCmdSetScissor~^~VUID-vkCmdSetScissor-scissorCount-arraylength~^~core~^~The spec valid usage text states 'scissorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-scissorCount-arraylength)~^~implicit -VALIDATION_ERROR_1da004b4~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-None-00602~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-None-00602)~^~ +VALIDATION_ERROR_1da004b4~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-None-00602~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-None-00602)~^~ VALIDATION_ERROR_1da02401~^~Y~^~None~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1da02413~^~Y~^~None~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1da02415~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1da08401~^~N~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-parameter)~^~implicit VALIDATION_ERROR_1da08403~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask)~^~implicit -VALIDATION_ERROR_1dc004b8~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-None-00604~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_REFERENCE dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-None-00604)~^~ +VALIDATION_ERROR_1dc004b8~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-None-00604~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_REFERENCE dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-None-00604)~^~ VALIDATION_ERROR_1dc02401~^~Y~^~None~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1dc02413~^~Y~^~None~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1dc02415~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1dc08401~^~N~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-parameter)~^~implicit VALIDATION_ERROR_1dc08403~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-requiredbitmask)~^~implicit -VALIDATION_ERROR_1de004b6~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-None-00603~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_WRITE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-None-00603)~^~ +VALIDATION_ERROR_1de004b6~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-None-00603~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_WRITE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-None-00603)~^~ VALIDATION_ERROR_1de02401~^~Y~^~None~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1de02413~^~Y~^~None~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1de02415~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1de08401~^~N~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-parameter)~^~implicit VALIDATION_ERROR_1de08403~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask)~^~implicit -VALIDATION_ERROR_1e00098a~^~Y~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-None-01221~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-None-01221)~^~ +VALIDATION_ERROR_1e00098a~^~Y~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-None-01221~^~core~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-None-01221)~^~ VALIDATION_ERROR_1e00098c~^~N~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-firstViewport-01222~^~core~^~The spec valid usage text states 'firstViewport must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01222)~^~redundant VU VALIDATION_ERROR_1e00098e~^~Y~^~SetDynViewportParamMultiviewportTests~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-firstViewport-01223~^~core~^~The spec valid usage text states 'The sum of firstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01223)~^~ VALIDATION_ERROR_1e000990~^~Y~^~SetDynViewportParamTests~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-firstViewport-01224~^~core~^~The spec valid usage text states 'If the multiple viewports feature is not enabled, firstViewport must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01224)~^~ @@ -2554,7 +2567,7 @@ VALIDATION_ERROR_1e002413~^~Y~^~None~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport- VALIDATION_ERROR_1e002415~^~Y~^~CommandQueueFlags~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1e030a1b~^~Y~^~SetDynViewportParamTests~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-viewportCount-arraylength~^~core~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-viewportCount-arraylength)~^~implicit VALIDATION_ERROR_1e03fa01~^~Y~^~SetDynViewportParamTests~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-pViewports-parameter~^~core~^~The spec valid usage text states 'pViewports must be a valid pointer to an array of viewportCount VkViewport structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-pViewports-parameter)~^~implicit -VALIDATION_ERROR_1e200a54~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-vkCmdSetViewportWScalingNV-None-01322~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-None-01322)~^~ +VALIDATION_ERROR_1e200a54~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-vkCmdSetViewportWScalingNV-None-01322~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-None-01322)~^~ VALIDATION_ERROR_1e200a56~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-vkCmdSetViewportWScalingNV-firstViewport-01323~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'firstViewport must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-firstViewport-01323)~^~ VALIDATION_ERROR_1e200a58~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-vkCmdSetViewportWScalingNV-firstViewport-01324~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'The sum of firstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-firstViewport-01324)~^~ VALIDATION_ERROR_1e202401~^~Y~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-vkCmdSetViewportWScalingNV-commandBuffer-parameter~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-commandBuffer-parameter)~^~implicit @@ -2972,7 +2985,7 @@ VALIDATION_ERROR_27400076~^~Y~^~None~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuf VALIDATION_ERROR_27400078~^~Y~^~Unknown~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-00060~^~core~^~The spec valid usage text states 'If commandBuffer is a primary command buffer, there must not be an active render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00060)~^~ VALIDATION_ERROR_2740007a~^~Y~^~Unknown~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-00061~^~core~^~The spec valid usage text states 'All queries made active during the recording of commandBuffer must have been made inactive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00061)~^~ VALIDATION_ERROR_2740007c~^~N~^~Unknown~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-00062~^~(VK_EXT_debug_marker)~^~The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdDebugMarkerBeginEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdDebugMarkerEndEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00062)~^~ -VALIDATION_ERROR_27400e2e~^~N~^~None~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-01815~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdBeginUtilsLabelEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdEndDebugUtilsLabelEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-01815)~^~ +VALIDATION_ERROR_27400e2e~^~N~^~None~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-01815~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdBeginDebugUtilsLabelEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdEndDebugUtilsLabelEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-01815)~^~ VALIDATION_ERROR_27402401~^~Y~^~None~^~vkEndCommandBuffer~^~VUID-vkEndCommandBuffer-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_27619e01~^~N~^~Unknown~^~vkEnumerateDeviceExtensionProperties~^~VUID-vkEnumerateDeviceExtensionProperties-pLayerName-parameter~^~core~^~The spec valid usage text states 'If pLayerName is not NULL, pLayerName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEnumerateDeviceExtensionProperties-pLayerName-parameter)~^~implicit VALIDATION_ERROR_2761f401~^~Y~^~Unknown~^~vkEnumerateDeviceExtensionProperties~^~VUID-vkEnumerateDeviceExtensionProperties-pProperties-parameter~^~core~^~The spec valid usage text states 'If the value referenced by pPropertyCount is not 0, and pProperties is not NULL, pProperties must be a valid pointer to an array of pPropertyCount VkExtensionProperties structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEnumerateDeviceExtensionProperties-pProperties-parameter)~^~implicit @@ -3062,6 +3075,7 @@ VALIDATION_ERROR_29e07e07~^~Y~^~Unknown~^~vkGetEventStatus~^~VUID-vkGetEventStat VALIDATION_ERROR_2a005601~^~Y~^~None~^~vkGetFenceStatus~^~VUID-vkGetFenceStatus-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-device-parameter)~^~implicit VALIDATION_ERROR_2a008801~^~Y~^~None~^~vkGetFenceStatus~^~VUID-vkGetFenceStatus-fence-parameter~^~core~^~The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-fence-parameter)~^~implicit VALIDATION_ERROR_2a008807~^~Y~^~Unknown~^~vkGetFenceStatus~^~VUID-vkGetFenceStatus-fence-parent~^~core~^~The spec valid usage text states 'fence must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-fence-parent)~^~implicit +VALIDATION_ERROR_2a200c68~^~N~^~None~^~vkGetImageMemoryRequirements~^~VUID-vkGetImageMemoryRequirements-image-01588~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'image must not have been created with the VK_IMAGE_CREATE_DISJOINT_BIT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-01588)~^~ VALIDATION_ERROR_2a205601~^~Y~^~None~^~vkGetImageMemoryRequirements~^~VUID-vkGetImageMemoryRequirements-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-device-parameter)~^~implicit VALIDATION_ERROR_2a20a001~^~Y~^~CreateUnknownObject~^~vkGetImageMemoryRequirements~^~VUID-vkGetImageMemoryRequirements-image-parameter~^~core~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-parameter)~^~implicit VALIDATION_ERROR_2a20a007~^~Y~^~Unknown~^~vkGetImageMemoryRequirements~^~VUID-vkGetImageMemoryRequirements-image-parent~^~core~^~The spec valid usage text states 'image must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-parent)~^~implicit @@ -3155,6 +3169,7 @@ VALIDATION_ERROR_2ca2fa01~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperti VALIDATION_ERROR_2ca30401~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-type-parameter~^~core~^~The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-type-parameter)~^~implicit VALIDATION_ERROR_2ca30601~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-usage-parameter~^~core~^~The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-usage-parameter)~^~implicit VALIDATION_ERROR_2ca30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask)~^~implicit +VALIDATION_ERROR_2cc00e98~^~N~^~None~^~vkGetPhysicalDeviceImageFormatProperties2~^~VUID-vkGetPhysicalDeviceImageFormatProperties2-pNext-01868~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If the pNext chain of pImageFormatProperties contains an instance of VkAndroidHardwareBufferUsageANDROID, the pNext chain of pImageFormatInfo must contain an instance of VkPhysicalDeviceExternalImageFormatInfo with handleType set to VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pNext-01868)~^~ VALIDATION_ERROR_2cc18201~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2~^~VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatInfo-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pImageFormatInfo must be a valid pointer to a valid VkPhysicalDeviceImageFormatInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatInfo-parameter)~^~implicit VALIDATION_ERROR_2cc18401~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2~^~VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatProperties-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pImageFormatProperties must be a valid pointer to a VkImageFormatProperties2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatProperties-parameter)~^~implicit VALIDATION_ERROR_2cc27a01~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2~^~VUID-vkGetPhysicalDeviceImageFormatProperties2-physicalDevice-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-physicalDevice-parameter)~^~implicit @@ -3415,7 +3430,8 @@ VALIDATION_ERROR_33a04801~^~Y~^~Unknown~^~vkUpdateDescriptorSetWithTemplate~^~VU VALIDATION_ERROR_33a05201~^~Y~^~Unknown~^~vkUpdateDescriptorSetWithTemplate~^~VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parameter~^~(VK_VERSION_1_1,VK_KHR_descriptor_update_template)~^~The spec valid usage text states 'descriptorUpdateTemplate must be a valid VkDescriptorUpdateTemplate handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parameter)~^~implicit VALIDATION_ERROR_33a05207~^~Y~^~Unknown~^~vkUpdateDescriptorSetWithTemplate~^~VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parent~^~(VK_VERSION_1_1,VK_KHR_descriptor_update_template)~^~The spec valid usage text states 'descriptorUpdateTemplate must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parent)~^~implicit VALIDATION_ERROR_33a05601~^~Y~^~Unknown~^~vkUpdateDescriptorSetWithTemplate~^~VUID-vkUpdateDescriptorSetWithTemplate-device-parameter~^~(VK_VERSION_1_1,VK_KHR_descriptor_update_template)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSetWithTemplate-device-parameter)~^~implicit -VALIDATION_ERROR_33c00274~^~N~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-dstSet-00314~^~core~^~The spec valid usage text states 'The dstSet member of each element of pDescriptorWrites or pDescriptorCopies must not be used by any command that was recorded to a command buffer which is in the pending state.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-dstSet-00314)~^~ +VALIDATION_ERROR_33c00274~^~N~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-dstSet-00314~^~!(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'The dstSet member of each element of pDescriptorWrites or pDescriptorCopies must not be used by any command that was recorded to a command buffer which is in the pending state.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-dstSet-00314)~^~ +VALIDATION_ERROR_33c017ce~^~N~^~None~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-None-03047~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'Descriptor bindings updated by this command which were created without the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT or VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT bits set must not be used by any command that was recorded to a command buffer which is in the pending state.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSets-None-03047)~^~ VALIDATION_ERROR_33c05601~^~Y~^~None~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-device-parameter)~^~implicit VALIDATION_ERROR_33c12c01~^~Y~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-pDescriptorCopies-parameter~^~core~^~The spec valid usage text states 'If descriptorCopyCount is not 0, pDescriptorCopies must be a valid pointer to an array of descriptorCopyCount valid VkCopyDescriptorSet structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-pDescriptorCopies-parameter)~^~implicit VALIDATION_ERROR_33c13601~^~Y~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-vkUpdateDescriptorSets-pDescriptorWrites-parameter~^~core~^~The spec valid usage text states 'If descriptorWriteCount is not 0, pDescriptorWrites must be a valid pointer to an array of descriptorWriteCount valid VkWriteDescriptorSet structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-pDescriptorWrites-parameter)~^~implicit @@ -3423,7 +3439,7 @@ VALIDATION_ERROR_33e05601~^~Y~^~None~^~vkWaitForFences~^~VUID-vkWaitForFences-de VALIDATION_ERROR_33e08a1b~^~N~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-fenceCount-arraylength~^~core~^~The spec valid usage text states 'fenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-fenceCount-arraylength)~^~implicit VALIDATION_ERROR_33e17201~^~Y~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parameter~^~core~^~The spec valid usage text states 'pFences must be a valid pointer to an array of fenceCount valid VkFence handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parameter)~^~implicit VALIDATION_ERROR_33e17207~^~Y~^~None~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parent~^~core~^~The spec valid usage text states 'Each element of pFences must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parent)~^~implicit -VALIDATION_ERROR_3401c40d~^~N~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)~^~implicit +VALIDATION_ERROR_3401c40d~^~N~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceShaderCorePropertiesAMD, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)~^~implicit VALIDATION_ERROR_3402b00b~^~Y~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-sType)~^~implicit VALIDATION_ERROR_3402b00f~^~N~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-sType-unique~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-unique)~^~implicit VALIDATION_ERROR_3421c40d~^~N~^~None~^~VkFormatProperties2~^~VUID-VkFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFormatProperties2-pNext-pNext)~^~implicit @@ -3447,40 +3463,31 @@ VALIDATION_ERROR_3561c40d~^~N~^~None~^~VkSparseImageFormatProperties2~^~VUID-VkS VALIDATION_ERROR_3562b00b~^~N~^~None~^~VkSparseImageFormatProperties2~^~VUID-VkSparseImageFormatProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageFormatProperties2-sType-sType)~^~implicit VALIDATION_ERROR_3581c40d~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-pNext-pNext)~^~implicit VALIDATION_ERROR_3582b00b~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-sType-sType)~^~implicit -VALIDATION_ERROR_35c1c40d~^~N~^~None~^~VkPhysicalDeviceMultiviewProperties~^~VUID-VkPhysicalDeviceMultiviewProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_35c2b00b~^~N~^~None~^~VkPhysicalDeviceMultiviewProperties~^~VUID-VkPhysicalDeviceMultiviewProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewProperties-sType-sType)~^~implicit -VALIDATION_ERROR_3601c40d~^~N~^~None~^~VkExternalImageFormatProperties~^~VUID-VkExternalImageFormatProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalImageFormatProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_3602b00b~^~N~^~None~^~VkExternalImageFormatProperties~^~VUID-VkExternalImageFormatProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalImageFormatProperties-sType-sType)~^~implicit -VALIDATION_ERROR_3621c40d~^~N~^~None~^~VkPhysicalDeviceIDProperties~^~VUID-VkPhysicalDeviceIDProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities,VK_KHR_external_semaphore_capabilities,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceIDProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_3622b00b~^~N~^~None~^~VkPhysicalDeviceIDProperties~^~VUID-VkPhysicalDeviceIDProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities,VK_KHR_external_semaphore_capabilities,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceIDProperties-sType-sType)~^~implicit VALIDATION_ERROR_3642b00b~^~N~^~None~^~VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX~^~VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType~^~(VK_NVX_multiview_per_view_attributes)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType)~^~implicit VALIDATION_ERROR_37e2b00b~^~N~^~None~^~VkSharedPresentSurfaceCapabilitiesKHR~^~VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)+(VK_KHR_shared_presentable_image)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType)~^~implicit VALIDATION_ERROR_3822b00b~^~N~^~None~^~VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT~^~VUID-VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT-sType-sType~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT-sType-sType)~^~implicit VALIDATION_ERROR_3842b00b~^~N~^~None~^~VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT~^~VUID-VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT-sType-sType~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT-sType-sType)~^~implicit -VALIDATION_ERROR_3861c40d~^~N~^~None~^~VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT~^~VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-pNext-pNext~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3862b00b~^~N~^~None~^~VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT~^~VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-sType-sType~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-sType-sType)~^~implicit VALIDATION_ERROR_38800b20~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-srcPremultiplied-01424~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If the non-premultiplied source color property is not supported, srcPremultiplied must be VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-srcPremultiplied-01424)~^~ VALIDATION_ERROR_38800b22~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If the non-premultiplied destination color property is not supported, dstPremultiplied must be VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425)~^~ VALIDATION_ERROR_38800b24~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If the correlated overlap property is not supported, blendOverlap must be VK_BLEND_OVERLAP_UNCORRELATED_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426)~^~ -VALIDATION_ERROR_3881c40d~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-pNext-pNext~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3882b00b~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_38834a01~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'blendOverlap must be a valid VkBlendOverlapEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter)~^~implicit VALIDATION_ERROR_38a00afa~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'If coverageModulationTableEnable is VK_TRUE, coverageModulationTableCount must be equal to the number of rasterization samples divided by the number of color samples in the subpass.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405)~^~ VALIDATION_ERROR_38a09005~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask)~^~implicit -VALIDATION_ERROR_38a1c40d~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-pNext-pNext~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-pNext-pNext)~^~implicit VALIDATION_ERROR_38a2b00b~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType)~^~implicit VALIDATION_ERROR_38a34c01~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'coverageModulationMode must be a valid VkCoverageModulationModeNV value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter)~^~implicit VALIDATION_ERROR_38a34e1b~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'coverageModulationTableCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength)~^~implicit VALIDATION_ERROR_38c00af8~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'If coverageToColorEnable is VK_TRUE, then the render pass subpass indicated by VkGraphicsPipelineCreateInfo::renderPass and VkGraphicsPipelineCreateInfo::subpass must have a color attachment at the location selected by coverageToColorLocation, with a VkFormat of VK_FORMAT_R8_UINT, VK_FORMAT_R8_SINT, VK_FORMAT_R16_UINT, VK_FORMAT_R16_SINT, VK_FORMAT_R32_UINT, or VK_FORMAT_R32_SINT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404)~^~ VALIDATION_ERROR_38c09005~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask)~^~implicit -VALIDATION_ERROR_38c1c40d~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-pNext-pNext~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-pNext-pNext)~^~implicit VALIDATION_ERROR_38c2b00b~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType)~^~implicit -VALIDATION_ERROR_38e1c40d~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_38e2b00b~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_38e35001~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)~^~implicit VALIDATION_ERROR_39400b4c~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-handleTypes-01446~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalFenceProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-01446)~^~ VALIDATION_ERROR_39409e01~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-parameter)~^~implicit -VALIDATION_ERROR_3941c40d~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_3942b00b~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_39609c01~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfo~^~VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter)~^~implicit VALIDATION_ERROR_3961c40d~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfo~^~VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext)~^~implicit @@ -3525,7 +3532,6 @@ VALIDATION_ERROR_3a41c40d~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-Vk VALIDATION_ERROR_3a42b00b~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_3a600b4e~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'If VkExportFenceCreateInfo::handleTypes does not include VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT, VkExportFenceWin32HandleInfoKHR must not be in the pNext chain of VkFenceCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447)~^~ VALIDATION_ERROR_3a60f401~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter)~^~implicit -VALIDATION_ERROR_3a61c40d~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_3a62b00b~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_3a800b50~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfo::handleTypes when the fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448)~^~ VALIDATION_ERROR_3a800b52~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449~^~(VK_KHR_external_fence_win32)~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetFenceWin32HandleKHR must be called no more than once for each valid unique combination of fence and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449)~^~ @@ -3573,7 +3579,6 @@ VALIDATION_ERROR_3b409c01~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMe VALIDATION_ERROR_3b40c601~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter)~^~implicit VALIDATION_ERROR_3b41c40d~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_3b42b00b~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType)~^~implicit -VALIDATION_ERROR_3b61c40d~^~N~^~None~^~VkMemoryDedicatedRequirements~^~VUID-VkMemoryDedicatedRequirements-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedRequirements-pNext-pNext)~^~implicit VALIDATION_ERROR_3b62b00b~^~N~^~None~^~VkMemoryDedicatedRequirements~^~VUID-VkMemoryDedicatedRequirements-sType-sType~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedRequirements-sType-sType)~^~implicit VALIDATION_ERROR_3b800009~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-commonparent~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'Both of buffer, and image that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-commonparent)~^~implicit VALIDATION_ERROR_3b800b30~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-image-01432~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'At least one of image and buffer must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01432)~^~ @@ -3582,13 +3587,12 @@ VALIDATION_ERROR_3b800b34~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMe VALIDATION_ERROR_3b800b36~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-buffer-01435~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01435)~^~ VALIDATION_ERROR_3b800b38~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-buffer-01436~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must have been created without VK_BUFFER_CREATE_SPARSE_BINDING_BIT set in VkBufferCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01436)~^~ VALIDATION_ERROR_3b800e0a~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-image-01797~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must not have been created with VK_IMAGE_CREATE_DISJOINT_BIT set in VkImageCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01797)~^~ -VALIDATION_ERROR_3b800ea8~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01876~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01876)~^~ -VALIDATION_ERROR_3b800eaa~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01877~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01877)~^~ -VALIDATION_ERROR_3b800eac~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01878~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01878)~^~ -VALIDATION_ERROR_3b800eae~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01879~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01879)~^~ +VALIDATION_ERROR_3b800ea8~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-image-01876~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01876)~^~ +VALIDATION_ERROR_3b800eaa~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-buffer-01877~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01877)~^~ +VALIDATION_ERROR_3b800eac~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-image-01878~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01878)~^~ +VALIDATION_ERROR_3b800eae~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-buffer-01879~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01879)~^~ VALIDATION_ERROR_3b801a01~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-buffer-parameter~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-parameter)~^~implicit VALIDATION_ERROR_3b80a001~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-image-parameter~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-parameter)~^~implicit -VALIDATION_ERROR_3b81c40d~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_3b82b00b~^~N~^~None~^~VkMemoryDedicatedAllocateInfo~^~VUID-VkMemoryDedicatedAllocateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-sType-sType)~^~implicit VALIDATION_ERROR_3ba01a01~^~Y~^~None~^~VkBufferMemoryRequirementsInfo2~^~VUID-VkBufferMemoryRequirementsInfo2-buffer-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2-buffer-parameter)~^~implicit VALIDATION_ERROR_3ba1c40d~^~Y~^~None~^~VkBufferMemoryRequirementsInfo2~^~VUID-VkBufferMemoryRequirementsInfo2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2-pNext-pNext)~^~implicit @@ -3596,7 +3600,7 @@ VALIDATION_ERROR_3ba2b00b~^~Y~^~None~^~VkBufferMemoryRequirementsInfo2~^~VUID-Vk VALIDATION_ERROR_3bc00c6a~^~N~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-image-01589~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If image was created with a multi-planar format and the VK_IMAGE_CREATE_DISJOINT_BIT flag, there must be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01589)~^~ VALIDATION_ERROR_3bc00c6c~^~N~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-image-01590~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If image was not created with the VK_IMAGE_CREATE_DISJOINT_BIT flag, there must not be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01590)~^~ VALIDATION_ERROR_3bc00c6e~^~N~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-image-01591~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If image was created with a single-plane format, there must not be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01591)~^~ -VALIDATION_ERROR_3bc00ed2~^~N~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2KHR-image-01897~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If image was created with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID external memory handle type, then image must be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-image-01897)~^~ +VALIDATION_ERROR_3bc00ed2~^~N~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-image-01897~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If image was created with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID external memory handle type, then image must be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01897)~^~ VALIDATION_ERROR_3bc0a001~^~Y~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-image-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-parameter)~^~implicit VALIDATION_ERROR_3bc1c40d~^~Y~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkImagePlaneMemoryRequirementsInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-pNext-pNext)~^~implicit VALIDATION_ERROR_3bc2b00b~^~Y~^~None~^~VkImageMemoryRequirementsInfo2~^~VUID-VkImageMemoryRequirementsInfo2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-sType-sType)~^~implicit @@ -3619,23 +3623,18 @@ VALIDATION_ERROR_3c823801~^~Y~^~None~^~vkGetImageSparseMemoryRequirements2~^~VUI VALIDATION_ERROR_3c839c01~^~N~^~None~^~vkGetImageSparseMemoryRequirements2~^~VUID-vkGetImageSparseMemoryRequirements2-pInfo-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pInfo must be a valid pointer to a valid VkImageSparseMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageSparseMemoryRequirements2-pInfo-parameter)~^~implicit VALIDATION_ERROR_3ca2b00b~^~N~^~None~^~VkPhysicalDevice16BitStorageFeatures~^~VUID-VkPhysicalDevice16BitStorageFeatures-sType-sType~^~(VK_VERSION_1_1,VK_KHR_16bit_storage)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevice16BitStorageFeatures-sType-sType)~^~implicit VALIDATION_ERROR_3cc00b2e~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeatures~^~VUID-VkPhysicalDeviceVariablePointerFeatures-variablePointers-01431~^~(VK_VERSION_1_1,VK_KHR_variable_pointers)~^~The spec valid usage text states 'If variablePointers is enabled then variablePointersStorageBuffer must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-variablePointers-01431)~^~ -VALIDATION_ERROR_3cc1c40d~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeatures~^~VUID-VkPhysicalDeviceVariablePointerFeatures-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_variable_pointers)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-pNext-pNext)~^~implicit VALIDATION_ERROR_3cc2b00b~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeatures~^~VUID-VkPhysicalDeviceVariablePointerFeatures-sType-sType~^~(VK_VERSION_1_1,VK_KHR_variable_pointers)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-sType-sType)~^~implicit VALIDATION_ERROR_3ce00bec~^~N~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-01526~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsPerPixel must be a bit value that is set in VkPhysicalDeviceSampleLocationsPropertiesEXT::sampleLocationSampleCounts' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-01526)~^~ VALIDATION_ERROR_3ce00bee~^~N~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-01527~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsCount must equal sampleLocationsPerPixel {times} sampleLocationGridSize.width {times} sampleLocationGridSize.height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-01527)~^~ -VALIDATION_ERROR_3ce1c40d~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3ce2b00b~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_3ce3b201~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsPerPixel must be a valid VkSampleCountFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-parameter)~^~implicit VALIDATION_ERROR_3ce3b41b~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength)~^~implicit VALIDATION_ERROR_3ce3b601~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pSampleLocations must be a valid pointer to an array of sampleLocationsCount VkSampleLocationEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter)~^~implicit -VALIDATION_ERROR_3d01c40d~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3d02b00b~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_3d03ba01~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If attachmentInitialSampleLocationsCount is not 0, pAttachmentInitialSampleLocations must be a valid pointer to an array of attachmentInitialSampleLocationsCount valid VkAttachmentSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter)~^~implicit VALIDATION_ERROR_3d03e801~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If postSubpassSampleLocationsCount is not 0, pPostSubpassSampleLocations must be a valid pointer to an array of postSubpassSampleLocationsCount valid VkSubpassSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter)~^~implicit -VALIDATION_ERROR_3d21c40d~^~N~^~None~^~VkPipelineSampleLocationsStateCreateInfoEXT~^~VUID-VkPipelineSampleLocationsStateCreateInfoEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3d22b00b~^~N~^~None~^~VkPipelineSampleLocationsStateCreateInfoEXT~^~VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_3d23c601~^~N~^~None~^~VkPipelineSampleLocationsStateCreateInfoEXT~^~VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter)~^~implicit -VALIDATION_ERROR_3d41c40d~^~N~^~None~^~VkPhysicalDeviceSampleLocationsPropertiesEXT~^~VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3d42b00b~^~N~^~None~^~VkPhysicalDeviceSampleLocationsPropertiesEXT~^~VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType)~^~implicit VALIDATION_ERROR_3d61c40d~^~N~^~None~^~VkMultisamplePropertiesEXT~^~VUID-VkMultisamplePropertiesEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3d62b00b~^~Y~^~None~^~VkMultisamplePropertiesEXT~^~VUID-VkMultisamplePropertiesEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-sType-sType)~^~implicit @@ -3648,7 +3647,6 @@ VALIDATION_ERROR_3da09005~^~Y~^~None~^~VkValidationCacheCreateInfoEXT~^~VUID-VkV VALIDATION_ERROR_3da19601~^~Y~^~None~^~VkValidationCacheCreateInfoEXT~^~VUID-VkValidationCacheCreateInfoEXT-pInitialData-parameter~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'If initialDataSize is not 0, pInitialData must be a valid pointer to an array of initialDataSize bytes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-pInitialData-parameter)~^~implicit VALIDATION_ERROR_3da1c40d~^~Y~^~None~^~VkValidationCacheCreateInfoEXT~^~VUID-VkValidationCacheCreateInfoEXT-pNext-pNext~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3da2b00b~^~Y~^~None~^~VkValidationCacheCreateInfoEXT~^~VUID-VkValidationCacheCreateInfoEXT-sType-sType~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-sType-sType)~^~implicit -VALIDATION_ERROR_3dc1c40d~^~N~^~None~^~VkShaderModuleValidationCacheCreateInfoEXT~^~VUID-VkShaderModuleValidationCacheCreateInfoEXT-pNext-pNext~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_3dc2b00b~^~N~^~None~^~VkShaderModuleValidationCacheCreateInfoEXT~^~VUID-VkShaderModuleValidationCacheCreateInfoEXT-sType-sType~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_3dc3c401~^~N~^~None~^~VkShaderModuleValidationCacheCreateInfoEXT~^~VUID-VkShaderModuleValidationCacheCreateInfoEXT-validationCache-parameter~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'validationCache must be a valid VkValidationCacheEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-validationCache-parameter)~^~implicit VALIDATION_ERROR_3de05601~^~Y~^~None~^~vkCreateValidationCacheEXT~^~VUID-vkCreateValidationCacheEXT-device-parameter~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateValidationCacheEXT-device-parameter)~^~implicit @@ -3660,8 +3658,8 @@ VALIDATION_ERROR_3e012201~^~Y~^~None~^~vkGetValidationCacheDataEXT~^~VUID-vkGetV VALIDATION_ERROR_3e012401~^~N~^~None~^~vkGetValidationCacheDataEXT~^~VUID-vkGetValidationCacheDataEXT-pDataSize-parameter~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'pDataSize must be a valid pointer to a size_t value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-pDataSize-parameter)~^~implicit VALIDATION_ERROR_3e03c401~^~Y~^~None~^~vkGetValidationCacheDataEXT~^~VUID-vkGetValidationCacheDataEXT-validationCache-parameter~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'validationCache must be a valid VkValidationCacheEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-validationCache-parameter)~^~implicit VALIDATION_ERROR_3e03c407~^~Y~^~None~^~vkGetValidationCacheDataEXT~^~VUID-vkGetValidationCacheDataEXT-validationCache-parent~^~(VK_EXT_validation_cache)~^~The spec valid usage text states 'validationCache must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-validationCache-parent)~^~implicit -VALIDATION_ERROR_3e200bf0~^~N~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-None-01528~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-None-01528)~^~ -VALIDATION_ERROR_3e200bf2~^~N~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'The sampleLocationsPerPixel member of pSampleLocationsInfo must equal the rasterizationSamples member of the VkPipelineMultisampleStateCreateInfo structure the currently bound graphics pipeline has been created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529)~^~ +VALIDATION_ERROR_3e200bf0~^~N~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-None-01528~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-None-01528)~^~ +VALIDATION_ERROR_3e200bf2~^~N~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'The sampleLocationsPerPixel member of pSampleLocationsInfo must equal the rasterizationSamples member of the VkPipelineMultisampleStateCreateInfo structure the bound graphics pipeline has been created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529)~^~ VALIDATION_ERROR_3e200bf4~^~N~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-variableSampleLocations-01530~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations is VK_FALSE then the current render pass must have been begun by specifying a VkRenderPassSampleLocationsBeginInfoEXT structure whose pPostSubpassSampleLocations member contains an element with a subpassIndex matching the current subpass index and the sampleLocationsInfo member of that element must match the sample locations state pointed to by pSampleLocationsInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-variableSampleLocations-01530)~^~ VALIDATION_ERROR_3e202401~^~Y~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-commandBuffer-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_3e202413~^~Y~^~None~^~vkCmdSetSampleLocationsEXT~^~VUID-vkCmdSetSampleLocationsEXT-commandBuffer-recording~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-commandBuffer-recording)~^~implicit @@ -3684,29 +3682,24 @@ VALIDATION_ERROR_3e800bf6~^~N~^~None~^~VkAttachmentSampleLocationsEXT~^~VUID-VkA VALIDATION_ERROR_3e83c601~^~N~^~None~^~VkAttachmentSampleLocationsEXT~^~VUID-VkAttachmentSampleLocationsEXT-sampleLocationsInfo-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAttachmentSampleLocationsEXT-sampleLocationsInfo-parameter)~^~implicit VALIDATION_ERROR_3ea00bf8~^~N~^~None~^~VkSubpassSampleLocationsEXT~^~VUID-VkSubpassSampleLocationsEXT-subpassIndex-01532~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'subpassIndex must be less than the subpassCount specified in VkRenderPassCreateInfo the render pass specified by VkRenderPassBeginInfo::renderPass was created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSubpassSampleLocationsEXT-subpassIndex-01532)~^~ VALIDATION_ERROR_3ea3c601~^~N~^~None~^~VkSubpassSampleLocationsEXT~^~VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter)~^~implicit -VALIDATION_ERROR_3ec1c40d~^~N~^~None~^~VkPhysicalDevicePointClippingProperties~^~VUID-VkPhysicalDevicePointClippingProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePointClippingProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_3ec2b00b~^~N~^~None~^~VkPhysicalDevicePointClippingProperties~^~VUID-VkPhysicalDevicePointClippingProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePointClippingProperties-sType-sType)~^~implicit VALIDATION_ERROR_3ee00c01~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-parameter)~^~implicit VALIDATION_ERROR_3ee00c03~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask)~^~implicit VALIDATION_ERROR_3ee00c40~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-pCreateInfo-01568~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'There must be an input attachment at pCreateInfo::pSubpasses[subpass].pInputAttachments[inputAttachmentIndex].' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-pCreateInfo-01568)~^~ VALIDATION_ERROR_3ee00c42~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-None-01569~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'The specified input attachment must have more than one aspect mask.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-None-01569)~^~ VALIDATION_ERROR_3ee00c44~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-01570~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must be a subset of the aspect masks in the specified input attachment.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-01570)~^~ -VALIDATION_ERROR_3f01c40d~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_3f02b00b~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_3f03ce1b~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectReferenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength)~^~implicit VALIDATION_ERROR_3f03d001~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pAspectReferences must be a valid pointer to an array of aspectReferenceCount valid VkInputAttachmentAspectReference structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter)~^~implicit VALIDATION_ERROR_3f200c66~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-01587~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must not include any set bits that were not set in the usage member of the VkImageCreateInfo structure used to create the image this image view is created from.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-01587)~^~ -VALIDATION_ERROR_3f21c40d~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_3f22b00b~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_3f230601~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-parameter)~^~implicit VALIDATION_ERROR_3f230603~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask)~^~implicit -VALIDATION_ERROR_3f41c40d~^~N~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_3f42b00b~^~N~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType)~^~implicit VALIDATION_ERROR_3f43d201~^~N~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'domainOrigin must be a valid VkTessellationDomainOrigin value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter)~^~implicit VALIDATION_ERROR_3f600c54~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If viewFormatCount is not 0, all of the formats in the pViewFormats array must be compatible with the format specified in the format field of VkImageCreateInfo, as described in the compatibility table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578)~^~ VALIDATION_ERROR_3f600c56~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-flags-01579~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If VkImageCreateInfo::flags does not contain VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, viewFormatCount must be 0 or 1.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-flags-01579)~^~ VALIDATION_ERROR_3f600c58~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If viewFormatCount is not 0, VkImageCreateInfo::format must be in pViewFormats.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580)~^~ -VALIDATION_ERROR_3f61c40d~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-pNext-pNext~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-pNext-pNext)~^~implicit VALIDATION_ERROR_3f62b00b~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-sType-sType~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-sType-sType)~^~implicit VALIDATION_ERROR_3f63e401~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-pViewFormats-parameter~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If viewFormatCount is not 0, pViewFormats must be a valid pointer to an array of viewFormatCount valid VkFormat values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-pViewFormats-parameter)~^~implicit VALIDATION_ERROR_3f800ce2~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-format-01649~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+!(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'format must not be VK_FORMAT_UNDEFINED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-01649)~^~ @@ -3718,7 +3711,7 @@ VALIDATION_ERROR_3f800cec~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID VALIDATION_ERROR_3f800cee~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-ycbcrModel-01655~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If ycbcrModel is not VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY, then components.r, components.g, and components.b must correspond to channels of the format; that is, components.r, components.g, and components.b must not be VK_COMPONENT_SWIZZLE_ZERO or VK_COMPONENT_SWIZZLE_ONE, and must not correspond to a channel which contains zero or one as a consequence of conversion to RGBA' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-ycbcrModel-01655)~^~ VALIDATION_ERROR_3f800cf0~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If the format does not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT, forceExplicitReconstruction must be FALSE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656)~^~ VALIDATION_ERROR_3f800cf2~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If the format does not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, chromaFilter must be VK_FILTER_NEAREST' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657)~^~ -VALIDATION_ERROR_3f800ee0~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfoKHR-format-01904~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If an external format conversion is being created, format must be VK_FORMAT_UNDEFINED, otherwise it must not be VK_FORMAT_UNDEFINED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfoKHR-format-01904)~^~ +VALIDATION_ERROR_3f800ee0~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-format-01904~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If an external format conversion is being created, format must be VK_FORMAT_UNDEFINED, otherwise it must not be VK_FORMAT_UNDEFINED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-01904)~^~ VALIDATION_ERROR_3f802c01~^~N~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-components-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'components must be a valid VkComponentMapping structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-components-parameter)~^~implicit VALIDATION_ERROR_3f809201~^~Y~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-format-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-parameter)~^~implicit VALIDATION_ERROR_3f81c40d~^~Y~^~None~^~VkSamplerYcbcrConversionCreateInfo~^~VUID-VkSamplerYcbcrConversionCreateInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkExternalFormatANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-pNext-pNext)~^~implicit @@ -3743,7 +3736,6 @@ VALIDATION_ERROR_3fe3e001~^~Y~^~None~^~vkCreateSamplerYcbcrConversion~^~VUID-vkC VALIDATION_ERROR_40000c8c~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606)~^~ VALIDATION_ERROR_40000c8e~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'All elements of pDeviceIndices must be valid device indices' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607)~^~ VALIDATION_ERROR_40013e01~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit -VALIDATION_ERROR_4001c40d~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_4002b00b~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType)~^~implicit VALIDATION_ERROR_40200cc2~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'At least one of deviceIndexCount and splitInstanceBindRegionCount must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633)~^~ VALIDATION_ERROR_40200cc4~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634)~^~ @@ -3755,7 +3747,6 @@ VALIDATION_ERROR_40200cce~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-V VALIDATION_ERROR_40200cd0~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The extent.width member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block width of all non-metadata aspects of the image, or else extent.width + offset.x must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640)~^~ VALIDATION_ERROR_40200cd2~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The extent.height member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block height of all non-metadata aspects of the image, or else extent.height offset.y must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641)~^~ VALIDATION_ERROR_40213e01~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit -VALIDATION_ERROR_4021c40d~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_4022b00b~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType)~^~implicit VALIDATION_ERROR_4023fe01~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If splitInstanceBindRegionCount is not 0, pSplitInstanceBindRegions must be a valid pointer to an array of splitInstanceBindRegionCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter)~^~implicit VALIDATION_ERROR_40405601~^~Y~^~None~^~vkDestroySamplerYcbcrConversion~^~VUID-vkDestroySamplerYcbcrConversion-device-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroySamplerYcbcrConversion-device-parameter)~^~implicit @@ -3766,7 +3757,6 @@ VALIDATION_ERROR_4062b00b~^~N~^~None~^~VkPhysicalDeviceSamplerYcbcrConversionFea VALIDATION_ERROR_4082b00b~^~N~^~None~^~VkSamplerYcbcrConversionImageFormatProperties~^~VUID-VkSamplerYcbcrConversionImageFormatProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionImageFormatProperties-sType-sType)~^~implicit VALIDATION_ERROR_40a2b00b~^~N~^~None~^~VkSamplerYcbcrConversionInfo~^~VUID-VkSamplerYcbcrConversionInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-sType-sType)~^~implicit VALIDATION_ERROR_40a3e601~^~N~^~None~^~VkSamplerYcbcrConversionInfo~^~VUID-VkSamplerYcbcrConversionInfo-conversion-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'conversion must be a valid VkSamplerYcbcrConversion handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-conversion-parameter)~^~implicit -VALIDATION_ERROR_40c1c40d~^~N~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-pNext-pNext~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_40c2b00b~^~N~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_40c3ea01~^~N~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'globalPriority must be a valid VkQueueGlobalPriorityEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter)~^~implicit VALIDATION_ERROR_40e05601~^~Y~^~None~^~vkGetShaderInfoAMD~^~VUID-vkGetShaderInfoAMD-device-parameter~^~(VK_AMD_shader_info)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetShaderInfoAMD-device-parameter)~^~implicit @@ -3782,11 +3772,9 @@ VALIDATION_ERROR_41200daa~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-V VALIDATION_ERROR_41200dac~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750)~^~ VALIDATION_ERROR_41200dae~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host mapped foreign memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751)~^~ VALIDATION_ERROR_41209c01~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter)~^~implicit -VALIDATION_ERROR_4121c40d~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-pNext-pNext~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_4122b00b~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_4141c40d~^~N~^~None~^~VkMemoryHostPointerPropertiesEXT~^~VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_4142b00b~^~Y~^~None~^~VkMemoryHostPointerPropertiesEXT~^~VUID-VkMemoryHostPointerPropertiesEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-sType-sType)~^~implicit -VALIDATION_ERROR_4161c40d~^~N~^~None~^~VkPhysicalDeviceExternalMemoryHostPropertiesEXT~^~VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-pNext-pNext~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_4162b00b~^~N~^~None~^~VkPhysicalDeviceExternalMemoryHostPropertiesEXT~^~VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType)~^~implicit VALIDATION_ERROR_41800db0~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT or VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752)~^~ VALIDATION_ERROR_41800db2~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-pHostPointer-01753~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pHostPointer must be a pointer aligned to an integer multiple of VkPhysicalDeviceExternalMemoryHostPropertiesEXT::minImportedHostPointerAlignment' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-pHostPointer-01753)~^~ @@ -3795,11 +3783,9 @@ VALIDATION_ERROR_41800db6~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUI VALIDATION_ERROR_41805601~^~Y~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-device-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-device-parameter)~^~implicit VALIDATION_ERROR_41809c01~^~Y~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-parameter)~^~implicit VALIDATION_ERROR_4183f401~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pMemoryHostPointerProperties must be a valid pointer to a VkMemoryHostPointerPropertiesEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter)~^~implicit -VALIDATION_ERROR_41a1c40d~^~N~^~None~^~VkPhysicalDeviceConservativeRasterizationPropertiesEXT~^~VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-pNext-pNext~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_41a2b00b~^~N~^~None~^~VkPhysicalDeviceConservativeRasterizationPropertiesEXT~^~VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType)~^~implicit VALIDATION_ERROR_41c00dd2~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'extraPrimitiveOverestimationSize must be in the range of 0.0 to VkPhysicalDeviceConservativeRasterizationPropertiesEXT::maxExtraPrimitiveOverestimationSize inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769)~^~ VALIDATION_ERROR_41c09005~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask)~^~implicit -VALIDATION_ERROR_41c1c40d~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-pNext-pNext~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_41c2b00b~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_41c3f801~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'conservativeRasterizationMode must be a valid VkConservativeRasterizationModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter)~^~implicit VALIDATION_ERROR_41e00009~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-commonparent~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'Both of commandBuffer, and dstBuffer must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commonparent)~^~implicit @@ -3812,7 +3798,7 @@ VALIDATION_ERROR_41e02413~^~N~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWri VALIDATION_ERROR_41e02415~^~N~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_41e06c01~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'dstBuffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter)~^~implicit VALIDATION_ERROR_41e28401~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'pipelineStage must be a valid VkPipelineStageFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter)~^~implicit -VALIDATION_ERROR_4201c40d~^~N~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)~^~implicit +VALIDATION_ERROR_4201c40d~^~N~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountLayoutSupportEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)~^~implicit VALIDATION_ERROR_4202b00b~^~Y~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-sType-sType)~^~implicit VALIDATION_ERROR_42200e64~^~N~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-queueFamilyIndex-01842~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'queueFamilyIndex must be one of the queue family indices specified when device was created, via the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueFamilyIndex-01842)~^~ VALIDATION_ERROR_42200e66~^~N~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-queueIndex-01843~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'queueIndex must be less than the number of queues created for the specified queue family index and VkDeviceQueueCreateFlags member flags equal to this flags value when device was created, via the queueCount member of the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueIndex-01843)~^~ @@ -3820,20 +3806,15 @@ VALIDATION_ERROR_42209001~^~N~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueIn VALIDATION_ERROR_42209003~^~Y~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-flags-requiredbitmask~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-flags-requiredbitmask)~^~implicit VALIDATION_ERROR_4221c40d~^~Y~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-pNext-pNext~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-pNext-pNext)~^~implicit VALIDATION_ERROR_4222b00b~^~Y~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-sType-sType)~^~implicit -VALIDATION_ERROR_4241c40d~^~N~^~None~^~VkPhysicalDeviceMaintenance3Properties~^~VUID-VkPhysicalDeviceMaintenance3Properties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMaintenance3Properties-pNext-pNext)~^~implicit VALIDATION_ERROR_4242b00b~^~N~^~None~^~VkPhysicalDeviceMaintenance3Properties~^~VUID-VkPhysicalDeviceMaintenance3Properties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMaintenance3Properties-sType-sType)~^~implicit -VALIDATION_ERROR_4261c40d~^~N~^~None~^~VkPhysicalDeviceProtectedMemoryFeatures~^~VUID-VkPhysicalDeviceProtectedMemoryFeatures-pNext-pNext~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryFeatures-pNext-pNext)~^~implicit VALIDATION_ERROR_4262b00b~^~N~^~None~^~VkPhysicalDeviceProtectedMemoryFeatures~^~VUID-VkPhysicalDeviceProtectedMemoryFeatures-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryFeatures-sType-sType)~^~implicit -VALIDATION_ERROR_4281c40d~^~N~^~None~^~VkPhysicalDeviceProtectedMemoryProperties~^~VUID-VkPhysicalDeviceProtectedMemoryProperties-pNext-pNext~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_4282b00b~^~N~^~None~^~VkPhysicalDeviceProtectedMemoryProperties~^~VUID-VkPhysicalDeviceProtectedMemoryProperties-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryProperties-sType-sType)~^~implicit VALIDATION_ERROR_42a2b00b~^~N~^~None~^~VkPhysicalDeviceShaderDrawParameterFeatures~^~VUID-VkPhysicalDeviceShaderDrawParameterFeatures-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceShaderDrawParameterFeatures-sType-sType)~^~implicit -VALIDATION_ERROR_42c1c40d~^~N~^~None~^~VkPhysicalDeviceSubgroupProperties~^~VUID-VkPhysicalDeviceSubgroupProperties-pNext-pNext~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSubgroupProperties-pNext-pNext)~^~implicit VALIDATION_ERROR_42c2b00b~^~N~^~None~^~VkPhysicalDeviceSubgroupProperties~^~VUID-VkPhysicalDeviceSubgroupProperties-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSubgroupProperties-sType-sType)~^~implicit VALIDATION_ERROR_42e00e30~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-protectedSubmit-01816~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If the protected memory feature is not enabled, protectedSubmit must not be VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01816)~^~ VALIDATION_ERROR_42e00e32~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-protectedSubmit-01817~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If protectedSubmit is VK_TRUE, then each element of the pCommandBuffers array must be a protected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01817)~^~ VALIDATION_ERROR_42e00e34~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-protectedSubmit-01818~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If protectedSubmit is VK_FALSE, then each element of the pCommandBuffers array must be an unprotected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01818)~^~ VALIDATION_ERROR_42e00e36~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-pNext-01819~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'If the VkSubmitInfo::pNext chain does not include a VkProtectedSubmitInfo structure, then each element of the command buffer of the pCommandBuffers array must be an unprotected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-pNext-01819)~^~ -VALIDATION_ERROR_42e1c40d~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-pNext-pNext~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-pNext-pNext)~^~implicit VALIDATION_ERROR_42e2b00b~^~N~^~None~^~VkProtectedSubmitInfo~^~VUID-VkProtectedSubmitInfo-sType-sType~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-sType-sType)~^~implicit VALIDATION_ERROR_43040001~^~N~^~None~^~vkEnumerateInstanceVersion~^~VUID-vkEnumerateInstanceVersion-pApiVersion-parameter~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'pApiVersion must be a valid pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEnumerateInstanceVersion-pApiVersion-parameter)~^~implicit VALIDATION_ERROR_43205601~^~Y~^~None~^~vkGetDescriptorSetLayoutSupport~^~VUID-vkGetDescriptorSetLayoutSupport-device-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetDescriptorSetLayoutSupport-device-parameter)~^~implicit @@ -3868,7 +3849,6 @@ VALIDATION_ERROR_43c2b00b~^~Y~^~None~^~VkDebugUtilsMessengerCallbackDataEXT~^~VU VALIDATION_ERROR_43c42201~^~N~^~None~^~VkDebugUtilsMessengerCallbackDataEXT~^~VUID-VkDebugUtilsMessengerCallbackDataEXT-pMessageIdName-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'If pMessageIdName is not NULL, pMessageIdName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCallbackDataEXT-pMessageIdName-parameter)~^~implicit VALIDATION_ERROR_43e00ef4~^~N~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-pfnUserCallback-01914~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pfnUserCallback must be a valid PFN_vkDebugUtilsMessengerCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-pfnUserCallback-01914)~^~ VALIDATION_ERROR_43e09005~^~Y~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-flags-zerobitmask)~^~implicit -VALIDATION_ERROR_43e1c40d~^~Y~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-pNext-pNext~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_43e2b00b~^~Y~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-sType-sType~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-sType-sType)~^~implicit VALIDATION_ERROR_43e40a01~^~N~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'messageSeverity must be a valid combination of VkDebugUtilsMessageSeverityFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-parameter)~^~implicit VALIDATION_ERROR_43e40a03~^~Y~^~None~^~VkDebugUtilsMessengerCreateInfoEXT~^~VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-requiredbitmask~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'messageSeverity must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-requiredbitmask)~^~implicit @@ -3883,15 +3863,15 @@ VALIDATION_ERROR_44240a01~^~Y~^~None~^~vkSubmitDebugUtilsMessageEXT~^~VUID-vkSub VALIDATION_ERROR_44241201~^~N~^~None~^~vkSubmitDebugUtilsMessageEXT~^~VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'messageTypes must be a valid combination of VkDebugUtilsMessageTypeFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-parameter)~^~implicit VALIDATION_ERROR_44241203~^~Y~^~None~^~vkSubmitDebugUtilsMessageEXT~^~VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-requiredbitmask~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'messageTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-requiredbitmask)~^~implicit VALIDATION_ERROR_44242801~^~N~^~None~^~vkSubmitDebugUtilsMessageEXT~^~VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pCallbackData must be a valid pointer to a valid VkDebugUtilsMessengerCallbackDataEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter)~^~implicit -VALIDATION_ERROR_4441c40d~^~N~^~None~^~VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT~^~VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-pNext-pNext~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-pNext-pNext)~^~implicit VALIDATION_ERROR_4442b00b~^~N~^~None~^~VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT~^~VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType)~^~implicit +VALIDATION_ERROR_4462b00b~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType)~^~implicit +VALIDATION_ERROR_4464141b~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'vertexBindingDivisorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength)~^~implicit +VALIDATION_ERROR_44641601~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'pVertexBindingDivisors must be a valid pointer to an array of vertexBindingDivisorCount VkVertexInputBindingDivisorDescriptionEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter)~^~implicit VALIDATION_ERROR_44800ecc~^~N~^~None~^~VkExternalFormatANDROID~^~VUID-VkExternalFormatANDROID-externalFormat-01894~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'externalFormat must be 0 or a value returned in the externalFormat member of VkAndroidHardwareBufferFormatPropertiesANDROID by an earlier call to vkGetAndroidHardwareBufferPropertiesANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-externalFormat-01894)~^~ -VALIDATION_ERROR_4481c40d~^~N~^~None~^~VkExternalFormatANDROID~^~VUID-VkExternalFormatANDROID-pNext-pNext~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-pNext-pNext)~^~implicit VALIDATION_ERROR_4482b00b~^~N~^~None~^~VkExternalFormatANDROID~^~VUID-VkExternalFormatANDROID-sType-sType~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-sType-sType)~^~implicit VALIDATION_ERROR_44a00eb0~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If buffer is not NULL, Android hardware buffers must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880)~^~ VALIDATION_ERROR_44a00eb2~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If buffer is not NULL, it must be a valid Android hardware buffer object with format and usage compatible with Vulkan as described by VkExternalMemoryHandleTypeFlagBits.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881)~^~ VALIDATION_ERROR_44a01a01~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'buffer must be a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter)~^~implicit -VALIDATION_ERROR_44a1c40d~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-pNext-pNext~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-pNext-pNext)~^~implicit VALIDATION_ERROR_44a2b00b~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType)~^~implicit VALIDATION_ERROR_44c00eb4~^~N~^~None~^~VkMemoryGetAndroidHardwareBufferInfoANDROID~^~VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882)~^~ VALIDATION_ERROR_44c00eb6~^~N~^~None~^~VkMemoryGetAndroidHardwareBufferInfoANDROID~^~VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If the pNext chain of the VkMemoryAllocateInfo used to allocate memory included a VkMemoryDedicatedAllocateInfo with non-NULL image member, then that image must already be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883)~^~ @@ -3912,12 +3892,10 @@ VALIDATION_ERROR_45205601~^~Y~^~None~^~vkGetAndroidHardwareBufferPropertiesANDRO VALIDATION_ERROR_4521f401~^~N~^~None~^~vkGetAndroidHardwareBufferPropertiesANDROID~^~VUID-vkGetAndroidHardwareBufferPropertiesANDROID-pProperties-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pProperties must be a valid pointer to a VkAndroidHardwareBufferPropertiesANDROID structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetAndroidHardwareBufferPropertiesANDROID-pProperties-parameter)~^~implicit VALIDATION_ERROR_45400eee~^~N~^~None~^~vkQueueEndDebugUtilsLabelEXT~^~VUID-vkQueueEndDebugUtilsLabelEXT-None-01911~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'There must be an outstanding vkQueueBeginDebugUtilsLabelEXT command prior to the vkQueueEndDebugUtilsLabelEXT on the queue' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkQueueEndDebugUtilsLabelEXT-None-01911)~^~ VALIDATION_ERROR_45429c01~^~N~^~None~^~vkQueueEndDebugUtilsLabelEXT~^~VUID-vkQueueEndDebugUtilsLabelEXT-queue-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'queue must be a valid VkQueue handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkQueueEndDebugUtilsLabelEXT-queue-parameter)~^~implicit -VALIDATION_ERROR_4561c40d~^~N~^~None~^~VkAndroidHardwareBufferUsageANDROID~^~VUID-VkAndroidHardwareBufferUsageANDROID-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferUsageANDROID-pNext-pNext)~^~implicit VALIDATION_ERROR_4562b00b~^~N~^~None~^~VkAndroidHardwareBufferUsageANDROID~^~VUID-VkAndroidHardwareBufferUsageANDROID-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferUsageANDROID-sType-sType)~^~implicit VALIDATION_ERROR_45a05601~^~Y~^~None~^~vkGetMemoryAndroidHardwareBufferANDROID~^~VUID-vkGetMemoryAndroidHardwareBufferANDROID-device-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-device-parameter)~^~implicit VALIDATION_ERROR_45a10001~^~Y~^~None~^~vkGetMemoryAndroidHardwareBufferANDROID~^~VUID-vkGetMemoryAndroidHardwareBufferANDROID-pBuffer-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pBuffer must be a valid pointer to a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-pBuffer-parameter)~^~implicit VALIDATION_ERROR_45a39c01~^~N~^~None~^~vkGetMemoryAndroidHardwareBufferANDROID~^~VUID-vkGetMemoryAndroidHardwareBufferANDROID-pInfo-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pInfo must be a valid pointer to a valid VkMemoryGetAndroidHardwareBufferInfoANDROID structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-pInfo-parameter)~^~implicit -VALIDATION_ERROR_45c1c40d~^~N~^~None~^~VkAndroidHardwareBufferFormatPropertiesANDROID~^~VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-pNext-pNext~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-pNext-pNext)~^~implicit VALIDATION_ERROR_45c2b00b~^~N~^~None~^~VkAndroidHardwareBufferFormatPropertiesANDROID~^~VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-sType-sType~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-sType-sType)~^~implicit VALIDATION_ERROR_45e02401~^~N~^~None~^~vkCmdBeginDebugUtilsLabelEXT~^~VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_45e02413~^~N~^~None~^~vkCmdBeginDebugUtilsLabelEXT~^~VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-recording~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-recording)~^~implicit @@ -3935,4 +3913,32 @@ VALIDATION_ERROR_46605601~^~N~^~None~^~vkSetDebugUtilsObjectNameEXT~^~VUID-vkSet VALIDATION_ERROR_4661c201~^~N~^~None~^~vkSetDebugUtilsObjectNameEXT~^~VUID-vkSetDebugUtilsObjectNameEXT-pNameInfo-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pNameInfo must be a valid pointer to a valid VkDebugUtilsObjectNameInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectNameEXT-pNameInfo-parameter)~^~implicit VALIDATION_ERROR_46805601~^~N~^~None~^~vkSetDebugUtilsObjectTagEXT~^~VUID-vkSetDebugUtilsObjectTagEXT-device-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectTagEXT-device-parameter)~^~implicit VALIDATION_ERROR_46825c01~^~N~^~None~^~vkSetDebugUtilsObjectTagEXT~^~VUID-vkSetDebugUtilsObjectTagEXT-pTagInfo-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pTagInfo must be a valid pointer to a valid VkDebugUtilsObjectTagInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectTagEXT-pTagInfo-parameter)~^~implicit +VALIDATION_ERROR_46a01774~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-bindingCount-03002~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If bindingCount is not zero, bindingCount must equal VkDescriptorSetLayoutCreateInfo::bindingCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-bindingCount-03002)~^~ +VALIDATION_ERROR_46a01776~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-flags-03003~^~(VK_EXT_descriptor_indexing)+(VK_KHR_push_descriptor)~^~The spec valid usage text states 'If VkDescriptorSetLayoutCreateInfo::flags includes VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT, VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT, or VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-flags-03003)~^~ +VALIDATION_ERROR_46a01778~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03004~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If an element of pBindingFlags includes VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT, then all other elements of VkDescriptorSetLayoutCreateInfo::pBindings must have a smaller value of binding' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03004)~^~ +VALIDATION_ERROR_46a0177a~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformBufferUpdateAfterBind-03005~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUniformBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformBufferUpdateAfterBind-03005)~^~ +VALIDATION_ERROR_46a0177c~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingSampledImageUpdateAfterBind-03006~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingSampledImageUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_SAMPLER, VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingSampledImageUpdateAfterBind-03006)~^~ +VALIDATION_ERROR_46a0177e~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageImageUpdateAfterBind-03007~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageImageUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageImageUpdateAfterBind-03007)~^~ +VALIDATION_ERROR_46a01780~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageBufferUpdateAfterBind-03008~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageBufferUpdateAfterBind-03008)~^~ +VALIDATION_ERROR_46a01782~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformTexelBufferUpdateAfterBind-03009~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUniformTexelBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformTexelBufferUpdateAfterBind-03009)~^~ +VALIDATION_ERROR_46a01784~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageTexelBufferUpdateAfterBind-03010~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageTexelBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageTexelBufferUpdateAfterBind-03010)~^~ +VALIDATION_ERROR_46a01786~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-None-03011~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'All bindings with descriptor type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-None-03011)~^~ +VALIDATION_ERROR_46a01788~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUpdateUnusedWhilePending-03012~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUpdateUnusedWhilePending is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUpdateUnusedWhilePending-03012)~^~ +VALIDATION_ERROR_46a0178a~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingPartiallyBound-03013~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingPartiallyBound is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingPartiallyBound-03013)~^~ +VALIDATION_ERROR_46a0178c~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingVariableDescriptorCount-03014~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingVariableDescriptorCount is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingVariableDescriptorCount-03014)~^~ +VALIDATION_ERROR_46a0178e~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03015~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If an element of pBindingFlags includes VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT, that element's descriptorType must not be VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03015)~^~ +VALIDATION_ERROR_46a2b00b~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-sType-sType)~^~implicit +VALIDATION_ERROR_46a42a01~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-parameter~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If bindingCount is not 0, pBindingFlags must be a valid pointer to an array of bindingCount valid combinations of VkDescriptorBindingFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-parameter)~^~implicit +VALIDATION_ERROR_46a42a03~^~N~^~None~^~VkDescriptorSetLayoutBindingFlagsCreateInfoEXT~^~VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-requiredbitmask~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'Each element of pBindingFlags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-requiredbitmask)~^~implicit +VALIDATION_ERROR_46c017ca~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If descriptorSetCount is not zero, descriptorSetCount must equal VkDescriptorSetAllocateInfo::descriptorSetCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045)~^~ +VALIDATION_ERROR_46c017cc~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkDescriptorSetAllocateInfo::pSetLayouts[i] has a variable descriptor count binding, then pDescriptorCounts[i] must be less than or equal to the descriptor count specified for that binding when the descriptor set layout was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046)~^~ +VALIDATION_ERROR_46c2b00b~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType)~^~implicit +VALIDATION_ERROR_46c42c01~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If descriptorSetCount is not 0, pDescriptorCounts must be a valid pointer to an array of descriptorSetCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter)~^~implicit +VALIDATION_ERROR_46e2b00b~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountLayoutSupportEXT~^~VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType)~^~implicit +VALIDATION_ERROR_4702b00b~^~N~^~None~^~VkPhysicalDeviceDescriptorIndexingFeaturesEXT~^~VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType)~^~implicit +VALIDATION_ERROR_4722b00b~^~N~^~None~^~VkPhysicalDeviceDescriptorIndexingPropertiesEXT~^~VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType)~^~implicit +VALIDATION_ERROR_4742b00b~^~N~^~None~^~VkPhysicalDeviceShaderCorePropertiesAMD~^~VUID-VkPhysicalDeviceShaderCorePropertiesAMD-sType-sType~^~(VK_AMD_shader_core_properties)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceShaderCorePropertiesAMD-sType-sType)~^~implicit +VALIDATION_ERROR_47600e9a~^~N~^~None~^~VkVertexInputBindingDivisorDescriptionEXT~^~VUID-VkVertexInputBindingDivisorDescriptionEXT-binding-01869~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'binding must be less than VkPhysicalDeviceLimits::maxVertexInputBindings' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-binding-01869)~^~ +VALIDATION_ERROR_47600e9c~^~N~^~None~^~VkVertexInputBindingDivisorDescriptionEXT~^~VUID-VkVertexInputBindingDivisorDescriptionEXT-divisor-01870~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'divisor must be a value between 0 and VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT::maxVertexAttribDivisor, inclusive.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-divisor-01870)~^~ +VALIDATION_ERROR_47600e9e~^~N~^~None~^~VkVertexInputBindingDivisorDescriptionEXT~^~VUID-VkVertexInputBindingDivisorDescriptionEXT-inputRate-01871~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'VkVertexInputBindingDescription::inputRate must be of type VK_VERTEX_INPUT_RATE_INSTANCE for this binding.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-inputRate-01871)~^~ diff --git a/layers/vk_validation_error_messages.h b/layers/vk_validation_error_messages.h index 2b4cbc6a..2bb2d177 100644 --- a/layers/vk_validation_error_messages.h +++ b/layers/vk_validation_error_messages.h @@ -295,6 +295,10 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_032002b6 = 0x032002b6, VALIDATION_ERROR_032002b8 = 0x032002b8, VALIDATION_ERROR_032002ba = 0x032002ba, + VALIDATION_ERROR_03200efc = 0x03200efc, + VALIDATION_ERROR_03200efe = 0x03200efe, + VALIDATION_ERROR_03200f00 = 0x03200f00, + VALIDATION_ERROR_03200f02 = 0x03200f02, VALIDATION_ERROR_03207601 = 0x03207601, VALIDATION_ERROR_0321c40d = 0x0321c40d, VALIDATION_ERROR_0322b00b = 0x0322b00b, @@ -324,7 +328,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_03a2f41b = 0x03a2f41b, VALIDATION_ERROR_03c00ad2 = 0x03c00ad2, VALIDATION_ERROR_03c09001 = 0x03c09001, - VALIDATION_ERROR_03c1c40d = 0x03c1c40d, VALIDATION_ERROR_03c2b00b = 0x03c2b00b, VALIDATION_ERROR_03e2b00b = 0x03e2b00b, VALIDATION_ERROR_040007c4 = 0x040007c4, @@ -361,6 +364,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_04c00264 = 0x04c00264, VALIDATION_ERROR_04c00266 = 0x04c00266, VALIDATION_ERROR_04c00268 = 0x04c00268, + VALIDATION_ERROR_04c017c8 = 0x04c017c8, VALIDATION_ERROR_04c04601 = 0x04c04601, VALIDATION_ERROR_04c04a1b = 0x04c04a1b, VALIDATION_ERROR_04c1c40d = 0x04c1c40d, @@ -373,6 +377,8 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0500022e = 0x0500022e, VALIDATION_ERROR_05000230 = 0x05000230, VALIDATION_ERROR_05000232 = 0x05000232, + VALIDATION_ERROR_05001770 = 0x05001770, + VALIDATION_ERROR_05001772 = 0x05001772, VALIDATION_ERROR_05009001 = 0x05009001, VALIDATION_ERROR_0500fc01 = 0x0500fc01, VALIDATION_ERROR_0501c40d = 0x0501c40d, @@ -498,35 +504,26 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_07e2b00b = 0x07e2b00b, VALIDATION_ERROR_08000520 = 0x08000520, VALIDATION_ERROR_08009e01 = 0x08009e01, - VALIDATION_ERROR_0801c40d = 0x0801c40d, VALIDATION_ERROR_0802b00b = 0x0802b00b, VALIDATION_ERROR_08209e01 = 0x08209e01, - VALIDATION_ERROR_0821c40d = 0x0821c40d, VALIDATION_ERROR_0822b00b = 0x0822b00b, VALIDATION_ERROR_08400522 = 0x08400522, VALIDATION_ERROR_0840f401 = 0x0840f401, - VALIDATION_ERROR_0841c40d = 0x0841c40d, VALIDATION_ERROR_0842b00b = 0x0842b00b, VALIDATION_ERROR_0860f401 = 0x0860f401, - VALIDATION_ERROR_0861c40d = 0x0861c40d, VALIDATION_ERROR_0862b00b = 0x0862b00b, VALIDATION_ERROR_088008c8 = 0x088008c8, VALIDATION_ERROR_08809e01 = 0x08809e01, - VALIDATION_ERROR_0881c40d = 0x0881c40d, VALIDATION_ERROR_0882b00b = 0x0882b00b, VALIDATION_ERROR_08a008ca = 0x08a008ca, VALIDATION_ERROR_08a0f401 = 0x08a0f401, - VALIDATION_ERROR_08a1c40d = 0x08a1c40d, VALIDATION_ERROR_08a2b00b = 0x08a2b00b, VALIDATION_ERROR_08c09e01 = 0x08c09e01, - VALIDATION_ERROR_08c1c40d = 0x08c1c40d, VALIDATION_ERROR_08c2b00b = 0x08c2b00b, VALIDATION_ERROR_08e09e01 = 0x08e09e01, VALIDATION_ERROR_08e09e03 = 0x08e09e03, - VALIDATION_ERROR_08e1c40d = 0x08e1c40d, VALIDATION_ERROR_08e2b00b = 0x08e2b00b, VALIDATION_ERROR_09009e01 = 0x09009e01, - VALIDATION_ERROR_0901c40d = 0x0901c40d, VALIDATION_ERROR_0902b00b = 0x0902b00b, VALIDATION_ERROR_09209001 = 0x09209001, VALIDATION_ERROR_0921c40d = 0x0921c40d, @@ -759,6 +756,8 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_09e00ec6 = 0x09e00ec6, VALIDATION_ERROR_09e00ec8 = 0x09e00ec8, VALIDATION_ERROR_09e00eca = 0x09e00eca, + VALIDATION_ERROR_09e00f08 = 0x09e00f08, + VALIDATION_ERROR_09e00f0a = 0x09e00f0a, VALIDATION_ERROR_09e09001 = 0x09e09001, VALIDATION_ERROR_09e09201 = 0x09e09201, VALIDATION_ERROR_09e0ac01 = 0x09e0ac01, @@ -886,7 +885,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0ae00be0 = 0x0ae00be0, VALIDATION_ERROR_0ae00da4 = 0x0ae00da4, VALIDATION_ERROR_0ae09c01 = 0x0ae09c01, - VALIDATION_ERROR_0ae1c40d = 0x0ae1c40d, VALIDATION_ERROR_0ae2b00b = 0x0ae2b00b, VALIDATION_ERROR_0b000524 = 0x0b000524, VALIDATION_ERROR_0b000526 = 0x0b000526, @@ -898,12 +896,10 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0b000bdc = 0x0b000bdc, VALIDATION_ERROR_0b000bde = 0x0b000bde, VALIDATION_ERROR_0b009c01 = 0x0b009c01, - VALIDATION_ERROR_0b01c40d = 0x0b01c40d, VALIDATION_ERROR_0b02b00b = 0x0b02b00b, VALIDATION_ERROR_0b200a5e = 0x0b200a5e, VALIDATION_ERROR_0b200a60 = 0x0b200a60, VALIDATION_ERROR_0b209c01 = 0x0b209c01, - VALIDATION_ERROR_0b21c40d = 0x0b21c40d, VALIDATION_ERROR_0b22b00b = 0x0b22b00b, VALIDATION_ERROR_0b4008ee = 0x0b4008ee, VALIDATION_ERROR_0b400c10 = 0x0b400c10, @@ -1045,7 +1041,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0d809001 = 0x0d809001, VALIDATION_ERROR_0d809003 = 0x0d809003, VALIDATION_ERROR_0d830401 = 0x0d830401, - VALIDATION_ERROR_0da1c40d = 0x0da1c40d, VALIDATION_ERROR_0da2b00b = 0x0da2b00b, VALIDATION_ERROR_0dc09001 = 0x0dc09001, VALIDATION_ERROR_0dc09c01 = 0x0dc09c01, @@ -1058,9 +1053,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0e009c01 = 0x0e009c01, VALIDATION_ERROR_0e01c40d = 0x0e01c40d, VALIDATION_ERROR_0e02b00b = 0x0e02b00b, - VALIDATION_ERROR_0e41c40d = 0x0e41c40d, VALIDATION_ERROR_0e42b00b = 0x0e42b00b, - VALIDATION_ERROR_0e42b00f = 0x0e42b00f, VALIDATION_ERROR_0e609001 = 0x0e609001, VALIDATION_ERROR_0e609201 = 0x0e609201, VALIDATION_ERROR_0e61c40d = 0x0e61c40d, @@ -1072,7 +1065,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0e800488 = 0x0e800488, VALIDATION_ERROR_0e80048a = 0x0e80048a, VALIDATION_ERROR_0e82b00b = 0x0e82b00b, - VALIDATION_ERROR_0ea1c40d = 0x0ea1c40d, VALIDATION_ERROR_0ea2b00b = 0x0ea2b00b, VALIDATION_ERROR_0ec0088e = 0x0ec0088e, VALIDATION_ERROR_0ec09201 = 0x0ec09201, @@ -1125,7 +1117,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0f80048c = 0x0f80048c, VALIDATION_ERROR_0f805e01 = 0x0f805e01, VALIDATION_ERROR_0f809005 = 0x0f809005, - VALIDATION_ERROR_0f81c40d = 0x0f81c40d, VALIDATION_ERROR_0f82b00b = 0x0f82b00b, VALIDATION_ERROR_0fa00b44 = 0x0fa00b44, VALIDATION_ERROR_0fa07c1b = 0x0fa07c1b, @@ -1157,6 +1148,34 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_0fe00d24 = 0x0fe00d24, VALIDATION_ERROR_0fe00d26 = 0x0fe00d26, VALIDATION_ERROR_0fe00d28 = 0x0fe00d28, + VALIDATION_ERROR_0fe01790 = 0x0fe01790, + VALIDATION_ERROR_0fe01792 = 0x0fe01792, + VALIDATION_ERROR_0fe01794 = 0x0fe01794, + VALIDATION_ERROR_0fe01796 = 0x0fe01796, + VALIDATION_ERROR_0fe01798 = 0x0fe01798, + VALIDATION_ERROR_0fe0179a = 0x0fe0179a, + VALIDATION_ERROR_0fe0179c = 0x0fe0179c, + VALIDATION_ERROR_0fe0179e = 0x0fe0179e, + VALIDATION_ERROR_0fe017a0 = 0x0fe017a0, + VALIDATION_ERROR_0fe017a2 = 0x0fe017a2, + VALIDATION_ERROR_0fe017a4 = 0x0fe017a4, + VALIDATION_ERROR_0fe017a6 = 0x0fe017a6, + VALIDATION_ERROR_0fe017a8 = 0x0fe017a8, + VALIDATION_ERROR_0fe017aa = 0x0fe017aa, + VALIDATION_ERROR_0fe017ac = 0x0fe017ac, + VALIDATION_ERROR_0fe017ae = 0x0fe017ae, + VALIDATION_ERROR_0fe017b0 = 0x0fe017b0, + VALIDATION_ERROR_0fe017b2 = 0x0fe017b2, + VALIDATION_ERROR_0fe017b4 = 0x0fe017b4, + VALIDATION_ERROR_0fe017b6 = 0x0fe017b6, + VALIDATION_ERROR_0fe017b8 = 0x0fe017b8, + VALIDATION_ERROR_0fe017ba = 0x0fe017ba, + VALIDATION_ERROR_0fe017bc = 0x0fe017bc, + VALIDATION_ERROR_0fe017be = 0x0fe017be, + VALIDATION_ERROR_0fe017c0 = 0x0fe017c0, + VALIDATION_ERROR_0fe017c2 = 0x0fe017c2, + VALIDATION_ERROR_0fe017c4 = 0x0fe017c4, + VALIDATION_ERROR_0fe017c6 = 0x0fe017c6, VALIDATION_ERROR_0fe09005 = 0x0fe09005, VALIDATION_ERROR_0fe1c40d = 0x0fe1c40d, VALIDATION_ERROR_0fe1f801 = 0x0fe1f801, @@ -1237,7 +1256,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_10c30a1b = 0x10c30a1b, VALIDATION_ERROR_10e0097e = 0x10e0097e, VALIDATION_ERROR_10e09005 = 0x10e09005, - VALIDATION_ERROR_10e1c40d = 0x10e1c40d, VALIDATION_ERROR_10e2b00b = 0x10e2b00b, VALIDATION_ERROR_10e30a1b = 0x10e30a1b, VALIDATION_ERROR_1102b00b = 0x1102b00b, @@ -1308,7 +1326,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_12400692 = 0x12400692, VALIDATION_ERROR_12400694 = 0x12400694, VALIDATION_ERROR_12411a01 = 0x12411a01, - VALIDATION_ERROR_1241c40d = 0x1241c40d, VALIDATION_ERROR_12426c01 = 0x12426c01, VALIDATION_ERROR_12426e01 = 0x12426e01, VALIDATION_ERROR_1242b00b = 0x1242b00b, @@ -1462,7 +1479,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_1421c40d = 0x1421c40d, VALIDATION_ERROR_1422b00b = 0x1422b00b, VALIDATION_ERROR_144009b8 = 0x144009b8, - VALIDATION_ERROR_1441c40d = 0x1441c40d, VALIDATION_ERROR_1442b00b = 0x1442b00b, VALIDATION_ERROR_1442ee01 = 0x1442ee01, VALIDATION_ERROR_14600009 = 0x14600009, @@ -1504,7 +1520,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_1462ec01 = 0x1462ec01, VALIDATION_ERROR_14805a1b = 0x14805a1b, VALIDATION_ERROR_14814401 = 0x14814401, - VALIDATION_ERROR_1481c40d = 0x1481c40d, VALIDATION_ERROR_1482b00b = 0x1482b00b, VALIDATION_ERROR_14a004d8 = 0x14a004d8, VALIDATION_ERROR_14a004da = 0x14a004da, @@ -1587,6 +1602,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_15c002a6 = 0x15c002a6, VALIDATION_ERROR_15c00af4 = 0x15c00af4, VALIDATION_ERROR_15c00af6 = 0x15c00af6, + VALIDATION_ERROR_15c017d0 = 0x15c017d0, VALIDATION_ERROR_15c0441b = 0x15c0441b, VALIDATION_ERROR_15c04e01 = 0x15c04e01, VALIDATION_ERROR_15c1c40d = 0x15c1c40d, @@ -1685,18 +1701,15 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_17605601 = 0x17605601, VALIDATION_ERROR_1760fa01 = 0x1760fa01, VALIDATION_ERROR_17800009 = 0x17800009, - VALIDATION_ERROR_1780063c = 0x1780063c, - VALIDATION_ERROR_1780063e = 0x1780063e, VALIDATION_ERROR_17800640 = 0x17800640, - VALIDATION_ERROR_17800642 = 0x17800642, VALIDATION_ERROR_17800644 = 0x17800644, VALIDATION_ERROR_17800646 = 0x17800646, VALIDATION_ERROR_17800648 = 0x17800648, VALIDATION_ERROR_1780064a = 0x1780064a, - VALIDATION_ERROR_1780064c = 0x1780064c, VALIDATION_ERROR_1780064e = 0x1780064e, VALIDATION_ERROR_17800650 = 0x17800650, VALIDATION_ERROR_17800eba = 0x17800eba, + VALIDATION_ERROR_17800f04 = 0x17800f04, VALIDATION_ERROR_17802401 = 0x17802401, VALIDATION_ERROR_17802413 = 0x17802413, VALIDATION_ERROR_17802415 = 0x17802415, @@ -1951,6 +1964,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_19000e42 = 0x19000e42, VALIDATION_ERROR_19000e44 = 0x19000e44, VALIDATION_ERROR_19000e46 = 0x19000e46, + VALIDATION_ERROR_19000efa = 0x19000efa, VALIDATION_ERROR_19002401 = 0x19002401, VALIDATION_ERROR_19002413 = 0x19002413, VALIDATION_ERROR_19002415 = 0x19002415, @@ -2291,11 +2305,10 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_1ac02415 = 0x1ac02415, VALIDATION_ERROR_1ac03401 = 0x1ac03401, VALIDATION_ERROR_1ae00009 = 0x1ae00009, - VALIDATION_ERROR_1ae00652 = 0x1ae00652, VALIDATION_ERROR_1ae00654 = 0x1ae00654, - VALIDATION_ERROR_1ae00656 = 0x1ae00656, VALIDATION_ERROR_1ae00658 = 0x1ae00658, VALIDATION_ERROR_1ae00ebc = 0x1ae00ebc, + VALIDATION_ERROR_1ae00f06 = 0x1ae00f06, VALIDATION_ERROR_1ae02401 = 0x1ae02401, VALIDATION_ERROR_1ae02413 = 0x1ae02413, VALIDATION_ERROR_1ae02415 = 0x1ae02415, @@ -3087,6 +3100,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_2a005601 = 0x2a005601, VALIDATION_ERROR_2a008801 = 0x2a008801, VALIDATION_ERROR_2a008807 = 0x2a008807, + VALIDATION_ERROR_2a200c68 = 0x2a200c68, VALIDATION_ERROR_2a205601 = 0x2a205601, VALIDATION_ERROR_2a20a001 = 0x2a20a001, VALIDATION_ERROR_2a20a007 = 0x2a20a007, @@ -3180,6 +3194,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_2ca30401 = 0x2ca30401, VALIDATION_ERROR_2ca30601 = 0x2ca30601, VALIDATION_ERROR_2ca30603 = 0x2ca30603, + VALIDATION_ERROR_2cc00e98 = 0x2cc00e98, VALIDATION_ERROR_2cc18201 = 0x2cc18201, VALIDATION_ERROR_2cc18401 = 0x2cc18401, VALIDATION_ERROR_2cc27a01 = 0x2cc27a01, @@ -3441,6 +3456,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_33a05207 = 0x33a05207, VALIDATION_ERROR_33a05601 = 0x33a05601, VALIDATION_ERROR_33c00274 = 0x33c00274, + VALIDATION_ERROR_33c017ce = 0x33c017ce, VALIDATION_ERROR_33c05601 = 0x33c05601, VALIDATION_ERROR_33c12c01 = 0x33c12c01, VALIDATION_ERROR_33c13601 = 0x33c13601, @@ -3472,40 +3488,31 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3562b00b = 0x3562b00b, VALIDATION_ERROR_3581c40d = 0x3581c40d, VALIDATION_ERROR_3582b00b = 0x3582b00b, - VALIDATION_ERROR_35c1c40d = 0x35c1c40d, VALIDATION_ERROR_35c2b00b = 0x35c2b00b, - VALIDATION_ERROR_3601c40d = 0x3601c40d, VALIDATION_ERROR_3602b00b = 0x3602b00b, - VALIDATION_ERROR_3621c40d = 0x3621c40d, VALIDATION_ERROR_3622b00b = 0x3622b00b, VALIDATION_ERROR_3642b00b = 0x3642b00b, VALIDATION_ERROR_37e2b00b = 0x37e2b00b, VALIDATION_ERROR_3822b00b = 0x3822b00b, VALIDATION_ERROR_3842b00b = 0x3842b00b, - VALIDATION_ERROR_3861c40d = 0x3861c40d, VALIDATION_ERROR_3862b00b = 0x3862b00b, VALIDATION_ERROR_38800b20 = 0x38800b20, VALIDATION_ERROR_38800b22 = 0x38800b22, VALIDATION_ERROR_38800b24 = 0x38800b24, - VALIDATION_ERROR_3881c40d = 0x3881c40d, VALIDATION_ERROR_3882b00b = 0x3882b00b, VALIDATION_ERROR_38834a01 = 0x38834a01, VALIDATION_ERROR_38a00afa = 0x38a00afa, VALIDATION_ERROR_38a09005 = 0x38a09005, - VALIDATION_ERROR_38a1c40d = 0x38a1c40d, VALIDATION_ERROR_38a2b00b = 0x38a2b00b, VALIDATION_ERROR_38a34c01 = 0x38a34c01, VALIDATION_ERROR_38a34e1b = 0x38a34e1b, VALIDATION_ERROR_38c00af8 = 0x38c00af8, VALIDATION_ERROR_38c09005 = 0x38c09005, - VALIDATION_ERROR_38c1c40d = 0x38c1c40d, VALIDATION_ERROR_38c2b00b = 0x38c2b00b, - VALIDATION_ERROR_38e1c40d = 0x38e1c40d, VALIDATION_ERROR_38e2b00b = 0x38e2b00b, VALIDATION_ERROR_38e35001 = 0x38e35001, VALIDATION_ERROR_39400b4c = 0x39400b4c, VALIDATION_ERROR_39409e01 = 0x39409e01, - VALIDATION_ERROR_3941c40d = 0x3941c40d, VALIDATION_ERROR_3942b00b = 0x3942b00b, VALIDATION_ERROR_39609c01 = 0x39609c01, VALIDATION_ERROR_3961c40d = 0x3961c40d, @@ -3550,7 +3557,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3a42b00b = 0x3a42b00b, VALIDATION_ERROR_3a600b4e = 0x3a600b4e, VALIDATION_ERROR_3a60f401 = 0x3a60f401, - VALIDATION_ERROR_3a61c40d = 0x3a61c40d, VALIDATION_ERROR_3a62b00b = 0x3a62b00b, VALIDATION_ERROR_3a800b50 = 0x3a800b50, VALIDATION_ERROR_3a800b52 = 0x3a800b52, @@ -3598,7 +3604,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3b40c601 = 0x3b40c601, VALIDATION_ERROR_3b41c40d = 0x3b41c40d, VALIDATION_ERROR_3b42b00b = 0x3b42b00b, - VALIDATION_ERROR_3b61c40d = 0x3b61c40d, VALIDATION_ERROR_3b62b00b = 0x3b62b00b, VALIDATION_ERROR_3b800009 = 0x3b800009, VALIDATION_ERROR_3b800b30 = 0x3b800b30, @@ -3613,7 +3618,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3b800eae = 0x3b800eae, VALIDATION_ERROR_3b801a01 = 0x3b801a01, VALIDATION_ERROR_3b80a001 = 0x3b80a001, - VALIDATION_ERROR_3b81c40d = 0x3b81c40d, VALIDATION_ERROR_3b82b00b = 0x3b82b00b, VALIDATION_ERROR_3ba01a01 = 0x3ba01a01, VALIDATION_ERROR_3ba1c40d = 0x3ba1c40d, @@ -3644,23 +3648,18 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3c839c01 = 0x3c839c01, VALIDATION_ERROR_3ca2b00b = 0x3ca2b00b, VALIDATION_ERROR_3cc00b2e = 0x3cc00b2e, - VALIDATION_ERROR_3cc1c40d = 0x3cc1c40d, VALIDATION_ERROR_3cc2b00b = 0x3cc2b00b, VALIDATION_ERROR_3ce00bec = 0x3ce00bec, VALIDATION_ERROR_3ce00bee = 0x3ce00bee, - VALIDATION_ERROR_3ce1c40d = 0x3ce1c40d, VALIDATION_ERROR_3ce2b00b = 0x3ce2b00b, VALIDATION_ERROR_3ce3b201 = 0x3ce3b201, VALIDATION_ERROR_3ce3b41b = 0x3ce3b41b, VALIDATION_ERROR_3ce3b601 = 0x3ce3b601, - VALIDATION_ERROR_3d01c40d = 0x3d01c40d, VALIDATION_ERROR_3d02b00b = 0x3d02b00b, VALIDATION_ERROR_3d03ba01 = 0x3d03ba01, VALIDATION_ERROR_3d03e801 = 0x3d03e801, - VALIDATION_ERROR_3d21c40d = 0x3d21c40d, VALIDATION_ERROR_3d22b00b = 0x3d22b00b, VALIDATION_ERROR_3d23c601 = 0x3d23c601, - VALIDATION_ERROR_3d41c40d = 0x3d41c40d, VALIDATION_ERROR_3d42b00b = 0x3d42b00b, VALIDATION_ERROR_3d61c40d = 0x3d61c40d, VALIDATION_ERROR_3d62b00b = 0x3d62b00b, @@ -3673,7 +3672,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3da19601 = 0x3da19601, VALIDATION_ERROR_3da1c40d = 0x3da1c40d, VALIDATION_ERROR_3da2b00b = 0x3da2b00b, - VALIDATION_ERROR_3dc1c40d = 0x3dc1c40d, VALIDATION_ERROR_3dc2b00b = 0x3dc2b00b, VALIDATION_ERROR_3dc3c401 = 0x3dc3c401, VALIDATION_ERROR_3de05601 = 0x3de05601, @@ -3709,29 +3707,24 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_3e83c601 = 0x3e83c601, VALIDATION_ERROR_3ea00bf8 = 0x3ea00bf8, VALIDATION_ERROR_3ea3c601 = 0x3ea3c601, - VALIDATION_ERROR_3ec1c40d = 0x3ec1c40d, VALIDATION_ERROR_3ec2b00b = 0x3ec2b00b, VALIDATION_ERROR_3ee00c01 = 0x3ee00c01, VALIDATION_ERROR_3ee00c03 = 0x3ee00c03, VALIDATION_ERROR_3ee00c40 = 0x3ee00c40, VALIDATION_ERROR_3ee00c42 = 0x3ee00c42, VALIDATION_ERROR_3ee00c44 = 0x3ee00c44, - VALIDATION_ERROR_3f01c40d = 0x3f01c40d, VALIDATION_ERROR_3f02b00b = 0x3f02b00b, VALIDATION_ERROR_3f03ce1b = 0x3f03ce1b, VALIDATION_ERROR_3f03d001 = 0x3f03d001, VALIDATION_ERROR_3f200c66 = 0x3f200c66, - VALIDATION_ERROR_3f21c40d = 0x3f21c40d, VALIDATION_ERROR_3f22b00b = 0x3f22b00b, VALIDATION_ERROR_3f230601 = 0x3f230601, VALIDATION_ERROR_3f230603 = 0x3f230603, - VALIDATION_ERROR_3f41c40d = 0x3f41c40d, VALIDATION_ERROR_3f42b00b = 0x3f42b00b, VALIDATION_ERROR_3f43d201 = 0x3f43d201, VALIDATION_ERROR_3f600c54 = 0x3f600c54, VALIDATION_ERROR_3f600c56 = 0x3f600c56, VALIDATION_ERROR_3f600c58 = 0x3f600c58, - VALIDATION_ERROR_3f61c40d = 0x3f61c40d, VALIDATION_ERROR_3f62b00b = 0x3f62b00b, VALIDATION_ERROR_3f63e401 = 0x3f63e401, VALIDATION_ERROR_3f800ce2 = 0x3f800ce2, @@ -3768,7 +3761,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_40000c8c = 0x40000c8c, VALIDATION_ERROR_40000c8e = 0x40000c8e, VALIDATION_ERROR_40013e01 = 0x40013e01, - VALIDATION_ERROR_4001c40d = 0x4001c40d, VALIDATION_ERROR_4002b00b = 0x4002b00b, VALIDATION_ERROR_40200cc2 = 0x40200cc2, VALIDATION_ERROR_40200cc4 = 0x40200cc4, @@ -3780,7 +3772,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_40200cd0 = 0x40200cd0, VALIDATION_ERROR_40200cd2 = 0x40200cd2, VALIDATION_ERROR_40213e01 = 0x40213e01, - VALIDATION_ERROR_4021c40d = 0x4021c40d, VALIDATION_ERROR_4022b00b = 0x4022b00b, VALIDATION_ERROR_4023fe01 = 0x4023fe01, VALIDATION_ERROR_40405601 = 0x40405601, @@ -3791,7 +3782,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_4082b00b = 0x4082b00b, VALIDATION_ERROR_40a2b00b = 0x40a2b00b, VALIDATION_ERROR_40a3e601 = 0x40a3e601, - VALIDATION_ERROR_40c1c40d = 0x40c1c40d, VALIDATION_ERROR_40c2b00b = 0x40c2b00b, VALIDATION_ERROR_40c3ea01 = 0x40c3ea01, VALIDATION_ERROR_40e05601 = 0x40e05601, @@ -3807,11 +3797,9 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_41200dac = 0x41200dac, VALIDATION_ERROR_41200dae = 0x41200dae, VALIDATION_ERROR_41209c01 = 0x41209c01, - VALIDATION_ERROR_4121c40d = 0x4121c40d, VALIDATION_ERROR_4122b00b = 0x4122b00b, VALIDATION_ERROR_4141c40d = 0x4141c40d, VALIDATION_ERROR_4142b00b = 0x4142b00b, - VALIDATION_ERROR_4161c40d = 0x4161c40d, VALIDATION_ERROR_4162b00b = 0x4162b00b, VALIDATION_ERROR_41800db0 = 0x41800db0, VALIDATION_ERROR_41800db2 = 0x41800db2, @@ -3820,11 +3808,9 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_41805601 = 0x41805601, VALIDATION_ERROR_41809c01 = 0x41809c01, VALIDATION_ERROR_4183f401 = 0x4183f401, - VALIDATION_ERROR_41a1c40d = 0x41a1c40d, VALIDATION_ERROR_41a2b00b = 0x41a2b00b, VALIDATION_ERROR_41c00dd2 = 0x41c00dd2, VALIDATION_ERROR_41c09005 = 0x41c09005, - VALIDATION_ERROR_41c1c40d = 0x41c1c40d, VALIDATION_ERROR_41c2b00b = 0x41c2b00b, VALIDATION_ERROR_41c3f801 = 0x41c3f801, VALIDATION_ERROR_41e00009 = 0x41e00009, @@ -3845,20 +3831,15 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_42209003 = 0x42209003, VALIDATION_ERROR_4221c40d = 0x4221c40d, VALIDATION_ERROR_4222b00b = 0x4222b00b, - VALIDATION_ERROR_4241c40d = 0x4241c40d, VALIDATION_ERROR_4242b00b = 0x4242b00b, - VALIDATION_ERROR_4261c40d = 0x4261c40d, VALIDATION_ERROR_4262b00b = 0x4262b00b, - VALIDATION_ERROR_4281c40d = 0x4281c40d, VALIDATION_ERROR_4282b00b = 0x4282b00b, VALIDATION_ERROR_42a2b00b = 0x42a2b00b, - VALIDATION_ERROR_42c1c40d = 0x42c1c40d, VALIDATION_ERROR_42c2b00b = 0x42c2b00b, VALIDATION_ERROR_42e00e30 = 0x42e00e30, VALIDATION_ERROR_42e00e32 = 0x42e00e32, VALIDATION_ERROR_42e00e34 = 0x42e00e34, VALIDATION_ERROR_42e00e36 = 0x42e00e36, - VALIDATION_ERROR_42e1c40d = 0x42e1c40d, VALIDATION_ERROR_42e2b00b = 0x42e2b00b, VALIDATION_ERROR_43040001 = 0x43040001, VALIDATION_ERROR_43205601 = 0x43205601, @@ -3893,7 +3874,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_43c42201 = 0x43c42201, VALIDATION_ERROR_43e00ef4 = 0x43e00ef4, VALIDATION_ERROR_43e09005 = 0x43e09005, - VALIDATION_ERROR_43e1c40d = 0x43e1c40d, VALIDATION_ERROR_43e2b00b = 0x43e2b00b, VALIDATION_ERROR_43e40a01 = 0x43e40a01, VALIDATION_ERROR_43e40a03 = 0x43e40a03, @@ -3908,15 +3888,15 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_44241201 = 0x44241201, VALIDATION_ERROR_44241203 = 0x44241203, VALIDATION_ERROR_44242801 = 0x44242801, - VALIDATION_ERROR_4441c40d = 0x4441c40d, VALIDATION_ERROR_4442b00b = 0x4442b00b, + VALIDATION_ERROR_4462b00b = 0x4462b00b, + VALIDATION_ERROR_4464141b = 0x4464141b, + VALIDATION_ERROR_44641601 = 0x44641601, VALIDATION_ERROR_44800ecc = 0x44800ecc, - VALIDATION_ERROR_4481c40d = 0x4481c40d, VALIDATION_ERROR_4482b00b = 0x4482b00b, VALIDATION_ERROR_44a00eb0 = 0x44a00eb0, VALIDATION_ERROR_44a00eb2 = 0x44a00eb2, VALIDATION_ERROR_44a01a01 = 0x44a01a01, - VALIDATION_ERROR_44a1c40d = 0x44a1c40d, VALIDATION_ERROR_44a2b00b = 0x44a2b00b, VALIDATION_ERROR_44c00eb4 = 0x44c00eb4, VALIDATION_ERROR_44c00eb6 = 0x44c00eb6, @@ -3937,12 +3917,10 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_4521f401 = 0x4521f401, VALIDATION_ERROR_45400eee = 0x45400eee, VALIDATION_ERROR_45429c01 = 0x45429c01, - VALIDATION_ERROR_4561c40d = 0x4561c40d, VALIDATION_ERROR_4562b00b = 0x4562b00b, VALIDATION_ERROR_45a05601 = 0x45a05601, VALIDATION_ERROR_45a10001 = 0x45a10001, VALIDATION_ERROR_45a39c01 = 0x45a39c01, - VALIDATION_ERROR_45c1c40d = 0x45c1c40d, VALIDATION_ERROR_45c2b00b = 0x45c2b00b, VALIDATION_ERROR_45e02401 = 0x45e02401, VALIDATION_ERROR_45e02413 = 0x45e02413, @@ -3960,6 +3938,34 @@ enum UNIQUE_VALIDATION_ERROR_CODE { VALIDATION_ERROR_4661c201 = 0x4661c201, VALIDATION_ERROR_46805601 = 0x46805601, VALIDATION_ERROR_46825c01 = 0x46825c01, + VALIDATION_ERROR_46a01774 = 0x46a01774, + VALIDATION_ERROR_46a01776 = 0x46a01776, + VALIDATION_ERROR_46a01778 = 0x46a01778, + VALIDATION_ERROR_46a0177a = 0x46a0177a, + VALIDATION_ERROR_46a0177c = 0x46a0177c, + VALIDATION_ERROR_46a0177e = 0x46a0177e, + VALIDATION_ERROR_46a01780 = 0x46a01780, + VALIDATION_ERROR_46a01782 = 0x46a01782, + VALIDATION_ERROR_46a01784 = 0x46a01784, + VALIDATION_ERROR_46a01786 = 0x46a01786, + VALIDATION_ERROR_46a01788 = 0x46a01788, + VALIDATION_ERROR_46a0178a = 0x46a0178a, + VALIDATION_ERROR_46a0178c = 0x46a0178c, + VALIDATION_ERROR_46a0178e = 0x46a0178e, + VALIDATION_ERROR_46a2b00b = 0x46a2b00b, + VALIDATION_ERROR_46a42a01 = 0x46a42a01, + VALIDATION_ERROR_46a42a03 = 0x46a42a03, + VALIDATION_ERROR_46c017ca = 0x46c017ca, + VALIDATION_ERROR_46c017cc = 0x46c017cc, + VALIDATION_ERROR_46c2b00b = 0x46c2b00b, + VALIDATION_ERROR_46c42c01 = 0x46c42c01, + VALIDATION_ERROR_46e2b00b = 0x46e2b00b, + VALIDATION_ERROR_4702b00b = 0x4702b00b, + VALIDATION_ERROR_4722b00b = 0x4722b00b, + VALIDATION_ERROR_4742b00b = 0x4742b00b, + VALIDATION_ERROR_47600e9a = 0x47600e9a, + VALIDATION_ERROR_47600e9c = 0x47600e9c, + VALIDATION_ERROR_47600e9e = 0x47600e9e, VALIDATION_ERROR_MAX_ENUM = 1, }; @@ -4017,7 +4023,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_00c00c86, "The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-01603)"}, {VALIDATION_ERROR_00c00c88, "The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-01604)"}, {VALIDATION_ERROR_00c00c8a, "The spec valid usage text states 'If the pNext chain includes VkBindBufferMemoryDeviceGroupInfo, all instances of memory specified by VkBindBufferMemoryDeviceGroupInfo::pDeviceIndices must have been allocated' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-pNext-01605)"}, - {VALIDATION_ERROR_00c00ed8, "The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::buffer was not VK_NULL_HANDLE, then buffer must equal VkMemoryDedicatedAllocateInfo::buffer and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfoKHR-memory-01900)"}, + {VALIDATION_ERROR_00c00ed8, "The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::buffer was not VK_NULL_HANDLE, then buffer must equal VkMemoryDedicatedAllocateInfo::buffer and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-memory-01900)"}, {VALIDATION_ERROR_00c01a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-buffer-parameter)"}, {VALIDATION_ERROR_00c0c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-memory-parameter)"}, {VALIDATION_ERROR_00c1c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkBindBufferMemoryDeviceGroupInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryInfo-pNext-pNext)"}, @@ -4047,7 +4053,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_00e00cbc, "The spec valid usage text states 'If image was created with a valid swapchain handle in VkImageSwapchainCreateInfoKHR::swapchain, then the pNext chain must include a valid instance of VkBindImageMemorySwapchainInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-image-01630)"}, {VALIDATION_ERROR_00e00cbe, "The spec valid usage text states 'If the pNext chain includes an instance of VkBindImageMemorySwapchainInfoKHR, memory must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-01631)"}, {VALIDATION_ERROR_00e00cc0, "The spec valid usage text states 'If the pNext chain does not include an instance of VkBindImageMemorySwapchainInfoKHR, memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-01632)"}, - {VALIDATION_ERROR_00e00ede, "The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::image was not VK_NULL_HANDLE, then image must equal VkMemoryDedicatedAllocateInfo::image and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfoKHR-memory-01903)"}, + {VALIDATION_ERROR_00e00ede, "The spec valid usage text states 'If the VkMemoryAllocateInfo provided when memory was allocated included an instance of VkMemoryDedicatedAllocateInfo in its pNext chain, and VkMemoryDedicatedAllocateInfo::image was not VK_NULL_HANDLE, then image must equal VkMemoryDedicatedAllocateInfo::image and memoryOffset must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-memory-01903)"}, {VALIDATION_ERROR_00e0a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-image-parameter)"}, {VALIDATION_ERROR_00e1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkBindImageMemoryDeviceGroupInfo, VkBindImageMemorySwapchainInfoKHR, or VkBindImagePlaneMemoryInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-pNext-pNext)"}, {VALIDATION_ERROR_00e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryInfo-sType-sType)"}, @@ -4225,6 +4231,10 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_032002b6, "The spec valid usage text states 'dstBinding must be a valid binding within dstSet' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstBinding-00347)"}, {VALIDATION_ERROR_032002b8, "The spec valid usage text states 'The sum of dstArrayElement and descriptorCount must be less than or equal to the number of array elements in the descriptor set binding specified by dstBinding, and all applicable consecutive bindings, as described by descriptorsets-updates-consecutive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstArrayElement-00348)"}, {VALIDATION_ERROR_032002ba, "The spec valid usage text states 'If srcSet is equal to dstSet, then the source and destination ranges of descriptors must not overlap, where the ranges may include array elements from consecutive bindings as described by descriptorsets-updates-consecutive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-00349)"}, + {VALIDATION_ERROR_03200efc, "The spec valid usage text states 'If srcSet's layout was created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set, then dstSet's layout must also have been created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01918)"}, + {VALIDATION_ERROR_03200efe, "The spec valid usage text states 'If srcSet's layout was created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set, then dstSet's layout must also have been created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01919)"}, + {VALIDATION_ERROR_03200f00, "The spec valid usage text states 'If the descriptor pool from which srcSet was allocated was created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set, then the descriptor pool from which dstSet was allocated must also have been created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01920)"}, + {VALIDATION_ERROR_03200f02, "The spec valid usage text states 'If the descriptor pool from which srcSet was allocated was created without the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set, then the descriptor pool from which dstSet was allocated must also have been created without the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-01921)"}, {VALIDATION_ERROR_03207601, "The spec valid usage text states 'dstSet must be a valid VkDescriptorSet handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-dstSet-parameter)"}, {VALIDATION_ERROR_0321c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-pNext-pNext)"}, {VALIDATION_ERROR_0322b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-sType-sType)"}, @@ -4254,7 +4264,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_03a2f41b, "The spec valid usage text states 'tagSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugMarkerObjectTagInfoEXT-tagSize-arraylength)"}, {VALIDATION_ERROR_03c00ad2, "The spec valid usage text states 'pfnCallback must be a valid PFN_vkDebugReportCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)"}, {VALIDATION_ERROR_03c09001, "The spec valid usage text states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter)"}, - {VALIDATION_ERROR_03c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_03c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_03e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationBufferCreateInfoNV-sType-sType)"}, {VALIDATION_ERROR_040007c4, "The spec valid usage text states 'If dedicatedAllocation is VK_TRUE, VkImageCreateInfo::flags must not include VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationImageCreateInfoNV-dedicatedAllocation-00994)"}, @@ -4291,9 +4300,10 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_04c00264, "The spec valid usage text states 'descriptorSetCount must not be greater than the number of sets that are currently available for allocation in descriptorPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-00306)"}, {VALIDATION_ERROR_04c00266, "The spec valid usage text states 'descriptorPool must have enough free descriptor capacity remaining to allocate the descriptor sets of the specified layouts' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorPool-00307)"}, {VALIDATION_ERROR_04c00268, "The spec valid usage text states 'Each element of pSetLayouts must not have been created with VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-00308)"}, + {VALIDATION_ERROR_04c017c8, "The spec valid usage text states 'If any element of pSetLayouts was created with the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set, descriptorPool must have been created with the VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-03044)"}, {VALIDATION_ERROR_04c04601, "The spec valid usage text states 'descriptorPool must be a valid VkDescriptorPool handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorPool-parameter)"}, {VALIDATION_ERROR_04c04a1b, "The spec valid usage text states 'descriptorSetCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-arraylength)"}, - {VALIDATION_ERROR_04c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pNext-pNext)"}, + {VALIDATION_ERROR_04c1c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountAllocateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pNext-pNext)"}, {VALIDATION_ERROR_04c22c01, "The spec valid usage text states 'pSetLayouts must be a valid pointer to an array of descriptorSetCount valid VkDescriptorSetLayout handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-pSetLayouts-parameter)"}, {VALIDATION_ERROR_04c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetAllocateInfo-sType-sType)"}, {VALIDATION_ERROR_04e00234, "The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_SAMPLER or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, and descriptorCount is not 0 and pImmutableSamplers is not NULL, pImmutableSamplers must be a valid pointer to an array of descriptorCount valid VkSampler handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutBinding-descriptorType-00282)"}, @@ -4303,9 +4313,11 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0500022e, "The spec valid usage text states 'The VkDescriptorSetLayoutBinding::binding members of the elements of the pBindings array must each have different values.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-binding-00279)"}, {VALIDATION_ERROR_05000230, "The spec valid usage text states 'If flags contains VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all elements of pBindings must not have a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-00280)"}, {VALIDATION_ERROR_05000232, "The spec valid usage text states 'If flags contains VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then the total number of elements of all bindings must be less than or equal to VkPhysicalDevicePushDescriptorPropertiesKHR::maxPushDescriptors' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-00281)"}, + {VALIDATION_ERROR_05001770, "The spec valid usage text states 'If any binding has the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT bit set, flags must include VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-03000)"}, + {VALIDATION_ERROR_05001772, "The spec valid usage text states 'If any binding has the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT bit set, then all bindings must not have descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-descriptorType-03001)"}, {VALIDATION_ERROR_05009001, "The spec valid usage text states 'flags must be a valid combination of VkDescriptorSetLayoutCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-flags-parameter)"}, {VALIDATION_ERROR_0500fc01, "The spec valid usage text states 'If bindingCount is not 0, pBindings must be a valid pointer to an array of bindingCount valid VkDescriptorSetLayoutBinding structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pBindings-parameter)"}, - {VALIDATION_ERROR_0501c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext)"}, + {VALIDATION_ERROR_0501c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetLayoutBindingFlagsCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_0502b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDescriptorSetLayoutCreateInfo-sType-sType)"}, {VALIDATION_ERROR_05200009, "The spec valid usage text states 'Both of descriptorSetLayout, and pipelineLayout that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorUpdateTemplateCreateInfo-commonparent)"}, {VALIDATION_ERROR_052002bc, "The spec valid usage text states 'If templateType is VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET, descriptorSetLayout must be a valid VkDescriptorSetLayout handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00350)"}, @@ -4328,7 +4340,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_05600e60, "The spec valid usage text states 'ppEnabledExtensionNames must not contain VK_AMD_negative_viewport_height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-01840)"}, {VALIDATION_ERROR_05609005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-flags-zerobitmask)"}, {VALIDATION_ERROR_05615a01, "The spec valid usage text states 'If pEnabledFeatures is not NULL, pEnabledFeatures must be a valid pointer to a valid VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter)"}, - {VALIDATION_ERROR_0561c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupDeviceCreateInfo, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceFeatures2, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)"}, + {VALIDATION_ERROR_0561c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupDeviceCreateInfo, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceDescriptorIndexingFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_0561fe01, "The spec valid usage text states 'pQueueCreateInfos must be a valid pointer to an array of queueCreateInfoCount valid VkDeviceQueueCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter)"}, {VALIDATION_ERROR_05628e01, "The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a valid pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter)"}, {VALIDATION_ERROR_05629001, "The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a valid pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter)"}, @@ -4419,7 +4431,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0782b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDisplaySurfaceCreateInfoKHR-sType-sType)"}, {VALIDATION_ERROR_07830201, "The spec valid usage text states 'transform must be a valid VkSurfaceTransformFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDisplaySurfaceCreateInfoKHR-transform-parameter)"}, {VALIDATION_ERROR_07a00450, "The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-None-00552)"}, - {VALIDATION_ERROR_07a00452, "The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the currently bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-indexSize-00553)"}, + {VALIDATION_ERROR_07a00452, "The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-indexSize-00553)"}, {VALIDATION_ERROR_07a00454, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, firstInstance must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndexedIndirectCommand-firstInstance-00554)"}, {VALIDATION_ERROR_07c003e8, "The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndirectCommand-None-00500)"}, {VALIDATION_ERROR_07c003ea, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, firstInstance must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDrawIndirectCommand-firstInstance-00501)"}, @@ -4428,35 +4440,26 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_07e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-sType-sType)"}, {VALIDATION_ERROR_08000520, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-00656)"}, {VALIDATION_ERROR_08009e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-parameter)"}, - {VALIDATION_ERROR_0801c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-pNext-pNext)"}, {VALIDATION_ERROR_0802b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-sType-sType)"}, {VALIDATION_ERROR_08209e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)"}, - {VALIDATION_ERROR_0821c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_0822b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)"}, {VALIDATION_ERROR_08400522, "The spec valid usage text states 'If VkExportMemoryAllocateInfo::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, VkExportMemoryWin32HandleInfoKHR must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657)"}, {VALIDATION_ERROR_0840f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter)"}, - {VALIDATION_ERROR_0841c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_0842b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType)"}, {VALIDATION_ERROR_0860f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)"}, - {VALIDATION_ERROR_0861c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_0862b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)"}, {VALIDATION_ERROR_088008c8, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphoreProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-01124)"}, {VALIDATION_ERROR_08809e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter)"}, - {VALIDATION_ERROR_0881c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_0882b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-sType-sType)"}, {VALIDATION_ERROR_08a008ca, "The spec valid usage text states 'If VkExportSemaphoreCreateInfo::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT, VkExportSemaphoreWin32HandleInfoKHR must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125)"}, {VALIDATION_ERROR_08a0f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter)"}, - {VALIDATION_ERROR_08a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_08a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType)"}, {VALIDATION_ERROR_08c09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter)"}, - {VALIDATION_ERROR_08c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_08c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-sType-sType)"}, {VALIDATION_ERROR_08e09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter)"}, {VALIDATION_ERROR_08e09e03, "The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask)"}, - {VALIDATION_ERROR_08e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_08e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-sType-sType)"}, {VALIDATION_ERROR_09009e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)"}, - {VALIDATION_ERROR_0901c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_0902b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-sType-sType)"}, {VALIDATION_ERROR_09209001, "The spec valid usage text states 'flags must be a valid combination of VkFenceCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-flags-parameter)"}, {VALIDATION_ERROR_0921c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportFenceCreateInfo or VkExportFenceWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)"}, @@ -4689,6 +4692,8 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_09e00ec6, "The spec valid usage text states 'If any of the bits VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT are set, VK_IMAGE_CREATE_PROTECTED_BIT must not also be set.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-None-01891)"}, {VALIDATION_ERROR_09e00ec8, "The spec valid usage text states 'If the pNext chain includes a VkExternalMemoryImageCreateInfo structure whose handleTypes member includes VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01892)"}, {VALIDATION_ERROR_09e00eca, "The spec valid usage text states 'If the pNext chain includes a VkExternalFormatANDROID structure whose externalFormat member is not 0:' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01893)"}, + {VALIDATION_ERROR_09e00f08, "The spec valid usage text states 'If the sparse aliased residency feature is not enabled, flags must not contain VK_IMAGE_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-01924)"}, + {VALIDATION_ERROR_09e00f0a, "The spec valid usage text states 'If any of the bits VK_IMAGE_CREATE_SPARSE_BINDING_BIT, VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT are set, VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT must not also be set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-None-01925)"}, {VALIDATION_ERROR_09e09001, "The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-parameter)"}, {VALIDATION_ERROR_09e09201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-format-parameter)"}, {VALIDATION_ERROR_09e0ac01, "The spec valid usage text states 'imageType must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-imageType-parameter)"}, @@ -4816,7 +4821,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0ae00be0, "The spec valid usage text states 'fd must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01520)"}, {VALIDATION_ERROR_0ae00da4, "The spec valid usage text states 'The memory represented by fd must have been created from a physical device and driver that is compatible with device and handleType, as described in external-memory-handle-types-compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01746)"}, {VALIDATION_ERROR_0ae09c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)"}, - {VALIDATION_ERROR_0ae1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_0ae2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-sType-sType)"}, {VALIDATION_ERROR_0b000524, "The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658)"}, {VALIDATION_ERROR_0b000526, "The spec valid usage text states 'The memory from which handle was exported, or the memory named by name must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659)"}, @@ -4828,12 +4832,10 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0b000bdc, "The spec valid usage text states 'If handle is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518)"}, {VALIDATION_ERROR_0b000bde, "The spec valid usage text states 'If name is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-name-01519)"}, {VALIDATION_ERROR_0b009c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)"}, - {VALIDATION_ERROR_0b01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_0b02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType)"}, {VALIDATION_ERROR_0b200a5e, "The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)"}, {VALIDATION_ERROR_0b200a60, "The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)"}, {VALIDATION_ERROR_0b209c01, "The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)"}, - {VALIDATION_ERROR_0b21c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_0b22b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)"}, {VALIDATION_ERROR_0b4008ee, "The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01143)"}, {VALIDATION_ERROR_0b400c10, "The spec valid usage text states 'fd must obey any requirements listed for handleType in external semaphore handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-fd-01544)"}, @@ -4975,7 +4977,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0d809001, "The spec valid usage text states 'flags must be a valid combination of VkObjectEntryUsageFlagBitsNVX values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-flags-parameter)"}, {VALIDATION_ERROR_0d809003, "The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-flags-requiredbitmask)"}, {VALIDATION_ERROR_0d830401, "The spec valid usage text states 'type must be a valid VkObjectEntryTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-type-parameter)"}, - {VALIDATION_ERROR_0da1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_0da2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType)"}, {VALIDATION_ERROR_0dc09001, "The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-flags-parameter)"}, {VALIDATION_ERROR_0dc09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-handleType-parameter)"}, @@ -4988,9 +4989,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0e009c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter)"}, {VALIDATION_ERROR_0e01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext)"}, {VALIDATION_ERROR_0e02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-sType-sType)"}, - {VALIDATION_ERROR_0e41c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevice16BitStorageFeatures, VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceSamplerYcbcrConversionFeatures, VkPhysicalDeviceShaderDrawParameterFeatures, or VkPhysicalDeviceVariablePointerFeatures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-pNext-pNext)"}, {VALIDATION_ERROR_0e42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-sType-sType)"}, - {VALIDATION_ERROR_0e42b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2-sType-unique)"}, {VALIDATION_ERROR_0e609001, "The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-flags-parameter)"}, {VALIDATION_ERROR_0e609201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-format-parameter)"}, {VALIDATION_ERROR_0e61c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2-pNext-pNext)"}, @@ -5002,7 +5001,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0e800488, "The spec valid usage text states 'If multiviewGeometryShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-multiviewGeometryShader-00580)"}, {VALIDATION_ERROR_0e80048a, "The spec valid usage text states 'If multiviewTessellationShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-multiviewTessellationShader-00581)"}, {VALIDATION_ERROR_0e82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeatures-sType-sType)"}, - {VALIDATION_ERROR_0ea1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-pNext-pNext)"}, {VALIDATION_ERROR_0ea2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-sType-sType)"}, {VALIDATION_ERROR_0ec0088e, "The spec valid usage text states 'samples must be a bit value that is set in VkImageFormatProperties::sampleCounts returned by vkGetPhysicalDeviceImageFormatProperties with format, type, tiling, and usage equal to those in this command and flags equal to the value that is set in VkImageCreateInfo::flags when the image is created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-01095)"}, {VALIDATION_ERROR_0ec09201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSparseImageFormatInfo2-format-parameter)"}, @@ -5055,7 +5053,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0f80048c, "The spec valid usage text states 'discardRectangleCount must be between 0 and VkPhysicalDeviceDiscardRectanglePropertiesEXT::maxDiscardRectangles, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582)"}, {VALIDATION_ERROR_0f805e01, "The spec valid usage text states 'discardRectangleMode must be a valid VkDiscardRectangleModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter)"}, {VALIDATION_ERROR_0f809005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)"}, - {VALIDATION_ERROR_0f81c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_0f82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_0fa00b44, "The spec valid usage text states 'Each element of pDynamicStates must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442)"}, {VALIDATION_ERROR_0fa07c1b, "The spec valid usage text states 'dynamicStateCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength)"}, @@ -5087,6 +5084,34 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_0fe00d24, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682)"}, {VALIDATION_ERROR_0fe00d26, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683)"}, {VALIDATION_ERROR_0fe00d28, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684)"}, + {VALIDATION_ERROR_0fe01790, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03016)"}, + {VALIDATION_ERROR_0fe01792, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03017)"}, + {VALIDATION_ERROR_0fe01794, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03018)"}, + {VALIDATION_ERROR_0fe01796, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03019)"}, + {VALIDATION_ERROR_0fe01798, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03020)"}, + {VALIDATION_ERROR_0fe0179a, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03021)"}, + {VALIDATION_ERROR_0fe0179c, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03022)"}, + {VALIDATION_ERROR_0fe0179e, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER and VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03023)"}, + {VALIDATION_ERROR_0fe017a0, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER and VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03024)"}, + {VALIDATION_ERROR_0fe017a2, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03025)"}, + {VALIDATION_ERROR_0fe017a4, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03026)"}, + {VALIDATION_ERROR_0fe017a6, "The spec valid usage text states 'The total number of descriptors with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible to any given shader stage across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxPerStageDescriptorUpdateAfterBindInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03027)"}, + {VALIDATION_ERROR_0fe017a8, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03028)"}, + {VALIDATION_ERROR_0fe017aa, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03029)"}, + {VALIDATION_ERROR_0fe017ac, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03030)"}, + {VALIDATION_ERROR_0fe017ae, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03031)"}, + {VALIDATION_ERROR_0fe017b0, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03032)"}, + {VALIDATION_ERROR_0fe017b2, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03033)"}, + {VALIDATION_ERROR_0fe017b4, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03034)"}, + {VALIDATION_ERROR_0fe017b6, "The spec valid usage text states 'The total number of descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set with a descriptorType of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceLimits::maxDescriptorSetInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-descriptorType-03035)"}, + {VALIDATION_ERROR_0fe017b8, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_SAMPLER and VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindSamplers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036)"}, + {VALIDATION_ERROR_0fe017ba, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader stagess and and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindUniformBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037)"}, + {VALIDATION_ERROR_0fe017bc, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindUniformBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038)"}, + {VALIDATION_ERROR_0fe017be, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageBuffers' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039)"}, + {VALIDATION_ERROR_0fe017c0, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageBuffersDynamic' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040)"}, + {VALIDATION_ERROR_0fe017c2, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, and VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindSampledImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041)"}, + {VALIDATION_ERROR_0fe017c4, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, and VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindStorageImages' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042)"}, + {VALIDATION_ERROR_0fe017c6, "The spec valid usage text states 'The total number of descriptors of the type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT accessible across all shader stages and across all elements of pSetLayouts must be less than or equal to VkPhysicalDeviceDescriptorIndexingPropertiesEXT::maxDescriptorSetUpdateAfterBindInputAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043)"}, {VALIDATION_ERROR_0fe09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask)"}, {VALIDATION_ERROR_0fe1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_0fe1f801, "The spec valid usage text states 'If pushConstantRangeCount is not 0, pPushConstantRanges must be a valid pointer to an array of pushConstantRangeCount valid VkPushConstantRange structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter)"}, @@ -5167,7 +5192,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_10c30a1b, "The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength)"}, {VALIDATION_ERROR_10e0097e, "The spec valid usage text states 'viewportCount must match the viewportCount set in VkPipelineViewportStateCreateInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215)"}, {VALIDATION_ERROR_10e09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask)"}, - {VALIDATION_ERROR_10e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_10e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType)"}, {VALIDATION_ERROR_10e30a1b, "The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength)"}, {VALIDATION_ERROR_1102b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType)"}, @@ -5238,7 +5262,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_12400692, "The spec valid usage text states 'Each view index must not be set in more than one element of pCorrelationMasks' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841)"}, {VALIDATION_ERROR_12400694, "The spec valid usage text states 'If an element of pViewOffsets is non-zero, the corresponding VkSubpassDependency structure must have different values of srcSubpass and dstSubpass.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-00842)"}, {VALIDATION_ERROR_12411a01, "The spec valid usage text states 'If correlationMaskCount is not 0, pCorrelationMasks must be a valid pointer to an array of correlationMaskCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter)"}, - {VALIDATION_ERROR_1241c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_12426c01, "The spec valid usage text states 'If subpassCount is not 0, pViewMasks must be a valid pointer to an array of subpassCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter)"}, {VALIDATION_ERROR_12426e01, "The spec valid usage text states 'If dependencyCount is not 0, pViewOffsets must be a valid pointer to an array of dependencyCount int32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter)"}, {VALIDATION_ERROR_1242b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-sType-sType)"}, @@ -5392,7 +5415,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1421c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-pNext-pNext)"}, {VALIDATION_ERROR_1422b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-sType-sType)"}, {VALIDATION_ERROR_144009b8, "The spec valid usage text states 'The bits in surfaceCounters must be supported by VkSwapchainCreateInfoKHR::surface, as reported by vkGetPhysicalDeviceSurfaceCapabilities2EXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244)"}, - {VALIDATION_ERROR_1441c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_1442b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_1442ee01, "The spec valid usage text states 'surfaceCounters must be a valid combination of VkSurfaceCounterFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter)"}, {VALIDATION_ERROR_14600009, "The spec valid usage text states 'Both of oldSwapchain, and surface that are valid handles must have been created, allocated, or retrieved from the same VkInstance' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-commonparent)"}, @@ -5434,7 +5456,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1462ec01, "The spec valid usage text states 'surface must be a valid VkSurfaceKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-parameter)"}, {VALIDATION_ERROR_14805a1b, "The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)"}, {VALIDATION_ERROR_14814401, "The spec valid usage text states 'pDisabledValidationChecks must be a valid pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)"}, - {VALIDATION_ERROR_1481c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pNext-pNext)"}, {VALIDATION_ERROR_1482b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-sType-sType)"}, {VALIDATION_ERROR_14a004d8, "The spec valid usage text states 'location must be less than VkPhysicalDeviceLimits::maxVertexInputAttributes' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-location-00620)"}, {VALIDATION_ERROR_14a004da, "The spec valid usage text states 'binding must be less than VkPhysicalDeviceLimits::maxVertexInputBindings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-binding-00621)"}, @@ -5517,6 +5538,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_15c002a6, "The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, the imageView member of each element of pImageInfo must have been created with VK_IMAGE_USAGE_STORAGE_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-00339)"}, {VALIDATION_ERROR_15c00af4, "The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, for each descriptor that will be accessed via load or store operations the imageLayout member for corresponding elements of pImageInfo must be VK_IMAGE_LAYOUT_GENERAL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-01402)"}, {VALIDATION_ERROR_15c00af6, "The spec valid usage text states 'If descriptorType is VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, the imageLayout member of each element of pImageInfo must be VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL or VK_IMAGE_LAYOUT_GENERAL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-01403)"}, + {VALIDATION_ERROR_15c017d0, "The spec valid usage text states 'All consecutive bindings updated via a single VkWriteDescriptorSet structure, except those with a descriptorCount of zero, must have identical VkDescriptorBindingFlagBitsEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorCount-03048)"}, {VALIDATION_ERROR_15c0441b, "The spec valid usage text states 'descriptorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorCount-arraylength)"}, {VALIDATION_ERROR_15c04e01, "The spec valid usage text states 'descriptorType must be a valid VkDescriptorType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-descriptorType-parameter)"}, {VALIDATION_ERROR_15c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWriteDescriptorSet-pNext-pNext)"}, @@ -5615,18 +5637,15 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_17605601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory2-device-parameter)"}, {VALIDATION_ERROR_1760fa01, "The spec valid usage text states 'pBindInfos must be a valid pointer to an array of bindInfoCount valid VkBindImageMemoryInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory2-pBindInfos-parameter)"}, {VALIDATION_ERROR_17800009, "The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commonparent)"}, - {VALIDATION_ERROR_1780063c, "The spec valid usage text states 'The query identified by queryPool and query must currently not be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00798)"}, - {VALIDATION_ERROR_1780063e, "The spec valid usage text states 'The query identified by queryPool and query must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00799)"}, {VALIDATION_ERROR_17800640, "The spec valid usage text states 'If the precise occlusion queries feature is not enabled, or the queryType used to create queryPool was not VK_QUERY_TYPE_OCCLUSION, flags must not contain VK_QUERY_CONTROL_PRECISE_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00800)"}, - {VALIDATION_ERROR_17800642, "The spec valid usage text states 'queryPool must have been created with a queryType that differs from that of any other queries that have been made active, and are currently still active within commandBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-00801)"}, {VALIDATION_ERROR_17800644, "The spec valid usage text states 'query must be less than the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-query-00802)"}, {VALIDATION_ERROR_17800646, "The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_OCCLUSION, the VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00803)"}, {VALIDATION_ERROR_17800648, "The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_PIPELINE_STATISTICS and any of the pipelineStatistics indicate graphics operations, the VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00804)"}, {VALIDATION_ERROR_1780064a, "The spec valid usage text states 'If the queryType used to create queryPool was VK_QUERY_TYPE_PIPELINE_STATISTICS and any of the pipelineStatistics indicate compute operations, the VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryType-00805)"}, - {VALIDATION_ERROR_1780064c, "The spec valid usage text states 'All queries used by the command must not be active' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-None-00806)"}, - {VALIDATION_ERROR_1780064e, "The spec valid usage text states 'All queries used by the command must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-None-00807)"}, + {VALIDATION_ERROR_1780064e, "The spec valid usage text states 'All queries used by the command must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-None-00807)"}, {VALIDATION_ERROR_17800650, "The spec valid usage text states 'If vkCmdBeginQuery is called within a render pass instance, the sum of query and the number of bits set in the current subpass's view mask must be less than or equal to the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-query-00808)"}, {VALIDATION_ERROR_17800eba, "The spec valid usage text states 'commandBuffer must not be a protected command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-01885)"}, + {VALIDATION_ERROR_17800f04, "The spec valid usage text states 'queryPool must have been created with a queryType that differs from that of any queries that are active within commandBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-queryPool-01922)"}, {VALIDATION_ERROR_17802401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-parameter)"}, {VALIDATION_ERROR_17802413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-recording)"}, {VALIDATION_ERROR_17802415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBeginQuery-commandBuffer-cmdpool)"}, @@ -5881,6 +5900,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_19000e42, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01825)"}, {VALIDATION_ERROR_19000e44, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01826)"}, {VALIDATION_ERROR_19000e46, "The spec valid usage text states 'If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-01827)"}, + {VALIDATION_ERROR_19000efa, "The spec valid usage text states 'srcImageLayout must be VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, or VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdCopyImage-srcImageLayout-01917)"}, {VALIDATION_ERROR_19002401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-parameter)"}, {VALIDATION_ERROR_19002413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-recording)"}, {VALIDATION_ERROR_19002415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdCopyImage-commandBuffer-cmdpool)"}, @@ -5952,21 +5972,21 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_19c00304, "The spec valid usage text states 'groupCountX must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountX-00386)"}, {VALIDATION_ERROR_19c00306, "The spec valid usage text states 'groupCountY must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountY-00387)"}, {VALIDATION_ERROR_19c00308, "The spec valid usage text states 'groupCountZ must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-groupCountZ-00388)"}, - {VALIDATION_ERROR_19c0030a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00389)"}, - {VALIDATION_ERROR_19c0030c, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00390)"}, + {VALIDATION_ERROR_19c0030a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00389)"}, + {VALIDATION_ERROR_19c0030c, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00390)"}, {VALIDATION_ERROR_19c0030e, "The spec valid usage text states 'A valid compute pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00391)"}, - {VALIDATION_ERROR_19c00310, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00392)"}, - {VALIDATION_ERROR_19c00312, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00393)"}, - {VALIDATION_ERROR_19c00314, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00394)"}, - {VALIDATION_ERROR_19c00316, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00395)"}, - {VALIDATION_ERROR_19c00318, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00396)"}, - {VALIDATION_ERROR_19c0031a, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00397)"}, + {VALIDATION_ERROR_19c00310, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00392)"}, + {VALIDATION_ERROR_19c00312, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00393)"}, + {VALIDATION_ERROR_19c00314, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00394)"}, + {VALIDATION_ERROR_19c00316, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00395)"}, + {VALIDATION_ERROR_19c00318, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00396)"}, + {VALIDATION_ERROR_19c0031a, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-None-00397)"}, {VALIDATION_ERROR_19c0031c, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-linearTilingFeatures-00398)"}, {VALIDATION_ERROR_19c0031e, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-linearTilingFeatures-00399)"}, {VALIDATION_ERROR_19c00320, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-None-00400)"}, - {VALIDATION_ERROR_19c00e68, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01844)"}, - {VALIDATION_ERROR_19c00e6a, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01845)"}, - {VALIDATION_ERROR_19c00e6c, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01846)"}, + {VALIDATION_ERROR_19c00e68, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01844)"}, + {VALIDATION_ERROR_19c00e6a, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01845)"}, + {VALIDATION_ERROR_19c00e6c, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-01846)"}, {VALIDATION_ERROR_19c02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-parameter)"}, {VALIDATION_ERROR_19c02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-recording)"}, {VALIDATION_ERROR_19c02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatch-commandBuffer-cmdpool)"}, @@ -5978,89 +5998,89 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_19e00350, "The spec valid usage text states 'groupCountX must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0] minus baseGroupX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountX-00424)"}, {VALIDATION_ERROR_19e00352, "The spec valid usage text states 'groupCountY must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1] minus baseGroupY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountY-00425)"}, {VALIDATION_ERROR_19e00354, "The spec valid usage text states 'groupCountZ must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2] minus baseGroupZ' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-groupCountZ-00426)"}, - {VALIDATION_ERROR_19e00356, "The spec valid usage text states 'If any of baseGroupX, baseGroupY, or baseGroupZ are not zero, then the currently bound compute pipeline must have been created with the VK_PIPELINE_CREATE_DISPATCH_BASE flag.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-baseGroupX-00427)"}, + {VALIDATION_ERROR_19e00356, "The spec valid usage text states 'If any of baseGroupX, baseGroupY, or baseGroupZ are not zero, then the bound compute pipeline must have been created with the VK_PIPELINE_CREATE_DISPATCH_BASE flag.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-baseGroupX-00427)"}, {VALIDATION_ERROR_19e02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-parameter)"}, {VALIDATION_ERROR_19e02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-recording)"}, {VALIDATION_ERROR_19e02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchBase-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1a000009, "The spec valid usage text states 'Both of buffer, and commandBuffer must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commonparent)"}, {VALIDATION_ERROR_1a000017, "The spec valid usage text states 'This command must only be called outside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-renderpass)"}, {VALIDATION_ERROR_1a000322, "The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-00401)"}, - {VALIDATION_ERROR_1a000324, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00402)"}, - {VALIDATION_ERROR_1a000326, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00403)"}, + {VALIDATION_ERROR_1a000324, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00402)"}, + {VALIDATION_ERROR_1a000326, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00403)"}, {VALIDATION_ERROR_1a000328, "The spec valid usage text states 'A valid compute pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00404)"}, {VALIDATION_ERROR_1a00032a, "The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-00405)"}, {VALIDATION_ERROR_1a00032c, "The spec valid usage text states 'offset must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-offset-00406)"}, {VALIDATION_ERROR_1a00032e, "The spec valid usage text states 'The sum of offset and the size of VkDispatchIndirectCommand must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-offset-00407)"}, - {VALIDATION_ERROR_1a000330, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00408)"}, - {VALIDATION_ERROR_1a000332, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00409)"}, - {VALIDATION_ERROR_1a000334, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00410)"}, - {VALIDATION_ERROR_1a000336, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00411)"}, - {VALIDATION_ERROR_1a000338, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00412)"}, - {VALIDATION_ERROR_1a00033a, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00413)"}, + {VALIDATION_ERROR_1a000330, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE, a push constant value must have been set for VK_PIPELINE_BIND_POINT_COMPUTE, with a VkPipelineLayout that is compatible for push constants with the one used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00408)"}, + {VALIDATION_ERROR_1a000332, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00409)"}, + {VALIDATION_ERROR_1a000334, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00410)"}, + {VALIDATION_ERROR_1a000336, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_COMPUTE uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00411)"}, + {VALIDATION_ERROR_1a000338, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00412)"}, + {VALIDATION_ERROR_1a00033a, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00413)"}, {VALIDATION_ERROR_1a00033c, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-linearTilingFeatures-00414)"}, {VALIDATION_ERROR_1a00033e, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-linearTilingFeatures-00415)"}, {VALIDATION_ERROR_1a000340, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-None-00416)"}, - {VALIDATION_ERROR_1a000e6e, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01847)"}, - {VALIDATION_ERROR_1a000e70, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01848)"}, - {VALIDATION_ERROR_1a000e72, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01849)"}, + {VALIDATION_ERROR_1a000e6e, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_COMPUTE reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01847)"}, + {VALIDATION_ERROR_1a000e70, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01848)"}, + {VALIDATION_ERROR_1a000e72, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the VkPipeline object bound to VK_PIPELINE_POINT_COMPUTE reads from any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-01849)"}, {VALIDATION_ERROR_1a001a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-buffer-parameter)"}, {VALIDATION_ERROR_1a002401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-parameter)"}, {VALIDATION_ERROR_1a002413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-recording)"}, {VALIDATION_ERROR_1a002415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDispatchIndirect-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1a200017, "The spec valid usage text states 'This command must only be called inside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderpass)"}, - {VALIDATION_ERROR_1a200366, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderPass-00435)"}, - {VALIDATION_ERROR_1a200368, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-subpass-00436)"}, - {VALIDATION_ERROR_1a20036a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00437)"}, - {VALIDATION_ERROR_1a20036c, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00438)"}, - {VALIDATION_ERROR_1a20036e, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00439)"}, + {VALIDATION_ERROR_1a200366, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-renderPass-00435)"}, + {VALIDATION_ERROR_1a200368, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-subpass-00436)"}, + {VALIDATION_ERROR_1a20036a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00437)"}, + {VALIDATION_ERROR_1a20036c, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00438)"}, + {VALIDATION_ERROR_1a20036e, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00439)"}, {VALIDATION_ERROR_1a200370, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00440)"}, {VALIDATION_ERROR_1a200372, "The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00441)"}, {VALIDATION_ERROR_1a200374, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00442)"}, - {VALIDATION_ERROR_1a200376, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00443)"}, + {VALIDATION_ERROR_1a200376, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00443)"}, {VALIDATION_ERROR_1a200378, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00444)"}, - {VALIDATION_ERROR_1a20037a, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00445)"}, - {VALIDATION_ERROR_1a20037c, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00446)"}, - {VALIDATION_ERROR_1a20037e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00447)"}, - {VALIDATION_ERROR_1a200380, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00448)"}, - {VALIDATION_ERROR_1a200382, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00449)"}, + {VALIDATION_ERROR_1a20037a, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00445)"}, + {VALIDATION_ERROR_1a20037c, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00446)"}, + {VALIDATION_ERROR_1a20037e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00447)"}, + {VALIDATION_ERROR_1a200380, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00448)"}, + {VALIDATION_ERROR_1a200382, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-00449)"}, {VALIDATION_ERROR_1a200384, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-linearTilingFeatures-00450)"}, {VALIDATION_ERROR_1a200386, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-linearTilingFeatures-00451)"}, {VALIDATION_ERROR_1a200388, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-None-00452)"}, {VALIDATION_ERROR_1a20038a, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-maxMultiviewInstanceIndex-00453)"}, {VALIDATION_ERROR_1a200bb6, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-None-01499)"}, - {VALIDATION_ERROR_1a200bd0, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-sampleLocationsEnable-01512)"}, - {VALIDATION_ERROR_1a200e74, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01850)"}, - {VALIDATION_ERROR_1a200e76, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01851)"}, - {VALIDATION_ERROR_1a200e78, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01852)"}, + {VALIDATION_ERROR_1a200bd0, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-sampleLocationsEnable-01512)"}, + {VALIDATION_ERROR_1a200e74, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01850)"}, + {VALIDATION_ERROR_1a200e76, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01851)"}, + {VALIDATION_ERROR_1a200e78, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-01852)"}, {VALIDATION_ERROR_1a202401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-parameter)"}, {VALIDATION_ERROR_1a202413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-recording)"}, {VALIDATION_ERROR_1a202415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDraw-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1a400017, "The spec valid usage text states 'This command must only be called inside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderpass)"}, - {VALIDATION_ERROR_1a40038c, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-00454)"}, - {VALIDATION_ERROR_1a40038e, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-subpass-00455)"}, - {VALIDATION_ERROR_1a400390, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00456)"}, - {VALIDATION_ERROR_1a400392, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00457)"}, - {VALIDATION_ERROR_1a400394, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00458)"}, + {VALIDATION_ERROR_1a40038c, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-00454)"}, + {VALIDATION_ERROR_1a40038e, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-subpass-00455)"}, + {VALIDATION_ERROR_1a400390, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00456)"}, + {VALIDATION_ERROR_1a400392, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00457)"}, + {VALIDATION_ERROR_1a400394, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00458)"}, {VALIDATION_ERROR_1a400396, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00459)"}, {VALIDATION_ERROR_1a400398, "The spec valid usage text states 'For a given vertex buffer binding, any attribute data fetched must be entirely contained within the corresponding vertex buffer binding, as described in fxvertex-input' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00460)"}, {VALIDATION_ERROR_1a40039a, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00461)"}, - {VALIDATION_ERROR_1a40039c, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00462)"}, - {VALIDATION_ERROR_1a40039e, "The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the currently bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-indexSize-00463)"}, + {VALIDATION_ERROR_1a40039c, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00462)"}, + {VALIDATION_ERROR_1a40039e, "The spec valid usage text states '(indexSize * (firstIndex + indexCount) + offset) must be less than or equal to the size of the bound index buffer, with indexSize being based on the type specified by indexType, where the index buffer, indexType, and offset are specified via vkCmdBindIndexBuffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-indexSize-00463)"}, {VALIDATION_ERROR_1a4003a0, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00464)"}, - {VALIDATION_ERROR_1a4003a2, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00465)"}, - {VALIDATION_ERROR_1a4003a4, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00466)"}, - {VALIDATION_ERROR_1a4003a6, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00467)"}, - {VALIDATION_ERROR_1a4003a8, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00468)"}, - {VALIDATION_ERROR_1a4003aa, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00469)"}, + {VALIDATION_ERROR_1a4003a2, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00465)"}, + {VALIDATION_ERROR_1a4003a4, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00466)"}, + {VALIDATION_ERROR_1a4003a6, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00467)"}, + {VALIDATION_ERROR_1a4003a8, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00468)"}, + {VALIDATION_ERROR_1a4003aa, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00469)"}, {VALIDATION_ERROR_1a4003ac, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-linearTilingFeatures-00470)"}, {VALIDATION_ERROR_1a4003ae, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-linearTilingFeatures-00471)"}, {VALIDATION_ERROR_1a4003b0, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-None-00472)"}, {VALIDATION_ERROR_1a4003b2, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-maxMultiviewInstanceIndex-00473)"}, {VALIDATION_ERROR_1a400bb8, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-None-01500)"}, - {VALIDATION_ERROR_1a400bd2, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513)"}, - {VALIDATION_ERROR_1a400e7a, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01853)"}, - {VALIDATION_ERROR_1a400e7c, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01854)"}, - {VALIDATION_ERROR_1a400e7e, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01855)"}, + {VALIDATION_ERROR_1a400bd2, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513)"}, + {VALIDATION_ERROR_1a400e7a, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01853)"}, + {VALIDATION_ERROR_1a400e7c, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01854)"}, + {VALIDATION_ERROR_1a400e7e, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-01855)"}, {VALIDATION_ERROR_1a402401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-parameter)"}, {VALIDATION_ERROR_1a402413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-recording)"}, {VALIDATION_ERROR_1a402415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexed-commandBuffer-cmdpool)"}, @@ -6071,33 +6091,33 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1a600420, "The spec valid usage text states 'If drawCount is greater than 1, stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndexedIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00528)"}, {VALIDATION_ERROR_1a600422, "The spec valid usage text states 'If the multi-draw indirect feature is not enabled, drawCount must be 0 or 1' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00529)"}, {VALIDATION_ERROR_1a600424, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndexedIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-firstInstance-00530)"}, - {VALIDATION_ERROR_1a600426, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-renderPass-00531)"}, - {VALIDATION_ERROR_1a600428, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-subpass-00532)"}, - {VALIDATION_ERROR_1a60042a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00533)"}, - {VALIDATION_ERROR_1a60042c, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00534)"}, - {VALIDATION_ERROR_1a60042e, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00535)"}, + {VALIDATION_ERROR_1a600426, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-renderPass-00531)"}, + {VALIDATION_ERROR_1a600428, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-subpass-00532)"}, + {VALIDATION_ERROR_1a60042a, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00533)"}, + {VALIDATION_ERROR_1a60042c, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00534)"}, + {VALIDATION_ERROR_1a60042e, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00535)"}, {VALIDATION_ERROR_1a600430, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00536)"}, {VALIDATION_ERROR_1a600432, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00537)"}, - {VALIDATION_ERROR_1a600434, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00538)"}, + {VALIDATION_ERROR_1a600434, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00538)"}, {VALIDATION_ERROR_1a600436, "The spec valid usage text states 'If drawCount is equal to 1, (offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00539)"}, {VALIDATION_ERROR_1a600438, "The spec valid usage text states 'If drawCount is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00540)"}, {VALIDATION_ERROR_1a60043a, "The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-drawCount-00541)"}, {VALIDATION_ERROR_1a60043c, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00542)"}, - {VALIDATION_ERROR_1a60043e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00543)"}, - {VALIDATION_ERROR_1a600440, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00544)"}, - {VALIDATION_ERROR_1a600442, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00545)"}, - {VALIDATION_ERROR_1a600444, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00546)"}, - {VALIDATION_ERROR_1a600446, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00547)"}, + {VALIDATION_ERROR_1a60043e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00543)"}, + {VALIDATION_ERROR_1a600440, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00544)"}, + {VALIDATION_ERROR_1a600442, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00545)"}, + {VALIDATION_ERROR_1a600444, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00546)"}, + {VALIDATION_ERROR_1a600446, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00547)"}, {VALIDATION_ERROR_1a600448, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00548)"}, {VALIDATION_ERROR_1a60044a, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00549)"}, {VALIDATION_ERROR_1a60044c, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-00550)"}, {VALIDATION_ERROR_1a60044e, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-maxMultiviewInstanceIndex-00551)"}, {VALIDATION_ERROR_1a600bbe, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-None-01503)"}, - {VALIDATION_ERROR_1a600bd8, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516)"}, + {VALIDATION_ERROR_1a600bd8, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516)"}, {VALIDATION_ERROR_1a600d02, "The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-buffer-01665)"}, - {VALIDATION_ERROR_1a600e8c, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862)"}, - {VALIDATION_ERROR_1a600e8e, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863)"}, - {VALIDATION_ERROR_1a600e90, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864)"}, + {VALIDATION_ERROR_1a600e8c, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862)"}, + {VALIDATION_ERROR_1a600e8e, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863)"}, + {VALIDATION_ERROR_1a600e90, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864)"}, {VALIDATION_ERROR_1a601a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-buffer-parameter)"}, {VALIDATION_ERROR_1a602401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-parameter)"}, {VALIDATION_ERROR_1a602413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndexedIndirect-commandBuffer-recording)"}, @@ -6109,34 +6129,34 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1a80045a, "The spec valid usage text states 'stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-stride-00557)"}, {VALIDATION_ERROR_1a80045c, "The spec valid usage text states 'If maxDrawCount is greater than or equal to 1, (stride {times} (maxDrawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-maxDrawCount-00558)"}, {VALIDATION_ERROR_1a80045e, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndexedIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-firstInstance-00559)"}, - {VALIDATION_ERROR_1a800460, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560)"}, - {VALIDATION_ERROR_1a800462, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561)"}, - {VALIDATION_ERROR_1a800464, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562)"}, - {VALIDATION_ERROR_1a800466, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563)"}, - {VALIDATION_ERROR_1a800468, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564)"}, + {VALIDATION_ERROR_1a800460, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560)"}, + {VALIDATION_ERROR_1a800462, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561)"}, + {VALIDATION_ERROR_1a800464, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562)"}, + {VALIDATION_ERROR_1a800466, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563)"}, + {VALIDATION_ERROR_1a800468, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564)"}, {VALIDATION_ERROR_1a80046a, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00565)"}, {VALIDATION_ERROR_1a80046c, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00566)"}, - {VALIDATION_ERROR_1a80046e, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567)"}, + {VALIDATION_ERROR_1a80046e, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567)"}, {VALIDATION_ERROR_1a800470, "The spec valid usage text states 'If count stored in countBuffer is equal to 1, (offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00568)"}, {VALIDATION_ERROR_1a800472, "The spec valid usage text states 'If count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00569)"}, {VALIDATION_ERROR_1a800474, "The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-drawCount-00570)"}, {VALIDATION_ERROR_1a800476, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00571)"}, - {VALIDATION_ERROR_1a800478, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572)"}, - {VALIDATION_ERROR_1a80047a, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573)"}, - {VALIDATION_ERROR_1a80047c, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574)"}, - {VALIDATION_ERROR_1a80047e, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575)"}, - {VALIDATION_ERROR_1a800480, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576)"}, + {VALIDATION_ERROR_1a800478, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572)"}, + {VALIDATION_ERROR_1a80047a, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573)"}, + {VALIDATION_ERROR_1a80047c, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574)"}, + {VALIDATION_ERROR_1a80047e, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575)"}, + {VALIDATION_ERROR_1a800480, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576)"}, {VALIDATION_ERROR_1a800482, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-linearTilingFeatures-00577)"}, {VALIDATION_ERROR_1a800484, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-maxMultiviewInstanceIndex-00578)"}, {VALIDATION_ERROR_1a800bc0, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-None-01504)"}, - {VALIDATION_ERROR_1a800bda, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517)"}, + {VALIDATION_ERROR_1a800bda, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517)"}, {VALIDATION_ERROR_1a800d04, "The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01666)"}, {VALIDATION_ERROR_1a800d06, "The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-01667)"}, {VALIDATION_ERROR_1a800d08, "The spec valid usage text states 'If countBuffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01668)"}, {VALIDATION_ERROR_1a800d0a, "The spec valid usage text states 'countBuffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-01669)"}, - {VALIDATION_ERROR_1a800e92, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865)"}, - {VALIDATION_ERROR_1a800e94, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866)"}, - {VALIDATION_ERROR_1a800e96, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867)"}, + {VALIDATION_ERROR_1a800e92, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865)"}, + {VALIDATION_ERROR_1a800e94, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866)"}, + {VALIDATION_ERROR_1a800e96, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867)"}, {VALIDATION_ERROR_1a801a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-buffer-parameter)"}, {VALIDATION_ERROR_1a802401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-parameter)"}, {VALIDATION_ERROR_1a802413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-recording)"}, @@ -6149,33 +6169,33 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1aa003b8, "The spec valid usage text states 'If drawCount is greater than 1, stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00476)"}, {VALIDATION_ERROR_1aa003ba, "The spec valid usage text states 'If the multi-draw indirect feature is not enabled, drawCount must be 0 or 1' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00477)"}, {VALIDATION_ERROR_1aa003bc, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-firstInstance-00478)"}, - {VALIDATION_ERROR_1aa003be, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-renderPass-00479)"}, - {VALIDATION_ERROR_1aa003c0, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-subpass-00480)"}, - {VALIDATION_ERROR_1aa003c2, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00481)"}, - {VALIDATION_ERROR_1aa003c4, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00482)"}, - {VALIDATION_ERROR_1aa003c6, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00483)"}, + {VALIDATION_ERROR_1aa003be, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-renderPass-00479)"}, + {VALIDATION_ERROR_1aa003c0, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-subpass-00480)"}, + {VALIDATION_ERROR_1aa003c2, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00481)"}, + {VALIDATION_ERROR_1aa003c4, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00482)"}, + {VALIDATION_ERROR_1aa003c6, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00483)"}, {VALIDATION_ERROR_1aa003c8, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00484)"}, {VALIDATION_ERROR_1aa003ca, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00485)"}, - {VALIDATION_ERROR_1aa003cc, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00486)"}, + {VALIDATION_ERROR_1aa003cc, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00486)"}, {VALIDATION_ERROR_1aa003ce, "The spec valid usage text states 'If drawCount is equal to 1, (offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00487)"}, {VALIDATION_ERROR_1aa003d0, "The spec valid usage text states 'If drawCount is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00488)"}, {VALIDATION_ERROR_1aa003d2, "The spec valid usage text states 'drawCount must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-drawCount-00489)"}, {VALIDATION_ERROR_1aa003d4, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00490)"}, - {VALIDATION_ERROR_1aa003d6, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00491)"}, - {VALIDATION_ERROR_1aa003d8, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00492)"}, - {VALIDATION_ERROR_1aa003da, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00493)"}, - {VALIDATION_ERROR_1aa003dc, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00494)"}, - {VALIDATION_ERROR_1aa003de, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00495)"}, + {VALIDATION_ERROR_1aa003d6, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00491)"}, + {VALIDATION_ERROR_1aa003d8, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00492)"}, + {VALIDATION_ERROR_1aa003da, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00493)"}, + {VALIDATION_ERROR_1aa003dc, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00494)"}, + {VALIDATION_ERROR_1aa003de, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00495)"}, {VALIDATION_ERROR_1aa003e0, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-linearTilingFeatures-00496)"}, {VALIDATION_ERROR_1aa003e2, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must be of a format which supports cubic filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-linearTilingFeatures-00497)"}, {VALIDATION_ERROR_1aa003e4, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_CUBIC_IMG as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-None-00498)"}, {VALIDATION_ERROR_1aa003e6, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-maxMultiviewInstanceIndex-00499)"}, {VALIDATION_ERROR_1aa00bba, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-None-01501)"}, - {VALIDATION_ERROR_1aa00bd4, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514)"}, + {VALIDATION_ERROR_1aa00bd4, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514)"}, {VALIDATION_ERROR_1aa00cf8, "The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-buffer-01660)"}, - {VALIDATION_ERROR_1aa00e80, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01856)"}, - {VALIDATION_ERROR_1aa00e82, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01857)"}, - {VALIDATION_ERROR_1aa00e84, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01858)"}, + {VALIDATION_ERROR_1aa00e80, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01856)"}, + {VALIDATION_ERROR_1aa00e82, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01857)"}, + {VALIDATION_ERROR_1aa00e84, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-01858)"}, {VALIDATION_ERROR_1aa01a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-buffer-parameter)"}, {VALIDATION_ERROR_1aa02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-parameter)"}, {VALIDATION_ERROR_1aa02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdDrawIndirect-commandBuffer-recording)"}, @@ -6187,45 +6207,44 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1ac003f0, "The spec valid usage text states 'stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDrawIndirectCommand)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-stride-00504)"}, {VALIDATION_ERROR_1ac003f2, "The spec valid usage text states 'If maxDrawCount is greater than or equal to 1, (stride {times} (maxDrawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-maxDrawCount-00505)"}, {VALIDATION_ERROR_1ac003f4, "The spec valid usage text states 'If the drawIndirectFirstInstance feature is not enabled, all the firstInstance members of the VkDrawIndirectCommand structures accessed by this command must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-firstInstance-00506)"}, - {VALIDATION_ERROR_1ac003f6, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-renderPass-00507)"}, - {VALIDATION_ERROR_1ac003f8, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-subpass-00508)"}, - {VALIDATION_ERROR_1ac003fa, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00509)"}, - {VALIDATION_ERROR_1ac003fc, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00510)"}, - {VALIDATION_ERROR_1ac003fe, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the currently bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00511)"}, + {VALIDATION_ERROR_1ac003f6, "The spec valid usage text states 'The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-renderPass-00507)"}, + {VALIDATION_ERROR_1ac003f8, "The spec valid usage text states 'The subpass index of the current render pass must be equal to the subpass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-subpass-00508)"}, + {VALIDATION_ERROR_1ac003fa, "The spec valid usage text states 'For each set n that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a descriptor set must have been bound to n at VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for set n, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00509)"}, + {VALIDATION_ERROR_1ac003fc, "The spec valid usage text states 'For each push constant that is statically used by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS, a push constant value must have been set for VK_PIPELINE_BIND_POINT_GRAPHICS, with a VkPipelineLayout that is compatible for push constants, with the VkPipelineLayout used to create the current VkPipeline, as described in descriptorsets-compatibility' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00510)"}, + {VALIDATION_ERROR_1ac003fe, "The spec valid usage text states 'Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the bound VkPipeline object, specified via vkCmdBindPipeline' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00511)"}, {VALIDATION_ERROR_1ac00400, "The spec valid usage text states 'All vertex input bindings accessed via vertex input variables declared in the vertex shader entry point's interface must have valid buffers bound' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00512)"}, {VALIDATION_ERROR_1ac00402, "The spec valid usage text states 'A valid graphics pipeline must be bound to the current command buffer with VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00513)"}, - {VALIDATION_ERROR_1ac00404, "The spec valid usage text states 'If the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00514)"}, + {VALIDATION_ERROR_1ac00404, "The spec valid usage text states 'If the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS requires any dynamic state, that state must have been set on the current command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00514)"}, {VALIDATION_ERROR_1ac00406, "The spec valid usage text states 'If the count stored in countBuffer is equal to 1, (offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00515)"}, {VALIDATION_ERROR_1ac00408, "The spec valid usage text states 'If the count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00516)"}, {VALIDATION_ERROR_1ac0040a, "The spec valid usage text states 'The count stored in countBuffer must be less than or equal to VkPhysicalDeviceLimits::maxDrawIndirectCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-00517)"}, {VALIDATION_ERROR_1ac0040c, "The spec valid usage text states 'Every input attachment used by the current subpass must be bound to the pipeline via a descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00518)"}, - {VALIDATION_ERROR_1ac0040e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00519)"}, - {VALIDATION_ERROR_1ac00410, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00520)"}, - {VALIDATION_ERROR_1ac00412, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00521)"}, - {VALIDATION_ERROR_1ac00414, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00522)"}, - {VALIDATION_ERROR_1ac00416, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the currently bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00523)"}, + {VALIDATION_ERROR_1ac0040e, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used to sample from any VkImage with a VkImageView of the type VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, VK_IMAGE_VIEW_TYPE_1D_ARRAY, VK_IMAGE_VIEW_TYPE_2D_ARRAY or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00519)"}, + {VALIDATION_ERROR_1ac00410, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions with ImplicitLod, Dref or Proj in their name, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00520)"}, + {VALIDATION_ERROR_1ac00412, "The spec valid usage text states 'If any VkSampler object that is accessed from a shader by the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS uses unnormalized coordinates, it must not be used with any of the SPIR-V OpImageSample* or OpImageSparseSample* instructions that includes a LOD bias or any offset values, in any shader stage' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00521)"}, + {VALIDATION_ERROR_1ac00414, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a uniform buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00522)"}, + {VALIDATION_ERROR_1ac00416, "The spec valid usage text states 'If the robust buffer access feature is not enabled, and any shader stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS accesses a storage buffer, it must not access values outside of the range of that buffer specified in the bound descriptor set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-00523)"}, {VALIDATION_ERROR_1ac00418, "The spec valid usage text states 'Any VkImageView being sampled with VK_FILTER_LINEAR as a result of this command must be of a format which supports linear filtering, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag in VkFormatProperties::linearTilingFeatures (for a linear image) or VkFormatProperties::optimalTilingFeatures(for an optimally tiled image) returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-linearTilingFeatures-00524)"}, {VALIDATION_ERROR_1ac0041a, "The spec valid usage text states 'If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-maxMultiviewInstanceIndex-00525)"}, {VALIDATION_ERROR_1ac00bbc, "The spec valid usage text states 'Image subresources used as attachments in the current render pass must not be accessed in any way other than as an attachment by this command.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-None-01502)"}, - {VALIDATION_ERROR_1ac00bd6, "The spec valid usage text states 'If the currently bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515)"}, + {VALIDATION_ERROR_1ac00bd6, "The spec valid usage text states 'If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515)"}, {VALIDATION_ERROR_1ac00cfa, "The spec valid usage text states 'If buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-01661)"}, {VALIDATION_ERROR_1ac00cfc, "The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-01662)"}, {VALIDATION_ERROR_1ac00cfe, "The spec valid usage text states 'If countBuffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-01663)"}, {VALIDATION_ERROR_1ac00d00, "The spec valid usage text states 'countBuffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-01664)"}, - {VALIDATION_ERROR_1ac00e86, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859)"}, - {VALIDATION_ERROR_1ac00e88, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860)"}, - {VALIDATION_ERROR_1ac00e8a, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object currently bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861)"}, + {VALIDATION_ERROR_1ac00e86, "The spec valid usage text states 'If commandBuffer is an unprotected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, that image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859)"}, + {VALIDATION_ERROR_1ac00e88, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS writes to any image or buffer, that image or buffer must not be an unprotected image or unprotected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860)"}, + {VALIDATION_ERROR_1ac00e8a, "The spec valid usage text states 'If commandBuffer is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the VkPipeline object bound to VK_PIPELINE_BIND_POINT_GRAPHICS reads from or writes to any image or buffer, the image or buffer must not be a protected image or protected buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861)"}, {VALIDATION_ERROR_1ac01a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-buffer-parameter)"}, {VALIDATION_ERROR_1ac02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-parameter)"}, {VALIDATION_ERROR_1ac02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-recording)"}, {VALIDATION_ERROR_1ac02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1ac03401, "The spec valid usage text states 'countBuffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdDrawIndirectCountAMD-countBuffer-parameter)"}, {VALIDATION_ERROR_1ae00009, "The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commonparent)"}, - {VALIDATION_ERROR_1ae00652, "The spec valid usage text states 'The query identified by queryPool and query must currently be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-queryPool-00809)"}, {VALIDATION_ERROR_1ae00654, "The spec valid usage text states 'query must be less than the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-query-00810)"}, - {VALIDATION_ERROR_1ae00656, "The spec valid usage text states 'All queries used by the command must be active' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-None-00811)"}, {VALIDATION_ERROR_1ae00658, "The spec valid usage text states 'If vkCmdEndQuery is called within a render pass instance, the sum of query and the number of bits set in the current subpass's view mask must be less than or equal to the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-query-00812)"}, {VALIDATION_ERROR_1ae00ebc, "The spec valid usage text states 'commandBuffer must not be a protected command buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-01886)"}, + {VALIDATION_ERROR_1ae00f06, "The spec valid usage text states 'All queries used by the command must be active' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-None-01923)"}, {VALIDATION_ERROR_1ae02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-parameter)"}, {VALIDATION_ERROR_1ae02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-recording)"}, {VALIDATION_ERROR_1ae02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdEndQuery-commandBuffer-cmdpool)"}, @@ -6419,16 +6438,16 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1c82ac1b, "The spec valid usage text states 'regionCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-regionCount-arraylength)"}, {VALIDATION_ERROR_1c82ce01, "The spec valid usage text states 'srcImage must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-srcImage-parameter)"}, {VALIDATION_ERROR_1c82d001, "The spec valid usage text states 'srcImageLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResolveImage-srcImageLayout-parameter)"}, - {VALIDATION_ERROR_1ca004c8, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_BLEND_CONSTANTS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-None-00612)"}, + {VALIDATION_ERROR_1ca004c8, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_BLEND_CONSTANTS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-None-00612)"}, {VALIDATION_ERROR_1ca02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-parameter)"}, {VALIDATION_ERROR_1ca02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-recording)"}, {VALIDATION_ERROR_1ca02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetBlendConstants-commandBuffer-cmdpool)"}, - {VALIDATION_ERROR_1cc0062a, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BIAS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-None-00789)"}, + {VALIDATION_ERROR_1cc0062a, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BIAS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-None-00789)"}, {VALIDATION_ERROR_1cc0062c, "The spec valid usage text states 'If the depth bias clamping feature is not enabled, depthBiasClamp must be 0.0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-depthBiasClamp-00790)"}, {VALIDATION_ERROR_1cc02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-parameter)"}, {VALIDATION_ERROR_1cc02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-recording)"}, {VALIDATION_ERROR_1cc02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBias-commandBuffer-cmdpool)"}, - {VALIDATION_ERROR_1ce004ae, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BOUNDS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-None-00599)"}, + {VALIDATION_ERROR_1ce004ae, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DEPTH_BOUNDS dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-None-00599)"}, {VALIDATION_ERROR_1ce004b0, "The spec valid usage text states 'Unless the VK_EXT_depth_range_unrestricted extension is enabled minDepthBounds must be between 0.0 and 1.0, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDepthBounds-minDepthBounds-00600)"}, {VALIDATION_ERROR_1ce004b2, "The spec valid usage text states 'Unless the VK_EXT_depth_range_unrestricted extension is enabled maxDepthBounds must be between 0.0 and 1.0, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDepthBounds-maxDepthBounds-00601)"}, {VALIDATION_ERROR_1ce02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetDepthBounds-commandBuffer-parameter)"}, @@ -6441,7 +6460,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1d002401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-parameter)"}, {VALIDATION_ERROR_1d002413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-recording)"}, {VALIDATION_ERROR_1d002415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, compute, or transfer operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDeviceMask-commandBuffer-cmdpool)"}, - {VALIDATION_ERROR_1d20048e, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-None-00583)"}, + {VALIDATION_ERROR_1d20048e, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-None-00583)"}, {VALIDATION_ERROR_1d200492, "The spec valid usage text states 'The sum of firstDiscardRectangle and discardRectangleCount must be less than or equal to VkPhysicalDeviceDiscardRectanglePropertiesEXT::maxDiscardRectangles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-firstDiscardRectangle-00585)"}, {VALIDATION_ERROR_1d200496, "The spec valid usage text states 'The x and y member of offset in each VkRect2D element of pDiscardRectangles must be greater than or equal to 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-x-00587)"}, {VALIDATION_ERROR_1d200498, "The spec valid usage text states 'Evaluation of (offset.x + extent.width) in each VkRect2D element of pDiscardRectangles must not cause a signed integer addition overflow' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetDiscardRectangleEXT-offset-00588)"}, @@ -6463,12 +6482,12 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1d407e01, "The spec valid usage text states 'event must be a valid VkEvent handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-event-parameter)"}, {VALIDATION_ERROR_1d42de01, "The spec valid usage text states 'stageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-parameter)"}, {VALIDATION_ERROR_1d42de03, "The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-requiredbitmask)"}, - {VALIDATION_ERROR_1d600626, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_LINE_WIDTH dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-None-00787)"}, + {VALIDATION_ERROR_1d600626, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_LINE_WIDTH dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-None-00787)"}, {VALIDATION_ERROR_1d600628, "The spec valid usage text states 'If the wide lines feature is not enabled, lineWidth must be 1.0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-lineWidth-00788)"}, {VALIDATION_ERROR_1d602401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-parameter)"}, {VALIDATION_ERROR_1d602413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-recording)"}, {VALIDATION_ERROR_1d602415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-cmdpool)"}, - {VALIDATION_ERROR_1d80049c, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-None-00590)"}, + {VALIDATION_ERROR_1d80049c, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SCISSOR dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-None-00590)"}, {VALIDATION_ERROR_1d80049e, "The spec valid usage text states 'firstScissor must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00591)"}, {VALIDATION_ERROR_1d8004a0, "The spec valid usage text states 'The sum of firstScissor and scissorCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00592)"}, {VALIDATION_ERROR_1d8004a2, "The spec valid usage text states 'If the multiple viewports feature is not enabled, firstScissor must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-firstScissor-00593)"}, @@ -6481,25 +6500,25 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1d802415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1d822601, "The spec valid usage text states 'pScissors must be a valid pointer to an array of scissorCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-pScissors-parameter)"}, {VALIDATION_ERROR_1d82b61b, "The spec valid usage text states 'scissorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetScissor-scissorCount-arraylength)"}, - {VALIDATION_ERROR_1da004b4, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-None-00602)"}, + {VALIDATION_ERROR_1da004b4, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-None-00602)"}, {VALIDATION_ERROR_1da02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-parameter)"}, {VALIDATION_ERROR_1da02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-recording)"}, {VALIDATION_ERROR_1da02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1da08401, "The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-parameter)"}, {VALIDATION_ERROR_1da08403, "The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask)"}, - {VALIDATION_ERROR_1dc004b8, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_REFERENCE dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-None-00604)"}, + {VALIDATION_ERROR_1dc004b8, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_REFERENCE dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-None-00604)"}, {VALIDATION_ERROR_1dc02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-parameter)"}, {VALIDATION_ERROR_1dc02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-recording)"}, {VALIDATION_ERROR_1dc02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1dc08401, "The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-parameter)"}, {VALIDATION_ERROR_1dc08403, "The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-requiredbitmask)"}, - {VALIDATION_ERROR_1de004b6, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_WRITE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-None-00603)"}, + {VALIDATION_ERROR_1de004b6, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_WRITE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-None-00603)"}, {VALIDATION_ERROR_1de02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter)"}, {VALIDATION_ERROR_1de02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-recording)"}, {VALIDATION_ERROR_1de02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1de08401, "The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-parameter)"}, {VALIDATION_ERROR_1de08403, "The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask)"}, - {VALIDATION_ERROR_1e00098a, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-None-01221)"}, + {VALIDATION_ERROR_1e00098a, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-None-01221)"}, {VALIDATION_ERROR_1e00098c, "The spec valid usage text states 'firstViewport must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01222)"}, {VALIDATION_ERROR_1e00098e, "The spec valid usage text states 'The sum of firstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01223)"}, {VALIDATION_ERROR_1e000990, "The spec valid usage text states 'If the multiple viewports feature is not enabled, firstViewport must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01224)"}, @@ -6509,7 +6528,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_1e002415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_1e030a1b, "The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-viewportCount-arraylength)"}, {VALIDATION_ERROR_1e03fa01, "The spec valid usage text states 'pViewports must be a valid pointer to an array of viewportCount VkViewport structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-pViewports-parameter)"}, - {VALIDATION_ERROR_1e200a54, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-None-01322)"}, + {VALIDATION_ERROR_1e200a54, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-None-01322)"}, {VALIDATION_ERROR_1e200a56, "The spec valid usage text states 'firstViewport must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-firstViewport-01323)"}, {VALIDATION_ERROR_1e200a58, "The spec valid usage text states 'The sum of firstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-firstViewport-01324)"}, {VALIDATION_ERROR_1e202401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetViewportWScalingNV-commandBuffer-parameter)"}, @@ -6927,7 +6946,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_27400078, "The spec valid usage text states 'If commandBuffer is a primary command buffer, there must not be an active render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00060)"}, {VALIDATION_ERROR_2740007a, "The spec valid usage text states 'All queries made active during the recording of commandBuffer must have been made inactive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00061)"}, {VALIDATION_ERROR_2740007c, "The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdDebugMarkerBeginEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdDebugMarkerEndEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-00062)"}, - {VALIDATION_ERROR_27400e2e, "The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdBeginUtilsLabelEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdEndDebugUtilsLabelEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-01815)"}, + {VALIDATION_ERROR_27400e2e, "The spec valid usage text states 'If commandBuffer is a secondary command buffer, there must not be an outstanding vkCmdBeginDebugUtilsLabelEXT command recorded to commandBuffer that has not previously been ended by a call to vkCmdEndDebugUtilsLabelEXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-01815)"}, {VALIDATION_ERROR_27402401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEndCommandBuffer-commandBuffer-parameter)"}, {VALIDATION_ERROR_27619e01, "The spec valid usage text states 'If pLayerName is not NULL, pLayerName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEnumerateDeviceExtensionProperties-pLayerName-parameter)"}, {VALIDATION_ERROR_2761f401, "The spec valid usage text states 'If the value referenced by pPropertyCount is not 0, and pProperties is not NULL, pProperties must be a valid pointer to an array of pPropertyCount VkExtensionProperties structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkEnumerateDeviceExtensionProperties-pProperties-parameter)"}, @@ -7017,6 +7036,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_2a005601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-device-parameter)"}, {VALIDATION_ERROR_2a008801, "The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-fence-parameter)"}, {VALIDATION_ERROR_2a008807, "The spec valid usage text states 'fence must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceStatus-fence-parent)"}, + {VALIDATION_ERROR_2a200c68, "The spec valid usage text states 'image must not have been created with the VK_IMAGE_CREATE_DISJOINT_BIT flag set' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-01588)"}, {VALIDATION_ERROR_2a205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-device-parameter)"}, {VALIDATION_ERROR_2a20a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-parameter)"}, {VALIDATION_ERROR_2a20a007, "The spec valid usage text states 'image must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements-image-parent)"}, @@ -7110,6 +7130,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_2ca30401, "The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-type-parameter)"}, {VALIDATION_ERROR_2ca30601, "The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-usage-parameter)"}, {VALIDATION_ERROR_2ca30603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask)"}, + {VALIDATION_ERROR_2cc00e98, "The spec valid usage text states 'If the pNext chain of pImageFormatProperties contains an instance of VkAndroidHardwareBufferUsageANDROID, the pNext chain of pImageFormatInfo must contain an instance of VkPhysicalDeviceExternalImageFormatInfo with handleType set to VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pNext-01868)"}, {VALIDATION_ERROR_2cc18201, "The spec valid usage text states 'pImageFormatInfo must be a valid pointer to a valid VkPhysicalDeviceImageFormatInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatInfo-parameter)"}, {VALIDATION_ERROR_2cc18401, "The spec valid usage text states 'pImageFormatProperties must be a valid pointer to a VkImageFormatProperties2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatProperties-parameter)"}, {VALIDATION_ERROR_2cc27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2-physicalDevice-parameter)"}, @@ -7371,6 +7392,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_33a05207, "The spec valid usage text states 'descriptorUpdateTemplate must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parent)"}, {VALIDATION_ERROR_33a05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSetWithTemplate-device-parameter)"}, {VALIDATION_ERROR_33c00274, "The spec valid usage text states 'The dstSet member of each element of pDescriptorWrites or pDescriptorCopies must not be used by any command that was recorded to a command buffer which is in the pending state.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-dstSet-00314)"}, + {VALIDATION_ERROR_33c017ce, "The spec valid usage text states 'Descriptor bindings updated by this command which were created without the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT or VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT bits set must not be used by any command that was recorded to a command buffer which is in the pending state.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkUpdateDescriptorSets-None-03047)"}, {VALIDATION_ERROR_33c05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-device-parameter)"}, {VALIDATION_ERROR_33c12c01, "The spec valid usage text states 'If descriptorCopyCount is not 0, pDescriptorCopies must be a valid pointer to an array of descriptorCopyCount valid VkCopyDescriptorSet structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-pDescriptorCopies-parameter)"}, {VALIDATION_ERROR_33c13601, "The spec valid usage text states 'If descriptorWriteCount is not 0, pDescriptorWrites must be a valid pointer to an array of descriptorWriteCount valid VkWriteDescriptorSet structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkUpdateDescriptorSets-pDescriptorWrites-parameter)"}, @@ -7378,7 +7400,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_33e08a1b, "The spec valid usage text states 'fenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-fenceCount-arraylength)"}, {VALIDATION_ERROR_33e17201, "The spec valid usage text states 'pFences must be a valid pointer to an array of fenceCount valid VkFence handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parameter)"}, {VALIDATION_ERROR_33e17207, "The spec valid usage text states 'Each element of pFences must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parent)"}, - {VALIDATION_ERROR_3401c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)"}, + {VALIDATION_ERROR_3401c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceShaderCorePropertiesAMD, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)"}, {VALIDATION_ERROR_3402b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-sType)"}, {VALIDATION_ERROR_3402b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-unique)"}, {VALIDATION_ERROR_3421c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFormatProperties2-pNext-pNext)"}, @@ -7402,40 +7424,31 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3562b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageFormatProperties2-sType-sType)"}, {VALIDATION_ERROR_3581c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-pNext-pNext)"}, {VALIDATION_ERROR_3582b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-sType-sType)"}, - {VALIDATION_ERROR_35c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewProperties-pNext-pNext)"}, {VALIDATION_ERROR_35c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewProperties-sType-sType)"}, - {VALIDATION_ERROR_3601c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalImageFormatProperties-pNext-pNext)"}, {VALIDATION_ERROR_3602b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalImageFormatProperties-sType-sType)"}, - {VALIDATION_ERROR_3621c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceIDProperties-pNext-pNext)"}, {VALIDATION_ERROR_3622b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceIDProperties-sType-sType)"}, {VALIDATION_ERROR_3642b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType)"}, {VALIDATION_ERROR_37e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType)"}, {VALIDATION_ERROR_3822b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT-sType-sType)"}, {VALIDATION_ERROR_3842b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT-sType-sType)"}, - {VALIDATION_ERROR_3861c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_3862b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-sType-sType)"}, {VALIDATION_ERROR_38800b20, "The spec valid usage text states 'If the non-premultiplied source color property is not supported, srcPremultiplied must be VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-srcPremultiplied-01424)"}, {VALIDATION_ERROR_38800b22, "The spec valid usage text states 'If the non-premultiplied destination color property is not supported, dstPremultiplied must be VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425)"}, {VALIDATION_ERROR_38800b24, "The spec valid usage text states 'If the correlated overlap property is not supported, blendOverlap must be VK_BLEND_OVERLAP_UNCORRELATED_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426)"}, - {VALIDATION_ERROR_3881c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3882b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_38834a01, "The spec valid usage text states 'blendOverlap must be a valid VkBlendOverlapEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter)"}, {VALIDATION_ERROR_38a00afa, "The spec valid usage text states 'If coverageModulationTableEnable is VK_TRUE, coverageModulationTableCount must be equal to the number of rasterization samples divided by the number of color samples in the subpass.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405)"}, {VALIDATION_ERROR_38a09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask)"}, - {VALIDATION_ERROR_38a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_38a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType)"}, {VALIDATION_ERROR_38a34c01, "The spec valid usage text states 'coverageModulationMode must be a valid VkCoverageModulationModeNV value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter)"}, {VALIDATION_ERROR_38a34e1b, "The spec valid usage text states 'coverageModulationTableCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength)"}, {VALIDATION_ERROR_38c00af8, "The spec valid usage text states 'If coverageToColorEnable is VK_TRUE, then the render pass subpass indicated by VkGraphicsPipelineCreateInfo::renderPass and VkGraphicsPipelineCreateInfo::subpass must have a color attachment at the location selected by coverageToColorLocation, with a VkFormat of VK_FORMAT_R8_UINT, VK_FORMAT_R8_SINT, VK_FORMAT_R16_UINT, VK_FORMAT_R16_SINT, VK_FORMAT_R32_UINT, or VK_FORMAT_R32_SINT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404)"}, {VALIDATION_ERROR_38c09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask)"}, - {VALIDATION_ERROR_38c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-pNext-pNext)"}, {VALIDATION_ERROR_38c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType)"}, - {VALIDATION_ERROR_38e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_38e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_38e35001, "The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)"}, {VALIDATION_ERROR_39400b4c, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalFenceProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-01446)"}, {VALIDATION_ERROR_39409e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-parameter)"}, - {VALIDATION_ERROR_3941c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_3942b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-sType-sType)"}, {VALIDATION_ERROR_39609c01, "The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter)"}, {VALIDATION_ERROR_3961c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext)"}, @@ -7480,7 +7493,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3a42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-sType-sType)"}, {VALIDATION_ERROR_3a600b4e, "The spec valid usage text states 'If VkExportFenceCreateInfo::handleTypes does not include VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT, VkExportFenceWin32HandleInfoKHR must not be in the pNext chain of VkFenceCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447)"}, {VALIDATION_ERROR_3a60f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter)"}, - {VALIDATION_ERROR_3a61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_3a62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-sType-sType)"}, {VALIDATION_ERROR_3a800b50, "The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfo::handleTypes when the fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448)"}, {VALIDATION_ERROR_3a800b52, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetFenceWin32HandleKHR must be called no more than once for each valid unique combination of fence and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449)"}, @@ -7528,7 +7540,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3b40c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter)"}, {VALIDATION_ERROR_3b41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_3b42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType)"}, - {VALIDATION_ERROR_3b61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedRequirements-pNext-pNext)"}, {VALIDATION_ERROR_3b62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedRequirements-sType-sType)"}, {VALIDATION_ERROR_3b800009, "The spec valid usage text states 'Both of buffer, and image that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-commonparent)"}, {VALIDATION_ERROR_3b800b30, "The spec valid usage text states 'At least one of image and buffer must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01432)"}, @@ -7537,13 +7548,12 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3b800b36, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the buffer' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01435)"}, {VALIDATION_ERROR_3b800b38, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must have been created without VK_BUFFER_CREATE_SPARSE_BINDING_BIT set in VkBufferCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01436)"}, {VALIDATION_ERROR_3b800e0a, "The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must not have been created with VK_IMAGE_CREATE_DISJOINT_BIT set in VkImageCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01797)"}, - {VALIDATION_ERROR_3b800ea8, "The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01876)"}, - {VALIDATION_ERROR_3b800eaa, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01877)"}, - {VALIDATION_ERROR_3b800eac, "The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01878)"}, - {VALIDATION_ERROR_3b800eae, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01879)"}, + {VALIDATION_ERROR_3b800ea8, "The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01876)"}, + {VALIDATION_ERROR_3b800eaa, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, and the external handle was created by the Vulkan API, then the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01877)"}, + {VALIDATION_ERROR_3b800eac, "The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01878)"}, + {VALIDATION_ERROR_3b800eae, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation with handle type VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-01879)"}, {VALIDATION_ERROR_3b801a01, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-buffer-parameter)"}, {VALIDATION_ERROR_3b80a001, "The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-parameter)"}, - {VALIDATION_ERROR_3b81c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-pNext-pNext)"}, {VALIDATION_ERROR_3b82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-sType-sType)"}, {VALIDATION_ERROR_3ba01a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2-buffer-parameter)"}, {VALIDATION_ERROR_3ba1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2-pNext-pNext)"}, @@ -7551,7 +7561,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3bc00c6a, "The spec valid usage text states 'If image was created with a multi-planar format and the VK_IMAGE_CREATE_DISJOINT_BIT flag, there must be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01589)"}, {VALIDATION_ERROR_3bc00c6c, "The spec valid usage text states 'If image was not created with the VK_IMAGE_CREATE_DISJOINT_BIT flag, there must not be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01590)"}, {VALIDATION_ERROR_3bc00c6e, "The spec valid usage text states 'If image was created with a single-plane format, there must not be a VkImagePlaneMemoryRequirementsInfo in the pNext chain of the VkImageMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01591)"}, - {VALIDATION_ERROR_3bc00ed2, "The spec valid usage text states 'If image was created with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID external memory handle type, then image must be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-image-01897)"}, + {VALIDATION_ERROR_3bc00ed2, "The spec valid usage text states 'If image was created with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID external memory handle type, then image must be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-01897)"}, {VALIDATION_ERROR_3bc0a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-image-parameter)"}, {VALIDATION_ERROR_3bc1c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkImagePlaneMemoryRequirementsInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-pNext-pNext)"}, {VALIDATION_ERROR_3bc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2-sType-sType)"}, @@ -7574,23 +7584,18 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3c839c01, "The spec valid usage text states 'pInfo must be a valid pointer to a valid VkImageSparseMemoryRequirementsInfo2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageSparseMemoryRequirements2-pInfo-parameter)"}, {VALIDATION_ERROR_3ca2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevice16BitStorageFeatures-sType-sType)"}, {VALIDATION_ERROR_3cc00b2e, "The spec valid usage text states 'If variablePointers is enabled then variablePointersStorageBuffer must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-variablePointers-01431)"}, - {VALIDATION_ERROR_3cc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-pNext-pNext)"}, {VALIDATION_ERROR_3cc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeatures-sType-sType)"}, {VALIDATION_ERROR_3ce00bec, "The spec valid usage text states 'sampleLocationsPerPixel must be a bit value that is set in VkPhysicalDeviceSampleLocationsPropertiesEXT::sampleLocationSampleCounts' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-01526)"}, {VALIDATION_ERROR_3ce00bee, "The spec valid usage text states 'sampleLocationsCount must equal sampleLocationsPerPixel {times} sampleLocationGridSize.width {times} sampleLocationGridSize.height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-01527)"}, - {VALIDATION_ERROR_3ce1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3ce2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sType-sType)"}, {VALIDATION_ERROR_3ce3b201, "The spec valid usage text states 'sampleLocationsPerPixel must be a valid VkSampleCountFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-parameter)"}, {VALIDATION_ERROR_3ce3b41b, "The spec valid usage text states 'sampleLocationsCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength)"}, {VALIDATION_ERROR_3ce3b601, "The spec valid usage text states 'pSampleLocations must be a valid pointer to an array of sampleLocationsCount VkSampleLocationEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter)"}, - {VALIDATION_ERROR_3d01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3d02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType)"}, {VALIDATION_ERROR_3d03ba01, "The spec valid usage text states 'If attachmentInitialSampleLocationsCount is not 0, pAttachmentInitialSampleLocations must be a valid pointer to an array of attachmentInitialSampleLocationsCount valid VkAttachmentSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter)"}, {VALIDATION_ERROR_3d03e801, "The spec valid usage text states 'If postSubpassSampleLocationsCount is not 0, pPostSubpassSampleLocations must be a valid pointer to an array of postSubpassSampleLocationsCount valid VkSubpassSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter)"}, - {VALIDATION_ERROR_3d21c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3d22b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_3d23c601, "The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter)"}, - {VALIDATION_ERROR_3d41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_3d42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType)"}, {VALIDATION_ERROR_3d61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_3d62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-sType-sType)"}, @@ -7603,7 +7608,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3da19601, "The spec valid usage text states 'If initialDataSize is not 0, pInitialData must be a valid pointer to an array of initialDataSize bytes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-pInitialData-parameter)"}, {VALIDATION_ERROR_3da1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3da2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationCacheCreateInfoEXT-sType-sType)"}, - {VALIDATION_ERROR_3dc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_3dc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_3dc3c401, "The spec valid usage text states 'validationCache must be a valid VkValidationCacheEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkShaderModuleValidationCacheCreateInfoEXT-validationCache-parameter)"}, {VALIDATION_ERROR_3de05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateValidationCacheEXT-device-parameter)"}, @@ -7615,8 +7619,8 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3e012401, "The spec valid usage text states 'pDataSize must be a valid pointer to a size_t value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-pDataSize-parameter)"}, {VALIDATION_ERROR_3e03c401, "The spec valid usage text states 'validationCache must be a valid VkValidationCacheEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-validationCache-parameter)"}, {VALIDATION_ERROR_3e03c407, "The spec valid usage text states 'validationCache must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetValidationCacheDataEXT-validationCache-parent)"}, - {VALIDATION_ERROR_3e200bf0, "The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-None-01528)"}, - {VALIDATION_ERROR_3e200bf2, "The spec valid usage text states 'The sampleLocationsPerPixel member of pSampleLocationsInfo must equal the rasterizationSamples member of the VkPipelineMultisampleStateCreateInfo structure the currently bound graphics pipeline has been created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529)"}, + {VALIDATION_ERROR_3e200bf0, "The spec valid usage text states 'The bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-None-01528)"}, + {VALIDATION_ERROR_3e200bf2, "The spec valid usage text states 'The sampleLocationsPerPixel member of pSampleLocationsInfo must equal the rasterizationSamples member of the VkPipelineMultisampleStateCreateInfo structure the bound graphics pipeline has been created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529)"}, {VALIDATION_ERROR_3e200bf4, "The spec valid usage text states 'If VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations is VK_FALSE then the current render pass must have been begun by specifying a VkRenderPassSampleLocationsBeginInfoEXT structure whose pPostSubpassSampleLocations member contains an element with a subpassIndex matching the current subpass index and the sampleLocationsInfo member of that element must match the sample locations state pointed to by pSampleLocationsInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-variableSampleLocations-01530)"}, {VALIDATION_ERROR_3e202401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-commandBuffer-parameter)"}, {VALIDATION_ERROR_3e202413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdSetSampleLocationsEXT-commandBuffer-recording)"}, @@ -7639,29 +7643,24 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3e83c601, "The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAttachmentSampleLocationsEXT-sampleLocationsInfo-parameter)"}, {VALIDATION_ERROR_3ea00bf8, "The spec valid usage text states 'subpassIndex must be less than the subpassCount specified in VkRenderPassCreateInfo the render pass specified by VkRenderPassBeginInfo::renderPass was created with' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSubpassSampleLocationsEXT-subpassIndex-01532)"}, {VALIDATION_ERROR_3ea3c601, "The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter)"}, - {VALIDATION_ERROR_3ec1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePointClippingProperties-pNext-pNext)"}, {VALIDATION_ERROR_3ec2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePointClippingProperties-sType-sType)"}, {VALIDATION_ERROR_3ee00c01, "The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-parameter)"}, {VALIDATION_ERROR_3ee00c03, "The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask)"}, {VALIDATION_ERROR_3ee00c40, "The spec valid usage text states 'There must be an input attachment at pCreateInfo::pSubpasses[subpass].pInputAttachments[inputAttachmentIndex].' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-pCreateInfo-01568)"}, {VALIDATION_ERROR_3ee00c42, "The spec valid usage text states 'The specified input attachment must have more than one aspect mask.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-None-01569)"}, {VALIDATION_ERROR_3ee00c44, "The spec valid usage text states 'aspectMask must be a subset of the aspect masks in the specified input attachment.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-01570)"}, - {VALIDATION_ERROR_3f01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_3f02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType)"}, {VALIDATION_ERROR_3f03ce1b, "The spec valid usage text states 'aspectReferenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength)"}, {VALIDATION_ERROR_3f03d001, "The spec valid usage text states 'pAspectReferences must be a valid pointer to an array of aspectReferenceCount valid VkInputAttachmentAspectReference structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter)"}, {VALIDATION_ERROR_3f200c66, "The spec valid usage text states 'usage must not include any set bits that were not set in the usage member of the VkImageCreateInfo structure used to create the image this image view is created from.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-01587)"}, - {VALIDATION_ERROR_3f21c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_3f22b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-sType-sType)"}, {VALIDATION_ERROR_3f230601, "The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-parameter)"}, {VALIDATION_ERROR_3f230603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask)"}, - {VALIDATION_ERROR_3f41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-pNext-pNext)"}, {VALIDATION_ERROR_3f42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType)"}, {VALIDATION_ERROR_3f43d201, "The spec valid usage text states 'domainOrigin must be a valid VkTessellationDomainOrigin value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter)"}, {VALIDATION_ERROR_3f600c54, "The spec valid usage text states 'If viewFormatCount is not 0, all of the formats in the pViewFormats array must be compatible with the format specified in the format field of VkImageCreateInfo, as described in the compatibility table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578)"}, {VALIDATION_ERROR_3f600c56, "The spec valid usage text states 'If VkImageCreateInfo::flags does not contain VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, viewFormatCount must be 0 or 1.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-flags-01579)"}, {VALIDATION_ERROR_3f600c58, "The spec valid usage text states 'If viewFormatCount is not 0, VkImageCreateInfo::format must be in pViewFormats.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580)"}, - {VALIDATION_ERROR_3f61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-pNext-pNext)"}, {VALIDATION_ERROR_3f62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-sType-sType)"}, {VALIDATION_ERROR_3f63e401, "The spec valid usage text states 'If viewFormatCount is not 0, pViewFormats must be a valid pointer to an array of viewFormatCount valid VkFormat values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-pViewFormats-parameter)"}, {VALIDATION_ERROR_3f800ce2, "The spec valid usage text states 'format must not be VK_FORMAT_UNDEFINED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-01649)"}, @@ -7673,7 +7672,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_3f800cee, "The spec valid usage text states 'If ycbcrModel is not VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY, then components.r, components.g, and components.b must correspond to channels of the format; that is, components.r, components.g, and components.b must not be VK_COMPONENT_SWIZZLE_ZERO or VK_COMPONENT_SWIZZLE_ONE, and must not correspond to a channel which contains zero or one as a consequence of conversion to RGBA' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-ycbcrModel-01655)"}, {VALIDATION_ERROR_3f800cf0, "The spec valid usage text states 'If the format does not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT, forceExplicitReconstruction must be FALSE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656)"}, {VALIDATION_ERROR_3f800cf2, "The spec valid usage text states 'If the format does not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, chromaFilter must be VK_FILTER_NEAREST' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657)"}, - {VALIDATION_ERROR_3f800ee0, "The spec valid usage text states 'If an external format conversion is being created, format must be VK_FORMAT_UNDEFINED, otherwise it must not be VK_FORMAT_UNDEFINED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfoKHR-format-01904)"}, + {VALIDATION_ERROR_3f800ee0, "The spec valid usage text states 'If an external format conversion is being created, format must be VK_FORMAT_UNDEFINED, otherwise it must not be VK_FORMAT_UNDEFINED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-01904)"}, {VALIDATION_ERROR_3f802c01, "The spec valid usage text states 'components must be a valid VkComponentMapping structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-components-parameter)"}, {VALIDATION_ERROR_3f809201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-format-parameter)"}, {VALIDATION_ERROR_3f81c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkExternalFormatANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionCreateInfo-pNext-pNext)"}, @@ -7698,7 +7697,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_40000c8c, "The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606)"}, {VALIDATION_ERROR_40000c8e, "The spec valid usage text states 'All elements of pDeviceIndices must be valid device indices' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607)"}, {VALIDATION_ERROR_40013e01, "The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter)"}, - {VALIDATION_ERROR_4001c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pNext-pNext)"}, {VALIDATION_ERROR_4002b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType)"}, {VALIDATION_ERROR_40200cc2, "The spec valid usage text states 'At least one of deviceIndexCount and splitInstanceBindRegionCount must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633)"}, {VALIDATION_ERROR_40200cc4, "The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634)"}, @@ -7710,7 +7708,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_40200cd0, "The spec valid usage text states 'The extent.width member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block width of all non-metadata aspects of the image, or else extent.width + offset.x must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640)"}, {VALIDATION_ERROR_40200cd2, "The spec valid usage text states 'The extent.height member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block height of all non-metadata aspects of the image, or else extent.height offset.y must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641)"}, {VALIDATION_ERROR_40213e01, "The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter)"}, - {VALIDATION_ERROR_4021c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pNext-pNext)"}, {VALIDATION_ERROR_4022b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType)"}, {VALIDATION_ERROR_4023fe01, "The spec valid usage text states 'If splitInstanceBindRegionCount is not 0, pSplitInstanceBindRegions must be a valid pointer to an array of splitInstanceBindRegionCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter)"}, {VALIDATION_ERROR_40405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroySamplerYcbcrConversion-device-parameter)"}, @@ -7721,7 +7718,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_4082b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionImageFormatProperties-sType-sType)"}, {VALIDATION_ERROR_40a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-sType-sType)"}, {VALIDATION_ERROR_40a3e601, "The spec valid usage text states 'conversion must be a valid VkSamplerYcbcrConversion handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-conversion-parameter)"}, - {VALIDATION_ERROR_40c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_40c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_40c3ea01, "The spec valid usage text states 'globalPriority must be a valid VkQueueGlobalPriorityEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter)"}, {VALIDATION_ERROR_40e05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetShaderInfoAMD-device-parameter)"}, @@ -7737,11 +7733,9 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_41200dac, "The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750)"}, {VALIDATION_ERROR_41200dae, "The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host mapped foreign memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751)"}, {VALIDATION_ERROR_41209c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter)"}, - {VALIDATION_ERROR_4121c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_4122b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-sType-sType)"}, {VALIDATION_ERROR_4141c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_4142b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-sType-sType)"}, - {VALIDATION_ERROR_4161c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_4162b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType)"}, {VALIDATION_ERROR_41800db0, "The spec valid usage text states 'handleType must be VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT or VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752)"}, {VALIDATION_ERROR_41800db2, "The spec valid usage text states 'pHostPointer must be a pointer aligned to an integer multiple of VkPhysicalDeviceExternalMemoryHostPropertiesEXT::minImportedHostPointerAlignment' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-pHostPointer-01753)"}, @@ -7750,11 +7744,9 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_41805601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-device-parameter)"}, {VALIDATION_ERROR_41809c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-parameter)"}, {VALIDATION_ERROR_4183f401, "The spec valid usage text states 'pMemoryHostPointerProperties must be a valid pointer to a VkMemoryHostPointerPropertiesEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter)"}, - {VALIDATION_ERROR_41a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_41a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType)"}, {VALIDATION_ERROR_41c00dd2, "The spec valid usage text states 'extraPrimitiveOverestimationSize must be in the range of 0.0 to VkPhysicalDeviceConservativeRasterizationPropertiesEXT::maxExtraPrimitiveOverestimationSize inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769)"}, {VALIDATION_ERROR_41c09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask)"}, - {VALIDATION_ERROR_41c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_41c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_41c3f801, "The spec valid usage text states 'conservativeRasterizationMode must be a valid VkConservativeRasterizationModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter)"}, {VALIDATION_ERROR_41e00009, "The spec valid usage text states 'Both of commandBuffer, and dstBuffer must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commonparent)"}, @@ -7767,7 +7759,7 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_41e02415, "The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool)"}, {VALIDATION_ERROR_41e06c01, "The spec valid usage text states 'dstBuffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter)"}, {VALIDATION_ERROR_41e28401, "The spec valid usage text states 'pipelineStage must be a valid VkPipelineStageFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter)"}, - {VALIDATION_ERROR_4201c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)"}, + {VALIDATION_ERROR_4201c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountLayoutSupportEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)"}, {VALIDATION_ERROR_4202b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-sType-sType)"}, {VALIDATION_ERROR_42200e64, "The spec valid usage text states 'queueFamilyIndex must be one of the queue family indices specified when device was created, via the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueFamilyIndex-01842)"}, {VALIDATION_ERROR_42200e66, "The spec valid usage text states 'queueIndex must be less than the number of queues created for the specified queue family index and VkDeviceQueueCreateFlags member flags equal to this flags value when device was created, via the queueCount member of the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueIndex-01843)"}, @@ -7775,20 +7767,15 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_42209003, "The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-flags-requiredbitmask)"}, {VALIDATION_ERROR_4221c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-pNext-pNext)"}, {VALIDATION_ERROR_4222b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-sType-sType)"}, - {VALIDATION_ERROR_4241c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMaintenance3Properties-pNext-pNext)"}, {VALIDATION_ERROR_4242b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMaintenance3Properties-sType-sType)"}, - {VALIDATION_ERROR_4261c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryFeatures-pNext-pNext)"}, {VALIDATION_ERROR_4262b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryFeatures-sType-sType)"}, - {VALIDATION_ERROR_4281c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryProperties-pNext-pNext)"}, {VALIDATION_ERROR_4282b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProtectedMemoryProperties-sType-sType)"}, {VALIDATION_ERROR_42a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceShaderDrawParameterFeatures-sType-sType)"}, - {VALIDATION_ERROR_42c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSubgroupProperties-pNext-pNext)"}, {VALIDATION_ERROR_42c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSubgroupProperties-sType-sType)"}, {VALIDATION_ERROR_42e00e30, "The spec valid usage text states 'If the protected memory feature is not enabled, protectedSubmit must not be VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01816)"}, {VALIDATION_ERROR_42e00e32, "The spec valid usage text states 'If protectedSubmit is VK_TRUE, then each element of the pCommandBuffers array must be a protected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01817)"}, {VALIDATION_ERROR_42e00e34, "The spec valid usage text states 'If protectedSubmit is VK_FALSE, then each element of the pCommandBuffers array must be an unprotected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-protectedSubmit-01818)"}, {VALIDATION_ERROR_42e00e36, "The spec valid usage text states 'If the VkSubmitInfo::pNext chain does not include a VkProtectedSubmitInfo structure, then each element of the command buffer of the pCommandBuffers array must be an unprotected command buffer.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-pNext-01819)"}, - {VALIDATION_ERROR_42e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-pNext-pNext)"}, {VALIDATION_ERROR_42e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkProtectedSubmitInfo-sType-sType)"}, {VALIDATION_ERROR_43040001, "The spec valid usage text states 'pApiVersion must be a valid pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkEnumerateInstanceVersion-pApiVersion-parameter)"}, {VALIDATION_ERROR_43205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetDescriptorSetLayoutSupport-device-parameter)"}, @@ -7823,7 +7810,6 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_43c42201, "The spec valid usage text states 'If pMessageIdName is not NULL, pMessageIdName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCallbackDataEXT-pMessageIdName-parameter)"}, {VALIDATION_ERROR_43e00ef4, "The spec valid usage text states 'pfnUserCallback must be a valid PFN_vkDebugUtilsMessengerCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-pfnUserCallback-01914)"}, {VALIDATION_ERROR_43e09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-flags-zerobitmask)"}, - {VALIDATION_ERROR_43e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-pNext-pNext)"}, {VALIDATION_ERROR_43e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-sType-sType)"}, {VALIDATION_ERROR_43e40a01, "The spec valid usage text states 'messageSeverity must be a valid combination of VkDebugUtilsMessageSeverityFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-parameter)"}, {VALIDATION_ERROR_43e40a03, "The spec valid usage text states 'messageSeverity must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-requiredbitmask)"}, @@ -7838,15 +7824,15 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_44241201, "The spec valid usage text states 'messageTypes must be a valid combination of VkDebugUtilsMessageTypeFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-parameter)"}, {VALIDATION_ERROR_44241203, "The spec valid usage text states 'messageTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-requiredbitmask)"}, {VALIDATION_ERROR_44242801, "The spec valid usage text states 'pCallbackData must be a valid pointer to a valid VkDebugUtilsMessengerCallbackDataEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter)"}, - {VALIDATION_ERROR_4441c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-pNext-pNext)"}, {VALIDATION_ERROR_4442b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType)"}, + {VALIDATION_ERROR_4462b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType)"}, + {VALIDATION_ERROR_4464141b, "The spec valid usage text states 'vertexBindingDivisorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength)"}, + {VALIDATION_ERROR_44641601, "The spec valid usage text states 'pVertexBindingDivisors must be a valid pointer to an array of vertexBindingDivisorCount VkVertexInputBindingDivisorDescriptionEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter)"}, {VALIDATION_ERROR_44800ecc, "The spec valid usage text states 'externalFormat must be 0 or a value returned in the externalFormat member of VkAndroidHardwareBufferFormatPropertiesANDROID by an earlier call to vkGetAndroidHardwareBufferPropertiesANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-externalFormat-01894)"}, - {VALIDATION_ERROR_4481c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-pNext-pNext)"}, {VALIDATION_ERROR_4482b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-sType-sType)"}, {VALIDATION_ERROR_44a00eb0, "The spec valid usage text states 'If buffer is not NULL, Android hardware buffers must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880)"}, {VALIDATION_ERROR_44a00eb2, "The spec valid usage text states 'If buffer is not NULL, it must be a valid Android hardware buffer object with format and usage compatible with Vulkan as described by VkExternalMemoryHandleTypeFlagBits.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881)"}, {VALIDATION_ERROR_44a01a01, "The spec valid usage text states 'buffer must be a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter)"}, - {VALIDATION_ERROR_44a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-pNext-pNext)"}, {VALIDATION_ERROR_44a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType)"}, {VALIDATION_ERROR_44c00eb4, "The spec valid usage text states 'VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882)"}, {VALIDATION_ERROR_44c00eb6, "The spec valid usage text states 'If the pNext chain of the VkMemoryAllocateInfo used to allocate memory included a VkMemoryDedicatedAllocateInfo with non-NULL image member, then that image must already be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883)"}, @@ -7867,12 +7853,10 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_4521f401, "The spec valid usage text states 'pProperties must be a valid pointer to a VkAndroidHardwareBufferPropertiesANDROID structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetAndroidHardwareBufferPropertiesANDROID-pProperties-parameter)"}, {VALIDATION_ERROR_45400eee, "The spec valid usage text states 'There must be an outstanding vkQueueBeginDebugUtilsLabelEXT command prior to the vkQueueEndDebugUtilsLabelEXT on the queue' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkQueueEndDebugUtilsLabelEXT-None-01911)"}, {VALIDATION_ERROR_45429c01, "The spec valid usage text states 'queue must be a valid VkQueue handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkQueueEndDebugUtilsLabelEXT-queue-parameter)"}, - {VALIDATION_ERROR_4561c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferUsageANDROID-pNext-pNext)"}, {VALIDATION_ERROR_4562b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferUsageANDROID-sType-sType)"}, {VALIDATION_ERROR_45a05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-device-parameter)"}, {VALIDATION_ERROR_45a10001, "The spec valid usage text states 'pBuffer must be a valid pointer to a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-pBuffer-parameter)"}, {VALIDATION_ERROR_45a39c01, "The spec valid usage text states 'pInfo must be a valid pointer to a valid VkMemoryGetAndroidHardwareBufferInfoANDROID structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryAndroidHardwareBufferANDROID-pInfo-parameter)"}, - {VALIDATION_ERROR_45c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-pNext-pNext)"}, {VALIDATION_ERROR_45c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-sType-sType)"}, {VALIDATION_ERROR_45e02401, "The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-parameter)"}, {VALIDATION_ERROR_45e02413, "The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-recording)"}, @@ -7890,6 +7874,34 @@ static std::unordered_map<int, char const *const> validation_error_map{ {VALIDATION_ERROR_4661c201, "The spec valid usage text states 'pNameInfo must be a valid pointer to a valid VkDebugUtilsObjectNameInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectNameEXT-pNameInfo-parameter)"}, {VALIDATION_ERROR_46805601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectTagEXT-device-parameter)"}, {VALIDATION_ERROR_46825c01, "The spec valid usage text states 'pTagInfo must be a valid pointer to a valid VkDebugUtilsObjectTagInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSetDebugUtilsObjectTagEXT-pTagInfo-parameter)"}, + {VALIDATION_ERROR_46a01774, "The spec valid usage text states 'If bindingCount is not zero, bindingCount must equal VkDescriptorSetLayoutCreateInfo::bindingCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-bindingCount-03002)"}, + {VALIDATION_ERROR_46a01776, "The spec valid usage text states 'If VkDescriptorSetLayoutCreateInfo::flags includes VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, then all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT, VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT, or VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-flags-03003)"}, + {VALIDATION_ERROR_46a01778, "The spec valid usage text states 'If an element of pBindingFlags includes VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT, then all other elements of VkDescriptorSetLayoutCreateInfo::pBindings must have a smaller value of binding' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03004)"}, + {VALIDATION_ERROR_46a0177a, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUniformBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformBufferUpdateAfterBind-03005)"}, + {VALIDATION_ERROR_46a0177c, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingSampledImageUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_SAMPLER, VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, or VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingSampledImageUpdateAfterBind-03006)"}, + {VALIDATION_ERROR_46a0177e, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageImageUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_IMAGE must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageImageUpdateAfterBind-03007)"}, + {VALIDATION_ERROR_46a01780, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageBufferUpdateAfterBind-03008)"}, + {VALIDATION_ERROR_46a01782, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUniformTexelBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformTexelBufferUpdateAfterBind-03009)"}, + {VALIDATION_ERROR_46a01784, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingStorageTexelBufferUpdateAfterBind is not enabled, all bindings with descriptor type VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageTexelBufferUpdateAfterBind-03010)"}, + {VALIDATION_ERROR_46a01786, "The spec valid usage text states 'All bindings with descriptor type VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC must not use VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-None-03011)"}, + {VALIDATION_ERROR_46a01788, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingUpdateUnusedWhilePending is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUpdateUnusedWhilePending-03012)"}, + {VALIDATION_ERROR_46a0178a, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingPartiallyBound is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingPartiallyBound-03013)"}, + {VALIDATION_ERROR_46a0178c, "The spec valid usage text states 'If VkPhysicalDeviceDescriptorIndexingFeaturesEXT::descriptorBindingVariableDescriptorCount is not enabled, all elements of pBindingFlags must not include VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingVariableDescriptorCount-03014)"}, + {VALIDATION_ERROR_46a0178e, "The spec valid usage text states 'If an element of pBindingFlags includes VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT, that element's descriptorType must not be VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03015)"}, + {VALIDATION_ERROR_46a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-sType-sType)"}, + {VALIDATION_ERROR_46a42a01, "The spec valid usage text states 'If bindingCount is not 0, pBindingFlags must be a valid pointer to an array of bindingCount valid combinations of VkDescriptorBindingFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-parameter)"}, + {VALIDATION_ERROR_46a42a03, "The spec valid usage text states 'Each element of pBindingFlags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-requiredbitmask)"}, + {VALIDATION_ERROR_46c017ca, "The spec valid usage text states 'If descriptorSetCount is not zero, descriptorSetCount must equal VkDescriptorSetAllocateInfo::descriptorSetCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045)"}, + {VALIDATION_ERROR_46c017cc, "The spec valid usage text states 'If VkDescriptorSetAllocateInfo::pSetLayouts[i] has a variable descriptor count binding, then pDescriptorCounts[i] must be less than or equal to the descriptor count specified for that binding when the descriptor set layout was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046)"}, + {VALIDATION_ERROR_46c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType)"}, + {VALIDATION_ERROR_46c42c01, "The spec valid usage text states 'If descriptorSetCount is not 0, pDescriptorCounts must be a valid pointer to an array of descriptorSetCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter)"}, + {VALIDATION_ERROR_46e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType)"}, + {VALIDATION_ERROR_4702b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType)"}, + {VALIDATION_ERROR_4722b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType)"}, + {VALIDATION_ERROR_4742b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceShaderCorePropertiesAMD-sType-sType)"}, + {VALIDATION_ERROR_47600e9a, "The spec valid usage text states 'binding must be less than VkPhysicalDeviceLimits::maxVertexInputBindings' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-binding-01869)"}, + {VALIDATION_ERROR_47600e9c, "The spec valid usage text states 'divisor must be a value between 0 and VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT::maxVertexAttribDivisor, inclusive.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-divisor-01870)"}, + {VALIDATION_ERROR_47600e9e, "The spec valid usage text states 'VkVertexInputBindingDescription::inputRate must be of type VK_VERTEX_INPUT_RATE_INSTANCE for this binding.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkVertexInputBindingDivisorDescriptionEXT-inputRate-01871)"}, }; @@ -7947,7 +7959,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkBindBufferMemoryInfo-buffer-01603", VALIDATION_ERROR_00c00c86}, {"VUID-VkBindBufferMemoryInfo-buffer-01604", VALIDATION_ERROR_00c00c88}, {"VUID-VkBindBufferMemoryInfo-pNext-01605", VALIDATION_ERROR_00c00c8a}, - {"VUID-VkBindBufferMemoryInfoKHR-memory-01900", VALIDATION_ERROR_00c00ed8}, + {"VUID-VkBindBufferMemoryInfo-memory-01900", VALIDATION_ERROR_00c00ed8}, {"VUID-VkBindBufferMemoryInfo-buffer-parameter", VALIDATION_ERROR_00c01a01}, {"VUID-VkBindBufferMemoryInfo-memory-parameter", VALIDATION_ERROR_00c0c601}, {"VUID-VkBindBufferMemoryInfo-pNext-pNext", VALIDATION_ERROR_00c1c40d}, @@ -7977,7 +7989,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkBindImageMemoryInfo-image-01630", VALIDATION_ERROR_00e00cbc}, {"VUID-VkBindImageMemoryInfo-pNext-01631", VALIDATION_ERROR_00e00cbe}, {"VUID-VkBindImageMemoryInfo-pNext-01632", VALIDATION_ERROR_00e00cc0}, - {"VUID-VkBindImageMemoryInfoKHR-memory-01903", VALIDATION_ERROR_00e00ede}, + {"VUID-VkBindImageMemoryInfo-memory-01903", VALIDATION_ERROR_00e00ede}, {"VUID-VkBindImageMemoryInfo-image-parameter", VALIDATION_ERROR_00e0a001}, {"VUID-VkBindImageMemoryInfo-pNext-pNext", VALIDATION_ERROR_00e1c40d}, {"VUID-VkBindImageMemoryInfo-sType-sType", VALIDATION_ERROR_00e2b00b}, @@ -8155,6 +8167,10 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkCopyDescriptorSet-dstBinding-00347", VALIDATION_ERROR_032002b6}, {"VUID-VkCopyDescriptorSet-dstArrayElement-00348", VALIDATION_ERROR_032002b8}, {"VUID-VkCopyDescriptorSet-srcSet-00349", VALIDATION_ERROR_032002ba}, + {"VUID-VkCopyDescriptorSet-srcSet-01918", VALIDATION_ERROR_03200efc}, + {"VUID-VkCopyDescriptorSet-srcSet-01919", VALIDATION_ERROR_03200efe}, + {"VUID-VkCopyDescriptorSet-srcSet-01920", VALIDATION_ERROR_03200f00}, + {"VUID-VkCopyDescriptorSet-srcSet-01921", VALIDATION_ERROR_03200f02}, {"VUID-VkCopyDescriptorSet-dstSet-parameter", VALIDATION_ERROR_03207601}, {"VUID-VkCopyDescriptorSet-pNext-pNext", VALIDATION_ERROR_0321c40d}, {"VUID-VkCopyDescriptorSet-sType-sType", VALIDATION_ERROR_0322b00b}, @@ -8184,7 +8200,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkDebugMarkerObjectTagInfoEXT-tagSize-arraylength", VALIDATION_ERROR_03a2f41b}, {"VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385", VALIDATION_ERROR_03c00ad2}, {"VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter", VALIDATION_ERROR_03c09001}, - {"VUID-VkDebugReportCallbackCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_03c1c40d}, {"VUID-VkDebugReportCallbackCreateInfoEXT-sType-sType", VALIDATION_ERROR_03c2b00b}, {"VUID-VkDedicatedAllocationBufferCreateInfoNV-sType-sType", VALIDATION_ERROR_03e2b00b}, {"VUID-VkDedicatedAllocationImageCreateInfoNV-dedicatedAllocation-00994", VALIDATION_ERROR_040007c4}, @@ -8221,6 +8236,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-00306", VALIDATION_ERROR_04c00264}, {"VUID-VkDescriptorSetAllocateInfo-descriptorPool-00307", VALIDATION_ERROR_04c00266}, {"VUID-VkDescriptorSetAllocateInfo-pSetLayouts-00308", VALIDATION_ERROR_04c00268}, + {"VUID-VkDescriptorSetAllocateInfo-pSetLayouts-03044", VALIDATION_ERROR_04c017c8}, {"VUID-VkDescriptorSetAllocateInfo-descriptorPool-parameter", VALIDATION_ERROR_04c04601}, {"VUID-VkDescriptorSetAllocateInfo-descriptorSetCount-arraylength", VALIDATION_ERROR_04c04a1b}, {"VUID-VkDescriptorSetAllocateInfo-pNext-pNext", VALIDATION_ERROR_04c1c40d}, @@ -8233,6 +8249,8 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkDescriptorSetLayoutCreateInfo-binding-00279", VALIDATION_ERROR_0500022e}, {"VUID-VkDescriptorSetLayoutCreateInfo-flags-00280", VALIDATION_ERROR_05000230}, {"VUID-VkDescriptorSetLayoutCreateInfo-flags-00281", VALIDATION_ERROR_05000232}, + {"VUID-VkDescriptorSetLayoutCreateInfo-flags-03000", VALIDATION_ERROR_05001770}, + {"VUID-VkDescriptorSetLayoutCreateInfo-descriptorType-03001", VALIDATION_ERROR_05001772}, {"VUID-VkDescriptorSetLayoutCreateInfo-flags-parameter", VALIDATION_ERROR_05009001}, {"VUID-VkDescriptorSetLayoutCreateInfo-pBindings-parameter", VALIDATION_ERROR_0500fc01}, {"VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext", VALIDATION_ERROR_0501c40d}, @@ -8358,35 +8376,26 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkEventCreateInfo-sType-sType", VALIDATION_ERROR_07e2b00b}, {"VUID-VkExportMemoryAllocateInfo-handleTypes-00656", VALIDATION_ERROR_08000520}, {"VUID-VkExportMemoryAllocateInfo-handleTypes-parameter", VALIDATION_ERROR_08009e01}, - {"VUID-VkExportMemoryAllocateInfo-pNext-pNext", VALIDATION_ERROR_0801c40d}, {"VUID-VkExportMemoryAllocateInfo-sType-sType", VALIDATION_ERROR_0802b00b}, {"VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter", VALIDATION_ERROR_08209e01}, - {"VUID-VkExportMemoryAllocateInfoNV-pNext-pNext", VALIDATION_ERROR_0821c40d}, {"VUID-VkExportMemoryAllocateInfoNV-sType-sType", VALIDATION_ERROR_0822b00b}, {"VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657", VALIDATION_ERROR_08400522}, {"VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter", VALIDATION_ERROR_0840f401}, - {"VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext", VALIDATION_ERROR_0841c40d}, {"VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_0842b00b}, {"VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter", VALIDATION_ERROR_0860f401}, - {"VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext", VALIDATION_ERROR_0861c40d}, {"VUID-VkExportMemoryWin32HandleInfoNV-sType-sType", VALIDATION_ERROR_0862b00b}, {"VUID-VkExportSemaphoreCreateInfo-handleTypes-01124", VALIDATION_ERROR_088008c8}, {"VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter", VALIDATION_ERROR_08809e01}, - {"VUID-VkExportSemaphoreCreateInfo-pNext-pNext", VALIDATION_ERROR_0881c40d}, {"VUID-VkExportSemaphoreCreateInfo-sType-sType", VALIDATION_ERROR_0882b00b}, {"VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125", VALIDATION_ERROR_08a008ca}, {"VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter", VALIDATION_ERROR_08a0f401}, - {"VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext", VALIDATION_ERROR_08a1c40d}, {"VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_08a2b00b}, {"VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter", VALIDATION_ERROR_08c09e01}, - {"VUID-VkExternalMemoryBufferCreateInfo-pNext-pNext", VALIDATION_ERROR_08c1c40d}, {"VUID-VkExternalMemoryBufferCreateInfo-sType-sType", VALIDATION_ERROR_08c2b00b}, {"VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter", VALIDATION_ERROR_08e09e01}, {"VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask", VALIDATION_ERROR_08e09e03}, - {"VUID-VkExternalMemoryImageCreateInfo-pNext-pNext", VALIDATION_ERROR_08e1c40d}, {"VUID-VkExternalMemoryImageCreateInfo-sType-sType", VALIDATION_ERROR_08e2b00b}, {"VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter", VALIDATION_ERROR_09009e01}, - {"VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext", VALIDATION_ERROR_0901c40d}, {"VUID-VkExternalMemoryImageCreateInfoNV-sType-sType", VALIDATION_ERROR_0902b00b}, {"VUID-VkFenceCreateInfo-flags-parameter", VALIDATION_ERROR_09209001}, {"VUID-VkFenceCreateInfo-pNext-pNext", VALIDATION_ERROR_0921c40d}, @@ -8619,6 +8628,8 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImageCreateInfo-None-01891", VALIDATION_ERROR_09e00ec6}, {"VUID-VkImageCreateInfo-pNext-01892", VALIDATION_ERROR_09e00ec8}, {"VUID-VkImageCreateInfo-pNext-01893", VALIDATION_ERROR_09e00eca}, + {"VUID-VkImageCreateInfo-flags-01924", VALIDATION_ERROR_09e00f08}, + {"VUID-VkImageCreateInfo-None-01925", VALIDATION_ERROR_09e00f0a}, {"VUID-VkImageCreateInfo-flags-parameter", VALIDATION_ERROR_09e09001}, {"VUID-VkImageCreateInfo-format-parameter", VALIDATION_ERROR_09e09201}, {"VUID-VkImageCreateInfo-imageType-parameter", VALIDATION_ERROR_09e0ac01}, @@ -8746,7 +8757,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImportMemoryFdInfoKHR-fd-01520", VALIDATION_ERROR_0ae00be0}, {"VUID-VkImportMemoryFdInfoKHR-fd-01746", VALIDATION_ERROR_0ae00da4}, {"VUID-VkImportMemoryFdInfoKHR-handleType-parameter", VALIDATION_ERROR_0ae09c01}, - {"VUID-VkImportMemoryFdInfoKHR-pNext-pNext", VALIDATION_ERROR_0ae1c40d}, {"VUID-VkImportMemoryFdInfoKHR-sType-sType", VALIDATION_ERROR_0ae2b00b}, {"VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658", VALIDATION_ERROR_0b000524}, {"VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659", VALIDATION_ERROR_0b000526}, @@ -8758,12 +8768,10 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518", VALIDATION_ERROR_0b000bdc}, {"VUID-VkImportMemoryWin32HandleInfoKHR-name-01519", VALIDATION_ERROR_0b000bde}, {"VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter", VALIDATION_ERROR_0b009c01}, - {"VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext", VALIDATION_ERROR_0b01c40d}, {"VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_0b02b00b}, {"VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327", VALIDATION_ERROR_0b200a5e}, {"VUID-VkImportMemoryWin32HandleInfoNV-handle-01328", VALIDATION_ERROR_0b200a60}, {"VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter", VALIDATION_ERROR_0b209c01}, - {"VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext", VALIDATION_ERROR_0b21c40d}, {"VUID-VkImportMemoryWin32HandleInfoNV-sType-sType", VALIDATION_ERROR_0b22b00b}, {"VUID-VkImportSemaphoreFdInfoKHR-handleType-01143", VALIDATION_ERROR_0b4008ee}, {"VUID-VkImportSemaphoreFdInfoKHR-fd-01544", VALIDATION_ERROR_0b400c10}, @@ -8905,7 +8913,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkObjectTableVertexBufferEntryNVX-flags-parameter", VALIDATION_ERROR_0d809001}, {"VUID-VkObjectTableVertexBufferEntryNVX-flags-requiredbitmask", VALIDATION_ERROR_0d809003}, {"VUID-VkObjectTableVertexBufferEntryNVX-type-parameter", VALIDATION_ERROR_0d830401}, - {"VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext", VALIDATION_ERROR_0da1c40d}, {"VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType", VALIDATION_ERROR_0da2b00b}, {"VUID-VkPhysicalDeviceExternalBufferInfo-flags-parameter", VALIDATION_ERROR_0dc09001}, {"VUID-VkPhysicalDeviceExternalBufferInfo-handleType-parameter", VALIDATION_ERROR_0dc09c01}, @@ -8918,9 +8925,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter", VALIDATION_ERROR_0e009c01}, {"VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext", VALIDATION_ERROR_0e01c40d}, {"VUID-VkPhysicalDeviceExternalSemaphoreInfo-sType-sType", VALIDATION_ERROR_0e02b00b}, - {"VUID-VkPhysicalDeviceFeatures2-pNext-pNext", VALIDATION_ERROR_0e41c40d}, {"VUID-VkPhysicalDeviceFeatures2-sType-sType", VALIDATION_ERROR_0e42b00b}, - {"VUID-VkPhysicalDeviceFeatures2-sType-unique", VALIDATION_ERROR_0e42b00f}, {"VUID-VkPhysicalDeviceImageFormatInfo2-flags-parameter", VALIDATION_ERROR_0e609001}, {"VUID-VkPhysicalDeviceImageFormatInfo2-format-parameter", VALIDATION_ERROR_0e609201}, {"VUID-VkPhysicalDeviceImageFormatInfo2-pNext-pNext", VALIDATION_ERROR_0e61c40d}, @@ -8932,7 +8937,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkPhysicalDeviceMultiviewFeatures-multiviewGeometryShader-00580", VALIDATION_ERROR_0e800488}, {"VUID-VkPhysicalDeviceMultiviewFeatures-multiviewTessellationShader-00581", VALIDATION_ERROR_0e80048a}, {"VUID-VkPhysicalDeviceMultiviewFeatures-sType-sType", VALIDATION_ERROR_0e82b00b}, - {"VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-pNext-pNext", VALIDATION_ERROR_0ea1c40d}, {"VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-sType-sType", VALIDATION_ERROR_0ea2b00b}, {"VUID-VkPhysicalDeviceSparseImageFormatInfo2-samples-01095", VALIDATION_ERROR_0ec0088e}, {"VUID-VkPhysicalDeviceSparseImageFormatInfo2-format-parameter", VALIDATION_ERROR_0ec09201}, @@ -8985,7 +8989,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582", VALIDATION_ERROR_0f80048c}, {"VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter", VALIDATION_ERROR_0f805e01}, {"VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask", VALIDATION_ERROR_0f809005}, - {"VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_0f81c40d}, {"VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType", VALIDATION_ERROR_0f82b00b}, {"VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442", VALIDATION_ERROR_0fa00b44}, {"VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength", VALIDATION_ERROR_0fa07c1b}, @@ -9017,6 +9020,34 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01682", VALIDATION_ERROR_0fe00d24}, {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01683", VALIDATION_ERROR_0fe00d26}, {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684", VALIDATION_ERROR_0fe00d28}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03016", VALIDATION_ERROR_0fe01790}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03017", VALIDATION_ERROR_0fe01792}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03018", VALIDATION_ERROR_0fe01794}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03019", VALIDATION_ERROR_0fe01796}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03020", VALIDATION_ERROR_0fe01798}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03021", VALIDATION_ERROR_0fe0179a}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03022", VALIDATION_ERROR_0fe0179c}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03023", VALIDATION_ERROR_0fe0179e}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03024", VALIDATION_ERROR_0fe017a0}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03025", VALIDATION_ERROR_0fe017a2}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03026", VALIDATION_ERROR_0fe017a4}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03027", VALIDATION_ERROR_0fe017a6}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03028", VALIDATION_ERROR_0fe017a8}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03029", VALIDATION_ERROR_0fe017aa}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03030", VALIDATION_ERROR_0fe017ac}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03031", VALIDATION_ERROR_0fe017ae}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03032", VALIDATION_ERROR_0fe017b0}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03033", VALIDATION_ERROR_0fe017b2}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03034", VALIDATION_ERROR_0fe017b4}, + {"VUID-VkPipelineLayoutCreateInfo-descriptorType-03035", VALIDATION_ERROR_0fe017b6}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036", VALIDATION_ERROR_0fe017b8}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037", VALIDATION_ERROR_0fe017ba}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038", VALIDATION_ERROR_0fe017bc}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039", VALIDATION_ERROR_0fe017be}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040", VALIDATION_ERROR_0fe017c0}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041", VALIDATION_ERROR_0fe017c2}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042", VALIDATION_ERROR_0fe017c4}, + {"VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043", VALIDATION_ERROR_0fe017c6}, {"VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask", VALIDATION_ERROR_0fe09005}, {"VUID-VkPipelineLayoutCreateInfo-pNext-pNext", VALIDATION_ERROR_0fe1c40d}, {"VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter", VALIDATION_ERROR_0fe1f801}, @@ -9097,7 +9128,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength", VALIDATION_ERROR_10c30a1b}, {"VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215", VALIDATION_ERROR_10e0097e}, {"VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask", VALIDATION_ERROR_10e09005}, - {"VUID-VkPipelineViewportSwizzleStateCreateInfoNV-pNext-pNext", VALIDATION_ERROR_10e1c40d}, {"VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType", VALIDATION_ERROR_10e2b00b}, {"VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength", VALIDATION_ERROR_10e30a1b}, {"VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType", VALIDATION_ERROR_1102b00b}, @@ -9168,7 +9198,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841", VALIDATION_ERROR_12400692}, {"VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-00842", VALIDATION_ERROR_12400694}, {"VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter", VALIDATION_ERROR_12411a01}, - {"VUID-VkRenderPassMultiviewCreateInfo-pNext-pNext", VALIDATION_ERROR_1241c40d}, {"VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter", VALIDATION_ERROR_12426c01}, {"VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter", VALIDATION_ERROR_12426e01}, {"VUID-VkRenderPassMultiviewCreateInfo-sType-sType", VALIDATION_ERROR_1242b00b}, @@ -9322,7 +9351,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkSurfaceCapabilities2EXT-pNext-pNext", VALIDATION_ERROR_1421c40d}, {"VUID-VkSurfaceCapabilities2EXT-sType-sType", VALIDATION_ERROR_1422b00b}, {"VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244", VALIDATION_ERROR_144009b8}, - {"VUID-VkSwapchainCounterCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_1441c40d}, {"VUID-VkSwapchainCounterCreateInfoEXT-sType-sType", VALIDATION_ERROR_1442b00b}, {"VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter", VALIDATION_ERROR_1442ee01}, {"VUID-VkSwapchainCreateInfoKHR-commonparent", VALIDATION_ERROR_14600009}, @@ -9364,7 +9392,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkSwapchainCreateInfoKHR-surface-parameter", VALIDATION_ERROR_1462ec01}, {"VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength", VALIDATION_ERROR_14805a1b}, {"VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter", VALIDATION_ERROR_14814401}, - {"VUID-VkValidationFlagsEXT-pNext-pNext", VALIDATION_ERROR_1481c40d}, {"VUID-VkValidationFlagsEXT-sType-sType", VALIDATION_ERROR_1482b00b}, {"VUID-VkVertexInputAttributeDescription-location-00620", VALIDATION_ERROR_14a004d8}, {"VUID-VkVertexInputAttributeDescription-binding-00621", VALIDATION_ERROR_14a004da}, @@ -9447,6 +9474,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkWriteDescriptorSet-descriptorType-00339", VALIDATION_ERROR_15c002a6}, {"VUID-VkWriteDescriptorSet-descriptorType-01402", VALIDATION_ERROR_15c00af4}, {"VUID-VkWriteDescriptorSet-descriptorType-01403", VALIDATION_ERROR_15c00af6}, + {"VUID-VkWriteDescriptorSet-descriptorCount-03048", VALIDATION_ERROR_15c017d0}, {"VUID-VkWriteDescriptorSet-descriptorCount-arraylength", VALIDATION_ERROR_15c0441b}, {"VUID-VkWriteDescriptorSet-descriptorType-parameter", VALIDATION_ERROR_15c04e01}, {"VUID-VkWriteDescriptorSet-pNext-pNext", VALIDATION_ERROR_15c1c40d}, @@ -9545,18 +9573,15 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkBindImageMemory2-device-parameter", VALIDATION_ERROR_17605601}, {"VUID-vkBindImageMemory2-pBindInfos-parameter", VALIDATION_ERROR_1760fa01}, {"VUID-vkCmdBeginQuery-commonparent", VALIDATION_ERROR_17800009}, - {"VUID-vkCmdBeginQuery-queryPool-00798", VALIDATION_ERROR_1780063c}, - {"VUID-vkCmdBeginQuery-queryPool-00799", VALIDATION_ERROR_1780063e}, {"VUID-vkCmdBeginQuery-queryType-00800", VALIDATION_ERROR_17800640}, - {"VUID-vkCmdBeginQuery-queryPool-00801", VALIDATION_ERROR_17800642}, {"VUID-vkCmdBeginQuery-query-00802", VALIDATION_ERROR_17800644}, {"VUID-vkCmdBeginQuery-queryType-00803", VALIDATION_ERROR_17800646}, {"VUID-vkCmdBeginQuery-queryType-00804", VALIDATION_ERROR_17800648}, {"VUID-vkCmdBeginQuery-queryType-00805", VALIDATION_ERROR_1780064a}, - {"VUID-vkCmdBeginQuery-None-00806", VALIDATION_ERROR_1780064c}, {"VUID-vkCmdBeginQuery-None-00807", VALIDATION_ERROR_1780064e}, {"VUID-vkCmdBeginQuery-query-00808", VALIDATION_ERROR_17800650}, {"VUID-vkCmdBeginQuery-commandBuffer-01885", VALIDATION_ERROR_17800eba}, + {"VUID-vkCmdBeginQuery-queryPool-01922", VALIDATION_ERROR_17800f04}, {"VUID-vkCmdBeginQuery-commandBuffer-parameter", VALIDATION_ERROR_17802401}, {"VUID-vkCmdBeginQuery-commandBuffer-recording", VALIDATION_ERROR_17802413}, {"VUID-vkCmdBeginQuery-commandBuffer-cmdpool", VALIDATION_ERROR_17802415}, @@ -9811,6 +9836,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkCmdCopyImage-commandBuffer-01825", VALIDATION_ERROR_19000e42}, {"VUID-vkCmdCopyImage-commandBuffer-01826", VALIDATION_ERROR_19000e44}, {"VUID-vkCmdCopyImage-commandBuffer-01827", VALIDATION_ERROR_19000e46}, + {"VUID-vkCmdCopyImage-srcImageLayout-01917", VALIDATION_ERROR_19000efa}, {"VUID-vkCmdCopyImage-commandBuffer-parameter", VALIDATION_ERROR_19002401}, {"VUID-vkCmdCopyImage-commandBuffer-recording", VALIDATION_ERROR_19002413}, {"VUID-vkCmdCopyImage-commandBuffer-cmdpool", VALIDATION_ERROR_19002415}, @@ -10151,11 +10177,10 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkCmdDrawIndirectCountAMD-commandBuffer-cmdpool", VALIDATION_ERROR_1ac02415}, {"VUID-vkCmdDrawIndirectCountAMD-countBuffer-parameter", VALIDATION_ERROR_1ac03401}, {"VUID-vkCmdEndQuery-commonparent", VALIDATION_ERROR_1ae00009}, - {"VUID-vkCmdEndQuery-queryPool-00809", VALIDATION_ERROR_1ae00652}, {"VUID-vkCmdEndQuery-query-00810", VALIDATION_ERROR_1ae00654}, - {"VUID-vkCmdEndQuery-None-00811", VALIDATION_ERROR_1ae00656}, {"VUID-vkCmdEndQuery-query-00812", VALIDATION_ERROR_1ae00658}, {"VUID-vkCmdEndQuery-commandBuffer-01886", VALIDATION_ERROR_1ae00ebc}, + {"VUID-vkCmdEndQuery-None-01923", VALIDATION_ERROR_1ae00f06}, {"VUID-vkCmdEndQuery-commandBuffer-parameter", VALIDATION_ERROR_1ae02401}, {"VUID-vkCmdEndQuery-commandBuffer-recording", VALIDATION_ERROR_1ae02413}, {"VUID-vkCmdEndQuery-commandBuffer-cmdpool", VALIDATION_ERROR_1ae02415}, @@ -10947,6 +10972,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkGetFenceStatus-device-parameter", VALIDATION_ERROR_2a005601}, {"VUID-vkGetFenceStatus-fence-parameter", VALIDATION_ERROR_2a008801}, {"VUID-vkGetFenceStatus-fence-parent", VALIDATION_ERROR_2a008807}, + {"VUID-vkGetImageMemoryRequirements-image-01588", VALIDATION_ERROR_2a200c68}, {"VUID-vkGetImageMemoryRequirements-device-parameter", VALIDATION_ERROR_2a205601}, {"VUID-vkGetImageMemoryRequirements-image-parameter", VALIDATION_ERROR_2a20a001}, {"VUID-vkGetImageMemoryRequirements-image-parent", VALIDATION_ERROR_2a20a007}, @@ -11040,6 +11066,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkGetPhysicalDeviceImageFormatProperties-type-parameter", VALIDATION_ERROR_2ca30401}, {"VUID-vkGetPhysicalDeviceImageFormatProperties-usage-parameter", VALIDATION_ERROR_2ca30601}, {"VUID-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask", VALIDATION_ERROR_2ca30603}, + {"VUID-vkGetPhysicalDeviceImageFormatProperties2-pNext-01868", VALIDATION_ERROR_2cc00e98}, {"VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatInfo-parameter", VALIDATION_ERROR_2cc18201}, {"VUID-vkGetPhysicalDeviceImageFormatProperties2-pImageFormatProperties-parameter", VALIDATION_ERROR_2cc18401}, {"VUID-vkGetPhysicalDeviceImageFormatProperties2-physicalDevice-parameter", VALIDATION_ERROR_2cc27a01}, @@ -11301,6 +11328,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkUpdateDescriptorSetWithTemplate-descriptorUpdateTemplate-parent", VALIDATION_ERROR_33a05207}, {"VUID-vkUpdateDescriptorSetWithTemplate-device-parameter", VALIDATION_ERROR_33a05601}, {"VUID-vkUpdateDescriptorSets-dstSet-00314", VALIDATION_ERROR_33c00274}, + {"VUID-vkUpdateDescriptorSets-None-03047", VALIDATION_ERROR_33c017ce}, {"VUID-vkUpdateDescriptorSets-device-parameter", VALIDATION_ERROR_33c05601}, {"VUID-vkUpdateDescriptorSets-pDescriptorCopies-parameter", VALIDATION_ERROR_33c12c01}, {"VUID-vkUpdateDescriptorSets-pDescriptorWrites-parameter", VALIDATION_ERROR_33c13601}, @@ -11332,40 +11360,31 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkSparseImageFormatProperties2-sType-sType", VALIDATION_ERROR_3562b00b}, {"VUID-VkSurfaceFormat2KHR-pNext-pNext", VALIDATION_ERROR_3581c40d}, {"VUID-VkSurfaceFormat2KHR-sType-sType", VALIDATION_ERROR_3582b00b}, - {"VUID-VkPhysicalDeviceMultiviewProperties-pNext-pNext", VALIDATION_ERROR_35c1c40d}, {"VUID-VkPhysicalDeviceMultiviewProperties-sType-sType", VALIDATION_ERROR_35c2b00b}, - {"VUID-VkExternalImageFormatProperties-pNext-pNext", VALIDATION_ERROR_3601c40d}, {"VUID-VkExternalImageFormatProperties-sType-sType", VALIDATION_ERROR_3602b00b}, - {"VUID-VkPhysicalDeviceIDProperties-pNext-pNext", VALIDATION_ERROR_3621c40d}, {"VUID-VkPhysicalDeviceIDProperties-sType-sType", VALIDATION_ERROR_3622b00b}, {"VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType", VALIDATION_ERROR_3642b00b}, {"VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType", VALIDATION_ERROR_37e2b00b}, {"VUID-VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT-sType-sType", VALIDATION_ERROR_3822b00b}, {"VUID-VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT-sType-sType", VALIDATION_ERROR_3842b00b}, - {"VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-pNext-pNext", VALIDATION_ERROR_3861c40d}, {"VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-sType-sType", VALIDATION_ERROR_3862b00b}, {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-srcPremultiplied-01424", VALIDATION_ERROR_38800b20}, {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425", VALIDATION_ERROR_38800b22}, {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426", VALIDATION_ERROR_38800b24}, - {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_3881c40d}, {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType", VALIDATION_ERROR_3882b00b}, {"VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter", VALIDATION_ERROR_38834a01}, {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405", VALIDATION_ERROR_38a00afa}, {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask", VALIDATION_ERROR_38a09005}, - {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-pNext-pNext", VALIDATION_ERROR_38a1c40d}, {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType", VALIDATION_ERROR_38a2b00b}, {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter", VALIDATION_ERROR_38a34c01}, {"VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength", VALIDATION_ERROR_38a34e1b}, {"VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404", VALIDATION_ERROR_38c00af8}, {"VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask", VALIDATION_ERROR_38c09005}, - {"VUID-VkPipelineCoverageToColorStateCreateInfoNV-pNext-pNext", VALIDATION_ERROR_38c1c40d}, {"VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType", VALIDATION_ERROR_38c2b00b}, - {"VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_38e1c40d}, {"VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType", VALIDATION_ERROR_38e2b00b}, {"VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter", VALIDATION_ERROR_38e35001}, {"VUID-VkExportFenceCreateInfo-handleTypes-01446", VALIDATION_ERROR_39400b4c}, {"VUID-VkExportFenceCreateInfo-handleTypes-parameter", VALIDATION_ERROR_39409e01}, - {"VUID-VkExportFenceCreateInfo-pNext-pNext", VALIDATION_ERROR_3941c40d}, {"VUID-VkExportFenceCreateInfo-sType-sType", VALIDATION_ERROR_3942b00b}, {"VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter", VALIDATION_ERROR_39609c01}, {"VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext", VALIDATION_ERROR_3961c40d}, @@ -11410,7 +11429,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImportFenceWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_3a42b00b}, {"VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447", VALIDATION_ERROR_3a600b4e}, {"VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter", VALIDATION_ERROR_3a60f401}, - {"VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext", VALIDATION_ERROR_3a61c40d}, {"VUID-VkExportFenceWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_3a62b00b}, {"VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448", VALIDATION_ERROR_3a800b50}, {"VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449", VALIDATION_ERROR_3a800b52}, @@ -11458,7 +11476,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter", VALIDATION_ERROR_3b40c601}, {"VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext", VALIDATION_ERROR_3b41c40d}, {"VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType", VALIDATION_ERROR_3b42b00b}, - {"VUID-VkMemoryDedicatedRequirements-pNext-pNext", VALIDATION_ERROR_3b61c40d}, {"VUID-VkMemoryDedicatedRequirements-sType-sType", VALIDATION_ERROR_3b62b00b}, {"VUID-VkMemoryDedicatedAllocateInfo-commonparent", VALIDATION_ERROR_3b800009}, {"VUID-VkMemoryDedicatedAllocateInfo-image-01432", VALIDATION_ERROR_3b800b30}, @@ -11467,13 +11484,12 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkMemoryDedicatedAllocateInfo-buffer-01435", VALIDATION_ERROR_3b800b36}, {"VUID-VkMemoryDedicatedAllocateInfo-buffer-01436", VALIDATION_ERROR_3b800b38}, {"VUID-VkMemoryDedicatedAllocateInfo-image-01797", VALIDATION_ERROR_3b800e0a}, - {"VUID-VkMemoryDedicatedAllocateInfoKHR-image-01876", VALIDATION_ERROR_3b800ea8}, - {"VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01877", VALIDATION_ERROR_3b800eaa}, - {"VUID-VkMemoryDedicatedAllocateInfoKHR-image-01878", VALIDATION_ERROR_3b800eac}, - {"VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01879", VALIDATION_ERROR_3b800eae}, + {"VUID-VkMemoryDedicatedAllocateInfo-image-01876", VALIDATION_ERROR_3b800ea8}, + {"VUID-VkMemoryDedicatedAllocateInfo-buffer-01877", VALIDATION_ERROR_3b800eaa}, + {"VUID-VkMemoryDedicatedAllocateInfo-image-01878", VALIDATION_ERROR_3b800eac}, + {"VUID-VkMemoryDedicatedAllocateInfo-buffer-01879", VALIDATION_ERROR_3b800eae}, {"VUID-VkMemoryDedicatedAllocateInfo-buffer-parameter", VALIDATION_ERROR_3b801a01}, {"VUID-VkMemoryDedicatedAllocateInfo-image-parameter", VALIDATION_ERROR_3b80a001}, - {"VUID-VkMemoryDedicatedAllocateInfo-pNext-pNext", VALIDATION_ERROR_3b81c40d}, {"VUID-VkMemoryDedicatedAllocateInfo-sType-sType", VALIDATION_ERROR_3b82b00b}, {"VUID-VkBufferMemoryRequirementsInfo2-buffer-parameter", VALIDATION_ERROR_3ba01a01}, {"VUID-VkBufferMemoryRequirementsInfo2-pNext-pNext", VALIDATION_ERROR_3ba1c40d}, @@ -11481,7 +11497,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImageMemoryRequirementsInfo2-image-01589", VALIDATION_ERROR_3bc00c6a}, {"VUID-VkImageMemoryRequirementsInfo2-image-01590", VALIDATION_ERROR_3bc00c6c}, {"VUID-VkImageMemoryRequirementsInfo2-image-01591", VALIDATION_ERROR_3bc00c6e}, - {"VUID-VkImageMemoryRequirementsInfo2KHR-image-01897", VALIDATION_ERROR_3bc00ed2}, + {"VUID-VkImageMemoryRequirementsInfo2-image-01897", VALIDATION_ERROR_3bc00ed2}, {"VUID-VkImageMemoryRequirementsInfo2-image-parameter", VALIDATION_ERROR_3bc0a001}, {"VUID-VkImageMemoryRequirementsInfo2-pNext-pNext", VALIDATION_ERROR_3bc1c40d}, {"VUID-VkImageMemoryRequirementsInfo2-sType-sType", VALIDATION_ERROR_3bc2b00b}, @@ -11504,23 +11520,18 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkGetImageSparseMemoryRequirements2-pInfo-parameter", VALIDATION_ERROR_3c839c01}, {"VUID-VkPhysicalDevice16BitStorageFeatures-sType-sType", VALIDATION_ERROR_3ca2b00b}, {"VUID-VkPhysicalDeviceVariablePointerFeatures-variablePointers-01431", VALIDATION_ERROR_3cc00b2e}, - {"VUID-VkPhysicalDeviceVariablePointerFeatures-pNext-pNext", VALIDATION_ERROR_3cc1c40d}, {"VUID-VkPhysicalDeviceVariablePointerFeatures-sType-sType", VALIDATION_ERROR_3cc2b00b}, {"VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-01526", VALIDATION_ERROR_3ce00bec}, {"VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-01527", VALIDATION_ERROR_3ce00bee}, - {"VUID-VkSampleLocationsInfoEXT-pNext-pNext", VALIDATION_ERROR_3ce1c40d}, {"VUID-VkSampleLocationsInfoEXT-sType-sType", VALIDATION_ERROR_3ce2b00b}, {"VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-parameter", VALIDATION_ERROR_3ce3b201}, {"VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength", VALIDATION_ERROR_3ce3b41b}, {"VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter", VALIDATION_ERROR_3ce3b601}, - {"VUID-VkRenderPassSampleLocationsBeginInfoEXT-pNext-pNext", VALIDATION_ERROR_3d01c40d}, {"VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType", VALIDATION_ERROR_3d02b00b}, {"VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter", VALIDATION_ERROR_3d03ba01}, {"VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter", VALIDATION_ERROR_3d03e801}, - {"VUID-VkPipelineSampleLocationsStateCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_3d21c40d}, {"VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType", VALIDATION_ERROR_3d22b00b}, {"VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter", VALIDATION_ERROR_3d23c601}, - {"VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-pNext-pNext", VALIDATION_ERROR_3d41c40d}, {"VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType", VALIDATION_ERROR_3d42b00b}, {"VUID-VkMultisamplePropertiesEXT-pNext-pNext", VALIDATION_ERROR_3d61c40d}, {"VUID-VkMultisamplePropertiesEXT-sType-sType", VALIDATION_ERROR_3d62b00b}, @@ -11533,7 +11544,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkValidationCacheCreateInfoEXT-pInitialData-parameter", VALIDATION_ERROR_3da19601}, {"VUID-VkValidationCacheCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_3da1c40d}, {"VUID-VkValidationCacheCreateInfoEXT-sType-sType", VALIDATION_ERROR_3da2b00b}, - {"VUID-VkShaderModuleValidationCacheCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_3dc1c40d}, {"VUID-VkShaderModuleValidationCacheCreateInfoEXT-sType-sType", VALIDATION_ERROR_3dc2b00b}, {"VUID-VkShaderModuleValidationCacheCreateInfoEXT-validationCache-parameter", VALIDATION_ERROR_3dc3c401}, {"VUID-vkCreateValidationCacheEXT-device-parameter", VALIDATION_ERROR_3de05601}, @@ -11569,29 +11579,24 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkAttachmentSampleLocationsEXT-sampleLocationsInfo-parameter", VALIDATION_ERROR_3e83c601}, {"VUID-VkSubpassSampleLocationsEXT-subpassIndex-01532", VALIDATION_ERROR_3ea00bf8}, {"VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter", VALIDATION_ERROR_3ea3c601}, - {"VUID-VkPhysicalDevicePointClippingProperties-pNext-pNext", VALIDATION_ERROR_3ec1c40d}, {"VUID-VkPhysicalDevicePointClippingProperties-sType-sType", VALIDATION_ERROR_3ec2b00b}, {"VUID-VkInputAttachmentAspectReference-aspectMask-parameter", VALIDATION_ERROR_3ee00c01}, {"VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask", VALIDATION_ERROR_3ee00c03}, {"VUID-VkInputAttachmentAspectReference-pCreateInfo-01568", VALIDATION_ERROR_3ee00c40}, {"VUID-VkInputAttachmentAspectReference-None-01569", VALIDATION_ERROR_3ee00c42}, {"VUID-VkInputAttachmentAspectReference-aspectMask-01570", VALIDATION_ERROR_3ee00c44}, - {"VUID-VkRenderPassInputAttachmentAspectCreateInfo-pNext-pNext", VALIDATION_ERROR_3f01c40d}, {"VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType", VALIDATION_ERROR_3f02b00b}, {"VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength", VALIDATION_ERROR_3f03ce1b}, {"VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter", VALIDATION_ERROR_3f03d001}, {"VUID-VkImageViewUsageCreateInfo-usage-01587", VALIDATION_ERROR_3f200c66}, - {"VUID-VkImageViewUsageCreateInfo-pNext-pNext", VALIDATION_ERROR_3f21c40d}, {"VUID-VkImageViewUsageCreateInfo-sType-sType", VALIDATION_ERROR_3f22b00b}, {"VUID-VkImageViewUsageCreateInfo-usage-parameter", VALIDATION_ERROR_3f230601}, {"VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask", VALIDATION_ERROR_3f230603}, - {"VUID-VkPipelineTessellationDomainOriginStateCreateInfo-pNext-pNext", VALIDATION_ERROR_3f41c40d}, {"VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType", VALIDATION_ERROR_3f42b00b}, {"VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter", VALIDATION_ERROR_3f43d201}, {"VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578", VALIDATION_ERROR_3f600c54}, {"VUID-VkImageFormatListCreateInfoKHR-flags-01579", VALIDATION_ERROR_3f600c56}, {"VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580", VALIDATION_ERROR_3f600c58}, - {"VUID-VkImageFormatListCreateInfoKHR-pNext-pNext", VALIDATION_ERROR_3f61c40d}, {"VUID-VkImageFormatListCreateInfoKHR-sType-sType", VALIDATION_ERROR_3f62b00b}, {"VUID-VkImageFormatListCreateInfoKHR-pViewFormats-parameter", VALIDATION_ERROR_3f63e401}, {"VUID-VkSamplerYcbcrConversionCreateInfo-format-01649", VALIDATION_ERROR_3f800ce2}, @@ -11603,7 +11608,7 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkSamplerYcbcrConversionCreateInfo-ycbcrModel-01655", VALIDATION_ERROR_3f800cee}, {"VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656", VALIDATION_ERROR_3f800cf0}, {"VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657", VALIDATION_ERROR_3f800cf2}, - {"VUID-VkSamplerYcbcrConversionCreateInfoKHR-format-01904", VALIDATION_ERROR_3f800ee0}, + {"VUID-VkSamplerYcbcrConversionCreateInfo-format-01904", VALIDATION_ERROR_3f800ee0}, {"VUID-VkSamplerYcbcrConversionCreateInfo-components-parameter", VALIDATION_ERROR_3f802c01}, {"VUID-VkSamplerYcbcrConversionCreateInfo-format-parameter", VALIDATION_ERROR_3f809201}, {"VUID-VkSamplerYcbcrConversionCreateInfo-pNext-pNext", VALIDATION_ERROR_3f81c40d}, @@ -11628,7 +11633,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606", VALIDATION_ERROR_40000c8c}, {"VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607", VALIDATION_ERROR_40000c8e}, {"VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter", VALIDATION_ERROR_40013e01}, - {"VUID-VkBindBufferMemoryDeviceGroupInfo-pNext-pNext", VALIDATION_ERROR_4001c40d}, {"VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType", VALIDATION_ERROR_4002b00b}, {"VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633", VALIDATION_ERROR_40200cc2}, {"VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634", VALIDATION_ERROR_40200cc4}, @@ -11640,7 +11644,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640", VALIDATION_ERROR_40200cd0}, {"VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641", VALIDATION_ERROR_40200cd2}, {"VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter", VALIDATION_ERROR_40213e01}, - {"VUID-VkBindImageMemoryDeviceGroupInfo-pNext-pNext", VALIDATION_ERROR_4021c40d}, {"VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType", VALIDATION_ERROR_4022b00b}, {"VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter", VALIDATION_ERROR_4023fe01}, {"VUID-vkDestroySamplerYcbcrConversion-device-parameter", VALIDATION_ERROR_40405601}, @@ -11651,7 +11654,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkSamplerYcbcrConversionImageFormatProperties-sType-sType", VALIDATION_ERROR_4082b00b}, {"VUID-VkSamplerYcbcrConversionInfo-sType-sType", VALIDATION_ERROR_40a2b00b}, {"VUID-VkSamplerYcbcrConversionInfo-conversion-parameter", VALIDATION_ERROR_40a3e601}, - {"VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_40c1c40d}, {"VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType", VALIDATION_ERROR_40c2b00b}, {"VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter", VALIDATION_ERROR_40c3ea01}, {"VUID-vkGetShaderInfoAMD-device-parameter", VALIDATION_ERROR_40e05601}, @@ -11667,11 +11669,9 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750", VALIDATION_ERROR_41200dac}, {"VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751", VALIDATION_ERROR_41200dae}, {"VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter", VALIDATION_ERROR_41209c01}, - {"VUID-VkImportMemoryHostPointerInfoEXT-pNext-pNext", VALIDATION_ERROR_4121c40d}, {"VUID-VkImportMemoryHostPointerInfoEXT-sType-sType", VALIDATION_ERROR_4122b00b}, {"VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext", VALIDATION_ERROR_4141c40d}, {"VUID-VkMemoryHostPointerPropertiesEXT-sType-sType", VALIDATION_ERROR_4142b00b}, - {"VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-pNext-pNext", VALIDATION_ERROR_4161c40d}, {"VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType", VALIDATION_ERROR_4162b00b}, {"VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752", VALIDATION_ERROR_41800db0}, {"VUID-vkGetMemoryHostPointerPropertiesEXT-pHostPointer-01753", VALIDATION_ERROR_41800db2}, @@ -11680,11 +11680,9 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkGetMemoryHostPointerPropertiesEXT-device-parameter", VALIDATION_ERROR_41805601}, {"VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-parameter", VALIDATION_ERROR_41809c01}, {"VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter", VALIDATION_ERROR_4183f401}, - {"VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-pNext-pNext", VALIDATION_ERROR_41a1c40d}, {"VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType", VALIDATION_ERROR_41a2b00b}, {"VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769", VALIDATION_ERROR_41c00dd2}, {"VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask", VALIDATION_ERROR_41c09005}, - {"VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_41c1c40d}, {"VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType", VALIDATION_ERROR_41c2b00b}, {"VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter", VALIDATION_ERROR_41c3f801}, {"VUID-vkCmdWriteBufferMarkerAMD-commonparent", VALIDATION_ERROR_41e00009}, @@ -11705,20 +11703,15 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkDeviceQueueInfo2-flags-requiredbitmask", VALIDATION_ERROR_42209003}, {"VUID-VkDeviceQueueInfo2-pNext-pNext", VALIDATION_ERROR_4221c40d}, {"VUID-VkDeviceQueueInfo2-sType-sType", VALIDATION_ERROR_4222b00b}, - {"VUID-VkPhysicalDeviceMaintenance3Properties-pNext-pNext", VALIDATION_ERROR_4241c40d}, {"VUID-VkPhysicalDeviceMaintenance3Properties-sType-sType", VALIDATION_ERROR_4242b00b}, - {"VUID-VkPhysicalDeviceProtectedMemoryFeatures-pNext-pNext", VALIDATION_ERROR_4261c40d}, {"VUID-VkPhysicalDeviceProtectedMemoryFeatures-sType-sType", VALIDATION_ERROR_4262b00b}, - {"VUID-VkPhysicalDeviceProtectedMemoryProperties-pNext-pNext", VALIDATION_ERROR_4281c40d}, {"VUID-VkPhysicalDeviceProtectedMemoryProperties-sType-sType", VALIDATION_ERROR_4282b00b}, {"VUID-VkPhysicalDeviceShaderDrawParameterFeatures-sType-sType", VALIDATION_ERROR_42a2b00b}, - {"VUID-VkPhysicalDeviceSubgroupProperties-pNext-pNext", VALIDATION_ERROR_42c1c40d}, {"VUID-VkPhysicalDeviceSubgroupProperties-sType-sType", VALIDATION_ERROR_42c2b00b}, {"VUID-VkProtectedSubmitInfo-protectedSubmit-01816", VALIDATION_ERROR_42e00e30}, {"VUID-VkProtectedSubmitInfo-protectedSubmit-01817", VALIDATION_ERROR_42e00e32}, {"VUID-VkProtectedSubmitInfo-protectedSubmit-01818", VALIDATION_ERROR_42e00e34}, {"VUID-VkProtectedSubmitInfo-pNext-01819", VALIDATION_ERROR_42e00e36}, - {"VUID-VkProtectedSubmitInfo-pNext-pNext", VALIDATION_ERROR_42e1c40d}, {"VUID-VkProtectedSubmitInfo-sType-sType", VALIDATION_ERROR_42e2b00b}, {"VUID-vkEnumerateInstanceVersion-pApiVersion-parameter", VALIDATION_ERROR_43040001}, {"VUID-vkGetDescriptorSetLayoutSupport-device-parameter", VALIDATION_ERROR_43205601}, @@ -11753,7 +11746,6 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-VkDebugUtilsMessengerCallbackDataEXT-pMessageIdName-parameter", VALIDATION_ERROR_43c42201}, {"VUID-VkDebugUtilsMessengerCreateInfoEXT-pfnUserCallback-01914", VALIDATION_ERROR_43e00ef4}, {"VUID-VkDebugUtilsMessengerCreateInfoEXT-flags-zerobitmask", VALIDATION_ERROR_43e09005}, - {"VUID-VkDebugUtilsMessengerCreateInfoEXT-pNext-pNext", VALIDATION_ERROR_43e1c40d}, {"VUID-VkDebugUtilsMessengerCreateInfoEXT-sType-sType", VALIDATION_ERROR_43e2b00b}, {"VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-parameter", VALIDATION_ERROR_43e40a01}, {"VUID-VkDebugUtilsMessengerCreateInfoEXT-messageSeverity-requiredbitmask", VALIDATION_ERROR_43e40a03}, @@ -11768,15 +11760,15 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-parameter", VALIDATION_ERROR_44241201}, {"VUID-vkSubmitDebugUtilsMessageEXT-messageTypes-requiredbitmask", VALIDATION_ERROR_44241203}, {"VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter", VALIDATION_ERROR_44242801}, - {"VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-pNext-pNext", VALIDATION_ERROR_4441c40d}, {"VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType", VALIDATION_ERROR_4442b00b}, + {"VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType", VALIDATION_ERROR_4462b00b}, + {"VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength", VALIDATION_ERROR_4464141b}, + {"VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter", VALIDATION_ERROR_44641601}, {"VUID-VkExternalFormatANDROID-externalFormat-01894", VALIDATION_ERROR_44800ecc}, - {"VUID-VkExternalFormatANDROID-pNext-pNext", VALIDATION_ERROR_4481c40d}, {"VUID-VkExternalFormatANDROID-sType-sType", VALIDATION_ERROR_4482b00b}, {"VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880", VALIDATION_ERROR_44a00eb0}, {"VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881", VALIDATION_ERROR_44a00eb2}, {"VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter", VALIDATION_ERROR_44a01a01}, - {"VUID-VkImportAndroidHardwareBufferInfoANDROID-pNext-pNext", VALIDATION_ERROR_44a1c40d}, {"VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType", VALIDATION_ERROR_44a2b00b}, {"VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882", VALIDATION_ERROR_44c00eb4}, {"VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883", VALIDATION_ERROR_44c00eb6}, @@ -11797,12 +11789,10 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkGetAndroidHardwareBufferPropertiesANDROID-pProperties-parameter", VALIDATION_ERROR_4521f401}, {"VUID-vkQueueEndDebugUtilsLabelEXT-None-01911", VALIDATION_ERROR_45400eee}, {"VUID-vkQueueEndDebugUtilsLabelEXT-queue-parameter", VALIDATION_ERROR_45429c01}, - {"VUID-VkAndroidHardwareBufferUsageANDROID-pNext-pNext", VALIDATION_ERROR_4561c40d}, {"VUID-VkAndroidHardwareBufferUsageANDROID-sType-sType", VALIDATION_ERROR_4562b00b}, {"VUID-vkGetMemoryAndroidHardwareBufferANDROID-device-parameter", VALIDATION_ERROR_45a05601}, {"VUID-vkGetMemoryAndroidHardwareBufferANDROID-pBuffer-parameter", VALIDATION_ERROR_45a10001}, {"VUID-vkGetMemoryAndroidHardwareBufferANDROID-pInfo-parameter", VALIDATION_ERROR_45a39c01}, - {"VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-pNext-pNext", VALIDATION_ERROR_45c1c40d}, {"VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-sType-sType", VALIDATION_ERROR_45c2b00b}, {"VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-parameter", VALIDATION_ERROR_45e02401}, {"VUID-vkCmdBeginDebugUtilsLabelEXT-commandBuffer-recording", VALIDATION_ERROR_45e02413}, @@ -11820,4 +11810,32 @@ static std::unordered_map<std::string, int> validation_error_text_map{ {"VUID-vkSetDebugUtilsObjectNameEXT-pNameInfo-parameter", VALIDATION_ERROR_4661c201}, {"VUID-vkSetDebugUtilsObjectTagEXT-device-parameter", VALIDATION_ERROR_46805601}, {"VUID-vkSetDebugUtilsObjectTagEXT-pTagInfo-parameter", VALIDATION_ERROR_46825c01}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-bindingCount-03002", VALIDATION_ERROR_46a01774}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-flags-03003", VALIDATION_ERROR_46a01776}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03004", VALIDATION_ERROR_46a01778}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformBufferUpdateAfterBind-03005", VALIDATION_ERROR_46a0177a}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingSampledImageUpdateAfterBind-03006", VALIDATION_ERROR_46a0177c}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageImageUpdateAfterBind-03007", VALIDATION_ERROR_46a0177e}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageBufferUpdateAfterBind-03008", VALIDATION_ERROR_46a01780}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformTexelBufferUpdateAfterBind-03009", VALIDATION_ERROR_46a01782}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageTexelBufferUpdateAfterBind-03010", VALIDATION_ERROR_46a01784}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-None-03011", VALIDATION_ERROR_46a01786}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUpdateUnusedWhilePending-03012", VALIDATION_ERROR_46a01788}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingPartiallyBound-03013", VALIDATION_ERROR_46a0178a}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingVariableDescriptorCount-03014", VALIDATION_ERROR_46a0178c}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03015", VALIDATION_ERROR_46a0178e}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-sType-sType", VALIDATION_ERROR_46a2b00b}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-parameter", VALIDATION_ERROR_46a42a01}, + {"VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-requiredbitmask", VALIDATION_ERROR_46a42a03}, + {"VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045", VALIDATION_ERROR_46c017ca}, + {"VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046", VALIDATION_ERROR_46c017cc}, + {"VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType", VALIDATION_ERROR_46c2b00b}, + {"VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter", VALIDATION_ERROR_46c42c01}, + {"VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType", VALIDATION_ERROR_46e2b00b}, + {"VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType", VALIDATION_ERROR_4702b00b}, + {"VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType", VALIDATION_ERROR_4722b00b}, + {"VUID-VkPhysicalDeviceShaderCorePropertiesAMD-sType-sType", VALIDATION_ERROR_4742b00b}, + {"VUID-VkVertexInputBindingDivisorDescriptionEXT-binding-01869", VALIDATION_ERROR_47600e9a}, + {"VUID-VkVertexInputBindingDivisorDescriptionEXT-divisor-01870", VALIDATION_ERROR_47600e9c}, + {"VUID-VkVertexInputBindingDivisorDescriptionEXT-inputRate-01871", VALIDATION_ERROR_47600e9e}, }; diff --git a/layers/windows/VkLayer_core_validation.json b/layers/windows/VkLayer_core_validation.json index b0ed3a73..c5c14e7f 100644 --- a/layers/windows/VkLayer_core_validation.json +++ b/layers/windows/VkLayer_core_validation.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_core_validation", "type": "GLOBAL", "library_path": ".\\VkLayer_core_validation.dll", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/windows/VkLayer_object_tracker.json b/layers/windows/VkLayer_object_tracker.json index dbee39cb..22956015 100644 --- a/layers/windows/VkLayer_object_tracker.json +++ b/layers/windows/VkLayer_object_tracker.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_object_tracker", "type": "GLOBAL", "library_path": ".\\VkLayer_object_tracker.dll", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/windows/VkLayer_parameter_validation.json b/layers/windows/VkLayer_parameter_validation.json index cd24d2bc..10b98cc5 100644 --- a/layers/windows/VkLayer_parameter_validation.json +++ b/layers/windows/VkLayer_parameter_validation.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_LUNARG_parameter_validation", "type": "GLOBAL", "library_path": ".\\VkLayer_parameter_validation.dll", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Validation Layer", "instance_extensions": [ diff --git a/layers/windows/VkLayer_standard_validation.json b/layers/windows/VkLayer_standard_validation.json index 42245a10..1a545483 100644 --- a/layers/windows/VkLayer_standard_validation.json +++ b/layers/windows/VkLayer_standard_validation.json @@ -3,7 +3,7 @@ "layer": { "name": "VK_LAYER_LUNARG_standard_validation", "type": "GLOBAL", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "LunarG Standard Validation", "component_layers": [ diff --git a/layers/windows/VkLayer_threading.json b/layers/windows/VkLayer_threading.json index 823cdc75..3161b31f 100644 --- a/layers/windows/VkLayer_threading.json +++ b/layers/windows/VkLayer_threading.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_GOOGLE_threading", "type": "GLOBAL", "library_path": ".\\VkLayer_threading.dll", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "Google Validation Layer", "instance_extensions": [ diff --git a/layers/windows/VkLayer_unique_objects.json b/layers/windows/VkLayer_unique_objects.json index 27b4e588..b2c7bed4 100644 --- a/layers/windows/VkLayer_unique_objects.json +++ b/layers/windows/VkLayer_unique_objects.json @@ -4,7 +4,7 @@ "name": "VK_LAYER_GOOGLE_unique_objects", "type": "GLOBAL", "library_path": ".\\VkLayer_unique_objects.dll", - "api_version": "1.1.71", + "api_version": "1.1.72", "implementation_version": "1", "description": "Google Validation Layer" } diff --git a/scripts/validusage.json b/scripts/validusage.json index 7b1d8015..25ac1294 100644 --- a/scripts/validusage.json +++ b/scripts/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.1.71", - "comment": "from git branch: github-master commit: e958791a01a51b816b4eb2c9e3777877b8d93bd2", - "date": "2018-03-17 11:09:58Z" + "api version": "1.1.72", + "comment": "from git branch: master commit: e1c0e426f37e45705273f2c5b6cbb0a0f74e3d75", + "date": "2018-04-05 21:58:05Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -97,10 +97,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT</code>" }, { - "vuid": "VUID-VkValidationFlagsEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter", "text": " <code>pDisabledValidationChecks</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>disabledValidationCheckCount</code> <a href=\"#VkValidationCheckEXT\">VkValidationCheckEXT</a> values" }, @@ -202,7 +198,7 @@ }, { "vuid": "VUID-VkPhysicalDeviceProperties2-pNext-pNext", - "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT\">VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceConservativeRasterizationPropertiesEXT\">VkPhysicalDeviceConservativeRasterizationPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceDiscardRectanglePropertiesEXT\">VkPhysicalDeviceDiscardRectanglePropertiesEXT</a>, <a href=\"#VkPhysicalDeviceExternalMemoryHostPropertiesEXT\">VkPhysicalDeviceExternalMemoryHostPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceIDProperties\">VkPhysicalDeviceIDProperties</a>, <a href=\"#VkPhysicalDeviceMaintenance3Properties\">VkPhysicalDeviceMaintenance3Properties</a>, <a href=\"#VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX\">VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX</a>, <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>, <a href=\"#VkPhysicalDevicePointClippingProperties\">VkPhysicalDevicePointClippingProperties</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryProperties\">VkPhysicalDeviceProtectedMemoryProperties</a>, <a href=\"#VkPhysicalDevicePushDescriptorPropertiesKHR\">VkPhysicalDevicePushDescriptorPropertiesKHR</a>, <a href=\"#VkPhysicalDeviceSampleLocationsPropertiesEXT\">VkPhysicalDeviceSampleLocationsPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT\">VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceSubgroupProperties\">VkPhysicalDeviceSubgroupProperties</a>, or <a href=\"#VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT\">VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT</a>" + "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT\">VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceConservativeRasterizationPropertiesEXT\">VkPhysicalDeviceConservativeRasterizationPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceDiscardRectanglePropertiesEXT\">VkPhysicalDeviceDiscardRectanglePropertiesEXT</a>, <a href=\"#VkPhysicalDeviceExternalMemoryHostPropertiesEXT\">VkPhysicalDeviceExternalMemoryHostPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceIDProperties\">VkPhysicalDeviceIDProperties</a>, <a href=\"#VkPhysicalDeviceMaintenance3Properties\">VkPhysicalDeviceMaintenance3Properties</a>, <a href=\"#VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX\">VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX</a>, <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>, <a href=\"#VkPhysicalDevicePointClippingProperties\">VkPhysicalDevicePointClippingProperties</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryProperties\">VkPhysicalDeviceProtectedMemoryProperties</a>, <a href=\"#VkPhysicalDevicePushDescriptorPropertiesKHR\">VkPhysicalDevicePushDescriptorPropertiesKHR</a>, <a href=\"#VkPhysicalDeviceSampleLocationsPropertiesEXT\">VkPhysicalDeviceSampleLocationsPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT\">VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT</a>, <a href=\"#VkPhysicalDeviceShaderCorePropertiesAMD\">VkPhysicalDeviceShaderCorePropertiesAMD</a>, <a href=\"#VkPhysicalDeviceSubgroupProperties\">VkPhysicalDeviceSubgroupProperties</a>, or <a href=\"#VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT\">VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT</a>" }, { "vuid": "VUID-VkPhysicalDeviceProperties2-sType-unique", @@ -215,10 +211,6 @@ { "vuid": "VUID-VkPhysicalDeviceIDProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceIDProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -318,7 +310,7 @@ }, { "vuid": "VUID-VkDeviceCreateInfo-pNext-pNext", - "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDeviceGroupDeviceCreateInfo\">VkDeviceGroupDeviceCreateInfo</a>, <a href=\"#VkPhysicalDevice16BitStorageFeatures\">VkPhysicalDevice16BitStorageFeatures</a>, <a href=\"#VkPhysicalDeviceFeatures2\">VkPhysicalDeviceFeatures2</a>, <a href=\"#VkPhysicalDeviceMultiviewFeatures\">VkPhysicalDeviceMultiviewFeatures</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryFeatures\">VkPhysicalDeviceProtectedMemoryFeatures</a>, <a href=\"#VkPhysicalDeviceSamplerYcbcrConversionFeatures\">VkPhysicalDeviceSamplerYcbcrConversionFeatures</a>, or <a href=\"#VkPhysicalDeviceVariablePointerFeatures\">VkPhysicalDeviceVariablePointerFeatures</a>" + "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDeviceGroupDeviceCreateInfo\">VkDeviceGroupDeviceCreateInfo</a>, <a href=\"#VkPhysicalDevice16BitStorageFeatures\">VkPhysicalDevice16BitStorageFeatures</a>, <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceFeatures2\">VkPhysicalDeviceFeatures2</a>, <a href=\"#VkPhysicalDeviceMultiviewFeatures\">VkPhysicalDeviceMultiviewFeatures</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryFeatures\">VkPhysicalDeviceProtectedMemoryFeatures</a>, <a href=\"#VkPhysicalDeviceSamplerYcbcrConversionFeatures\">VkPhysicalDeviceSamplerYcbcrConversionFeatures</a>, or <a href=\"#VkPhysicalDeviceVariablePointerFeatures\">VkPhysicalDeviceVariablePointerFeatures</a>" }, { "vuid": "VUID-VkDeviceCreateInfo-sType-unique", @@ -459,10 +451,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter", "text": " <code>globalPriority</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkQueueGlobalPriorityEXT\">VkQueueGlobalPriorityEXT</a> value" } @@ -850,7 +838,7 @@ "(VK_EXT_debug_utils)": [ { "vuid": "VUID-vkEndCommandBuffer-commandBuffer-01815", - "text": " If <code>commandBuffer</code> is a secondary command buffer, there <strong class=\"purple\">must</strong> not be an outstanding <a href=\"#vkCmdBeginUtilsLabelEXT\">vkCmdBeginUtilsLabelEXT</a> command recorded to <code>commandBuffer</code> that has not previously been ended by a call to <a href=\"#vkCmdEndDebugUtilsLabelEXT\">vkCmdEndDebugUtilsLabelEXT</a>." + "text": " If <code>commandBuffer</code> is a secondary command buffer, there <strong class=\"purple\">must</strong> not be an outstanding <a href=\"#vkCmdBeginDebugUtilsLabelEXT\">vkCmdBeginDebugUtilsLabelEXT</a> command recorded to <code>commandBuffer</code> that has not previously been ended by a call to <a href=\"#vkCmdEndDebugUtilsLabelEXT\">vkCmdEndDebugUtilsLabelEXT</a>." } ], "(VK_EXT_debug_marker)": [ @@ -1097,10 +1085,6 @@ { "vuid": "VUID-VkProtectedSubmitInfo-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO</code>" - }, - { - "vuid": "VUID-VkProtectedSubmitInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -1361,10 +1345,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO</code>" }, { - "vuid": "VUID-VkExportFenceCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportFenceCreateInfo-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalFenceHandleTypeFlagBits\">VkExternalFenceHandleTypeFlagBits</a> values" } @@ -1381,10 +1361,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR</code>" }, { - "vuid": "VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter", "text": " If <code>pAttributes</code> is not <code>NULL</code>, <code>pAttributes</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>SECURITY_ATTRIBUTES</code> value" } @@ -1829,10 +1805,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO</code>" }, { - "vuid": "VUID-VkExportSemaphoreCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalSemaphoreHandleTypeFlagBits\">VkExternalSemaphoreHandleTypeFlagBits</a> values" } @@ -1849,10 +1821,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR</code>" }, { - "vuid": "VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter", "text": " If <code>pAttributes</code> is not <code>NULL</code>, <code>pAttributes</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>SECURITY_ATTRIBUTES</code> value" } @@ -2947,10 +2915,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO</code>" }, { - "vuid": "VUID-VkRenderPassMultiviewCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter", "text": " If <code>subpassCount</code> is not <code>0</code>, <code>pViewMasks</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>subpassCount</code> <code>uint32_t</code> values" }, @@ -3015,10 +2979,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO</code>" }, { - "vuid": "VUID-VkRenderPassInputAttachmentAspectCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter", "text": " <code>pAspectReferences</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>aspectReferenceCount</code> valid <code>VkInputAttachmentAspectReference</code> structures" }, @@ -3549,10 +3509,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT</code>" }, { - "vuid": "VUID-VkRenderPassSampleLocationsBeginInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter", "text": " If <code>attachmentInitialSampleLocationsCount</code> is not <code>0</code>, <code>pAttachmentInitialSampleLocations</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>attachmentInitialSampleLocationsCount</code> valid <code>VkAttachmentSampleLocationsEXT</code> structures" }, @@ -3789,10 +3745,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkShaderModuleValidationCacheCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkShaderModuleValidationCacheCreateInfoEXT-validationCache-parameter", "text": " <code>validationCache</code> <strong class=\"purple\">must</strong> be a valid <code>VkValidationCacheEXT</code> handle" } @@ -5023,10 +4975,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO</code>" }, { - "vuid": "VUID-VkMemoryDedicatedAllocateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkMemoryDedicatedAllocateInfo-image-parameter", "text": " If <code>image</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, <code>image</code> <strong class=\"purple\">must</strong> be a valid <code>VkImage</code> handle" }, @@ -5041,21 +4989,21 @@ ], "(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_win32)": [ { - "vuid": "VUID-VkMemoryDedicatedAllocateInfoKHR-image-01876", + "vuid": "VUID-VkMemoryDedicatedAllocateInfo-image-01876", "text": " If <code>image</code> is not <code>VK_NULL_HANDLE</code> and <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a> defines a memory import operation with handle type <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT</code>, or <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT</code>, and the external handle was created by the Vulkan API, then the memory being imported <strong class=\"purple\">must</strong> also be a dedicated image allocation and <code>image</code> must be identical to the image associated with the imported memory." }, { - "vuid": "VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01877", + "vuid": "VUID-VkMemoryDedicatedAllocateInfo-buffer-01877", "text": " If <code>buffer</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a> and <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a> defines a memory import operation with handle type <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT</code>, <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT</code>, or <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT</code>, and the external handle was created by the Vulkan API, then the memory being imported <strong class=\"purple\">must</strong> also be a dedicated buffer allocation and <code>buffer</code> must be identical to the buffer associated with the imported memory." } ], "(VK_VERSION_1_1,VK_KHR_dedicated_allocation)+(VK_KHR_external_memory_fd)": [ { - "vuid": "VUID-VkMemoryDedicatedAllocateInfoKHR-image-01878", + "vuid": "VUID-VkMemoryDedicatedAllocateInfo-image-01878", "text": " If <code>image</code> is not <code>VK_NULL_HANDLE</code> and <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a> defines a memory import operation with handle type <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT</code>, the memory being imported <strong class=\"purple\">must</strong> also be a dedicated image allocation and <code>image</code> must be identical to the image associated with the imported memory." }, { - "vuid": "VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01879", + "vuid": "VUID-VkMemoryDedicatedAllocateInfo-buffer-01879", "text": " If <code>buffer</code> is not <code>VK_NULL_HANDLE</code> and <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a> defines a memory import operation with handle type <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT</code>, the memory being imported <strong class=\"purple\">must</strong> also be a dedicated buffer allocation and <code>buffer</code> must be identical to the buffer associated with the imported memory." } ], @@ -5127,10 +5075,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO</code>" }, { - "vuid": "VUID-VkExportMemoryAllocateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportMemoryAllocateInfo-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> values" } @@ -5147,10 +5091,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR</code>" }, { - "vuid": "VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter", "text": " If <code>pAttributes</code> is not <code>NULL</code>, <code>pAttributes</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>SECURITY_ATTRIBUTES</code> value" } @@ -5199,10 +5139,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR</code>" }, { - "vuid": "VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter", "text": " If <code>handleType</code> is not <code>0</code>, <code>handleType</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> value" } @@ -5311,10 +5247,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR</code>" }, { - "vuid": "VUID-VkImportMemoryFdInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImportMemoryFdInfoKHR-handleType-parameter", "text": " If <code>handleType</code> is not <code>0</code>, <code>handleType</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> value" } @@ -5415,10 +5347,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT</code>" }, { - "vuid": "VUID-VkImportMemoryHostPointerInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter", "text": " <code>handleType</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> value" } @@ -5483,10 +5411,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID</code>" }, { - "vuid": "VUID-VkImportAndroidHardwareBufferInfoANDROID-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter", "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid pointer to a <code>AHardwareBuffer</code> value" } @@ -5545,10 +5469,6 @@ { "vuid": "VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID</code>" - }, - { - "vuid": "VUID-VkAndroidHardwareBufferFormatPropertiesANDROID-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -5559,10 +5479,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV</code>" }, { - "vuid": "VUID-VkExportMemoryAllocateInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBitsNV\">VkExternalMemoryHandleTypeFlagBitsNV</a> values" } @@ -5575,10 +5491,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV</code>" }, { - "vuid": "VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter", "text": " If <code>pAttributes</code> is not <code>NULL</code>, <code>pAttributes</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>SECURITY_ATTRIBUTES</code> value" } @@ -5599,10 +5511,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV</code>" }, { - "vuid": "VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter", "text": " <code>handleType</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBitsNV\">VkExternalMemoryHandleTypeFlagBitsNV</a> values" } @@ -6015,10 +5923,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO</code>" }, { - "vuid": "VUID-VkExternalMemoryBufferCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBits\">VkExternalMemoryHandleTypeFlagBits</a> values" } @@ -6331,6 +6235,10 @@ "text": " If the &amp;lt;&amp;lt;features-features-sparseBinding,sparse bindings&amp;gt;&amp;gt; feature is not enabled, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_IMAGE_CREATE_SPARSE_BINDING_BIT</code>" }, { + "vuid": "VUID-VkImageCreateInfo-flags-01924", + "text": " If the &amp;lt;&amp;lt;features-features-sparseResidencyAliased,sparse aliased residency&amp;gt;&amp;gt; feature is not enabled, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_IMAGE_CREATE_SPARSE_ALIASED_BIT</code>" + }, + { "vuid": "VUID-VkImageCreateInfo-imageType-00970", "text": " If <code>imageType</code> is <code>VK_IMAGE_TYPE_1D</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT</code>" }, @@ -6403,6 +6311,10 @@ "text": " If <code>flags</code> contains <code>VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT</code> or <code>VK_IMAGE_CREATE_SPARSE_ALIASED_BIT</code>, it <strong class=\"purple\">must</strong> also contain <code>VK_IMAGE_CREATE_SPARSE_BINDING_BIT</code>" }, { + "vuid": "VUID-VkImageCreateInfo-None-01925", + "text": " If any of the bits <code>VK_IMAGE_CREATE_SPARSE_BINDING_BIT</code>, <code>VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT</code>, or <code>VK_IMAGE_CREATE_SPARSE_ALIASED_BIT</code> are set, <code>VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT</code> <strong class=\"purple\">must</strong> not also be set" + }, + { "vuid": "VUID-VkImageCreateInfo-initialLayout-00993", "text": " <code>initialLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_UNDEFINED</code> or <code>VK_IMAGE_LAYOUT_PREINITIALIZED</code>." }, @@ -6571,10 +6483,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO</code>" }, { - "vuid": "VUID-VkExternalMemoryImageCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "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" }, @@ -6591,10 +6499,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV</code>" }, { - "vuid": "VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter", "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalMemoryHandleTypeFlagBitsNV\">VkExternalMemoryHandleTypeFlagBitsNV</a> values" } @@ -6609,10 +6513,6 @@ { "vuid": "VUID-VkExternalFormatANDROID-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID</code>" - }, - { - "vuid": "VUID-VkExternalFormatANDROID-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -6651,10 +6551,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR</code>" }, { - "vuid": "VUID-VkImageFormatListCreateInfoKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImageFormatListCreateInfoKHR-pViewFormats-parameter", "text": " If <code>viewFormatCount</code> is not <code>0</code>, <code>pViewFormats</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>viewFormatCount</code> valid <a href=\"#VkFormat\">VkFormat</a> values" } @@ -6991,10 +6887,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO</code>" }, { - "vuid": "VUID-VkImageViewUsageCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkImageViewUsageCreateInfo-usage-parameter", "text": " <code>usage</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkImageUsageFlagBits\">VkImageUsageFlagBits</a> values" }, @@ -7103,6 +6995,12 @@ ] }, "vkGetImageMemoryRequirements": { + "(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)": [ + { + "vuid": "VUID-vkGetImageMemoryRequirements-image-01588", + "text": " <code>image</code> <strong class=\"purple\">must</strong> not have been created with the <code>VK_IMAGE_CREATE_DISJOINT_BIT</code> flag set" + } + ], "core": [ { "vuid": "VUID-vkGetImageMemoryRequirements-device-parameter", @@ -7187,7 +7085,7 @@ ], "(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)": [ { - "vuid": "VUID-VkImageMemoryRequirementsInfo2KHR-image-01897", + "vuid": "VUID-VkImageMemoryRequirementsInfo2-image-01897", "text": " If <code>image</code> was created with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory." } ], @@ -7239,10 +7137,6 @@ { "vuid": "VUID-VkMemoryDedicatedRequirements-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS</code>" - }, - { - "vuid": "VUID-VkMemoryDedicatedRequirements-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -7419,7 +7313,7 @@ "text": " If <code>buffer</code> requires a dedicated allocation(as reported by <a href=\"#vkGetBufferMemoryRequirements2\">vkGetBufferMemoryRequirements2</a> in <a href=\"#VkMemoryDedicatedRequirements\">VkMemoryDedicatedRequirements</a>::requiresDedicatedAllocation for <code>buffer</code>), <code>memory</code> <strong class=\"purple\">must</strong> have been created with <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code> equal to <code>buffer</code> and <code>memoryOffset</code> <strong class=\"purple\">must</strong> be zero" }, { - "vuid": "VUID-VkBindBufferMemoryInfoKHR-memory-01900", + "vuid": "VUID-VkBindBufferMemoryInfo-memory-01900", "text": " If the <code>VkMemoryAllocateInfo</code> provided when <code>memory</code> was allocated included an instance of <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a> in its <code>pNext</code> chain, and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code> was not <code>VK_NULL_HANDLE</code>, then <code>buffer</code> <strong class=\"purple\">must</strong> equal <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code> and <code>memoryOffset</code> <strong class=\"purple\">must</strong> be zero." } ], @@ -7457,10 +7351,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO</code>" }, { - "vuid": "VUID-VkBindBufferMemoryDeviceGroupInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter", "text": " If <code>deviceIndexCount</code> is not <code>0</code>, <code>pDeviceIndices</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>deviceIndexCount</code> <code>uint32_t</code> values" } @@ -7653,7 +7543,7 @@ "text": " If <code>image</code> requires a dedicated allocation (as reported by <a href=\"#vkGetImageMemoryRequirements2\">vkGetImageMemoryRequirements2</a> in <a href=\"#VkMemoryDedicatedRequirements\">VkMemoryDedicatedRequirements</a>::requiresDedicatedAllocation for <code>image</code>), <code>memory</code> <strong class=\"purple\">must</strong> have been created with <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code> equal to <code>image</code> and <code>memoryOffset</code> <strong class=\"purple\">must</strong> be zero" }, { - "vuid": "VUID-VkBindImageMemoryInfoKHR-memory-01903", + "vuid": "VUID-VkBindImageMemoryInfo-memory-01903", "text": " If the <code>VkMemoryAllocateInfo</code> provided when <code>memory</code> was allocated included an instance of <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a> in its <code>pNext</code> chain, and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code> was not <code>VK_NULL_HANDLE</code>, then <code>image</code> <strong class=\"purple\">must</strong> equal <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code> and <code>memoryOffset</code> <strong class=\"purple\">must</strong> be zero." } ], @@ -7751,10 +7641,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO</code>" }, { - "vuid": "VUID-VkBindImageMemoryDeviceGroupInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter", "text": " If <code>deviceIndexCount</code> is not <code>0</code>, <code>pDeviceIndices</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>deviceIndexCount</code> <code>uint32_t</code> values" }, @@ -7953,10 +7839,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter", "text": " <code>reductionMode</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSamplerReductionModeEXT\">VkSamplerReductionModeEXT</a> value" } @@ -8039,7 +7921,7 @@ ], "(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)+(VK_ANDROID_external_memory_android_hardware_buffer)": [ { - "vuid": "VUID-VkSamplerYcbcrConversionCreateInfoKHR-format-01904", + "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-format-01904", "text": " If an external format conversion is being created, <code>format</code> <strong class=\"purple\">must</strong> be <code>VK_FORMAT_UNDEFINED</code>, otherwise it <strong class=\"purple\">must</strong> not be <code>VK_FORMAT_UNDEFINED</code>." } ], @@ -8166,7 +8048,7 @@ }, { "vuid": "VUID-VkDescriptorSetLayoutCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDescriptorSetLayoutBindingFlagsCreateInfoEXT\">VkDescriptorSetLayoutBindingFlagsCreateInfoEXT</a>" }, { "vuid": "VUID-VkDescriptorSetLayoutCreateInfo-flags-parameter", @@ -8186,6 +8068,16 @@ "vuid": "VUID-VkDescriptorSetLayoutCreateInfo-flags-00281", "text": " If <code>flags</code> contains <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR</code>, then the total number of elements of all bindings <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDevicePushDescriptorPropertiesKHR\">VkPhysicalDevicePushDescriptorPropertiesKHR</a>::<code>maxPushDescriptors</code>" } + ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkDescriptorSetLayoutCreateInfo-flags-03000", + "text": " If any binding has the <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code> bit set, <code>flags</code> <strong class=\"purple\">must</strong> include <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutCreateInfo-descriptorType-03001", + "text": " If any binding has the <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code> bit set, then all bindings <strong class=\"purple\">must</strong> not have <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> or <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code>" + } ] }, "VkDescriptorSetLayoutBinding": { @@ -8208,6 +8100,80 @@ } ] }, + "VkDescriptorSetLayoutBindingFlagsCreateInfoEXT": { + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-bindingCount-03002", + "text": " If <code>bindingCount</code> is not zero, <code>bindingCount</code> <strong class=\"purple\">must</strong> equal <a href=\"#VkDescriptorSetLayoutCreateInfo\">VkDescriptorSetLayoutCreateInfo</a>::<code>bindingCount</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03004", + "text": " If an element of <code>pBindingFlags</code> includes <code>VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT</code>, then all other elements of <a href=\"#VkDescriptorSetLayoutCreateInfo\">VkDescriptorSetLayoutCreateInfo</a>::<code>pBindings</code> <strong class=\"purple\">must</strong> have a smaller value of <code>binding</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformBufferUpdateAfterBind-03005", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingUniformBufferUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingSampledImageUpdateAfterBind-03006", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingSampledImageUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_SAMPLER</code>, <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code>, or <code>VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageImageUpdateAfterBind-03007", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingStorageImageUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_STORAGE_IMAGE</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageBufferUpdateAfterBind-03008", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingStorageBufferUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUniformTexelBufferUpdateAfterBind-03009", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingUniformTexelBufferUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingStorageTexelBufferUpdateAfterBind-03010", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingStorageTexelBufferUpdateAfterBind</code> is not enabled, all bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-None-03011", + "text": " All bindings with descriptor type <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code>, <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code>, or <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code> <strong class=\"purple\">must</strong> not use <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingUpdateUnusedWhilePending-03012", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingUpdateUnusedWhilePending</code> is not enabled, all elements of <code>pBindingFlags</code> <strong class=\"purple\">must</strong> not include <code>VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingPartiallyBound-03013", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingPartiallyBound</code> is not enabled, all elements of <code>pBindingFlags</code> <strong class=\"purple\">must</strong> not include <code>VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-descriptorBindingVariableDescriptorCount-03014", + "text": " If <a href=\"#VkPhysicalDeviceDescriptorIndexingFeaturesEXT\">VkPhysicalDeviceDescriptorIndexingFeaturesEXT</a>::<code>descriptorBindingVariableDescriptorCount</code> is not enabled, all elements of <code>pBindingFlags</code> <strong class=\"purple\">must</strong> not include <code>VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-03015", + "text": " If an element of <code>pBindingFlags</code> includes <code>VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT</code>, that element’s <code>descriptorType</code> <strong class=\"purple\">must</strong> not be <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> or <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-parameter", + "text": " If <code>bindingCount</code> is not <code>0</code>, <code>pBindingFlags</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>bindingCount</code> valid combinations of <a href=\"#VkDescriptorBindingFlagBitsEXT\">VkDescriptorBindingFlagBitsEXT</a> values" + }, + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-pBindingFlags-requiredbitmask", + "text": " Each element of <code>pBindingFlags</code> <strong class=\"purple\">must</strong> not be <code>0</code>" + } + ], + "(VK_EXT_descriptor_indexing)+(VK_KHR_push_descriptor)": [ + { + "vuid": "VUID-VkDescriptorSetLayoutBindingFlagsCreateInfoEXT-flags-03003", + "text": " If <a href=\"#VkDescriptorSetLayoutCreateInfo\">VkDescriptorSetLayoutCreateInfo</a>::<code>flags</code> includes <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR</code>, then all elements of <code>pBindingFlags</code> <strong class=\"purple\">must</strong> not include <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code>, <code>VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT</code>, or <code>VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT</code>" + } + ] + }, "vkGetDescriptorSetLayoutSupport": { "(VK_VERSION_1_1,VK_KHR_maintenance3)": [ { @@ -8232,7 +8198,15 @@ }, { "vuid": "VUID-VkDescriptorSetLayoutSupport-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDescriptorSetVariableDescriptorCountLayoutSupportEXT\">VkDescriptorSetVariableDescriptorCountLayoutSupportEXT</a>" + } + ] + }, + "VkDescriptorSetVariableDescriptorCountLayoutSupportEXT": { + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT</code>" } ] }, @@ -8291,6 +8265,32 @@ "text": " <code>setLayoutCount</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxBoundDescriptorSets</code>" }, { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292", + "text": " Any two elements of <code>pPushConstantRanges</code> <strong class=\"purple\">must</strong> not include the same stage in <code>stageFlags</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pNext-pNext", + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask", + "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-parameter", + "text": " If <code>setLayoutCount</code> is not <code>0</code>, <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>setLayoutCount</code> valid <code>VkDescriptorSetLayout</code> handles" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter", + "text": " If <code>pushConstantRangeCount</code> is not <code>0</code>, <code>pPushConstantRanges</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>pushConstantRangeCount</code> valid <code>VkPushConstantRange</code> structures" + } + ], + "!(VK_EXT_descriptor_indexing)": [ + { "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00287", "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_SAMPLER</code> and <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code> accessible to any shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorSamplers</code>" }, @@ -8345,30 +8345,120 @@ { "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-01684", "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetInputAttachments</code>" + } + ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03016", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_SAMPLER</code> and <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorSamplers</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292", - "text": " Any two elements of <code>pPushConstantRanges</code> <strong class=\"purple\">must</strong> not include the same stage in <code>stageFlags</code>" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03017", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER</code> and <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorUniformBuffers</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-sType-sType", - "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO</code>" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03018", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER</code> and <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorStorageBuffers</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03019", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code>, <code>VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorSampledImages</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-flags-zerobitmask", - "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03020", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorStorageImages</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-parameter", - "text": " If <code>setLayoutCount</code> is not <code>0</code>, <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>setLayoutCount</code> valid <code>VkDescriptorSetLayout</code> handles" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03021", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxPerStageDescriptorInputAttachments</code>" }, { - "vuid": "VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter", - "text": " If <code>pushConstantRangeCount</code> is not <code>0</code>, <code>pPushConstantRanges</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>pushConstantRangeCount</code> valid <code>VkPushConstantRange</code> structures" + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03022", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_SAMPLER</code> and <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindSamplers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03023", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER</code> and <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindUniformBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03024", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER</code> and <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindStorageBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03025", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code>, <code>VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindSampledImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03026", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindStorageImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03027", + "text": " The total number of descriptors with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code> accessible to any given shader stage across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxPerStageDescriptorUpdateAfterBindInputAttachments</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03028", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_SAMPLER</code> and <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetSamplers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03029", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER</code> accessible across all shader stagess and and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetUniformBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03030", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetUniformBuffersDynamic</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03031", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetStorageBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03032", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetStorageBuffersDynamic</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03033", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code>, <code>VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetSampledImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03034", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_STORAGE_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetStorageImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-descriptorType-03035", + "text": " The total number of descriptors in descriptor set layouts created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set with a <code>descriptorType</code> of <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceLimits</code>::<code>maxDescriptorSetInputAttachments</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_SAMPLER</code> and <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindSamplers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER</code> accessible across all shader stagess and and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindUniformBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindUniformBuffersDynamic</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindStorageBuffers</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindStorageBuffersDynamic</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER</code>, <code>VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindSampledImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_STORAGE_IMAGE</code>, and <code>VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindStorageImages</code>" + }, + { + "vuid": "VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043", + "text": " The total number of descriptors of the type <code>VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT</code> accessible across all shader stages and across all elements of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceDescriptorIndexingPropertiesEXT</code>::<code>maxDescriptorSetUpdateAfterBindInputAttachments</code>" } ], "(VK_KHR_push_descriptor)": [ @@ -8563,6 +8653,12 @@ "text": " Each element of <code>pSetLayouts</code> <strong class=\"purple\">must</strong> not have been created with <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR</code> set" } ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkDescriptorSetAllocateInfo-pSetLayouts-03044", + "text": " If any element of <code>pSetLayouts</code> was created with the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> bit set, <code>descriptorPool</code> <strong class=\"purple\">must</strong> have been created with the <code>VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT</code> flag set" + } + ], "core": [ { "vuid": "VUID-VkDescriptorSetAllocateInfo-sType-sType", @@ -8570,7 +8666,7 @@ }, { "vuid": "VUID-VkDescriptorSetAllocateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDescriptorSetVariableDescriptorCountAllocateInfoEXT\">VkDescriptorSetVariableDescriptorCountAllocateInfoEXT</a>" }, { "vuid": "VUID-VkDescriptorSetAllocateInfo-descriptorPool-parameter", @@ -8590,6 +8686,26 @@ } ] }, + "VkDescriptorSetVariableDescriptorCountAllocateInfoEXT": { + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045", + "text": " If <code>descriptorSetCount</code> is not zero, <code>descriptorSetCount</code> <strong class=\"purple\">must</strong> equal <a href=\"#VkDescriptorSetAllocateInfo\">VkDescriptorSetAllocateInfo</a>::<code>descriptorSetCount</code>" + }, + { + "vuid": "VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046", + "text": " If <a href=\"#VkDescriptorSetAllocateInfo\">VkDescriptorSetAllocateInfo</a>::<code>pSetLayouts</code>[i] has a variable descriptor count binding, then <code>pDescriptorCounts</code>[i] <strong class=\"purple\">must</strong> be less than or equal to the descriptor count specified for that binding when the descriptor set layout was created." + }, + { + "vuid": "VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT</code>" + }, + { + "vuid": "VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter", + "text": " If <code>descriptorSetCount</code> is not <code>0</code>, <code>pDescriptorCounts</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>descriptorSetCount</code> <code>uint32_t</code> values" + } + ] + }, "vkFreeDescriptorSets": { "core": [ { @@ -8655,11 +8771,19 @@ ] }, "vkUpdateDescriptorSets": { - "core": [ + "!(VK_EXT_descriptor_indexing)": [ { "vuid": "VUID-vkUpdateDescriptorSets-dstSet-00314", "text": " The <code>dstSet</code> member of each element of <code>pDescriptorWrites</code> or <code>pDescriptorCopies</code> <strong class=\"purple\">must</strong> not be used by any command that was recorded to a command buffer which is in the &amp;lt;&amp;lt;commandbuffers-lifecycle, pending state&amp;gt;&amp;gt;." - }, + } + ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-vkUpdateDescriptorSets-None-03047", + "text": " Descriptor bindings updated by this command which were created without the <code>VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT</code> or <code>VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT</code> bits set <strong class=\"purple\">must</strong> not be used by any command that was recorded to a command buffer which is in the &amp;lt;&amp;lt;commandbuffers-lifecycle,pending state&amp;gt;&amp;gt;." + } + ], + "core": [ { "vuid": "VUID-vkUpdateDescriptorSets-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <code>VkDevice</code> handle" @@ -8804,6 +8928,12 @@ "vuid": "VUID-VkWriteDescriptorSet-commonparent", "text": " Both of <code>dstSet</code>, and the elements of <code>pTexelBufferView</code> that are valid handles <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <code>VkDevice</code>" } + ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkWriteDescriptorSet-descriptorCount-03048", + "text": " All consecutive bindings updated via a single <code>VkWriteDescriptorSet</code> structure, except those with a <code>descriptorCount</code> of zero, <strong class=\"purple\">must</strong> have identical <a href=\"#VkDescriptorBindingFlagBitsEXT\">VkDescriptorBindingFlagBitsEXT</a>." + } ] }, "VkDescriptorBufferInfo": { @@ -8896,6 +9026,24 @@ "vuid": "VUID-VkCopyDescriptorSet-commonparent", "text": " Both of <code>dstSet</code>, and <code>srcSet</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <code>VkDevice</code>" } + ], + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkCopyDescriptorSet-srcSet-01918", + "text": " If <code>srcSet</code>’s layout was created with the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> flag set, then <code>dstSet</code>’s layout <strong class=\"purple\">must</strong> also have been created with the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> flag set" + }, + { + "vuid": "VUID-VkCopyDescriptorSet-srcSet-01919", + "text": " If <code>srcSet</code>’s layout was created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> flag set, then <code>dstSet</code>’s layout <strong class=\"purple\">must</strong> also have been created without the <code>VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT</code> flag set" + }, + { + "vuid": "VUID-VkCopyDescriptorSet-srcSet-01920", + "text": " If the descriptor pool from which <code>srcSet</code> was allocated was created with the <code>VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT</code> flag set, then the descriptor pool from which <code>dstSet</code> was allocated <strong class=\"purple\">must</strong> also have been created with the <code>VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT</code> flag set" + }, + { + "vuid": "VUID-VkCopyDescriptorSet-srcSet-01921", + "text": " If the descriptor pool from which <code>srcSet</code> was allocated was created without the <code>VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT</code> flag set, then the descriptor pool from which <code>dstSet</code> was allocated <strong class=\"purple\">must</strong> also have been created without the <code>VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT</code> flag set" + } ] }, "vkCreateDescriptorUpdateTemplate": { @@ -9367,22 +9515,18 @@ "vkCmdBeginQuery": { "core": [ { - "vuid": "VUID-vkCmdBeginQuery-queryPool-00798", - "text": " The query identified by <code>queryPool</code> and <code>query</code> <strong class=\"purple\">must</strong> currently not be &amp;lt;&amp;lt;queries-operation-active,active&amp;gt;&amp;gt;" + "vuid": "VUID-vkCmdBeginQuery-queryPool-01922", + "text": " <code>queryPool</code> <strong class=\"purple\">must</strong> have been created with a <code>queryType</code> that differs from that of any queries that are &amp;lt;&amp;lt;queries-operation-active,active&amp;gt;&amp;gt; within <code>commandBuffer</code>" }, { - "vuid": "VUID-vkCmdBeginQuery-queryPool-00799", - "text": " The query identified by <code>queryPool</code> and <code>query</code> <strong class=\"purple\">must</strong> be unavailable" + "vuid": "VUID-vkCmdBeginQuery-None-00807", + "text": " All queries used by the command <strong class=\"purple\">must</strong> be unavailable" }, { "vuid": "VUID-vkCmdBeginQuery-queryType-00800", "text": " If the &amp;lt;&amp;lt;features-features-occlusionQueryPrecise,precise occlusion queries&amp;gt;&amp;gt; feature is not enabled, or the <code>queryType</code> used to create <code>queryPool</code> was not <code>VK_QUERY_TYPE_OCCLUSION</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_QUERY_CONTROL_PRECISE_BIT</code>" }, { - "vuid": "VUID-vkCmdBeginQuery-queryPool-00801", - "text": " <code>queryPool</code> <strong class=\"purple\">must</strong> have been created with a <code>queryType</code> that differs from that of any other queries that have been made &amp;lt;&amp;lt;queries-operation-active,active&amp;gt;&amp;gt;, and are currently still active within <code>commandBuffer</code>" - }, - { "vuid": "VUID-vkCmdBeginQuery-query-00802", "text": " <code>query</code> <strong class=\"purple\">must</strong> be less than the number of queries in <code>queryPool</code>" }, @@ -9431,14 +9575,6 @@ ], "(VK_VERSION_1_1,VK_KHR_multiview)": [ { - "vuid": "VUID-vkCmdBeginQuery-None-00806", - "text": " All queries used by the command <strong class=\"purple\">must</strong> not be active" - }, - { - "vuid": "VUID-vkCmdBeginQuery-None-00807", - "text": " All queries used by the command <strong class=\"purple\">must</strong> be unavailable" - }, - { "vuid": "VUID-vkCmdBeginQuery-query-00808", "text": " If <code>vkCmdBeginQuery</code> is called within a render pass instance, the sum of <code>query</code> and the number of bits set in the current subpass’s view mask <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>" } @@ -9447,8 +9583,8 @@ "vkCmdEndQuery": { "core": [ { - "vuid": "VUID-vkCmdEndQuery-queryPool-00809", - "text": " The query identified by <code>queryPool</code> and <code>query</code> <strong class=\"purple\">must</strong> currently be &amp;lt;&amp;lt;queries-operation-active,active&amp;gt;&amp;gt;" + "vuid": "VUID-vkCmdEndQuery-None-01923", + "text": " All queries used by the command <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;queries-operation-active,active&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdEndQuery-query-00810", @@ -9483,10 +9619,6 @@ ], "(VK_VERSION_1_1,VK_KHR_multiview)": [ { - "vuid": "VUID-vkCmdEndQuery-None-00811", - "text": " All queries used by the command <strong class=\"purple\">must</strong> be active" - }, - { "vuid": "VUID-vkCmdEndQuery-query-00812", "text": " If <code>vkCmdEndQuery</code> is called within a render pass instance, the sum of <code>query</code> and the number of bits set in the current subpass’s view mask <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>" } @@ -10383,6 +10515,10 @@ ], "(VK_KHR_shared_presentable_image)": [ { + "vuid": "VUID-vkCmdCopyImage-srcImageLayout-01917", + "text": " <code>srcImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL</code>, <code>VK_IMAGE_LAYOUT_GENERAL</code>, or <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>" + }, + { "vuid": "VUID-vkCmdCopyImage-dstImageLayout-01395", "text": " <code>dstImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL</code>, <code>VK_IMAGE_LAYOUT_GENERAL</code>, or <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>" } @@ -11614,23 +11750,23 @@ "core": [ { "vuid": "VUID-vkCmdDraw-renderPass-00435", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDraw-subpass-00436", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDraw-None-00437", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDraw-None-00438", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDraw-None-00439", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDraw-None-00440", @@ -11646,7 +11782,7 @@ }, { "vuid": "VUID-vkCmdDraw-None-00443", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDraw-None-00444", @@ -11654,23 +11790,23 @@ }, { "vuid": "VUID-vkCmdDraw-None-00445", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDraw-None-00446", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDraw-None-00447", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDraw-None-00448", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDraw-None-00449", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDraw-linearTilingFeatures-00450", @@ -11716,21 +11852,21 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDraw-commandBuffer-01850", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDraw-commandBuffer-01851", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDraw-commandBuffer-01852", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDraw-sampleLocationsEnable-01512", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -11738,23 +11874,23 @@ "core": [ { "vuid": "VUID-vkCmdDrawIndexed-renderPass-00454", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexed-subpass-00455", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexed-None-00456", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00457", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00458", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00459", @@ -11770,11 +11906,11 @@ }, { "vuid": "VUID-vkCmdDrawIndexed-None-00462", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDrawIndexed-indexSize-00463", - "text": " <span class=\"eq\">(<code>indexSize</code> * (<code>firstIndex</code> + <code>indexCount</code>) + <code>offset</code>)</span> <strong class=\"purple\">must</strong> be less than or equal to the size of the currently bound index buffer, with indexSize being based on the type specified by <code>indexType</code>, where the index buffer, <code>indexType</code>, and <code>offset</code> are specified via <code>vkCmdBindIndexBuffer</code>" + "text": " <span class=\"eq\">(<code>indexSize</code> * (<code>firstIndex</code> + <code>indexCount</code>) + <code>offset</code>)</span> <strong class=\"purple\">must</strong> be less than or equal to the size of the bound index buffer, with indexSize being based on the type specified by <code>indexType</code>, where the index buffer, <code>indexType</code>, and <code>offset</code> are specified via <code>vkCmdBindIndexBuffer</code>" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00464", @@ -11782,23 +11918,23 @@ }, { "vuid": "VUID-vkCmdDrawIndexed-None-00465", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00466", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00467", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00468", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexed-None-00469", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexed-linearTilingFeatures-00470", @@ -11844,21 +11980,21 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDrawIndexed-commandBuffer-01853", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDrawIndexed-commandBuffer-01854", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDrawIndexed-commandBuffer-01855", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDrawIndexed-sampleLocationsEnable-01513", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -11890,23 +12026,23 @@ }, { "vuid": "VUID-vkCmdDrawIndirect-renderPass-00479", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndirect-subpass-00480", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndirect-None-00481", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00482", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00483", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00484", @@ -11918,7 +12054,7 @@ }, { "vuid": "VUID-vkCmdDrawIndirect-None-00486", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDrawIndirect-drawCount-00487", @@ -11938,23 +12074,23 @@ }, { "vuid": "VUID-vkCmdDrawIndirect-None-00491", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00492", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00493", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00494", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndirect-None-00495", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndirect-linearTilingFeatures-00496", @@ -12008,21 +12144,21 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDrawIndirect-commandBuffer-01856", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDrawIndirect-commandBuffer-01857", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDrawIndirect-commandBuffer-01858", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDrawIndirect-sampleLocationsEnable-01514", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -12078,23 +12214,23 @@ }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-renderPass-00507", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-subpass-00508", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00509", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00510", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00511", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00512", @@ -12106,7 +12242,7 @@ }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00514", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-countBuffer-00515", @@ -12126,23 +12262,23 @@ }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00519", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00520", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00521", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00522", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-None-00523", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-linearTilingFeatures-00524", @@ -12190,21 +12326,21 @@ "(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01859", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01860", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDrawIndirectCountAMD-commandBuffer-01861", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDrawIndirectCountAMD-sampleLocationsEnable-01515", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -12236,23 +12372,23 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-renderPass-00531", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-subpass-00532", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00533", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00534", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00535", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00536", @@ -12264,7 +12400,7 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00538", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-drawCount-00539", @@ -12284,23 +12420,23 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00543", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00544", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00545", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00546", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-None-00547", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-linearTilingFeatures-00548", @@ -12354,21 +12490,21 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDrawIndexedIndirect-commandBuffer-01862", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-commandBuffer-01863", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-commandBuffer-01864", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDrawIndexedIndirect-sampleLocationsEnable-01516", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -12380,7 +12516,7 @@ }, { "vuid": "VUID-VkDrawIndexedIndirectCommand-indexSize-00553", - "text": " <span class=\"eq\">(<code>indexSize</code> * (<code>firstIndex</code> + <code>indexCount</code>) + <code>offset</code>)</span> <strong class=\"purple\">must</strong> be less than or equal to the size of the currently bound index buffer, with <code>indexSize</code> being based on the type specified by <code>indexType</code>, where the index buffer, <code>indexType</code>, and <code>offset</code> are specified via <code>vkCmdBindIndexBuffer</code>" + "text": " <span class=\"eq\">(<code>indexSize</code> * (<code>firstIndex</code> + <code>indexCount</code>) + <code>offset</code>)</span> <strong class=\"purple\">must</strong> be less than or equal to the size of the bound index buffer, with <code>indexSize</code> being based on the type specified by <code>indexType</code>, where the index buffer, <code>indexType</code>, and <code>offset</code> are specified via <code>vkCmdBindIndexBuffer</code>" }, { "vuid": "VUID-VkDrawIndexedIndirectCommand-firstInstance-00554", @@ -12428,23 +12564,23 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-renderPass-00560", - "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The current render pass <strong class=\"purple\">must</strong> be &amp;lt;&amp;lt;renderpass-compatibility,compatible&amp;gt;&amp;gt; with the <code>renderPass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-subpass-00561", - "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." + "text": " The subpass index of the current render pass <strong class=\"purple\">must</strong> be equal to the <code>subpass</code> member of the <code>VkGraphicsPipelineCreateInfo</code> structure specified when creating the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>." }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00562", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00563", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00564", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00565", @@ -12456,7 +12592,7 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00567", - "text": " If the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" + "text": " If the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> requires any dynamic state, that state <strong class=\"purple\">must</strong> have been set on the current command buffer" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-countBuffer-00568", @@ -12476,23 +12612,23 @@ }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00572", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00573", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00574", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00575", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-None-00576", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-linearTilingFeatures-00577", @@ -12540,21 +12676,21 @@ "(VK_AMD_draw_indirect_count)+(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01865", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01866", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-commandBuffer-01867", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the framebuffer-space pipeline stages in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> reads from or writes to any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ], "(VK_AMD_draw_indirect_count)+(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdDrawIndexedIndirectCountAMD-sampleLocationsEnable-01517", - "text": " If the currently bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" + "text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set" } ] }, @@ -12694,6 +12830,38 @@ } ] }, + "VkPipelineVertexInputDivisorStateCreateInfoEXT": { + "(VK_EXT_vertex_attribute_divisor)": [ + { + "vuid": "VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT</code>" + }, + { + "vuid": "VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter", + "text": " <code>pVertexBindingDivisors</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>vertexBindingDivisorCount</code> <code>VkVertexInputBindingDivisorDescriptionEXT</code> structures" + }, + { + "vuid": "VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength", + "text": " <code>vertexBindingDivisorCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" + } + ] + }, + "VkVertexInputBindingDivisorDescriptionEXT": { + "(VK_EXT_vertex_attribute_divisor)": [ + { + "vuid": "VUID-VkVertexInputBindingDivisorDescriptionEXT-binding-01869", + "text": " <code>binding</code> <strong class=\"purple\">must</strong> be less than <code>VkPhysicalDeviceLimits</code>::<code>maxVertexInputBindings</code>" + }, + { + "vuid": "VUID-VkVertexInputBindingDivisorDescriptionEXT-divisor-01870", + "text": " <code>divisor</code> <strong class=\"purple\">must</strong> be a value between <code>0</code> and <code>VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT</code>::<code>maxVertexAttribDivisor</code>, inclusive." + }, + { + "vuid": "VUID-VkVertexInputBindingDivisorDescriptionEXT-inputRate-01871", + "text": " <a href=\"#VkVertexInputBindingDescription\">VkVertexInputBindingDescription</a>::<code>inputRate</code> <strong class=\"purple\">must</strong> be of type <code>VK_VERTEX_INPUT_RATE_INSTANCE</code> for this <code>binding</code>." + } + ] + }, "VkPipelineTessellationStateCreateInfo": { "core": [ { @@ -12721,10 +12889,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO</code>" }, { - "vuid": "VUID-VkPipelineTessellationDomainOriginStateCreateInfo-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter", "text": " <code>domainOrigin</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkTessellationDomainOrigin\">VkTessellationDomainOrigin</a> value" } @@ -12741,10 +12905,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV</code>" }, { - "vuid": "VUID-VkPipelineViewportSwizzleStateCreateInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" }, @@ -12790,7 +12950,7 @@ "(VK_NV_clip_space_w_scaling)": [ { "vuid": "VUID-vkCmdSetViewportWScalingNV-None-01322", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetViewportWScalingNV-firstViewport-01323", @@ -12880,7 +13040,7 @@ "core": [ { "vuid": "VUID-vkCmdSetViewport-None-01221", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_VIEWPORT</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_VIEWPORT</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetViewport-firstViewport-01222", @@ -13105,10 +13265,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkPipelineSampleLocationsStateCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter", "text": " <code>sampleLocationsInfo</code> <strong class=\"purple\">must</strong> be a valid <code>VkSampleLocationsInfoEXT</code> structure" } @@ -13129,10 +13285,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT</code>" }, { - "vuid": "VUID-VkSampleLocationsInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkSampleLocationsInfoEXT-sampleLocationsPerPixel-parameter", "text": " <code>sampleLocationsPerPixel</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSampleCountFlagBits\">VkSampleCountFlagBits</a> value" }, @@ -13150,11 +13302,11 @@ "(VK_EXT_sample_locations)": [ { "vuid": "VUID-vkCmdSetSampleLocationsEXT-None-01528", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetSampleLocationsEXT-sampleLocationsPerPixel-01529", - "text": " The <code>sampleLocationsPerPixel</code> member of <code>pSampleLocationsInfo</code> <strong class=\"purple\">must</strong> equal the <code>rasterizationSamples</code> member of the <a href=\"#VkPipelineMultisampleStateCreateInfo\">VkPipelineMultisampleStateCreateInfo</a> structure the currently bound graphics pipeline has been created with" + "text": " The <code>sampleLocationsPerPixel</code> member of <code>pSampleLocationsInfo</code> <strong class=\"purple\">must</strong> equal the <code>rasterizationSamples</code> member of the <a href=\"#VkPipelineMultisampleStateCreateInfo\">VkPipelineMultisampleStateCreateInfo</a> structure the bound graphics pipeline has been created with" }, { "vuid": "VUID-vkCmdSetSampleLocationsEXT-variableSampleLocations-01530", @@ -13182,7 +13334,7 @@ "core": [ { "vuid": "VUID-vkCmdSetLineWidth-None-00787", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_LINE_WIDTH</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_LINE_WIDTH</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetLineWidth-lineWidth-00788", @@ -13206,7 +13358,7 @@ "core": [ { "vuid": "VUID-vkCmdSetDepthBias-None-00789", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DEPTH_BIAS</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DEPTH_BIAS</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetDepthBias-depthBiasClamp-00790", @@ -13237,10 +13389,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" }, @@ -13261,10 +13409,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" }, @@ -13278,7 +13422,7 @@ "(VK_EXT_discard_rectangles)": [ { "vuid": "VUID-vkCmdSetDiscardRectangleEXT-None-00583", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetDiscardRectangleEXT-firstDiscardRectangle-00585", @@ -13322,7 +13466,7 @@ "core": [ { "vuid": "VUID-vkCmdSetScissor-None-00590", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_SCISSOR</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_SCISSOR</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetScissor-firstScissor-00591", @@ -13410,7 +13554,7 @@ "core": [ { "vuid": "VUID-vkCmdSetDepthBounds-None-00599", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DEPTH_BOUNDS</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_DEPTH_BOUNDS</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetDepthBounds-commandBuffer-parameter", @@ -13470,7 +13614,7 @@ "core": [ { "vuid": "VUID-vkCmdSetStencilCompareMask-None-00602", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetStencilCompareMask-commandBuffer-parameter", @@ -13498,7 +13642,7 @@ "core": [ { "vuid": "VUID-vkCmdSetStencilWriteMask-None-00603", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_WRITE_MASK</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_WRITE_MASK</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter", @@ -13526,7 +13670,7 @@ "core": [ { "vuid": "VUID-vkCmdSetStencilReference-None-00604", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_REFERENCE</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_STENCIL_REFERENCE</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetStencilReference-commandBuffer-parameter", @@ -13561,10 +13705,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV</code>" }, { - "vuid": "VUID-VkPipelineCoverageToColorStateCreateInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" } @@ -13581,10 +13721,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV</code>" }, { - "vuid": "VUID-VkPipelineCoverageModulationStateCreateInfoNV-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" }, @@ -13704,7 +13840,7 @@ "core": [ { "vuid": "VUID-vkCmdSetBlendConstants-None-00612", - "text": " The currently bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_BLEND_CONSTANTS</code> dynamic state enabled" + "text": " The bound graphics pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_DYNAMIC_STATE_BLEND_CONSTANTS</code> dynamic state enabled" }, { "vuid": "VUID-vkCmdSetBlendConstants-commandBuffer-parameter", @@ -13739,10 +13875,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter", "text": " <code>blendOverlap</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBlendOverlapEXT\">VkBlendOverlapEXT</a> value" } @@ -13764,11 +13896,11 @@ }, { "vuid": "VUID-vkCmdDispatch-None-00389", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDispatch-None-00390", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDispatch-None-00391", @@ -13776,27 +13908,27 @@ }, { "vuid": "VUID-vkCmdDispatch-None-00392", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants with the one used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants with the one used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDispatch-None-00393", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDispatch-None-00394", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDispatch-None-00395", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDispatch-None-00396", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDispatch-None-00397", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDispatch-linearTilingFeatures-00398", @@ -13832,15 +13964,15 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDispatch-commandBuffer-01844", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDispatch-commandBuffer-01845", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_POINT_COMPUTE</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_POINT_COMPUTE</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDispatch-commandBuffer-01846", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_POINT_COMPUTE</code> reads from any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_POINT_COMPUTE</code> reads from any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ] }, @@ -13852,11 +13984,11 @@ }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00402", - "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each set <em>n</em> that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a descriptor set <strong class=\"purple\">must</strong> have been bound to <em>n</em> at <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for set <em>n</em>, with the <code>VkPipelineLayout</code> used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00403", - "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the currently bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" + "text": " Descriptors in each bound descriptor set, specified via <code>vkCmdBindDescriptorSets</code>, <strong class=\"purple\">must</strong> be valid if they are statically used by the bound <code>VkPipeline</code> object, specified via <code>vkCmdBindPipeline</code>" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00404", @@ -13876,27 +14008,27 @@ }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00408", - "text": " For each push constant that is statically used by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants with the one used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" + "text": " For each push constant that is statically used by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, a push constant value <strong class=\"purple\">must</strong> have been set for <code>VK_PIPELINE_BIND_POINT_COMPUTE</code>, with a <code>VkPipelineLayout</code> that is compatible for push constants with the one used to create the current <code>VkPipeline</code>, as described in &amp;lt;&amp;lt;descriptorsets-compatibility&amp;gt;&amp;gt;" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00409", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used to sample from any <code>VkImage</code> with a <code>VkImageView</code> of the type <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, <code>VK_IMAGE_VIEW_TYPE_1D_ARRAY</code>, <code>VK_IMAGE_VIEW_TYPE_2D_ARRAY</code> or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>, in any shader stage" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00410", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions with <code>ImplicitLod</code>, <code>Dref</code> or <code>Proj</code> in their name, in any shader stage" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00411", - "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" + "text": " If any <code>VkSampler</code> object that is accessed from a shader by the <code>VkPipeline</code> bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> uses unnormalized coordinates, it <strong class=\"purple\">must</strong> not be used with any of the SPIR-V <code>OpImageSample*</code> or <code>OpImageSparseSample*</code> instructions that includes a LOD bias or any offset values, in any shader stage" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00412", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a uniform buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDispatchIndirect-None-00413", - "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the currently bound descriptor set" + "text": " If the &amp;lt;&amp;lt;features-features-robustBufferAccess,robust buffer access&amp;gt;&amp;gt; feature is not enabled, and any shader stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> accesses a storage buffer, it <strong class=\"purple\">must</strong> not access values outside of the range of that buffer specified in the bound descriptor set" }, { "vuid": "VUID-vkCmdDispatchIndirect-linearTilingFeatures-00414", @@ -13940,15 +14072,15 @@ "(VK_VERSION_1_1)": [ { "vuid": "VUID-vkCmdDispatchIndirect-commandBuffer-01847", - "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is an unprotected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_BIND_POINT_COMPUTE</code> reads from or writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." }, { "vuid": "VUID-vkCmdDispatchIndirect-commandBuffer-01848", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_POINT_COMPUTE</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_POINT_COMPUTE</code> writes to any image or buffer, that image or buffer <strong class=\"purple\">must</strong> not be an unprotected image or unprotected buffer." }, { "vuid": "VUID-vkCmdDispatchIndirect-commandBuffer-01849", - "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the <code>VkPipeline</code> object currently bound to <code>VK_PIPELINE_POINT_COMPUTE</code> reads from any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." + "text": " If <code>commandBuffer</code> is a protected command buffer, and any pipeline stage other than the compute pipeline stage in the <code>VkPipeline</code> object bound to <code>VK_PIPELINE_POINT_COMPUTE</code> reads from any image or buffer, the image or buffer <strong class=\"purple\">must</strong> not be a protected image or protected buffer." } ] }, @@ -14000,7 +14132,7 @@ }, { "vuid": "VUID-vkCmdDispatchBase-baseGroupX-00427", - "text": " If any of <code>baseGroupX</code>, <code>baseGroupY</code>, or <code>baseGroupZ</code> are not zero, then the currently bound compute pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_PIPELINE_CREATE_DISPATCH_BASE</code> flag." + "text": " If any of <code>baseGroupX</code>, <code>baseGroupY</code>, or <code>baseGroupZ</code> are not zero, then the bound compute pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_PIPELINE_CREATE_DISPATCH_BASE</code> flag." }, { "vuid": "VUID-vkCmdDispatchBase-commandBuffer-parameter", @@ -16477,10 +16609,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkSwapchainCounterCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter", "text": " <code>surfaceCounters</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkSurfaceCounterFlagBitsEXT\">VkSurfaceCounterFlagBitsEXT</a> values" } @@ -17057,14 +17185,6 @@ { "vuid": "VUID-VkPhysicalDeviceFeatures2-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceFeatures2-pNext-pNext", - "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkPhysicalDevice16BitStorageFeatures\">VkPhysicalDevice16BitStorageFeatures</a>, <a href=\"#VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT\">VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceMultiviewFeatures\">VkPhysicalDeviceMultiviewFeatures</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryFeatures\">VkPhysicalDeviceProtectedMemoryFeatures</a>, <a href=\"#VkPhysicalDeviceSamplerYcbcrConversionFeatures\">VkPhysicalDeviceSamplerYcbcrConversionFeatures</a>, <a href=\"#VkPhysicalDeviceShaderDrawParameterFeatures\">VkPhysicalDeviceShaderDrawParameterFeatures</a>, or <a href=\"#VkPhysicalDeviceVariablePointerFeatures\">VkPhysicalDeviceVariablePointerFeatures</a>" - }, - { - "vuid": "VUID-VkPhysicalDeviceFeatures2-sType-unique", - "text": " Each <code>sType</code> member in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be unique" } ] }, @@ -17077,10 +17197,6 @@ { "vuid": "VUID-VkPhysicalDeviceVariablePointerFeatures-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceVariablePointerFeatures-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17121,10 +17237,6 @@ { "vuid": "VUID-VkPhysicalDeviceProtectedMemoryFeatures-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceProtectedMemoryFeatures-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17144,15 +17256,19 @@ } ] }, + "VkPhysicalDeviceDescriptorIndexingFeaturesEXT": { + "(VK_EXT_descriptor_indexing)": [ + { + "vuid": "VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT</code>" + } + ] + }, "VkPhysicalDevicePushDescriptorPropertiesKHR": { "(VK_KHR_push_descriptor)": [ { "vuid": "VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR</code>" - }, - { - "vuid": "VUID-VkPhysicalDevicePushDescriptorPropertiesKHR-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17161,10 +17277,6 @@ { "vuid": "VUID-VkPhysicalDeviceMultiviewProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceMultiviewProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17173,10 +17285,6 @@ { "vuid": "VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17185,10 +17293,6 @@ { "vuid": "VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17197,10 +17301,6 @@ { "vuid": "VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17217,10 +17317,6 @@ { "vuid": "VUID-VkPhysicalDevicePointClippingProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkPhysicalDevicePointClippingProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17229,10 +17325,6 @@ { "vuid": "VUID-VkPhysicalDeviceSubgroupProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceSubgroupProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17249,10 +17341,6 @@ { "vuid": "VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17261,10 +17349,6 @@ { "vuid": "VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17273,10 +17357,6 @@ { "vuid": "VUID-VkPhysicalDeviceProtectedMemoryProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkPhysicalDeviceProtectedMemoryProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17285,10 +17365,14 @@ { "vuid": "VUID-VkPhysicalDeviceMaintenance3Properties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES</code>" - }, + } + ] + }, + "VkPhysicalDeviceDescriptorIndexingPropertiesEXT": { + "(VK_EXT_descriptor_indexing)": [ { - "vuid": "VUID-VkPhysicalDeviceMaintenance3Properties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT</code>" } ] }, @@ -17297,10 +17381,14 @@ { "vuid": "VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT</code>" - }, + } + ] + }, + "VkPhysicalDeviceShaderCorePropertiesAMD": { + "(VK_AMD_shader_core_properties)": [ { - "vuid": "VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-VkPhysicalDeviceShaderCorePropertiesAMD-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD</code>" } ] }, @@ -17453,6 +17541,12 @@ ] }, "vkGetPhysicalDeviceImageFormatProperties2": { + "(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_ANDROID_external_memory_android_hardware_buffer)": [ + { + "vuid": "VUID-vkGetPhysicalDeviceImageFormatProperties2-pNext-01868", + "text": " If the <code>pNext</code> chain of <code>pImageFormatProperties</code> contains an instance of <a href=\"#VkAndroidHardwareBufferUsageANDROID\">VkAndroidHardwareBufferUsageANDROID</a>, the <code>pNext</code> chain of <code>pImageFormatInfo</code> <strong class=\"purple\">must</strong> contain an instance of <a href=\"#VkPhysicalDeviceExternalImageFormatInfo\">VkPhysicalDeviceExternalImageFormatInfo</a> with <code>handleType</code> set to <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code>." + } + ], "(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)": [ { "vuid": "VUID-vkGetPhysicalDeviceImageFormatProperties2-physicalDevice-parameter", @@ -17537,10 +17631,6 @@ { "vuid": "VUID-VkExternalImageFormatProperties-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES</code>" - }, - { - "vuid": "VUID-VkExternalImageFormatProperties-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17557,10 +17647,6 @@ { "vuid": "VUID-VkAndroidHardwareBufferUsageANDROID-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID</code>" - }, - { - "vuid": "VUID-VkAndroidHardwareBufferUsageANDROID-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -17947,10 +18033,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkDebugUtilsMessengerCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkDebugUtilsMessengerCreateInfoEXT-flags-zerobitmask", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>" }, @@ -18255,10 +18337,6 @@ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT</code>" }, { - "vuid": "VUID-VkDebugReportCallbackCreateInfoEXT-pNext-pNext", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" - }, - { "vuid": "VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkDebugReportFlagBitsEXT\">VkDebugReportFlagBitsEXT</a> values" } diff --git a/scripts/vk.xml b/scripts/vk.xml index 36076d01..a97ae927 100644 --- a/scripts/vk.xml +++ b/scripts/vk.xml @@ -24,7 +24,8 @@ language incorporated into the Specification and reference pages, and other material which is registered by Khronos, such as tags used by extension and layer authors. The authoritative public version of vk.xml is maintained in the master branch of the Khronos Vulkan GitHub project. The authoritative -private version is maintained in the 1.0 branch of the member gitlab server. +private version is maintained in the master branch of the member gitlab +server. </comment> <vendorids comment="Vulkan vendor IDs for physical devices without PCI vendor IDs"> @@ -136,7 +137,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="define">// Vulkan 1.1 version number #define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_VERSION</type>(1, 1, 0)// Patch version should always be set to 0</type> <type category="define">// Version of this file -#define <name>VK_HEADER_VERSION</name> 71</type> +#define <name>VK_HEADER_VERSION</name> 72</type> <type category="define"> #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type> @@ -294,6 +295,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <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="VkDescriptorBindingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorBindingFlagsEXT</name>;</type> <comment>Types which can be void pointers or class pointers, selected at compile time</comment> <type category="handle"><type>VK_DEFINE_HANDLE</type>(<name>VkInstance</name>)</type> @@ -425,6 +427,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type name="VkDescriptorPoolCreateFlagBits" category="enum"/> <type name="VkDependencyFlagBits" category="enum"/> <type name="VkObjectType" category="enum"/> + <type name="VkDescriptorBindingFlagBitsEXT" category="enum"/> <comment>Extensions</comment> <type name="VkIndirectCommandsLayoutUsageFlagBitsNVX" category="enum"/> @@ -1574,7 +1577,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkDisplayPresentInfoKHR" structextends="VkPresentInfoKHR"> <member values="VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkRect2D</type> <name>srcRect</name><comment>Rectangle within the presentable image to read pixel data from when presenting to the display.</comment></member> <member><type>VkRect2D</type> <name>dstRect</name><comment>Rectangle within the current display mode's visible region to display srcRectangle in.</comment></member> <member><type>VkBool32</type> <name>persistent</name><comment>For smart displays, use buffered mode. If the display properties member "persistentMode" is VK_FALSE, this member must always be VK_FALSE.</comment></member> @@ -1687,7 +1690,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkPipelineRasterizationStateRasterizationOrderAMD" structextends="VkPipelineRasterizationStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkRasterizationOrderAMD</type> <name>rasterizationOrder</name><comment>Rasterization order to use for the pipeline</comment></member> </type> <type category="struct" name="VkDebugMarkerObjectNameInfoEXT"> @@ -1714,17 +1717,17 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkDedicatedAllocationImageCreateInfoNV" structextends="VkImageCreateInfo"> <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>dedicatedAllocation</name><comment>Whether this image uses a dedicated allocation</comment></member> </type> <type category="struct" name="VkDedicatedAllocationBufferCreateInfoNV" structextends="VkBufferCreateInfo"> <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>dedicatedAllocation</name><comment>Whether this buffer uses a dedicated allocation</comment></member> </type> <type category="struct" name="VkDedicatedAllocationMemoryAllocateInfoNV" structextends="VkMemoryAllocateInfo"> <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>VkImage</type> <name>image</name><comment>Image that this allocation will be bound to</comment></member> <member optional="true"><type>VkBuffer</type> <name>buffer</name><comment>Buffer that this allocation will be bound to</comment></member> </type> @@ -1758,7 +1761,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkWin32KeyedMutexAcquireReleaseInfoNV" structextends="VkSubmitInfo"> <member values="VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>acquireCount</name></member> <member len="acquireCount">const <type>VkDeviceMemory</type>* <name>pAcquireSyncs</name></member> <member len="acquireCount">const <type>uint64_t</type>* <name>pAcquireKeys</name></member> @@ -1936,7 +1939,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkPresentRegionsKHR" structextends="VkPresentInfoKHR"> <member values="VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>swapchainCount</name><comment>Copy of VkPresentInfoKHR::swapchainCount</comment></member> <member len="swapchainCount" optional="true">const <type>VkPresentRegionKHR</type>* <name>pRegions</name><comment>The regions that have changed</comment></member> </type> @@ -1964,7 +1967,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkExternalMemoryPropertiesKHR" alias="VkExternalMemoryProperties"/> <type category="struct" name="VkPhysicalDeviceExternalImageFormatInfo" structextends="VkPhysicalDeviceImageFormatInfo2"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> </type> <type category="struct" name="VkPhysicalDeviceExternalImageFormatInfoKHR" alias="VkPhysicalDeviceExternalImageFormatInfo"/> @@ -2060,7 +2063,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkWin32KeyedMutexAcquireReleaseInfoKHR" structextends="VkSubmitInfo"> <member values="VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>acquireCount</name></member> <member len="acquireCount">const <type>VkDeviceMemory</type>* <name>pAcquireSyncs</name></member> <member len="acquireCount">const <type>uint64_t</type>* <name>pAcquireKeys</name></member> @@ -2107,7 +2110,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkD3D12FenceSubmitInfoKHR" structextends="VkSubmitInfo"> <member values="VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>waitSemaphoreValuesCount</name></member> <member optional="true" len="waitSemaphoreValuesCount">const <type>uint64_t</type>* <name>pWaitSemaphoreValues</name></member> <member optional="true"><type>uint32_t</type> <name>signalSemaphoreValuesCount</name></member> @@ -2260,7 +2263,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkPhysicalDeviceGroupPropertiesKHR" alias="VkPhysicalDeviceGroupProperties"/> <type category="struct" name="VkMemoryAllocateFlagsInfo" structextends="VkMemoryAllocateInfo"> <member values="VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>VkMemoryAllocateFlags</type> <name>flags</name></member> <member><type>uint32_t</type> <name>deviceMask</name></member> </type> @@ -2299,7 +2302,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkBindImageMemoryDeviceGroupInfoKHR" alias="VkBindImageMemoryDeviceGroupInfo"/> <type category="struct" name="VkDeviceGroupRenderPassBeginInfo" structextends="VkRenderPassBeginInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>deviceMask</name></member> <member optional="true"><type>uint32_t</type> <name>deviceRenderAreaCount</name></member> <member len="deviceRenderAreaCount">const <type>VkRect2D</type>* <name>pDeviceRenderAreas</name></member> @@ -2307,13 +2310,13 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkDeviceGroupRenderPassBeginInfoKHR" alias="VkDeviceGroupRenderPassBeginInfo"/> <type category="struct" name="VkDeviceGroupCommandBufferBeginInfo" structextends="VkCommandBufferBeginInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>deviceMask</name></member> </type> <type category="struct" name="VkDeviceGroupCommandBufferBeginInfoKHR" alias="VkDeviceGroupCommandBufferBeginInfo"/> <type category="struct" name="VkDeviceGroupSubmitInfo" structextends="VkSubmitInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>waitSemaphoreCount</name></member> <member len="waitSemaphoreCount">const <type>uint32_t</type>* <name>pWaitSemaphoreDeviceIndices</name></member> <member optional="true"><type>uint32_t</type> <name>commandBufferCount</name></member> @@ -2324,7 +2327,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkDeviceGroupSubmitInfoKHR" alias="VkDeviceGroupSubmitInfo"/> <type category="struct" name="VkDeviceGroupBindSparseInfo" structextends="VkBindSparseInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>resourceDeviceIndex</name></member> <member><type>uint32_t</type> <name>memoryDeviceIndex</name></member> </type> @@ -2337,12 +2340,12 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkImageSwapchainCreateInfoKHR" structextends="VkImageCreateInfo"> <member values="VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>VkSwapchainKHR</type> <name>swapchain</name></member> </type> <type category="struct" name="VkBindImageMemorySwapchainInfoKHR" structextends="VkBindImageMemoryInfo"> <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member externsync="true"><type>VkSwapchainKHR</type> <name>swapchain</name></member> <member><type>uint32_t</type> <name>imageIndex</name></member> </type> @@ -2357,21 +2360,21 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkDeviceGroupPresentInfoKHR" structextends="VkPresentInfoKHR"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>swapchainCount</name></member> <member len="swapchainCount">const <type>uint32_t</type>* <name>pDeviceMasks</name></member> <member><type>VkDeviceGroupPresentModeFlagBitsKHR</type> <name>mode</name></member> </type> <type category="struct" name="VkDeviceGroupDeviceCreateInfo" structextends="VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>uint32_t</type> <name>physicalDeviceCount</name></member> <member len="physicalDeviceCount">const <type>VkPhysicalDevice</type>* <name>pPhysicalDevices</name></member> </type> <type category="struct" name="VkDeviceGroupDeviceCreateInfoKHR" alias="VkDeviceGroupDeviceCreateInfo"/> <type category="struct" name="VkDeviceGroupSwapchainCreateInfoKHR" structextends="VkSwapchainCreateInfoKHR"> <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkDeviceGroupPresentModeFlagsKHR</type> <name>modes</name></member> </type> <type category="struct" name="VkDescriptorUpdateTemplateEntry"> @@ -2427,7 +2430,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkPresentTimesInfoGOOGLE" structextends="VkPresentInfoKHR"> <member values="VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>swapchainCount</name><comment>Copy of VkPresentInfoKHR::swapchainCount</comment></member> <member len="swapchainCount" optional="true">const <type>VkPresentTimeGOOGLE</type>* <name>pTimes</name><comment>The earliest times to present images</comment></member> </type> @@ -2453,7 +2456,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. </type> <type category="struct" name="VkPipelineViewportWScalingStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>viewportWScalingEnable</name></member> <member><type>uint32_t</type> <name>viewportCount</name></member> <member noautovalidity="true" len="viewportCount">const <type>VkViewportWScalingNV</type>* <name>pViewportWScalings</name></member> @@ -2603,7 +2606,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkPipelineTessellationDomainOriginStateCreateInfoKHR" alias="VkPipelineTessellationDomainOriginStateCreateInfo"/> <type category="struct" name="VkSamplerYcbcrConversionInfo" structextends="VkSamplerCreateInfo,VkImageViewCreateInfo"> <member values="VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkSamplerYcbcrConversion</type> <name>conversion</name></member> </type> <type category="struct" name="VkSamplerYcbcrConversionInfoKHR" alias="VkSamplerYcbcrConversionInfo"/> @@ -2622,13 +2625,13 @@ private version is maintained in the 1.0 branch of the member gitlab server. <type category="struct" name="VkSamplerYcbcrConversionCreateInfoKHR" alias="VkSamplerYcbcrConversionCreateInfo"/> <type category="struct" name="VkBindImagePlaneMemoryInfo" structextends="VkBindImageMemoryInfo"> <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkImageAspectFlagBits</type> <name>planeAspect</name></member> </type> <type category="struct" name="VkBindImagePlaneMemoryInfoKHR" alias="VkBindImagePlaneMemoryInfo"/> <type category="struct" name="VkImagePlaneMemoryRequirementsInfo" structextends="VkImageMemoryRequirementsInfo2"> <member values="VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>VkImageAspectFlagBits</type> <name>planeAspect</name></member> </type> <type category="struct" name="VkImagePlaneMemoryRequirementsInfoKHR" alias="VkImagePlaneMemoryRequirementsInfo"/> @@ -2904,10 +2907,27 @@ private version is maintained in the 1.0 branch of the member gitlab server. <member><type>VkBool32</type> <name>conservativePointAndLineRasterization</name><comment>true if conservative rasterization also applies to points and lines</comment></member> <member><type>VkBool32</type> <name>degenerateTrianglesRasterized</name><comment>true if degenerate triangles (those with zero area after snap) are rasterized</comment></member> <member><type>VkBool32</type> <name>degenerateLinesRasterized</name><comment>true if degenerate lines (those with zero length after snap) are rasterized</comment></member> - <member><type>VkBool32</type> <name>fullyCoveredFragmentShaderInputVariable</name><comment>true if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input - variable</comment></member> + <member><type>VkBool32</type> <name>fullyCoveredFragmentShaderInputVariable</name><comment>true if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input variable</comment></member> <member><type>VkBool32</type> <name>conservativeRasterizationPostDepthCoverage</name><comment>true if the implementation supports both conservative rasterization and post depth coverage sample coverage mask</comment></member> </type> + <type category="struct" name="VkPhysicalDeviceShaderCorePropertiesAMD" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> + <member><type>uint32_t</type> <name>shaderEngineCount</name><comment>number of shader engines</comment></member> + <member><type>uint32_t</type> <name>shaderArraysPerEngineCount</name><comment>number of shader arrays</comment></member> + <member><type>uint32_t</type> <name>computeUnitsPerShaderArray</name><comment>number of CUs per shader array</comment></member> + <member><type>uint32_t</type> <name>simdPerComputeUnit</name><comment>number of SIMDs per compute unit</comment></member> + <member><type>uint32_t</type> <name>wavefrontsPerSimd</name><comment>number of wavefront slots in each SIMD</comment></member> + <member><type>uint32_t</type> <name>wavefrontSize</name><comment>number of threads per wavefront</comment></member> + <member><type>uint32_t</type> <name>sgprsPerSimd</name><comment>number of physical SGPRs per SIMD</comment></member> + <member><type>uint32_t</type> <name>minSgprAllocation</name><comment>minimum number of SGPRs that can be allocated by a wave</comment></member> + <member><type>uint32_t</type> <name>maxSgprAllocation</name><comment>number of available SGPRs</comment></member> + <member><type>uint32_t</type> <name>sgprAllocationGranularity</name><comment>SGPRs are allocated in groups of this size</comment></member> + <member><type>uint32_t</type> <name>vgprsPerSimd</name><comment>number of physical VGPRs per SIMD</comment></member> + <member><type>uint32_t</type> <name>minVgprAllocation</name><comment>minimum number of VGPRs that can be allocated by a wave</comment></member> + <member><type>uint32_t</type> <name>maxVgprAllocation</name><comment>number of available VGPRs</comment></member> + <member><type>uint32_t</type> <name>vgprAllocationGranularity</name><comment>VGPRs are allocated in groups of this size</comment></member> + </type> <type category="struct" name="VkPipelineRasterizationConservativeStateCreateInfoEXT" structextends="VkPipelineRasterizationStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member>const <type>void</type>* <name>pNext</name></member> <!-- Pointer to next structure --> @@ -2915,13 +2935,81 @@ private version is maintained in the 1.0 branch of the member gitlab server. <member><type>VkConservativeRasterizationModeEXT</type> <name>conservativeRasterizationMode</name></member> <!-- Conservative rasterization mode --> <member><type>float</type> <name>extraPrimitiveOverestimationSize</name></member> <!-- Extra overestimation to add to the primitive --> </type> + <type category="struct" name="VkPhysicalDeviceDescriptorIndexingFeaturesEXT" structextends="VkPhysicalDeviceFeatures2KHR,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>shaderInputAttachmentArrayDynamicIndexing</name></member> + <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayDynamicIndexing</name></member> + <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayDynamicIndexing</name></member> + <member><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayNonUniformIndexing</name></member> + <member><type>VkBool32</type> <name>descriptorBindingUniformBufferUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingSampledImageUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingStorageImageUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingStorageBufferUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingUniformTexelBufferUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingStorageTexelBufferUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>descriptorBindingUpdateUnusedWhilePending</name></member> + <member><type>VkBool32</type> <name>descriptorBindingPartiallyBound</name></member> + <member><type>VkBool32</type> <name>descriptorBindingVariableDescriptorCount</name></member> + <member><type>VkBool32</type> <name>runtimeDescriptorArray</name></member> + </type> + <type category="struct" name="VkPhysicalDeviceDescriptorIndexingPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2KHR"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member noautovalidity="true"><type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxUpdateAfterBindDescriptorsInAllPools</name></member> + <member><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexingNative</name></member> + <member><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexingNative</name></member> + <member><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexingNative</name></member> + <member><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexingNative</name></member> + <member><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexingNative</name></member> + <member><type>VkBool32</type> <name>robustBufferAccessUpdateAfterBind</name></member> + <member><type>VkBool32</type> <name>quadDivergentImplicitLod</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSamplers</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindUniformBuffers</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageBuffers</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSampledImages</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageImages</name></member> + <member><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindInputAttachments</name></member> + <member><type>uint32_t</type> <name>maxPerStageUpdateAfterBindResources</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSamplers</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffers</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffersDynamic</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffers</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffersDynamic</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSampledImages</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageImages</name></member> + <member><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindInputAttachments</name></member> + </type> + <type category="struct" name="VkDescriptorSetLayoutBindingFlagsCreateInfoEXT" structextends="VkDescriptorSetLayoutCreateInfo"> + <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>uint32_t</type> <name>bindingCount</name></member> + <member len="bindingCount">const <type>VkDescriptorBindingFlagsEXT</type>* <name>pBindingFlags</name></member> + </type> + <type category="struct" name="VkDescriptorSetVariableDescriptorCountAllocateInfoEXT" structextends="VkDescriptorSetAllocateInfo"> + <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> + <member optional="true"><type>uint32_t</type> <name>descriptorSetCount</name></member> + <member len="descriptorSetCount">const <type>uint32_t</type>* <name>pDescriptorCounts</name></member> + </type> + <type category="struct" name="VkDescriptorSetVariableDescriptorCountLayoutSupportEXT" structextends="VkDescriptorSetLayoutSupport" returnedonly="true"> + <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT"><type>VkStructureType</type> <name>sType</name></member> + <member><type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>maxVariableDescriptorCount</name></member> + </type> <type category="struct" name="VkVertexInputBindingDivisorDescriptionEXT"> <member><type>uint32_t</type> <name>binding</name></member> <member><type>uint32_t</type> <name>divisor</name></member> </type> <type category="struct" name="VkPipelineVertexInputDivisorStateCreateInfoEXT" structextends="VkPipelineVertexInputStateCreateInfo"> <member values="VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> - <member noautovalidity="true">const <type>void</type>* <name>pNext</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>vertexBindingDivisorCount</name></member> <member len="vertexBindingDivisorCount">const <type>VkVertexInputBindingDivisorDescriptionEXT</type>* <name>pVertexBindingDivisors</name></member> </type> @@ -4035,6 +4123,12 @@ private version is maintained in the 1.0 branch of the member gitlab server. <enum value="1" name="VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT"/> <enum value="2" name="VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT"/> </enums> + <enums name="VkDescriptorBindingFlagBitsEXT" type="bitmask"> + <enum bitpos="0" name="VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT"/> + <enum bitpos="1" name="VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT"/> + <enum bitpos="2" name="VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT"/> + <enum bitpos="3" name="VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT"/> + </enums> <commands comment="Vulkan command definitions"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_LAYER_NOT_PRESENT,VK_ERROR_EXTENSION_NOT_PRESENT,VK_ERROR_INCOMPATIBLE_DRIVER"> @@ -4521,7 +4615,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <param optional="true" externsync="true"><type>VkDescriptorSetLayout</type> <name>descriptorSetLayout</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> </command> - <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY"> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_FRAGMENTATION_EXT"> <proto><type>VkResult</type> <name>vkCreateDescriptorPool</name></proto> <param><type>VkDevice</type> <name>device</name></param> <param>const <type>VkDescriptorPoolCreateInfo</type>* <name>pCreateInfo</name></param> @@ -7877,7 +7971,7 @@ private version is maintained in the 1.0 branch of the member gitlab server. <command name="vkSubmitDebugUtilsMessageEXT"/> </require> </extension> - <extension name="VK_ANDROID_external_memory_android_hardware_buffer" number="130" type="device" author="ANDROID" requires="VK_KHR_sampler_ycbcr_conversion,VK_KHR_external_memory" platform="android" contact="Jesse Hall @jessehall" supported="vulkan"> + <extension name="VK_ANDROID_external_memory_android_hardware_buffer" number="130" type="device" author="ANDROID" requires="VK_KHR_sampler_ycbcr_conversion,VK_KHR_external_memory,VK_EXT_queue_family_foreign" platform="android" contact="Jesse Hall @jessehall" supported="vulkan"> <require> <enum value="3" name="VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION"/> <enum value=""VK_ANDROID_external_memory_android_hardware_buffer"" name="VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME"/> @@ -8277,10 +8371,23 @@ private version is maintained in the 1.0 branch of the member gitlab server. <command name="vkGetValidationCacheDataEXT"/> </require> </extension> - <extension name="VK_EXT_extension_162" number="162" author="NV" contact="Jeff Bolz @jbolz" supported="disabled"> + <extension name="VK_EXT_descriptor_indexing" number="162" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_maintenance3" author="NV" contact="Jeff Bolz @jbolz" supported="vulkan"> <require> - <enum value="0" name="VK_EXT_EXTENSION_162_SPEC_VERSION"/> - <enum value=""VK_EXT_extension_162"" name="VK_EXT_EXTENSION_162_EXTENSION_NAME"/> + <enum value="2" name="VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION"/> + <enum value=""VK_EXT_descriptor_indexing"" name="VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT"/> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT"/> + <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT"/> + <enum bitpos="1" extends="VkDescriptorPoolCreateFlagBits" name="VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT"/> + <enum bitpos="1" extends="VkDescriptorSetLayoutCreateFlagBits" name="VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT"/> + <enum offset="0" dir="-" extends="VkResult" name="VK_ERROR_FRAGMENTATION_EXT"/> + <type name="VkDescriptorSetLayoutBindingFlagsCreateInfoEXT"/> + <type name="VkPhysicalDeviceDescriptorIndexingFeaturesEXT"/> + <type name="VkPhysicalDeviceDescriptorIndexingPropertiesEXT"/> + <type name="VkDescriptorSetVariableDescriptorCountAllocateInfoEXT"/> + <type name="VkDescriptorSetVariableDescriptorCountLayoutSupportEXT"/> </require> </extension> <extension name="VK_EXT_shader_viewport_index_layer" number="163" type="device" author="NV" contact="Daniel Koch @dgkoch" supported="vulkan"> @@ -8442,10 +8549,12 @@ private version is maintained in the 1.0 branch of the member gitlab server. <enum value=""VK_AMD_extension_185"" name="VK_KHR_EXTENSION_185_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_AMD_extension_186" number="186" author="AMD" contact="Daniel Rakos @aqnuep" supported="disabled"> + <extension name="VK_AMD_shader_core_properties" number="186" type="device" author="AMD" requires="VK_KHR_get_physical_device_properties2" contact="Martin Dinkov @mdinkov" supported="vulkan"> <require> - <enum value="0" name="VK_KHR_EXTENSION_186_SPEC_VERSION"/> - <enum value=""VK_AMD_extension_186"" name="VK_KHR_EXTENSION_186_EXTENSION_NAME"/> + <enum value="1" name="VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION"/> + <enum value=""VK_AMD_shader_core_properties"" name="VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"/> + <type name="VkPhysicalDeviceShaderCorePropertiesAMD"/> </require> </extension> <extension name="VK_AMD_extension_187" number="187" author="AMD" contact="Daniel Rakos @aqnuep" supported="disabled"> @@ -8525,5 +8634,18 @@ private version is maintained in the 1.0 branch of the member gitlab server. <enum value=""VK_EXT_extension_198"" name="VK_ARM_EXTENSION_198_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_NV_shader_subgroup_partitioned" number="199" type="device" author="NV" contact="Jeff Bolz @jbolz" supported="vulkan"> + <require> + <enum value="1" name="VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION"/> + <enum value=""VK_NV_shader_subgroup_partitioned"" name="VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME"/> + <enum bitpos="8" extends="VkSubgroupFeatureFlagBits" name="VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV"/> + </require> + </extension> + <extension name="VK_KHR_extension_200" number="200" author="KHR" contact="Jan-Harald Fredriksen @janharald" supported="disabled"> + <require> + <enum value="0" name="VK_KHR_EXTENSION_200_SPEC_VERSION"/> + <enum value=""VK_KHR_extension_200"" name="VK_KHR_EXTENSION_200_EXTENSION_NAME"/> + </require> + </extension> </extensions> </registry> diff --git a/scripts/vuid_mapping.py b/scripts/vuid_mapping.py index 47673964..849ddb47 100644 --- a/scripts/vuid_mapping.py +++ b/scripts/vuid_mapping.py @@ -618,6 +618,13 @@ func_struct_id_map = { 'vkQueueInsertDebugUtilsLabelEXT' : 562, 'vkSetDebugUtilsObjectNameEXT' : 563, 'vkSetDebugUtilsObjectTagEXT' : 564, +'VkDescriptorSetLayoutBindingFlagsCreateInfoEXT' : 565, +'VkDescriptorSetVariableDescriptorCountAllocateInfoEXT' : 566, +'VkDescriptorSetVariableDescriptorCountLayoutSupportEXT' : 567, +'VkPhysicalDeviceDescriptorIndexingFeaturesEXT' : 568, +'VkPhysicalDeviceDescriptorIndexingPropertiesEXT' : 569, +'VkPhysicalDeviceShaderCorePropertiesAMD' : 570, +'VkVertexInputBindingDivisorDescriptionEXT' : 571, ### ADD New func/struct mappings above this line } # Mapping of params to unique IDs @@ -1155,6 +1162,8 @@ implicit_param_map = { 'pLabelInfo' : 530, 'messenger' : 531, 'pCallbackData' : 532, +'pBindingFlags' : 533, +'pDescriptorCounts' : 534, ### ADD New implicit param mappings above this line } |
