CS 551-0003: Advanced Computer Graphics

Cross-listed as CS 651-0001; see below


Time: 9:30-10:45 PM, Tuesdays and Thursdays
Place: MEC 214
Instructor: David Luebke (Olsson #219), luebke@cs.virginia.edu
TA: Dale Newfield (Olsson #226A), DNewfield@cs.virginia.edu
Format: Project-oriented, with several programming assignments. Two tests.
The graduate-level course CS 651-0001 is being taught through the same lectures, but with slightly different requirements. Undergraduates are only elgible for the 551 version of the course.
Prerequisites: Previous computer graphics course experience (e.g., Professor Ryall's CS 551: Computer Graphics), or consent of instructor. Good C/C++ programming skills a must.
Description: This course will cover advanced topics in computer graphics. These include: realism (ray tracing, path tracing, and radiosity), speed (occlusion culling, level-of-detail, texture tricks), hardware (rendering pipeline, graphics architectures), non- traditional rendering (pen-and-ink, painterly rendering), animation (physically-based modeling, collision detection, particle systems), and image-based rendering (image warping, sprites, layered-depth images). The project-oriented course will involve several programming assignments. Strong C/C++ programming skills and previous computer graphics experience are assumed.
Texts:
Required:
Advanced Animation and Rendering Techniques: Theory and Practice by Watt and Watt, Addison-Wesley (1992).
Suggested:
Computer Graphics: Principles and Practice by Foley, van Dam, Feiner, and Hughes, Addison-Wesley (1993).
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.1 by Mason Woo et al., Addison-Wesley (1997).
Documentation: Documentaion regarding the software you will be expected to use can be found in a variety of places.
Nitty-Gritty: In order to use the infrastructure in place in the class account, you'll need to make some modifications to your unixlab account.
Handouts: Syllabus, Bio Sheet
Lectures: Lecture 1 (1/21/99)
Lecture 2 (1/26/99)
Lecture 3 (1/28/99)
Lectures 4&5 (2/2/99&2/4/99)
Lecture 6 (2/9/99)
Lecture 7 (2/11/99)
Lecture 8 (2/16/99)
Lecture 9 (2/18/99)
Lecture 10 (2/20/99)
Lecture 11 (2/25/99)
Lecture 12 (3/2/99)
Lecture 13 (3/4/99)
Lecture 14 (3/9/99)
Lecture 15 (3/11/99)
Sadly, lecture 16 has been lost
Lecture 17 (3/25/99)
Lecture 18 (3/30/99)
Lecture 19 (4/1/99)
Lecture 20 (4/6/99)
Lecture 21 (4/8/99)
Lecture 22 (4/13/99)
Lecture 23 (4/15/99)
Lecture 24 (4/20/99)
Lecture 25 (4/22/99)
Lecture 26 (4/29/99)
Lecture 27 (5/4/99)
Assignments/Exercises: Exercise 1 (assigned-1/28/99 due-2/2/99) (And a hint to get RSRT to compile.)
Assignment 1 (assigned-2/9/99 due-2/23/99) (Sample polygonal RSRT files, as well as models used in the assignment's evaluation, and some helpful hints.)
Assignment 2 (assigned-2/25/99 due-3/9/99) (And a sample RSRT file.)
Assignment 3 (assigned-4/8/99 due-4/22/99) (And a page of .poly files, as well as .poly viewers, and some helpful hints.)
Exercise 2 (assigned-4/29/99 due before-5/11/99).

The background image is from Realistic Modeling and Rendering of Plant Ecosystems, by Oliver Deussen, P. Hanrahan, M. Pharr, B. Lintermann, R. Mech, and P. Prusinkiewicz.  From Proceedings of SIGGRAPH '98, ACM Press, (c) 1998.