3D Graphics

The following is a series of assignments I completed for the CSC418 graphics course at University of Toronto. The professor of the course was David I.W. Levin. The src folder of each project contains the files written by me. There is an additional readme in the src folder of each project with further details about my contributions and how to run the build. 

Shader Pipeline

Using the real-time rendering shader pipeline and procedural rendering in OpenGL shading language (glsl). I created a moon orbiting a planet using shaders. 

Kinematics

Forward Kinematics, keyframe animation and inverse kinematics. 

Meshes

Texture mapping, surface normal interpolation and Catmull-Clark subdivision. 

Bounding Volume Hierarchy/Mesh Intersection

Bounding Volume Hierarchy,

point cloud distances and mesh intersection.

Raytracing

A raytracer using Blinn-Phong shading and reflection.