/filtered-is

Filtered importance sampling in WebGL.

Primary LanguageC++

Filtered Importance Sampling in WebGL

This was coded as a part of my diploma thesis on physically-based shading (or rendering). Importance sampling (IS) is essentially a Monte Carlo integration method used in rendering diffuse and glossy surface reflections (BRDFs evaluated in semi-random directions across a hemisphere domain). But plain importance sampling requires a large number of samples to produce accurate results in many cases. Filtered IS adds filtering (doh) of environment maps (mipmaps) to reduce the number of needed samples. See resources for more theory. Online here.

Screenshot

Features

Resources

SIGGRAPH 2010 Course: IS for Production Rendering

Importance Sampling for Production Rendering

GPU-Based Importance Sampling

Physically Based Shading SIGGRAPH 2014

Physically Based Shading SIGGRAPH 2013