次の方法で共有


D3D12DecomposeSubresource 関数

指定したサブリソース インデックスに対応する mip スライス、配列スライス、およびプレーン スライスを出力します。

構文

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

パラメーター

サブリソース

型: UINT

サブリソースのインデックス。

MipLevels

型: UINT

サブリソース内のミップマップ レベルの最大数。

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 のヘルパー関数

サブリソース