Render backends

All backends share a single RHI API. Switch targets at build time.

Vulkan Primary backend, cross-platform
active
Metal macOS, iOS, visionOS
active
OpenGL 4.5 Desktop Linux, Windows
active
OpenGL ES 3.0 Mobile, embedded
active
WebGPU Web target (future)
planned

Target platforms

One codebase, six build targets.

macOS
iOS
visionOS
Linux
Windows
Web

Key techniques

  • Order-independent transparency (OIT)
  • Constructive solid geometry (CSG)
  • GPU picking and selection
  • Multi-viewport rendering
  • SPIRV-Cross shader compilation
  • ECS-based scene visualization

Modules

Each module is a standalone library with explicit dependencies.

vnewindow

Cross-platform windowing abstraction

vnerhi

Unified render hardware interface

vnemath

Math library — vectors, matrices, transforms

vnelog

Structured logging

vneevents

Event system and input handling

vnescene

ECS-based scene graph

vneio

Asset I/O — mesh, texture loading

Roadmap

Phase 1 — in progress

Stabilise & document

Modular libraries, CI/CD, new demos — OIT, picking, text rendering, multi-viewport.

Phase 2 — planned

ECS runtime & editor

Full ECS runtime, material system, scene graph, visual editor with viewport and asset browser.

Future

XR, animation, 3DGS

OpenXR, visionOS, skeletal animation, GPU-driven rendering, 3D Gaussian Splatting integration.

Full roadmap ↗