CSCI-UA.0480-041
Special Topics: Computer Graphics

Tue-Thu 8am-9:15am EST
60 Fifth Ave, Room 110

 

 

This is the Zoom link for the lecture

If you need to email the grader: keru DOT wang AT nyu DOT edu

Grader office hours:

Every Tuesday from 11:00am to noon.
In person: Room 302 at 60 5th Ave
Online: https://nyu.zoom.us/my/keruwang
Professor office hours:
Every Tuesday from 1:00pm to 2:00pm.
In person: By appointment -- please email me.
Online: https://nyu.zoom.us/j/92277063641

What we will cover

There are many courses that can teach you how to use commercial computer graphics packages and APIs. This course, in contrast, will teach you how to build 3D computer graphics from the ground up. This will include 3D modeling, animation, and rendering. At the end of the semester you will have built your own complete working real-time 3D computer graphics systems that runs in web browsers.

During this semester you will have the opportunity to work on-line in small teams, learning how to collaborate to build computer graphics content together.

What you should already know

If you are already familiar with JavaScript, that's great. If you are already familiar with Java, C++ or any similar high level language, you will not have any trouble picking up enough JavaScript to do this course.

Since this is an advanced course, I will assume that you are already an experienced programmer. If you are not, then I do not suggest you take this course, as there will be weekly programming assignments, and you would not be able to keep up.

Computer graphics uses a lot of matrix math and some calculus. During the semester we will go over all of the matrix and vector math that you will need.

Lectures and Course Notes

Our "text" for this class will be the class lectures and corresponding on-line course notes. The recorded Zoom lectures will be available on BrightSpace.

Course notes will be posted on-line after each lecture. Make sure you watch the class lectures!!!

Here are instructions for setting up your website for this class.

Course schedule by topic

TUESDAY THURSDAY
Room C15 Sep 7 Sep 9 Images, lines, pixels, colors, fragment shaders (homework due Tue Sep 21)
Sep 14 Sep 16 Ray tracing 1
Room C15 Sep 21 Sep 23 Ray tracing 2 (homework due Tue Oct 5)
Sep 28 Sep 30 Matrices and linear transformations 1
Room 110 Oct 5 Oct 7 Matrices and linear transformations 2 (homework ue Tue Oct 19)
Oct 12 Oct 14 Mesh based cubes, cylinders, spheres, etc. 1
Room 110 Oct 19 Oct 21 Mesh based cubes, cylinders, spheres, etc. 2 (Assigment due Tue Nov 2)
Oct 26 Oct 28 Cubic spline curves and surfaces 1
Room 110 Nov 2 Nov 4 Cubic spline curves and surfaces 2 (homework due Tue Nov 16)
Nov 9 Nov 11 Kinematics, motion hierarchy, dynamics 1
Room 110 Nov 16 Nov 18 Kinematics, motion hierarchy, dynamics 2 (homework due Tue Nov 30)
Nov 23   Final projects 1 (NOTE: no lecture on Thanksgiving Nov 25)
Room 110 Nov 30 Dec 2 Final projects 2
Room 110 Dec 7 Dec 9 Final projects 3
Room 110 Dec 14 Dec 16 Final project presentations

Week by week lectures


Thursday, Sep 2


Tuesday - Thursday, Sep 7-9


Tuesday, Sep 14 course notes


Thursday, Sep 16 course notes


Tuesday - Thursday, Sep 21-23


Tuesday, Sep 28 course notes


Thursday, Sep 30 course notes


Tuesday - Thursday, Oct 5-7


Tuesday, Oct 12: Legislative Day (no class)


Thursday, Oct 14


Tuesday, Oct 19 course notes


Thursday, Oct 21 course notes


Tuesday, Oct 26 course notes


Thursday, Oct 28 course notes


Tuesday, Nov 2 course notes


Thursday, Nov 4 course notes


Thursday, Nov 9-11 course notes


Tuesday, Nov 16 course notes


Thursday, Nov 18 course notes


Tuesday, Nov 30 course notes