C Specification
The VkGraphicsPipelineCreateInfo structure is defined as:
// Provided by VK_VERSION_1_0
typedef struct VkGraphicsPipelineCreateInfo {
    VkStructureType                                  sType;
    const void*                                      pNext;
    VkPipelineCreateFlags                            flags;
    uint32_t                                         stageCount;
    const VkPipelineShaderStageCreateInfo*           pStages;
    const VkPipelineVertexInputStateCreateInfo*      pVertexInputState;
    const VkPipelineInputAssemblyStateCreateInfo*    pInputAssemblyState;
    const VkPipelineTessellationStateCreateInfo*     pTessellationState;
    const VkPipelineViewportStateCreateInfo*         pViewportState;
    const VkPipelineRasterizationStateCreateInfo*    pRasterizationState;
    const VkPipelineMultisampleStateCreateInfo*      pMultisampleState;
    const VkPipelineDepthStencilStateCreateInfo*     pDepthStencilState;
    const VkPipelineColorBlendStateCreateInfo*       pColorBlendState;
    const VkPipelineDynamicStateCreateInfo*          pDynamicState;
    VkPipelineLayout                                 layout;
    VkRenderPass                                     renderPass;
    uint32_t                                         subpass;
    VkPipeline                                       basePipelineHandle;
    int32_t                                          basePipelineIndex;
} VkGraphicsPipelineCreateInfo;Members
- 
sTypeis a VkStructureType value identifying this structure.
- 
pNextisNULLor a pointer to a structure extending this structure.
- 
flagsis a bitmask of VkPipelineCreateFlagBits specifying how the pipeline will be generated.
- 
stageCountis the number of entries in thepStagesarray.
- 
pStagesis a pointer to an array ofstageCountVkPipelineShaderStageCreateInfo structures describing the set of the shader stages to be included in the graphics pipeline.
- 
pVertexInputStateis a pointer to a VkPipelineVertexInputStateCreateInfo structure. It is ignored if the pipeline includes a mesh shader stage. It can beNULLif the pipeline is created with theVK_DYNAMIC_STATE_VERTEX_INPUT_EXTdynamic state set.
- 
pInputAssemblyStateis a pointer to a VkPipelineInputAssemblyStateCreateInfo structure which determines input assembly behavior for vertex shading, as described in Drawing Commands. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with bothVK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE, andVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGYdynamic states set anddynamicPrimitiveTopologyUnrestrictedisVK_TRUE. It is ignored if the pipeline includes a mesh shader stage.
- 
pTessellationStateis a pointer to a VkPipelineTessellationStateCreateInfo structure defining tessellation state used by tessellation shaders. It can beNULLif the pipeline is created with theVK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXTdynamic state set.
- 
pViewportStateis a pointer to a VkPipelineViewportStateCreateInfo structure defining viewport state used when rasterization is enabled. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with bothVK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT, andVK_DYNAMIC_STATE_SCISSOR_WITH_COUNTdynamic states set.
- 
pRasterizationStateis a pointer to a VkPipelineRasterizationStateCreateInfo structure defining rasterization state. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with all ofVK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT,VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE,VK_DYNAMIC_STATE_POLYGON_MODE_EXT,VK_DYNAMIC_STATE_CULL_MODE,VK_DYNAMIC_STATE_FRONT_FACE,VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,VK_DYNAMIC_STATE_DEPTH_BIAS, andVK_DYNAMIC_STATE_LINE_WIDTHdynamic states set.
- 
pMultisampleStateis a pointer to a VkPipelineMultisampleStateCreateInfo structure defining multisample state used when rasterization is enabled. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with all ofVK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT,VK_DYNAMIC_STATE_SAMPLE_MASK_EXT, andVK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXTdynamic states set, and either the alphaToOne feature is not enabled orVK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXTis set, in which case VkPipelineMultisampleStateCreateInfo::sampleShadingEnableis assumed to beVK_FALSE.
- 
pDepthStencilStateis a pointer to a VkPipelineDepthStencilStateCreateInfo structure defining depth/stencil state used when rasterization is enabled for depth or stencil attachments accessed during rendering. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with all ofVK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_OP, andVK_DYNAMIC_STATE_DEPTH_BOUNDSdynamic states set.
- 
pColorBlendStateis a pointer to a VkPipelineColorBlendStateCreateInfo structure defining color blend state used when rasterization is enabled for any color attachments accessed during rendering. If theVK_EXT_extended_dynamic_state3extension is enabled, it can beNULLif the pipeline is created with all ofVK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT,VK_DYNAMIC_STATE_LOGIC_OP_EXT,VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT,VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT,VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT, andVK_DYNAMIC_STATE_BLEND_CONSTANTSdynamic states set.
- 
pDynamicStateis a pointer to a VkPipelineDynamicStateCreateInfo structure defining which properties of the pipeline state object are dynamic and can be changed independently of the pipeline state. This can beNULL, which means no state in the pipeline is considered dynamic.
- 
layoutis the description of binding locations used by both the pipeline and descriptor sets used with the pipeline. If VkPhysicalDeviceProperties::apiVersionis greater than or equal to Vulkan 1.3 or VK_KHR_maintenance4 is enabledlayoutmust not be accessed outside of the duration of the command this structure is passed to.
- 
renderPassis a handle to a render pass object describing the environment in which the pipeline will be used. The pipeline must only be used with a render pass instance compatible with the one provided. See Render Pass Compatibility for more information. The implementation must not access this object outside of the duration of the command this structure is passed to.
- 
subpassis the index of the subpass in the render pass where this pipeline will be used.
- 
basePipelineHandleis a pipeline to derive from.
- 
basePipelineIndexis an index into thepCreateInfosparameter to use as a pipeline to derive from.
Description
The parameters basePipelineHandle and basePipelineIndex are
described in more detail in Pipeline
Derivatives.
If any shader stage fails to compile,
the compile log will be reported back to the application, and
VK_ERROR_INVALID_SHADER_NV will be generated.
| Note | With  | 
The state required for a graphics pipeline is divided into vertex input state, pre-rasterization shader state, fragment shader state, and fragment output state.
Vertex input state is defined by:
If
this pipeline specifies
pre-rasterization state
either directly or by including it as a pipeline library and its
pStages includes a vertex shader, this state must be specified to
create a complete graphics pipeline.
If a pipeline includes
VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT in
VkGraphicsPipelineLibraryCreateInfoEXT::flags either explicitly
or as a default, and either the conditions requiring this state for a
complete graphics pipeline are met
or this pipeline does not specify
pre-rasterization state in
any way, that pipeline must specify this state directly.
Pre-rasterization shader state is defined by:
- 
VkPipelineShaderStageCreateInfo entries for: - 
Vertex shaders 
- 
Tessellation control shaders 
- 
Tessellation evaluation shaders 
- 
Geometry shaders 
- 
Task shaders 
- 
Mesh shaders 
 
- 
- 
Within the VkPipelineLayout, all descriptor sets with pre-rasterization shader bindings if VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXTwas specified.- 
If VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXTwas not specified, the full pipeline layout must be specified.
 
- 
- 
VkRenderPass and subpassparameter
- 
The viewMaskparameter of VkPipelineRenderingCreateInfo (formats are ignored)
- 
Inclusion/omission of the VK_PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVEflag
This state must be specified to create a complete graphics pipeline.
If either the pNext chain includes a
VkGraphicsPipelineLibraryCreateInfoEXT structure with
VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT
included in flags, or it is not specified and would default to include
that value, this state must be specified in the pipeline.
Fragment shader state is defined by:
- 
A VkPipelineShaderStageCreateInfo entry for the fragment shader 
- 
Within the VkPipelineLayout, all descriptor sets with fragment shader bindings if VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXTwas specified.- 
If VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXTwas not specified, the full pipeline layout must be specified.
 
- 
- 
VkPipelineMultisampleStateCreateInfo if sample shading is enabled or renderpassis not VK_NULL_HANDLE
- 
VkRenderPass and subpassparameter
- 
The viewMaskparameter of VkPipelineRenderingCreateInfo (formats are ignored)
- 
Inclusion/omission of the VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRflag
- 
Inclusion/omission of the VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTflag
- 
Inclusion/omission of the VK_PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVEflag
If
a pipeline specifies
pre-rasterization state
either directly or by including it as a pipeline library and
rasterizerDiscardEnable is VK_FALSE
or VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE is used,
this state must be specified to create a
complete graphics pipeline.
If a pipeline includes
VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT in
VkGraphicsPipelineLibraryCreateInfoEXT::flags either explicitly
or as a default, and either the conditions requiring this state for a
complete graphics pipeline are met
or this pipeline does not specify
pre-rasterization state in
any way, that pipeline must specify this state directly.
Fragment output state is defined by:
- 
VkRenderPass and subpassparameter
- 
Inclusion/omission of the VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTandVK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTflags
- 
Inclusion/omission of the VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTflag
If
a pipeline specifies
pre-rasterization state
either directly or by including it as a pipeline library and
rasterizerDiscardEnable is VK_FALSE
or VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE is used,
this state must be specified to create a
complete graphics pipeline.
If a pipeline includes
VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT in
VkGraphicsPipelineLibraryCreateInfoEXT::flags either explicitly
or as a default, and either the conditions requiring this state for a
complete graphics pipeline are met
or this pipeline does not specify
pre-rasterization state in
any way, that pipeline must specify this state directly.
Dynamic state values set via pDynamicState must be ignored if the
state they correspond to is not otherwise statically set by one of the state
subsets used to create the pipeline.
Additionally, setting dynamic state values must not modify whether state in
a linked library is static or dynamic; this is set and unchangeable when the
library is created.
For example, if a pipeline only included
pre-rasterization shader
state, then any dynamic state value corresponding to depth or stencil
testing has no effect.
Any linked library that has dynamic state enabled that same dynamic state
must also be enabled in all the other linked libraries to which that
dynamic state applies.
A complete graphics pipeline always includes pre-rasterization shader state, with other subsets included depending on that state as specified in the above sections.
If different subsets are linked together with pipeline layouts created with
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, the final
effective pipeline layout is effectively the union of the linked pipeline
layouts.
When binding descriptor sets for this pipeline, the pipeline layout used
must be compatible with this union.
This pipeline layout can be overridden when linking with
VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT by providing a
VkPipelineLayout that is compatible
with this union other than
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, or when linking
without VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT by providing
a VkPipelineLayout that is fully
compatible with this union.
If the pNext chain includes a VkPipelineCreateFlags2CreateInfo
structure, VkPipelineCreateFlags2CreateInfo::flags from that
structure is used instead of flags from this structure.
- 
VUID-VkGraphicsPipelineCreateInfo-None-09497 
 If thepNextchain does not include a VkPipelineCreateFlags2CreateInfo structure,flagsmust be a valid combination of VkPipelineCreateFlagBits values
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07984 
 Ifflagscontains theVK_PIPELINE_CREATE_DERIVATIVE_BITflag, andbasePipelineIndexis -1,basePipelineHandlemust be a valid graphicsVkPipelinehandle
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07985 
 Ifflagscontains theVK_PIPELINE_CREATE_DERIVATIVE_BITflag, andbasePipelineHandleis VK_NULL_HANDLE,basePipelineIndexmust be a valid index into the calling command’spCreateInfosparameter
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07986 
 Ifflagscontains theVK_PIPELINE_CREATE_DERIVATIVE_BITflag,basePipelineIndexmust be -1 orbasePipelineHandlemust be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-layout-07987 
 If a push constant block is declared in a shader, a push constant range inlayoutmust match the shader stage
