vkCmdNextSubpass2
To transition to the next subpass in the render pass instance after recording the commands for a subpass, call:
void vkCmdNextSubpass2KHR(
VkCommandBuffer commandBuffer,
const VkSubpassBeginInfo* pSubpassBeginInfo,
const VkSubpassEndInfo* pSubpassEndInfo);
commandBuffer
is the command buffer in which to record the command.pSubpassBeginInfo
is a pointer to a VkSubpassBeginInfo structure containing information about the subpass which is about to begin rendering.pSubpassEndInfo
is a pointer to a VkSubpassEndInfo structure containing information about how the previous subpass will be ended.
vkCmdNextSubpass2
is semantically identical to vkCmdNextSubpass,
except that it is extensible, and that contents
is provided as part of
an extensible structure instead of as a flat parameter.
Valid Usage
VUID-vkCmdNextSubpass2-None-03102
The current subpass index must be less than the number of subpasses in the render pass minus one
VUID-vkCmdNextSubpass2-None-02350
This command must not be recorded when transform feedback is active
Valid Usage (Implicit)
VUID-vkCmdNextSubpass2-commandBuffer-parameter
commandBuffer
must be a valid VkCommandBuffer handle
VUID-vkCmdNextSubpass2-pSubpassBeginInfo-parameter
pSubpassBeginInfo
must be a valid pointer to a valid VkSubpassBeginInfo structure
VUID-vkCmdNextSubpass2-pSubpassEndInfo-parameter
pSubpassEndInfo
must be a valid pointer to a valid VkSubpassEndInfo structure
VUID-vkCmdNextSubpass2-commandBuffer-recording
commandBuffer
must be in the recording state
VUID-vkCmdNextSubpass2-commandBuffer-cmdpool
The VkCommandPool
that commandBuffer
was allocated from must support graphics operations
VUID-vkCmdNextSubpass2-renderpass
This command must only be called inside of a render pass instance
VUID-vkCmdNextSubpass2-videocoding
This command must only be called outside of a video coding scope
VUID-vkCmdNextSubpass2-bufferlevel
commandBuffer
must be a primary VkCommandBuffer
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized - Host access to the
VkCommandPool
thatcommandBuffer
was allocated from must be externally synchronized ::