Today I'm publically announcing the Alpha release of a project I have been working on for several years(!).
Simulant is an open-source general-purpose game engine, written in C++ which supports building games for Windows, Linux and Dreamcast targets from a Linux development system (cross-compiling), and can also natively build on OSX. Android support is also in the works.
It's a full-blown 2D/3D game engine, with a bunch of features:
- Multiple renderers (OpenGL 1.1 and OpenGL 2.1)
- High-level Scene management
- Powerful material system, supporting GLSL on GL 2.x
- Hierarchical scene building
- Scriptable particle system (custom JSON format)
- Support for loading .obj and .md2 meshes, as well as Tiled .tmx files
- Complex configurable rendering pipeline
- Easy-to-use API
- Automatic memory management of game assets
- Automatic level-of-detail mesh selection
- Combination Spatial hash and Octree based culling systems
- Built-in realistic Newtonian physics engine
- Entity behaviour component system
- UI widget rendering system
- Built-in helpers for scrollable backgrounds, skyboxes and animated sprites
- OpenAL powered audio
- There's probably more I've forgotten...
And if that isn't enough, the whole thing is controllable from a simple command-line management command, which allows you to bootstrap projects, build them for multiple platforms, run unit tests, and package your game for Linux (flatpak) and Dreamcast (.CDI). Windows installer support is coming soon!
You don't even have to compile the game engine yourself, just install the the management command
and it will download pre-compiled game engine libraries which are generated automatically via a complex build system
If you want to find out more then head over to the following links: The Simulant Website Getting Started Tutorial Documentation Discord Chat Code Repository Issue Tracker
Reminder, this is Alpha software - it's unfinished, it's constantly changing, it's buggy in places, but that's why I need people to try things, report bugs, send patches and support me via Patreon
Merry Christmas everyone!