CMPSCI 591B • Spring 2006 • Tuesday and Thursday, 11:1512:30 • LGRC A201
Instructor 
Erik LearnedMiller 

Teaching Assistant 
Alex Epshteyn 

Prerequisites 
Linear algebra. Programming in C or C++. 

Reading Materials 
• Required text: Fundamentals of Computer Graphics, Second Edition, by Peter Shirley et al.
• Errata for textbook can be found here. 

Resources  
Problem Sets 
Problem sets are due at the beginning of class on the day indicated
on the course web page. I will take off 50% for problem sets turned in
after lecture starts, as I often want to talk about the solutions in
class.  
Description 
This course will teach the fundamentals of computer graphics, starting with low level hardware issues and culminating in projects using standard highlevel graphics libraries. At the hardware level, we will cover frame buffers, D/A converters, lookup tables, and various types of displays. We will then examine primitive algorithms for basic tasks such as line drawing, circle drawing, fill routines, splines, and zbuffering techniques. Differences between display lists and bitmapping techniques will be covered. The course will also discuss 3D geometric transformations, perspective, and other geometry needed for 3D graphics. Rendering techniques such as raytracing and point casting will be covered, including techniques such as radiosity and more recent work. Finally, we will learn to use standard 3D graphics engines to complete more advanced assignments.


Schedule 
