Tool Open source

Rabbet

Rabbet is a from-scratch C++ 3D game engine with a sparse-set entity-component system, versioned entity handles, dense component pools, and a system-and-resource runtime. Its OpenGL 4.1 renderer provides a forward path with metallic-roughness PBR, a Phong fallback, lighting and shadow maps, emissive surfaces, optional image-based lighting, post-processing, CPU particles, and heightmap or noise terrain.

View repository Mentioned in 1 video ↓

Overview

The Forge editor provides a dockable ImGui workspace around a render-to-texture viewport, asset thumbnails, hierarchy reparenting, click-to-pick, snapping gizmos, and Play/Pause/Step/Stop controls that snapshot and restore scenes. Assets use stable UUIDs and .import sidecars; models, textures, audio, materials, shaders, prefabs, and scenes are supported, with scenes stored as readable JSON. Lua behaviors run through sol2 with live hot-reload and inspector-editable fields, while physics uses Jolt rigidbodies and audio uses miniaudio.

The repository includes the engine, editor, examples, and tests, including the Orb Hunt demo game. It uses CMake 3.24 or later and a C++20 compiler, supports macOS and Linux, fetches pinned dependencies during configuration, and is licensed under Apache License 2.0.

What Rabbet is used for

1 use taken from transcripts — each links to the moment in the video.

  • A from-scratch C++ 3D engine with a sparse-set entity-component system and OpenGL renderer. Its Forge editor includes dockable panels, asset thumbnails, scene gizmos, play-mode snapshots, JSON assets, and hot-reloadable Lua behaviors.

Videos mentioning Rabbet

1 in the library.