CMPT 361 lab 4
Jordan Klassen
~60% completion

Y = yes
N = no
P = partial

Required Tasks (80%)
Y (5%) Output a valid ppm file. (example1.scn)
P (10%) Parse the camera parameters, set up the viewport and raycast spheres. (example1.scn) (i don't know why it's not working properly for example4.)
Y (10%) Implement basic Phong illumination and shading. (example2.scn)
Y (10%) Parse and raycast triangles (meshes read from obj files - example3.scn)
Y (10%) Add Shadows (example3.scn)
P (10%) Implement basic reflection and refraction (perfect specular - example4.scn) (I can't confirm if refraction is working properly, but reflection is perfect.)
P (10%) Add basic (color image) texture mapping for spheres and triangles. This requires the functionality to read ppm files (example4.scn) (You'll notice.)
N (15%) Add object transformations (translation, scaling, rotation) (example5.scn)

Effects (20%)
    (10%) depth of field & real camera lense. (Effect name: dof)
    - was planned, plan is laid out in comments, but nothing is implemented.

Additional stuff:
Supersampling(output antialiasing) can be enabled by uncommenting the #define USE_SUPERSAMPLING line in config.h and running 'touch Raytracer.cpp;make'

Run using the pre-specified arguments from the assignment spec.

Torsten's assignment has plaigrism. And he made many of the components mandatory. Just because it's 15 years old doesn't mean that we can do 15 times the amount of work.