Texture mapping is the technique of painting a stored image, the texture, onto the surface of a 3D model so that fine detail such as wood grain, brick, or printed labels appears without adding any extra geometry. The surface carries a 2D coordinate system, and during rendering each visible point is mapped back into the texture image to fetch a color. This decoupling of detail from shape is one of the most economical ideas in computer graphics: a single small image can make a coarse polygonal model look richly detailed.
The technique originates with Edwin Catmull’s 1974 University of Utah PhD dissertation, “A Subdivision Algorithm for Computer Display of Curved Surfaces” (technical report UTEC-CSC-74-133, archived as DTIC ADA004968). Catmull’s main contribution was a recursive subdivision method for rendering curved bicubic patches, but in the course of it he observed that the patch’s own parameterization gives a natural coordinate frame onto which a picture can be mapped. That observation is the first description of mapping a 2D image onto a curved 3D surface.
James Blinn and Martin Newell extended the idea in “Texture and reflection in computer generated images,” published in the Communications of the ACM, volume 19, number 10, pages 542 to 547, in October 1976 (DOI 10.1145/360349.360353). They generalized Catmull’s mapping and added reflection mapping, in which the surrounding environment is treated as a texture indexed by the reflection direction, so that mirror-like surfaces appear to reflect their surroundings. This is the paper, illustrated with the now-iconic Utah teapot, that established environment mapping.
From these beginnings texture mapping became fundamental to real-time and offline rendering alike. Later refinements added mipmapping for distance filtering, bump and normal mapping for simulated surface relief, and specialized maps for displacement, gloss, and lighting. Modern graphics processing units devote dedicated hardware to texture sampling, making the fetch-a-color-per-pixel operation that Catmull first described one of the most heavily used primitives in all of computing.