- 
VUID-VkGraphicsPipelineCreateInfo-layout-10069 
 If a push constant block is declared in a shader, the block must be contained inside the push constant range inlayoutthat matches the stage
- 
VUID-VkGraphicsPipelineCreateInfo-layout-07988 
 If a resource variable is declared in a shader, the corresponding descriptor set inlayoutmust match the shader stage
- 
VUID-VkGraphicsPipelineCreateInfo-layout-07990 
 If a resource variable is declared in a shader, and the descriptor type is notVK_DESCRIPTOR_TYPE_MUTABLE_EXT, the corresponding descriptor set inlayoutmust match the descriptor type
- 
VUID-VkGraphicsPipelineCreateInfo-layout-07991 
 If a resource variable is declared in a shader as an array, the corresponding descriptor set inlayoutmust match the descriptor count
- 
VUID-VkGraphicsPipelineCreateInfo-None-10391 
 If a resource variables is declared in a shader as an array of descriptors, then the descriptor type of that variable must not beVK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK
- 
VUID-VkGraphicsPipelineCreateInfo-stage-02096 
 If the pipeline requires pre-rasterization shader state thestagemember of one element ofpStagesmust beVK_SHADER_STAGE_VERTEX_BITorVK_SHADER_STAGE_MESH_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-02095 
 If the pipeline requires pre-rasterization shader state the geometric shader stages provided inpStagesmust be either from the mesh shading pipeline (stageisVK_SHADER_STAGE_TASK_BIT_EXTorVK_SHADER_STAGE_MESH_BIT_EXT) or from the primitive shading pipeline (stageisVK_SHADER_STAGE_VERTEX_BIT,VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT,VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, orVK_SHADER_STAGE_GEOMETRY_BIT)
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-09631 
 If the pipeline requires pre-rasterization shader state andpStagescontains bothVK_SHADER_STAGE_TASK_BIT_EXTandVK_SHADER_STAGE_MESH_BIT_EXT, then the mesh shader’s entry point must not declare a variable with aDrawIndexBuiltIndecoration
- 
VUID-VkGraphicsPipelineCreateInfo-TaskNV-07063 
 The shader stages forVK_SHADER_STAGE_TASK_BIT_EXTorVK_SHADER_STAGE_MESH_BIT_EXTmust use either theTaskNVandMeshNVExecutionModelor theTaskEXTandMeshEXTExecutionModel, but must not use both
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00729 
 If the pipeline requires pre-rasterization shader state andpStagesincludes a tessellation control shader stage, it must include a tessellation evaluation shader stage
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00730 
 If the pipeline requires pre-rasterization shader state andpStagesincludes a tessellation evaluation shader stage, it must include a tessellation control shader stage
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-09022 
 If the pipeline requires pre-rasterization shader state andpStagesincludes a tessellation control shader stage, and theVK_EXT_extended_dynamic_state3extension is not enabled or theVK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXTdynamic state is not set,pTessellationStatemust be a valid pointer to a valid VkPipelineTessellationStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pTessellationState-09023 
 IfpTessellationStateis notNULLit must be a pointer to a valid VkPipelineTessellationStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00732 
 If the pipeline requires pre-rasterization shader state andpStagesincludes tessellation shader stages, the shader code of at least one stage must contain anOpExecutionModeinstruction specifying the type of subdivision in the pipeline
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00733 
 If the pipeline requires pre-rasterization shader state andpStagesincludes tessellation shader stages, and the shader code of both stages contain anOpExecutionModeinstruction specifying the type of subdivision in the pipeline, they must both specify the same subdivision mode
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00734 
 If the pipeline requires pre-rasterization shader state andpStagesincludes tessellation shader stages, the shader code of at least one stage must contain anOpExecutionModeinstruction specifying the output patch size in the pipeline
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00735 
 If the pipeline requires pre-rasterization shader state andpStagesincludes tessellation shader stages, and the shader code of both contain anOpExecutionModeinstruction specifying the out patch size in the pipeline, they must both specify the same patch size
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-08888 
 If the pipeline is being created with pre-rasterization shader state and vertex input state andpStagesincludes tessellation shader stages, and eitherVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGYdynamic state is not enabled ordynamicPrimitiveTopologyUnrestrictedisVK_FALSE, thetopologymember ofpInputAssemblymust beVK_PRIMITIVE_TOPOLOGY_PATCH_LIST
- 
VUID-VkGraphicsPipelineCreateInfo-topology-08889 
 If the pipeline is being created with pre-rasterization shader state and vertex input state and thetopologymember ofpInputAssemblyisVK_PRIMITIVE_TOPOLOGY_PATCH_LIST, and eitherVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGYdynamic state is not enabled ordynamicPrimitiveTopologyUnrestrictedisVK_FALSE, thenpStagesmust include tessellation shader stages
- 
VUID-VkGraphicsPipelineCreateInfo-TessellationEvaluation-07723 
 If the pipeline is being created with aTessellationEvaluationExecutionModel, noGeometryExecutionModel, uses thePointModeExecutionMode, and theshaderTessellationAndGeometryPointSizefeature is enabled, aPointSizedecorated variable must be written to if themaintenance5feature is not enabled
- 
VUID-VkGraphicsPipelineCreateInfo-topology-08773 
 If the pipeline is being created with aVertexExecutionModeland noTessellationEvaluationorGeometryExecutionModel, and thetopologymember ofpInputAssemblyisVK_PRIMITIVE_TOPOLOGY_POINT_LIST, and eitherVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGYdynamic state is not enabled ordynamicPrimitiveTopologyUnrestrictedisVK_FALSE, aPointSizedecorated variable must be written to if themaintenance5feature is not enabled
- 
VUID-VkGraphicsPipelineCreateInfo-maintenance5-08775 
 If themaintenance5feature is enabled and aPointSizedecorated variable is written to, all execution paths must write to aPointSizedecorated variable
- 
VUID-VkGraphicsPipelineCreateInfo-TessellationEvaluation-07724 
 If the pipeline is being created with aTessellationEvaluationExecutionModel, noGeometryExecutionModel, uses thePointModeExecutionMode, and theshaderTessellationAndGeometryPointSizefeature is not enabled, aPointSizedecorated variable must not be written to
- 
VUID-VkGraphicsPipelineCreateInfo-shaderTessellationAndGeometryPointSize-08776 
 If the pipeline is being created with aGeometryExecutionModel, uses theOutputPointsExecutionMode, and theshaderTessellationAndGeometryPointSizefeature is enabled, aPointSizedecorated variable must be written to for every vertex emitted if themaintenance5feature is not enabled
- 
VUID-VkGraphicsPipelineCreateInfo-Geometry-07726 
 If the pipeline is being created with aGeometryExecutionModel, uses theOutputPointsExecutionMode, and theshaderTessellationAndGeometryPointSizefeature is not enabled, aPointSizedecorated variable must not be written to
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00738 
 If the pipeline requires pre-rasterization shader state andpStagesincludes a geometry shader stage, and does not include any tessellation shader stages, its shader code must contain anOpExecutionModeinstruction specifying an input primitive type that is compatible with the primitive topology specified inpInputAssembly
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00739 
 If the pipeline requires pre-rasterization shader state andpStagesincludes a geometry shader stage, and also includes tessellation shader stages, its shader code must contain anOpExecutionModeinstruction specifying an input primitive type that is compatible with the primitive topology that is output by the tessellation stages
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00740 
 If the pipeline requires pre-rasterization shader state and fragment shader state, it includes both a fragment shader and a geometry shader, and the fragment shader code reads from an input variable that is decorated withPrimitiveId, then the geometry shader code must write to a matching output variable, decorated withPrimitiveId, in all execution paths
- 
VUID-VkGraphicsPipelineCreateInfo-PrimitiveId-06264 
 If the pipeline requires pre-rasterization shader state, it includes a mesh shader and the fragment shader code reads from an input variable that is decorated withPrimitiveId, then the mesh shader code must write to a matching output variable, decorated withPrimitiveId, in all execution paths
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06038 
 IfrenderPassis not VK_NULL_HANDLE and the pipeline is being created with fragment shader state the fragment shader must not read from any input attachment that is defined asVK_ATTACHMENT_UNUSEDinsubpass
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-00742 
 If the pipeline requires pre-rasterization shader state and multiple pre-rasterization shader stages are included inpStages, the shader code for the entry points identified by thosepStagesand the rest of the state identified by this structure must adhere to the pipeline linking rules described in the Shader Interfaces chapter
