Function Prototype

vkCmdEndRendering

End a dynamic render pass instance

To end a render pass instance, call:

void vkCmdEndRenderingKHR(
    VkCommandBuffer                   commandBuffer);
  • commandBuffer is the command buffer in which to record the command.

If the value of pRenderingInfo→flags used to begin this render pass instance included VK_RENDERING_SUSPENDING_BIT, then this render pass is suspended and will be resumed later in submission order.

Valid Usage

VUID-vkCmdEndRendering-None-06161

The current render pass instance must have been begun with vkCmdBeginRendering

VUID-vkCmdEndRendering-commandBuffer-06162

The current render pass instance must have been begun in commandBuffer

VUID-vkCmdEndRendering-None-06781

This command must not be recorded when transform feedback is active

VUID-vkCmdEndRendering-None-06999

If vkCmdBeginQuery* was called within the render pass, the corresponding vkCmdEndQuery* must have been called subsequently within the same subpass

Valid Usage (Implicit)

VUID-vkCmdEndRendering-commandBuffer-cmdpool

The VkCommandPool that commandBuffer was allocated from must support graphics operations

VUID-vkCmdEndRendering-renderpass

This command must only be called inside of a render pass instance

VUID-vkCmdEndRendering-videocoding

This command must only be called outside of a video coding scope

Host Synchronization

  • Host access to commandBuffer must be externally synchronized
  • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized ::