Using Gamma Controls

The IDirectDrawGammaControl interface, which you retrieve by querying the surface with the IID_IDirectDrawGammaControl reference identifier, allows you to manipulate ramp levels that affect the red, green, and blue color components of pixels from the surface before they are sent to the digital-to-analog converter (DAC) for display. Although all surface types support the IDirectDrawGammaControl interface, you are only allowed to adjust gamma on the primary surface. Attempts to call IDirectDrawGammaControl::GetGammaRamp or IDirectDrawGammaControl::SetGammaRamp on a surface other than the primary surface will fail.

In the following topics, this section describes the general concept of ramp levels, and provides information about working with those levels through the methods of IDirectDrawGammaControl: