The engine behind the worlds

Meet OmiLith.
A foundation for play.

A custom C++ engine for building interactive worlds. Shared systems for graphics, simulation, assets and tools, with games that keep their own identity.

An ancient dark stone tablet carved with a copper-lit diamond and angular OMI lettering.
OmiLith · Stone, craft, and a solid foundation · Generated brand artwork

A shared foundation

Different worlds.
Connected systems.

OmiLith separates reusable engine services from each game's content and rules. An entity owns components, while shared reflection connects scene data, Luau scripting and inspectors. Rendering and simulation can evolve together without turning the engine into the game.

The renderer resolves work against the view, device capabilities and the game's quality policy. A retained frame graph and native graphics paths turn that plan into GPU work. Backend implementations share an engine boundary; that does not imply identical features or performance on every device.

A look inside

An introduction to the building blocks
01 / Graphics

One scene. Deliberate work.

A shared Renderer boundary, capability-selected quality paths, offline Slang shader compilation and explicit frame orchestration. Atmosphere, water, temporal history and lighting are explored in the journal.

02 / Worlds & interaction

Components with a purpose.

Entity-owned components, RTTR reflection and Luau scripting connect authored scenes with runtime systems and tools. Reusable services support the world while game projects own their rules.

03 / Content & simulation

Prepared assets. Shared state.

An offline asset cooker prepares runtime content. Authoritative multiplayer separates the headless game simulation from client presentation, with bounded messages and interpolated state.

The components in more detail ↗

See it taking shape

Real captures from the development diary
Glasswake · Coastal rendering and spectral ocean. Visual evidence, not a performance benchmark.
Drune · Driving through the evolving landscape. Recorded during development, 28 October 2026.

Keep exploring

The engine has
a home of its own.

This is the introduction. Architecture, components, source-backed features and the engine's direction live at omilith.dev. The journal here follows the decisions and experiments along the way.

Visit omilith.dev ↗