A History of Computer Graphics · All chapters.
Sixty influential papers by theme, and free software, extending the reading section of A History of Computer Graphics.
Influence signal: reprinted in the Association for Computing Machinery (ACM) collections Seminal Graphics: Pioneering Efforts That Shaped the Field (1998) or Seminal Graphics Papers: Pushing the Boundaries, Volume 2 (2023, papers to 2015).
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1963 | I. E. Sutherland, "Sketchpad: A man-machine graphical communication system," Proc. AFIPS Spring Joint Computer Conf. 23, pp. 329 ff., 1963; doi:10.1145/1461551.1461591; open copy | Drawing and editing structured pictures directly on a display with a light pen | Seminal Graphics (1998) | this chapter, interaction, scene graphs |
| 1968 | I. E. Sutherland, "A head-mounted three dimensional display," Proc. AFIPS Fall Joint Computer Conf. 33, pp. 757 ff., 1968; doi:10.1145/1476589.1476686 | Presenting perspective images that follow the viewer’s head | Seminal Graphics (1998) | this chapter, viewing, interaction |
| 1993 | C. Cruz-Neira, D. J. Sandin, T. A. DeFanti, "Surround-screen projection-based virtual reality: the design and implementation of the CAVE," Proc. SIGGRAPH 93, pp. 135-142; doi:10.1145/166117.166134 | Immersive virtual reality (VR) without a head-mounted display, using projected walls | Seminal Graphics Papers vol. 2 (2023) | interaction, viewing |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1965 | J. E. Bresenham, "Algorithm for computer control of a digital plotter," IBM Systems Journal 4(1):25-30, 1965; doi:10.1147/sj.41.0025 | Drawing straight lines on a discrete grid with integer arithmetic only | Seminal Graphics (1998) | rasterization |
| 1974 | I. E. Sutherland, R. F. Sproull, R. A. Schumacker, "A characterization of ten hidden-surface algorithms," ACM Computing Surveys 6(1):1-55, 1974; doi:10.1145/356625.356626 | Unifying hidden-surface removal as a family of sorting strategies | none recorded | rasterization, this chapter |
| 1974/75 | E. Catmull, "Computer display of curved surfaces," 1975 (reprinted in Seminal Graphics, 1998); based on his Univ. of Utah PhD thesis, "A subdivision algorithm for computer display of curved surfaces," 1974; doi:10.1145/280811.280920 | Rendering curved patches by subdivision to pixels; introduces the z-buffer and texture mapping | Seminal Graphics (1998) | rasterization, texture mapping, curves and surfaces |
| 1976 | J. H. Clark, "Hierarchical geometric models for visible surface algorithms," CACM 19(10):547-554, 1976; doi:10.1145/360349.360354 | Bounding-volume hierarchies and level of detail for scenes too large to draw whole | Seminal Graphics (1998) | scene graphs, viewing |
| 1977 | F. C. Crow, "The aliasing problem in computer-generated shaded images," CACM 20(11):799-805, 1977; doi:10.1145/359863.359869 | Jagged edges and moire explained as undersampling, with filtering remedies | Seminal Graphics (1998) | antialiasing |
| 1978 | L. Williams, "Casting curved shadows on curved surfaces," Computer Graphics (SIGGRAPH 78) 12(3):270-274; doi:10.1145/965139.807402 | Shadows by rendering depth from the light: the shadow map | Seminal Graphics (1998) | illumination, rasterization |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1971 | H. Gouraud, "Continuous shading of curved surfaces," IEEE Trans. Computers C-20(6):623-629, 1971; doi:10.1109/t-c.1971.223313 | Visible facets of polygon meshes: interpolated vertex intensities | Seminal Graphics (1998) | illumination, meshes |
| 1975 | B. T. Phong, "Illumination for computer generated pictures," CACM 18(6):311-317, 1975; doi:10.1145/360825.360839 | Specular highlights and smooth shading via interpolated normals | Seminal Graphics (1998) | illumination |
| 1976 | J. F. Blinn, M. E. Newell, "Texture and reflection in computer generated images," CACM 19(10):542-547, 1976; doi:10.1145/360349.360353 | Texture detail and mirror reflection without ray tracing (environment mapping) | Seminal Graphics (1998) | texture mapping, illumination |
| 1977 | J. F. Blinn, "Models of light reflection for computer synthesized pictures," Computer Graphics (SIGGRAPH 77) 11(2):192-198; doi:10.1145/965141.563893 | Physically motivated highlights (microfacet ideas; the Blinn half-vector) | Seminal Graphics (1998) | illumination, light transport |
| 1978 | J. F. Blinn, "Simulation of wrinkled surfaces," Computer Graphics (SIGGRAPH 78) 12(3):286-292; doi:10.1145/965139.507101 | Surface roughness without extra geometry: bump mapping | Seminal Graphics (1998) | texture mapping, illumination |
| 1982 | R. L. Cook, K. E. Torrance, "A reflectance model for computer graphics," ACM TOG 1(1):7-24, 1982 (SIGGRAPH 81 version: Computer Graphics 15(3):307-316); doi:10.1145/357290.357293 | Material-dependent specular reflection: microfacet bidirectional reflectance distribution function (BRDF) with Fresnel term | none recorded | illumination, light transport, color |
| 1983 | L. Williams, "Pyramidal parametrics," Computer Graphics (SIGGRAPH 83) 17(3):1-11; doi:10.1145/964967.801126 | Aliasing in minified textures: prefiltered image pyramid (mipmap) | Seminal Graphics (1998) | texture mapping, antialiasing |
| 1984 | R. L. Cook, "Shade trees," Computer Graphics (SIGGRAPH 84) 18(3):223-231; doi:10.1145/964965.808602; open copy | Fixed shading models too rigid; shading as composable expression trees | Seminal Graphics (1998) | illumination, texture mapping |
| 1985 | K. Perlin, "An image synthesizer," Computer Graphics (SIGGRAPH 85) 19(3):287-296; doi:10.1145/325165.325247 | Natural-looking texture without images: noise and procedural shading | Seminal Graphics (1998) | texture mapping |
| 1990 | P. Hanrahan, J. Lawson, "A language for shading and lighting calculations," Computer Graphics (SIGGRAPH 90) 24(4):289-298; doi:10.1145/97880.97911 | A programmable shading language (RenderMan Shading Language) | Seminal Graphics Papers vol. 2 (2023) | illumination, texture mapping |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1980 | T. Whitted, "An improved illumination model for shaded display," CACM 23(6):343-349, 1980; doi:10.1145/358876.358882 | Reflection, refraction and shadows by recursive rays | Seminal Graphics (1998) | ray tracing |
| 1984 | R. L. Cook, T. Porter, L. Carpenter, "Distributed ray tracing," Computer Graphics (SIGGRAPH 84) 18(3):137-145; doi:10.1145/964965.808590; open copy | Soft shadows, gloss, motion blur, depth of field by stochastic sampling | Seminal Graphics (1998) | ray tracing, antialiasing |
| 1984 | C. M. Goral, K. E. Torrance, D. P. Greenberg, B. Battaile, "Modeling the interaction of light between diffuse surfaces," Computer Graphics (SIGGRAPH 84) 18(3):213-222; doi:10.1145/964965.808601 | Diffuse interreflection (color bleeding) via radiosity | Seminal Graphics (1998) | light transport |
| 1986 | J. T. Kajiya, "The rendering equation," Computer Graphics (SIGGRAPH 86) 20(4):143-150; doi:10.1145/15886.15902 | One integral equation for all light transport; path tracing | Seminal Graphics (1998) | light transport, ray tracing |
| 1988 | M. F. Cohen, S. E. Chen, J. R. Wallace, D. P. Greenberg, "A progressive refinement approach to fast radiosity image generation," Computer Graphics (SIGGRAPH 88) 22(4):75-84; doi:10.1145/378456.378487 | Radiosity too slow to view; shoot light progressively | Seminal Graphics (1998) | light transport |
| 1995 | E. Veach, L. J. Guibas, "Optimally combining sampling techniques for Monte Carlo rendering," Proc. SIGGRAPH 95, pp. 419-428; doi:10.1145/218380.218498; open copy; Veach’s thesis | Noise from a single sampling strategy: multiple importance sampling | none recorded | light transport |
| 1996 | H. W. Jensen, "Global illumination using photon maps," Rendering Techniques '96 (Eurographics Workshop on Rendering), Springer, pp. 21-30; doi:10.1007/978-3-7091-7484-5_3; open copy | Caustics and indirect light that path tracing samples poorly | none recorded | light transport |
| 1997 | E. Veach, L. J. Guibas, "Metropolis light transport," Proc. SIGGRAPH 97, pp. 65-76; doi:10.1145/258734.258775; open copy | Light paths that are hard to sample: Markov chain path mutation | Seminal Graphics Papers vol. 2 (2023) | light transport |
| 2001 | H. W. Jensen, S. R. Marschner, M. Levoy, P. Hanrahan, "A practical model for subsurface light transport," Proc. SIGGRAPH 2001, pp. 511-518; doi:10.1145/383259.383319; open copy | Subsurface scattering in translucent materials (skin, marble, milk) | Seminal Graphics Papers vol. 2 (2023) | light transport, illumination |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1984 | T. Porter, T. Duff, "Compositing digital images," Computer Graphics (SIGGRAPH 84) 18(3):253-259; doi:10.1145/964965.808606; open copy | Combining separately rendered elements: alpha channel and the over operator | Seminal Graphics (1998) | image space, color |
| 1993 | S. E. Chen, L. Williams, "View interpolation for image synthesis," Proc. SIGGRAPH 93, pp. 279-288; doi:10.1145/166117.166153 | New views from stored images plus depth instead of re-rendering | both Seminal Graphics volumes | image space, learned scenes |
| 1996 | M. Levoy, P. Hanrahan, "Light field rendering," Proc. SIGGRAPH 96, pp. 31-42; doi:10.1145/237170.237199; open copy | Rendering new views with no geometry, from a 4D array of rays | Seminal Graphics Papers vol. 2 (2023) | learned scenes, image space |
| 1996 | S. J. Gortler, R. Grzeszczuk, R. Szeliski, M. F. Cohen, "The lumigraph," Proc. SIGGRAPH 96, pp. 43-54; doi:10.1145/237170.237200 | Same 4D ray function, captured with a hand-held camera and coarse geometry | Seminal Graphics Papers vol. 2 (2023) | learned scenes, image space |
| 1996 | P. E. Debevec, C. J. Taylor, J. Malik, "Modeling and rendering architecture from photographs," Proc. SIGGRAPH 96, pp. 11-20; doi:10.1145/237170.237191; open copy | Photoreal models of buildings from a few photos (Facade, view-dependent texture) | Seminal Graphics Papers vol. 2 (2023) | texture mapping, learned scenes |
| 1997 | P. E. Debevec, J. Malik, "Recovering high dynamic range radiance maps from photographs," Proc. SIGGRAPH 97, pp. 369-378; doi:10.1145/258734.258884; open copy | Cameras clip real-world radiance; merge exposures into high dynamic range (HDR) | Seminal Graphics Papers vol. 2 (2023) | color, image space |
| 1998 | P. Debevec, "Rendering synthetic objects into real scenes," Proc. SIGGRAPH 98, pp. 189-198; doi:10.1145/280814.280864; open copy | Lighting computer-generated (CG) objects with measured real light (image-based lighting) | none recorded | illumination, light transport |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1983 | W. T. Reeves, "Particle systems: a technique for modeling a class of fuzzy objects," ACM TOG 2(2):91-108, 1983; doi:10.1145/357318.357320 | Phenomena without surfaces (fire, smoke, explosions): particle systems | Seminal Graphics (1998) | animation |
| 1987 | C. W. Reynolds, "Flocks, herds and schools: a distributed behavioral model," Computer Graphics (SIGGRAPH 87) 21(4):25-34; doi:10.1145/37402.37406; open copy | Group motion from three local rules (boids) | Seminal Graphics (1998) | animation |
| 1987 | J. Lasseter, "Principles of traditional animation applied to 3D computer animation," Computer Graphics (SIGGRAPH 87) 21(4):35-44; doi:10.1145/37402.37407 | Principles of traditional animation (squash and stretch, timing, anticipation) applied to 3D keyframing | Seminal Graphics (1998) | animation |
| 1987 | D. Terzopoulos, J. Platt, A. Barr, K. Fleischer, "Elastically deformable models," Computer Graphics (SIGGRAPH 87) 21(4):205-214; doi:10.1145/37402.37427 | Cloth, rubber and soft bodies from elasticity theory | Seminal Graphics Papers vol. 2 (2023) | animation |
| 1988 | A. Witkin, M. Kass, "Spacetime constraints," Computer Graphics (SIGGRAPH 88) 22(4):159-168; doi:10.1145/378456.378507; open copy | Physically plausible motion from goals, solved as optimization over time | Seminal Graphics Papers vol. 2 (2023) | animation |
| 1998 | D. Baraff, A. Witkin, "Large steps in cloth simulation," Proc. SIGGRAPH 98, pp. 43-54; doi:10.1145/280814.280821; open copy | Stiff cloth forced tiny time steps; implicit integration | Seminal Graphics Papers vol. 2 (2023) | animation |
| 1999 | J. Stam, "Stable fluids," Proc. SIGGRAPH 99, pp. 121-128; doi:10.1145/311535.311548; open copy | Fluid solvers blew up at large time steps; semi-Lagrangian advection | Seminal Graphics Papers vol. 2 (2023) | animation |
| 1999 | V. Blanz, T. Vetter, "A morphable model for the synthesis of 3D faces," Proc. SIGGRAPH 99, pp. 187-194; doi:10.1145/311535.311556 | 3D faces from one photo via a statistical shape space | Seminal Graphics Papers vol. 2 (2023) | meshes, neural networks |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1978 | E. Catmull, J. Clark, "Recursively generated B-spline surfaces on arbitrary topological meshes," Computer-Aided Design 10(6):350-355, 1978; doi:10.1016/0010-4485(78)90110-0 | Smooth surfaces on meshes of any topology: subdivision | Seminal Graphics (1998) | curves and surfaces, meshes |
| 1987 | W. E. Lorensen, H. E. Cline, "Marching cubes: a high resolution 3D surface construction algorithm," Computer Graphics (SIGGRAPH 87) 21(4):163-169; doi:10.1145/37402.37422 | Extracting a triangle surface from volume data (computed tomography, CT; magnetic resonance imaging, MRI) | Seminal Graphics (1998) | meshes |
| 1992 | H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, W. Stuetzle, "Surface reconstruction from unorganized points," Computer Graphics (SIGGRAPH 92) 26(2):71-78; doi:10.1145/142920.134011; open copy | A mesh from a raw point cloud with no connectivity | Seminal Graphics Papers vol. 2 (2023) | meshes |
| 1996 | H. Hoppe, "Progressive meshes," Proc. SIGGRAPH 96, pp. 99-108; doi:10.1145/237170.237216; open copy | Continuous level of detail and streaming for meshes | Seminal Graphics Papers vol. 2 (2023) | meshes |
| 1996 | B. Curless, M. Levoy, "A volumetric method for building complex models from range images," Proc. SIGGRAPH 96, pp. 303-312; doi:10.1145/237170.237269; open copy | Merging many range scans into one watertight model (signed distance fusion) | Seminal Graphics Papers vol. 2 (2023) | meshes, learned scenes |
| 1997 | M. Garland, P. S. Heckbert, "Surface simplification using quadric error metrics," Proc. SIGGRAPH 97, pp. 209-216; doi:10.1145/258734.258849; open copy | Fast, good-quality mesh simplification | Seminal Graphics Papers vol. 2 (2023) | meshes |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 1982 | J. H. Clark, "The Geometry Engine: a VLSI geometry system for graphics," Computer Graphics (SIGGRAPH 82) 16(3):127-133; doi:10.1145/965145.801272 | Transform and clip in custom very-large-scale integration (VLSI) chips rather than central processing unit (CPU) software | Seminal Graphics (1998) | affine transforms, viewing, this chapter |
| 1987 | R. L. Cook, L. Carpenter, E. Catmull, "The Reyes image rendering architecture," Computer Graphics (SIGGRAPH 87) 21(4):95-102; doi:10.1145/37402.37414; open copy | Film-quality rendering of complex scenes: dice to micropolygons | Seminal Graphics Papers vol. 2 (2023) | rasterization, this chapter |
| 1993 | K. Akeley, "RealityEngine graphics," Proc. SIGGRAPH 93, pp. 109-116; doi:10.1145/166117.166131 | Antialiased, texture-mapped polygons in real time in hardware | Seminal Graphics Papers vol. 2 (2023) | rasterization, texture mapping, antialiasing |
| 2002 | P.-P. Sloan, J. Kautz, J. Snyder, "Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments," ACM TOG 21(3):527-536 (SIGGRAPH 2002); doi:10.1145/566654.566612; open copy | Soft shadows and interreflection at interactive rates via spherical harmonics | Seminal Graphics Papers vol. 2 (2023) | light transport, illumination |
| 2004 | I. Buck, T. Foley, D. Horn, J. Sugerman, K. Fatahalian, M. Houston, P. Hanrahan, "Brook for GPUs: stream computing on graphics hardware," ACM TOG 23(3):777-786 (SIGGRAPH 2004); doi:10.1145/1015706.1015800; open copy | General computation on graphics processing units (GPUs); precursor of CUDA-style (Compute Unified Device Architecture) programming | Seminal Graphics Papers vol. 2 (2023) | this chapter, neural networks |
| year | paper | problem addressed | influence signal | chapter |
|---|---|---|---|---|
| 2020 | B. Mildenhall, P. P. Srinivasan, M. Tancik, J. T. Barron, R. Ramamoorthi, R. Ng, "NeRF: representing scenes as neural radiance fields for view synthesis," ECCV 2020, LNCS, Springer, pp. 405-421; doi:10.1007/978-3-030-58452-8_24; arXiv:2003.08934 | Photoreal novel views from photos, scene stored as a multilayer perceptron (MLP) | none recorded | learned scenes, neural networks |
| 2020 | J. Ho, A. Jain, P. Abbeel, "Denoising diffusion probabilistic models," NeurIPS 2020; arXiv:2006.11239 | High-quality image generation by learning to reverse a noising process | none recorded | diffusion |
| 2022 | R. Rombach, A. Blattmann, D. Lorenz, P. Esser, B. Ommer, "High-resolution image synthesis with latent diffusion models," CVPR 2022, pp. 10674-10685; doi:10.1109/cvpr52688.2022.01042; arXiv:2112.10752 | Diffusion too costly at full resolution; diffuse in a learned latent space | none recorded | diffusion, neural networks |
| 2022 | T. Müller, A. Evans, C. Schied, A. Keller, "Instant neural graphics primitives with a multiresolution hash encoding," ACM TOG 41(4), pp. 1-15 (SIGGRAPH 2022); doi:10.1145/3528223.3530127; arXiv:2201.05989 | NeRF training took hours; hash-grid encoding cuts it to seconds | none recorded | learned scenes, neural networks |
| 2022 | B. Poole, A. Jain, J. T. Barron, B. Mildenhall, "DreamFusion: text-to-3D using 2D diffusion," ICLR 2023 (arXiv 2022); arXiv:2209.14988 | 3D assets from text with no 3D training data (score distillation) | none recorded | diffusion, learned scenes |
| 2023 | B. Kerbl, G. Kopanas, T. Leimkühler, G. Drettakis, "3D Gaussian splatting for real-time radiance field rendering," ACM TOG 42(4), pp. 1-14 (SIGGRAPH 2023); doi:10.1145/3592433; open copy | Radiance fields at real-time rates by rasterizing anisotropic Gaussians | none recorded | learned scenes, rasterization |
All free of charge; the five that are not open source are marked in the license column (licenses as of 2026-10-02).
| software | license | in this course |
|---|---|---|
| Historical renderers and classic data | ||
| POV-Ray (from DKBTrace, 1986 to 1989; POV-Ray from 1991) | AGPL-3.0 from version 3.7 | ray tracing; a text scene language that reads as a scene graph |
| Radiance (Greg Ward, Lawrence Berkeley National Laboratory) | Radiance Software License 1.0 (BSD-style) | validated lighting simulation |
| Utah teapot data | not stated (widely redistributed) | Bézier patches, tessellation |
| Stanford 3D Scanning Repository | own terms: research and redistribution, no commercial use | meshes, simplification |
| Renderers and rendering libraries | ||
| pbrt-v4 | Apache-2.0 | light transport, sampling, spectral color |
| Mitsuba 3 and Dr.Jit (EPFL) | BSD-3-Clause | differentiable and inverse rendering |
| LuxCoreRender | Apache-2.0 | unbiased rendering |
| appleseed (no release since 2019) | MIT | production-style rendering with Open Shading Language (OSL) |
| Cycles | Apache-2.0 | path tracing with node shading |
| EEVEE (in Blender) | GPL-2.0-or-later | a rasterizer beside Cycles on the same scene |
| Intel Embree, OSPRay, Open Image Denoise | Apache-2.0 | ray-tracing kernels, volume rendering, learned denoising |
| Pixar RenderMan, Non-Commercial | free, not open source (proprietary) | production rendering |
| NVIDIA OptiX SDK | free, not open source (NVIDIA SDK license) | GPU ray tracing on RTX hardware |
| Modeling, content creation and engines | ||
| Blender (released under the GPL on 13 October 2002 after a user-funded buyout) | GPL-2.0-or-later | every chapter |
| MeshLab (ISTI-CNR, Pisa) | GPL-3.0 | scan cleaning, simplification, remeshing |
| OpenSCAD | GPL-2.0 with a CGAL linking exception | constructive solid geometry (CSG) trees written as code |
| FreeCAD | LGPL-2.1 | parametric computer-aided design (CAD), boundary representation (B-rep) and non-uniform rational B-splines (NURBS) |
| Houdini Apprentice | free, not open source; non-commercial, renders capped at 1920 by 1080, watermarked | procedural modeling, simulation |
| Godot Engine | MIT | scene graphs, shaders, interaction |
| Unity Personal | free tier, not open source; under $200K revenue and funds raised in 12 months | the course’s engine track |
| Unreal Engine | free to download, not open source; source available to licensees | real-time rendering reference |
| Libraries, interfaces and standards | ||
| OpenGL (4.6, 2017) and WebGL | royalty-free specifications | the course demos run on WebGL |
| Vulkan | royalty-free specification | explicit raster and ray-tracing pipelines |
| three.js, Babylon.js | MIT; Apache-2.0 | the course’s web track |
| OpenUSD (Pixar, open since 2016) | Tomorrow Open Source Technology License 1.0 (Apache 2.0 with a different trademark section) | scene description and composition |
| Alembic, OpenEXR, OpenColorIO, Open Shading Language | BSD-3-Clause | geometry caches, HDR images, color management, shaders |
| OpenVDB, MaterialX | Apache-2.0 | sparse volumes; portable materials |
| glTF 2.0 (ISO/IEC 12113:2022) | royalty-free specification | the course’s asset format |
| libigl | MPL-2.0 core; GPL-3.0 modules | geometry processing |
| CGAL | GPL-3.0-or-later and LGPL-3.0-or-later, plus a commercial license | robust computational geometry |
| Open3D, PyTorch3D | MIT; BSD-3-Clause | point clouds; differentiable rendering |
| nerfstudio, gsplat, NVIDIA Kaolin | Apache-2.0 | learned scenes |