- 
VUID-VkGraphicsPipelineCreateInfo-None-04889 
 If the pipeline requires pre-rasterization shader state and fragment shader state, the fragment shader and last pre-rasterization shader stage and any relevant state must adhere to the pipeline linking rules described in the Shader Interfaces chapter
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06041 
 IfrenderPassis not VK_NULL_HANDLE, and the pipeline is being created with fragment output interface state, then for each color attachment in the subpass, if the potential format features of the format of the corresponding attachment description do not containVK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, then theblendEnablemember of the corresponding element of thepAttachmentsmember ofpColorBlendStatemust beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-07609 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with fragment output interface state, thepColorBlendStatepointer is notNULL, theattachmentCountmember ofpColorBlendStateis not ignored, and the subpass uses color attachments, theattachmentCountmember ofpColorBlendStatemust be equal to thecolorAttachmentCountused to createsubpass
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04130 
 If the pipeline requires pre-rasterization shader state, andpViewportState->pViewportsis not dynamic, thenpViewportState->pViewportsmust be a valid pointer to an array ofpViewportState->viewportCountvalidVkViewportstructures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04131 
 If the pipeline requires pre-rasterization shader state, andpViewportState->pScissorsis not dynamic, thenpViewportState->pScissorsmust be a valid pointer to an array ofpViewportState->scissorCountVkRect2Dstructures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-00749 
 If the pipeline requires pre-rasterization shader state, and thewideLinesfeature is not enabled, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_LINE_WIDTH, thelineWidthmember ofpRasterizationStatemust be1.0
- 
VUID-VkGraphicsPipelineCreateInfo-rasterizerDiscardEnable-09024 
 If the pipeline requires pre-rasterization shader state, and theVK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLEdynamic state is enabled or therasterizerDiscardEnablemember ofpRasterizationStateisVK_FALSE, and related dynamic state is not set,pViewportStatemust be a valid pointer to a valid VkPipelineViewportStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pViewportState-09025 
 IfpViewportStateis notNULLit must be a valid pointer to a valid VkPipelineViewportStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pMultisampleState-09026 
 If the pipeline requires fragment output interface state, and theVK_EXT_extended_dynamic_state3extension is not enabled or any of theVK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT,VK_DYNAMIC_STATE_SAMPLE_MASK_EXT, orVK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXTdynamic states is not set, or the alphaToOne feature is enabled andVK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXTis not set,pMultisampleStatemust be a valid pointer to a valid VkPipelineMultisampleStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pMultisampleState-09027 
 IfpMultisampleStateis notNULLit must be a valid pointer to a valid VkPipelineMultisampleStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-alphaToCoverageEnable-08891 
 If the pipeline is being created with fragment shader state, the VkPipelineMultisampleStateCreateInfo::alphaToCoverageEnableis not ignored and isVK_TRUE, then the Fragment Output Interface must contain a variable for the alphaComponentword inLocation0 atIndex0
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09028 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with fragment shader state, andsubpassuses a depth/stencil attachment, and related dynamic state is not set,pDepthStencilStatemust be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pDepthStencilState-09029 
 IfpDepthStencilStateis notNULLit must be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09030 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with fragment output interface state, andsubpassuses color attachments, and related dynamic state is not set,pColorBlendStatemust be a valid pointer to a valid VkPipelineColorBlendStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-00754 
 If the pipeline requires pre-rasterization shader state, thedepthBiasClampfeature is not enabled, no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_DEPTH_BIAS, and thedepthBiasEnablemember ofpRasterizationStateisVK_TRUE, thedepthBiasClampmember ofpRasterizationStatemust be0.0
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-02510 
 If the pipeline requires fragment shader state, theVK_EXT_depth_range_unrestrictedextension is not enabled and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_DEPTH_BOUNDS, and thedepthBoundsTestEnablemember ofpDepthStencilStateisVK_TRUE, theminDepthBoundsandmaxDepthBoundsmembers ofpDepthStencilStatemust be between0.0and1.0, inclusive
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07610 
 If the pipeline requires fragment shader state or fragment output interface state, andrasterizationSamplesandsampleLocationsInfoare not dynamic, and VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnableincluded in thepNextchain ofpMultisampleStateisVK_TRUE,sampleLocationsInfo.sampleLocationGridSize.widthmust evenly divide VkMultisamplePropertiesEXT::maxSampleLocationGridSize.widthas returned by vkGetPhysicalDeviceMultisamplePropertiesEXT with asamplesparameter equalingrasterizationSamples
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07611 
 If the pipeline requires fragment shader state or fragment output interface state, andrasterizationSamplesandsampleLocationsInfoare not dynamic, and VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnablethe included in thepNextchain ofpMultisampleStateisVK_TRUEorVK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXTis used,sampleLocationsInfo.sampleLocationGridSize.heightmust evenly divide VkMultisamplePropertiesEXT::maxSampleLocationGridSize.heightas returned by vkGetPhysicalDeviceMultisamplePropertiesEXT with asamplesparameter equalingrasterizationSamples
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07612 
 If the pipeline requires fragment shader state or fragment output interface state, andrasterizationSamplesandsampleLocationsInfoare not dynamic, and VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnableincluded in thepNextchain ofpMultisampleStateisVK_TRUEorVK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXTis used,sampleLocationsInfo.sampleLocationsPerPixelmust equalrasterizationSamples
- 
VUID-VkGraphicsPipelineCreateInfo-sampleLocationsEnable-01524 
 If the pipeline requires fragment shader state, and thesampleLocationsEnablemember of a VkPipelineSampleLocationsStateCreateInfoEXT structure included in thepNextchain ofpMultisampleStateisVK_TRUE, the fragment shader code must not statically use the extended instructionInterpolateAtSample
- 
VUID-VkGraphicsPipelineCreateInfo-multisampledRenderToSingleSampled-06853 
 If the pipeline requires fragment output interface state, and none of theVK_AMD_mixed_attachment_samplesextension, theVK_NV_framebuffer_mixed_samplesextension, or themultisampledRenderToSingleSampledfeature are enabled,rasterizationSamplesis not dynamic, and ifsubpassuses color and/or depth/stencil attachments, then therasterizationSamplesmember ofpMultisampleStatemust be the same as the sample count for those subpass attachments
- 
VUID-VkGraphicsPipelineCreateInfo-subpass-01505 
 If the pipeline requires fragment output interface state, and theVK_AMD_mixed_attachment_samplesextension is enabled,rasterizationSamplesis not dynamic, and ifsubpassuses color and/or depth/stencil attachments, then therasterizationSamplesmember ofpMultisampleStatemust equal the maximum of the sample counts of those subpass attachments
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06854 
 IfrenderPassis not VK_NULL_HANDLE, theVK_EXT_multisampled_render_to_single_sampledextension is enabled,rasterizationSamplesis not dynamic, andsubpasshas a VkMultisampledRenderToSingleSampledInfoEXT structure included in the VkSubpassDescription2::pNextchain withmultisampledRenderToSingleSampledEnableequal toVK_TRUE, then therasterizationSamplesmember ofpMultisampleStatemust be equal to VkMultisampledRenderToSingleSampledInfoEXT::rasterizationSamples
- 
VUID-VkGraphicsPipelineCreateInfo-subpass-01411 
 If the pipeline requires fragment output interface state, theVK_NV_framebuffer_mixed_samplesextension is enabled,rasterizationSamplesis not dynamic, and ifsubpasshas a depth/stencil attachment and depth test, stencil test, or depth bounds test are enabled, then therasterizationSamplesmember ofpMultisampleStatemust be the same as the sample count of the depth/stencil attachment
- 
VUID-VkGraphicsPipelineCreateInfo-subpass-01412 
 If the pipeline requires fragment output interface state, theVK_NV_framebuffer_mixed_samplesextension is enabled,rasterizationSamplesis not dynamic, and ifsubpasshas any color attachments, then therasterizationSamplesmember ofpMultisampleStatemust be greater than or equal to the sample count for those subpass attachments
- 
VUID-VkGraphicsPipelineCreateInfo-coverageReductionMode-02722 
 If the pipeline requires fragment output interface state, thecoverageReductionModefeature is enabled, andrasterizationSamplesis not dynamic, the coverage reduction mode specified by VkPipelineCoverageReductionStateCreateInfoNV::coverageReductionMode, therasterizationSamplesmember ofpMultisampleStateand the sample counts for the color and depth/stencil attachments (if the subpass has them) must be a valid combination returned byvkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
- 
VUID-VkGraphicsPipelineCreateInfo-subpass-00758 
 If the pipeline requires fragment output interface state,rasterizationSamplesis not dynamic, andsubpassdoes not use any color and/or depth/stencil attachments, then therasterizationSamplesmember ofpMultisampleStatemust follow the rules for a zero-attachment subpass
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06046 
 IfrenderPassis not VK_NULL_HANDLE,subpassmust be a valid subpass withinrenderPass
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06047 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state,subpassviewMask is not0, andmultiviewTessellationShaderis not enabled, thenpStagesmust not include tessellation shaders
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06048 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state,subpassviewMask is not0, andmultiviewGeometryShaderis not enabled, thenpStagesmust not include a geometry shader
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06050 
 IfrenderPassis not VK_NULL_HANDLE and the pipeline is being created with pre-rasterization shader state, andsubpassviewMask is not0, then all of the shaders in the pipeline must not include variables decorated with theLayerbuilt-in decoration in their interfaces
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-07064 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state,subpassviewMask is not0, andmultiviewMeshShaderis not enabled, thenpStagesmust not include a mesh shader
- 
VUID-VkGraphicsPipelineCreateInfo-flags-00764 
 flagsmust not contain theVK_PIPELINE_CREATE_DISPATCH_BASE_BITflag
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-01565 
 If the pipeline requires fragment shader state and an input attachment was referenced by anaspectMaskatrenderPasscreation time, the fragment shader must only read from the aspects that were specified for that input attachment
