Hey there, fellow DAE student, curious visitor, or graphics tinkerer 👋
Welcome to my Graphics Programming 1 – DirectX repository — part of the third semester (2023) at Digital Arts & Entertainment, Howest University, Kortrijk, Belgium.
This repo contains the third and final project of the Graphics Programming 1 course — a GPU-based real-time renderer built using DirectX 11.
It builds on the knowledge gained from the raytracer and software rasterizer projects, moving fully into the GPU domain with hardware-accelerated rendering and physically-based shading.
⚠️ Note: this project was created for educational purposes.
Expect experimental code, occasional inefficiencies, and strong focus on understanding how DirectX 11 manages rendering pipelines.
📚 Course: Graphics Programming 1
🏫 University: Howest University of Applied Sciences - Digital Arts and Entertainment
📍 Location: Kortrijk, Belgium
🗓️ Academic year: 2023–24 | Third semester
🎓 Study load: 6 credits
⏱️ Total study time: 180 hours
- Co-ordinator: Koen Samyn
- Other teaching staff: Flor Delombaerde, Pieter-Jan Vandenberghe
- Handles stress and workload effectively while meeting deadlines.
- Creates and follows a planning to ensure project progress.
- Uses version control systems to track and manage development efficiently.
- Monitors personal and project progress over time.
- Maintains a critical attitude toward own work and peers’ work, benchmarking results to industry standards.
- Detects technical and visual errors down to the pixel level.
- Reviews and validates code quality and maintainability.
- Develops 3D applications iteratively, applying feedback from stakeholders.
- Selects and applies efficient rendering algorithms for 3D scenes.
- Measures and evaluates application performance.
- Analyzes and optimizes graphics performance in real-time contexts.
- Implements Physically Based Rendering (PBR) techniques in a 3D environment.
- Uses game engines correctly to solve design and technical problems.
- Writes structured, readable, and maintainable code within a game project.
- Integrates and evaluates middleware, external services, and frameworks under technical and production constraints.
- Implements lighting systems in 3D applications using shader languages.
- Graphics API fundamentals (DirectX 11)
- GPU rendering pipeline
- Shader programming (HLSL)
- Resource management (vertex/index buffers, textures, samplers)
- Lighting, materials, and PBR implementation
- Performance and debugging on GPU
All code and assets for the DirectX project are located on the main branch.
It demonstrates the transition from CPU-based to GPU-accelerated rendering, using DirectX 11 for efficient, real-time 3D visualization.
Builds are available in the 📦 Releases section.
Example:
graphics_programming_1-directx-03-1.0.0-windows-x64.zip
Includes the full DirectX 11 GPU renderer built for Windows x64.
This project marks the completion of the Graphics Programming 1 series — moving from theoretical raytracing to practical, GPU-based real-time rendering.
It was a major step toward understanding modern rendering pipelines, shaders, and performance considerations in game technology.
If you’re diving into DirectX yourself: experiment, profile, and learn how the GPU truly works 🔬⚙️
This repository is licensed under the MIT License — feel free to explore, learn, or reuse for study purposes.
Built with shaders, buffers, and the eternal quest for 60 fps 🎮
— Ádám