Repository of Online Lectures

Click here to Load Page with Embedded Videos


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 (the main link is to the YouTube playlist for that lecture). 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  

Click here to Load Page with Embedded Videos