Computer Graphics (CMU 15-462/662)

This page contains lecture slides, videos, and recommended readings.

(Overview of graphics + making a line drawing of a cube!)
Supplementary material:
(Vectors, vector spaces, linear maps, inner product, norm, L2 inner product, span, basis, orthonormal basis, Gram-Schmidt, frequency decomposition, systems of linear equations, bilinear and quadratic forms, matrices)
(Euclidean inner product, cross product, matrix representations, determinant, triple product formulas, differential operators, directional derivative, gradient, differentiating matrices, differentiating functions, divergence, curl, Laplacian, Hessian, (multivariable) Taylor series)
(coverage testing as sampling a 2D signals, challenges of aliasing, performing point-in-triangle tests)
Further Reading:
(basic math of spatial transformations and coordinate spaces)
Further Reading:
(3D rotations, commutativity of rotations, 2D rotation matrix, Euler angles, rotation from axis/angle, complex numbers, quaternions, quaternion rotation)
(understanding perspective projection, texture mapping using the mip-map)
Further Reading:
(occlusion via the depth buffer, alpha composition, the graphics pipeline and modern GPUs)
Further Reading:
(implicit and explicit representations, geometric data structures)
(smooth surfaces, manifold condition, manifold polygon mesh, surfaces with boundary, polygon soup, incidence matrices, halfedge data structure, local mesh operations, subdivision modeling)
(geometry processing pipeline, surface reconstruction, upsampling, downsampling, resampling, filtering, compression, shape analysis, remeshing, mesh quality, subdivision, Catmull-Clark scheme, Loop scheme, iterative edge collapse, quadric error metric, minimizing a quadratic form, Delaunay flipping, Laplacian smoothing, isotropic remeshing, signal degradation)
(distance queries, point-to-triangle, definition of a ray, ray-sphere intersection, ray-triangle intersection, triangle-triangle intersection)
(acceleration via bounding volume hierarchies and space partitioning structures, rasterization and ray casting as solutions to the same visibility query problem)
(tristimulus nature of color perception, color matching experiments, XYZ primaries, luminance vs. brightness, color spaces, gamma correction, tone mapping)
Further Reading:
(radiometric quantities and units, photometry, radiometry integrals, how real cameras work)
(the rendering equation, the importance of indirect illumination, path tracing, splitting, Russian roulette)
(quadrature, sampling distributions, basic Monte Carlo integration)
(ray tracing vs. rasterization, local vs. global illumination, Monte Carlo integration, expected value, variance, law of large numbers, importance sampling, direct lighting estimate, cosine weighting, path tracing, Russian roulette)