KhronosGroup / Vulkan-Samples

One stop solution for all Vulkan samples
Apache License 2.0
4.33k stars 647 forks source link

[Shading language support] Remove shader variants and reflection for ARM framework samples #1107

Open SaschaWillems opened 3 months ago

SaschaWillems commented 3 months ago

The ARM framework currently uses a few shader variants and along with that reflection to map shader inputs to the C++ side of things. That is contrary to the api framework samples, where every sample uses it's own set of shaders and no runtime reflection-

This prevents us from adding support for offline compiled shaders and HLSL shader support to the ARM framework samples-

We should completely remove shader variants and replace them with explicit shaders per sample instead.

Examples are most of the shaders in the shader root directory, e.g.:

These should be moved to explicit per-sample folders and adjusted per sample so that we no longer need variants and runtime reflection.