Welcome to CS40: Computer Graphics. This course focuses on the creation and manipulation of 3D geometric models and the rendering of these models on a two dimensional screen. We will examine modeling from both a pixel-based view and a more geometric vector-based approach. Core topics include geometric primitives, 2D and 3D matrix transformations, projective geometry, and object modelling. We'll examine the traditional rendering pipeline and will explore advanced techniques for scene manipulation using programmable shaders. Intermediate topics include texture mapping, lighting, and shadows. We will be using the modern OpenGL programming approach which uses programmable vertex and fragment shaders throughout the course. Advanced topics may including grammar based models, isosurface extraction, and GPGPU computing using CUDA.
WEEK | DATE | ANNOUNCEMENTS | TOPIC & READING | LAB |
1 | Aug 29 | Intro to Graphics, Software Tools | InClass: Intro Project 01 Git setup | |
Aug 31 | ||||
Sep 02 | ||||
2 | Sep 05 | OpenGL Rendering Pipeline Shader Intro | InClass: OpenGL Project 02 | |
Sep 07 | ||||
Sep 09 | Drop/Add ends | |||
3 | Sep 12 | Vector and Matrix operations | Project 03 | |
Sep 14 | ||||
Sep 16 | ||||
4 | Sep 19 | 3D Transforms | InClass: 3D Modeling Project 04 | |
Sep 21 | ||||
Sep 23 | ||||
5 | Sep 26 | projections, LookAt, camera class, perspective | InClass: Perspective LookAt Project 05 | |
Sep 28 | ||||
Sep 30 | ||||
6 | Oct 03 | InClass: Normals, Phong lighting | Midterm Project | |
Oct 05 | ||||
Oct 07 | ||||
Oct 10 | Fall Break | |||
Oct 12 | ||||
Oct 14 | ||||
7 | Oct 17 | Particle Systems | InClass: Particle Systems Midterm Project | |
Oct 19 | ||||
Oct 21 | ||||
8 | Oct 24 | CUDA Intro, memory/kernels | InClass: CUDA Intro | |
Oct 26 | ||||
Oct 28 | Quiz1 | |||
9 | Oct 31 | CUDA Synchronization, parallel patterns | InClass: CUDA Patterns | |
Nov 02 | ||||
Nov 04 | Last day to declare CR/NC | |||
10 | Nov 07 | Perlin Noise | InClass: Noise | |
Nov 09 | ||||
Nov 11 | Quiz2 | |||
11 | Nov 14 | |||
Nov 16 | ||||
Nov 18 | ||||
12 | Nov 21 | Computational Geometry | InClass: Closest point | |
Nov 23 | ||||
Nov 25 | Thanksgiving | |||
13 | Nov 28 | Geometry Shaders | InClass: Geometry Shaders | |
Nov 30 | ||||
Dec 02 | Quiz3 | |||
14 | Dec 05 | Wrap-up | ||
Dec 09 | 9am-Noon Demo Session I | |||
Dec 16 | 9am-Noon Demo Session II |