> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# D3D12SerializeVersionedRootSignature

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

Serializa uma assinatura raiz de qualquer versão que pode ser passada para [ID3D12Device::CreateRootSignature](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createrootsignature_public).

## Sintaxe

```cpp theme={null}
HRESULT D3D12SerializeVersionedRootSignature(
    const D3D12_VERSIONED_ROOT_SIGNATURE_DESC  pRootSignature,
    ID3DBlob  ppBlob,
    ID3DBlob  ppErrorBlob
)
```

### Parâmetros

*pRootSignature \[in]*\
Tipo: const D3D12\_VERSIONED\_ROOT\_SIGNATURE\_DESC \*

Especifica uma [D3D12\_VERSIONED\_ROOT\_SIGNATURE\_DESC](/pt-BR/reference/graphics/d3d12/structs/d3d12_versioned_root_signature_desc_public) que contém uma descrição de qualquer versão de uma assinatura raiz.

*ppBlob \[out]*\
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.

*ppErrorBlob \[out, optional]*\
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.

### Valor retornado

Tipo: HRESULT

Retorna **S\_OK** se tiver êxito; caso contrário, retorna um dos [Códigos de retorno do Direct3D 12](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/d3d12-graphics-reference-returnvalues).

## Comentários

Se um aplicativo gerar proceduralmente uma estrutura de dados [D3D12\_ROOT\_SIGNATURE\_DESC1](/pt-BR/reference/graphics/d3d12/structs/d3d12_root_signature_desc1_public), ele deverá passar um ponteiro para essa **D3D12\_ROOT\_SIGNATURE\_DESC1** em uma chamada para **D3D12SerializeVersionedRootSignature** para criar a forma serializada.
Em seguida, o aplicativo passa a forma serializada para a qual <i>ppBlob</i> aponta para [ID3D12Device::CreateRootSignature](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createrootsignature_public).

Se um sombreador tiver sido criado com uma assinatura raiz, o sombreador compilado já conterá uma assinatura raiz serializada. Nesse caso, passe o blob do sombreador compilado para [ID3D12Device::CreateRootSignature](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createrootsignature_public) para obter o objeto de assinatura raiz de tempo de execução.

<Note>
  Observe que, para desenvolvedores XBOX, o uso de assinaturas raiz criadas em HLSL é altamente recomendado.
</Note>

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](https://learn.microsoft.com/en-us/windows/desktop/api/libloaderapi/nf-libloaderapi-getprocaddress)) em vez de vinculação estática.

Esta função foi lançada com a Atualização de Aniversário do Windows 10 (14393) e substitui [D3D12SerializeRootSignature](/pt-BR/reference/graphics/d3d12/functions/d3d12serializerootsignature_public).

## Requisitos

**Cabeçalho:** d3d12\_xs.h ou d3d12\_x.h\
**Biblioteca:** d3d12\_xs.lib ou d3d12\_x.lib\
**Plataformas com suporte**: consoles XBOX Series e família XBOX One

## Confira também

[Funções principais](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-functions)

[Criando uma assinatura raiz](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/creating-a-root-signature)

[D3DX12SerializeVersionedRootSignature](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/d3dx12serializeversionedrootsignature)

[Versão 1.1 da assinatura raiz](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/root-signature-version-1-1)


## Related topics

- [D3D12_VERSIONED_ROOT_SIGNATURE_DESC](/pt-BR/reference/graphics/d3d12/structs/d3d12_versioned_root_signature_desc_public.md)
- [D3D12SerializeRootSignature](/pt-BR/reference/graphics/d3d12/functions/d3d12serializerootsignature_public.md)
- [D3D12CreateVersionedRootSignatureDeserializer](/pt-BR/reference/graphics/d3d12/functions/d3d12createversionedrootsignaturedeserializer_public.md)
- [ID3D12VersionedRootSignatureDeserializer](/pt-BR/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/id3d12versionedrootsignaturedeserializer_public.md)
- [ID3D12RootSignatureDeserializer](/pt-BR/reference/graphics/d3d12/interfaces/id3d12rootsignaturedeserializer/id3d12rootsignaturedeserializer_public.md)
