Поделиться через


Метод ID3D11DeviceContext::VSSetShaderResources (d3d11.h)

Привяжите массив ресурсов шейдера к этапу вершинного шейдера.

Синтаксис

void VSSetShaderResources(
  [in]           UINT                     StartSlot,
  [in]           UINT                     NumViews,
  [in, optional] ID3D11ShaderResourceView * const *ppShaderResourceViews
);

Параметры

[in] StartSlot

Тип: UINT

Выполните индекс в отсчитываемый от нуля массив устройства, чтобы приступить к настройке ресурсов шейдера (в диапазоне от 0 до D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT –1).

[in] NumViews

Тип: UINT

Количество задается ресурсов шейдера. Для ресурсов шейдера доступно не более 128 слотов (от 0 до D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT — StartSlot).

[in, optional] ppShaderResourceViews

Тип: ID3D11ShaderResourceView*

Массив интерфейсов представления ресурсов шейдера для установки на устройство.

Возвращаемое значение

None

Remarks

Если перекрывающееся представление ресурсов уже привязано к выходному слоту, например к объекту rendertarget, этот API заполнит слот ресурсов целевого шейдера значением NULL.

Сведения о создании представлений шейдер-ресурсов см. в разделе ID3D11Device::CreateShaderResourceView.

Метод будет содержать ссылку на переданные интерфейсы. Это отличается от поведения состояния устройства в Direct3D 10.

Чтобы отменить привязку слотов ресурсов, необходимо передать массив, содержащий значения NULL. Например, чтобы очистить первые 4 слота, используйте:

ID3D11ShaderResourceView* nullsrv[] = { nullptr, nullptr, nullptr, nullptr };
context->VSSetShaderResources(0, 4, nullsrv);

Требования

   
Целевая платформа Windows
Header d3d11.h
Библиотека D3D11.lib

См. также раздел

ID3D11DeviceContext