Metodo ID3D12GraphicsCommandList::D iscardResource (d3d12.h)
Indica che il contenuto di una risorsa non deve essere mantenuto. La funzione può inizializzare nuovamente i metadati delle risorse in alcuni casi.
Sintassi
void DiscardResource(
ID3D12Resource *pResource,
const D3D12_DISCARD_REGION *pRegion
);
Parametri
pResource
Tipo: [in] ID3D12Resource*
Puntatore all'interfaccia ID3D12Resource per la risorsa da rimuovere.
pRegion
Tipo: [in, facoltativo] const D3D12_DISCARD_REGION*
Puntatore a una struttura D3D12_DISCARD_REGION che descrive i dettagli per l'operazione discard-resource.
Valore restituito
nessuno
Osservazioni
La semantica di DiscardResource cambia in base al tipo di elenco dei comandi.
Per D3D12_COMMAND_LIST_TYPE_DIRECT si applicano le due regole seguenti:
- Quando una risorsa ha il flag D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET , è necessario chiamare DiscardResource quando le aree di sottorisorsa rimosse si trovano nello stato D3D12_RESOURCE_STATE_RENDER_TARGET barriera delle risorse.
- Quando una risorsa ha il flag D3D12_RESOURCE_FLAG _ALLOW_DEPTH_STENCIL , è necessario chiamare DiscardResource quando le aree di sottorisorsa rimosse si trovano nella D3D12_RESOURCE_STATE_DEPTH_WRITE.
- La risorsa deve avere il flag di D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS e è necessario chiamare DiscardResource quando le aree di sottorisorsa rimosse si trovano nello stato D3D12_RESOURCE_STATE_UNORDERED_ACCESS barriera delle risorse.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d12.h |
Libreria | D3d12.lib |
DLL | D3d12.dll |
Vedi anche
Uso delle barriere di risorse per sincronizzare gli stati delle risorse in Direct3D 12