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:

  1. Microfacet BSDF Model

  2. Diffuse Irradiance

  3. Glossy Irradiance

  4. Normal and Displacement Mapping

Below you can see examples of how the shader handles light on different materials with varying surface roughness and metallicness.

Previous
Previous

“LEGO-Fier” Procedural Modeling Tool

Next
Next

Mini-Minecraft