VkPipelineLayoutCreateInfo
The VkPipelineLayoutCreateInfo structure is defined as:
typedef struct VkPipelineLayoutCreateInfo {
VkStructureType sType;
const void* pNext;
VkPipelineLayoutCreateFlags flags;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
} VkPipelineLayoutCreateInfo;
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.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.Push constants represent a high speed path to modify constant data in pipelines that is expected to outperform memory-backed resource updates.
Valid Usage
VUID-VkPipelineLayoutCreateInfo-setLayoutCount-00286
setLayoutCount must be less than or equal to
VkPhysicalDeviceLimits::maxBoundDescriptorSets
VUID-VkPipelineLayoutCreateInfo-descriptorType-03016
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03017
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03018
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-06939
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
with a descriptorType of
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE,
VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM,
VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM,
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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03020
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03021
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-02214
The total number of bindings in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
and
with a descriptorType of
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK accessible to any given
shader stage across all elements of pSetLayouts, must be less
than or equal to
VkPhysicalDeviceInlineUniformBlockProperties::maxPerStageDescriptorInlineUniformBlocks
VUID-VkPipelineLayoutCreateInfo-descriptorType-03022
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSamplers
VUID-VkPipelineLayoutCreateInfo-descriptorType-03023
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindUniformBuffers
VUID-VkPipelineLayoutCreateInfo-descriptorType-03024
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageBuffers
VUID-VkPipelineLayoutCreateInfo-descriptorType-03025
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindSampledImages
VUID-VkPipelineLayoutCreateInfo-descriptorType-03026
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindStorageImages
VUID-VkPipelineLayoutCreateInfo-descriptorType-03027
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
VkPhysicalDeviceDescriptorIndexingProperties::maxPerStageDescriptorUpdateAfterBindInputAttachments
VUID-VkPipelineLayoutCreateInfo-descriptorType-02215
The total number of bindings with a descriptorType of
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK accessible to any given
shader stage across all elements of pSetLayouts must be less than
or equal to
VkPhysicalDeviceInlineUniformBlockProperties::maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks
VUID-VkPipelineLayoutCreateInfo-descriptorType-03028
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03029
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
with a descriptorType of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER
accessible across all shader stages and across all elements of
pSetLayouts must be less than or equal to
VkPhysicalDeviceLimits::maxDescriptorSetUniformBuffers
VUID-VkPipelineLayoutCreateInfo-descriptorType-03030
If the maintenance7 feature is not
enabled, the
total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-maintenance7-10003
If the maintenance7 feature is enabled,
the total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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 VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalUniformBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-descriptorType-03031
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03032
If the maintenance7 feature is not
enabled, the
total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-maintenance7-10004
If the maintenance7 feature is enabled,
the total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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 VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalStorageBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-None-10005
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
with a descriptorType of
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all
shader stages and across all elements of pSetLayouts must be less
than or equal to VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetTotalBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-10006
The total number of descriptors of the type
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC or
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC accessible across all
shader stages and across all elements of pSetLayouts must be less
than or equal to
VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-descriptorType-03033
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03034
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-03035
The total number of descriptors in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT 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
VUID-VkPipelineLayoutCreateInfo-descriptorType-02216
The total number of bindings in descriptor set layouts
created without the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set
with a descriptorType of
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK accessible across all
shader stages and across all elements of pSetLayouts must be less
than or equal to
VkPhysicalDeviceInlineUniformBlockProperties::maxDescriptorSetInlineUniformBlocks
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03036
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
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSamplers
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03037
The total number of descriptors of the type
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER accessible across all shader
stages and across all elements of pSetLayouts must be less than
or equal to
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindUniformBuffers
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03038
If the maintenance7 feature is not
enabled, 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::maxDescriptorSetUpdateAfterBindUniformBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-maintenance7-10007
If the maintenance7 feature is enabled,
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
VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03039
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
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageBuffers
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03040
If the maintenance7 feature is not
enabled, 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::maxDescriptorSetUpdateAfterBindStorageBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-maintenance7-10008
If the maintenance7 feature is enabled,
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
VkPhysicalDeviceMaintenance7PropertiesKHR::maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03041
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
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindSampledImages
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03042
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
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindStorageImages
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-03043
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
VkPhysicalDeviceDescriptorIndexingProperties::maxDescriptorSetUpdateAfterBindInputAttachments
VUID-VkPipelineLayoutCreateInfo-descriptorType-02217
The total number of bindings with a descriptorType of
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK accessible across all
shader stages and across all elements of pSetLayouts must be less
than or equal to
VkPhysicalDeviceInlineUniformBlockProperties::maxDescriptorSetUpdateAfterBindInlineUniformBlocks
VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-00292
Any two elements of pPushConstantRanges must not include the same
stage in stageFlags
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-00293
pSetLayouts must not contain more than one descriptor set layout
that was created with
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT set
VUID-VkPipelineLayoutCreateInfo-descriptorType-03571
The total number of bindings in descriptor set layouts created without
the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
set with a descriptorType of
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR accessible to any
given shader stage across all elements of pSetLayouts must be
less than or equal to
VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxPerStageDescriptorAccelerationStructures
VUID-VkPipelineLayoutCreateInfo-descriptorType-03572
The total number of bindings with a descriptorType of
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR accessible to any
given shader stage across all elements of pSetLayouts must be
less than or equal to
VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxPerStageDescriptorUpdateAfterBindAccelerationStructures
VUID-VkPipelineLayoutCreateInfo-descriptorType-03573
The total number of bindings in descriptor set layouts created without
the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit
set with a descriptorType of
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR accessible across
all shader stages and across all elements of pSetLayouts must be
less than or equal to
VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxDescriptorSetAccelerationStructures
VUID-VkPipelineLayoutCreateInfo-descriptorType-03574
The total number of bindings with a descriptorType of
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR accessible across
all shader stages and across all elements of pSetLayouts must be
less than or equal to
VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxDescriptorSetUpdateAfterBindAccelerationStructures
VUID-VkPipelineLayoutCreateInfo-descriptorType-02381
The total number of bindings with a descriptorType of
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV accessible across all
shader stages and across all elements of pSetLayouts must be less
than or equal to
VkPhysicalDeviceRayTracingPropertiesNV::maxDescriptorSetAccelerationStructures
VUID-VkPipelineLayoutCreateInfo-pImmutableSamplers-03566
The total number of pImmutableSamplers created with flags
containing VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT or
VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT across
all shader stages and across all elements of pSetLayouts must be
less than or equal to VkPhysicalDeviceFragmentDensityMap2PropertiesEXT::maxDescriptorSetSubsampledSamplers
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-04606
Any element of pSetLayouts must not have been created with the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT bit set
VUID-VkPipelineLayoutCreateInfo-graphicsPipelineLibrary-06753
If the graphicsPipelineLibrary feature is not enabled, elements
of pSetLayouts must be valid VkDescriptorSetLayout objects
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-08008
If any element of pSetLayouts was created with the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT bit set,
all elements of pSetLayouts must have been created with the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT bit set
Valid Usage (Implicit)
VUID-VkPipelineLayoutCreateInfo-sType-sType
sType must be VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO
VUID-VkPipelineLayoutCreateInfo-flags-parameter
flags must be a valid combination of VkPipelineLayoutCreateFlagBits values
VUID-VkPipelineLayoutCreateInfo-pSetLayouts-parameter
If setLayoutCount is not 0, pSetLayouts must be a valid pointer to an array of setLayoutCount valid or VK_NULL_HANDLE VkDescriptorSetLayout handles
VUID-VkPipelineLayoutCreateInfo-pPushConstantRanges-parameter
If pushConstantRangeCount is not 0, pPushConstantRanges must be a valid pointer to an array of pushConstantRangeCount valid VkPushConstantRange structures