- 
VUID-VkGraphicsPipelineCreateInfo-layout-01688 
 The number of resources inlayoutaccessible to each shader stage that is used by the pipeline must be less than or equal toVkPhysicalDeviceLimits::maxPerStageResources
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-01715 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV, and theviewportWScalingEnablemember of a VkPipelineViewportWScalingStateCreateInfoNV structure, included in thepNextchain ofpViewportState, isVK_TRUE, thepViewportWScalingsmember of the VkPipelineViewportWScalingStateCreateInfoNV must be a pointer to an array of VkPipelineViewportWScalingStateCreateInfoNV::viewportCountvalid VkViewportWScalingNV structures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04056 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV, and ifpViewportState->pNextchain includes a VkPipelineViewportExclusiveScissorStateCreateInfoNV structure, and if itsexclusiveScissorCountmember is not0, then itspExclusiveScissorsmember must be a valid pointer to an array ofexclusiveScissorCountVkRect2D structures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07854 
 IfVK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NVis included in thepDynamicStatesarray then the implementation must support at leastspecVersion2of theVK_NV_scissor_exclusiveextension
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04057 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV, and ifpViewportState->pNextchain includes a VkPipelineViewportShadingRateImageStateCreateInfoNV structure, then itspShadingRatePalettesmember must be a valid pointer to an array ofviewportCountvalid VkShadingRatePaletteNV structures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04058 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT, and ifpNextchain includes a VkPipelineDiscardRectangleStateCreateInfoEXT structure, and if itsdiscardRectangleCountmember is not0, then itspDiscardRectanglesmember must be a valid pointer to an array ofdiscardRectangleCountVkRect2D structures
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07855 
 IfVK_DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXTis included in thepDynamicStatesarray then the implementation must support at leastspecVersion2of theVK_EXT_discard_rectanglesextension
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07856 
 IfVK_DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXTis included in thepDynamicStatesarray then the implementation must support at leastspecVersion2of theVK_EXT_discard_rectanglesextension
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-02097 
 If the pipeline requires vertex input state, andpVertexInputStateis not dynamic, thenpVertexInputStatemust be a valid pointer to a valid VkPipelineVertexInputStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-Input-07904 
 If thevertexAttributeRobustnessfeature is not enabled, and themaintenance9feature is not enabled, and the pipeline is being created with vertex input state andpVertexInputStateis not dynamic, then all variables with theInputstorage class decorated withLocationin theVertexExecutionModelOpEntryPointmust contain a location in VkVertexInputAttributeDescription::location
- 
VUID-VkGraphicsPipelineCreateInfo-Input-08733 
 If the pipeline requires vertex input state andpVertexInputStateis not dynamic, then the numeric type associated with allInputvariables of the correspondingLocationin theVertexExecutionModelOpEntryPointmust be the same as VkVertexInputAttributeDescription::format
- 
VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-08929 
 If the pipeline is being created with vertex input state andpVertexInputStateis not dynamic, and VkVertexInputAttributeDescription::formathas a 64-bit component, then the scalar width associated with allInputvariables of the correspondingLocationin theVertexExecutionModelOpEntryPointmust be 64-bit
- 
VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-08930 
 If the pipeline is being created with vertex input state andpVertexInputStateis not dynamic, and the scalar width associated with aLocationdecoratedInputvariable in theVertexExecutionModelOpEntryPointis 64-bit, then the corresponding VkVertexInputAttributeDescription::formatmust have a 64-bit component
- 
VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-09198 
 If the pipeline is being created with vertex input state andpVertexInputStateis not dynamic, and VkVertexInputAttributeDescription::formathas a 64-bit component, then allInputvariables at the correspondingLocationin theVertexExecutionModelOpEntryPointmust not use components that are not present in the format
- 
VUID-VkGraphicsPipelineCreateInfo-dynamicPrimitiveTopologyUnrestricted-09031 
 If the pipeline requires vertex input state, and related dynamic state is not set,pInputAssemblyStatemust be a valid pointer to a valid VkPipelineInputAssemblyStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pInputAssemblyState-09032 
 IfpInputAssemblyStateis notNULLit must be a valid pointer to a valid VkPipelineInputAssemblyStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-02317 
 If the pipeline requires pre-rasterization shader state, theXfbexecution mode can be specified by no more than one shader stage inpStages
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-02318 
 If the pipeline requires pre-rasterization shader state, and any shader stage inpStagesspecifiesXfbexecution mode it must be the last pre-rasterization shader stage
- 
VUID-VkGraphicsPipelineCreateInfo-rasterizationStream-02319 
 If the pipeline requires pre-rasterization shader state, and a VkPipelineRasterizationStateStreamCreateInfoEXT::rasterizationStreamvalue other than zero is specified, all variables in the output interface of the entry point being compiled decorated withPosition,PointSize,ClipDistance, orCullDistancemust be decorated with identicalStreamvalues that match therasterizationStream
- 
VUID-VkGraphicsPipelineCreateInfo-rasterizationStream-02320 
 If the pipeline requires pre-rasterization shader state, and VkPipelineRasterizationStateStreamCreateInfoEXT::rasterizationStreamis zero, or not specified, all variables in the output interface of the entry point being compiled decorated withPosition,PointSize,ClipDistance, orCullDistancemust be decorated with aStreamvalue of zero, or must not specify theStreamdecoration
- 
VUID-VkGraphicsPipelineCreateInfo-geometryStreams-02321 
 If the pipeline requires pre-rasterization shader state, and the last pre-rasterization shader stage is a geometry shader, and that geometry shader uses theGeometryStreamscapability, thenVkPhysicalDeviceTransformFeedbackFeaturesEXT::geometryStreamsfeature must be enabled
- 
VUID-VkGraphicsPipelineCreateInfo-None-02322 
 If the pipeline requires pre-rasterization shader state, and there are any mesh shader stages in the pipeline there must not be any shader stage in the pipeline with aXfbexecution mode
- 
VUID-VkGraphicsPipelineCreateInfo-lineRasterizationMode-02766 
 If the pipeline requires pre-rasterization shader state and at least one of fragment output interface state or fragment shader state, andpMultisampleStateis notNULL, thelineRasterizationModemember of a VkPipelineRasterizationLineStateCreateInfo structure included in thepNextchain ofpRasterizationStateisVK_LINE_RASTERIZATION_MODE_BRESENHAMorVK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH, then thealphaToCoverageEnable,alphaToOneEnable, andsampleShadingEnablemembers ofpMultisampleStatemust all beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-stippledLineEnable-02767 
 If the pipeline requires pre-rasterization shader state, thestippledLineEnablemember of VkPipelineRasterizationLineStateCreateInfo isVK_TRUE, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_LINE_STIPPLE, then thelineStippleFactormember of VkPipelineRasterizationLineStateCreateInfo must be in the range [1,256]
- 
VUID-VkGraphicsPipelineCreateInfo-shaderMeshEnqueue-10187 
 If theshaderMeshEnqueuefeature is not enabled, shaders specified bypStagesmust not declare theShaderEnqueueAMDXcapability
- 
VUID-VkGraphicsPipelineCreateInfo-flags-10188 
 Ifflagsdoes not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR, shaders specified bypStagesmust not declare theShaderEnqueueAMDXcapability
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-10189 
 If any shader stages inpStagesdeclare theShaderEnqueueAMDXcapability,VK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDXandVK_PIPELINE_CREATE_2_LIBRARY_BIT_KHRmust be included inflags
- 
VUID-VkGraphicsPipelineCreateInfo-flags-10190 
 IfVK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDXis included inflags, and the pipeline requires pre-rasterization shader state, there must not be a task or vertex shader specified inpStages
- 
VUID-VkGraphicsPipelineCreateInfo-flags-10191 
 IfVK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDXis included inflags, all elements of VkPipelineLibraryCreateInfoKHR::pLibrariesmust have been created withVK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03372 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03373 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03374 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03375 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03376 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03377 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-03577 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-04947 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-03378 
 If theextendedDynamicStatefeature is not enabled, and the minimum value of VkApplicationInfo::apiVersionused to create the VkInstance andapiVersionsupported by the physical device is less than Version 1.3 there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_CULL_MODE,VK_DYNAMIC_STATE_FRONT_FACE,VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT,VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT,VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE,VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE, orVK_DYNAMIC_STATE_STENCIL_OP
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-03379 
 If the pipeline requires pre-rasterization shader state, andVK_DYNAMIC_STATE_VIEWPORT_WITH_COUNTis included in thepDynamicStatesarray thenviewportCountmust be zero
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-03380 
 If the pipeline requires pre-rasterization shader state, andVK_DYNAMIC_STATE_SCISSOR_WITH_COUNTis included in thepDynamicStatesarray thenscissorCountmust be zero
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04132 
 If the pipeline requires pre-rasterization shader state, andVK_DYNAMIC_STATE_VIEWPORT_WITH_COUNTis included in thepDynamicStatesarray thenVK_DYNAMIC_STATE_VIEWPORTmust not be present
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04133 
 If the pipeline requires pre-rasterization shader state, andVK_DYNAMIC_STATE_SCISSOR_WITH_COUNTis included in thepDynamicStatesarray thenVK_DYNAMIC_STATE_SCISSORmust not be present
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07065 
 If the pipeline requires pre-rasterization shader state, and includes a mesh shader, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY, orVK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04868 
 If theextendedDynamicState2feature is not enabled, and the minimum value of VkApplicationInfo::apiVersionused to create the VkInstance andapiVersionsupported by the physical device is less than Version 1.3 there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE, orVK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04869 
 If theextendedDynamicState2LogicOpfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_LOGIC_OP_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04870 
 If theextendedDynamicState2PatchControlPointsfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07066 
 If the pipeline requires pre-rasterization shader state, and includes a mesh shader, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE, orVK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-02877 
 IfflagsincludesVK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV, then theVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV::deviceGeneratedCommandsfeature must be enabled
- 
VUID-VkGraphicsPipelineCreateInfo-flags-02966 
 If the pipeline requires pre-rasterization shader state andflagsincludesVK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV, then all stages must not specifyXfbexecution mode
- 
VUID-VkGraphicsPipelineCreateInfo-libraryCount-06648 
 If the pipeline is not created with a complete set of state, or VkPipelineLibraryCreateInfoKHR::libraryCountis not0, VkGraphicsPipelineShaderGroupsCreateInfoNV::groupCountand VkGraphicsPipelineShaderGroupsCreateInfoNV::pipelineCountmust be0
- 
VUID-VkGraphicsPipelineCreateInfo-libraryCount-06649 
 If the pipeline is created with a complete set of state, and VkPipelineLibraryCreateInfoKHR::libraryCountis0, and thepNextchain includes an instance of VkGraphicsPipelineShaderGroupsCreateInfoNV, VkGraphicsPipelineShaderGroupsCreateInfoNV::groupCountmust be greater than0
- 
VUID-VkGraphicsPipelineCreateInfo-flags-11000 
 IfflagsincludesVK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT, then theVkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT::deviceGeneratedCommandsfeature must be enabled
- 
VUID-VkGraphicsPipelineCreateInfo-flags-11001 
 If the pipeline requires pre-rasterization shader state andflagsincludesVK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT, then all stages must not specifyXfbexecution mode
