Skip to content

๐ŸชŸ The third project of Graphics Programming 1 at Howest DAE (2023) โ€” a DirectX 11 real-time renderer focused on GPU-based rendering. It builds upon the earlier raytracer and rasterizer projects, implementing physically-based shading, lighting, and efficient GPU resource management through the DirectX 11 API.

License

Notifications You must be signed in to change notification settings

knapeczadam/graphics-programming-1-directx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸชŸ Graphics Programming 1 โ€“ DirectX

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.


๐Ÿ—„๏ธ About this repository

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 Information

๐Ÿ“š 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


๐Ÿ‘จโ€๐Ÿซ Teaching Staff

  • Co-ordinator: Koen Samyn
  • Other teaching staff: Flor Delombaerde, Pieter-Jan Vandenberghe

๐ŸŽฏ Learning Goals

  • 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.

๐Ÿงฉ Course Content

  • 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

๐Ÿ“‚ Repository Structure

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.


๐Ÿš€ Releases

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.


๐Ÿง  Final Thoughts

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 ๐Ÿ”ฌโš™๏ธ


โš–๏ธ License

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

About

๐ŸชŸ The third project of Graphics Programming 1 at Howest DAE (2023) โ€” a DirectX 11 real-time renderer focused on GPU-based rendering. It builds upon the earlier raytracer and rasterizer projects, implementing physically-based shading, lighting, and efficient GPU resource management through the DirectX 11 API.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages