Computer Graphics
CS43 - Fall 2005
Instructor: Fabio Pellacini


The following schedule will be updated frequently with reference material and a more precise indication of what has been covered in class. Please note that the slides available for this website are slightly different from the ones used in class since the latter have more explanatory material. The topics for future leactures are here only as indication and can (will) change. The readings are refererences to the list given below.

date topic readings out due
Sep 22 Introduction | Images introduction | images
Sep 27 Raytracing I raytracing I | shading I Hw1
Sep 29 Raytracing I raytracing I | shading I Ray I
Oct 4 Tansformations linear alg. | transforms
Oct 6 Tansformations | Viewing transforms | viewing Hw2 Hw1
Oct 11 Viewing | Modeling viewing | modeling
Oct 13 Meshes | Curves meshes | curves Model Ray I
Oct 18 Surfaces | Subdiv surfaces | subdivision
Oct 20 Animation animation Hw3 Hw2
Oct 25 Animation animation
Oct 27 Animation animation Anim Model
Nov 1 Graphics Pipeline pipeline
Nov 3 Graphics Pipeline | Texturing texturing Hw4 Hw3
Nov 8 Using the Graphics Pipeline
Nov 10 Raytracing II | Monte Carlo Integration montecarlo Ray II Anim
Nov 15 Distribution Ray Tracing dist. raytracing
Nov 17 Rendering Equation | Path Tracing rendering equation | path tracing Hw5 Hw4
Nov 22 TBD
Nov 24 --- Thanksgiving ---
Nov 29 Wrapup Ray II, Hw5


background Shirley, Ch. 2, Ch. 5
A review of mathematical concepts we will be using in class. We will not be covering this in details in class, but I will quickly review some topics as they come up. You might want to read this carefully if this material is new to you since we will be using it quite a bit during the course.
Topics range from trigonometry, parametric representations, points and vectors and linear algebra.
introduction Shirley, Ch. 1.1-1.8.1
A basic introduction to computer graphics and some practicalities for implementing the algorithms. Please ignore the C++ descriptions.
images Shirley, Ch. 3.1-3.4
A very basic introduction to digital images and compositing.
raytracing I Shirley, Ch. 10.1-10.7
Basic raytracing: viewing rays generation, object intersection(sphere, triangle and polygon), shadows, reflection and refraction. We will not cover in detail the ray-polygon intersection.
shading I Shirley, Ch. 9
Basic surface shading with a difression on non-photorealistic models for art and illustration.
linear algebra Shirley, Ch. 5
Linear algebra review. Don't bother too much about inverse computation, eigenvalues and SVD.
transforms Shirley, Ch. 6
2D and 3D geometric transformations.
viewing Shirley, Ch. 7
Viewing transformations. Do not try to memorize the matrices given, but concentrate on the concepts introduced. We will be looking at a simpler version of the matrices in class, so this chapter is good to look at the full formulation.
meshes Shirley, Ch. 13.1-13.2
A quick introduction to some of the common mesh data structures.
curves and surfaces Shirley, Ch. 15
A fairly in-depth review of curves, but not much on surfaces.
subdivision Zorin and Schroder, Ch. 1-3
A very in-depth course on subdivision surfaces. You sould only skim trhough this quickly. A full copy of the course can be found at
animation Shirley, Ch. 16
A non-technical introduction to animation. A bit lacking in mathematical details.
pipeline Shirley, Ch. 3.5-3.7, Ch. 8, Ch. 12
An introduction to the various algorithms used in the graphics pipeline.
texturing Shirley, Ch. 14
An introduction to texturing; covers more details on 3d textures than we have done in class.
raytracing II Shirley, Ch. 10.8-10.9
Support for hierarchies and sub-linear intersection for raytracing.
montecalro Shirley, Ch. 14
Introduction to Monte Carlo integration.
distribution ray tracing Shirley, Ch. 10.11
Distribution ray tracing.
rendering equation Shirley, Ch. 19, Ch. 24
Introduction to the rendering equation and reflection models. Uses a notation very different than ours that might be a bit confusing in some places.
path tracing Shirley, Ch. 25
Introduction to global illumination methods. Goes into more details on how to accurately compute direct lighting.