Ember
A C++ 20 'game engine' built with SDL3 with wide platform support.
|
Ember is a lightweight and modular 2D/3D game engine/framework written in C/C++, designed to be simple yet powerful. It aims to provide developers with a flexible **_cross-platform_** solution to build 2D/3D games and applications.
⚠️ Note: Currently there is no
Editor
and it is unlikely one will exist in the future.
All dependencies are included as git submodules.
Platform | Backend | Status |
---|---|---|
Windows | OpenGL 3.3 | ✅ Fully supported |
Linux | OpenGL 3.3 | ✅ Fully supported |
macOS | OpenGL 3.3 | ✅ Fully supported |
Android | OpenGL ES 3.0 | ✅ Fully supported |
iOS | OpenGL ES 3.0 | ✅ Fully supported |
Web | WebGL 3.0 | ✅ Fully supported |
iOS | Metal | 🚧 Coming soon |
macOS | Metal | 🚧 Coming soon |
⚠️ Note: Metal backend is planned for future versions.
⚠️ Note: This diagram is a work in progress and may not reflect the current state of the engine.
Showcase some projects and demos made with Ember Engine:
Game | Screenshot | Description |
---|---|---|
Flappy Bird | ![]() | Simplest Flappy Bird clone using Ember Engine |
Node Physics Example | ![]() | Simple node-based physics simulation demo |
... | ... | ... |
Soon
Ember uses CMake as its build system. Supported toolchains:
```bash git clone https://github.com/vsaint1/ember_engine.git cd ember_engine git submodule update –init –recursive cmake –list-presets emcmake cmake –preset=web-release emmake cmake –build build/webgl/release python3 -m http.server -b 0.0.0.0 8000