Advanced Rendering

Implementation of a k-d Tree

Spherical Search Representation

Find all points within a certain radius

Displayed k-d Tree

Constructs a k-d tree to visualize and search a collection of points

Signed Distance Fields and Subsurface Scattering

Custom Cornell Box Renders

Physically Based Shaders in Real Time using Approximations and Precomputations via Importance Sampling

0% metallic, 0% rough

RBG = 1 1 1

100% metallic, 0% rough

RGB = 1 1 1

100% metallic, 25% rough

RGB = 1 1 1

Normal mapping and displacement mapping

0% metallic, 50% rough, RGB = 0 0 1

100% metallic, 50% rough, RGB = 0.5 0.5 1

50% metallic, 25% rough, RGB = 0.5 0 0

Global Illumination and Full Lighting Integrator

Default Cornell

Spot Light

Point Light with Fireflies

Rough Mirror

Environment Lighting

No Direct Light

Default Cornell

Mirror Box

Rough Mirror Box Uniform

Multiple Importance Sampling and Microfacet Materials

Naive

Direct

MIS

Rough Mirror Box

Naive

Direct

MIS

Microfacet Materials

Naive

Direct

MIS

Direct Lighting Estimation

Point Light

Spot Light

Area Light

Two Area Lights

Specular Materials

Mirror Box with specular material

Transmit Box with transmissive material

Dieletric material

Naive Integration Renders in OpenGL Path Tracer

Naive integration sampling used to render a Cornell box with high dynamic range conversion

Naive integration sampling used to render a Cornell box without high dynamic range conversion

Naive integration with wi outputted as color

Ray Intersection Engine