перечисление D3D12DDI_ROOT_SIGNATURE_FLAGS (d3d12umddi.h)

Задает параметры для макета корневой подписи.

Синтаксис

typedef enum D3D12DDI_ROOT_SIGNATURE_FLAGS {
  D3D12DDI_ROOT_SIGNATURE_FLAG_NONE = 0x0,
  D3D12DDI_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT = 0x1,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_VERTEX_SHADER_ROOT_ACCESS = 0x2,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_HULL_SHADER_ROOT_ACCESS = 0x4,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_DOMAIN_SHADER_ROOT_ACCESS = 0x8,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_GEOMETRY_SHADER_ROOT_ACCESS = 0x10,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS = 0x20,
  D3D12DDI_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT = 0x40,
  D3D12DDI_ROOT_SIGNATURE_FLAG_LOCAL_ROOT_SIGNATURE = 0x80,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_AMPLIFICATION_SHADER_ROOT_ACCESS = 0x100,
  D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_MESH_SHADER_ROOT_ACCESS = 0x200,
  D3D12DDI_ROOT_SIGNATURE_FLAG_CBV_SRV_UAV_HEAP_DIRECTLY_INDEXED = 0x400,
  D3D12DDI_ROOT_SIGNATURE_FLAG_SAMPLER_HEAP_DIRECTLY_INDEXED = 0x800
} ;

Константы

 
D3D12DDI_ROOT_SIGNATURE_FLAG_NONE
Значение: 0x0
Указывает поведение по умолчанию.
D3D12DDI_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT
Значение: 0x1
Приложение согласилось использовать входной ассемблер (требуется входной макет, определяющий набор привязок буфера вершин). Пропуск этого флага может привести к экономии одного корневого пространства аргументов на некотором оборудовании. Опустите этот флаг, если сборщик входных данных не требуется, хотя оптимизация незначительна.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_VERTEX_SHADER_ROOT_ACCESS
Значение: 0x2
Запрещает шейдеру вершин доступ к корневой сигнатуре.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_HULL_SHADER_ROOT_ACCESS
Значение: 0x4
Запрещает шейдеру корпуса доступ к корневой сигнатуре.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_DOMAIN_SHADER_ROOT_ACCESS
Значение: 0x8
Запрещает шейдеру домена доступ к корневой сигнатуре.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_GEOMETRY_SHADER_ROOT_ACCESS
Значение: 0x10
Запрещает шейдеру геометрии доступ к корневой сигнатуре.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS
Значение: 0x20
Запрещает шейдеру пикселей доступ к корневой сигнатуре.
D3D12DDI_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT
Значение: 0x40
Корневая сигнатура позволяет выводить поток.
D3D12DDI_ROOT_SIGNATURE_FLAG_LOCAL_ROOT_SIGNATURE
Значение: 0x80
Поддерживается локальная корневая подпись.
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_AMPLIFICATION_SHADER_ROOT_ACCESS
Значение: 0x100
Запрещает шейдеру усиления доступ к корневой сигнатуре. Доступно начиная с Windows 10 версии 2004. Дополнительные сведения о шейдерах усиления см. в спецификации шейдера сетки .
D3D12DDI_ROOT_SIGNATURE_FLAG_DENY_MESH_SHADER_ROOT_ACCESS
Значение: 0x200
Запрещает шейдеру сетки доступ к корневой сигнатуре. Доступно начиная с Windows 10 версии 2004. Дополнительные сведения о шейдерах сетки см. в спецификации шейдера сетки.
D3D12DDI_ROOT_SIGNATURE_FLAG_CBV_SRV_UAV_HEAP_DIRECTLY_INDEXED
Значение: 0x400
Шейдерам разрешено индексировать кучу дескриптора CBV,SRV/UAV напрямую.
D3D12DDI_ROOT_SIGNATURE_FLAG_SAMPLER_HEAP_DIRECTLY_INDEXED
Значение: 0x800
Шейдеры могут индексировать кучу дескриптора выборки напрямую.

Комментарии

Дополнительные сведения см. в функциональной спецификации DirectX Raytracing (DXR).

Требования

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