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
typedef VkRenderingInfo VkRenderingInfoKHR;
Members
-
sType
is the type of 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 set to 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, writes to the corresponding location by a fragment are
discarded.
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.