- 
VUID-VkGraphicsPipelineCreateInfo-pipelineCreationCacheControl-02878 
 If thepipelineCreationCacheControlfeature is not enabled,flagsmust not includeVK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BITorVK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-pipelineProtectedAccess-07368 
 If thepipelineProtectedAccessfeature is not enabled,flagsmust not includeVK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BITorVK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07369 
 flagsmust not include bothVK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BITandVK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04494 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthmust be greater than or equal to1
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04495 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust be greater than or equal to1
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04496 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthmust be a power-of-two value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04497 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust be a power-of-two value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04498 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthmust be less than or equal to4
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04499 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust be less than or equal to4
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04500 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and thepipelineFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthand VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust both be equal to1
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-06567 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::combinerOps[0] must be a valid VkFragmentShadingRateCombinerOpKHR value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-06568 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateStateCreateInfoKHR::combinerOps[1] must be a valid VkFragmentShadingRateCombinerOpKHR value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04501 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and theprimitiveFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateStateCreateInfoKHR::combinerOps[0] must beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04502 
 If the pipeline requires pre-rasterization shader state or fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and theattachmentFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateStateCreateInfoKHR::combinerOps[1] must beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-primitiveFragmentShadingRateWithMultipleViewports-04503 
 If the pipeline requires pre-rasterization shader state and theprimitiveFragmentShadingRateWithMultipleViewportslimit is not supported,VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNTis not included inpDynamicState->pDynamicStates, and VkPipelineViewportStateCreateInfo::viewportCountis greater than1, entry points specified inpStagesmust not write to thePrimitiveShadingRateKHRbuilt-in
- 
VUID-VkGraphicsPipelineCreateInfo-primitiveFragmentShadingRateWithMultipleViewports-04504 
 If the pipeline requires pre-rasterization shader state and theprimitiveFragmentShadingRateWithMultipleViewportslimit is not supported, and entry points specified inpStageswrite to theViewportIndexbuilt-in, they must not also write to thePrimitiveShadingRateKHRbuilt-in
- 
VUID-VkGraphicsPipelineCreateInfo-primitiveFragmentShadingRateWithMultipleViewports-04505 
 If the pipeline requires pre-rasterization shader state and theprimitiveFragmentShadingRateWithMultipleViewportslimit is not supported, and entry points specified inpStageswrite to theViewportMaskNVbuilt-in, they must not also write to thePrimitiveShadingRateKHRbuilt-in
- 
VUID-VkGraphicsPipelineCreateInfo-fragmentShadingRateNonTrivialCombinerOps-04506 
 If the pipeline requires pre-rasterization shader state or fragment shader state, thefragmentShadingRateNonTrivialCombinerOpslimit is not supported, andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, elements of VkPipelineFragmentShadingRateStateCreateInfoKHR::combinerOpsmust beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHRorVK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-None-06569 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRateTypemust be a valid VkFragmentShadingRateTypeNV value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-06570 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRatemust be a valid VkFragmentShadingRateNV value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-06571 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::combinerOps[0] must be a valid VkFragmentShadingRateCombinerOpKHR value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-06572 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::combinerOps[1] must be a valid VkFragmentShadingRateCombinerOpKHR value
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04569 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and thefragmentShadingRateEnumsfeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRateTypemust be equal toVK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04570 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and thepipelineFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRatemust be equal toVK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04571 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and theprimitiveFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::combinerOps[0] must beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-04572 
 If the pipeline requires fragment shader state andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, and theattachmentFragmentShadingRatefeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::combinerOps[1] must beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-fragmentShadingRateNonTrivialCombinerOps-04573 
 If the pipeline requires fragment shader state, and thefragmentShadingRateNonTrivialCombinerOpslimit is not supported andVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHRis not included inpDynamicState->pDynamicStates, elements of VkPipelineFragmentShadingRateEnumStateCreateInfoNV::combinerOpsmust beVK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHRorVK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-None-04574 
 If the pipeline requires fragment shader state, and thesupersampleFragmentShadingRatesfeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRatemust not be equal toVK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV,VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV,VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV, orVK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV
- 
VUID-VkGraphicsPipelineCreateInfo-None-04575 
 If the pipeline requires fragment shader state, and thenoInvocationFragmentShadingRatesfeature is not enabled, VkPipelineFragmentShadingRateEnumStateCreateInfoNV::shadingRatemust not be equal toVK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-03578 
 All elements of thepDynamicStatesmember ofpDynamicStatemust not beVK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04807 
 If the pipeline requires pre-rasterization shader state and thevertexInputDynamicStatefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_VERTEX_INPUT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07067 
 If the pipeline requires pre-rasterization shader state, and includes a mesh shader, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_VERTEX_INPUT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-04800 
 If thecolorWriteEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-rasterizationSamples-04899 
 If the pipeline requires fragment shader state, and theVK_QCOM_render_pass_shader_resolveextension is enabled,rasterizationSamplesis not dynamic, and if subpass has any input attachments, and if the subpass description containsVK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, then the sample count of the input attachments must equalrasterizationSamples
- 
VUID-VkGraphicsPipelineCreateInfo-sampleShadingEnable-04900 
 If the pipeline requires fragment shader state, and theVK_QCOM_render_pass_shader_resolveextension is enabled, and if the subpass description containsVK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, thensampleShadingEnablemust be false
- 
VUID-VkGraphicsPipelineCreateInfo-dynamicRendering-06576 
 If thedynamicRenderingfeature is not enabled and the pipeline requires pre-rasterization shader state, fragment shader state, or fragment output interface state,renderPassmust not be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-multiview-06577 
 If themultiviewfeature is not enabled, the pipeline requires pre-rasterization shader state, fragment shader state, or fragment output interface state, andrenderPassis VK_NULL_HANDLE, VkPipelineRenderingCreateInfo::viewMaskmust be0
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06578 
 If the pipeline requires pre-rasterization shader state, fragment shader state, or fragment output interface state, andrenderPassis VK_NULL_HANDLE, the index of the most significant bit in VkPipelineRenderingCreateInfo::viewMaskmust be less thanmaxMultiviewViewCount
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06579 
 If the pipeline requires fragment output interface state, andrenderPassis VK_NULL_HANDLE, and VkPipelineRenderingCreateInfo::colorAttachmentCountis not 0, VkPipelineRenderingCreateInfo::pColorAttachmentFormatsmust be a valid pointer to an array ofcolorAttachmentCountvalid VkFormat values
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06580 
 If the pipeline requires fragment output interface state, andrenderPassis VK_NULL_HANDLE, each element of VkPipelineRenderingCreateInfo::pColorAttachmentFormatsmust be a valid VkFormat value
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06582 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and any element of VkPipelineRenderingCreateInfo::pColorAttachmentFormatsis notVK_FORMAT_UNDEFINED, that format must be a format with potential format features that includeVK_FORMAT_FEATURE_COLOR_ATTACHMENT_BITorVK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06583 
 If the pipeline requires fragment output interface state, andrenderPassis VK_NULL_HANDLE, VkPipelineRenderingCreateInfo::depthAttachmentFormatmust be a valid VkFormat value
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06584 
 If the pipeline requires fragment output interface state, andrenderPassis VK_NULL_HANDLE, VkPipelineRenderingCreateInfo::stencilAttachmentFormatmust be a valid VkFormat value
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06585 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkPipelineRenderingCreateInfo::depthAttachmentFormatis notVK_FORMAT_UNDEFINED, it must be a format with potential format features that includeVK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06586 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkPipelineRenderingCreateInfo::stencilAttachmentFormatis notVK_FORMAT_UNDEFINED, it must be a format with potential format features that includeVK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06587 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkPipelineRenderingCreateInfo::depthAttachmentFormatis notVK_FORMAT_UNDEFINED, it must be a format that includes a depth component
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06588 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkPipelineRenderingCreateInfo::stencilAttachmentFormatis notVK_FORMAT_UNDEFINED, it must be a format that includes a stencil component
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06589 
 If the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, VkPipelineRenderingCreateInfo::depthAttachmentFormatis notVK_FORMAT_UNDEFINED, and VkPipelineRenderingCreateInfo::stencilAttachmentFormatis notVK_FORMAT_UNDEFINED,depthAttachmentFormatmust equalstencilAttachmentFormat
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09033 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with fragment shader state and fragment output interface state, and either of VkPipelineRenderingCreateInfo::depthAttachmentFormator VkPipelineRenderingCreateInfo::stencilAttachmentFormatare notVK_FORMAT_UNDEFINED, and theVK_EXT_extended_dynamic_state3extension is not enabled or any of theVK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_OP, orVK_DYNAMIC_STATE_DEPTH_BOUNDSdynamic states are not set,pDepthStencilStatemust be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pDepthStencilState-09034 
 IfpDepthStencilStateis notNULLit must be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09035 
 IfrenderPassis VK_NULL_HANDLE and the pipeline is being created with fragment shader state but not fragment output interface state, and theVK_EXT_extended_dynamic_state3extension is not enabled, or any of theVK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,VK_DYNAMIC_STATE_STENCIL_OP, orVK_DYNAMIC_STATE_DEPTH_BOUNDSdynamic states are not set,pDepthStencilStatemust be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pDepthStencilState-09036 
 IfpDepthStencilStateis notNULLit must be a valid pointer to a valid VkPipelineDepthStencilStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09037 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with fragment output interface state, and any element of VkPipelineRenderingCreateInfo::pColorAttachmentFormatsis notVK_FORMAT_UNDEFINED, and theVK_EXT_extended_dynamic_state3extension is not enabled, or any of theVK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT,VK_DYNAMIC_STATE_LOGIC_OP_EXT,VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT,VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT,VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT, orVK_DYNAMIC_STATE_BLEND_CONSTANTSdynamic states are not set,pColorBlendStatemust be a valid pointer to a valid VkPipelineColorBlendStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pColorBlendState-09038 
 IfpColorBlendStateis notNULLit must be a valid pointer to a valid VkPipelineColorBlendStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06055 
 IfrenderPassis VK_NULL_HANDLE,pColorBlendStateis not dynamic, and the pipeline is being created with fragment output interface state,pColorBlendState->attachmentCountmust be equal to VkPipelineRenderingCreateInfo::colorAttachmentCount
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06057 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state, VkPipelineRenderingCreateInfo::viewMaskis not0, and themultiviewTessellationShaderfeature is not enabled, thenpStagesmust not include tessellation shaders
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06058 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state, VkPipelineRenderingCreateInfo::viewMaskis not0, and themultiviewGeometryShaderfeature is not enabled, thenpStagesmust not include a geometry shader
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06059 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state, and VkPipelineRenderingCreateInfo::viewMaskis not0, all of the shaders in the pipeline must not include variables decorated with theLayerbuilt-in decoration in their interfaces
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-07720 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state, and VkPipelineRenderingCreateInfo::viewMaskis not0, andmultiviewMeshShaderis not enabled, thenpStagesmust not include a mesh shader
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06061 
 If thedynamicRenderingLocalReadfeature is not enabled, the pipeline requires fragment shader state, andrenderPassis VK_NULL_HANDLE, fragment shaders inpStagesmust not include theInputAttachmentcapability
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-08710 
 If the pipeline requires fragment shader state andrenderPassis not VK_NULL_HANDLE, fragment shaders inpStagesmust not include any of theTileImageColorReadAccessEXT,TileImageDepthReadAccessEXT, orTileImageStencilReadAccessEXTcapabilities
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06062 
 If the pipeline requires fragment output interface state andrenderPassis VK_NULL_HANDLE, for each color attachment format defined by thepColorAttachmentFormatsmember of VkPipelineRenderingCreateInfo, if its potential format features do not containVK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, then theblendEnablemember of the corresponding element of thepAttachmentsmember ofpColorBlendStatemust beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06063 
 If the pipeline requires fragment output interface state andrenderPassis VK_NULL_HANDLE, if thepNextchain includes VkAttachmentSampleCountInfoAMD orVkAttachmentSampleCountInfoNV, thecolorAttachmentCountmember of that structure must be equal to the value of VkPipelineRenderingCreateInfo::colorAttachmentCount
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06591 
 IfpStagesincludes a fragment shader stage, and the fragment shader declares theEarlyFragmentTestsexecution mode, theflagsmember of VkPipelineDepthStencilStateCreateInfo must not includeVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXTorVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06482 
 If thedynamicRenderingLocalReadfeature is not enabled, the pipeline requires fragment output interface state, and theflagsmember of VkPipelineColorBlendStateCreateInfo includesVK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT,renderPassmust not be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-None-09526 
 If thedynamicRenderingLocalReadfeature is not enabled, the pipeline requires fragment output interface state, and theflagsmember of VkPipelineDepthStencilStateCreateInfo includesVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXTorVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT,renderPassmust not be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-pColorAttachmentSamples-06592 
 If the fragment output interface state, elements of thepColorAttachmentSamplesmember of VkAttachmentSampleCountInfoAMD or VkAttachmentSampleCountInfoNV must be valid VkSampleCountFlagBits values
