An implementation of Lightcuts in PBRT
C++ Python C HTML Mathematica DTrace Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
dtrace
exporters
results
scenes
src
.gitignore
README.md
cleanup.bat
cscope.files
cscope.in.out
cscope.out
cscope.po.out
pbrt-README.txt
spherearealight.py

README.md

Lightcuts

Abhinav Gupta Ranveer Aggarwal

http://www.ranveeraggarwal.com/projects/lightcuts/

##Introduction We are implementing the paper, Lightcuts by Bruce Walter, Sebastian Fernandez, Adam Arbree, Kavita Bala, Mike Donikian and Don Greenberg. The link for the paper is: http://www.cs.cornell.edu/~kb/projects/lightcuts/

##Implementation We are using pbrt-v2, which we have forked from https://github.com/mmp/pbrt-v2 and its README can be found in pbrt-README.txt.

##Installation After cloning this repository or downloading the source code, run

make

in the src/ folder and generate the binaries.

##Running In the root directory, run

./src/bin/pbrt scenes/<pbrtfilename> --outputfile result.tga

##Behind the Scenes We implemented our own light tree data structure, and then we used error metrics to prune the tree from top to bottom and find light cuts. The tree construction was bottom up. We wrote a Python script to generate random light sources and used them to compare the time taken while rendering using Vanilla PBRT and our implementation.