Freigeben über


IDirect3DDevice9::SetGammaRamp-Methode (d3d9helper.h)

Legt die Gammakorrekturrampe für die implizite Swapchain fest. Diese Methode wirkt sich auf den gesamten Bildschirm aus (nicht nur das aktive Fenster, wenn Sie im Fenstermodus ausgeführt werden).

Syntax

void SetGammaRamp(
  [in] UINT               iSwapChain,
  [in] DWORD              Flags,
  [in] const D3DGAMMARAMP *pRamp
);

Parameter

[in] iSwapChain

Typ: UINT

Ganzzahl ohne Vorzeichen, die die Swapchain angibt.

[in] Flags

Typ: DWORD

Gibt an, ob eine Korrektur angewendet werden soll. Die Gammakorrektur führt zu einer konsistenteren Anzeige, kann jedoch Verarbeitungsaufwand verursachen und sollte nicht häufig verwendet werden. Kurzfristige Effekte, z. B. das Rot blinken des gesamten Bildschirms, sollten nicht kalibriert werden, aber Gammaänderungen mit langer Dauer sollten kalibriert werden. Einer der folgenden Werte kann festgelegt werden:

Element BESCHREIBUNG
D3DSGR_CALIBRATE Wenn ein Gammakalibrator installiert ist, wird die Rampe geändert, bevor sie an das Gerät gesendet wird, um das System zu berücksichtigen und die Antwortkurven zu überwachen. Wenn kein Kalibrator installiert ist, wird die Rampe direkt an das Gerät übergeben.
D3DSGR_NO_CALIBRATION Es wird keine Gammakorrektur angewendet. Die mitgelieferte Gammatabelle wird direkt auf das Gerät übertragen.

[in] pRamp

Typ: const D3DGAMMARAMP*

Zeiger auf eine D3DGAMMARAMP Struktur, die die Gammakorrekturrampe darstellt, die für die implizite Swapchain festgelegt werden soll.

Rückgabewert

Keine

Bemerkungen

Es gibt immer mindestens eine Swap chain (die implizite Swap chain) für jedes Gerät, da Direct3D 9 über eine Swapchain als Eigenschaft des Geräts verfügt. Die Gammarampe wird sofort wirksam; es gibt keine Wartezeit auf eine vertikale Synchronisierung.

Wenn das Gerät gamma-Ramps im aktuellen Präsentationsmodus der Swap chain (Vollbild oder Fenster) nicht unterstützt, wird kein Fehler zurückgegeben. Anwendungen können die D3DCAPS2_FULLSCREENGAMMA- und D3DCAPS2_CANCALIBRATEGAMMA-Funktionsbits im Caps2-Element der D3DCAPS9-Struktur überprüfen, um die Funktionen des Geräts zu ermitteln und zu ermitteln, ob ein Kalibrator installiert ist.

Verwenden Sie für die Darstellung der Gammakorrektur im Fenster IDirect3DSwapChain9::P resent , wenn die Hardware das Feature unterstützt. In DirectX 8 legt SetGammaRamp die Gamma-Rampe nur für eine Vollbildmodusanwendung fest. Weitere Informationen zur Gammakorrektur finden Sie unter Gamma (Direct3D 9).

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d9helper.h (einschließlich D3D9.h)
Bibliothek D3D9.lib

Weitere Informationen

IDirect3DDevice9

IDirect3DDevice9::GetGammaRamp

IDirect3DSwapChain9