We need a mechanism to compile HLSL/GLSL to SPIRV offline. This mechanism should be presented to the user in a way that is not project-specific. A solution should already assume that glslangValidator/shaderc and dxc are present due to the Vulkan SDK. The goal would not be to support all shaders in a first pass as this would be tedious. We only need to prove the concept on one or two shaders and to approve the macro and CMake flow
It is important that HLSL and GLSL shaders are linked under a common name so that switching between them at runtime is trivial
Acceptance Criteria:
Create a CMake macro to define the shader source and a combination of variants #657 may be used as a reference
Create a single example of this macro being used on a simple shader
Create a single example of this being used on a complex shader
We need a mechanism to compile HLSL/GLSL to SPIRV offline. This mechanism should be presented to the user in a way that is not project-specific. A solution should already assume that
glslangValidator
/shaderc
anddxc
are present due to the Vulkan SDK. The goal would not be to support all shaders in a first pass as this would be tedious. We only need to prove the concept on one or two shaders and to approve the macro and CMake flowIt is important that HLSL and GLSL shaders are linked under a common name so that switching between them at runtime is trivial
Acceptance Criteria: