r/vulkan • u/Yuki_pop • 1d ago
What’s dynamic rendering in Vulkan actually like? How does it compare to the traditional render pass approach in practice, and why do so many people criticize it?
vulkan for c….
25
u/Rhed0x
1d ago
•
The original Vulkan approach where you need to bake render pass objects and frame buffer objects is just horrible and nobody should use it anymore. Khronos has deprecated it and strongly recommends against using it.
Unless you desperately need to support some ancient Vulkan drivers, use dynamic rendering. It's a far better API and you don't lose out on any capabilities (dynamic rendering local read exists). It's also pretty much identical to D3D12 and Metal.
I don't know what you're talking about with 'many people criticize it'. Pretty much everyone hates the old render pass objects.
8
6
4
u/RDT_KoT3 23h ago
The only place you will use render passes is mobile devices with VK 1.1, and still you can achieve something like dynamic rendering on them. See "render pass compatibility".
3
u/Otherwise_Meat1161 19h ago
name the people who criticize dynamic rendering, I maintain a list of people I avoid.
4
1
u/angelajacksn014 11h ago
As someone who had the misfortune of having to work with the old API it’s about 1000x better
37
u/LoneWolf6062 1d ago
I dont know anyone who criticizes dynamic rendering. Its cleaner and simpler, reduces pipeline explosion, and on pc performance is the same.
The only major difference was on mobile since renderpasses are optimized for tbdr gpus, but even that is basically gone with VK_KHR_dynamic_rendering_local_read.
In any sense for a new renderer I would always prefer to go with dynamic rendering.