diff --git a/projects/particle_simulation/shaders/comp1.spv b/projects/particle_simulation/shaders/comp1.spv deleted file mode 100644 index b07868be1fc5595cda5ebc37604ba185c6ac29a3..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/comp1.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/comp_space.spv b/projects/particle_simulation/shaders/comp_space.spv deleted file mode 100644 index 1064be63178218c2bae7ccb62ade34a281518a83..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/comp_space.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/comp_water.spv b/projects/particle_simulation/shaders/comp_water.spv deleted file mode 100644 index b07868be1fc5595cda5ebc37604ba185c6ac29a3..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/comp_water.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/compile.bat b/projects/particle_simulation/shaders/compile.bat deleted file mode 100644 index db5496e208e398ffed3a4cb6e072f089c6f9cafc..0000000000000000000000000000000000000000 --- a/projects/particle_simulation/shaders/compile.bat +++ /dev/null @@ -1,6 +0,0 @@ -%VULKAN_SDK%\Bin32\glslc.exe shader.vert -o vert.spv -%VULKAN_SDK%\Bin32\glslc.exe shader_water.frag -o frag_water.spv -%VULKAN_SDK%\Bin32\glslc.exe shader_water.comp -o comp_water.spv -%VULKAN_SDK%\Bin32\glslc.exe shader_space.frag -o frag_space.spv -%VULKAN_SDK%\Bin32\glslc.exe shader_space.comp -o comp_space.spv -pause \ No newline at end of file diff --git a/projects/particle_simulation/shaders/frag.spv b/projects/particle_simulation/shaders/frag.spv deleted file mode 100644 index 0ce71df61bc127c7d057d290b78871593ee4f78e..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/frag.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/frag_space.spv b/projects/particle_simulation/shaders/frag_space.spv deleted file mode 100644 index 8acf8a4295ba661f1b7a893d3c8dd508a4b168b6..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/frag_space.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/frag_water.spv b/projects/particle_simulation/shaders/frag_water.spv deleted file mode 100644 index 406e44df35757621d0688d37bd93cb83f5f04c24..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/frag_water.spv and /dev/null differ diff --git a/projects/particle_simulation/shaders/vert.spv b/projects/particle_simulation/shaders/vert.spv deleted file mode 100644 index e5a23d663612f70bbbafca156f9a49215dc2fd72..0000000000000000000000000000000000000000 Binary files a/projects/particle_simulation/shaders/vert.spv and /dev/null differ diff --git a/projects/particle_simulation/src/main.cpp b/projects/particle_simulation/src/main.cpp index 73e112da16f1767f9ca0d9222b3f7f36049e4eb1..91385c49636583dcfc1feeeded35b0d784454dd2 100644 --- a/projects/particle_simulation/src/main.cpp +++ b/projects/particle_simulation/src/main.cpp @@ -60,8 +60,11 @@ int main(int argc, const char **argv) { // use space or use water bool useSpace = true; + vkcv::shader::GLSLCompiler compiler; vkcv::ShaderProgram computeShaderProgram{}; - computeShaderProgram.addShader(vkcv::ShaderStage::COMPUTE, std::filesystem::path(useSpace? "shaders/comp_space.spv" : "shaders/comp_water.spv")); + compiler.compile(vkcv::ShaderStage::COMPUTE, useSpace ? "shaders/shader_space.comp" : "shaders/shader_water.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + computeShaderProgram.addShader(shaderStage, path); + }); vkcv::DescriptorSetHandle computeDescriptorSet = core.createDescriptorSet(computeShaderProgram.getReflectedDescriptors()[0]); @@ -74,8 +77,12 @@ int main(int argc, const char **argv) { const vkcv::VertexLayout computeLayout(computeBindings); vkcv::ShaderProgram particleShaderProgram{}; - particleShaderProgram.addShader(vkcv::ShaderStage::VERTEX, std::filesystem::path("shaders/vert.spv")); - particleShaderProgram.addShader(vkcv::ShaderStage::FRAGMENT, std::filesystem::path( useSpace? "shaders/frag_space.spv" : "shaders/frag_water.spv")); + compiler.compile(vkcv::ShaderStage::VERTEX, "shaders/shader.vert", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + particleShaderProgram.addShader(shaderStage, path); + }); + compiler.compile(vkcv::ShaderStage::FRAGMENT, useSpace ? "shaders/shader_space.frag" : "shaders/shader_water.frag", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { + particleShaderProgram.addShader(shaderStage, path); + }); vkcv::DescriptorSetHandle descriptorSet = core.createDescriptorSet( particleShaderProgram.getReflectedDescriptors()[0]); @@ -210,7 +217,6 @@ int main(int argc, const char **argv) { vkcv::Image colorBuffer = core.createImage(colorFormat, windowWidth, windowHeight, 1, false, true, true); vkcv::ShaderProgram tonemappingShader; - vkcv::shader::GLSLCompiler compiler; compiler.compile(vkcv::ShaderStage::COMPUTE, "shaders/tonemapping.comp", [&](vkcv::ShaderStage shaderStage, const std::filesystem::path& path) { tonemappingShader.addShader(shaderStage, path); });