All programming will be in Java, and you will put your results (but not your source code) on the Web.
The reference textbook will be: Computer Graphics: Principles and Practice, C version by James Foley, et al, ISBN: 0201848406 Pub: ADDISON-WESLEY, 1996, 1174 pp. You can also use any good book on Java as a language reference. One possibility among many is: Java in a Nutshell, 2nd Edition, by Flanagan, D., O'REILLY, 1997.
You will need to maintain a web page from which to post your homeworks for this class. If you don't already have a computer account that you are comfortable using for this class (which may be the case for some undergraduates or students from other departments) then please get an account now by going to the 4th floor of the Computer Science Department building (the same building where our class is) and filling out a class account form.
My office hours are 5-7 on Mondays. My office is at 719 Broadway, Rm 1202 (on the 12th floor).
The grader is Lizhong Su (email: ls668@cs.nyu.edu).
The course outline below is subject to change, but reflects the general flow the course will take this semester.
week 1:
What is computer graphics?
Course overview
Some cool examples
week 2:
Introduction to linear transformations
Homework 1
(due Monday, September 25).
week 3:
Continuing on linear transformations
Introduction to polygons
Introduction to ray tracing
Homework 2
(due Monday, October 2).
week 4:
Inverting the view camera
Cool inspirational examples
Homework 3
(due Monday, October 16).
week 5:
Visible surface algorithms
Painter's algorithm
Z-buffer algorithm
Homework 4
(due Monday, October 30).
week 6:
Splines and subdivision surfaces
week 7:
Parametric surfaces
Homework 5
(due Monday, November 13).
week 8:
Shading and lighting
week 9:
Kinematic machines
week 10:
More Kinematics
Homework 6
(due Monday, December 4).
week 11:
Inverse kinematic, dynamics
week 12:
Animation
week 13:
Fractals and other topics of interest
week 14:
More special topics