The growing application of user-defined programs within graphics processing units (GPUs) has transformed the fixed-function display pipeline into a largely programmable pipeline. In this paper we propose that the elements fed through the pipeline be made entirely procedural. To enable this, we present a modification of the conventional graphics processor in which all procedures are executed in a common processor array and the rasterizer is augmented with a more general sampling controller. By executing both the geometric and shading elements of a procedural graphics model in a single processor we retain the data amplification that distinguishes procedural descriptions without a corresponding explosion of external bandwidth. Categories and Subject Descriptors (according to ACM CCS): I.3.3 [Computer Graphics]: Geometric algorithms, languages, and systems. Display algorithms. Color, shading, shadowing, and texture. Graphics processors.
Turner Whitted, James T. Kajiya