Lumos icon

Lumos

C++ game engine · 1.5k+ stars

A full-featured C++ game engine targeting Windows, Linux, macOS, and iOS from a single codebase. Vulkan rendering with a Forward+ pipeline, PBR materials, Lua scripting, physics, and a built-in scene editor — all MIT licensed.

C++ Cross-platform Open Source MIT
View on GitHub
Editor viewport with scene
screenshot-1.png

Editor viewport with scene

PBR rendering & lighting
screenshot-2.png

PBR rendering & lighting

Scene hierarchy & inspector
screenshot-3.png

Scene hierarchy & inspector

Particle effects
screenshot-4.png

Particle effects

Physics simulation
screenshot-5.png

Physics simulation

// Features

Cross-platform

One C++ codebase targeting Windows, Linux, macOS, and iOS. Vulkan for Rendering (via MoltenVK on Apple Devices)

PBR Rendering Pipeline

PBR material system with dynamic shadows (4 cascaded shadowmaps), environment mapping, skybox, MSDF text rendering, a particle system, and a 2D sprite batcher — all built on Vulkan.

Built-in Scene Editor

Full ImGui-based editor with scene hierarchy, inspector panel, asset browser, Lua script debugger, console, shader editor, and 3D gizmos via ImGuizmo. Undo/redo throughout.

Physics

Custom 3D physics engine with sphere, cuboid, pyramid, capsule and terrain collision, spatial broadphase, constraint system, and raycasting — alongside Box2D for 2D simulations. Both available per scene.

Lua Scripting

Attach Lua scripts to any entity via LuaScriptComponent. Full bindings to maths, physics, and ImGui via Sol2. Scripts are editable in the built-in text editor with live debugging in the console panel.

Asset Pipeline

Import GLTF, FBX, and OBJ models with skeletal animation support (via Ozz). Assets are packed into .lpak archives for distribution. Mesh optimisation via meshoptimizer is built in.