Stanford CS248A, Winter 2025
Computer Graphics:
Rendering, Geometry, and Image Manipulation

This page contains lecture slides and recommended readings for the Winter 2025 offering of CS248A.

(A look at the breadth of graphics applications, simple drawing of lines and points)
(Drawing a triangle via point sampling, point-in-triangle testing, aliasing, Fourier interpretation of aliasing, anti-aliasing)
(Definition of linear transforms, basic geometric transforms, homogeneous coordinates, transform hierarchies, perspective projection)
(Texture coordinate space, bilinear/trilinear interpolation, how aliasing arises during texture sampling, pre-filtering as an anti-aliasing technique)
(Z-buffer algorithm, image compositing, end-to-end 3D graphics pipeline as implemented by modern GPUs)
(Properties of surfaces (manifold, normal, curvature), implicit vs. explicit representations, basic representations such as triangle meshes, bezier curves and patches)
(Half-edge mesh structures, mesh operations such as tessellation and simplification)
(Closest point, ray-triangle intersection, ray-mesh intersection, the relationship between rasterization and ray tracing)
(Acceleration structures such as bounding volume hierarchies, K-D trees, uniform grids)
(Definition of radiometric quantities, the light field, BRDFs, light transport via reflection, integrating energy reflecting from surfaces)
(More on reflection models (specular reflection, transmittance), numerical estimation of illumination, Monte Carlo integration)
(Estimating direct lighting due to various types of light sources.)
(Brute force path tracing, Russian roulette, challenges of variance)
(Shadow mapping, ambient occlusion, precomputed lighting, real-time raytracing trends and innovations such as hardware acceleration, ReSTIR, and neural denoising.)
(Scene representations (volumes, points, gaussian splats) for volumetric rendering.)
(Using gradient-based optimization to recover NeRFs, 3D Gaussian splats. Applications of differentiable rendering.)
(How the eye works, representing color, brightness, and chromaticity)
(Non-linear intensity encodings, chroma subsampling, JPG image compression, a bit on video compression)
(VR Headset hardware, how head-mounted displays cause challenges for renderers, resolution and latency requirements, judder, foveated rendering)
(Course wrap up, discussion of ongoing graphics research at Stanford, discussion of the future role of generative AI in graphics)