⚠️ I have decided to archive this project as I am no longer actively maintaining it.
A multi-platform C++ 2D game engine.
The engine runs and was successfully tested on the following platforms:
- OS X, macOS
- Windows (MinGW)
- Web (Emscripten)
Summary of the Entity-component-system approach:
- Entities are made up of one or more components
- Components contain data to store the state of an entity
- Systems contain the logic and operate on entities that have the required components
The engine provides standard components and systems usually needed in a game:
- Components:
Transform,Velocity,BoxShape,Sprite,Text,MouseListener,AudioSourceetc. - Systems:
Motion,SpriteRender,TextRender,MouseEventTrigger,AABBCollision,DebugProfile,DebugSpriteetc.
This collection of components and systems can be extended.
- Resources can be loaded from files or embedded resources.
- Embedded resources can be generated using the ResourceGenerator tool.
- All targets (except Web) are compiled using CMake.
- Web targets are compiled using Emscripten and Makefiles.
- My main IDE is CLion, the powerfull cross-platform C/C++ IDE from JetBrains!
The engine relies on the following awesome libraries and tools: