The set of rules for manipulating color values in a processing system is
sometimes called a color
model. IVL supports a color model that is based on processing pixel
values with red, green, blue, and alpha values, hence it is called RGBA
mode. The color model is determined by characteristics of the window in which
drawing is to occur. For this release of IVL, all windows that support IVL
rendering support RGBA mode.
RGBA mode is based on the premise that the system supports the processing of
up to four channels of color information simultaneously. The red, green, and
blue components are always treated identically.
During processing, red, green, blue, and alpha values are
conceptually treated as floating-point numbers in the range [0.0, 1.0]. As
pixels are processed and converted into values that can be written into the
frame buffer, a component value of 0.0 will be mapped into the smallest
displayable frame buffer value, and a value of 1.0 will be mapped into the
largest displayable frame buffer value.
In most cases, alpha values are treated the same as the other three
components, but there are some differences in how alpha values are processed.
However, the IVL specification permits implementations to streamline internal
processing so long as doing so does not alter the resultant image. If the
underlying frame buffer does not support the storage of an alpha
channel, then the implementation may choose not to apply some image
processing operations to the alpha data.
Many imaging applications manipulate and display images that contain only a
single channel of color information. In IVL terminology, these images are
referred to as luminance-only images, or simply
luminance images. These luminance
images can be thought of as RGBA images where the input luminance value is
used as the red, green, and blue component value for each pixel. The alpha
value defaults to 1.0 for every pixel.