cmdEndRendering2KHR :: (Extendss RenderingEndInfoKHR a, PokeChain a, MonadIO io)=> CommandBuffercommandBufferis the command buffer in which to record the command.->"renderingEndInfo"
::: Maybe (RenderingEndInfoKHR a)pRenderingEndInfoisNULLor a pointer to a RenderingEndInfoKHR structure containing information about how the render pass will be ended.-> io ()
vkCmdEndRendering2KHR - End a dynamic render pass instance
Description
If the value of pRenderingInfo->flags used to begin this render pass
instance included
RENDERING_SUSPENDING_BIT, then
this render pass is suspended and will be resumed later in
submission order.
There is no implicit ordering between separate render passes, even in the same command buffer, and even when the attachments match. Some applications rely on the continuation of rasterization order between multiple render passes with attachments defined in the same way, in order to perform non-rendering operations (such as copies or compute operations) between draw calls, but this has never been required by the specification. There is also no explicit barrier currently in the API that provides the guarantee that applications rely on without additional performance penalties.
New applications should avoid relying on this ordering until an appropriate barrier is added to the API.
Implementations where applications are performing this splitting are encouraged to continue supporting this guarantee until a suitable barrier is added to the API.
Existing applications relying on this ordering should expect that it will continue working on platforms where it currently does. Once a new extension adds support for a new barrier, developers are encouraged to adapt their applications to use this when available.
Valid Usage
The current render pass instance must have been begun with cmdBeginRendering
The current render pass instance must have been begun in
commandBufferThis command must not be recorded when transform feedback is active
If cmdBeginQuery* was called within the render pass, the corresponding cmdEndQuery* must have been called subsequently within the same subpass
Valid Usage (Implicit)
commandBuffermust be a valid CommandBuffer handle
If
pRenderingEndInfois notNULL,pRenderingEndInfomust be a valid pointer to a valid RenderingEndInfoKHR structurecommandBuffermust be in the recording stateThe CommandPool that
commandBufferwas allocated from must support QUEUE_GRAPHICS_BIT operationsThis command must only be called inside of a render pass instance
This command must not be called between suspended render pass instances
This command must only be called outside of a video coding scope
Host Synchronization
Host access to
commandBuffermust be externally synchronized
Host access to the CommandPool that
commandBufferwas allocated from must be externally synchronized
Command Properties
'
Primary Secondary | Inside | Outside | VK_QUEUE_GRAPHICS_BIT | Action State |
Conditional Rendering
vkCmdEndRendering2KHR is not affected by conditional rendering
See Also
VK_EXT_fragment_density_map_offset, VK_KHR_maintenance10, CommandBuffer, RenderingEndInfoKHR