D3D11_SUBRESOURCE_DATA 構造体 (d3d11.h)

サブリソースを初期化するためのデータを指定します。

構文

typedef struct D3D11_SUBRESOURCE_DATA {
  const void *pSysMem;
  UINT       SysMemPitch;
  UINT       SysMemSlicePitch;
} D3D11_SUBRESOURCE_DATA;

メンバー

pSysMem

型: const void*

初期化データへのポインター。

SysMemPitch

型: UINT

テクスチャの 1 行目の先頭から次の行までの距離 (バイト単位)。
システム メモリ ピッチは、他のリソースの種類には意味がないため、2D および 3D テクスチャ データにのみ使用されます。 3D テクスチャの 1 つの 2D スライスの最初のピクセルから 、SysMemSlicePitch メンバー内のそのテクスチャ内の次の 2D スライスの最初のピクセルまでの距離を指定します。

SysMemSlicePitch

型: UINT

1 つの深度レベルの先頭から次の深さレベルまでの距離 (バイト単位)。
システム メモリ スライス ピッチは、他のリソースの種類には意味がないため、3D テクスチャ データにのみ使用されます。

注釈

この構造体は、バッファー (ID3D11Device::CreateBuffer) とテクスチャ (ID3D11Device::CreateTexture1DID3D11Device::CreateTexture2DID3D11Device::CreateTexture3D) を作成するための呼び出しで使用されます。 作成するリソースにシステム メモリ ピッチやシステム メモリ スライス ピッチが必要ない場合は、それらのメンバーを使用してサイズ情報を渡すことができます。これは、リソースの作成に関する問題をデバッグするときに役立つ可能性があります。

サブリソースは、1 つの mipmap レベルのサーフェスです。 リソースを作成するには、前のいずれかのメソッドにサブリソースの配列を渡すことができます。 サブリソースには、1D、2D、または 3D を指定できます。 D3D11_SUBRESOURCE_DATAのメンバーを設定する方法は、サブリソースが 1D、2D、3D のいずれであるかによって異なります。

x、y、d の値は 0 から始まるインデックスであり、 BytesPerPixel は ピクセル形式によって異なります。 mipmapped 3D サーフェスの場合、各レベルの深度スライスの数は前のレベルの 2 分の 1 (最小 1) になり、2 で割ると整数以外の値になります。

メモ アプリケーションは、行内のテクセルの数とテクセルのサイズが等しい SysMemPitch に依存してはなりません。 場合によっては、 SysMemPitch には、行内の追加データをスキップするためのパディングが含まれます。 これは、配置の埋め込み、またはテクスチャが大きなテクスチャのサブセクションである可能性があります。 たとえば、 D3D11_SUBRESOURCE_DATA 構造体は、128 by 128 テクスチャの 32 ~ 32 サブセクションを表します。 SysMemSlicePitch の値には、SysMemPitch に含まれるパディングが反映されます。
 

要件

要件
Header d3d11.h

こちらもご覧ください

リソース構造