CSCI 4530/6530 - Spring 2012
Advanced Computer Graphics
  Contact Information
  Office Hours



  Assigned Readings

  Lecture notes
  Lab materials
  Test reviews

  Collaboration Policy
    CMake notes
    gcc/g++ notes
    GL/glut notes
    memory debugging
  Homework Late Policy
  Electronic Submission

Final Project
   Spring '12 Projects
   Spring '11 Projects
   Spring '10 Projects
   Spring '09 Projects
   Spring '08 Projects
   Spring '07 Projects

Academic Integrity


Course Overview

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

Learning Outcomes

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 research.
  • 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 project.
  • 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 Programming Guide
(the red book)