Small minimal demo showcasing ray marching as described by Michael Walczky in his blog post. Graphics card communication is handled through the Vulkan API. My minimal demo of Vulkan is an example of how Vulkan can be used with Rust.
Build and run the Vulkan backed window with:
cargo run
In a separate terminal run the shader compile watcher with:
./compile_shaders_watch.sh
This will ensure any changes to .vert
and .frag
files will be automatically compiled into Vulkan .spv
SPIR-V bytecode, which will be read by the main application.
The application supports live reload of shaders by clicking anywhere in the viewport.