← Explorations

Advanced Computer Graphics

Materials & SSR

Real-time studies in physically based shading, image-based lighting, procedural surface detail and rough screen-space reflections.

PROJECT PERIODSpring 2026 · CIS-5610
Materials & SSR

These CIS-5610 studies explore how roughness, metalness, lighting and reflection work together. Built on the course's OpenGL framework, they move from point-lit PBR to environment lighting and a deferred screen-space reflection pipeline.

My work includes the shader implementations, integration work required by the assignments, and additional procedural-material and reflection experiments. Test models and environment maps are input assets, not claims of original asset creation.

The first shader combines diffuse and Cook–Torrance specular response. An additional procedural layer uses noise to vary albedo, metalness and roughness, creating patches of rust and directional scratches rather than treating the surface as one uniform material.

A smooth metallic sphere rendered with a Cook-Torrance material
A fully metallic, zero-roughness response.
An obsidian material on a rounded cube under environment lighting
An authored obsidian material viewed from a rotated camera.

The next stage adds diffuse irradiance, a prefiltered specular environment and a BRDF lookup texture. The same material can then respond to a surrounding lighting environment, not just a fixed arrangement of point lights.

The deferred renderer stores surface information in a G-buffer and traces reflection queries against screen-space scene data. I explored world-space and screen-space marching, along with a Monte Carlo glossy-reflection extension inspired by the Frostbite approach discussed in the coursework.

The opening image shows the rough-reflection experiment. The implementation also blends reflection coverage with the environment-map fallback. This remains a screen-space technique: it cannot recover arbitrary geometry that the camera has not captured.

The final deferred rendering and screen-space reflection scene
The combined deferred-rendering and SSR output.
A screen-space reflection scene with blurred rough reflections
Screen-space marching with rough-reflection blur.

Alongside Tracing Light, this series explores a useful contrast: tracing more of the light path versus choosing approximations that can be evaluated interactively.

Built with: C++, Qt, OpenGL and GLSL. CIS-5610 coursework with personal extensions.