Jakub Boksansky's Blog

Computer graphics

Crash Course in BRDF Implementation


PDF version of the article is available for download here.
Code accompanying the article can be found in the Github repository


This article helps to understand and implement BRDFs commonly used in game engines, for use in both rasterization and emerging realtime raytracing. I hope it will help to overcome the steep learning curve of this complex topic, and to understand how to render different materials. Various optimizations and approximations are discussed, and code is shown for all relevant parts. Accompanying source code is a single file which can be compiled for both C++ and HLSL, and can be easily integrated into rendering applications.


	title=			{Crash Course in BRDF Implementation},
	author=			{Jakub Boksansky},
	year=			{2021},
	month=			{February},
	howpublished=	{\url{https://boksajak.github.io/blog/BRDF}}