The following files are projects I had to write for Comp 557, offered at McGill in the Winter 2020 (Introduction to Graphics). Apologies for having no .gitignore and commiting the compiled files and the photos-- I just drafted a quick repository for V.C. so as to not wipe my files accidentally. The only assignment of interest, in my opinion, is a4, but all the projects should work on Windows (a4 works on everything)
This is a ray tracer with some basic primitives and goodies. Notably, I implemented quadrics, area lights for softer shadows, mirror reflection, and boolean operations for constructive solid geometry, along with the absolute basics (normal shadows, cubes, planes, creating an object heirarchy, etc.)
To create a scene, one must create an XML file in the appropriate directory. See the provided files for formatting (or look at the parser).
Note: I made absolutely zero attempt to optimize (since we were only graded on the images outputted), so if you go ham on the goodies (for instance, what I did with my lemons scene), go make some lunch or something.
If you are a current comp 557 student, please don't steal my work.