Monte Carlo Path Tracer in Unity3D using compute shader
Unity 2018.3.7f1 (win10 64-bit)
Features:
- Path Tracing Rendering based on Monte Carlo integration
- Emprical BRDF and BTDF
- Diffuse, specular, refraction, Fresnel
- Hemisphere Sampling, importance sampling
- Fuzzy glassy ball
Principle:
Rendering Equation
Monte Carlo Integration
BSDF = BRDF + BTDF
Energy Distribution
BRDF and importance sampling
Importance-Sampling Lambert
Importance-Sampling Phong
BTDF and importance sampling
Importance-Sampling Phong for refraction
Reference:
GPU Path Tracing in Unity – Part 2
Rendering Equation
Monte Carlo Methods in Practice
蒙特·卡罗(Monte Carlo)积分详解
Using the Modified Phong Reflectance Model for Physically Based Rendering (1994)
Uniform Sampling on unit Hemisphere
Generating uniformly distributed numbers on a sphere
Reflection, Refraction (Transmission) and Fresnel
Webgl中采用PBR的实时光线追踪
Image-based rendering of spatially-varying BSDF