D3D10_DDI_RESOURCE_USAGE列挙 (d3d10umddi.h)

D3D10_DDI_RESOURCE_USAGE列挙型には、リソースの使用方法を識別する値が含まれています。

構文

typedef enum D3D10_DDI_RESOURCE_USAGE {
  D3D10_DDI_USAGE_DEFAULT,
  D3D10_DDI_USAGE_IMMUTABLE,
  D3D10_DDI_USAGE_DYNAMIC,
  D3D10_DDI_USAGE_STAGING
} ;

定数

 
D3D10_DDI_USAGE_DEFAULT
リソースは、最上位レベルで使用されます。 アプリケーションを既定のリソースにマップすることはできません。 リソースをグラフィックス パイプラインにバインドし、コピー先とソースとして使用できます。 Microsoft Direct3D ランタイムは ResourceUpdateSubresourceUP 関数のみを呼び出して、コンテンツを CPU で直接更新できます。
D3D10_DDI_USAGE_IMMUTABLE
リソースは不変であり、マップまたはコピーできません。 リソースをパイプラインにバインドし、コピー元にすることができます。 Direct3D ランタイムは 、ResourceUpdateSubresourceUP を 呼び出してコンテンツを更新することはできません。そのため、リソースの内容は作成時に提供されます。
D3D10_DDI_USAGE_DYNAMIC
リソースは動的であり、ローカル以外のビデオ メモリに常駐する必要があります。 リソースをマップすることもできます。 ただし、リソースがマップされている場合、CPU はリソースへの書き込み (読み取りではなく) のみを行うことができます。 したがって、マップされた場合、Direct3D ランタイムは ResourceMap 関数の呼び出しでD3D10_DDI_MAP_WRITE_DISCARDまたはD3D10_DDI_MAP_WRITE_NOOVERWRITEアクセス レベルを使用する必要があります。 このリソースはマップできるため、ランタイムは ResourceUpdateSubresourceUP を呼び出すことができません。
D3D10_DDI_USAGE_STAGING
リソースはステージング リソースであり、ユーザー モード ディスプレイ ドライバーはシステム メモリとして割り当てる必要があります。 ドライバーは、このようなメモリ領域への DMA アクセスを有効にするために、適切な配置とピッチを確保するためにシステム メモリを割り当てます。 ステージングはアプリケーションによってマップできますが、3-D グラフィックス パイプラインにバインドすることはできません。 ただし、ステージング リソースは、他のマップできないリソース間でコピーするために頻繁に使用されます。 このリソースはマップできるため、ランタイムは ResourceUpdateSubresourceUP を呼び出すことができません。

要件

要件
サポートされている最小のクライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
Header d3d10umddi.h (D3d10umddi.h を含む)

こちらもご覧ください

D3D10DDIARG_CREATERESOURCE

ResourceMap

ResourceUpdateSubresourceUP