In this course we will survey classic papers and current research in
computer graphics. Topics include: advanced ray tracing, global
illumination, photon mapping, subsurface scattering, mesh generation and
simplification, subdivision surfaces, volumetric modeling, procedural
modeling and texturing, weathering, physical simulation, appearance
models. Course activities include programming assignments, in-class
presentations, and a term project.
What you should know before taking Advanced Computer Graphics
Prerequisites: CSCI-2300 Intro to Algorithms or equivalent is required,
and previous coursework (e.g., CSCI-49xx Introduction to Visualization
or ECSE-4750 Computer Graphics) or other experience in programming for
computer graphics, visualization, image processing, computer vision,
or computational geometry is highly recommended.
Everyone in this course should have taken courses in, or have
reasonable exposure to, basic calculus, linear algebra (vectors &
matrices), data structures, and algorithms. Programming assignments
will be done in C++, so familiarity with this or syntactically similar
programming languages is necessary.
Familiarity with OpenGL programming, and rendering, modeling, or
simulation software will be helpful, but is not required.
This advanced course is targeted towards graduate students in
computer science and is also open to upperclass undergraduate students
who are interested in learning about and possibly pursuing research in
computer graphics. This is an intensive reading & programming course.
Also see: Comments
from student course evaluations from Spring 2011
Students who have successfully completed this course will:
- Be able to read academic publications in the fields of computer
graphics, computational geometry, interactive techniques, and
visualization and discuss the contributions and limitations of the
- Be able to implement and use classic and modern algorithms and
data structures for computer graphics, computational geometry,
interactive techniques, and visualization and discuss the challenges
relating to efficiency, performance, and accuracy.
- Have proposed and carried out a creative and relevant term
- Have improved communication skills through in-class
presentations, discussions, and a term project written report.
Textbook & References
There is no required textbook for the class.
We will be reading
research papers (available online through ACM & IEEE digital libraries),
SIGGRAPH course notes, and other online reference material.
Here are some relevant books you may be interested in reviewing:
Fundamentals of Computer Graphics
Peter Shirley, Michael Ashikhmin, and Steve Marschner
A K Peters
Books from the OpenGL.org:
OpenGL Programming Guide
(the red book)