CS 496 — Computer Graphics
San Diego State University — Spring 2000

Dr. Steve Cunningham
cunningham@siggraph.org, rsc@sdsc.edu
in collaboration with Dr. Kris Stewart

Class BAM 412; Laboratory BAM 120

An introduction to computer graphics programming using OpenGL.  The course will cover the primary components of image synthesis, including geometry, transformations, lighting, shading, and texture mapping, as well as the basis of interaction such as events, callbacks, and object selection.  The course projects will emphasize applications of graphics in the sciences and mathematics.

Prerequisites: sound programming skills equivalent to successful completion of CS 108.  Solid spatial thinking skills are also useful.

Course content: we will cover as much of this material as we can, but will emphasize examples of graphical programming for scientific studies and effective communication through images.

There is no formal syllabus for the course, but the ordering of topics above is probably a fairly good approximation of the sequence in which we will cover materials.  The book “OpenGL Programming Guide,” second or third edition, Mason Woo et al., Addison-Wesley, is the text for the course.

Instructor:Dr. Cunningham is on leave in 1999-2000 from California State University Stanislaus to develop curriculum and projects for the introductory computer graphics course.  This project is also supported by the National Science Foundation.  This course at San Diego State is an early implementation of some of these ideas and your feedback is strongly desired.  Dr. Cunningham regularly attends various graphics events and has served in several positions with ACM SIGGRAPH, and <commercial> you are all encouraged to join ACM and SIGGRAPH as student members to see what is happening in the larger world of computer science and computer graphics. </commercial>

Because Dr. Cunningham is not a regular SDSU faculty member, he does not maintain an office or have an on-campus phone number.  Office hours are approximately 6:00 to 7:00 pm — right before class — in the BAM 120 lab.  Contact by email is encouraged and a listserv has been set up (cs496@lists.sdsu.edu) to allow everyone in class to communicate with everyone else for questions or comments.

Projects and examples:  Projects and examples will be posted regularly in the space below.  It is your responsibility to check this page from time to time between class meetings just in case your instructor should get ambitious and put up additional material that you could use to help you in your work.  Note that some of the materials here will require that your browser have the Acrobat Reader plug-in installed.

Background:  I have made available a few papers that explain some of the approaches I want to take with this course.  Students don’t often see the background concepts for the courses you take because you’re much more interested in the content, but I want to share this with the class so you can participate in helping me to develop these concepts.

Other work is being developed as well to communicate the concepts of this course to the computer science community, specifically to the small college community.

Resources and examples:

Comments to the instructor: Projects: Grading and exams:  Your instructor will give grades based on projects and an examination at the end of the semester.  Grading standards are based on correct coding and output for projects and correct and well-thought-out responses for examinations.  Grades will be based upon course projects (50%) and an examination (50%).  Projects will be assigned as the semester progresses, and the examination will be given at the end of the semester at a time to be announced later.  (Please note that this is not a "final examination"; you will doubtless have many others in your university careers, so it makes no sense to call this one "final."  It's simply the examination in this class.)

Acknowledgements and copyright:  These materials were developed with the support of National Science Foundation grant DUE-9950121 and with sabbatical support from California State University Stanislaus.  All opinions, findings, conclusions, and recommendations in this work are those of the author and do not necessarily reflect the views of the National Science Foundation.  The San Diego Supercomputer Center also generously provided resources to support this work.  All are gratefully acknowledged.  All the material in this course and on these pages is copyright © 2000 by Steve Cunningham unless another creator and/or copyright is specifically noted, as is the case on some files.