Saber Engine

“Ideally, a Jedi took many months to construct a single perfect weapon that he or she would keep and use for a lifetime. Once you build it, the lightsaber will become your constant companion, your tool, and a ready means of defense.” – Luke Skywalker

Saber Engine is an API-agnostic real-time rendering engine framework that I maintain as an ongoing personal project.

It provides a modern, flexible, & performant data-driven, multi-threaded, experimentation-friendly architecture that I use to grow my knowledge of real-time rendering, computer graphics, and engine architecture.

GitHub Repository: <private: contact me to request access or a build>

Additional screenshots and a video recording of the engine will be posted here soon. Please contact me to request a demo build.

 Saber Engine is constantly improving. Its current features include:
  • Multi-threaded architecture programmed in C++ 20.
  • Multiple graphics API backends: Currently supports DX12 and OpenGL, with upcoming Vulkan support.
  • Asynchronous copy/graphics/compute pipelines.
  • Scriptable rendering pipeline.
  • Dynamic shader selection via an scriptable Effect/Technique/Draw Style framework.
  • Droid: A custom offline shader compiler & C++ code generation tool.
  • EnTT Entity Component System (ECS).
  • GLTF 2.0 scene format support.
  • Supports skinned animations, morph targets, and key frame node/transform animations.
  • HDR physically-based lighting model (As per EA’s Frostbite, Lagarde et al.).
  • Image-based indirect lighting.
  • Directional, point and spot punctual lighting.
  • Soft shadowing (PCF, PCSS).
  • Radiometrically-correct screen-space ambient occlusion (Intel XeGTAO).
  • ACES Filmic response tone mapping.
  • Physically-based camera and exposure settings.
  • Physically correct emissive and bloom.
  • Camera frustum culling.
  • Automatic GPU instancing.
  • ImGui menus and a robust suite of debugging tools.
  • Support for RenderDoc and PIX programmatic capture APIs.
  • And more!
Scroll to top