RUST · 3D GAUSSIAN SPLATTING

lyra-rs — Generative 3D World Model & 3D Gaussian Splatting Engine in Rust

lyra-rs is a native Rust implementation of NVIDIA's Project Lyra that turns single images or video clips into navigable 3D Gaussian Splatting (3DGS) worlds. It pairs spatio-temporal latent diffusion with a real-time tile-based Gaussian rasterizer and camera trajectory planner.

$ cargo install lyra-rs
GitHub ↗

Architected for Speed & Reliability

Engineered from the ground up in memory-safe Rust with zero unnecessary dependencies.

⚡

Parallel Gaussian Rasterizer

High-throughput pure Rust CPU rasterizer powered by Rayon and Glam. Renders complex 3D Gaussian splat clouds without proprietary CUDA drivers.

📐

Jacobian Screen Projection

Converts 3D world covariance into 2D screen covariance matrices with accurate viewing frustum clipping and depth sorting.

🌈

Spherical Harmonics Degree 3

Computes view-dependent radiance and specular reflections using spherical harmonic basis functions (up to degree 3 / 16 coefficients per channel).

🎥

Camera Trajectory Generators

Built-in analytical trajectory generators: orbital paths, spiral tracks, dolly zooms, and cinematic keyframe interpolators.

🖼️

Multi-Buffer Compositing

Produces full color RGBA image buffers, linear expected depth maps, and accumulation alpha masks with front-to-back compositing.

🍎

Apple Silicon Optimized

Runs with multi-core NEON SIMD acceleration on Apple Silicon (M1/M2/M3/M4) as well as AVX2 on Linux and Windows.

Get Started in Seconds

Install via Cargo and run immediately on macOS, Linux, or Windows.

Terminal
# Install Lyra-RS
cargo install --git https://github.com/bhubbard/lyra-rs

# Render a Gaussian Splat PLY scene to PNG
lyra-rs render --scene scene.ply --out render.png --width 1920 --height 1080

# Generate an orbital camera sequence
lyra-rs animate --scene scene.ply --trajectory orbit --frames 120 --out ./frames/

# Run the test suite
cargo test --release

Engine Architecture

Streamlined execution pipeline with deterministic memory isolation and zero runtime overhead.

Pipeline Flow
┌───────────────────────────────────────────────────────────┐
│               Input: 3D Gaussian Splat Cloud (PLY)        │
└─────────────────────────────┬─────────────────────────────┘
                              │ Positions, Rotations, Scales, SH
┌─────────────────────────────▼─────────────────────────────┐
│          Jacobian Screen-Space Projection & Covariance    │
└─────────────────────────────┬─────────────────────────────┘
                              │ 2D Ellipses & Depth Keys
┌─────────────────────────────▼─────────────────────────────┐
│           16x16 Tile Binning & Front-to-Back Sort         │
└─────────────────────────────┬─────────────────────────────┘
                              │ Multi-Threaded Rayon Workers
┌─────────────────────────────▼─────────────────────────────┐
│    Alpha Compositing + Spherical Harmonics Color Output   │
└───────────────────────────────────────────────────────────┘