C Specification
The VkRenderingInfo
structure is defined as:
// Provided by VK_VERSION_1_3
typedef struct VkRenderingInfo {
VkStructureType sType;
const void* pNext;
VkRenderingFlags flags;
VkRect2D renderArea;
uint32_t layerCount;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkRenderingAttachmentInfo* pColorAttachments;
const VkRenderingAttachmentInfo* pDepthAttachment;
const VkRenderingAttachmentInfo* pStencilAttachment;
} VkRenderingInfo;
or the equivalent
// Provided by VK_KHR_dynamic_rendering, VK_QCOM_tile_properties with VK_KHR_dynamic_rendering or VK_VERSION_1_3
typedef VkRenderingInfo VkRenderingInfoKHR;
Members
-
sType
is a VkStructureType value identifying this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
flags
is a bitmask of VkRenderingFlagBits. -
renderArea
is the render area that is affected by the render pass instance. -
layerCount
is the number of layers rendered to in each attachment whenviewMask
is0
. -
viewMask
is the view mask indicating the indices of attachment layers that will be rendered when it is not0
. -
colorAttachmentCount
is the number of elements inpColorAttachments
. -
pColorAttachments
is a pointer to an array ofcolorAttachmentCount
VkRenderingAttachmentInfo structures describing any color attachments used. -
pDepthAttachment
is a pointer to a VkRenderingAttachmentInfo structure describing a depth attachment. -
pStencilAttachment
is a pointer to a VkRenderingAttachmentInfo structure describing a stencil attachment.
Description
If viewMask
is not 0
, multiview is enabled.
If there is an instance of VkDeviceGroupRenderPassBeginInfo included
in the pNext
chain and its deviceRenderAreaCount
member is not
0
, then renderArea
is ignored, and the render area is defined
per-device by that structure.
If multiview is enabled, and the multiviewPerViewRenderAreas
feature is enabled, and there is an
instance of VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM
included in the pNext
chain with perViewRenderAreaCount
not
equal to 0
, then the elements of
VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM::pPerViewRenderAreas
override renderArea
and define a render area for each view.
In this case, renderArea
must be an area at least as large as the
union of all the per-view render areas.
Each element of the pColorAttachments
array corresponds to an output
location in the shader, i.e. if the shader declares an output variable
decorated with a Location
value of X, then it uses the attachment
provided in pColorAttachments
[X].
If the imageView
member of any element of pColorAttachments
is
VK_NULL_HANDLE,
and resolveMode
is not
VK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
,
writes to the corresponding location by a fragment are discarded.
-
VUID-VkRenderingInfo-viewMask-06069
IfviewMask
is0
,layerCount
must not be0
-
VUID-VkRenderingInfo-multisampledRenderToSingleSampled-06857
imageView
members ofpDepthAttachment
,pStencilAttachment
, and elements ofpColorAttachments
that are not VK_NULL_HANDLE must have been created with the samesampleCount
, if none of the following are enabled:-
The
VK_AMD_mixed_attachment_samples
extension -
The
VK_NV_framebuffer_mixed_samples
extension -
The
multisampledRenderToSingleSampled
feature,
-
-
VUID-VkRenderingInfo-imageView-09429
imageView
members of elements ofpColorAttachments
that are not VK_NULL_HANDLE must have been created with the samesampleCount
, if themultisampledRenderToSingleSampled
feature is not enabled -
VUID-VkRenderingInfo-None-08994
If VkDeviceGroupRenderPassBeginInfo::deviceRenderAreaCount
is 0,renderArea.extent.width
must be greater than 0 -
VUID-VkRenderingInfo-None-08995
If VkDeviceGroupRenderPassBeginInfo::deviceRenderAreaCount
is 0,renderArea.extent.height
must be greater than 0 -
VUID-VkRenderingInfo-imageView-06858
If multisampled-render-to-single-sampled is enabled, then all attachments referenced byimageView
members ofpDepthAttachment
,pStencilAttachment
, and elements ofpColorAttachments
that are not VK_NULL_HANDLE must have a sample count that is eitherVK_SAMPLE_COUNT_1_BIT
or equal to VkMultisampledRenderToSingleSampledInfoEXT::rasterizationSamples
-
VUID-VkRenderingInfo-imageView-06859
If multisampled-render-to-single-sampled is enabled, then all attachments referenced byimageView
members ofpDepthAttachment
,pStencilAttachment
, and elements ofpColorAttachments
that are not VK_NULL_HANDLE and have a sample count ofVK_SAMPLE_COUNT_1_BIT
must have been created withVK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT
in their VkImageCreateInfo::flags
-
VUID-VkRenderingInfo-pNext-06077
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0,renderArea.offset.x
must be greater than or equal to 0 -
VUID-VkRenderingInfo-pNext-06078
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0,renderArea.offset.y
must be greater than or equal to 0 -
VUID-VkRenderingInfo-pNext-07815
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0, the sum ofrenderArea.extent.width
andrenderArea.offset.x
must be less than or equal tomaxFramebufferWidth
-
VUID-VkRenderingInfo-pNext-07816
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0, the sum ofrenderArea.extent.height
andrenderArea.offset.y
must be less than or equal tomaxFramebufferHeight
-
VUID-VkRenderingInfo-pNext-06079
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0, the width of theimageView
member of any element ofpColorAttachments
,pDepthAttachment
, orpStencilAttachment
that is not VK_NULL_HANDLE must be greater than or equal torenderArea.offset.x
+renderArea.extent.width
-
VUID-VkRenderingInfo-pNext-06080
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0, the height of theimageView
member of any element ofpColorAttachments
,pDepthAttachment
, orpStencilAttachment
that is not VK_NULL_HANDLE must be greater than or equal torenderArea.offset.y
+renderArea.extent.height
-
VUID-VkRenderingInfo-pNext-06083
If thepNext
chain contains VkDeviceGroupRenderPassBeginInfo, the width of theimageView
member of any element ofpColorAttachments
,pDepthAttachment
, orpStencilAttachment
that is not VK_NULL_HANDLE must be greater than or equal to the sum of theoffset.x
andextent.width
members of each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-pNext-06084
If thepNext
chain contains VkDeviceGroupRenderPassBeginInfo, the height of theimageView
member of any element ofpColorAttachments
,pDepthAttachment
, orpStencilAttachment
that is not VK_NULL_HANDLE must be greater than or equal to the sum of theoffset.y
andextent.height
members of each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-pDepthAttachment-06085
If neitherpDepthAttachment
orpStencilAttachment
areNULL
and theimageView
member of either structure is not VK_NULL_HANDLE, theimageView
member of each structure must be the same -
VUID-VkRenderingInfo-pDepthAttachment-06086
If neitherpDepthAttachment
orpStencilAttachment
areNULL
, and theresolveMode
member of each is notVK_RESOLVE_MODE_NONE
, theresolveImageView
member of each structure must be the same -
VUID-VkRenderingInfo-colorAttachmentCount-06087
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, thatimageView
must have been created withVK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-colorAttachmentCount-09476
IfcolorAttachmentCount
is not0
and there is an element ofpColorAttachments
with either itsresolveMode
member set toVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
, or itsimageView
member not VK_NULL_HANDLE, and itsresolveMode
member not set toVK_RESOLVE_MODE_NONE
, theresolveImageView
member of that element ofpColorAttachments
must have been created withVK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-pDepthAttachment-06547
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->imageView
must have been created with a format that includes a depth component -
VUID-VkRenderingInfo-pDepthAttachment-06088
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->imageView
must have been created withVK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-pDepthAttachment-09477
IfpDepthAttachment
is notNULL
andpDepthAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pDepthAttachment->resolveImageView
must have been created withVK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-pStencilAttachment-06548
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->imageView
must have been created with a format that includes a stencil aspect -
VUID-VkRenderingInfo-pStencilAttachment-06089
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->imageView
must have been created with a stencil usage includingVK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-pStencilAttachment-09478
IfpStencilAttachment
is notNULL
andpStencilAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pStencilAttachment->resolveImageView
must have been created withVK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
-
VUID-VkRenderingInfo-colorAttachmentCount-06090
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, thelayout
member of that element ofpColorAttachments
must not beVK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-colorAttachmentCount-06091
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, if theresolveMode
member of that element ofpColorAttachments
is notVK_RESOLVE_MODE_NONE
, itsresolveImageLayout
member must not beVK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-06092
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->layout
must not beVK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-06093
IfpDepthAttachment
is notNULL
,pDepthAttachment->imageView
is not VK_NULL_HANDLE, andpDepthAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pDepthAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-
VUID-VkRenderingInfo-pStencilAttachment-06094
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->layout
must not beVK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-
VUID-VkRenderingInfo-pStencilAttachment-06095
IfpStencilAttachment
is notNULL
,pStencilAttachment->imageView
is not VK_NULL_HANDLE, andpStencilAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pStencilAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
-
VUID-VkRenderingInfo-colorAttachmentCount-06096
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, thelayout
member of that element ofpColorAttachments
must not beVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-colorAttachmentCount-06097
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, if theresolveMode
member of that element ofpColorAttachments
is notVK_RESOLVE_MODE_NONE
, itsresolveImageLayout
member must not beVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-06098
IfpDepthAttachment
is notNULL
,pDepthAttachment->imageView
is not VK_NULL_HANDLE, andpDepthAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pDepthAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
-
VUID-VkRenderingInfo-pStencilAttachment-06099
IfpStencilAttachment
is notNULL
,pStencilAttachment->imageView
is not VK_NULL_HANDLE, andpStencilAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pStencilAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-colorAttachmentCount-06100
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, thelayout
member of that element ofpColorAttachments
must not beVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
,VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
,VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
, orVK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-colorAttachmentCount-06101
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, if theresolveMode
member of that element ofpColorAttachments
is notVK_RESOLVE_MODE_NONE
, itsresolveImageLayout
member must not beVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
,VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
,VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
, orVK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-07732
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->layout
must not beVK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-07733
IfpDepthAttachment
is notNULL
,pDepthAttachment->imageView
is not VK_NULL_HANDLE, andpDepthAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pDepthAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pStencilAttachment-07734
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->layout
must not beVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pStencilAttachment-07735
IfpStencilAttachment
is notNULL
,pStencilAttachment->imageView
is not VK_NULL_HANDLE, andpStencilAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pStencilAttachment->resolveImageLayout
must not beVK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL
orVK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL
-
VUID-VkRenderingInfo-pDepthAttachment-06102
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->resolveMode
must be one of the bits set in VkPhysicalDeviceDepthStencilResolveProperties::supportedDepthResolveModes
-
VUID-VkRenderingInfo-pStencilAttachment-06103
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->resolveMode
must be one of the bits set in VkPhysicalDeviceDepthStencilResolveProperties::supportedStencilResolveModes
-
VUID-VkRenderingInfo-pDepthAttachment-06104
IfpDepthAttachment
orpStencilAttachment
are both notNULL
,pDepthAttachment->imageView
andpStencilAttachment->imageView
are both not VK_NULL_HANDLE, and VkPhysicalDeviceDepthStencilResolveProperties::independentResolveNone
isVK_FALSE
, theresolveMode
of both structures must be the same value -
VUID-VkRenderingInfo-pDepthAttachment-06105
IfpDepthAttachment
orpStencilAttachment
are both notNULL
,pDepthAttachment->imageView
andpStencilAttachment->imageView
are both not VK_NULL_HANDLE, VkPhysicalDeviceDepthStencilResolveProperties::independentResolve
isVK_FALSE
, and theresolveMode
of neither structure isVK_RESOLVE_MODE_NONE
, theresolveMode
of both structures must be the same value -
VUID-VkRenderingInfo-colorAttachmentCount-06106
colorAttachmentCount
must be less than or equal to VkPhysicalDeviceLimits::maxColorAttachments
-
VUID-VkRenderingInfo-imageView-06107
If theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE, and thefragmentDensityMapNonSubsampledImages
feature is not enabled, validimageView
andresolveImageView
members ofpDepthAttachment
,pStencilAttachment
, and each element ofpColorAttachments
must be a VkImageView created withVK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT
-
VUID-VkRenderingInfo-imageView-06108
If theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE, andviewMask
is not0
,imageView
must have alayerCount
greater than or equal to the index of the most significant bit inviewMask
-
VUID-VkRenderingInfo-imageView-06109
If theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE, andviewMask
is0
,imageView
must have alayerCount
equal to1
-
VUID-VkRenderingInfo-pNext-06112
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0 and theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a width greater than or equal to ⌈maxFragmentDensityTexelSizewidthrenderAreax+renderAreawidth⌉ -
VUID-VkRenderingInfo-pNext-06114
If thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0 and theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a height greater than or equal to ⌈maxFragmentDensityTexelSizeheightrenderAreay+renderAreaheight⌉ -
VUID-VkRenderingInfo-pNext-06113
If thepNext
chain contains a VkDeviceGroupRenderPassBeginInfo structure, itsdeviceRenderAreaCount
member is not 0, and theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a width greater than or equal to ⌈maxFragmentDensityTexelSizewidthpDeviceRenderAreasx+pDeviceRenderAreaswidth⌉ for each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-pNext-06115
If thepNext
chain contains a VkDeviceGroupRenderPassBeginInfo structure, itsdeviceRenderAreaCount
member is not 0, and theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a height greater than or equal to ⌈maxFragmentDensityTexelSizeheightpDeviceRenderAreasy+pDeviceRenderAreasheight⌉ for each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-imageView-06116
If theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE, it must not be equal to theimageView
orresolveImageView
member ofpDepthAttachment
,pStencilAttachment
, or any element ofpColorAttachments
-
VUID-VkRenderingInfo-pNext-06119
Ifmaintenance7
is not enabled or therobustFragmentShadingRateAttachmentAccess
limit isVK_FALSE
or theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure was created with VkImageSubresourceRange::baseMipLevel
greater than 0, thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0, and theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a width greater than or equal to ⌈shadingRateAttachmentTexelSizewidthrenderAreax+renderAreawidth⌉ -
VUID-VkRenderingInfo-pNext-06121
Ifmaintenance7
is not enabled or therobustFragmentShadingRateAttachmentAccess
limit isVK_FALSE
or theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure was created with VkImageSubresourceRange::baseMipLevel
greater than 0, thepNext
chain does not contain VkDeviceGroupRenderPassBeginInfo or itsdeviceRenderAreaCount
member is equal to 0 and theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a height greater than or equal to ⌈shadingRateAttachmentTexelSizeheightrenderAreay+renderAreaheight⌉ -
VUID-VkRenderingInfo-pNext-06120
Ifmaintenance7
is not enabled or therobustFragmentShadingRateAttachmentAccess
limit isVK_FALSE
or theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure was created with VkImageSubresourceRange::baseMipLevel
greater than 0, thepNext
chain contains a VkDeviceGroupRenderPassBeginInfo structure, itsdeviceRenderAreaCount
member is not 0, and theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a width greater than or equal to ⌈shadingRateAttachmentTexelSizewidthpDeviceRenderAreasx+pDeviceRenderAreaswidth⌉ for each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-pNext-06122
Ifmaintenance7
is not enabled or therobustFragmentShadingRateAttachmentAccess
limit isVK_FALSE
or theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure was created with VkImageSubresourceRange::baseMipLevel
greater than 0, thepNext
chain contains a VkDeviceGroupRenderPassBeginInfo structure, itsdeviceRenderAreaCount
member is not 0, and theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE,imageView
must have a height greater than or equal to ⌈shadingRateAttachmentTexelSizeheightpDeviceRenderAreasy+pDeviceRenderAreasheight⌉ for each element ofpDeviceRenderAreas
-
VUID-VkRenderingInfo-layerCount-07817
layerCount
must be less than or equal tomaxFramebufferLayers
-
VUID-VkRenderingInfo-imageView-06123
If theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE, andviewMask
is0
,imageView
must have alayerCount
that is either equal to1
or greater than or equal tolayerCount
-
VUID-VkRenderingInfo-imageView-06124
If theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE, andviewMask
is not0
,imageView
must have alayerCount
that either equal to1
or greater than or equal to the index of the most significant bit inviewMask
-
VUID-VkRenderingInfo-imageView-06125
If theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE, it must not be equal to theimageView
orresolveImageView
member ofpDepthAttachment
,pStencilAttachment
, or any element ofpColorAttachments
-
VUID-VkRenderingInfo-imageView-06126
If theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE, it must not be equal to theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain -
VUID-VkRenderingInfo-multiview-06127
If themultiview
feature is not enabled,viewMask
must be0
-
VUID-VkRenderingInfo-viewMask-06128
The index of the most significant bit inviewMask
must be less thanmaxMultiviewViewCount
-
VUID-VkRenderingInfo-perViewRenderAreaCount-07857
If theperViewRenderAreaCount
member of a VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM structure included in thepNext
chain is not0
, then themultiviewPerViewRenderAreas
feature must be enabled -
VUID-VkRenderingInfo-perViewRenderAreaCount-07858
If theperViewRenderAreaCount
member of a VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM structure included in thepNext
chain is not0
, thenrenderArea
must specify a render area that includes the union of all per view render areas -
VUID-VkRenderingInfo-None-09044
Valid attachments specified by this structure must not be bound to memory locations that are bound to any other valid attachments specified by this structure -
VUID-VkRenderingInfo-flags-10012
Ifflags
includesVK_RENDERING_CONTENTS_INLINE_BIT_KHR
then at least one of the following features must be enabled -
VUID-VkRenderingInfo-pDepthAttachment-09318
pDepthAttachment->resolveMode
must not beVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
-
VUID-VkRenderingInfo-pStencilAttachment-09319
pStencilAttachment->resolveMode
must not beVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
-
VUID-VkRenderingInfo-colorAttachmentCount-09320
IfcolorAttachmentCount
is not1
, theresolveMode
member of any element ofpColorAttachments
must not beVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
-
VUID-VkRenderingInfo-resolveMode-09321
If theresolveMode
of any element ofpColorAttachments
isVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
, VkRenderingFragmentDensityMapAttachmentInfoEXT::imageView
must be VK_NULL_HANDLE -
VUID-VkRenderingInfo-resolveMode-09322
If theresolveMode
of any element ofpColorAttachments
isVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
, VkRenderingFragmentShadingRateAttachmentInfoKHR::imageView
must be VK_NULL_HANDLE -
VUID-VkRenderingInfo-pNext-09535
If thepNext
chain contains a VkRenderPassStripeBeginInfoARM structure, the union of stripe areas defined by the elements of VkRenderPassStripeInfoARM::pStripeInfos
must cover therenderArea
-
VUID-VkRenderingInfo-colorAttachmentCount-09479
IfcolorAttachmentCount
is not0
and theimageView
member of an element ofpColorAttachments
is not VK_NULL_HANDLE, thatimageView
must have been created with the identity swizzle -
VUID-VkRenderingInfo-colorAttachmentCount-09480
IfcolorAttachmentCount
is not0
, and there is an element ofpColorAttachments
with either itsresolveMode
member set toVK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID
, or itsimageView
member not set to VK_NULL_HANDLE and itsresolveMode
member not set toVK_RESOLVE_MODE_NONE
, theresolveImageView
member of that element ofpColorAttachments
must have been created with the identity swizzle -
VUID-VkRenderingInfo-pDepthAttachment-09481
IfpDepthAttachment
is notNULL
andpDepthAttachment->imageView
is not VK_NULL_HANDLE,pDepthAttachment->imageView
must have been created with the identity swizzle -
VUID-VkRenderingInfo-pDepthAttachment-09482
IfpDepthAttachment
is notNULL
,pDepthAttachment->imageView
is not VK_NULL_HANDLE, andpDepthAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pDepthAttachment->resolveImageView
must have been created with the identity swizzle -
VUID-VkRenderingInfo-pStencilAttachment-09483
IfpStencilAttachment
is notNULL
andpStencilAttachment->imageView
is not VK_NULL_HANDLE,pStencilAttachment->imageView
must have been created with the identity swizzle -
VUID-VkRenderingInfo-pStencilAttachment-09484
IfpStencilAttachment
is notNULL
,pStencilAttachment->imageView
is not VK_NULL_HANDLE, andpStencilAttachment->resolveMode
is notVK_RESOLVE_MODE_NONE
,pStencilAttachment->resolveImageView
must have been created with the identity swizzle -
VUID-VkRenderingInfo-imageView-09485
If theimageView
member of a VkRenderingFragmentShadingRateAttachmentInfoKHR structure included in thepNext
chain is not VK_NULL_HANDLE, it must have been created with the identity swizzle -
VUID-VkRenderingInfo-imageView-09486
If theimageView
member of a VkRenderingFragmentDensityMapAttachmentInfoEXT structure included in thepNext
chain is not VK_NULL_HANDLE, it must have been created with the identity swizzle
-
VUID-VkRenderingInfo-sType-sType
sType
must beVK_STRUCTURE_TYPE_RENDERING_INFO
-
VUID-VkRenderingInfo-pNext-pNext
EachpNext
member of any structure (including this one) in thepNext
chain must be eitherNULL
or a pointer to a valid instance of VkDeviceGroupRenderPassBeginInfo, VkMultisampledRenderToSingleSampledInfoEXT, VkMultiviewPerViewAttributesInfoNVX, VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM, VkRenderPassStripeBeginInfoARM, VkRenderingFragmentDensityMapAttachmentInfoEXT, or VkRenderingFragmentShadingRateAttachmentInfoKHR -
VUID-VkRenderingInfo-sType-unique
ThesType
value of each struct in thepNext
chain must be unique -
VUID-VkRenderingInfo-flags-parameter
flags
must be a valid combination of VkRenderingFlagBits values -
VUID-VkRenderingInfo-pColorAttachments-parameter
IfcolorAttachmentCount
is not0
,pColorAttachments
must be a valid pointer to an array ofcolorAttachmentCount
valid VkRenderingAttachmentInfo structures -
VUID-VkRenderingInfo-pDepthAttachment-parameter
IfpDepthAttachment
is notNULL
,pDepthAttachment
must be a valid pointer to a valid VkRenderingAttachmentInfo structure -
VUID-VkRenderingInfo-pStencilAttachment-parameter
IfpStencilAttachment
is notNULL
,pStencilAttachment
must be a valid pointer to a valid VkRenderingAttachmentInfo structure
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.