Spartan Engine is a research-focused game engine developed over 10+ years, designed for experimentation and pushing the boundaries of rendering and simulation. While it started as a personal learning project, it has evolved into an active community of 600+ members on Discord, including industry professionals sharing knowledge and exploring advanced technology.
There's a vision taking shape - a destination that gives all this tech a purpose. Curious? Read the plan.
Upon launching the engine, you'll be greeted with a selection of default worlds to load. Each world is physics-enabled, allowing you to walk around, pick objects using your mouse, and even drive a car.
The most advanced and demanding world featuring 256 million procedurally generated grass blades (inspired by Ghost of Tsushima), spanning 64.1 km² covered in thousands of trees and rocks.
| Sponza 4K | Subway |
|---|---|
![]() Sponza building from Dubrovnik, great for path tracing |
![]() Emissive materials and GI test |
| Minecraft | Liminal Space |
|---|---|
![]() A classic Minecraft world |
![]() Shifts your frequency to a nearby reality |
Renderer
- Cutting-edge Vulkan renderer with DirectX 12 backend (WIP)
- Fully bindless design (materials, lights, samplers)
- Universal HLSL shaders across both backends
- 128-byte push constant buffer for fast CPU-to-GPU transfer
- Tightly packed 10-byte instance format handling hundreds of millions of instances
- On-the-fly GPU mip generation (FidelityFX SPD) and texture compression (FidelityFX Compressonator)
- Unified deferred rendering with transparency (BSDF with same render path)
Lighting & Shadows
- Atmospheric scattering, real-time filtering, IBL with bent normals
- Screen-space shadows (from Days Gone) and ambient occlusion (XeGTAO + visibility bitfield)
- Ray-traced reflections
- Ray-traced shadows
- ReSTIR path-tracing
- Fast shadow mapping with penumbra via shadow map atlas
- Volumetric fog
Performance & Upscaling
- Variable rate shading and dynamic resolution scaling
- Upscaling: XeSS 2 & FSR 3
- Temporal anti-aliasing
- Custom breadcrumbs for GPU crash tracing
Camera & Post-Processing
- Physically based camera with auto-exposure
- Physical light units (lumens & kelvin)
- Frustum & occlusion (Hi-Z) culling
- Tonemappers: ACES, AgX, Gran Turismo 7 (default)
- HDR10 output
- FXAA, bloom, motion blur, depth of field, chromatic aberration
- Tires: Pacejka magic formula with combined slip, load sensitivity, temperature model, camber thrust, relaxation length, and multiple surface types (asphalt, concrete, wet, gravel, grass, ice)
- Suspension: 7-ray contact patch per wheel, spring-damper with bump/rebound split, anti-roll bars, camber/toe alignment, bump steer
- Drivetrain: Piecewise engine torque curve, 7-speed gearbox with auto/manual modes, rev-match on downshift, LSD with preload, turbo with wastegate, engine braking
- Brakes: Thermal model with cold/optimal/fade zones, front/rear bias, ABS with configurable slip threshold
- Aerodynamics: Drag with frontal/side area, front/rear downforce, ground effect, yaw-dependent drag and side force, pitch-dependent balance, rolling resistance
- Steering: Ackermann geometry, high-speed reduction, non-linear response curve, self-aligning torque
- Assists: ABS, traction control, handbrake lock
- Input: Controllers with analog throttle/brake/steering, haptic feedback (tire slip, ABS, drifting)
- Camera: GT7-inspired chase camera with speed-based dynamics and orbit controls
- Debug: Raycast, suspension, and aero force visualization with telemetry logging
- Physics: Runs at 200Hz for precise tire/suspension response
- Input: Keyboard, mouse, controllers, steering wheels
- Physics: Comprehensive PhysX integration
- Profiling: CPU & GPU profiling tools
- Data: XML support, thread pool, entity-component and event systems
- File Formats: 10+ fonts, 30+ images, 40+ models
One-click project generation - see the Building Guide for details.
Check out Game.cpp to understand how default worlds are loaded and set up - it's the best starting point for understanding the engine's structure.
![]() |
Exploring the tech world and beyond, meeting the brightest minds across cutting-edge industries. 📺 Watch on YouTube 🎧 Listen on Spotify |
Contributors get access to exclusive perks designed to accelerate learning and skill development. See the Contributing Guide to get started.
I cover the costs for Dropbox hosting to ensure library and asset bandwidth is available. If you enjoy running a single script and having everything download, compile, and work seamlessly, please consider sponsoring. Direct sponsorship is more helpful than Discord boosts since it goes directly into maintaining and improving the project.
- This engine started as a personal learning project and a way to enhance my portfolio while I was a university student. I also used it for my thesis at my university with professor Fotis Kokkoras.
- Godot Engine - Integrates Spartan's TAA (see code)
- Stalker Anomaly - Rendering addon using Spartan's source (ModDB)
- Programming Book - Jesse Guerrero's beginner programming book features Spartan's code and community
Using code from Spartan or inspired by it? Reach out - I'd love to showcase your project!
MIT License - free to use with attribution.










