Advanced Light Transport
Unbiased light transport methods:
- Bidirectional path tracing (BDPT)
- Metropolis light transport (MLT)
Biased light transport methods
- Photon mapping
- Vertex connection and merging (VCM)
Instant radiosity (VPL / many light methods)
An unbiased Monte Carlo technique does not have any systematic error. The expected value of an unbiased estimator will always be the correct value, no matter how many samples.
Otherwise, biased. One special case, the expected value converges to the correct value as infinite #samples are used — consistent
Unbiased Light Transport
Bidirectional Path Tracing (BDPT)
- Traces sub-paths from both the camera and the light
- Connects the end points from both sub-paths
- Suitable if the light transport is complex on the light's side
- Difficult to implement & quite slow
Metropolis Light Transport (MLT)
- A Markov Chain Monte Carlo (MCMC) application. Jumping from the current sample to the next with some PDF
- Very good at locally exploring difficult light paths
- Key idea: Locally perturb an existing path to get a new path
Pros:
- Works great with difficult light paths
- Also unbiased
Cons:
- Difficult to estimate the convergence rate
- Does not guarantee equal convergence rate per pixel
- So, usually produces "dirty" results
- Therefore, usually not used to render animations
Biased Light Transport
Photon Mapping
- A biased approach & A two-stage method
- very good at handling Specular-Diffuse-Specular (SDS) paths and generating caustics
Approach:
Photon Tracing: Emitting photons from the light source, bouncing them around, then recording photons on diffuse surfaces
Photon Collection (final gathering): Shoot sub-paths from the camera, bouncing them around, until they hit diffuse surfaces
Calculation: local density estimation
Idea: areas with more photons should be brighter
For each shading point, find the nearest N photons, Take the surface area they over
Small N <-> noisy; Large N <-> blurry
Why biased:
local density estimation
, But in the sense of limit - More photons emitted
- the same N photons covers a smaller
is closer to
So, biased but consistent!
Vertex Connection And Merging (VCM)
A combination of BDPT and Photon Mapping
Key idea:
- Let's not waste the sub-paths in BDPT if their end points cannot be connected but can be merged
- Use photon mapping to handle the merging of nearby "photons"
Instant Radiosity (IR)
Sometimes also called many-light approaches
Key idea: Lit surfaces can be treated as light sources
Approach:
- Shoot light sub-paths and assume the end point of each sub-path is a Virtual Point Light (VPL)
- Render the scene as usual using these VPLs
Pros: fast and usually gives good results on diffuse scenes
Cons:
- Spikes will emerge when VPLs are close to shading points
- Cannot handle glossy materials
Advanced Appearance Modeling
Non-surface models
- Participating media
- Hair / fur / fiber (BCSDF)
- Granular material
Surface models
- Translucent material (BSSRDF)
- Cloth
- Detailed material (non-statistical BRDF)
Procedural appearance
Non-Surface Models
Participating Media
At any point as light travels through a participating medium, it can be (partially) absorbed and scattered.
Use Phase Function to describe the angular distribution of light scattering at any point x within participating media.
Rendering
- Randomly choose a direction to bounce
- Randomly choose a distance to go straight
- At each 'shading point', connect to the light
Hair / Fur / Fiber (BCSDF)
Hair
Kajiya-Kay Model
The effect is not good
Marschner Model
Glass-lick cylinder
3 types of light interactions: R, TT, TRT (R: reflection, T: transmission)
Fur
Fur appearance as human hair: Cannot represent diffusive and saturated appearance
Double Cylinder Model
Lobes
Granular Material
Explicit modeling of all granules with procedural definition.
Surface Models
Translucent Material (BSSRDF)
Subsurface Scattering: Visual characteristics of many surfaces caused by light exiting at different points than it enters. Violates a fundamental assumption of the BRDF
Scattering Functions
BSSRDF: generalization of BRDF; exit radiance at one point due to incident differential irradiance at another point:
Generalization of rendering equation: integrating over all points on the surface and all directions
Dipole Approximation: Approximate light diffusion by introducing two point sources.
Cloth
A collection of twisted fibers
Two levels of twist
Woven of knitted
Render as Surface
- Given the weaving pattern, calculate the overall behavior
- Render using a BRDF
Render as Participating Media
- Properties of individual fibers & their distribution -> scattering parameters
- Render as a participating medium
Render as Actual Fibers
- Render every fiber explicitly.
Detailed Material (non-statistical BRDF)
Statistical NDF vs. Actual NDF
Difficult path sampling problem
Solution: BRDF over a pixel
Procedural Appearance
Can we define details without textures?
Compute a noise function on the fly
3D noise -> internal structure if cut or broken
if noise(x,y,z) > threshold reflectance = 1 else reflectance = 0