← back to main

Lum

THIS IS NOT A VIDEO!

Lum Engine

Lum is really fast and simple voxel renderer for very specific use-case. It achives it by limiting itself to a small scope - isometric limited view blocky(grid-aligned) games with some (non-grid-aligned) meshes (and some few visual features that i like in games)

You should only use Lum if you want renderer that looks exactly like Lum (i will add features and fix bugs on request (or when i encounter them myself), but dont expect me to make Lum something very different)

Currently written in Rust with Vulkan (ash) and WGPU (used for web, as you can see above)

A lot of expected things (like perfomance profiles with extra visual features or transparency) are missing but planned

The following is mostly describing what Lum has to offer as a renderer, you can read more on implementation here:

Features

Lighting

Lum divides lighting into several frequences, computed via different methods and then combined

Radiance probes
Per-block lighting. Raytraced in voxel-space and accumulated spatially & temporally
Lightmaps
Sunlight lightmaps for blocks and models
Ambient occlusion
Screen-space HBAO
Reflections
"Glossy" raytraced voxel-space reflections

Visaul features

Foliage
GPU-driven block-bound procedural foliage.
Liquids
Cascaded wave-simulation
Volumetrics
Screen-space thickness-based & Lambert law