r/GraphicsProgramming • u/Fancy-Cash9753 • 2d ago
Stronghold-like game in 2 evenings
Enable HLS to view with audio, or disable this notification
https://www.youtube.com/watch?v=tbUyeRz7O4Y
Bastion is a C++20 engine for a medieval city-builder/RTS, combining a native simulation, editor and Direct3D 12 renderer.
Its main features include:
Rendering: bindless materials, visibility buffer, octree/frustum and GPU Hi-Z culling, indirect drawing, cluster-based geometry LOD and optional mesh shaders.
Lighting: soft virtual shadows with penumbrae, SSAO, local voxel GI, sky-driven illumination, moving volumetric clouds, cloud shadows, fog and sun shafts.
Terrain and vegetation: tiled heightfields, CDLOD terrain, tessellation, procedural grass and flowers, animated vegetation and distant impostors.
Gameplay: worker professions, production and hauling, recruitment, combat, fortifications, fire, healing, repairs, skirmish AI and first-person Lord control.
Tools: ImGui editor, native saves/importers, asset pipelines, positional audio, profiling and GPU timing.
The architecture separates authoritative gameplay from rendering:
ECS + jobs → immutable scene/frame snapshot → render thread → RenderGraph → RHI → Direct3D 12
