ID3D12Device::GetResourceTiling 方法 (d3d12.h)
取得磚化資源如何分解成磚的資訊。
語法
void GetResourceTiling(
[in] ID3D12Resource *pTiledResource,
[out, optional] UINT *pNumTilesForEntireResource,
[out, optional] D3D12_PACKED_MIP_INFO *pPackedMipDesc,
[out, optional] D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips,
[in, out, optional] UINT *pNumSubresourceTilings,
[in] UINT FirstSubresourceTilingToGet,
[out] D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips
);
參數
[in] pTiledResource
類型:ID3D12Resource*
指定磚化 ID3D12Resource 以取得相關信息。
[out, optional] pNumTilesForEntireResource
類型:UINT*
變數的指標,可接收儲存整個磚資源所需的磚數目。
[out, optional] pPackedMipDesc
D3D12_PACKED_MIP_INFO 結構的指標,GetResourceTiling 會填滿磚資源 Mipmap 包裝方式的相關信息。
[out, optional] pStandardTileShapeForNonPackedMips
類型:D3D12_TILE_SHAPE*
指定 GetResourceTiling 填滿磚圖形相關信息的 D3D12_TILE_SHAPE 結構。 這是與磚維度無關的圖元大小,不包括已封裝的Mipmap的相關信息。 如果已封裝整個並排顯示的資源,則此參數毫無意義,因為磚化資源沒有已封裝Mipmap的已定義版面配置。 在此情況下,GetResourceTiling 會將D3D12_TILE_SHAPE的成員設定為零。
[in, out, optional] pNumSubresourceTilings
類型:UINT*
變數的指標,其中包含子資源中的磚數目。 在輸入時,這是要查詢並排的子資源數目;在輸出上,這是實際擷取在 pSubresourceTilingsForNonPackedMips 的數位(夾住到可用的內容)。
[in] FirstSubresourceTilingToGet
類型:UINT
要取得的第一個子資源圖格數目。 如果 pNumSubresourceTilings 指向的數位為 0,getResourceTiling 會忽略此參數。
[out] pSubresourceTilingsForNonPackedMips
指定 GetResourceTiling 填入子資源磚相關信息的 D3D12_SUBRESOURCE_TILING 結構。 如果子資源圖格是封裝 mipmap 的一部分,GetResourceTiling 會將D3D12_SUBRESOURCE_TILING的成員設定為零,但 StartTileIndexInOverallResource 成員除外,GetResourceTiling 設定為 D3D12_PACKED_TILE (0xffffffff)。 D3D12_PACKED_TILE常數表示整個 D3D12_SUBRESOURCE_TILING 結構對於這種情況而言毫無意義,而且 pPackedMipDesc 參數所套用的資訊。
傳回值
沒有
言論
若要估計計算堆積大小和 呼叫 createPlacedResource時所需的紋理總資源大小,請使用 GetResourceAllocationInfo,而不是 GetResourceTiling。 GetResourceTiling 無法用於此專案。
如需磚化資源的詳細資訊,請參閱 磁碟區磚資源。
要求
要求 | 價值 |
---|---|
目標平臺 | 窗戶 |
標頭 | d3d12.h |
連結庫 | D3d12.lib |
DLL | D3d12.dll |