This class is over. It was taught in a previous semester.

CSCI 480 Computer Graphics, Spring 2011

Administrative Matters

Spring 2011, Monday and Wednesday, 10:30-11:50, ZHS 159
Instructor: Jernej Barbic
Office: SAL 230
Office hours: Wednesday 3:30 - 5:00   
TA: Fun Shing Sin
Office: SAL 112
Office hours: Monday and Thursday 4:00 - 5:00

Introduction and Purpose

This course is an introduction to three-dimensional computer graphics. Students will learn both the theory of 3D computer graphics, and how to program it efficiently using OpenGL. Topics include 2D and 3D transformations, Bézier and B-Spline curves for geometric modeling, interactive 3D graphics programming, computer animation and kinematics, and computer graphics rendering including ray tracing, shading and lighting. There will be an emphasis on the mathematical and geometric aspects of computer graphics. This course is regularly offered every semester (the instructor may vary from offering to offering, as may the content somewhat).

Schedule | Prerequisites | Textbooks | Assignments | Grading | Resources and Supplementary Reading | Academic Integrity

Date Topic Reading Reference Assignments

Mon Jan 10 2011 What is Computer Graphics Ch 1 PDF  PDF-6X-BW
Wed Jan 12 Basic Graphics Programming Ch 2 PDF  PDF-6X-BW

Mon Jan 17 No class (Martin Luther King Day)
Wed Jan 19 Input and Interaction Ch 3 PDF  PDF-6X-BW Assignment 1 out

Mon Jan 24 Transformations Ch 4 PDF  PDF-6X-BW
Wed Jan 26 Viewing and Projection Ch 5 PDF  PDF-6X-BW

Mon Jan 31 Hierarchical Modeling Ch 5.10, 10.1-10.6 PDF  PDF-6X-BW
Wed Feb 2 Polygonal Meshes, Curves and Surfaces Ch 12.1-12.3 PDF  PDF-6X-BW

Mon Feb 7 Splines Ch 12.4-12.12 PDF  PDF-6X-BW Assignment 1 due | Class video
Wed Feb 9 Lighting and Shading Ch 6.1-6.4 PDF  PDF-6X-BW Assignment 2 out

Mon Feb 14 Shading in OpenGL Ch 6.5-6.9 PDF  PDF-6X-BW
Wed Feb 16 Texture Mapping Ch 8.7-8.8 PDF  PDF-6X-BW

Mon Feb 21 No class (President's Day)
Wed Feb 23 Clipping Ch 7.1-7.7 PDF  PDF-6X-BW

Mon Feb 28 Rasterization Ch 7.8-7.11, 8.9-8.12 PDF  PDF-6X-BW
Wed Mar 2 Programmable Graphics Hardware Ch 9 PDF  PDF-6X-BW Assignment 2 due | Class video

Mon Mar 7 Review for midterm
Wed Mar 9 Midterm exam

Mon Mar 14 No class (spring break)
Wed Mar 16 No class (spring break)

Mon Mar 21 Ray Tracing Ch 13.2-13.3 PDF  PDF-6X-BW
Wed Mar 23 Ray Tracing: Geometric Queries Ch 13.2-13.3 PDF  PDF-6X-BW Assignment 3 out

Mon Mar 28 Spatial Data Structures Ch 10.12 PDF  PDF-6X-BW
Wed Mar 30 Global Illumination Ch 13.4-13.5 PDF  PDF-6X-BW

Mon Apr 4 Keyframe Animation Ch 10.6 PDF  PDF-6X-BW
Wed Apr 6 Quaternions and Rotations Ch 4.12 PDF  PDF-6X-BW

Mon Apr 11 Physically Based Simulation Ch 11.2-11.6 PDF  PDF-6X-BW
Wed Apr 13 Guest lecture: Dr. Doug Roble, Digital Domain Assignment 3 due

Mon Apr 18 Image Processing Ch 7.13, 8.11-8.12 PDF  PDF-6X-BW
Wed Apr 20 Non-Photorealistic Rendering PDF  PDF-6X-BW

Mon Apr 25 Virtual Environments PDF  PDF-6X-BW
Wed Apr 27 Visualization Ch 2.11 PDF  PDF-6X-BW

Mon May 9 Final exam 8-10 a.m., ZHS 159


Textbooks (both required)


There will be three programming homework assignments, teaching students OpenGL and how to program 3D computer graphics. Please see the schedule for links to assignments and due dates. All assignments must be done individually.


All assignments must be completed to pass the course. The assignments will have a small amount of extra credit.

Late policy: Programming assignments should be turned in by midnight on the day they are due. A total of three late days may be taken during the semester on programming assignments. For example, you can use one late day on the second assignment, and two on the third assignment. All days are counted, including any weekends and holidays, as follows:
Less than 24 hours late = 1 late day, 24-48 hours late = 2 late days, 48-72 hours late = 3 late days, and so on.
The flexibility provided by the late days is intended to get you through the time where all your classes just happen to have assignments due on the same day. Beyond the three late days, there will be a penalty of 10% of the value of the assignment / day. Exceptions will be granted only under most dire circumstances and must be discussed with and approved by the instructor at least one week in advance.

Resources and Supplementary Readings

Computer Graphics References

Prerequisite-related Resources


I wish to thank Prof. Frank Pfenning and Prof. Jessica Hodgins from Carnegie Mellon University for generously providing materials from their computer graphics courses at CMU. This course has also been influenced by computer graphics courses at Cornell, MIT and UC Berkeley.

Academic integrity

All students are expected to maintain the utmost level of academic integrity. Do not copy any parts of any of the assignments from anyone. Do not look at other students' code, papers, or exams. The university policies on academic conduct will be applied rigorously, and the USC Office of Student Judicial Affairs and Community Standards will be notified. Please consult the USC Student Guidebook (for example, Section 11.00 in the University Governance chapter) for details on what is and is not appropriate, and for the possible consequences of violating the rules. USC seeks to maintain an optimal learning environment. General principles of academic honesty include the concept of respect for the intellectual property of others, the expectation that individual work will be submitted unless otherwise allowed by an instructor, and the obligations both to protect one’s own academic work from misuse by others as well as to avoid using another’s work as one’s own. All students are expected to understand and abide by these principles. Scampus, the Student Guidebook, contains the Student Conduct Code in Section 11.00, while the recommended sanctions are located in Appendix A. Students will be referred to the Office of Student Judicial Affairs and Community Standards for further review, should there be any suspicion of academic dishonesty. The Review process can be found at:

Statement for Students with Disabilities

Any student requesting academic accommodations based on a disability is required to register with Disability Services and Programs (DSP) each semester. A letter of verification for approved accommodations can be obtained from DSP. Please be sure the letter is delivered to me (or to TA) as early in the semester as possible. DSP is located in STU 301 and is open 8:30 a.m.–5:00 p.m., Monday through Friday. The phone number for DSP is (213) 740-0776.