Skip to content

TannerRogalsky/blade

 
 

Repository files navigation

Blade

Matrix Build Status Docs Crates.io Crates.io Crates.io

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:

architecture

Examples

scene editor particle example vehicle example sponza scene

Instructions

Just the usual 🦀 workflow. E.g. to run the bunny-mark benchmark run:

cargo run --release --example bunnymark

CPU tests run with the default command:

cargo test

GPU integration tests are marked #[ignore] and need to be requested explicitly:

cargo test --test gpu_examples -- --ignored --nocapture

Platforms

Blade-graphics can run on:

  • Linux (Vulkan and GLES)
  • Windows (Vulkan)
  • iOS/MacOS/tvOS (Metal)
  • Android (OpenXR/Vulkan)
  • Web (WebGL2)

The full-stack Blade Engine can only run on Vulkan with hardware Ray Tracing support.

About

Sharp and simple graphics library

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Rust 92.6%
  • WGSL 7.4%