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


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

Определяет подобъект состояния локальной корневой сигнатуры, который будет использоваться со связанными шейдерами.

Синтаксис

typedef struct D3D12_LOCAL_ROOT_SIGNATURE {
  ID3D12RootSignature *pLocalRootSignature;
} D3D12_LOCAL_ROOT_SIGNATURE;

Члены

pLocalRootSignature

Корневая сигнатура, которая будет функционировать как локальная корневая сигнатура. Объект состояния содержит ссылку на эту сигнатуру.

Комментарии

Наличие этого подобъекта в объекте состояния является необязательным. Сочетание глобальных и (или) локальных корневых сигнатур, связанных с любой заданной функцией шейдера, должно определять все привязки ресурсов, объявленные шейдером (без перекрытия между глобальными и локальными корневыми сигнатурами).

Если какая-либо определенная функция в графе вызовов (не считая вызовов между таблицами шейдеров) связана с определенной локальной корневой сигнатурой, все другие функции в графе должны быть связаны либо с той же локальной корневой сигнатурой, либо ни с одной, а запись шейдера (корень графа вызовов) должна быть связана с локальной корневой сигнатурой. Это связано с тем, что набор кода, доступный из заданной записи шейдера, вызывается из идентификатора шейдера в записи шейдера, где применяется один набор локальных корневых аргументов. Конечно, разные шейдеры могут использовать разные локальные корневые сигнатуры (или нет), так как идентификаторы шейдеров будут находиться в разных записях шейдеров.

Требования

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