Physically-Based Shader
Role: Individual Developer | Software/Languages: C++, OpenGL, GLSL, Qt
For my graduate-level course CIS 5610: Advanced Rendering, I implemented the paper, “Real Shading in Unreal Engine 4” by Epic Games, to develop an OpenGL physically-based rendering (PBR) shader which accurately represents how light interacts with different types of materials. The shader implementation uses a microfacet BSDF material model with point lights and environment map lighting as well as handles plastic/metallic BRDFs, and pre-computed diffuse/glossy irradiance.
For this project, the main features I implemented include:
Microfacet BSDF Model
Diffuse Irradiance
Glossy Irradiance
Normal and Displacement Mapping
Below you can see examples of how the shader handles light on different materials with varying surface roughness and metallicness.