Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt an, dass der Inhalt einer Ressource nicht beibehalten werden muss. Die Funktion kann ressourcenbezogene Metadaten in einigen Fällen erneut initialisieren.
Syntax
void DiscardResource(
ID3D12Resource *pResource,
const D3D12_DISCARD_REGION *pRegion
);
Parameter
pResource
Typ: [in] ID3D12Resource*
Ein Zeiger auf die ID3D12Resource-Schnittstelle für die zu verwerfende Ressource.
pRegion
Typ: [in, optional] const D3D12_DISCARD_REGION*
Ein Zeiger auf eine D3D12_DISCARD_REGION Struktur, die Details für den Vorgang discard-resource beschreibt.
Rückgabewert
Keine
Bemerkungen
Die Semantik von DiscardResource ändert sich basierend auf dem Befehlslistentyp.
Für D3D12_COMMAND_LIST_TYPE_DIRECT gelten die folgenden beiden Regeln:
- Wenn eine Ressource über das Flag D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET verfügt, muss DiscardResource aufgerufen werden, wenn sich die verworfenen Unterressourcenbereiche im Zustand D3D12_RESOURCE_STATE_RENDER_TARGET Ressourcenbarriere befinden.
- Wenn eine Ressource über das flag D3D12_RESOURCE_FLAG _ALLOW_DEPTH_STENCIL verfügt, muss DiscardResource aufgerufen werden, wenn sich die verworfenen Unterressourcenbereiche im D3D12_RESOURCE_STATE_DEPTH_WRITE befinden.
- Die Ressource muss über das Flag D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS verfügen, und DiscardResource muss aufgerufen werden, wenn sich die verworfenen Unterressourcenbereiche im Zustand D3D12_RESOURCE_STATE_UNORDERED_ACCESS Ressourcenbarriere befinden.
Anforderungen
| Zielplattform | Windows |
| Kopfzeile | d3d12.h |
| Bibliothek | D3d12.lib |
| DLL | D3d12.dll |
Weitere Informationen
Verwenden von Ressourcenbarrieren zum Synchronisieren von Ressourcenzuständen in Direct3D 12