Most DXR samples stop at a spinning triangle or a Cornell box. Dungeon Stomp is a full, playable dungeon crawler engine that puts DirectX 12 Ultimate's headline features to work in a live production codebase — featuring DXR 1.1 inline ray tracing, PBR, Variable Rate Shading, and SSAO.
Play Now · Screenshots · Features · Build · Controls
Play immediately — pre-compiled binary included!
git clone https://github.com/moonwho101/DungeonStompDX12UltimateDXR.git
cd DungeonStompDX12UltimateDXR/bin
DungeonStomp.exeRequirements: Windows 10/11 with a DirectX 12 GPU. A DXR-capable GPU (NVIDIA RTX / AMD RX 6000+ / Intel Arc) is recommended for ray tracing features.
- DXR 1.1 Inline Ray Tracing: Pixel-perfect ray-traced shadow rays & global illumination.
- PBR Material Pipeline: Cook-Torrance BRDF with metallic workflow, 28+ tuned materials, and ACES tone mapping.
- Variable Rate Shading (VRS): Hardware-adaptive shading rates for enhanced performance.
- Dynamic Lighting & Effects: 2048x2048 shadow maps, SSAO, 32 dynamic lights per scene, normal mapping & atmospheric fog.
- Engine Tech: 3-frame buffered rendering, spatial culling, BMFont GPU text rendering, and XAudio2 sound engine.
- 15 Dungeon Levels: Hand-crafted campaign levels + procedural seed-based dungeon generator.
- 25+ Enemy Types: Animated MD2 & 3DS monsters with AI, audio cues, and loot drops.
- 30+ Weapons & Spells: Melee, ranged, and magic missile projectile system (up to 100 active missiles).
- Classic RPG Mechanics: Level progression, XP system, keys, swinging doors, and persistent save/load state (
F5/F6).
| Action | Input | Action | Input |
|---|---|---|---|
| Move | W A S D |
Cycle Weapons | Q / Z or Mouse Wheel |
| Attack | Left Click |
Load / Save | F5 / F6 |
| Forward | Right Click |
Fullscreen | Alt+Enter / F11 |
| Open Doors | Space |
Debug HUD | F8 |
| Jump | E |
Xbox Controller | Supported (enabled in DirectInput.cpp) |
🔧 Developer & Feature Hotkeys (Click to expand)
| Key | Graphics Toggle | Key | Developer / Gameplay Controls |
|---|---|---|---|
R |
Toggle DXR Ray Tracing | G |
Toggle Noclip / Fly Mode (Numpad +/-) |
T |
Toggle Variable Rate Shading | X |
Add Experience Points |
O |
Toggle SSAO | K |
Unlock All Weapons & Spells |
J |
Toggle Shadow Map | ] / [ |
Jump to Next / Previous Level |
N |
Toggle Normal Maps | I / P |
Disable / Randomize Music |
M |
View Shadow Map / SSAO Buffer | B |
Toggle Camera Head Bob |
V |
Toggle VSync | H |
Toggle Player HUD |
Prerequisites: Visual Studio 2022 (with Desktop development with C++) & Windows 10/11 SDK.
git clone https://github.com/moonwho101/DungeonStompDX12UltimateDXR.git
cd DungeonStompDX12UltimateDXR
msbuild src\DungeonStomp.sln /p:Configuration=Release /p:Platform=x64Or open src/DungeonStomp.sln in Visual Studio 2022 and build in Release | x64. Binary outputs to bin/DungeonStomp.exe.
📂 Repository Structure & Dungeon Generator
bin/— Pre-built executable, levels, sounds, and assetssrc/— Engine & game logic source code (40+ C++ files)Shaders/— HLSL shader code (Shaders/Raytracing.hlsl, PBR, VRS, SSAO)Common/— D3D12 helper framework (d3dApp,GameTimer,MathHelper)tools/— Procedural dungeon generation scripts
Generate reproducible layout files replacing bin/level1.map:
cd tools
python generate_dungeon.py # Classic tileset
python generate_dungeonNewObjects.py # Extended tileset| Project | API |
|---|---|
| Dungeon Stomp DX12 | DirectX 12 (Rasterization) |
| Dungeon Stomp Vulkan | Vulkan (WIP) |
| Dungeon Stomp Classic | DirectX 7 |
Engine architecture builds upon concepts from "Introduction to 3D Game Programming with DirectX 12" by Frank Luna.
🎨 MD2 Model Author Credits
Special thanks to the authors of the classic MD2 models featured in Dungeon Stomp:
- ALPHA Werewolf — Andrew "ALPHAwolf" Gilmour
- Bauul, Hueteotl, Winter's Faerie — Evil Bastard
- Centaur — Scarecrow
- Bug (Q2) — Tatey
- Corpse — Neuralstasis
- Demoness (Succubus) — Pascal "Firebrandt" Jurock
- Dragon Knight, Ogro — Michael "Magarnigal" Mellor
- Fulimo — Tim
- Goblin — Conrad
- Grey — RichB
- Hellspawn — Alcor
- Hydralisk — warlord
- Ichabod — Adam Ward (Gixter)
- Imp — Paul Interrante & Brad Grace
- Insect — Joe "Ebola" Woodrell
- Morbo/Brawn — Rowan Crawford (Sumaleth)
- Necromancer — Raven Software
- Necromicus — Jade Moffatt Jones
- Ogre — Didier "The Doctor" Savanah
- Orc — Boogieman
- Perelith Knight — James Green
- Phantom, Wraith — Burnt Kona
- Purgatori — Tom Colby
- Rider — Blake
- Sorcerer — E. Villiers
- Tentacle — Marcus Lutz
- Troll — Thargar
- Werewolf — Brian Yee
This project is open source. See the LICENSE file for details.






