I was recently learning the Vulkan API but just cannot understand what VK_SUBPASS_EXTERNAL
(assigned to VkSubpassDependency::srcSubpass
or VkSubpassDependency::dstSubpass
) means.
The official documentation states: "If srcSubpass is equal to VK_SUBPASS_EXTERNAL, the first synchronization scope includes commands that occur earlier in submission order than the vkCmdBeginRenderPass used to begin the render pass instance."
Does it imply that a subpass can depend on another subpass residing in other render passes? Or anything else?
VK_SUBPASS_EXTERNAL
means anything outside of a given render pass scope. When used for srcSubpass
it specifies anything that happened before the render pass. And when used for dstSubpass
it specifies anything that happens after the render pass.
Does it imply that a subpass can depend on another subpass residing in other render passes?
It means that synchronization mechanisms need to include operations that happen before or after the render pass. It may be another render pass, but it also may be some other operations, not necessarily render pass-related.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With