An extensive report of all the features implemented can be found in report/. To read it, clone the repository (or download it as a zip) and open the final_report.html file in a browser (downloading just the html file won't work, as it uses images from the report folder)
assetscontains all resource files used to render the scenes, including models (.obj), volumes (.vdb), HDRIs (.exr), grammars (.l6) and textures (.png, .jpg, .exr)scenescontains all scene files used throughout the project. The main scene of interest isscenes/final/finalscene.xmlrenderscontains a bunch of images rendered from the scenes, including some at various testing stages (to keep a record of the progress)
extcontains all external libraries used as git submodulesincludecontains all headers of the projectsrccontains all source files of the project. To list some interesting code fragments:integrator/volum7.cppis the integrator used to render the final scenebsdf/microfacet.cppis an implementation of a microfacet modelcollection/octree.cppis an octree data-structure for ray intersectionstats/warp.cppcontains many sampling algorithms, including hierchical sampling for IBL, delta tracking for free-flight sampling, and inverse CDF mapping for various distributionsparser/lsystem.cppis an implementation of 3D stochastic LSystemsvolume/procedural.cppcontains the algorithm for volume generation (both the flowers and the clouds)
testcontains some demo code for specific features