material properties

The set of inputs to the lighting equation that represent the characteristics of a surface. This includes the surface's normal, diffuse reflectance, specular reflectance, any specular power values, and so forth. The source of these values can come from many sources: uniform values for an object, fragment-shader inputs, or potentially other sources.

instance name

For uniform blocks (or other kinds of interface blocks), this name is used within a shader to name-qualifier the members of the block. These are optional, unless there is a naming conflict, or unless an array needs to be specified.

light clipping

Light values drawn to the screen are clamped to the range [0, 1]. When lighting produces values outside of this range, the light is said to be clipped by the range. This produces a very bright, flat section that loses all detail and distinction in the image. It is something best avoided.

high dynamic range lighting

Lighting that uses values outside of the [0, 1] range. This allows for the use of a full range of lighting intensities.

tone mapping

The process of mapping HDR values to a [0, 1] range. This may or may not be a linear mapping.


The set of reference colors that define a way of representing a color in computer graphics, and the function mapping between those reference colors and the actual colors. All colors are defined relative to a particular colorspace.

linear colorspace

A colorspace where the brightness of a color varies linearly with its values. Doubling the value of a color doubles its brightness.

gamma correction

The process of converting from a linear colorspace to a non-linear colorspace that a display device expects, usually through the use of a power function. This process ensures that the display produces an image that is linear.