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 内容