D3D12DecomposeSubresource 函式

輸出對應至指定子資源索引的 mip 配量、陣列配量和平面配量。

語法

void inline D3D12DecomposeSubresource(
        UINT Subresource,
        UINT MipLevels,
        UINT ArraySize,
  _Out_ T    &MipSlice,
  _Out_ U    &ArraySlice,
  _Out_ V    &PlaneSlice
);

參數

子資源

類型: UINT

子資源的索引。

MipLevels

類型: UINT

子資源中的 mipmap 層級數目上限。

ArraySize

類型: UINT

陣列中的項目數。

MipSlice [out, ref]

類型: T

輸出對應至指定子資源索引的 mip 配量。

ArraySlice [out, ref]

類型: U

輸出對應至指定子資源索引的陣列配量。

PlaneSlice [out, ref]

類型: V

輸出對應至指定子資源索引的平面配量。

傳回值

這個方法不會傳回值。

備註

此函式會決定哪個 mip 配量、陣列配量和平面配量對應至指定的子資源索引。 這是實用的公用程式,但 C++ 是特定的。

此函式宣告如下,並具有 TUV類型的 C++ 樣板化參數:

template <typename T, typename U, typename V>
inline void D3D12DecomposeSubresource( UINT Subresource, UINT MipLevels, UINT ArraySize, _Out_ T& MipSlice, _Out_ U& ArraySlice, _Out_ V& PlaneSlice )
{
    MipSlice = static_cast<T>(Subresource % MipLevels);
    ArraySlice = static_cast<U>((Subresource / MipLevels) % ArraySize);
    PlaneSlice = static_cast<V>(Subresource / (MipLevels * ArraySize));
}

規格需求

需求
標頭
D3dx12.h
程式庫
D3D12.lib
DLL
D3D12.dll

另請參閱

適用于 D3D12 的協助程式函式

子資源