Freigeben über


ID3D12DebugCommandList1::AssertResourceState-Methode (d3d12sdklayers.h)

Überprüft, ob der angegebene Zustand mit dem Zustand der Unterressource übereinstimmt, vorausgesetzt, der Zustand der angegebenen Unterquelle ist während der Aufzeichnung einer Befehlsliste bekannt (z. B. wurde die Ressource zuvor in derselben Befehlslistenaufzeichnung überwechselt). Wenn der Zustand noch nicht bekannt ist, legt diese Methode den bekannten Zustand für die weitere Überprüfung später in derselben Befehlslistenaufzeichnung fest.

Syntax

BOOL AssertResourceState(
  [in] ID3D12Resource *pResource,
       UINT           Subresource,
       UINT           State
);

Parameter

[in] pResource

Typ: ID3D12Resource*

Gibt die zu überprüfende ID3D12Resource an.

Subresource

Typ: UINT

Der Index der zu überprüfenden Unterressource. Dies kann auf einen Index oder D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES festgelegt werden.

State

Typ: UINT

Gibt den zu überprüfenden Zustand an. Dies kann eine oder mehrere D3D12_RESOURCE_STATES Flags oder zusammen sein.

Rückgabewert

Typ: BOOL

Diese Methode gibt true zurück, wenn der nachverfolgte Zustand der Ressource oder Unterressource mit dem angegebenen Zustand übereinstimmt, andernfalls false .

Hinweise

Da die Ausführung von Befehlslisten irgendwann nach der Aufzeichnung erfolgt, kann der Zustand einer Ressource während der Aufzeichnung von Befehlslisten häufig nicht bekannt sein. AssertResourceState gibt einem Anwendungsentwickler die Möglichkeit, einer Ressource oder Unterquelle an einem festen Aufzeichnungspunkt in einer Befehlsliste einen angenommenen Zustand aufzuerlegen.

Häufig kann der Zustand einer Ressource oder Unterquelle entweder aufgrund einer vorherigen Barriere oder einer abgeleiteten Verwendung (z. B. in einem früheren Aufruf von CopyBufferRegion) während der Befehlslistenaufzeichnung bekannt sein. In solchen Fällen kann AssertResourceState eine Debugmeldung erzeugen, wenn der angegebene Zustand nicht mit dem bekannten oder angenommenen Zustand übereinstimmt.

Diese API dient nur zur Debugüberprüfung und wirkt sich nicht auf den tatsächlichen Runtime- oder GPU-Zustand der Ressource aus.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d12sdklayers.h

Weitere Informationen

ID3D12DebugCommandList1