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


Функция D3D12CreateRootSignatureDeserializer (d3d12.h)

Десериализует корневую сигнатуру, чтобы определить определение макета (D3D12_ROOT_SIGNATURE_DESC).

Синтаксис

HRESULT D3D12CreateRootSignatureDeserializer(
  [in]  LPCVOID pSrcData,
  [in]  SIZE_T  SrcDataSizeInBytes,
  [in]  REFIID  pRootSignatureDeserializerInterface,
  [out] void    **ppRootSignatureDeserializer
);

Параметры

[in] pSrcData

Тип: LPCVOID

Указатель на исходные данные для сериализованной корневой сигнатуры.

[in] SrcDataSizeInBytes

Тип: SIZE_T

Размер (в байтах) блока памяти, на который указывает pSrcData .

[in] pRootSignatureDeserializerInterface

Тип: REFIID

Глобальный уникальный идентификатор (GUID) для интерфейса десериализатора корневой сигнатуры. См. примечания.

[out] ppRootSignatureDeserializer

Тип: void**

Указатель на блок памяти, получающий указатель на десериализатор корневой сигнатуры.

Возвращаемое значение

Тип: HRESULT

В случае успешного выполнения возвращает S_OK . в противном случае возвращает один из кодов возврата Direct3D 12.

Комментарии

Эта функция была заменена D3D12CreateVersionedRootSignatureDeserializer.

Если приложение уже имеет сериализованную корневую сигнатуру или скомпилированный шейдер, который содержит корневую сигнатуру и хочет определить определение макета, оно может вызвать D3D12CreateRootSignatureDeserializer для создания интерфейса ID3D12RootSignatureDeserializer . ID3D12RootSignatureDeserializer::GetRootSignature может возвращать десериализованную структуру данных (D3D12_ROOT_SIGNATURE_DESC). ID3D12RootSignatureDeserializer просто владеет временем существования памяти для десериализованной структуры данных.

ReFIID или GUID интерфейса для десериализатора корневой сигнатуры можно получить с помощью макроса __uuidof(). Например, __uuidof(ID3D12RootSignatureDeserializer) получит GUID интерфейса в десериализатор корневой сигнатуры.

Сигнатура функции PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER предоставляется в виде определения типа, поэтому вместо статического связывания можно использовать методы динамического связывания (GetProcAddress).

Требования

   
Целевая платформа Windows
Header d3d12.h
Библиотека D3D12.lib
DLL D3D12.dll

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

Основные функции

Создание корневой подписи