Mondays, Wednesdays 13:00-14:00 on Zoom
Sarah Kushner
[email protected]
Tutorial will be held on Fridays 13:00-14:00 on Zoom
- Course Overview
- Required Textbook
- Lecture Schedule
- Reading Schedule
- Marking Scheme
- Assignment Policies
This course introduces the basic concepts and algorithms of computer graphics. It covers the basic methods needed to model and render 3D objects, including much of the following: graphics displays, basic optics, line drawing, affine and perspective transformations, windows and viewports, clipping, visibility, illumination and reflectance models, radiometry, energy transfer models, parametric representations, curves and surfaces, texture mapping, graphics hardware, ray tracing, graphics toolkits, animation systems.
Prerequisites: C/C++ Programming, Linear Algebra, Calculus,(course codes).
Please post your questions about the lectures, readings, and assignment due dates on the Quercus discussion board. We will monitor this board and attempt to answer questions as they appear. Near deadlines responses may take longer, so please start assignments early. If your question is not being answered, you may ask it again at the tutorial or office hours.
For questions specific to each assignment, please post your questions as a GitHub issue on the assignment repository.
This class involves required reading from:
Fundamentals of Computer Graphics, Fourth Edition, Steve Marschner, Peter Shirley, et al. 2015.
Digital e-book are available at CRC Press.
Students are expected to buy and read the specified chapters of this textbook. Exams and assignments will depend not only material covered during lectures, but also on material from the assigned readings.
% | Item |
---|---|
1% | Pre-test & survey |
8% | Assignment 1 |
8% | Assignment 2 |
8% | Assignment 3 |
8% | Assignment 4 |
8% | Assignment 5 |
8% | Assignment 6 |
8% | Assignment 7 |
8% | Assignment 8 |
15% | Midterm exam |
20% | Final exam |
Note: Most slides are adapted from Professor David Levin's offering of the course.
Week | Topic / Event |
---|---|
May 4 | Introduction, Demos of Solutions Assignment 1 (Raster Images) due 12/05 |
May 11 | Assignment 2 (Ray Casting) due 20/05 |
May 18 | No class on Monday (Victoria Day), Wednesday: Introduce Ray Tracing |
May 25 | Assignment 3 (Ray Tracing) due 02/06 |
June 1 | Assignment 4 (Bounding Volume Hierarchy) due ./intersections related portion only worth 10%) |
June 8 | Assignment 5 (Meshes) due ./quad_subdivision related portion only worth 10%) |
June 15 | Monday: Meshes assignment, No class Wednesday |
June 22 | No class |
June 29 | No class Study for exam next week. |
July 6 | Monday: exam review, In class exam Wednesday July 8 (15% of grade) |
July 13 | Assignment 6 (Shader Pipeline) due |
July 20 | (Drop date) Assignment 7 (Kinematics) due I,i related portion only worth 10%) |
July 27 | Assignment 8 (Mass-Spring Systems) due |
August 3 | Computational Fabrication |
August 10 | Lectures: Intro to Geometry Processing and Physics Based Animation. Bonus Assignment due 16/08 |
August 17 | Exam Review on Monday. Final exam held online 22/08 at 9PM EDT (20% of grade) |
Week | Topic / Event |
---|---|
May 4 | Raster Images: Chapter 3 |
May 11 | Ray Casting: Sections 4.1-4.4 |
May 18 | Ray Tracing: Sections 4.5-4.9 |
May 25 | Ray Tracing cont. |
June 1 | Bounding Volume Hierarchy: Section 12.3 |
June 8 | Meshes: Section 12.1 & skim Chapter 11 |
June 15 | Meshes cont. |
June 22 | No class |
June 29 | No class Study for exam next week. |
July 6 | Monday: exam review, In class exam Wednesday July 8 (15% of grade) |
July 13 | Shading: Review Chapters 6,7,8.1,8.2 & Read Sections 11.4,11.5 & 17 |
July 20 | Kinematics: Sections 15.1-15.5 & 16.1-16.4 |
July 27 | Mass Spring Systems: Section 16.5 & "Fast Simulation of Mass-Spring Systems" [Tiantian Liu et al. 2013] |
August 3 | None |
August 10 | Exam Review Study for exam next week. |
August 17 | Final exam (20% of grade) |
Academic Honesty (required reading)
Assignments must be submitted electronically, using MarkUs.
Code that you submit to us must work on the CS Teaching Lab machines in order to earn credit.
0.007% off for every minute late.
All assignments must be completed individually.
Any code must belong to the student submitting it. Submitted assignments will be automatically analyzed to identify suspicious levels of code similarity. Consequences of committing an academic offence can be severe.
By enrolling in this course, students acknowledge that they have read and understand the University of Toronto's definitions and policy on Academic Integrity.