Platform SDK: DirectX |
IDirectDrawGammaControl::SetGammaRamp メソッドは、プライマリ サーフェスに対する赤、緑、および青ガンマ ランプを取得する。
HRESULT SetGammaRamp( DWORD dwFlags, LPGAMMARAMP lpRampData );
成功すれば、DD_OK を返す。
失敗すれば、以下のエラー値のいずれかを返す。
DDERR_EXCEPTION |
DDERR_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_OUTOFMEMORY |
すべてのシステムでガンマ キャリブレーションをサポートするわけではない。ガンマ キャリブレーションをサポートするかどうかを決めるには、IDirectDraw7::GetCaps を呼び出し、メソッドが返した後に関連する DDCAPS 構造体の dwCaps2 メンバを調べる。DDCAPS2_CANCALIBRATEGAMMA 能力フラグが存在すると、ガンマ キャリブレーションはサポートされる。
ガンマ ランプのキャリブレーションでは、いくつかの処理にオーバーヘッドが起こるので、頻繁に使用できない。
ガンマ キャリブレーションをサポートしないシステムで実行する場合は、dwFlags パラメータに DDSGR_CALIBRATE フラグを設定すれば、このメソッドは失敗しない。キャリブレーションせずに新しいガンマ ランプ値を設定すると、メソッドは成功する。
Windows NT/2000 :Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : ddraw.h で宣言。
インポート ライブラリ : ddraw.lib を使用。