ID3D11DeviceContext::OMSetRenderTargets

1 つ以上のレンダー ターゲットをアトミックにバインドし、出力結合ステージに深度ステンシル バッファーをバインドします。

void 
OMSetRenderTargets(
  UINT NumViews,
  ID3D11RenderTargetView *const *ppRenderTargetViews,
  ID3D11DepthStencilView *pDepthStencilView
);

パラメータ

  • NumViews
    バインドするレンダー ターゲットの数です (範囲は 0 ~ D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT)。
  • ppRenderTargetViews
    デバイスにバインドするレンダー ターゲットの配列へのポインターです (「ID3D11RenderTargetView」を参照してください)。このパラメーターが NULL の場合、レンダー ターゲットはバインドされません。「解説」を参照してください。
  • pDepthStencilView
    デバイスにバインドする深度ステンシル ビューへのポインターです (「ID3D11DepthStencilView」を参照してください)。このパラメーターが NULL の場合、深度ステンシル ステートはバインドされません。

戻り値

返されるものはありません。

解説 

特定の時点において 1 つのデバイスでアクティブにできるアクティブ レンダー ターゲットの最大数は、D3D11.h の中の D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT という #define で設定されます。1 つのサブリソースを複数のレンダー ターゲット スロットに設定することはできません。この呼び出しで定義されていなレンダー ターゲットは、NULL に設定されます。

いずれかのサブリソースが、現在別のステージの読み取りまたは書き込み用にバインドされている場合 (パイプラインの別の部分など)、1 回のレンダリング処理で同一サブリソースに対する読み取りと書き込みが同時に発生しないように、これらのバインド ポイントは NULL に設定されます。

このメソッドは、渡されたインターフェイスの参照を保持します。これは、Direct3D 10 でのデバイス ステートの動作とは異なります。

レンダー ターゲット ビューを配列リソース タイプから作成した場合、それらすべてのレンダー ターゲット ビューの配列サイズは同じである必要があります。この制限は、深度ステンシル ビューにも適用されます。深度ステンシル ビューの配列サイズは、バインドするレンダー ターゲット ビューの配列サイズと同じである必要があります。

要件

ヘッダー: D3D11.h 宣言

ライブラリ: D3D11.lib 内容

関連項目

ID3D11DeviceContext