Course Links

Resources

External

Note that the timing and topics shown for future dates represent projections that are subject to change as the course progresses.

Some lab and homework solutions provided courtesy Sara Mathieson.

No. Date Topics Before Class In Class Homework
1 Sept. 7 Introduction Reading: Syllabus Lecture 0: response;
Lab 0: Hello World
 
2 Sept. 12 Images Reading: Sections 1.1 and 1.2
Videos: 1A, 1B; slides 1A, 1B
Lab 1: Checkerboard
(sample solution)
Homework 1: Snowflake
3 Sept. 14 Line drawing Reading: Section 2.1
Video: #2, slides
Handout 1 (solution)
4 Sept. 19 Polygons Reading: Section 2.2
Video: #3, slides
Lab 2: Regular Polygon (sample solution) Homework 2: Polygons and Fill
5 Sept. 21 Fill algorithms Video: #4, slides Handout 2 (solution)
6 Sept. 26 Linear algebra background Khan Academy on matrix multiplication;
Video: #5, slides;
Matrix multiplication practice
Lab M: Matrix Operations (sample solution); Homework 3: Transformations (hint)
7 Sept. 28 Transformation Matrices Sarah's notes; Video: #6, slides; Interactive guide Handout 3 (solution)
8 Oct. 3 Using Transformations Reading: Sections 2.3 and 2.6;
Video: #7, slides
Lab 3: Transformations (solution);
Demo: hierarchical model, animated
Homework 4: Animation
9 Oct. 5 Animation Reading: 12 Principles of animation.
Two Videos: #7.5A, #7.5J (7.5A slides, 7.5J slides)
Sailboat demo: 1, 2, 3
* Oct. 10 --- FALL RECESS ---
10 Oct. 12 Bézier curves Reading: Nerding out with Bézier curves,
Video: #8, slides
Handout: Bézier curves (solution); Homework 5: Curves
11 Oct. 17 Line clipping Reading: Tutorials point,
Video: #9, slides
Handout: Line Clipping (solution);
12 Oct. 19 Introduction to 3D graphics
Projection
Reading: Section 3.3
OpenGL tutorial on projection
Video: #10, slides
Projection handout (solution); Midterm Exam
13 Oct. 24 Introduction to WebGL Reading: Section 5.1
Video: #11, slides, demo
Lab 6: Pyramid in WebGL (solution); Homework 6: Walking in 3D
14 Oct. 26 Animation in WebGL
3D Transformations
Reading: Section 5.2
Video: #12, slides
Lab 7: Spinning Pyramid (solution) lookAt demo
15 Oct. 31 Hierarchical models Reading: Section 2.4, Spider example, walker demo;
Video: #13 slides
Lab 8: Robotic Arm (solution); Homework 7: Solar System
* Nov. 2 Cromwell Day (no class)
16 Nov. 7 Lighting and shading Reading: Section 4.1 and
Three.js geometries and materials and
Three.js light sources;
Video: #14, slides; lighting demo
Lab 9: Phases of the Moon (solution); Homework 8: Shading & Texture Mapping
17 Nov. 9 Texture mapping Reading: Section 4.3 and
Three.js textures, UV coordinates
Video: #15, slides
Lab 10: Texture Mapping (solution);
Demos: stone wall, globe
18 Nov.14 Texture mapping (cont) O'Reilly chapter on Three.js; Shadow mapping
Video: #16, slides
Handout 6 (solution); Handout 7 (solution); Shadow demo
Lab 11: Intro to Blender
 
19 Nov. 16 Hidden surface removal
Blender basics
Video: #17, slides;
CG fast track tutorial (optional)
Resources: Blender Manual
Lab 12: Blender chair and wine glass Final Project
* Nov. 21 History of Computer Graphics No reading/video
* Nov. 23 --- THANKSGIVING RECESS ---
20 Nov. 28 Ray tracing Reading: Section 8.1
Video: #18, slides
Lab 13: Blender wooden cup Homework 9: Blender and Ray tracing
21 Nov. 30 Ray tracing (cont) Reading: Section 8.1
Video: #19, slides
Lab 14: Curves in Blender
22 Dec. 5 Collision detection
Game design
Game design videos: 1, 2, 3
Video: #20, slides
Collision detection demo
Handout 8 (solution)
23 Dec. 7 Subsurface Scattering
Particle Systems
Reading: Particle Systems & Artificial Life
Video: #21, slides
Lab 15: Intro to Particles (solution);
Examples: Fireball, Volcano, Ring
* Dec. 12 Final Project Presentations
24 Dec. 14 Final Review Video: #22, slides Handout 9 (solution);
Handout 10 (solution);
Self-scheduled final exam