Cg: a system for programming graphics hardware in a C-like language
The University of Texas at Austin
In SIGGRAPH ’03: ACM SIGGRAPH 2003 Papers (2003), pp. 896-907
@conference{mark2003cg,
title={Cg: A system for programming graphics hardware in a C-like language},
author={Mark, W.R. and Glanville, R.S. and Akeley, K. and Kilgard, M.J.},
booktitle={ACM SIGGRAPH 2003 Papers},
pages={896–907},
isbn={1581137095},
year={2003},
organization={ACM}
}
The latest real-time graphics architectures include programmable floating-point vertex and fragment processors, with support for data-dependent control flow in the vertex processor. We present a programming language and a supporting system that are designed for programming these stream processors. The language follows the philosophy of C, in that it is a hardware-oriented, general-purpose language, rather than an application-specific shading language. The language includes a variety of facilities designed to support the key architectural features of programmable graphics processors, and is designed to support multiple generations of graphics architectures with different levels of functionality. The system supports both of the major 3D graphics APIs: OpenGL and Direct3D. This paper identifies many of the choices that we faced as we designed the system, and explains why we made the decisions that we did.
February 10, 2011 by hgpu