CSC 418/2504, Fall, 2002: Computer Graphics

Instructor Karan Singh
Phone (416) 978-7201
Office Hours BA 5258, M 12-1pm
(other times by appointment only)

Lectures MW 1pm, BA 1190
Tutorials F 1pm



This course introduces the basic concepts and algorithms of computer graphics.


Most of the following will be covered:
colour representation and perception, colour displays, basic optics, light energy transfer, line drawing, affine and perspective transformations, windows and viewports, clipping, visibility, illumination models, energy transfer models, parametric representations, curves and surfaces, texture mapping, graphics hardware, ray tracing, graphics toolkits, procedural models, animation systems.

Course Texts

Required CSC 418/2504 Course Notes, Winter 2002.
Required F.S. Hill, Jr. Computer Graphics Using OpenGL, Second Edition, Prentice Hall, 2001.
Recommended Mason Woo et al, OpenGL 1.2 Programming Guide, Third Edition, Addison-Wesley, 1999 (recommended for learning OpenGL).

Grading Scheme

out in weight
Assignment #1 W Sep 18  W Oct 2, in class 15%
Assignment #2 W Oct 16 W Oct 30, in class 15%
Assignment #3 M Sep 9 M Dec 2, in class 30%
Midterm Test M Nov 4, in class 15%
Final Dec 9- 18 25%

Assignments involve both analytic problems as well as implementation of algorithms. Assignment 3 will include a small project. Descriptions of suggested projects will be provided online. Late assignments will be penalized 20% per day.

You are expected to be a competent programmer in C or C++ in this course. You will need knowledge of 3D geometry, linear algebra, calculus, complexity theory, and data structures.

Plagiarism is a serious academic offense; the work submitted should be your own. If you have exchanged ideas with a fellow student and thus have answers which might be falsely construed as being plagiarised, you should state this.

Computer Facilities, St. George campus

The programming assignments will make use of the CDF Unix facilities. Those unfamiliar with CDF will find A student's Guide to CDF to be useful. This guide is available in the bookstore. The CDF workstations are located in the Engineering Annex in EA107, EA201, and EA203. There's also an online FAQ, with a variety of useful information about working on the CDF Unix machines. You may use Visual Studio to program your assignments on Windows as well (you are on your own on this platform... there is no CDF support for it and you must submit self contained executables in addition to the workspace and source files).

The course newsgroup ut.cdf.csc418h can be used as a discussion forum, and the professor and TAs will check it periodically, and may answer your questions posted there. Questions are best asked in person to the TAs or the professor, at appointed times. Common questions and problems with assignments will be handled using online FAQs.