In this project, I explored real-time rendering techniques using HLSL (High-Level Shader Language). I built out a complete graphics pipeline and focused on making it both interactive and efficient, while still pushing for high-quality visual effects. The goal was to balance performance with fidelity—so the results don’t just look good, but also run smoothly in real time.

Key Features

  • Real-Time Vertex Manipulation: Implemented dynamic vertex modification for creating procedural and interactive environments, such as wave simulations and terrain deformation. This technique allows for complex, non-precomputed animations.

  • Dynamic Tessellation: Utilized DX11's tessellation shaders to subdivide models in real time, significantly enhancing surface detail on objects like landscapes and intricate surfaces while maintaining optimal performance.

  • Procedural Geometry: Employed geometry shaders to procedurally generate new geometry for effects such as particle systems and volumetric shapes, adding depth and dynamism to the scene.

  • Advanced Lighting & Shadows: Incorporated multiple lighting models, including Physically Based Rendering (PBR), to simulate realistic light interactions. The engine also features shadow mapping to improve depth perception and scene realism.

  • Cinematic Post-Processing: Enhanced the final rendered image with a suite of post-processing effects, including bloom, tone mapping, color grading, and depth-of-field blur, to achieve a cinematic aesthetic.

DX11 Shaders Module

DX11 Renderer

For this project, I built a custom DirectX 11 renderer completely from scratch. It gave me the chance to put graphics programming concepts into practice while really digging into how a rendering pipeline works. Along the way, I implemented core real-time graphics techniques like efficient resource management and advanced lighting models.