D3D10_1DDIARG_CREATESHADERRESOURCEVIEW 構造体 (d3d10umddi.h)
D3D10_1DDIARG_CREATESHADERRESOURCEVIEW構造体では、作成するシェーダー リソース ビューについて説明します。
構文
typedef struct D3D10_1DDIARG_CREATESHADERRESOURCEVIEW {
[in] D3D10DDI_HRESOURCE hDrvResource;
[in] DXGI_FORMAT Format;
[in] D3D10DDIRESOURCE_TYPE ResourceDimension;
union {
[in] D3D10DDIARG_BUFFER_SHADERRESOURCEVIEW Buffer;
[in] D3D10DDIARG_TEX1D_SHADERRESOURCEVIEW Tex1D;
[in] D3D10DDIARG_TEX2D_SHADERRESOURCEVIEW Tex2D;
[in] D3D10DDIARG_TEX3D_SHADERRESOURCEVIEW Tex3D;
[in] D3D10_1DDIARG_TEXCUBE_SHADERRESOURCEVIEW TexCube;
};
} D3D10_1DDIARG_CREATESHADERRESOURCEVIEW;
メンバー
[in] hDrvResource
シェーダー リソースへのハンドル。
[in] Format
ビューのピクセル形式を示すDXGI_FORMAT型指定された値。
[in] ResourceDimension
リソースの種類と次元を示す D3D10DDIRESOURCE_TYPE型指定された値。
[in] Buffer
ResourceDimension メンバーの値が D3D10DDIRESOURCE_BUFFER に設定されている場合、バッファーのD3D10DDIARG_BUFFER_SHADERRESOURCEVIEW構造体を保持できるD3D10_1DDIARG_CREATESHADERRESOURCEVIEWに含まれる共用体内のメンバー。
[in] Tex1D
ResourceDimension メンバーの値が D3D10DDIRESOURCE_TEXTURE1D に設定されている場合、1 次元テクスチャのD3D10DDIARG_TEX1D_SHADERRESOURCEVIEW構造体を保持できるD3D10_1DDIARG_CREATESHADERRESOURCEVIEWに含まれる共用体内のメンバー。
[in] Tex2D
ResourceDimension メンバーの値が D3D10DDIRESOURCE_TEXTURE2D に設定されている場合、2 次元テクスチャのD3D10DDIARG_TEX2D_SHADERRESOURCEVIEW構造体を保持できるD3D10_1DDIARG_CREATESHADERRESOURCEVIEWに含まれる共用体内のメンバー。
[in] Tex3D
ResourceDimension メンバーの値が D3D10DDIRESOURCE_TEXTURE3D に設定されている場合、3 次元テクスチャのD3D10DDIARG_TEX3D_SHADERRESOURCEVIEW構造体を保持できるD3D10_1DDIARG_CREATESHADERRESOURCEVIEWに含まれる共用体内のメンバー。
[in] TexCube
ResourceDimension メンバーの値が D3D10DDIRESOURCE_TEXTURECUBE に設定されている場合、キューブ テクスチャのD3D10DDIARG_TEXCUBE_SHADERRESOURCEVIEW構造体を保持できるD3D10_1DDIARG_CREATESHADERRESOURCEVIEWに含まれる共用体内のメンバー。
注釈
CreateShaderResourceView(D3D10_1) には、D3D10_1DDIARG_CREATESHADERRESOURCEVIEWの ResourceDimension メンバーに関する Direct3D 10.0 バージョン (つまり、CreateShaderResourceView) と大きな機能の違いがあります。 Direct3D ランタイムがシェーダー リソースに対してビューを作成しようとすると、CreateShaderResourceView では、ドライバーの CreateResource(D3D10) 関数の呼び出しで作成されたシェーダー リソースのD3D10DDIARG_CREATERESOURCEの ResourceDimension メンバーと一致D3D10DDIARG_CREATESHADERRESOURCEVIEWの ResourceDimension メンバーが必要です。 Direct3D 10.1 ランタイムがシェーダー リソースにビューを作成しようとすると、 CreateShaderResourceView(D3D10_1) によって ResourceDimension メンバーが少し緩和されます。 CreateShaderResourceView(D3D10_1) を使用すると、TexCube リソースに対して Tex2D ビューを作成できます。 さらに、リソース レベルでの TexCube の違いは、Direct3D バージョン 10.1 ではなくなりました。 CreateShaderResourceView(D3D10_1) は、TexCube ビューを作成できるかどうかを表すだけです。 Direct3D バージョン 10.0 では、リソースのコピー、複数のレンダー ターゲットの検証など (つまり、リソースの種類を同一にする必要があるさまざまな操作) には、リソースの種類を考慮する TexCube の違いがすべて含まれていました。 Direct3D バージョン 10.1 では、ランタイムは Tex2D のみを決定できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista Service Pack 1 (SP1) |
サポートされている最小のサーバー | Windows Server 2008 |
Header | d3d10umddi.h (D3d10umddi.h を含む) |
こちらもご覧ください
CalcPrivateShaderResourceViewSize(D3D10_1)
CreateShaderResourceView(D3D10_1)
D3D10DDIARG_BUFFER_SHADERRESOURCEVIEW
D3D10DDIARG_TEX1D_SHADERRESOURCEVIEW
D3D10DDIARG_TEX2D_SHADERRESOURCEVIEW
D3D10DDIARG_TEX3D_SHADERRESOURCEVIEW