Shader editor made using Vulkan
which supports both GLSL
and HLSL
shaders. It supports only screen space shaders, similar to ShaderToy
. Project is written for the C++11
standard and x64
system. Currently the code is tested only on Windows
, using MSVC
(Visual Studio) compiler. Linux
and Mac
are not completely supported at the moment, but it should be easy to port, since all third party libraries are cross platform.
- Rendering backend written using
Vulkan 1.0
- GUI mostly written using Dear ImGui
- Window handling using GLFW
GLSL
andHLSL
live shader compilation using Glslang- Live coding editor window
- Log output window
- Shader bindings window
- Automatic descriptor set layout creation with SPIRV-Reflect
- Image loading using stb
- Dialog windows are handled by Native File Dialog Extended
- Meta file serialization is written using rapidjson
This project uses CMake as a build tool. Since the project is built using Vulkan
, the latest Vulkan SDK is required. Dependency management is handled by Bootstrap, which requires Python and Git installed.
Distributed under the MIT License. See LICENSE
for more information.