Lecture Schedule and Assignment Due Dates

Course Outline

Broadly, the course is divided into four segments, corresponding to the programming assignments. Note that we will periodically assign lectures to reviewing problems and working out mathematical examples.

The first segment deals with the mathematics of transformations and viewing, telling you how to move and scale objects to place them correctly in the world. This is the basis for assignment 1. The second segment describes interactive 3D programming and shading, using the OpenGL graphics API and the GLSL shading language. This is the basis for assignment 2. The third segment describes how to use Bézier and B-spline curves to interpolate points and create shapes. This is the basis for assignment 3, and is the modeling part of the course. The fourth segment describes how to make images once you have a geometric model of the world. This is known as rendering or creating images of computer graphics models. The main topic is the basics of writing a ray tracer (assignment 4), which is an alternative to the rasterization-based approach in OpenGL.

Readings are with respect to the Marschner-Shirley text unless otherwise noted. (The text is now only recommended, not required, and the Marschner-Shirley readings are therefore optional). Note that the course (and midterms/final assignment etc.) is based entirely on the material in lecture; we will not test you on supplementary reading material not covered in lecture. Also note that lecture slide links may not always work prior to the lecture.

The homework will generally be due by midnight on the day following what is listed here. Thus, Homework 0 is actually due by 11:59 pm on Wednesday, Jan 12 and so on, unless a specific other date is listed (homework 4).

Lecture Outlines and Slides

Slides for all lectures are posted here to facilitate doing some reading/preparation beforehand and working ahead of the course. These may of course be changed to correct errors after the lectures. I am making the slides available as powerpoint and PDF handouts (6 slides per page). You may convert them to and print them however you wish.

We will also have online lectures available for much (but not all) of the material. Please bear in mind the usual caveats, that these online lectures are mainly for reference as a backup, and do not cover all topics (notably the curves lectures).

The slides below also include review problems on the main components of the course. These review problems are important for understanding the technical aspects and mathematics of the course. Try first doing the problems without consulting the solutions as and when the relevant material is covered. We will go over these problems in the designated review session lectures. Note that the solutions may be incomplete/outlines, and you are responsible for fully understanding the answers. A thorough understanding of the problems and solutions will help in doing well on the midterm and final assignment.

We will have visuals and demos for all of the units in the course, which we will occasionally refer to in the lectures to motivate the work. Links to some of these will also be posted here as supplementary materials, or can be found on the slides.

For the OpenGL lectures, we will make available the mytest sequence of programs shown in class for Windows and Mac/Linux. (This includes all three stages: mytest1, mytest2 and mytest3 along with DEMO settings to see the different features of mytest2). Note that homework 0 already asked you to compile the final state of the program (mytest3) for which we provided skeleton code on a variety of platforms.

Course Schedule

Date Topic Due Related Reading Lecture Slides
Jan 4 Overview Computer Graphics, Course 1 Powerpoint, PDF
Jan 6 Vectors and Linear Algebra 2,5 Powerpoint, PDF
Jan 11 Transformations 1 Homework 0 6 Powerpoint, PDF
Jan 13 Transformations 2 6,7.2-3, 3.5 RTR(handout) Powerpoint, PDF
Jan 18 Viewing Homework 1 7, 3.5 RTR(handout) Powerpoint, PDF
Jan 20 OpenGL 1 8, GL chapters 1,3 Powerpoint, PDF
Jan 25 OpenGL shading 10, GL chapters 2,7 Powerpoint, PDF
Jan 27 OpenGL 2 Homework 2 milestone (due Jan 31) 17, GL chapters 2,5,7 Powerpoint, PDF
Feb 1 Curves 1 (Optional) handout 4-5.1,8.1-3 of CAGD Powerpoint, PDF
Feb 3 Curves 2 (Optional) 15, polar forms paper Powerpoint, PDF
Feb 8 Review of curves Homework 2 Problems,Powerpoint,PDF
Feb 10 Review of Transforms, OpenGL Problems, Powerpoint, PDF
Feb 15 Raster Graphics, Color 3 Powerpoint, PDF
Feb 17 Midterm (in class)
Feb 22 Ray Tracing Intro Homework 3 4 Powerpoint, PDF
Feb 24 Ray Tracing Nuts and Bolts 1 Haines chapter (handout) Powerpoint, PDF
Mar 1 Ray Tracing 2 + Acceleration Hanrahan chapter (handout)     Shirley Ch12.3,12.4(handout) See above
Mar 3 Texture Mapping Homework 4 milestone 11 Powerpoint, PDF
Mar 8 High Quality Rendering Written Assignment Powerpoint, PDF
Mar 10 Catch Up/No Class? Homework 4 (due Mar 15)