Repository of Online Lectures

Click here to Load Basic HTML Page without Embedded Videos (only links)

These online lectures are provided for three purposes: 1) We are offering an online graphics class on EdX; please sign up. 2) As a review of the first half of the course for CS 184 students, and 3) As a general public resource. They are intended to be a complete self-contained 6 week introduction to computer graphics.
Lecture Formats: The lectures are in HD 720p (suitable for full-screen viewing if desired). They are hosted on our YouTube Channel (please subscribe to receive updates as new lectures are posted). The summary below includes the YT  link for the YouTube video page, but we also embed them (at lower resolution) on this page for ease of use (main link). The videos are all captioned; we also provide the transcript TXT and PDF of slides (contact us if you want PPT). Most lectures are now also available on the official UCBerkeley channel.
Note that transcripts are mostly accurate but not perfect. Captioning can obscure slides especially at low-resolution. If this is a problem, consider using the interactive transcript feature on YouTube instead. Slides are reformatted for widescreen and may differ slightly from those for local CS 184.
Assignments (online students only): For online students interested in the 6 week class, each sequence of lectures includes an assignment, corresponding to homeworks 0,1,2,5 in the local class (they are listed below roughly when they would be due at the regular pace). If you have an assignment ready, and would like to beta-test our feedback and grading system, let us know. The skeleton code and directions are available at the local CS 184 assignments page. A zip of the mytest programs shown in the OpenGL lectures is available (Makefile for Mac OS X only; adapt source code for others). Once the course is offered online, note that the courseware on the official site is definitive for the assignments, not this page.
Credits: The course is taught by Prof. Ravi Ramamoorthi, and most of the development of assignment feedback and lecture support has been provided by Nicholas Estorga. Brandon Wang developed the initial feedback servers. Many other colleagues and students have contributed ideas over the years. The outreach effort is funded in part by NSF grant 1011832 (Standard disclaimer: The content is our own and does not express the views of the NSF), and a UC Berkeley instructional improvement grant.

Lecture Summary

Lecture Series Segments
1. Course Overview   PDF Motivation    YT  TXT | Outline and Logistics   YT  TXT | History of Computer Graphics   YT  TXT
2. Basic Math   PDF   HW 0 Vectors and Dot Products   YT  TXT  | Cross Products    YT  TXT  | Creating a Coordinate Frame   YT  TXT  | Matrices   YT  TXT  
3. Transformations 1   PDF Basic 2D Transformations   YT  TXT  | Composing Transformations    YT  TXT  | 3D Rotations   YT  TXT
4. Transformations 2   PDF Homogeneous Coordinates   YT  TXT  | Normals    YT  TXT  | Rotations, Coordinate Frames   YT  TXT  | gluLookAt   YT  TXT
5. Viewing   PDF  HW 1 Orthographic Projection   YT  TXT  | Perspective Projection    YT  TXT  | gluPerspective   YT  TXT
6. OpenGL 1   PDF Overview   YT  TXT  | Buffers and Matrices    YT  TXT  | CallBacks   YT  TXT  | Drawing   YT  TXT  | Shaders   YT  TXT
7. OpenGL Shading   PDF Motivation   YT  TXT  | Gouraud and Phong    YT  TXT  | Lighting and Shading   YT  TXT  | Fragment Shader   YT  TXT  
8. OpenGL 2   PDF  HW 2 Geometry   YT  TXT  | Matrix Stacks    YT  TXT  | Z Buffer   YT  TXT  | Animation   YT  TXT  | Texture   YT  TXT  
9. Ray Tracing 1   PDF  Ray Casting    YT  TXT  | Shadows and Reflections    YT  TXT  | Intersections    YT  TXT  | Optimizations    YT  TXT  
10. Ray Tracing 2   PDF  HW 3 Camera Ray Casting    YT  TXT  | Ray-Object Intersections    YT  TXT  | Lighting    YT  TXT  | Recursive Ray Tracing    YT  TXT  


1. Course Overview

2. Basic Math

3. Transformations I

4. Transformations 2

5. Viewing

6. OpenGL 1

7. OpenGL Shading

8. OpenGL 2

9. Ray Tracing 1

10. Ray Tracing 2