次の方法で共有


ID3D11DeviceContext::ResolveSubresource メソッド (d3d11.h)

マルチサンプリングされたリソースを非マルチサンプリング リソースにコピーします。

構文

void ResolveSubresource(
  [in] ID3D11Resource *pDstResource,
  [in] UINT           DstSubresource,
  [in] ID3D11Resource *pSrcResource,
  [in] UINT           SrcSubresource,
  [in] DXGI_FORMAT    Format
);

パラメーター

[in] pDstResource

種類: ID3D11Resource*

宛先リソース。 D3D11_USAGE_DEFAULT フラグを使用して作成し、単一サンプリングする必要があります。 「ID3D11Resource」を参照してください

[in] DstSubresource

型: UINT

宛先サブリソースを識別する 0 から始まるインデックス。 D3D11CalcSubresource を使用してインデックスを計算します。

[in] pSrcResource

種類: ID3D11Resource*

ソース リソース。 マルチサンプリングする必要があります。

[in] SrcSubresource

型: UINT

ソース リソースのソース サブリソース。

[in] Format

種類: DXGI_FORMAT

マルチサンプリング リソースを単一サンプリング リソースに解決する方法を示すDXGI_FORMAT。 「解説」を参照してください。

戻り値

なし

解説

この API は、1 つのレンダー パスの結果のレンダーターゲットを 2 番目のレンダー パスへの入力として再利用する場合に最も便利です。

ソース リソースと移行先リソースは、同じリソースの種類であり、同じディメンションを持つ必要があります。 さらに、互換性のある形式が必要です。 これには 3 つのシナリオがあります。

シナリオ 必要条件
ソースと変換先は事前構造化され、型指定されます 変換元とコピー先の両方に同じ形式が必要であり、その形式は Format パラメーターで指定する必要があります。
一方のリソースは事前構造化および型指定され、もう 1 つは事前構造化および型なしです 型指定されたリソースには、型指定なしのリソースと互換性のある形式が必要です (つまり、型指定されたリソースが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形式を指定すると、次のようになります。

  • ソース (または dest) 形式をDXGI_FORMAT_R16G16B16A16_UNORM
  • dest (またはソース) 形式をDXGI_FORMAT_R16G16B16A16_FLOAT

必要条件

   
対象プラットフォーム Windows
ヘッダー d3d11.h
Library D3D11.lib

関連項目

ID3D11DeviceContext