Sharp and simple graphics library
Blade is an innovative rendering solution for Rust. It starts with a lean low-level GPU abstraction focused at ergonomics and fun. It then grows into a high-level rendering library that utilizes hardware ray-tracing. It's accompanied by a task-parallel asset pipeline together with egui support, turning into a minimal rendering engine. Finally, the top-level Blade engine combines all of this with Rapier3D-based physics and hides them behind a concise API. Talks:
Just the usual :crab: workflow. E.g. to run the bunny-mark benchmark run:
cargo run --release --example bunnymarkCPU tests run with the default command:
cargo testGPU integration tests are marked #[ignore] and need to be requested explicitly:
cargo test --test gpu_examples -- --ignored --nocaptureBlade-graphics can run on:
The full-stack Blade Engine supports its rasterizer on WebGL2. The ray-traced renderer remains available only on backends and devices with ray-query support.
Global Pass Barriers Without Per-Resource RHI Tracking: A Cross-Vendor Study with Blade measures Blade's synchronization model against matched wgpu workloads on AMD, NVIDIA, Intel, and Apple hardware. A repository copy is retained with the code. The synchronization guide summarizes the resulting design and what an engine using Blade is still responsible for.
No open issues yet, or sync has not completed.