PFND3DDDI_SETDISPLAYMODE Rückruffunktion (d3dumddi.h)

Die SetDisplayMode-Funktion wechselt zu einem Anzeigemodus oder primären Modus, der vom GDI-Desktop nicht unterstützt wird.

Syntax

PFND3DDDI_SETDISPLAYMODE Pfnd3dddiSetdisplaymode;

HRESULT Pfnd3dddiSetdisplaymode(
  HANDLE hDevice,
  const D3DDDIARG_SETDISPLAYMODE *unnamedParam2
)
{...}

Parameter

hDevice

Ein Handle für das Anzeigegerät (Grafikkontext).

unnamedParam2

pData [in]

Ein Zeiger auf eine D3DDDIARG_SETDISPLAYMODE-Struktur , die Parameter zum Festlegen des Anzeigemodus angibt.

Rückgabewert

SetDisplayMode gibt S_OK oder ein entsprechendes Fehlerergebnis zurück, wenn der Anzeigemodus nicht erfolgreich festgelegt wurde.

Hinweise

Die Microsoft Direct3D-Runtime ruft SetDisplayMode auf, um zu einem Anzeigemodus oder primären Modus zu wechseln, der vom GDI-Desktop nicht unterstützt wird. In der folgenden Liste werden Beispiele für solche Vorwahlen beschrieben:

  • Primärries, die mit 10-Bits-pro-Kanal (10:10:10:2) erstellt werden, anzeige- und renderzielformate (z. B. D3DFMT_A2R10G10B10)
  • Primaries mit mehreren Stichproben, bei denen die mehrfache Stichprobenentnahme während des Ausscannens durchgeführt wird
  • Persistente Primaries, die von Vollbildanwendungen von Microsoft DirectX Version 9.L verwendet werden
Die Direct3D-Runtime ruft die CreateResource-Funktion des Benutzermodusanzeigetreibers auf, um die primäre zu scannende Instanz zu erstellen. Der Treiber sollte die Hardware jedoch nur so programmieren, dass sie ausgecheckt wird, wenn seine SetDisplayMode-Funktion aufgerufen wird. Daher legt die Runtime die hResource- und SubResourceIndex-Member der D3DDDIARG_SETDISPLAYMODE Struktur fest, auf die der pData-Parameter verweist, auf den primären, der durch den Aufruf der CreateResource-Funktion des Treibers erstellt wurde. Der Treiber sollte dann den primären, der durch hResource und SubResourceIndex dargestellt wird, in ein primäres Zuordnungshandle übersetzen. Nachdem der Treiber diese Übersetzung durchgeführt hat, sollte der Treiber das resultierende Handle in einem Aufruf der PfnSetDisplayModeCb-Funktion übergeben, die dann einen Aufruf der DxgkDdiCommitVidPn-Funktion des Anzeigeminiporttreibers initiiert.

Der Benutzermodus-Anzeigetreiber kann den hPrimaryAllocation-Member der D3DDDICB_SETDISPLAYMODE-Struktur im Aufruf von pfnSetDisplayModeCb festlegen, um jede Zuordnung zu überprüfen. Die Zuordnung muss jedoch als primär markiert werden (d. a. der Anzeigetreiber für den Benutzermodus muss das Flag primäres Bitfeld im Flags-Member der D3DDDI_ALLOCATIONINFO-Struktur in einem Aufruf der pfnAllocateCb-Funktion festgelegt haben, um die Zuordnung zu erstellen).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Desktop
Kopfzeile d3dumddi.h (include D3dumddi.h)

Weitere Informationen

D3DDDIARG_SETDISPLAYMODE

D3DDDI_DEVICEFUNCS

pfnSetDisplayModeCb