Поделиться через


Метод IDirectDrawGammaControl::SetGammaRamp (ddraw.h)

Задает красные, зеленые и синие гамма-пандусы для основной поверхности.

Синтаксис

HRESULT SetGammaRamp(
  [in] DWORD         unnamedParam1,
  [in] LPDDGAMMARAMP unnamedParam2
);

Параметры

[in] unnamedParam1

Флаг, указывающий, требуется ли гамма-калибровка. Присвойте этому параметру значение DDSGR_CALIBRATE, чтобы запросить, чтобы калибратор отрегулировать гамма-рампу в соответствии с физическими свойствами дисплея, что делает результат идентичным на всех компьютерах. Если калибровка не требуется, задайте для этого параметра значение 0.

[in] unnamedParam2

Указатель на структуру DDGAMMARAMP , содержащую новые красные, зеленые и синие элементы гамма-рампы. Каждый массив сопоставляет значения цвета в буфере кадра со значениями цвета, передаваемыми в цифровой аналоговый преобразователь (DAC).

Возвращаемое значение

Если метод выполнен успешно, возвращаемое значение будет DD_OK.

В случае сбоя метод может вернуть одно из следующих значений ошибки:

  • DDERR_EXCEPTION
  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_OUTOFMEMORY

Комментарии

Не все системы поддерживают гамма-калибровку. Чтобы определить, поддерживается ли гамма-калибровка, вызовите метод IDirectDraw7::GetCaps и проверьте член dwCaps2 связанной структуры DDCAPS после возврата метода. Если флаг возможности DDCAPS2_CANCALIBRATEGAMMA присутствует, то поддерживается гамма-калибровка.

Калибровка гамма-пандусов влечет за собой некоторые затраты на обработку и не должна использоваться часто.

Включение флага DDSGR_CALIBRATE в параметр dwFlags при выполнении на компьютерах, не поддерживающих гамма-калибровку, не приведет к сбою этого метода. Метод выполняется успешно и задает новые значения гамма-рампы без калибровки.

Требования

Требование Значение
Целевая платформа Windows
Header ddraw.h
Библиотека Ddraw.lib
DLL Ddraw.dll

См. также раздел

IDirectDrawGammaControl