CS 488/688: Introduction to Computer Graphics
Fall 2015
Welcome to the home page for CS488/688, the introductory computer graphics course in the School of Computer Science at the University of Waterloo. This course focuses on 3D graphics, although it does discuss some aspects of user interface design. CS488/688 has a fairly heavy project component and should not be taken in conjunction with other heavy project courses.
Course logistics for Fall 2015
- Instructor
- Craig S. Kaplan
(see also)
DC 2110
csk@uwaterloo.ca
Office hours: Thursdays, 2:00–3:00 (or by appointment) - Teaching Assistant
- Dustin Biser
dustinbiser@gmail.com
Office hours: Mondays, 11:00–12:00 in MC 3007; Fridays, 11:00–12:00 in DC 3594 (Sci-Com Lab) - Lectures
- Tuesdays and Thursdays, 10:00–11:20, PAS 1229
- Lab
- MC 3007 (There are no scheduled lab times. The lab is available 24 hours a day for students enrolled in CS 488/688.)
- Exams
- Midterm: Thursday, October 29th, 10:00–11:00
in PAS 1229 (in class). The midterm covers everything up to
the end of Hidden Surface Removal, and is worth 10% of your
final grade..
Final: Tuesday, December 8th, 4:00–6:30 in RCH 103. - Course Outline
- The course outline contains general information about the course in a format mandated by the Registrar's Office.
- Books
-
- CS 488/688 Lecture notes. Hardcopy available at Media.doc in MC 2018, or as a downloadable PDF.
- Computer Graphics: Principles and Practice (3rd Edition), by Hughes et al.
- OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition), by Schreiner et al.
Fall 2015 Readings
The readings in the official course notes are out of date,
as we change textbooks and new editions come out. Here is a
selection of readings for this term's offering, mostly taken
from the recommended text (Principles and Practice,
third edition, herafter referred to as CGPP).
- Module 2: Introduction
- CGPP: Chapter 1, Section 3.1, Section 15.1, Section 15.2, Section 16.3
- Module 5: Geometries
Module 6: Affine Geometry and Transformations
Module 7: Windows, Viewports, NDC- CGPP: Sections 7.1–7.7, Chapter 10, Chapter 11
- Module 9: Projections and Projective Transformations
- CGPP: Sections 10.13, Chapter 13, Section 36.5
- Module 11: Polygons
- CGPP: Sections 7.10
- Module 12: Hidden Surface Removal
- CGPP: Chapter 36
- Module 13: Hierarchical Models and Transformations
- CGPP: Section 6.6
- Module 15: Colour and the Human Visual System
- CGPP: Chapter 28
- Module 16: Reflection and Light Source Models
- CGPP: Sections 6.2.2, 6.2.3, 6.5, Chapter 27 (advanced)
Fall 2015 Assignments
- Assignment 0: Warmup (Due Monday, September 21st at 11:59pm)
- Assignment 1: OpenGL (Due Monday, September 28th at 11:59pm)
- Assignment 2: Pipeline (Due Tuesday, October 13th at 11:59pm)
- Assignment 3: Puppet (Due Monday, October 26th at 11:59pm)
- Assignment 4: Trace (Due Monday, November 9th at 11:59pm)
- Assignment 5: Project (Multiple due dates)
General information about CS 488/688
Start by visiting the old home page for the course, where you'll find lots of other useful information and links. More information will be available here shortly.
- The website open.gl is a great starting point for programming in modern OpenGL, featuring a sequence of well written tutorials.
- Song Ho Ahn also has a number of useful tutorials that explain concepts in 3D computer graphics, especially as related to the OpenGL graphics pipeline.
- Visit docs.gl for the best OpenGL API reference.