Yeaa raytracers

As a nice little distraction I've been working on a ray tracer. For whatever reason, ray tracers have always fascinated me... I think it was probably due to the awful art on my gradeschool Trapper Keeper:

trapperkeeper

In any case, I decided to code a simple one on my own to better understand how they work. It was a fun project and caused me to revisit my 'prim' library which deals with primitives like vectors, quaternions, etc. Dealing with 3D rays and intersections is also a good math refresher and cleared out a good amount of cobwebs.

The source can be had here. A screenshot of the final state of the ray tracer including diffused lighting, shadows, and reflection: