Skip to content

kvark/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

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors