A certain amount of color data is stored at each pixel. This amount is determined by the number of bitplanes in the framebuffer. A bitplane contains one bit of data for each pixel. If there are eight color bitplanes, there are 8 color bits per pixel, and hence 2^8 = 256 different values or colors that can be stored at the pixel.
Bitplanes are often divided evenly into storage for R,
G, and B components (that is, a 24-bitplane system
devotes 8 bits each to red, green, and blue), but this
isn't always true. To find out the number of bitplanes
available on your system for red, green, blue, alpha,
or color-index values, use:
glGetIntegerv() with GL_RED_BITS, GL_GREEN_BITS, GL_BLUE_BITS, GL_ALPHA_BITS, and GL_INDEX_BITS.
In RGBA mode, the hardware sets aside a certain number of bitplanes for each of the R, G, B, and A components (not necessarily the same number for each component).