- 
VUID-VkGraphicsPipelineCreateInfo-depthStencilAttachmentSamples-06593 
 If the fragment output interface state and thedepthStencilAttachmentSamplesmember of VkAttachmentSampleCountInfoAMD or VkAttachmentSampleCountInfoNV is not 0, it must be a valid VkSampleCountFlagBits value
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09527 
 If the pipeline requires fragment output interface state,renderPassis not VK_NULL_HANDLE, and theflagsmember of VkPipelineColorBlendStateCreateInfo includesVK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXTsubpassmust have been created withVK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09528 
 If the pipeline requires fragment shader state,renderPassis not VK_NULL_HANDLE, and theflagsmember of VkPipelineDepthStencilStateCreateInfo includesVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT,subpassmust have been created withVK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09529 
 If the pipeline requires fragment shader state,renderPassis not VK_NULL_HANDLE, and theflagsmember of VkPipelineDepthStencilStateCreateInfo includesVK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT,subpassmust have been created withVK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pipelineStageCreationFeedbackCount-06594 
 If VkPipelineCreationFeedbackCreateInfo::pipelineStageCreationFeedbackCountis not0, it must be equal tostageCount
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06595 
 IfrenderPassis VK_NULL_HANDLE, the pipeline is being created with pre-rasterization shader state or fragment shader state, and VkMultiviewPerViewAttributesInfoNVX::perViewAttributesPositionXOnlyisVK_TRUEthen VkMultiviewPerViewAttributesInfoNVX::perViewAttributesmust also beVK_TRUE
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06596 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, the value of VkMultiviewPerViewAttributesInfoNVX::perViewAttributesspecified in both this pipeline and the library must be equal
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06597 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, the value of VkMultiviewPerViewAttributesInfoNVX::perViewAttributesspecified in both libraries must be equal
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06598 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, the value of VkMultiviewPerViewAttributesInfoNVX::perViewAttributesPositionXOnlyspecified in both this pipeline and the library must be equal
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06599 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, the value of VkMultiviewPerViewAttributesInfoNVX::perViewAttributesPositionXOnlyspecified in both libraries must be equal
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-06600 
 If the pipeline requires pre-rasterization shader state or fragment shader state,pStagesmust be a valid pointer to an array ofstageCountvalid VkPipelineShaderStageCreateInfo structures
- 
VUID-VkGraphicsPipelineCreateInfo-stageCount-09587 
 If the pipeline does not require pre-rasterization shader state or fragment shader state,stageCountmust be zero
- 
VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-06601 
 If the pipeline requires pre-rasterization shader state, and related dynamic state is not set,pRasterizationStatemust be a valid pointer to a valid VkPipelineRasterizationStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-09039 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, and related dynamic state is not set, thenpMultisampleStatemust be a valid pointer to a valid VkPipelineMultisampleStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-09040 
 IfpRasterizationStateis notNULLit must be a valid pointer to a valid VkPipelineRasterizationStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-layout-06602 
 If the pipeline requires fragment shader state or pre-rasterization shader state,layoutmust be a valid VkPipelineLayout handle
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-06603 
 If the pipeline requires pre-rasterization shader state, fragment shader state, or fragment output state, andrenderPassis not VK_NULL_HANDLE,renderPassmust be a valid VkRenderPass handle
- 
VUID-VkGraphicsPipelineCreateInfo-stageCount-09530 
 If the pipeline requires pre-rasterization shader state,stageCountmust be greater than0
- 
VUID-VkGraphicsPipelineCreateInfo-graphicsPipelineLibrary-06606 
 If thegraphicsPipelineLibraryfeature is not enabled, and if theshaderMeshEnqueuefeature is not enabled,flagsmust not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06608 
 If theshaderMeshEnqueuefeature is not enabled, and the pipeline is being created with all possible state subsets,flagsmust not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06609 
 IfflagsincludesVK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT, pipeline libraries included via VkPipelineLibraryCreateInfoKHR must have been created withVK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-09245 
 IfflagsincludesVK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT,flagsmust also includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06610 
 IfflagsincludesVK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT, pipeline libraries included via VkPipelineLibraryCreateInfoKHR must have been created withVK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06611 
 Any pipeline libraries included via VkPipelineLibraryCreateInfoKHR::pLibrariesmust not include any state subset already defined by this structure or defined by any other pipeline library in VkPipelineLibraryCreateInfoKHR::pLibraries
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06612 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, andlayoutwas not created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, then thelayoutused by this pipeline and the library must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06613 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and thelayoutspecified by either library was not created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, then thelayoutused by each library must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06614 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other subset, andlayoutwas created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, then thelayoutused by the library must also have been created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06615 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and thelayoutspecified by either library was created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, then thelayoutused by both libraries must have been created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06616 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other subset, andlayoutwas created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, elements of thepSetLayoutsarray whichlayoutwas created with that are not VK_NULL_HANDLE must be identically defined to the element at the same index ofpSetLayoutsused to create the library’slayout
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06617 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and thelayoutspecified by either library was created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, elements of thepSetLayoutsarray which eitherlayoutwas created with that are not VK_NULL_HANDLE must be identically defined to the element at the same index ofpSetLayoutsused to create the other library’slayout
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06618 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, any descriptor set layout N specified bylayoutin both this pipeline and the library which include bindings accessed by shader stages in each must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06619 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, any descriptor set layout N specified bylayoutin both libraries which include bindings accessed by shader stages in each must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06620 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, push constants specified inlayoutin both this pipeline and the library which are available to shader stages in each must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06621 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, push constants specified inlayoutin both this pipeline and the library which are available to shader stages in each must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06679 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other subset, any element of thepSetLayoutsarray whenlayoutwas created and the corresponding element of thepSetLayoutsarray used to create the library’slayoutmust not both be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06681 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and any element of thepSetLayoutsarray used to create each library’slayoutwas VK_NULL_HANDLE, then the corresponding element of thepSetLayoutsarray used to create the other library’slayoutmust not be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06756 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other subset, and any element of thepSetLayoutsarray whichlayoutwas created with was VK_NULL_HANDLE, then the corresponding element of thepSetLayoutsarray used to create the library’slayoutmust not have shader bindings for shaders in the other subset
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06757 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other subset, and any element of thepSetLayoutsarray used to create the library’slayoutwas VK_NULL_HANDLE, then the corresponding element of thepSetLayoutsarray used to create this pipeline’slayoutmust not have shader bindings for shaders in the other subset
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06758 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and any element of thepSetLayoutsarray used to create each library’slayoutwas VK_NULL_HANDLE, then the corresponding element of thepSetLayoutsarray used to create the other library’slayoutmust not have shader bindings for shaders in the other subset
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06682 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes bothVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTandVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,layoutmust have been created with no elements of thepSetLayoutsarray set to VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06683 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTandpRasterizationState->rasterizerDiscardEnableisVK_TRUE,layoutmust have been created with no elements of thepSetLayoutsarray set to VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06684 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, the value ofsubpassmust be equal to that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06623 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and another element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, the value ofsubpassused to create each library must be identical
- 
VUID-VkGraphicsPipelineCreateInfo-renderpass-06624 
 Ifrenderpassis not VK_NULL_HANDLE, VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags,renderPassmust be compatible with that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-renderpass-06625 
 Ifrenderpassis VK_NULL_HANDLE, VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, the value ofrenderPassused to create that library must also be VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06626 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, andrenderPassis VK_NULL_HANDLE, the value of VkPipelineRenderingCreateInfo::viewMaskused by this pipeline and that specified by the library must be identical
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06627 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, another element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, andrenderPasswas VK_NULL_HANDLE for both libraries, the value of VkPipelineRenderingCreateInfo::viewMaskset by each library must be identical
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06628 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes at least one of and no more than two ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and another element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes one of the other flags, therenderPassobjects used to create each library must be compatible or all equal to VK_NULL_HANDLE
- 
VUID-VkGraphicsPipelineCreateInfo-renderpass-06631 
 IfrenderPassis not VK_NULL_HANDLE, the pipeline requires fragment shader state, and theVK_EXT_extended_dynamic_state3extension is not enabled or any of theVK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT,VK_DYNAMIC_STATE_SAMPLE_MASK_EXT, orVK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXTdynamic states is not set, or the alphaToOne feature is enabled andVK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXTis not set, thenpMultisampleStatemust be a valid pointer to a valid VkPipelineMultisampleStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-Input-06632 
 If the pipeline requires fragment shader state with a fragment shader that either enables sample shading or decorates any variable in theInputstorage class withSample, and theVK_EXT_extended_dynamic_state3extension is not enabled or any of theVK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT,VK_DYNAMIC_STATE_SAMPLE_MASK_EXT, orVK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXTdynamic states is not set, or the alphaToOne feature is enabled andVK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXTis not set, thenpMultisampleStatemust be a valid pointer to a valid VkPipelineMultisampleStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06633 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXTwith apMultisampleStatethat was notNULL, and an element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT,pMultisampleStatemust be identically defined to that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06634 
 If an element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXTwith apMultisampleStatethat was notNULL, and if VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT,pMultisampleStatemust be identically defined to that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06635 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXTwith apMultisampleStatethat was notNULL, and if a different element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, thepMultisampleStateused to create each library must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06636 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXTand a value ofpMultisampleState->sampleShadingEnableequalVK_TRUE, and if a different element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, thepMultisampleStateused to create each library must be identically defined
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06637 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT,pMultisampleState->sampleShadingEnableisVK_TRUE, and an element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,pMultisampleStatemust be identically defined to that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-09567 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrarieswas created withVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXTand a value ofpMultisampleState->sampleShadingEnableequalVK_TRUE, and if VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,pMultisampleStatemust be identically defined to that used to create the library
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06638 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludes only one ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and an element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludes the other flag, values specified in VkPipelineFragmentShadingRateStateCreateInfoKHR for both this pipeline and that library must be identical
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06639 
 If one element of VkPipelineLibraryCreateInfoKHR::pLibrariesincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTand another element includesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, values specified in VkPipelineFragmentShadingRateStateCreateInfoKHR for both this pipeline and that library must be identical
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06640 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,pStagesmust be a valid pointer to an array ofstageCountvalid VkPipelineShaderStageCreateInfo structures
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06642 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,layoutmust be a valid VkPipelineLayout handle
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06643 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, orVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, andrenderPassis not VK_NULL_HANDLE,renderPassmust be a valid VkRenderPass handle
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06644 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTorVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT,stageCountmust be greater than0
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06645 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsis non-zero, ifflagsincludesVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR, any libraries must have also been created withVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06646 
 If VkPipelineLibraryCreateInfoKHR::pLibrariesincludes more than one library, and any library was created withVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR, all libraries must have also been created withVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-pLibraries-06647 
 If VkPipelineLibraryCreateInfoKHR::pLibrariesincludes at least one library, VkGraphicsPipelineLibraryCreateInfoEXT::flagsis non-zero, and any library was created withVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR,flagsmust includeVK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
