
Interested in computer graphics? Does graphics, gaming, and simulations interest you? Do you like rendering photorealistic imagery? Do you like rendering artistic imagery? Is doing animations and movies fun to you? All this is part of computer graphics. This course teaches the fundamentals, at an undergraduate school level, for such activities and research projects. For more information on Computer Graphics at Purdue, checkout http://www.cs.purdue.edu/cgvlab. For last semesters class, go to http://www.cs.purdue.edu/~aliaga/cs334-08spring.
Major applications of computer graphics include:
1. Prerequisites
Students are required to have previous C/C++ programming experience. Knowledge of linear algebra is strongly recommended. Previous computer graphics experience, such as OpenGL programming experience, is beneficial but not mandatory. OpenGL will be implicitly used in the course: a review of OpenGL will be indirectly given during first part of the semester.
2. Course work
The course work is composed of programming assignments, exams, and interactive class participation. The programming assignments consist of a warm-up assignment, three programming assignments and a final assignment. The exams consist of a midterm and a final exam. In-class participation will consist of presenting a preview of your final assignment (schedule arranged later). Course work will be easier to manage if you keep a constant pace through the semester. This course is hard work but you will learn a lot and have fun!
Instructor: Daniel G. Aliaga
Classroom: Lecture HAAS G066, PSO HAAS G056
Time: Lecture Tue/Thur @ 9:00-10:15am, PSO Mon @ 9:30-11:20am, Tue @ 1:30-3:20pm
Office hours: by appt
TA: Nathan Andrysco (nandrysc@cs.purdue.edu)
3. Grading
Programming
Assignments: 35% (assignments 0-3)
30% (final
assignment)
In-Class
Presentations: 5%
Exams: 15% (midterm)
15% (final)
-----
100% TOTAL
4. Lecture Schedule
Basics I
Aug 26 Overview/Example Research in Computer Graphics
Aug 28 Vectors, Points, Matrices
GLUI: http://glui.sourceforge.net
GLUT: http://www.opengl.org/resources/libraries/glut
Basics II
Sept 2 Vectors, Points, Matrices
Sept 4 Perspective and Other Projections
2D Processing and
Graphics Pipeline
Sept 9 2D Image Processing [Part 1][Part 2]
Assignment #0 due (extension from Sept 4th because PSO on Sept 1st is on holiday)
Sept 11 Graphics Pipeline, Rasterization
3D Processing and
Shading
Sept 16 Shading and Lighting [Part 1]
Sept 18 Shading and Lighting, Texture Mapping [Part 2]
Assignment #1 due, Assignment #2 out
3D Processing and
Shading
Sept 23 Animation and Collisions
Sept 25 Spatial Hierarchies
Ray Tracing I
Sept 30 Ray Tracing
Oct 2 Review
Assignment #2 due, Assignment #3 out
Midterm
Oct 7 Midterm Exam
Oct 9 Midterm Solutions
Ray Tracing II
Oct 14 Fall Break
Oct 16 Ray Tracing
Procedural Modeling
Oct 21 Procedural Modeling
Oct 23 Procedural Modeling
Assignment #3 due, Final Assignment out
Simplification
Oct 28 Large-scale Modeling/Urban Modeling
Oct 30 Simplification
Non-photorealistic
Rendering
Nov 4 Simplification, Impostors
Nov 6 Non-photorealistic Rendering
Object Representations
Nov 11 Meshing and Other Object Representations
Nov 13 TBA
Final Project Preview
Nov 18 Final Project Preview
Nov 20 Final Project Preview
Nov 25 Final Project Preview/TBA
Nov 27 Thanksgiving Break
Final Project
Dec 2 Review
Dec 4 Demo Day!
Final Assignment due
Special Topics
Dec 9 Special Topics I: Visualization (tentative)
Dec 11 Special Topics II: Computational Geometry (tentative)
Final Exam
Dec 15-20 TBA
5. More details coming
soon!