/multiple-lights

Optimization of Multiple Light Sources in Scenes (VI2 assignment)

Primary LanguageC++MIT LicenseMIT

multiple-lights

Exploring different approaches to optimize the rendering of scenes with multiple lights with the objective of improving rendering time while minimizing noise. (VI2 assignment)

The explored methods were:

  • pooling all lights from the scene
  • use a uniform distribution to fetch one random light per point
  • choose a random light based on how close it is to the point being calculated

Projects Dependencies

Linux and MacOs dependencies build

There is a local-thrparty folder with a buildeps script. The builddeps script will download, configure, compile and install into local-thrparty folder.

It will also generate a enviroment variable script that will setup the build environment.

source local-thrparty/install/bin/setenv

Building the project Linux/MacOs

Make sure the enviroment variables defined in "setenv" point to the proper install paths. On windows, make sure they are defined on the proper place.

mkdir build
cd build
cmake ..

Builing the project

make

Runing the exemple

./CGViewer2021 -m models/cornell/CornellBox-Water.obj

Authors

License

This project is licensed under the MIT License - see the LICENSE file for details