Glitter Engine
Glitter is a modern C++23 3D game engine built around a Vulkan deferred PBR renderer, a JSON-driven scene system, Slang shaders, and a Lua scripting layer.
Key characteristics
| Aspect | Detail |
|---|---|
| Language | C++23 |
| Renderer | Vulkan (deferred PBR + forward pass) |
| Shaders | Slang (compiled to SPIR-V at load time) |
| Memory | Vulkan Memory Allocator (VMA) |
| Scripting | Lua (LuaJIT + sol2) |
| Build system | CMake + vcpkg |
| Test framework | Boost.Test |
| Asset packaging | .glitterpak archives (LZ4/Zstd) |
Repository layout
src/ C++ engine source
core/ Engine core, configuration
render/ Vulkan renderer, shader system, materials, models
scene/ Scene graph, cameras, lights, controllers
system/ Platform / hardware layer, resources, console, input
logging/ Logging subsystem (spdlog)
loop/ Game loop scheduler
utility/ Shared utilities
tests/ Boost.Test unit tests
resources/ Game data — scenes, models, shaders, textures, Lua scripts
scripts/ Build tooling (glitterpak packer, etc.)
docs/ This documentation site
Where to go next
- Architecture — high-level subsystem map
- Rendering subsystem — Vulkan pipeline overview
- Shader system — Slang shaders, JSON config, family shaders
- Developer console — Valve-style in-game console
- Scene graph — how the scene loader works
- Game & Resources — scene format, model descriptors, Lua API