Computer Graphics

Course ID 15662

Description This course provides a comprehensive introduction to computer graphics modeling, animation, and rendering. Topics covered include basic image processing, geometric transformations, geometric modeling of curves and surfaces, animation, 3-D viewing, visibility algorithms, shading, and ray tracing.

Key Topics
- rasterization
- spatial transformations
- geometric representations
- the rendering equation
- path tracing
- animation
- splines
- meshes
- sampling
- numerical integration

Required Background Knowledge
Basic vector calculus and linear algebra will be an important component of this course. Previous exposure to basic programming in C/C++ or similar languages is very helpful as course programming assignments will involve significant implementation effort.

Course Relevance
The techniques of Computer Graphics are essential to many aspects of modern life including visual effects in movies, layout design on web pages, visualization in scientific computing, CAD in industrial design, and real-time rendering for games. Graphics techniques are also the basis of emerging technologies, including developing and simulating autonomous vehicles, optimizing material structures, and robotic sensing systems. 15-662 is for graduate students. Undergraduates should enroll in 15-462.

Course Goals
Provide students with a strong basis in computer graphics techniques - broadly, spatial transformations, geometry, rendering, and animation - along with hands-on experience in the basics of these areas and knowledge of the state of the art.

Learning Resources
Lecture slides are posted for commenting and discussion. Piazza is also used for discussion. Additional readings are suggested per lecture (see course page).

Assessment Structure
Students will be assessed through programming assignments (~70%), midterm/final exams (~20%), and course participation (~10%).