MARS is a C++, Open Source, 3D Game Engine in development by Gameplay.Solutions. The goal of MARS is to be a Platform Agnostic solution to creating games, allowing anyone to be able to make a game regardless of the OS they are currently using.
The idea for MARS originally came about when we wanted to create something unique, something that was our own. A Game Engine seemed like a huge task and a large challenge which added to the the enjoyment of working on it.
MARS is 100% a passion project, we work on it because we enjoy it. If you think you might enjoy working on a project like this, feel free to submit a pull request. We're open to feedback.
- Completely abstracted Rendering API with the ability to hotswap the renderer you are using with a simple console command.
- Easy to extand gameplay framework
- Commplete Lua scripting abstraction to allow easy gameplay scripting
- AI Suite
- Complete Entity Component System
- Networking Layer
- Robust logging system
- Custom data types (Array, Map, Vector, etc) (in-progress)
-
- Stack
-
- Array
-
- Map
-
- String
-
- Vector
-
- Tuple
- Custom Platform Layer to allow the engine to run anywhere
- Robust event system
- Built in input polling/buffer
- MARS Tool Framework -- A suite of tools designed to make working with MARS easy. (Class Tool, Project Setup Tool, etc)
- Easy to use Editor (in-progress)
- Custom Multi-threading class to easily create mutli-threaded game code
- Level Editor
- In-Editor Visual Scripting Language for designers and artists
- Windows 10 (x64) [primary priority]
- Linux (Partial Support) [secondary priority]
- Mac OSX
- PlayStation
- Xbox
- DirectX 11
- DirectX 12
- Vulkan
- OpenGL 4.6 (In-Progress)