Program 3 - Path Tracer
I developed a bloaty image format so that I could save all my image data
and tone map from that. Basically I just store out the XYZ values for
each pixel. These files are 4x as large as a PPM and I'm sure there's a
better way to do it, but this will allow me to easily use multiple tone
mapping algorithms without having to re-render. The RGBE format (unless
I was using it wrong) does not represent negative colors and so it didn't
work for my purposes.
The two tone mapping algorithms I used are the one presented in class (with a
k value of 0.003) and Ward's (in Pete's Tiger book). The one on the left
is Erik Reinhard's (i.e. the one given in class) and the other is
Ward's. Note that I did include the 683 multiplier when computing X, Y,
and Z - the k value would need to be considerably higher otherwise.
I compiled -Ofast on burn.sci.utah.edu and used 14 threads (it is a 14
processor machine). Times given are for that configuration. All calculations
were done using floats. All rays took 6 bounces. I used 15
spectral bins.
Note: The down sizing caused the images to look better than they
actually are. Please click on them to see the true results.

100 rays/pixel; 3:58.41s
979 sequences of 25 samples used
|

1024 rays/pixel; 32:58.74
97 sequences of 256 samples used
|

10,000 rays/pixel; 5:19:24
47 sequences of 2500 samples used
|

65,536 rays/pixel; 34:50:23
31 sequences of 126^2 samples used
|
I'd like to do the following. When I do I'll post some images:
- Explicit Direct Lighting
- Russian Roulette (for comparison)
- Gamma correction
- Ray Traced Image (for comparison)
- Image with no direct lighting (for comparison - to show how much indirect
lighting adds)
-Amy Williams