About CS569


Steve Marschner, srm@cs.cornell.edu
Office hours: Tuesdays and Thursdays 3:00–4:00, 5159 Upson


Wenzel Jakob, waj23@cornell.edu
Office hours: Wednesdays 3:30–5:00 and Fridays 5:30–7:00, 455 Rhodes

Donald Holden, dsh34@cornell.edu
Office hours: Sundays 12:00-2:00pm, 455 Rhodes


Kelly Patwell, patwell@cs.cornell.edu
5147 Upson


Tuesdays and Thursdays, 1:25–2:40, 407 Phillips


455 Rhodes, the computer graphics instructional lab (part of csuglab)


This class, which expects that you've taken a basic graphics class already (CS465, for those who took it here), explores the algorithms and techniques used for interactive graphics---when images need to be displayed at many frames per second. The exact topics are subject to change, but we will cover graphics processors (GPUs) and how to use them effectively; texture maps and their many uses; spatial data structures for culling and other queries; level-of-detail techniques; techniques for real-time animation; and user interaction. The course is fairly practical in nature, with a focus on getting things to work and making them fast.


The coursework consists of:


The exams are closed book, but you're allowed to bring one letter-sized piece of paper with writing on both sides, to avoid the need to memorize things.


Grading and late assignments

Your final grade will be computed from the grades on the assignments, project, and exam. The assignments will account for 40% of the grade, the project will account for 40%, and the exam will account for 20%.

Programming assignments are due at 11:59 pm on the due date (normally Tuesday) and are accepted with a late penalty until 11:59 pm two days after the due date (normally Thursday). Programs are accepted late as follows:

  1. Hand in by late deadline: 10% off score (about 1 letter grade)
  2. Hand in within 1 week of due date: graded pass/fail; pass receives 50/100
  3. More than 1 week late: no credit

Assignments that are handed in under option 2 will not be graded carefully and may be returned very late. That option is just intended to give you a chance to reduce the effect of zeros averaged into your grade.

Extra credit

For the programming assignments you are welcome to implement extra features. Don't expect large numbers of extra credit points—the idea is just to encourage you to have fun exploring the material in more depth.

Some ground rules:


The principle is that an assignment is an academic document, like a journal article. When you turn it in, you are implying that everything in it is your original idea (or is original to you and your partner, if you're handing in as a pair) unless you cite a source for it.

You are welcome (encouraged, even) to discuss the material of this class among yourselves in general terms. But when it comes to the details of the assignments, you need to be working independently. In particular, it's never OK for you to see another team's code for a programming assignment.

You're also welcome to read any published sources—books, articles, public web sites—that help you learn. If you find an idea in one of these sources that becomes part of your solution, that's fine, but it's imperative that you credit that fact in your writeup or in a comment in your code. Otherwise you would be falsely claiming to have invented the idea yourself.

Academic Integrity

In this course we expect complete integrity from everyone. School can be stressful, and your coursework and other factors can put you under a lot of pressure, but that is never a reason for dishonesty. If you feel you can't complete the work on your own, come talk to the professor or the TAs, or your advisor, and we can help you figure out what to do. Think before you hand in!

Clear-cut cases of dishonesty will result in failing the course.

For more information see Cornell's Code of Academic Integrity.