ID3D11DeviceContext::VSSetShaderResources メソッド (d3d11.h)
シェーダー リソースの配列を頂点シェーダー ステージにバインドします。
構文
void VSSetShaderResources(
[in] UINT StartSlot,
[in] UINT NumViews,
[in, optional] ID3D11ShaderResourceView * const *ppShaderResourceViews
);
パラメーター
[in] StartSlot
型: UINT
シェーダー リソースの設定を開始するには、デバイスの 0 から始まる配列にインデックスを付けます (範囲は 0 から D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1)。
[in] NumViews
型: UINT
設定するシェーダー リソースの数。 シェーダー リソースで最大 128 スロットを使用できます (範囲は 0 から D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot)。
[in, optional] ppShaderResourceViews
デバイスに設定する シェーダー リソース ビュー インターフェイスの配列。
戻り値
なし
解説
重複するリソース ビューがレンダーターゲットなどの出力スロットに既にバインドされている場合、この API はターゲット シェーダー リソース スロットに NULL を設定します。
シェーダー リソース ビューの作成の詳細については、「 ID3D11Device::CreateShaderResourceView」を参照してください。
メソッドは、渡されたインターフェイスへの参照を保持します。 これは、Direct3D 10 のデバイス状態の動作とは異なります。
リソース スロットのバインドを解除するには、null 値を含む配列を渡す必要があります。 たとえば、最初の 4 つのスロットをクリアするには、次を使用します。
ID3D11ShaderResourceView* nullsrv[] = { nullptr, nullptr, nullptr, nullptr };
context->VSSetShaderResources(0, 4, nullsrv);
必要条件
対象プラットフォーム | Windows |
ヘッダー | d3d11.h |
Library | D3D11.lib |