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


Перечисление D3D10_BIND_FLAG (d3d10.h)

Определяет, как привязать ресурс к конвейеру.

Синтаксис

typedef enum D3D10_BIND_FLAG {
  D3D10_BIND_VERTEX_BUFFER = 0x1L,
  D3D10_BIND_INDEX_BUFFER = 0x2L,
  D3D10_BIND_CONSTANT_BUFFER = 0x4L,
  D3D10_BIND_SHADER_RESOURCE = 0x8L,
  D3D10_BIND_STREAM_OUTPUT = 0x10L,
  D3D10_BIND_RENDER_TARGET = 0x20L,
  D3D10_BIND_DEPTH_STENCIL = 0x40L
} ;

Константы

 
D3D10_BIND_VERTEX_BUFFER
Значение: 0x1L
Привяжите буфер в качестве буфера вершин к этапу входного ассемблер.
D3D10_BIND_INDEX_BUFFER
Значение: 0x2L
Привяжите буфер в качестве буфера индекса к этапу входного ассемблер.
D3D10_BIND_CONSTANT_BUFFER
Значение: 0x4L
Привязка буфера в качестве буфера констант к этапу шейдера; этот флаг НЕ может быть объединен с любым другим флагом привязки.
D3D10_BIND_SHADER_RESOURCE
Значение: 0x8L
Привязка буфера или текстуры к этапу шейдера; Этот флаг нельзя использовать с флагом D3D10_MAP_WRITE_NO_OVERWRITE .
D3D10_BIND_STREAM_OUTPUT
Значение: 0x10L
Привяжите выходной буфер для этапа потокового вывода.
D3D10_BIND_RENDER_TARGET
Значение: 0x20L
Привяжите текстуру в качестве целевого объекта отрисовки для этапа слияния выходных данных.
D3D10_BIND_DEPTH_STENCIL
Значение: 0x40L
Привяжите текстуру в качестве целевого набора элементов глубины для этапа слияния и вывода.

Комментарии

Как правило, флаги привязки можно объединять с помощью логического ИЛИ (за исключением флага буфера констант); Однако следует использовать один флаг, чтобы позволить устройству оптимизировать использование ресурсов.

Это перечисление используется:

Буфер ресурсов шейдера НЕ является буфером констант; вместо этого это ресурс текстуры или буфера, привязанный к шейдеру, который содержит данные текстуры или буфера (он не ограничивается типом одного элемента в буфере). Буфер ресурса шейдера создается с флагом D3D10_BIND_SHADER_RESOURCE и привязан к конвейеру с помощью одного из следующих API: ID3D10Device::GSSetShaderResources, ID3D10Device::P SSetShaderResources или ID3D10Device::VSSetShaderResources. Кроме того, буфер ресурсов шейдера не может использовать флаг D3D10_MAP_WRITE_NO_OVERWRITE .

Требования

   
Верхняя часть d3d10.h

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

Перечисления ресурсов