CS 6620 - Fall 2017 - Ray Tracing for Graphics
Project 9 - Depth of Field
Kevin Parker
Final result
I rendered this with adaptive 12->256 samples.
Render time was 14.7 seconds for a relatively non-grainy result.
This uncovers an interesting bug in scene.h: the representation of the SampleCount is stored in a uchar*, so the very few places where my algorithm chooses to use 256 samples causes it to clip and wrap back around to 0 in the bottom image.
This is largely seen at the bright specular reflections of the lights on each sphere.
Second, there is a visual glitch in the scene: the seam between the teapot's lid and side shows several pixels of the sphere behind it on the right-hand side.
This second bug is much more visible in the next picture where the teapot's brick texture is missing.
Intermediate result
I encountered 2 main issues when implementing depth of field.
The first was trivial: I just had some filepaths messed up, so textures weren't loading properly.
Second, I needed to tune my adaptive sampling just a bit more so it'd produce a less-grainy result.
Extra cat-eye image
I felt a bit left out that everyone else's images were way blurry at the further dofs, so I decided to give something a try.
Cat pupils seem to commonly have a very small aspect ratio (much lower than 1), so I experimented with a stretched ellipse of confusion in a 1:6 ratio.
It gives a pretty interesting effect.
This took about 25 seconds to render.
Machine Specs
MacBook Pro (15-inch, 2016)
2.7 GHz quad-core Intel Core i7 Skylake (6820HQ)
16 GB 2133 MHz LPDDR3 RAM