- 
VUID-VkGraphicsPipelineCreateInfo-None-07826 
 If the pipeline includes a complete set of state, and there are no libraries included in VkPipelineLibraryCreateInfoKHR::pLibraries, then VkPipelineLayout must be a valid pipeline layout
- 
VUID-VkGraphicsPipelineCreateInfo-layout-07827 
 If the pipeline includes a complete set of state specified entirely by libraries, and each library was created with a VkPipelineLayout created withoutVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, thenlayoutmust be compatible with the layouts in those libraries
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06729 
 IfflagsincludesVK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT, the pipeline includes a complete set of state specified entirely by libraries, and each library was created with a VkPipelineLayout created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, thenlayoutmust be compatible with the union of the libraries' pipeline layouts other than the inclusion/exclusion ofVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-06730 
 Ifflagsdoes not includeVK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT, the pipeline includes a complete set of state specified entirely by libraries, and each library was created with a VkPipelineLayout created withVK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, thenlayoutmust be compatible with the union of the libraries' pipeline layouts
- 
VUID-VkGraphicsPipelineCreateInfo-conservativePointAndLineRasterization-08892 
 IfconservativePointAndLineRasterizationis not supported; the pipeline is being created with vertex input state and pre-rasterization shader state; the pipeline does not include a geometry shader; and the value of VkPipelineInputAssemblyStateCreateInfo::topologyisVK_PRIMITIVE_TOPOLOGY_POINT_LIST,VK_PRIMITIVE_TOPOLOGY_LINE_LIST, orVK_PRIMITIVE_TOPOLOGY_LINE_STRIP, and eitherVK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGYdynamic state is not enabled ordynamicPrimitiveTopologyUnrestrictedisVK_FALSE, then VkPipelineRasterizationConservativeStateCreateInfoEXT::conservativeRasterizationModemust beVK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-conservativePointAndLineRasterization-06760 
 IfconservativePointAndLineRasterizationis not supported, the pipeline requires pre-rasterization shader state, and the pipeline includes a geometry shader with either theOutputPointsorOutputLineStripexecution modes, VkPipelineRasterizationConservativeStateCreateInfoEXT::conservativeRasterizationModemust beVK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-conservativePointAndLineRasterization-06761 
 IfconservativePointAndLineRasterizationis not supported, the pipeline requires pre-rasterization shader state, and the pipeline includes a mesh shader with either theOutputPointsorOutputLinesNVexecution modes, VkPipelineRasterizationConservativeStateCreateInfoEXT::conservativeRasterizationModemust beVK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-06894 
 If the pipeline requires pre-rasterization shader state but not fragment shader state, elements ofpStagesmust not havestageset toVK_SHADER_STAGE_FRAGMENT_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-06895 
 If the pipeline requires fragment shader state but not pre-rasterization shader state, elements ofpStagesmust not havestageset to a shader stage which participates in pre-rasterization
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-06896 
 If the pipeline requires pre-rasterization shader state, all elements ofpStagesmust have astageset to a shader stage which participates in fragment shader state or pre-rasterization shader state
- 
VUID-VkGraphicsPipelineCreateInfo-stage-06897 
 If the pipeline requires fragment shader state and/or pre-rasterization shader state, any value ofstagemust not be set in more than one element ofpStages
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3TessellationDomainOrigin-07370 
 If theextendedDynamicState3TessellationDomainOriginfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3DepthClampEnable-07371 
 If theextendedDynamicState3DepthClampEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3PolygonMode-07372 
 If theextendedDynamicState3PolygonModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_POLYGON_MODE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3RasterizationSamples-07373 
 If theextendedDynamicState3RasterizationSamplesfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3SampleMask-07374 
 If theextendedDynamicState3SampleMaskfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_SAMPLE_MASK_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3AlphaToCoverageEnable-07375 
 If theextendedDynamicState3AlphaToCoverageEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3AlphaToOneEnable-07376 
 If theextendedDynamicState3AlphaToOneEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3LogicOpEnable-07377 
 If theextendedDynamicState3LogicOpEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ColorBlendEnable-07378 
 If theextendedDynamicState3ColorBlendEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ColorBlendEquation-07379 
 If theextendedDynamicState3ColorBlendEquationfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ColorWriteMask-07380 
 If theextendedDynamicState3ColorWriteMaskfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3RasterizationStream-07381 
 If theextendedDynamicState3RasterizationStreamfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ConservativeRasterizationMode-07382 
 If theextendedDynamicState3ConservativeRasterizationModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ExtraPrimitiveOverestimationSize-07383 
 If theextendedDynamicState3ExtraPrimitiveOverestimationSizefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-09639 
 If the pipeline requires pre-rasterization shader state,pDynamicStateincludesVK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT, andpDynamicStatedoes not includeVK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT,pRasterizationStatemust include a VkPipelineRasterizationConservativeStateCreateInfoEXT in itspNextchain
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3DepthClipEnable-07384 
 If theextendedDynamicState3DepthClipEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3SampleLocationsEnable-07385 
 If theextendedDynamicState3SampleLocationsEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ColorBlendAdvanced-07386 
 If theextendedDynamicState3ColorBlendAdvancedfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ProvokingVertexMode-07387 
 If theextendedDynamicState3ProvokingVertexModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3LineRasterizationMode-07388 
 If theextendedDynamicState3LineRasterizationModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3LineStippleEnable-07389 
 If theextendedDynamicState3LineStippleEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3DepthClipNegativeOneToOne-07390 
 If theextendedDynamicState3DepthClipNegativeOneToOnefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ViewportWScalingEnable-07391 
 If theextendedDynamicState3ViewportWScalingEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ViewportSwizzle-07392 
 If theextendedDynamicState3ViewportSwizzlefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageToColorEnable-07393 
 If theextendedDynamicState3CoverageToColorEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageToColorLocation-07394 
 If theextendedDynamicState3CoverageToColorLocationfeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageModulationMode-07395 
 If theextendedDynamicState3CoverageModulationModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageModulationTableEnable-07396 
 If theextendedDynamicState3CoverageModulationTableEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageModulationTable-07397 
 If theextendedDynamicState3CoverageModulationTablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3CoverageReductionMode-07398 
 If theextendedDynamicState3CoverageReductionModefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3RepresentativeFragmentTestEnable-07399 
 If theextendedDynamicState3RepresentativeFragmentTestEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-extendedDynamicState3ShadingRateImageEnable-07400 
 If theextendedDynamicState3ShadingRateImageEnablefeature is not enabled, there must be no element of thepDynamicStatesmember ofpDynamicStateset toVK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07401 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT
