ID3D12Device8::GetCopyableFootprints1 メソッド (d3d12.h)

コピーできるリソース レイアウトを取得します。 アップロード ヒープ内の領域をサブ割り当てするときに、アプリが D3D12_PLACED_SUBRESOURCE_FOOTPRINTD3D12_SUBRESOURCE_FOOTPRINT を入力するのに役立ちます。

構文

void GetCopyableFootprints1(
  const D3D12_RESOURCE_DESC1         *pResourceDesc,
  UINT                               FirstSubresource,
  UINT                               NumSubresources,
  UINT64                             BaseOffset,
  D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts,
  UINT                               *pNumRows,
  UINT64                             *pRowSizeInBytes,
  UINT64                             *pTotalBytes
);

パラメーター

pResourceDesc

型: const D3D12_RESOURCE_DESC1*

D3D12_RESOURCE_DESC1構造体へのポインターとしてのリソースの説明。

FirstSubresource

型: [in] UINT

リソース内の最初のサブリソースのインデックス。 有効な値の範囲は 0 ~ D3D12_REQ_SUBRESOURCESです。

NumSubresources

型: [in] UINT

リソース内のサブリソースの数。 有効な値の範囲は 0 ~ (D3D12_REQ_SUBRESOURCES - FirstSubresource) です。

BaseOffset

種類: UINT64

リソースへのオフセット (バイト単位)。

pLayouts

種類: [out, optional] D3D12_PLACED_SUBRESOURCE_FOOTPRINT*

各サブリソースの説明と配置を入力するD3D12_PLACED_SUBRESOURCE_FOOTPRINT構造体の配列 (長さ NumSubresources) へのポインター。

pNumRows

型: [out, optional] UINT*

各サブリソースの行数を入力する整数変数の配列 ( NumSubresources の長さ) へのポインター。

pRowSizeInBytes

型: [out, optional] UINT64*

整数変数の配列 (長 さ NumSubresources) へのポインター。各エントリは、各サブリソースの行の非パッド サイズ (バイト単位) で埋められます。

たとえば、Texture2D リソースの幅が 32 で、ピクセルあたりのバイト数が 4 の場合、 pRowSizeInBytes は 128 を返します。

pRowSizeInBytes は、pLayouts を調べてから行ピッチを取得すると、D3D12_TEXTURE_DATA_PITCH_ALIGNMENTに合わせて 256 が得られるので、行ピッチと混同しないでください。

pTotalBytes

型: [out, optional] UINT64*

合計サイズをバイト単位で入力する整数変数へのポインター。

戻り値

なし

解説

解説と例については、「 ID3D12Device::GetCopyableFootprints」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 10 ビルド 20348
サポートされている最小のサーバー Windows 10 ビルド 20348
Header d3d12.h
Library d3d12.lib
[DLL] d3d12.dll

こちらもご覧ください