Home

Awesome

Yocto/Pathtrace: Tiny Volumetric Path Tracer

For this homework the main objectives were to:

Framework

The code uses the library Yocto/GL, that is included in this project in the directory yocto.

In order to compile the code, you have to install Xcode on OsX, Visual Studio 2019 on Windows, or a modern version of gcc or clang on Linux, together with the tools cmake and ninja. The script scripts/build.sh will perform a simple build on OsX.

Main functionalities can be found in yocto_pathtrace.{cpp|h}

This repository also contains tests that are executed from the command line as shown in run.sh. The rendered images are saved in the out/ directory. The results can be compared with the ones in the directory check/.

Functionality

In this homework/project the following features are implemented:

Extra Functionality (implicit surfaces)

Until now we have always used triangle or quad meshes in our renderers; this extra credit aims to implement a renderer similar to the one implemented in the second homework but which can render scenes containing ONLY implicit surfaces.

In particular, this implementation allows to render scenes composed by SDF (signed distance function), such as:

Following functionalities are implemented:

Extra information about implicit surfaces implementation can be found in report.pdf

Some renders