Computer Graphics

Lecture: T, Th 9:30AM - 11:00AM (BURDINE 220)
Course #: 53485(CS)

Computer Sciences Department

University of Texas at Austin

Spring 2013

Instructor's Assistant
Teaching Assistant
Chandrajit Bajaj Leah Adrian Eric (Greg) Daniel
ACES 2.324A ACES 4.102  GDC Basement Lab
(512) 471-8870 Use Email Use Email
Office Hours
Tues 1:30pm - 4:00pm, or by email appt.
NA M 12:30-2pm, TH 3:00 - 4:30pm and by appt.


Recommended Book

"Interactive Computer Graphics" by Ed. Angel, Dave Shreiner, Addison-Wesley, 2012 6th edition.,  


  1. The four programming assignments, each of equal weight, have a programming part and a written part. The programming part will be graded on correctness (50%), efficiency (20%), programming style (15%), and elegance of user interface (10%). In addition, creativity and superior rendering effects will be rewarded (5%).
  3. You are encouraged to do PAIR-programming. Your chosen partner remains the same throughout the semester. Each PAIR turns in a single program for grading, however the answers to the written questions needs to be written up and submitted individually.
  5. Each programming assignment should be completed on time. To allow for unforeseeable circumstances PAIRS shall be allowed 4/4 days (4 days for code, 4 days per person for written work) grace during the semester.  The grace shall be given 7/7 days, if you choose to program individually. For PAIRS, you can either be late 4 days on one assignment, or 3 days on one and one day on another, etc.  Beyond this, late turn-ins will be penalized a flat 5% of the total 100% per day they are late.
  7. There are two parts to each Project: a coding portion that is done in groups (80% of the project grade) and a written portion that is done individually (20% of the project grade).  For PAIRS, each group has four total grace days to be used on the coding section of each project.  Each person in that group also has four grace days, accounted for separately (i.e. per person), to be used on his or her personal written assignments.  Students working individually have 7 late days for code and 7 late days for the written work.  Note that all late days, both group late days (for code) and personal late days (for the written portion), take effect beginning on the due date for the Project.  You may submit your code before you submit your written assignment, and vice versa.
  9. The final grade will be compiled from class (multiple choice) lecture quizzes (12%), the two midterm exams (10% + 10%), final exam (18%), 4 programming assignments (4 x 10%), 4 written assignments (4 x 2.5%)
CS 354 Course Outline

This course provides a top down and stepwise refinement introduction to computer graphics as well as lays the foundation for a graduate course in computer graphics and data visualization. There is a choice of both breadth and depth in the intertwined topics of graphic, computational geometry, geometric modeling and data visualization.  

List of Lectures
Jan 15
Course Syllabus, grading etc. and Graphics Systems
Jan 17
Models, Architecture and Graphics Pipeline (Supplementary notes) Project 1 Posted
Jan 22
OpenGL and GLUT programming  (Supplementary notes OpenGL 3.x) (Supplementary notes OpenGL 2.x)
Jan 24
Interaction  Interactive Programming/Graphical Interfaces OpenGL 3.x + freeglut + GLEW Interactive Programming/Graphical Interfaces OpenGL 2.x + GLUT
Jan 29
Object/View Representations: Geometry and Coordinate Systems (Supplementary notes)
Jan 31
Viewing Systems I: Transformations (Supplementary notes)
Feb 5
Viewing Systems II: 3D Rotations/Orientations (Supplementary notes)
Feb 7
Viewing Systems III: Projections, Perspective Mapping (Supplementary notes) Project 2 Posted
Feb 12
Object Representations I (Fractals,Iterated Systems,L-systems) (Supplementary notes) Project 1 Due
Feb 14
Object Representations II (Piecewise Polynomial Curves, Surfaces) (Supplementary notes)
Feb 19
Object Representations III (Bezier & B-splines) (Supplementary notes)
Feb 21
Object Representations III (Rendering Bezier & B-splines) (Supplementary notes) Practice Midterm 1 (Solutions)
Feb 26
Object Representations IV (Recursive Subdivision, Shapes, Scenes) (Supplementary notes)
Feb 28
MIDTERM I -- IN CLASS (Solutions) Project 3 Posted
March 5
Color, Light, Photorealism (Supplementary notes) Project 2 Due
March 7
Illumination Models (I): Direct and Local Specular (Supplementary notes)
March 11 - 16
Spring break
March 19
Illumination Models (II): Shading (Supplementary notes)
March 21
Illumination Models (III): Global View Dependent (Supplementary notes)
March 26
Illumination IV: Global Diffuse (Supplementary notes)
March 28 Illumination V: Object & Texturing (Supplementary notes)
April 2
Illumination VI: Bumps and Environment Effects (Supplementary notes) Project 4 Posted
April 4
Image Processing I: Compositions (Supplementary notes) Project 3 Due
April 9
Image Processing II: Image Filtering, Anti-aliasing (Supplementary notes) Practice Midterm 2 (Solutions)
April 11
GPU Programming (Supplementary notes)
April 16
MIDTERM II -- IN CLASS (Solutions)
April 18
Visibility Algorithms I: Depth Sort Final study guide
April 23
Visibility Algorithms II:Partitioning Trees
April 25
Animation I&II: Articulate,Particulate Systems (Supplementary Notes) Project 4 Due
April 30
Mobile App Programming
May 2