PFND3DDDI_SETDISPLAYMODE Rückruffunktion (d3dumddi.h)

Die SetDisplayMode-Funktion wechselt zu einem Anzeigemodus oder einer primären Funktion, die 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.

Bemerkungen

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

  • Primaries, die mit 10-Bits-pro-Kanal (10:10:10:2) erstellt und Zielformate gerendert werden (z. B. D3DFMT_A2R10G10B10)
  • Mehrfachbeispiele, bei denen das Mehrfach-Sampling während des Scannens ausgeführt wird
  • Persistente Primaries, die von Vollbildversionen von Microsoft DirectX Version 9.L-Anwendungen verwendet werden
Die Direct3D-Laufzeit ruft die CreateResource-Funktion des Benutzermodus auf, um die Primäre zu erstellen, die ausgecheckt werden soll. Der Treiber sollte jedoch die Hardware so programmieren, dass nur abgecheckt wird, wenn seine SetDisplayMode-Funktion aufgerufen wird. Daher legt die Laufzeit die Elemente hResource und SubResourceIndex der D3DDDIARG_SETDISPLAYMODE-Struktur fest, auf die der pData-Parameter auf die Primäre verweist, die über den Aufruf der CreateResource-Funktion des Treibers erstellt wurde. Der Treiber sollte dann die Primäre übersetzen, die durch hResource und SubResourceIndex dargestellt wird, in einen primären Zuordnungshandpunkt. Nachdem der Treiber diese Übersetzung ausgeführt hat, sollte der Treiber den resultierenden Handle in einem Aufruf der Funktion pfnSetDisplayModeCb übergeben, der dann einen Aufruf der DxgkDdiCommitVidPn-Funktion des Display-Miniport-Treibers initiiert.

Der Anzeigetreiber für den Benutzermodus kann das hPrimaryAllocation-Element der D3DDDICB_SETDISPLAYMODE-Struktur im Aufruf von pfnSetDisplayModeCb festlegen, um eine beliebige Zuordnung auszuchecken. Die Zuordnung muss jedoch als primär gekennzeichnet werden (d. b. der Benutzermodusanzeigetreiber muss das Primäre Bitfeld-Flag im Flags-Element der D3DDDI_ALLOCATIONINFO-Struktur in einem Aufruf der PfnAllocateCb-Funktion festgelegt haben, um die Zuordnung zu erstellen).

Anforderungen

   
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und späteren Versionen der Windows-Betriebssysteme.
Zielplattform Desktop
Header d3dumddi.h (include D3dumddi.h)

Siehe auch

D3DDDIARG_SETDISPLAYMODE

D3DDDI_DEVICEFUNCS

pfnSetDisplayModeCb