Thanks to visit codestin.com
Credit goes to github.com

Skip to content

fromasmtodisasm/SpartanEngine

 
 

Repository files navigation

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 and modern 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.

Architectual quality is prioritized over development speed.

Download

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

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
  • 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)
  • 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 (This engine targets high-end machines, old setups or mobile devices are not officially supported)

Roadmap

v0.31 (WIP)
Feature Completion Notes
Vulkan 40% Will become the default rendering backend.
v0.32
  • DirectX 12
v0.33
  • Enable shadows for spot & point lights.
v0.34
  • Skeletal Animation
v0.35
  • C# scripting (Replace AngelScript)
v0.36
  • Eye Adaptation
  • Depth-of-field (Based on Doom approach)
  • Subsurface Scattering
Future
  • Volumetric Lighting.
  • Atmospheric Scattering.
  • Dynamic resolution scaling.
  • Real-time ray tracing (experimental).
  • Global Illumination.
  • Draw call batching (static & dynamic).
  • Export on Windows.
  • UI components.
  • Make editor more stylish.

Documentation

  • Compiling - A guide on how to compile from source

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 88.2%
  • C 6.8%
  • HLSL 3.9%
  • Makefile 0.7%
  • AngelScript 0.2%
  • Lua 0.1%
  • Other 0.1%