skip to: online tools | main navigation | content | footer

Computer Sciences R&D

Home » Research & Development » Computer Sciences » Visualization & Scientific Computing » Programmable Hardware Shaders

Programmable Hardware Shaders

Programmable hardware shaders can replace the fixed-functionality vertex and pixel shaders traditionally found on Graphics Processing Units (graphics cards or GPUs). This allows greater control of how data are rendered to images and makes possible the use of sophisticated rendering techniques at interactive frame rates. What was once fixed in hardware is now programmable, making available to application developers a wide range of graphics techniques.

Programmable hardware shaders are written in C-like languages that take advantage of GPU architecture. For instance, GPUs represent four-dimensional vectors as first-class variable types and provide hardware support for efficient vector operations. This is helpful in lighting calculations with typically involved vector operations.

In practice, shaders can be compiled and installed to hardware just before they are used in rendering. The application configures the GPU to use a specific shader and sets its parameters. It then processes geometry and topology to hardware through standard graphics APIs (e.g. OpenGL or DirectX).