Engine Demonstration
// OVERVIEW: Dear ImGui Scene Editor. C++ engine exposes an API allowing the Lua scripting layer to render debug geometry, instantiate actors dynamically, and modify component properties in real-time.
Technology Stack
Core Engine
- C++ (Standard Library)
- SDL2 (Graphics/Input)
- GLM (Mathematics)
Scripting & Logic
- Lua 5.4
- LuaBridge
Simulation & Tooling
- Box2D (Physics)
- Dear ImGui (UI)
Data & Storage
- RapidJSON
- Custom .scene Formats
System Architecture
Rather than hardcoding gameplay logic in C++, I architected this engine around a strict Component-Based Actor System. The C++ backend handles high-performance tasks like managing memory, updating the Box2D physics simulation, rendering SDL textures, and isolating input.
LuaBridge Integration
By mapping C++ memory pointers to Lua using LuaBridge, game designers can create entire UI overlays, game logic, and AI behaviors in scripts without recompiling the core executable.
ImGui Developer Tools
A custom feature where I integrated Dear ImGui. I wrote safe C++ wrappers to expose ImGui to Lua, allowing for the creation of a live Property Inspector, Asset Browser, and an pathing tool.
// Source Code
The complete source code for the engine, including the ImGui integration and Lua wrappers, is available on GitHub.
View Engine Repository