Advertisement Jump to content
Sign in to follow this  

Vulkan [Vulkan] Render Pass and Command Buffer granularity

This topic is 966 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey all,


I'm reading up on render passes, which seem like a powerful concept to clue the driver into the exact path of your render pipeline. In the spec they explain that the driver can react to ordering constraints to insert transition barriers.


Something I'm confused about is how render passes relate to command lists and command list submission.


For one, render passes form a DAG. Do I still have to submit command lists in dependency sorted order with respect to render passes? I would expect so, but I wasn't able to find any specific details on that.


Secondly, what's the granularity of a command list to a render pass? Can a command list span several render passes? (through multiple begin / end blocks)? Can a render pass be composed of several command lists (and if so, does each one inherit the begin / end state from the previously submitted list)?


If you understand the details of this I would to get your input.



Share this post

Link to post
Share on other sites
I don't understand your first question.

A command buffer can use several render pass. You can use a single command buffer to draw a whole frame, which involve multiple passes (because of Shadow map, post processing on quarter size frame buffer...)

AFAIK a render pass can't span over several command buffer. A command buffer state is undefined when it is "started", bindings are not carried over.
One exception though:you can execute separate secondary command buffer inside a subpass. You need to inform the command buffer begin command about this however.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!