ID3D11DeviceContext::ResolveSubresource
マルチサンプリングされたリソースをマルチサンプリングされていないリソースにコピーします。
void
ResolveSubresource(
ID3D11Resource *pDstResource,
UINT DstSubresource,
ID3D11Resource *pSrcResource,
UINT SrcSubresource,
DXGI_FORMAT Format
);
パラメータ
- pDstResource
コピー先のリソースです。D3D11_USAGE_DEFAULT フラグを使用して作成し、シングルサンプリングされている必要があります。「ID3D11Resource」を参照してください。 - DstSubresource
コピー先のサブリソースを特定するための、ゼロから始まるインデックスです。インデックスを計算するには、D3D11CalcSubresource を使用します。 - pSrcResource
コピー元のリソースです。マルチサンプリングされている必要があります。 - SrcSubresource
コピー元リソース内のコピー元サブリソースです。 - Format
マルチサンプリングされたリソースをシングルサンプリングされたリソースに解決する方法を指定する DXGI_FORMAT です。「解説」を参照してください。
戻り値
返されるものはありません。
解説
この API は、あるレンダリング パスで生成されたレンダー ターゲットを別のレンダリング パスの入力として再使用する場合に最適です。
コピー元リソースとコピー先リソースは、リソース タイプと次元が同じである必要があります。さらに、コピー元とコピー先のフォーマットには互換性が必要です。これには次の 3 つのシナリオがあります。
シナリオ | 要件 |
---|---|
コピー元およびコピー先が事前に構造化され、データ型が決定されている | コピー元およびコピー先の双方のフォーマットが同じであり、そのフォーマットを Format パラメーターで指定する必要があります。 |
双方のリソースで事前構造化は行われているが、データ型は一方でしか決定されていない | データ型が決定されているリソースのフォーマットは、データ型がないリソースとの互換性が必要です (たとえば、データ型が決定されたリソースが DXGI_FORMAT_R32_FLOAT で、データ型のないリソースが DXGI_FORMAT_R32_TYPELESS)。データ型が決定されているリソースのフォーマットを Format パラメーターで指定する必要があります。 |
コピー元およびコピー先が事前に構造化されているが、データ型がない | コピー元とコピー先の双方が同一のデータ型のないフォーマットであり (たとえば両方が DXGI_FORMAT_R32_TYPELESS であることが必要)、コピー元とコピー先の両方で互換性のあるフォーマットを Format パラメーターで指定する必要があります (たとえば双方が DXGI_FORMAT_R32_TYPELESS である場合、Format パラメーターで DXGI_FORMAT_R32_FLOAT を指定できます)。
たとえば、フォーマットが DXGI_FORMAT_R16G16B16A16_TYPELESS であるとします。
|
要件
ヘッダー: D3D11.h 宣言
ライブラリ: D3D11.lib 内容