A History of Computer Graphics · All chapters.

Reading and Software

Sixty influential papers by theme, and free software, extending the reading section of A History of Computer Graphics.

Papers: sixty, by theme

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).

Interaction and displays (3)
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
Rasterization and visibility (6)
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
Shading and texture (10)
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
Light transport and ray tracing (9)
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
Image-based rendering, compositing and capture (7)
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
Animation and simulation (8)
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
Curves, surfaces and geometry processing (6)
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
Hardware, architectures and real time (5)
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
Neural rendering and generative models (6)
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

Free software

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
Start here
  1. Ray Tracing in One Weekend (raytracing.github.io): write a ray tracer in a weekend.
  2. Blender (blender.org): render one scene in EEVEE and in Cycles and compare.
  3. The Book of Shaders, then Shadertoy: write a fragment shader in the browser.
  4. three.js examples (threejs.org): scene graphs and viewing in the browser, the stack the course demos use.
  5. pbr-book.org: read chapter 1 of the free 4th edition.
  6. Poly Haven and the Stanford 3D Scanning Repository: free HDR environments, textures and the bunny.
  7. Ke-Sen Huang’s lists: find this year’s papers from SIGGRAPH (the ACM Special Interest Group on Computer Graphics and Interactive Techniques) with free PDFs.
How to read a SIGGRAPH paper First pass: the abstract, then every figure and caption in order (graphics papers carry most of their argument in figures), then the results: what exactly is compared, and is the baseline fair? Second pass, only if the paper still matters: the method, with a pencil. Follow citations backward from a modern paper’s related work to the papers in the history chapter. Look for the project page, which usually has video, code and data.