> ## 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.

# D3D12_GLOBAL_ROOT_SIGNATURE

> Define um subobjeto de estado de assinatura raiz global que será usado com os sombreadores associados.

Define um subobjeto de estado de assinatura raiz global que será usado com os sombreadores associados.

## Sintaxe

```cpp theme={null}
typedef struct D3D12_GLOBAL_ROOT_SIGNATURE
{
    ID3D12RootSignature  pGlobalRootSignature;
} D3D12_GLOBAL_ROOT_SIGNATURE
```

### Membros

*pGlobalRootSignature*\
Tipo: ID3D12RootSignature \*

A assinatura raiz que funcionará como uma assinatura raiz global. Um objeto de estado mantém uma referência a essa assinatura.

## Comentários

A presença desse subobjeto em um objeto de estado é opcional. A combinação de assinaturas raiz globais e/ou locais associadas a qualquer função de sombreador deve definir todas as associações de recursos declaradas pelo sombreador, sem sobreposição entre as assinaturas raiz globais e locais.

Se qualquer função em um grafo de chamadas estiver associada a uma determinada assinatura raiz global, todas as outras funções no grafo deverão estar associadas à mesma assinatura raiz global ou a nenhuma, e a entrada do sombreador (a raiz do grafo de chamadas) deverá estar associada à assinatura raiz global.

Sombreadores diferentes podem usar assinaturas raiz globais diferentes (ou nenhuma) dentro de um objeto de estado; no entanto, todos os sombreadores referenciados durante uma determinada operação [DispatchRays](/pt-BR/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist4/methods/id3d12graphicscommandlist4_dispatchrays_public) de uma lista de comandos devem ter especificado a mesma assinatura raiz global que foi definida na lista de comandos como a assinatura raiz de computação. Portanto, é válido definir um único objeto de estado grande com várias assinaturas raiz globais associadas a diferentes subconjuntos dos sombreadores. Os aplicativos não são obrigados a dividir o objeto de estado só porque alguns sombreadores usam assinaturas raiz globais diferentes.

## 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


## Related topics

- [D3D12_STATE_SUBOBJECT_TYPE](/pt-BR/reference/graphics/d3d12/enums/d3d12_state_subobject_type_public.md)
- [D3D12CreateRootSignatureDeserializer](/pt-BR/reference/graphics/d3d12/functions/d3d12createrootsignaturedeserializer_public.md)
- [D3D12CreateVersionedRootSignatureDeserializer](/pt-BR/reference/graphics/d3d12/functions/d3d12createversionedrootsignaturedeserializer_public.md)
- [D3D12_ROOT_SIGNATURE_DESC](/pt-BR/reference/graphics/d3d12/structs/d3d12_root_signature_desc_public.md)
- [D3D12_VERSIONED_ROOT_SIGNATURE_DESC](/pt-BR/reference/graphics/d3d12/structs/d3d12_versioned_root_signature_desc_public.md)
