Topics Covered (aka Final Study Guide)

by Mike Gleicher on December 7, 2014

The final is cumulative: things from the beginning of the course are fair game. Most of the exam will focus on things not covered by the midterm, but you can expect to see some of the same topics again.

You may want to start with the mid-term study guide since those topics will be covered again.

The best thing to do is to look at the syllabus for the rough topics covered, the readings, and the tutorials. But, the most important things are what we talked about in class. There is audio linked on the syllabus page. You can also look at my notes which are more a reminder of what I wanted to talk about than the specifics that you should know.

My notes from previous years might also be useful. In 2010, these were a lot of hand-written ideas, although earlier years have more details. 2009 is well organized, 2008 is also organized and more complete. Be warned, the topics discussed n class have been evolving. (and the order has been changed around). The main important stuff is still there.

Week 9 – Drawing Triangles, Hardware, Programmable Shading

  • Fancy local lighting (and its limits)
  • Normals
  • Specifying geometry to the graphics hardware
    • inefficiency of triangle at a time (need for sharing, …)
    • Per-vertex specificaitons
    • interpolation between vertices
    • Achieving vertex re-use
      • strips, fans, …
      • meshes
  • Baricentric interpolation of values across triangles
    • per-vertex shading vs. per-pixel shading
  • Machinery of the graphics pipeline
    • The steps between application and the screen
    • Places for potential bottlenecks
  • Immediate vs. Retained mode
  • Double/triple/multiple buffering


  • Graphics Hardware Pipeline
    • potential bottlenecks in the pipeline
    • vertices as a stream
    • fragments as a stream
    • what you can/can’t do with vertices and fragments
    • order independence in the pipeline
    • multi-pass methods
  • Features in the traditional, fixed-function pipeline
    • building blocks for hacks
    • stencil buffers, mapping, …
  • Interactive graphics hacks using mapping
    • painted shadows as an exploration
    • projector maps (slide projector)
    • shadow maps / light maps
    • environment maps
  • Programmable Shading
    • Vertex Operations and programmability
    • Fragment Operations and programmability
    • Note: we will not ask about specific language things (GLSL) but we will make sure you understand the concepts of how the model works.


Week 10 – Curves and Surfaces

  • Motivation for approximating curves
    • interpolating cubics
  • B-Splines
    • B-Spline basis concepts and properties
  • Geometric constructions of B-Splines
    • Chaikin corner cutting
    • Point replication (Lane-Risenfeld algorithm)


  • Important triangle mesh concepts
    • good and bad triangles
    • vertex re-use
    • T-intersections and cracking
    • optimizing re-user
  • Tesselation of smooth surfaces
  • Cylinders
  • Surfaces of Revolution
  • Generalized Cylinder
  • Extrusions
  • Sweeps
  • Non-linear deformations
  • Free-form surfaces
  • Parametric Patches / tensor products (didn’t do much with them)
  • Subdivision
    • basic concepts
    • limit surfaces
    • schemes for dividing triangles and quads
    • modified butterfly scheme
    • catmull-clark scheme
    • (we barely mentioned Loop in class)

Week 11 Color & Perception

  • Visual system basics (eye anatomy)
  • Physics of color
  • Sensation of color
  • Trichomaticity
    • Color Blindness
  • Color in displays
    • Gamma
    • Gamut
  • Metamers
  • Imaginary primary color spaces
  • Artist color systems (hue, saturation, value)
  • Compression

Week 12 Depth & Compositing (not covered on exam)

  • VR & VR Systems
  • History of Compositing

Week 13

  • Depth cues
  • Image-based graphics hacks
  • Image processing basics (reviewed the following week)
    • motivations of what goes wrong with bad sampling

Week 14

  • Image Processing
    • basic concepts
    • sampling, re-construction, re-sampling
    • aliasing
    • issues in getting image processing wrong
  • Point processes
  • Compositing and Image Algebra
  • Sampling
    • aliasing and issues
    • intuitions of the need for pre-filtering
    • nyquist-shannon (we didn’t call it that)
      • possibility of ideal reconstruction with bandpassed signals
  • Filtering
    • concept of frequency domain
    • band-limited filters
    • low-pass filters (of various types)
  • Convolutions
    • Discrete convolutions
    • Continuous convolutions
    • Point reconstruction by convolution
    • Sharpening (high-pass filter) vs. De-Blurring(deconvolution)
  • Drawing
    • line drawing and aliasing issues
    • coverage models
    • point drawing models
    • need for compositing / anti-aliased drawing
  • Resampling via low-pass filtering

Week 15 – Rendering

  • High-Quality vs. Interactive Rendering
    • what effects are hard in interactive rendering
    • why we’re willing to give up speed
  • How lighting works in the real world
  • Path Tracing
    • kinds of paths (simple, complex, specular, diffuse)
    • we didn’t talk about the light path calculus
  • Ray Tracing
    • forward vs. backwards
  • Basic Ray Tracing
    • steps (initial rays, object intersection, recursion)
    • simple ray recursion (diffuse and specular rays)
    • issues as sampling problems
  • Distribution ray tracing
    • the need for multiple rays
    • how it helps with different effects
    • some effects it helps with
      • aliasing small objects / sharp features
      • depth of field
      • glossy / imperfect reflections
      • soft shadows
      • potentially – diffuse lighting effects (not so good since too many rays needed)
  • Things that are hard with “Backwards” ray tracing
    • caustics
    • diffuse object inter-reflection

{ 1 trackback }

Previous post:

Next post: