kvark

joined 1 year ago
 

The focus of this release is the high-level API, which abstracts rendering together with physics (via Rapier3D). See the new “vehicle” example code for the reference.

vehicle example

In addition, blade-graphics-0.4 contains improved presentation API with control for color spaces and display synchronization, more texture formats, and an important platform bug workaround.

[–] kvark@programming.dev 4 points 8 months ago* (last edited 8 months ago) (1 children)

I got confused by this post a bit. The news is just about Terminal being packaged for Nix. Checking the whole list, it looks like only the Session is not merged yet? I wonder if it's the moment where I would be able to write:

services.xserver.desktopManager.cosmic.enable = true
 

Check out Blade: it's a purely ray-traced renderer, with asset pipeline and egui integration, built on top of a thin low-level GPU abstraction.

I've just released blade-graphics-0.3, blade-render-0.2, and other associated crates. I believe it's now usable externally, and I'm dogfooding it myself.

Major rendering additions:

  • tangent space generation and normal mapping
  • spatio-temporal reservoir resampling (ReSTIR)
  • environment map importance sampling, it can load EXR and HDR
  • Spatio-temporal variance-guided de-noising (SVGF)

In addition, shaders are now considered assets and can have includes, shared enums and bitflags with your Rust code. The "scene" example is practically a scene editor: it allows dropping new objects, manipulating them via egui-gizmo, in addition to configuring the rendering.