Wookaz / SpartanEngine

Game engine with an emphasis on architectual quality, targeting high end machines

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Spartan Engine

Spartan is a game engine that started as a hobby project and evolved into something bigger. The goal is to target high-end machines and deliver advanced graphical capabilities at high frame rates with minimum input latency. Then wrap all that in a nice editor.

The project is at an early development stage and there is a lot experimentation going on, regarding what works best. However a lot of effort is being put into building and maintaining a clean, modern and overall high quality architecture, an architecture that will ensure continuous development over the years. This means that while you shouldn't expect to make games with it yet, you might find it to be a helpful study resource.

For more updates regarding the project's development, you can me on twitter.

License: Embracing the open source ethos and respecting the MIT license is greatly appreciated. This means that you can copy all the code you want as long as you include a copy of the original license.

Download

Platform API Status Quality Binaries 👍
Build status Codacy Badge Download
WIP WIP WIP WIP

Media

Features (v0.3)

  • 10+ font file formats support (FreeType)
  • 20+ audio file formats support (FMOD)
  • 30+ image file formats support (FreeImage)
  • 40+ model file formats support (Assimp)
  • XML files
  • Keyboard
  • Mouse
  • Xbox controller
  • Bloom (Based on a study of Resident Evil 2's RE Engine)
  • Shadows (Cascaded shadow mapping with smooth, clean and stable shadows)
  • Custom mip chain generation (Higher texture fidelity using Lanczos3 scaling)
  • Debug rendering (Transform gizmo, scene grid, bounding boxes, colliders, raycasts, g-buffer visualization etc)
  • Deferred rendering
  • DirectX 11 backend
  • Lights (Directional, point and spot lights)
  • Font Rendering
  • Frustum culling
  • Per-Pixel motion blur
  • Physically based rendering
  • Post-process effects (Tone-Mapping, FXAA, Sharpening, Dithering, Chromatic aberration etc.)
  • SSAO (Screen space ambient occlusion)
  • SSR (Screen space reflections)
  • SSS (Screen space shadows)
  • TAA (Temporal anti-aliasing based on Uncharted 4)
  • Constraints
  • Rigid bodies
  • Colliders
  • Entity-component system
  • Event system
  • Easy to build (Single click project generation which includes editor and runtime)
  • Thread pool
  • Engine rendered platform agnostic editor
  • Profiling (CPU & GPU)
  • C/C++ (Using AngelScript)
  • Windows 10 and a modern/dedicated GPU (The target is high-end machines, old setups or mobile devices are not officially supported)

Roadmap

v0.31 (WIP)
Feature Completion Notes
Volumetric Lighting 100% -
Screen space contact shadows 100% -
Parallax Mapping 100% -
Shader Editor 100% Real-time shader editing tool.
Shadows 90% Enable point & spot light shadows.
Vulkan 60% Don't port it, re-architect the engine instead.
v0.32
  • C# scripting (Replace AngelScript).
v0.33
  • Ray traced shadows.
  • Ray traced reflections.
v0.34
  • DirectX 12.
v0.35
  • Skeletal Animation.
v0.36
  • Eye Adaptation.
  • Depth-of-field (Based on Doom approach).
  • Subsurface Scattering.
Future
  • Atmospheric Scattering.
  • Dynamic resolution scaling.
  • Global Illumination.
  • Export on Windows.
  • UI components.
  • Make editor more stylish.

Documentation

Dependencies

License

  • Licensed under the MIT license, see LICENSE.txt for details.

About

Game engine with an emphasis on architectual quality, targeting high end machines

License:MIT License


Languages

Language:C++ 87.6%Language:C 6.4%Language:HLSL 4.9%Language:Makefile 0.6%Language:AngelScript 0.1%Language:Lua 0.1%Language:QMake 0.1%Language:Batchfile 0.0%