Realtime path tracing renderer written in Rust and Vulkan Ray Tracing.
Requires a GPU with raytracing support.
The following is a small video showing the realtime capabilities of the renderer.
Note: flickering is expected during the first few frames, given the unbiased nature of Path Tracing.
README.mp4
| Material type | Preview |
|---|---|
| Lambert | |
| Glass | |
| Mirror | |
| Metal | |
| Pbr (GGX) |
Glaze works on Windows and Linux operating systems.
In order to build this application Rust is required.
The following command can be used to build the interactive renderer:
cargo build --release --bin glaze-appThe executable can be found in the folder target/release.
The only runtime dependency is a decently recent version of the Vulkan runtime, usually bundled with the video card graphics driver.
To build the non-interactive renderer or the 3D scene converter, glaze-app in
the previous command should be replaced with glaze-cli or glaze-converter
respectively. Note that building the converter requires
assimp to be installed in the system.
For non-interactive executables (glaze-cli and glaze-converter),
command line parameters can be retrieved with the -h flags.
This renderer requires its own 3D format. (Support for glTF SOON™)
A (very) experimental converter, glaze-converter, based on
assimp, can be used to convert a 3D model from other
formats to the one expected by this renderer.
The scene used in this README can be downloaded at the following address.
- lib: library containing all the rendering and parsing routines.
- converter: executable responsible of converting existing 3D model files into the custom format required by this project.
- app: executable providing an interactive application to view the rendered scene and modify lights and materials in real-time.
- cli: executable used to render a scene non-interactively. Still requires a GPU with Ray Tracing support.