Spartan Engine is more than an engine; it's a vibrant hub for learning and connection, redefining the open-source community experience. While centered around a research-focused game engine for real-time solutions, our core mission is to foster a unique, collaborative environment. Join us for exclusive perks like contributor recognition, networking opportunities with tech professionals, and valuable learning resources, including our active Discord community and insightful YouTube tutorials. Spartan Engine isn't just about code; it's about building a community like no other.
-
For occasional updates regarding the project's development, you can follow me on twitter.
-
For questions, suggestions, help and any kind of general discussion join the discord server.
-
For issues and anything directly related to the project, feel free to open an issue.
-
Meet my AI replica, equipped with Spartan Engine knowledge and my personality traits, ready to assist you. Interact with it here.
-
Please adhere to the MIT license You're free to copy the code, provided you include the original license.
Video: Livestream of FSR 2 integration | Video: A demonstration of the engine's capabilities (old) |
---|---|
![]() |
|
Screenshot: Bistro | Screenshot: Minecraft |
![]() |
![]() |
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. These worlds are designed to offer a diverse and enjoyable experience.
- 128-byte push constant buffer for lightning fast CPU to GPU data transfer.
- AMD FidelityFX suite for enhanced visuals and performance.
- Bloom effect inspired by Resident Evil 2's RE Engine.
- Unified deferred rendering with transparency (BSDF with same render path and shaders).
- Camera-controlled depth of field, motion blur and chromatic aberration.
- Comprehensive debug rendering options.
- Frustum culling.
- Physical light units (intensity from lumens and color from kelvin).
- Physically based camera.
- Atmospheric scattering.
- GPU-based mip generation (single dispatch).
- Advanced shadow features with penumbra and colored translucency.
- Screen space global illumination, reflections, and shadows.
- Temporal anti-aliasing for smooth visuals.
- Vulkan and DirectX 12 backends with universal HLSL shaders.
- Volumetric lighting for atmospheric effects.
- One-click build for easy setup.
- Entity-component and event systems for flexible architecture.
- Universal input support, including mouse, keyboard, and controllers (tested with a PS5 controller).
- Comprehensive physics features.
- CPU & GPU profiling for performance tuning.
- XML support for data handling.
- Thread pool for efficient multitasking.
- Wide file format support: 10+ for fonts, 20+ for audio, 30+ for images, and 40+ for models.
- Continue switching to bindless.
- Skeletal Animation.
- Eye Adaptation.
- Subsurface scattering.
- Ray traced reflections & shadows.
- Dynamic resolution scaling (and use FSR 2, to properly reconstuct).
- Scripting.
- Export on Windows.
- Improved the editor style/theme.
- Continue work on D3D12 (low priority since Vulkan is there).
- Linux port (low priority since the target audience is small).
If you are looking at what to do, there are more ideas in the issues section.
Don't forget that there is a wiki that can help answer some of your questions. Here are some of it's contents:
- Godot uses Spartan's TAA, see here