I was given the opportunity to be a sessional instructor at the University of Victoria. Below you will find a list of the undergraduate courses I taught along with links to the course material.
CSc 305: Introduction to Computer Graphics (Spring 2020)
An introduction to the field of computer graphics and its three main branches: modelling, animation, and rendering. The course covers theoretical concepts such as transformations, ray tracing, raster graphics with modern OpenGL, data structures for graphics, and debugging.
CSc 471: Fundamentals of Computer Rendering (Fall 2019)
A course that covers advanced techniques in Computer Rendering, focusing on real-time rendering through OpenGL and C++. Topics include the rendering pipeline and GPU, shading, texturing, light and colour, physically based shading, local and global illumination, as well as optimization techniques.
CSc 116: Fundamentals of Programming with Engineering Applications II (Fall 2018)
A second course in programming for engineers using C++17. Covers intermediate programming techniques and the development of software for real-world engineering applications using the Modern C++ standard. Topics include basic algorithms and data structures, abstract data types, object oriented programming, generic collection types, design of large programs, using and building software libraries, debugging techniques and software documentation.