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


структура D3D12_DESCRIPTOR_RANGE (d3d12.h)

Описывает диапазон дескрипторов.

Синтаксис

typedef struct D3D12_DESCRIPTOR_RANGE {
  D3D12_DESCRIPTOR_RANGE_TYPE RangeType;
  UINT                        NumDescriptors;
  UINT                        BaseShaderRegister;
  UINT                        RegisterSpace;
  UINT                        OffsetInDescriptorsFromTableStart;
} D3D12_DESCRIPTOR_RANGE;

Члены

RangeType

D3D12_DESCRIPTOR_RANGE_TYPE типизированное значение, указывающее тип диапазона дескрипторов.

NumDescriptors

Количество дескрипторов в диапазоне. Используйте -1 или UINT_MAX, чтобы указать неограниченный размер. Если заданный диапазон дескриптора является неограниченным, то он должен быть последним диапазоном в определении таблицы, либо следующий диапазон в определении таблицы должен иметь значение OffsetInDescriptorsFromTableStart , которое не D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND.

BaseShaderRegister

Регистр базового шейдера в диапазоне. Например, для представлений ресурсов шейдера (SRV) 3 сопоставляется с ": register(t3);" в HLSL.

RegisterSpace

Пространство регистра. Обычно может иметь значение 0, но позволяет не перекрывать несколько массивов дескрипторов неизвестного размера. Например, для srv, расширяя пример в описании элемента BaseShaderRegister , 5 сопоставляется с ": register(t3,space5);" в HLSL.

OffsetInDescriptorsFromTableStart

Смещение в дескрипторов от начала таблицы дескрипторов, которая была задана в качестве значения корневого аргумента для этого слота параметров. Это значение может быть D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND, указывающее, что этот диапазон должен сразу же следовать за предыдущим диапазоном.

Комментарии

Эта структура является членом структуры D3D12_ROOT_DESCRIPTOR_TABLE .

Требования

Требование Значение
Заголовок d3d12.h

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

CD3DX12_DESCRIPTOR_RANGE

Основные структуры