C Specification
The VkPipelineLayoutCreateInfo structure is defined as:
// Provided by VK_VERSION_1_0
typedef struct VkPipelineLayoutCreateInfo {
VkStructureType sType;
const void* pNext;
VkPipelineLayoutCreateFlags flags;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
} VkPipelineLayoutCreateInfo;
Members
-
sTypeis a VkStructureType value identifying this structure. -
pNextisNULLor a pointer to a structure extending this structure. -
flagsis a bitmask of VkPipelineLayoutCreateFlagBits specifying options for pipeline layout creation. -
setLayoutCountis the number of descriptor sets included in the pipeline layout. -
pSetLayoutsis a pointer to an array ofVkDescriptorSetLayoutobjects. The implementation must not access these objects outside of the duration of the command this structure is passed to. -
pushConstantRangeCountis the number of push constant ranges included in the pipeline layout. -
pPushConstantRangesis a pointer to an array of VkPushConstantRange structures defining a set of push constant ranges for use in a single pipeline layout. In addition to descriptor set layouts, a pipeline layout also describes how many push constants can be accessed by each stage of the pipeline.NotePush constants represent a high speed path to modify constant data in pipelines that is expected to outperform memory-backed resource updates.
Description
-
VUID-VkPipelineLayoutCreateInfo-setLayoutCount-00286
setLayoutCountmust be less than or equal toVkPhysicalDeviceLimits::maxBoundDescriptorSets -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03016
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_SAMPLERandVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLERaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorSamplers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03017
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFERandVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorUniformBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03018
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_BUFFERandVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorStorageBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-06939
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE,VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM,VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM, andVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, accessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorSampledImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03020
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_IMAGE, andVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFERaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorStorageImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03021
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENTaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments -
VUID-VkPipelineLayoutCreateInfo-descriptorType-02214
The total number of bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set and with adescriptorTypeofVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCKaccessible to any given shader stage across all elements ofpSetLayouts, must be less than or equal toVkPhysicalDeviceInlineUniformBlockProperties::maxPerStageDescriptorInlineUniformBlocks -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03022
If thedescriptorBindingSampledImageUpdateAfterBindfeature is supported on the device, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_SAMPLERandVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLERaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSamplers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03023
If thedescriptorBindingUniformBufferUpdateAfterBindfeature is supported on the device, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFERandVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindUniformBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03024
If thedescriptorBindingStorageBufferUpdateAfterBindfeature is supported on the device, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_BUFFERandVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03025
If thedescriptorBindingSampledImageUpdateAfterBindfeature is supported on the device, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, andVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFERaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSampledImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03026
If thedescriptorBindingStorageImageUpdateAfterBindfeature is supported on the device, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_IMAGE, andVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFERaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03027
If any element ofpSetLayoutsis created with theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set, the total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENTaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindInputAttachments -
VUID-VkPipelineLayoutCreateInfo-descriptorType-02215
If thedescriptorBindingInlineUniformBlockUpdateAfterBindfeature is supported on the device, the total number of bindings with adescriptorTypeofVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCKaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceInlineUniformBlockProperties::maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03028
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_SAMPLERandVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetSamplers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03029
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03030
If themaintenance7feature is not enabled, the total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetUniformBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-maintenance7-10003
If themaintenance7feature is enabled, the total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalUniformBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03031
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetStorageBuffers -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03032
If themaintenance7feature is not enabled, the total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetStorageBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-maintenance7-10004
If themaintenance7feature is enabled, the total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalStorageBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-None-10005
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICorVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-10006
If either thedescriptorBindingStorageBufferUpdateAfterBindordescriptorBindingUniformBufferUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICorVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03033
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, andVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetSampledImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03034
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_STORAGE_IMAGE, andVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetStorageImages -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03035
The total number of descriptors in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENTaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetInputAttachments -
VUID-VkPipelineLayoutCreateInfo-descriptorType-02216
The total number of bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCKaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceInlineUniformBlockProperties::maxDescriptorSetInlineUniformBlocks -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036
If thedescriptorBindingSampledImageUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_SAMPLERandVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSamplers -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037
If thedescriptorBindingUniformBufferUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_UNIFORM_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindUniformBuffers -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038
If thedescriptorBindingUniformBufferUpdateAfterBindfeature is supported on the device, and if themaintenance7feature is not enabled, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetUpdateAfterBindUniformBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-maintenance7-10007
If thedescriptorBindingUniformBufferUpdateAfterBindfeature is supported on the device, and themaintenance7feature is enabled, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039
If thedescriptorBindingStorageBufferUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_STORAGE_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageBuffers -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040
If thedescriptorBindingStorageBufferUpdateAfterBindfeature is supported on the device, and if themaintenance7feature is not enabled, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceLimits::maxDescriptorSetUpdateAfterBindStorageBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-maintenance7-10008
If thedescriptorBindingStorageBufferUpdateAfterBindfeature is supported on the device, and if themaintenance7feature is enabled, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041
If thedescriptorBindingSampledImageUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, andVK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSampledImages -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042
If thedescriptorBindingStorageImageUpdateAfterBindfeature is supported on the device, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_STORAGE_IMAGE, andVK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFERaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageImages -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043
If any element ofpSetLayoutsis created with theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set, the total number of descriptors of the typeVK_DESCRIPTOR_TYPE_INPUT_ATTACHMENTaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindInputAttachments -
VUID-VkPipelineLayoutCreateInfo-descriptorType-02217
If thedescriptorBindingInlineUniformBlockUpdateAfterBindfeature is supported on the device, the total number of bindings with adescriptorTypeofVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCKaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceInlineUniformBlockProperties::maxDescriptorSetUpdateAfterBindInlineUniformBlocks -
VUID-VkPipelineLayoutCreateInfo-descriptorType-06531
The total number of descriptors with adescriptorTypeofVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCKaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceVulkan13Properties::maxInlineUniformTotalSize -
VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292
Any two elements ofpPushConstantRangesmust not include the same stage instageFlags -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00293
pSetLayoutsmust not contain more than one descriptor set layout that was created withVK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BITset -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03571
The total number of bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal to VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxPerStageDescriptorAccelerationStructures -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03572
The total number of bindings with adescriptorTypeofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRaccessible to any given shader stage across all elements ofpSetLayoutsmust be less than or equal to VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxPerStageDescriptorUpdateAfterBindAccelerationStructures -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03573
The total number of bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set with adescriptorTypeofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal to VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxDescriptorSetAccelerationStructures -
VUID-VkPipelineLayoutCreateInfo-descriptorType-03574
The total number of bindings with adescriptorTypeofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal to VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxDescriptorSetUpdateAfterBindAccelerationStructures -
VUID-VkPipelineLayoutCreateInfo-descriptorType-02381
The total number of bindings with adescriptorTypeofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NVaccessible across all shader stages and across all elements ofpSetLayoutsmust be less than or equal to VkPhysicalDeviceRayTracingPropertiesNV::maxDescriptorSetAccelerationStructures -
VUID-VkPipelineLayoutCreateInfo-pImmutableSamplers-03566
The total number ofpImmutableSamplerscreated withflagscontainingVK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXTorVK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXTacross all shader stages and across all elements ofpSetLayoutsmust be less than or equal toVkPhysicalDeviceFragmentDensityMap2PropertiesEXT::maxDescriptorSetSubsampledSamplers -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-04606
Any element ofpSetLayoutsmust not have been created with theVK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXTbit set -
VUID-VkPipelineLayoutCreateInfo-graphicsPipelineLibrary-06753
If thegraphicsPipelineLibraryfeature is not enabled, elements ofpSetLayoutsmust be valid VkDescriptorSetLayout objects -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-08008
If any element ofpSetLayoutswas created with theVK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXTbit set, all elements ofpSetLayoutsmust have been created with theVK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXTbit set
-
VUID-VkPipelineLayoutCreateInfo-sType-sType
sTypemust beVK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO -
VUID-VkPipelineLayoutCreateInfo-flags-parameter
flagsmust be a valid combination of VkPipelineLayoutCreateFlagBits values -
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-parameter
IfsetLayoutCountis not0,pSetLayoutsmust be a valid pointer to an array ofsetLayoutCountvalid or VK_NULL_HANDLE VkDescriptorSetLayout handles -
VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter
IfpushConstantRangeCountis not0,pPushConstantRangesmust be a valid pointer to an array ofpushConstantRangeCountvalid VkPushConstantRange structures
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.