структура D3D12DDI_GENERIC_PROGRAM_DESC_0108 (d3d12umddi.h)

Структура D3D12DDI_GENERIC_PROGRAM_DESC_0108 описывает подобъект состояния универсальной программы, содержащий экспорт шейдера и связанные подобъекты конфигурации в объекте состояния. Эта структура определяет подобъект состояния типа D3D12DDI_STATE_SUBOBJECT_TYPE_GENERIC_PROGRAM.

Синтаксис

typedef struct D3D12DDI_GENERIC_PROGRAM_DESC_0108 {
  LPCWSTR                             ProgramName;
  UINT                                NumExports;
  LPCWSTR                             *pExports;
  UINT                                NumSubobjects;
  const D3D12DDI_STATE_SUBOBJECT_0054 const * * pSubobjects;
} D3D12DDI_GENERIC_PROGRAM_DESC_0108;

Members

ProgramName

Строка с широким символом, указывающая имя универсальной программы. Это имя уникально в заданном объекте состояния и используется для идентификации программы.

NumExports

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

pExports

Указатель на массив символьных строковых указателей (LPCWSTR*), где каждая строка указывает имя экспортируемой функции шейдера из этой программы. Каждый экспорт представляет собой функцию шейдера или точку входа, на которую можно ссылаться другими частями объекта состояния. Может иметь значение NULL, если ЧислоExports равно 0.

NumSubobjects

Количество вложенных объектов, связанных с этой универсальной программой. Это значение определяет количество элементов в массиве pSubobjects . Может иметь значение 0, если программа не имеет связанных подобъектов.

pSubobjects

Указатель на массив указателей на D3D12DDI_STATE_SUBOBJECT_0054 структуры. Эти вложенные объекты предоставляют дополнительную конфигурацию для универсальной программы, например корневых подписей, локальных корневых сигнатур или другого состояния, которое применяется к экспорту программы. Может иметь значение NULL, если ЧислоSubobjects равно 0.

Замечания

Универсальная программа — это коллекция кода шейдера со своими экспортами и связанными подобъектами конфигурации в объекте состояния. Среда выполнения проверяет универсальную программу перед передачей этой структуры драйверу.

Дополнительные сведения см. в разделе "Универсальные программы".

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 11 версии 24H2 (WDDM 3.2)
Header d3d12umddi.h

См. также

D3D12DDI_EXPORT_DESC_0054

D3D12DDI_STATE_SUBOBJECT_0054

D3D12DDI_STATE_SUBOBJECT_TYPE

PFND3D12DDI_ADD_TO_STATE_OBJECT_0072

PFND3D12DDI_CREATE_STATE_OBJECT_0054