VKCMDNEXTSUBPASS(3)

NAME
vkCmdNextSubpass - Transition to the next subpass of a render pass.

C SPECIFICATION

    void vkCmdNextSubpass(
        VkCommandBuffer                             commandBuffer,
        VkSubpassContents                           contents);

PARAMETERS

commandBuffer
    The command buffer in which to switch to the next subpass.

contents
    A description of how the commands for the next subpass will be issued.

DESCRIPTION

vkCmdNextSubpass finalizes the previous subpass of the current render pass and prepares for the next subpass. It may only be called in a primary command buffer when a render pass is active. For a render pass with N subpasses, vkCmdNextSubpass must be used exactly N-1 times between vkCmdBeginRenderPass and vkCmdEndRenderPass to transition through all of the subpasses.

The contents parameter describes how the commands in the next subpass will be provided. If it is VK_SUBPASS_CONTENTS_INLINE, the contents of the subpass will be recorded inline in the primary command buffer, and calling a secondary command buffer within the subpass is an error. If contents is VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS, the contents are recorded in secondary command buffers that will be called from the primary command buffer, and vkCmdExecuteCommands is the only valid command on the command buffer until vkCmdNextSubpass or vkCmdEndRenderPass.

Transitioning between subpasses performs any multisample resolve operations in the pass being ended, and transitions attachment images from their current layout to the layout required by the next subpass.

VALID USAGE

    • commandBuffer must be a valid VkCommandBuffer handle

    • contents must be a valid VkSubpassContents value

    • commandBuffer must be in the recording state

    • The VkCommandPool that commandBuffer was allocated from must support graphics operations

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

    • commandBuffer must be a primary VkCommandBuffer

    • The current subpass index must be less than the number of subpasses in the render pass minus one

HOST SYNCHRONIZATION

    • Host access to commandBuffer must be externally synchronized

COMMAND PROPERTIES
Command Buffer Levels | Render Pass Scope | Supported Queue Types
Primary | Inside | GRAPHICS

SEE ALSO

vkCmdEndRenderPass, vkCreateRenderPass

COPYRIGHT

Copyright © 2014-2016 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.

AUTHOR

Khronos Group
    Author.