Skip to content

gameplay-solutions/MARS-Engine

Repository files navigation

Gameplay Solutions Logo

What is MARS?

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.

Planned Features

  • 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

Supported Platforms

  • Windows 10 (x64) [primary priority]
  • Linux (Partial Support) [secondary priority]
  • Mac OSX
  • PlayStation
  • Xbox

Implemented Rendering APIs

  • DirectX 11
  • DirectX 12
  • Vulkan
  • OpenGL 4.6 (In-Progress)