Harmony Engine

Welcome to the official site for HyEngine. An entirely hand written, free and open source 2D game engine and editor.

Download HyEngine Read Documentation

Harmony Engine comprises of two projects

HyEngine

Rendering Icon

Cross-Platform Support

Platform independent C/C++ OpenGL/WebGL rendering with custom shaders, multiple windows, and fast WebAssembly builds.

Physics Icon

Box2D Physics

Stable, deterministic physics simulation integrated directly into Entities and the node system.

Web Icon

WebAssembly Export

Optionally build and export your game for the web browser. HyEditor fully automates the Emscripten pipeline.

Code Icon

Programmer-First Design

A clean C++ API with Nodes, Entities, animation floats, physics shapes, UI widgets, and more.

HyEditor

Editor Icon

Powerful WYSIWYG Editor

HyEditor manages assets, builds, animation timelines, entities, visual layouts, and auto-generates clean C++ gameplay classes.

Spine Icon

Spine® Animation Support

Import Spine skeletons into HyEditor, configure animation states, and blend/mix at runtime.

CMake Icon

CMake Project Automation

HyEditor manages all CMake generation, source files, dependencies, and multi-platform builds.

Pipeline Icon

Asset Pipeline

All asset management tasks from importing, iteration, replacing, to in-engine. Very efficient atlas packing and utilization, bitmap fonts, audio banks, tilesets, and Spine support.

🛠 Technologies Used

Engine OpenGL & WebGL Box2D GLM (OpenGL Mathematics) stb GLFW (Graphics Library Framework) S nlohmann JSON Rapid JSON
Editor Qt6 FreeType rougier/freetype-gl xiph libogg xiph libvorbis
Build System CMake Emscripten MSVC (Visual Studio) Clang GCC (GNU Compiler Collection)

Harmony Engine is fully self-authored with handcrafted code from over a decade, and I kept the following principles throughout its development:
Along with HyEngine, I rolled all its tools, asset pipeline, and build process into a single editor program: HyEditor