VkPipeline usage


I wonder how big the setup of the VkPipeline is. You can set very much stuff there.
At the moment I’m testing much and I got a Question.

Is it correct to create for each “shader set” a new pipeline or is there a way to edit just one like I want at runtime?

I’m not sure if that’s the way to go.

I hope to get some answers

Thank you very much in advance!

Yes, that’s correct. Shader modules are part of the pipeline, so for different shader module configurations (or if want to use the same ones but with different specialization constants) you need different pipelines. If pipelines are similar you can create them using the derivatives flag and specifying a base pipeline to speedup creation.

One exception though is VK_NVX_device_generated_commands, but that one is obviously only available on NVIDIA GPUs.

Thank you very much :smiley: