Introduction to Computer Graphics, Spring 2008

Mondays and Wednesdays at 2-3:15pm

Office hours: Monday, 4-5pm

Text: Class notes (so make sure you come to class!), will be posted on-line after each lecture.


To be announced

Discussion list:

There will be an on-line listinfo group for this class once the semester starts.

Student homework pages:

You will all be showing your work on-line, so be prepared! :-)

Links to the work of some individual students are here.

Setting up a homepage and access to computers:

Most of you have the homepage and computers thing already figured out. If you don't, follow instructions the following webpage:


To post assignments for this class, you should set up a subdirectory of your web site (preferably your NYU web site). Name this subdirectory "graphics". It whould have a main "index.html" file, and that file should link to the various homework assignments. Send me an email, with subject line "graphics", telling me the URL.


Introductory lecture

Monday January 28: Getting started with Java applets

In class we went over some initial Examples Your assignment for next Monday (Feb 4), using this code as a starting point, is to build your own fun and interesting examples of interactive computer graphics. Have fun with it!

Wednesday January 30: More fun with Java applets

In class we made a simple game to help you think about ideas for your own applets.

Monday and Wednesday, February 4,6: Matrices

We learn about matrices. Homework due next Wednesday, Feb 13 is here.

Monday, February 11: more Matrices

We made some inspirational examples called mycube1.java and mycube2.java just to show why eventually you will want to make hierarchical objects that make use of nested matrices.

Wednesday, February 13: perspective and objects with nested matrices

Notes and assignment are here.

Wednesday, February 20: 3D modeling, making cool shapes with polygon meshes

Notes and assignment are here.

Wednesday, February 27: Phong shading

Guest lecture by Denis Zorin on Phong shading. Your homework for next Wednesday (March 5) is just to play around with the MIS applet stuff, really just have fun with it making cool patterns. We'll get to the serious work of making 3D things with it a little later.

Also, feel free to continue workking on shape meshes. You can look at the example meshes I showed in class for inspiration.

Wednesday, March 5: Triangle scan conversion

Notes and assignment are here.

Monday, March 10: A testbed for shading

The example we made in class is here.

Wednesday, March 12: The complete phong algorithm

Notes about the complete phong algorithm and a description of the homework due Wednesday March 26 are here.

Wednesday, April 2: Ray tracing part I

First notes on ray tracing and assignment due Wednesday April 9 are here.

Wednesday, April 9, Ray tracing 2

Second notes on ray tracing and assignment due Wednesday April 16 are here.

Monday, April 14, Ray tracing 3

Third notes on ray tracing are here.

Wednesday, April 16, Noise function

Link to Tutorial on the noise function

Link to Java source code for the noise function

Monday, April 21, Splines I: Hermite splines

Notes on Hermite splines

Wednesday, April 23, Splines II: Bezier splines

Notes on Bezier splines

Notes on Bsplines

Monday, April 28, Spline surfaces

Notes on spline surfaces

Wednesday, April 30, Texture mapping

Notes on texture mapping

Monday May 5:

TRON (excerpt)
Where The Wild Things Are
The Smell of Horror
An example of Machinima