Real-time photo-realistic clouds path tracer with Lorenz-Mie scattering.
This is an enchancement on paper by Disney Research Deep Scattering.
Published and presented at SIGGRAPG Asia
Preparation
- Generate a sample cloud in Houdini
- Exporter of volumetric data from Houdini
- Importer of volumetric data for python and c++
Ground Truth
- Naive implementation of path tracer that only takes into account Beer-Lambert law and direct scattering
- Interactive visualisation of results
- Naive implementation that also takes into account Lorenz-Mie phase function.
- Implement multiple scattering using Monte-Carlo method
- Implement progressive path tracing
- Implement custom progressive path
- Implement Reinhard tone mapping
- Implement next event estimation
Dataset
- Generate more clouds
- Gather dataset of (cloud_id, point_in_cloud, sun_direction, view_direction, radiance)
- Gather dataset of samples around the point according to the original paper
- Separate the dataset for training, test, validation with total size of 15`000`000; leave a few clouds out of those sets for visual evaluation
Training
- Build a model in pytorch as described in the original paper
- Train the model
- Implement an efficient neural-based renderer in c++
- Compare to the original results
Research Experiments with different architectures.
- Shadow maps
- Latent space light probes
- Light probe rotation
- Light probe interpolation (trilinear, barycentric)
- Evaluate radiance only for the outer layers of the cloud