ID3D12GraphicsCommandList::D iscardResource 方法 (d3d12.h)
表示不需要保留資源的內容。 在某些情況下,函式可能會重新初始化資源中繼資料。
語法
void DiscardResource(
ID3D12Resource *pResource,
const D3D12_DISCARD_REGION *pRegion
);
參數
pResource
類型:[in] ID3D12Resource*
要捨棄之資源的 ID3D12Resource 介面指標。
pRegion
Type: [in, optional] const D3D12_DISCARD_REGION*
D3D12_DISCARD_REGION結構的指標,描述捨棄資源作業的詳細資料。
傳回值
無
備註
DiscardResource的語意會根據命令清單類型而變更。
針對 D3D12_COMMAND_LIST_TYPE_DIRECT,適用下列兩個規則:
- 當資源具有D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET旗標時,當捨棄的子資源區域處於D3D12_RESOURCE_STATE_RENDER_TARGET資源屏障狀態時,必須呼叫DiscardResource。
- 當資源具有D3D12_RESOURCE_FLAG _ALLOW_DEPTH_STENCIL旗標時,必須在捨棄的子資源區域位於D3D12_RESOURCE_STATE_DEPTH_WRITE時呼叫DiscardResource。
- 當捨棄的子資源區域處於D3D12_RESOURCE_STATE_UNORDERED_ACCESS資源屏障狀態時,資源必須具有D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS旗標,而且必須呼叫DiscardResource。
需求
目標平台 | Windows |
標頭 | d3d12.h |
程式庫 | D3d12.lib |
Dll | D3d12.dll |