Real-time 3D game engine

Perfect shadows, physically-based rendering, and a fully integrated editor. Built on top of Löve, using the OpenGL 4.3+ graphics backend.

Scroll

Built for
a specific vision

OMBRE, named after the French word for shadow, is a real-time 3D game engine developed by Léna Piquet (Froyok) since November 2022.

Rather than struggling with the constraints of general-purpose game engines, OMBRE was designed from scratch with one goal: complete creative and technical freedom. Every system exists to support the development of an unannounced game project.

From the shadow pipeline to the post-processing stack, each component is designed, built and optimized for the exact visual goals of the game it will support.

Engine render
OMBRE Editor
In-engine editor for WYSIWYG scene authoring
2022 Started
Forward+ Renderer
OpenGL Backend
~50K Lines of code
Linux & Windows Platforms

Everything
the project needs

Each feature was implemented to address a specific creative or technical requirement.

Shadow volumes
Rendering

Perfect sharp shadows

Shadow volumes implemented via compute shaders for GPU-accelerated performance. Results are stored in a bitmask texture and sampled during the opaque pass resulting in pixel-perfect and alias-free shadows at any distance.

In-engine editor
Editor

In-engine editor

A fully integrated WYSIWYG editing environment. Live scene authoring, manipulators, property panels, asset management, and real-time preview of every rendering feature. No round-trips between tools needed.

Post-processing
Post-processing

High quality post-processing

A full-screen effects pipeline. From classics like bloom, lens flares, depth of field to less common like halation and haze fog.

Physically based rendering

Modern PBR pipeline using the specular-glossiness workflow for an accurate material response across all lighting conditions.

Advanced materials

Forward renderer supporting transparent surfaces, glass and layered surface refraction.

3D spatial audio

Steam Audio integration for binaural, physics-aware sound spatialization, reverberation and geometry based material absorption.

Physics engine

Jolt Physics integration for high-performance and accurate rigid body simulation.

Hand-crafted global illumination

Hand-placed bounce lights combined with Screen-Space Ambient Occlusion, giving the renderer a tailored and artistic look.

Exponential & haze fog

Screen-space fog passes with full artistic control over density, color, and falloff. Haze blur also adds atmospheric depth.

Powered by proven
systems

Built with carefully chosen tools that prioritize fast iteration time, performance, and portability.

Framework

Löve

Cross-platform Lua framework providing the window, graphics API, and input abstraction layer.

Platform

Linux / Windows

Supporting both Linux and Windows through cross-platform development via Löve's abstraction layer.

Runtime

LuaJIT 2.1

Primary scripting via Löve enhanced by JIT compilation for near-native performance to achieve stable +60 FPS.

Graphics

OpenGL 4.3+

Using the latest features of OpenGL rendering backend to exploit the most powerful GPUs.

Physics

Jolt Physics

High-performance physics engine for rigid body simulation. Deterministic, multi-threaded, production-proven.

Audio

Steam Audio

Audio simulation engine for binaural 3D spatial audio with physics-aware sound propagation.

UI

Dear ImGui

Immediate-mode GUI for the in-engine editor. Fast iteration with no separate tool pipeline.

Progress Updates

Follow the engine's development with yearly technical write-ups.

Community Check out more recent updates by joining the community server
Join the Discord

Roadmap

Live task list for the engine, fetched directly from the development notes.

Loading...