Elheart
Active development

Elheart

A 3D game engine written from scratch in C++, with a deferred OpenGL renderer, an ECS core, Jolt physics, a XAML interface layer, procedural worlds, and an editor built on top of it all.

c++opengljoltflecsnoesisguifmodimgui
◈ Dev stages
Sep 2025 ✓ Done DEMO VIDEO

First Triangle

Changes
GLFW window & OpenGL context
Shader compilation pipeline
Vertex & index buffers
◈ About the engine

Elheart started as a graphics renderer, written to find out what engines like Unity are actually doing underneath. It has since grown into a full engine: its own ECS, physics, asset pipeline, UI layer, procedural world generation, and an editor to build in.

It is a solo project, written from scratch in C++ and OpenGL. The libraries it leans on are:

  • GLFW for window creation, OpenGL context and input
  • GLAD as the OpenGL function loader
  • GLM for vectors, matrices and quaternions
  • Flecs for the entity-component-system
  • Jolt Physics for rigid bodies and the character controller
  • Recast Navigation for navmesh generation and pathfinding
  • FastNoiseLite for the terrain density field
  • FMOD Studio for spatial audio and mixing
  • NoesisGUI for the in-game interface, authored in XAML
  • Dear ImGui and ImGuizmo for the editor and its viewport gizmos
  • Assimp for model importing
  • stb_image for texture loading