A C++ implementation of a ray tracing rendering engine based on Nori, originally developed for the Advanced Computer Graphics course at EPFL and passed with 6/6.
Final scene showcasing most of the features, rendered with volume rendering. Uncompressed version
- Volume rendering with multiple homogenous participating media
- Multiple importance sampling
- Texture and normal mapping
- Multiple materials, including rough and smooth dielectrics and conductors
- Point, area, directional and image-based lights
- Environment maps
- Depth of field
- Incremental rendering
Topics | Links |
---|---|
Project setup and dummy integrators | report.html |
Octree optimization | report.html |
Probability distributions, point lights, ambient occlusion, hierarchical sample warping | report.html |
Area lights, Whitted-style ray tracing, dielectrics | report.html |
Path tracing, next event estimation, multiple importance sampling, microfacet BRDF | report.html |
Final scene | report.html |