Compartilhar via


Função D3D12SerializeVersionedRootSignature (d3d12.h)

Serializa uma assinatura raiz de qualquer versão que possa ser passada para ID3D12Device::CreateRootSignature.

Sintaxe

HRESULT D3D12SerializeVersionedRootSignature(
  [in]            const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pRootSignature,
  [out]           ID3DBlob                                  **ppBlob,
  [out, optional] ID3DBlob                                  **ppErrorBlob
);

Parâmetros

[in] pRootSignature

Tipo: const D3D12_VERSIONED_ROOT_SIGNATURE_DESC*

Especifica um D3D12_VERSIONED_ROOT_SIGNATURE_DESC que contém uma descrição de qualquer versão de uma assinatura raiz.

[out] ppBlob

Tipo: ID3DBlob**

Um ponteiro para um bloco de memória que recebe um ponteiro para a interface ID3DBlob que você pode usar para acessar a assinatura raiz serializada.

[out, optional] ppErrorBlob

Tipo: ID3DBlob**

Um ponteiro para um bloco de memória que recebe um ponteiro para a interface ID3DBlob que você pode usar para acessar mensagens de erro do serializador ou NULL se não houver erros.

Retornar valor

Tipo: HRESULT

Retorna S_OK se tiver êxito; caso contrário, retornará um dos códigos de retorno do Direct3D 12.

Comentários

Se um aplicativo gerar um D3D12_ROOT_SIGNATURE_DESC1 estrutura de dados de forma processual, ele deverá passar um ponteiro para esse D3D12_ROOT_SIGNATURE_DESC1 em uma chamada para D3D12SerializeVersionedRootSignature para tornar o formulário serializado. Em seguida, o aplicativo passa o formulário serializado para o qual ppBlob aponta para ID3D12Device::CreateRootSignature.

Se um sombreador tiver sido criado com uma assinatura raiz, o sombreador compilado já conterá uma assinatura raiz serializada nele. Nesse caso, passe o blob de sombreador compilado para ID3D12Device::CreateRootSignature para obter o objeto de assinatura raiz do runtime.

Observe que, para desenvolvedores do Xbox, o uso de assinaturas raiz criadas por HLSL é altamente recomendável.

A assinatura de função PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE é fornecida como um typedef, para que você possa usar técnicas de vinculação dinâmica (GetProcAddress) em vez de vincular estaticamente.

Essa função foi lançada com a Atualização de Aniversário do Windows 10 (14393) e substitui D3D12SerializeRootSignature.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d12.h
Biblioteca D3d12.lib
DLL D3d12.dll

Confira também

Core Functions

Como criar uma assinatura raiz

D3DX12SerializeVersionedRootSignature

Assinatura raiz versão 1.1