CS 6620 Fall 2014 - Project 10

Metal Sphere Stack: 00:32:43

Adaptive sampling: min 64, max 1024
Sphere roughness starts at 1 with each following sphere 1/4 the roughness of the previous one



Translucent Sphere Stack: 00:21:00

Adaptive sampling: min 64, max 1024
Sphere roughness starts at 1 and decreases similar to above but a bit faster. I haven't quite got my glossy transparency working right unfortunately.



Cornell Box: 00:32:34

Adaptive sampling: min 64, max 1024



Box Scene w/ MERL BRDFS: 00:57:03

Adaptive sampling: min 64, max 1024



The MERL scene makes use of the Stanford Dragon (1,132,830 tris) and Happy Buddha (1,087,716 tris) from the Stanford 3D Scanning Repository. The material BRDFS are from the MERL BRDF Database introduced in the paper "A Data-Driven Reflectance Model" by Wojciech Matusik, Hanspeter Pfister, Matt Brand and Leonard McMillan. The dragon uses the blue acrylic BRDF, the buddha uses the gold paint BRDF and the sphere uses the red fabric BRDF.

Cornell Box w/ Stanford Dragon Light: 00:45:16

Adaptive sampling: min 64, max 512 (also different machine, see below)


The scene is illuminated by an area light attached to the Stanford Dragon instead of the sphere light used previously. I'm not sure if it's quite correct since there doesn't seem to be much light coming off the sides, but it does look pretty cool! This scene was rendered on a different machine with an Intel i7 870 @ 2.93 GHz using 64 threads.

Hardware Used and Other Details

Render times were measured using std::chrono::high_resolution_clock and only include time to render, ie. time to load the scene and write the images to disk is ignored. Images were rendered with path tracing using 16 threads with work divided up in 8x8 blocks. I also improved my adaptive sampling to step up in powers of 2 instead of jumping from min to max.

CPU: Intel i5-2500K @ 4.0GHz, 4 hardware threads
RAM: 8GB 1600MHz DDR3
Compiler: gcc 4.9.1 x86_64 (on Windows, built by MinGW-W64 project)
Compilation Flags: -m64 -O3 -march=native -flto