- 
VUID-VkGraphicsPipelineCreateInfo-flags-07997 
 flagsmust not includeVK_PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07730 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_VIEWPORTorVK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT, and if themultiviewPerViewViewportsfeature is enabled, then the index of the most significant bit in each element of VkRenderPassMultiviewCreateInfo::pViewMasksmust be less thanpViewportState->viewportCount
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicStates-07731 
 If the pipeline requires pre-rasterization shader state, and no element of thepDynamicStatesmember ofpDynamicStateisVK_DYNAMIC_STATE_SCISSORorVK_DYNAMIC_STATE_SCISSOR_WITH_COUNT, and if themultiviewPerViewViewportsfeature is enabled, then the index of the most significant bit in each element of VkRenderPassMultiviewCreateInfo::pViewMasksmust be less thanpViewportState->scissorCount
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-08711 
 IfpStagesincludes a fragment shader stage,VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLEis not set in VkPipelineDynamicStateCreateInfo::pDynamicStates, and the fragment shader declares theEarlyFragmentTestsexecution mode and usesOpDepthAttachmentReadEXT, thedepthWriteEnablemember of VkPipelineDepthStencilStateCreateInfo must beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-pStages-08712 
 IfpStagesincludes a fragment shader stage,VK_DYNAMIC_STATE_STENCIL_WRITE_MASKis not set in VkPipelineDynamicStateCreateInfo::pDynamicStates, and the fragment shader declares theEarlyFragmentTestsexecution mode and usesOpStencilAttachmentReadEXT, the value of VkStencilOpState::writeMaskfor bothfrontandbackin VkPipelineDepthStencilStateCreateInfo must be0
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-08744 
 IfrenderPassis VK_NULL_HANDLE, the pipeline requires fragment output state or fragment shader state, the pipeline enables sample shading,rasterizationSamplesis not dynamic, and thepNextchain includes a VkPipelineRenderingCreateInfo structure,rasterizationSamplesmust be a valid VkSampleCountFlagBits value that is set inimageCreateSampleCounts(as defined in Image Creation Limits) for every element ofdepthAttachmentFormat,stencilAttachmentFormatand thepColorAttachmentFormatsarray which is notVK_FORMAT_UNDEFINED
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08897 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT, pre-rasterization shader state is specified either in a library or by the inclusion ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, and that state includes a vertex shader stage inpStages, the pipeline must define vertex input state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08898 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT, and pre-rasterization shader state is not specified, the pipeline must define vertex input state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08899 
 Ifflagsdoes not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR, pre-rasterization shader state is specified either in a library or by the inclusion ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, and that state includes a vertex shader stage inpStages, the pipeline must either define vertex input state or include that state in a linked pipeline library
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08900 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXTthe pipeline must define pre-rasterization shader state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08901 
 Ifflagsdoes not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR, the pipeline must either define pre-rasterization shader state or include that state in a linked pipeline library
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08903 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, pre-rasterization shader state is specified either in a library or by the inclusion ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, and that state either includesVK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLEor haspRasterizationState->rasterizerDiscardEnableset toVK_FALSE, the pipeline must define fragment shader state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08904 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and pre-rasterization shader state is not specified, the pipeline must define fragment shader state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08906 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, pre-rasterization shader state is specified either in a library or by the inclusion ofVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT, and that state either includesVK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLEor haspRasterizationState->rasterizerDiscardEnableset toVK_FALSE, the pipeline must define fragment output interface state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08907 
 If VkGraphicsPipelineLibraryCreateInfoEXT::flagsincludesVK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, and pre-rasterization shader state is not specified, the pipeline must define fragment output interface state
- 
VUID-VkGraphicsPipelineCreateInfo-flags-08909 
 Ifflagsdoes not includeVK_PIPELINE_CREATE_LIBRARY_BIT_KHR, pre-rasterization shader state is specified either in a library or by the inclusion ofVK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, and that state either includesVK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLEor haspRasterizationState->rasterizerDiscardEnableset toVK_FALSE, the pipeline must define fragment output interface state and fragment shader state or include those states in linked pipeline libraries
- 
VUID-VkGraphicsPipelineCreateInfo-None-09043 
 IfpDynamicState->pDynamicStatesdoes not includeVK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT, and the format of any color attachment isVK_FORMAT_E5B9G9R9_UFLOAT_PACK32, thecolorWriteMaskmember of the corresponding element ofpColorBlendState->pAttachmentsmust either include all ofVK_COLOR_COMPONENT_R_BIT,VK_COLOR_COMPONENT_G_BIT, andVK_COLOR_COMPONENT_B_BIT, or none of them
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09301 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, VkPipelineRenderingCreateInfo::viewMaskmust be0
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09304 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, VkExternalFormatANDROID::externalFormatis not0, andrasterizationSamplesis not dynamic, VkPipelineMultisampleStateCreateInfo::rasterizationSamplesmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09305 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, andblendEnableis not dynamic, theblendEnablemember of each element ofpColorBlendState->pAttachmentsmust beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09306 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, andpDynamicState->pDynamicStatesdoes not includeVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09307 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, andpDynamicState->pDynamicStatesdoes not includeVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09308 
 If theexternalFormatResolvefeature is enabled, the pipeline requires pre-rasterization shader state and fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, the last pre-rasterization shader stage must not statically use a variable with thePrimitiveShadingRateKHRbuilt-in
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09309 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, VkPipelineRenderingCreateInfo::colorAttachmentCountmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09310 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment shader state and fragment output interface state,renderPassis VK_NULL_HANDLE, and VkExternalFormatANDROID::externalFormatis not0, the fragment shader must not declare theDepthReplacingorStencilRefReplacingEXTexecution modes
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09313 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis not VK_NULL_HANDLE,subpassincludes an external format resolve attachment, andrasterizationSamplesis not dynamic, VkPipelineMultisampleStateCreateInfo::rasterizationSamplesmust beVK_SAMPLE_COUNT_1_BIT
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09314 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis not VK_NULL_HANDLE,subpassincludes an external format resolve attachment, andblendEnableis not dynamic, theblendEnablemember of each element ofpColorBlendState->pAttachmentsmust beVK_FALSE
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09315 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis not VK_NULL_HANDLE,subpassincludes an external format resolve attachment, andpDynamicState->pDynamicStatesdoes not includeVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.widthmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09316 
 If theexternalFormatResolvefeature is enabled, the pipeline requires fragment output interface state,renderPassis not VK_NULL_HANDLE,subpassincludes an external format resolve attachment, andpDynamicState->pDynamicStatesdoes not includeVK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR, VkPipelineFragmentShadingRateStateCreateInfoKHR::fragmentSize.heightmust be1
- 
VUID-VkGraphicsPipelineCreateInfo-externalFormatResolve-09317 
 If theexternalFormatResolvefeature is enabled, the pipeline requires pre-rasterization shader state and fragment output interface state,renderPassis not VK_NULL_HANDLE, andsubpassincludes an external format resolve attachment, the last pre-rasterization shader stage must not statically use a variable with thePrimitiveShadingRateKHRbuilt-in
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09531 
 If the pipeline is being created with fragment shader state and fragment output state, the value ofrenderPassis VK_NULL_HANDLE, and VkRenderingInputAttachmentIndexInfo is included, VkRenderingInputAttachmentIndexInfo::colorAttachmentCountmust be equal to VkPipelineRenderingCreateInfo::colorAttachmentCount
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09652 
 If the pipeline is being created with fragment shader state and fragment output state, the value ofrenderPassis VK_NULL_HANDLE, and VkRenderingInputAttachmentIndexInfo is not included, the fragment shader must not contain any input attachments with aInputAttachmentIndexgreater than or equal to VkPipelineRenderingCreateInfo::colorAttachmentCount
- 
VUID-VkGraphicsPipelineCreateInfo-renderPass-09532 
 If the pipeline is being created with fragment output state, and the value ofrenderPassis VK_NULL_HANDLE, VkRenderingAttachmentLocationInfo::colorAttachmentCountmust be equal to VkPipelineRenderingCreateInfo::colorAttachmentCount
- 
VUID-VkGraphicsPipelineCreateInfo-sType-sType 
 sTypemust beVK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO
- 
VUID-VkGraphicsPipelineCreateInfo-pNext-pNext 
 EachpNextmember of any structure (including this one) in thepNextchain must be eitherNULLor a pointer to a valid instance of VkAttachmentSampleCountInfoAMD, VkExternalFormatANDROID, VkGraphicsPipelineLibraryCreateInfoEXT, VkGraphicsPipelineShaderGroupsCreateInfoNV, VkMultiviewPerViewAttributesInfoNVX, VkPipelineBinaryInfoKHR, VkPipelineCompilerControlCreateInfoAMD, VkPipelineCreateFlags2CreateInfo, VkPipelineCreationFeedbackCreateInfo, VkPipelineDiscardRectangleStateCreateInfoEXT, VkPipelineFragmentDensityMapLayeredCreateInfoVALVE, VkPipelineFragmentShadingRateEnumStateCreateInfoNV, VkPipelineFragmentShadingRateStateCreateInfoKHR, VkPipelineLibraryCreateInfoKHR, VkPipelineRenderingCreateInfo, VkPipelineRepresentativeFragmentTestStateCreateInfoNV, VkPipelineRobustnessCreateInfo, VkRenderingAttachmentLocationInfo, or VkRenderingInputAttachmentIndexInfo
- 
VUID-VkGraphicsPipelineCreateInfo-sType-unique 
 ThesTypevalue of each structure in thepNextchain must be unique
- 
VUID-VkGraphicsPipelineCreateInfo-pDynamicState-parameter 
 IfpDynamicStateis notNULL,pDynamicStatemust be a valid pointer to a valid VkPipelineDynamicStateCreateInfo structure
- 
VUID-VkGraphicsPipelineCreateInfo-commonparent 
 Each ofbasePipelineHandle,layout, andrenderPassthat are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice
See Also
VK_VERSION_1_0, VkPipeline, VkPipelineColorBlendStateCreateInfo, VkPipelineCreateFlags, VkPipelineDepthStencilStateCreateInfo, VkPipelineDynamicStateCreateInfo, VkPipelineInputAssemblyStateCreateInfo, VkPipelineLayout, VkPipelineMultisampleStateCreateInfo, VkPipelineRasterizationStateCreateInfo, VkPipelineShaderStageCreateInfo, VkPipelineTessellationStateCreateInfo, VkPipelineVertexInputStateCreateInfo, VkPipelineViewportStateCreateInfo, VkRenderPass, VkStructureType, vkCreateGraphicsPipelines
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.