次の方法で共有


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

種類: ID3D11ShaderResourceView*

デバイスに設定する シェーダー リソース ビュー インターフェイスの配列。

戻り値

なし

解説

重複するリソース ビューがレンダーターゲットなどの出力スロットに既にバインドされている場合、この 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

関連項目

ID3D11DeviceContext