A 3D model viewer & animation system built from scratch using DirectX 12.
This project focuses on low-level graphics programming.
- Model loading via Assimp (FBX, glTF, OBJ, etc.)
- Root signature design
- Descriptor heap management
- Shadow mapping
- Control various animation properties from ImGui
- GPU skinning (compute shader)
- Deferred rendering
- Physically Based Rendering (PBR)
- Image-Based Lighting (IBL)
A skinned animated model rendered with:
- basic lighting
- shadow mapping
- Windows 10/11
- Visual Studio 2022
- CMake
git clone --recursive https://github.com/tonyu0/model-viewer-dx12.git
cd model-viewer-dx12cd external/assimp
mkdir build
cmake -S . -B build
# cmake --build build --config Debug # when a debug build is necessary
cmake --build build --config Release