After receiving the hint in-class, I followed the directions to implement antialiasing--just pass
jittered x/y coordinates to the CalcPixel function. A 3x3 grid was adequate
for my uncultured standards. The scene is the test one I made from the "getting to know the raytracer" assignment.
Attempt 1:Randomize a cube around each light source
Attempt 2:Uniformly randomize a sphere around each light source
This one had similar problems as above.
Attempt 3:Randomize in a circle in the plane perpendicular to the direction vector.
While I'm uncertain about my implementation, it created noise even when not around the shadow's edges. Which was weird.
In the end I was satisfied with throwing in antialiasing. 3x3 jittered anti-aliasing with 10 shadow feelers per
ray for this second image on the left. The graininess is still there, but a gray shadow on a gray material is hard to pick out. =)
Here's a second picture, from a better angle.
Here the eye position is jittered. I used a 5x5 pattern on more wooden spheres.
The first I've tentatively(pretentiously?) titled "The March of Time". A sundial and hourglass sit at the front, blurry and replaced by the analog clock on the mirror wall. Four and a half hours, and the clock is whited out by a light source. Ah well.
What I started rendering when I woke up today(instead of studying!). Motion blur on the Newton marble thing.