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

# Criação e uso do Direct3D no XBOX One

> Criação e uso do Direct3D no XBOX One

Há algumas diferenças entre o Direct3D no XBOX One e no Windows com relação à seleção de runtime, aos recursos de troca, aos formatos de vídeo planares, à obtenção do estado de tela inteira, à linguagem de sombreador de alto nível (HLSL) e ao Windows Imaging Component (WIC).

* [Seleção de runtime](#ID4EWB)
* [Recursos de troca](#ID4EGC)
* [Formatos de vídeo planares](#ID4E5C)
* [Obtenção do estado de tela inteira](#ID4ERD)
* [Linguagem de sombreador de alto nível (HLSL)](#ID4EYE)
* [Windows Imaging Component (WIC)](#ID4EBG)

<a id="ID4EWB" />

## Seleção de runtime

Para aplicativos de título do XBOX One, o adaptador Windows Advanced Rasterization Platform (WARP) não está disponível. ID3D12Debug::EnableDebugLayer pode ser usado para habilitar a validação de depuração no runtime, embora não por meio da disposição em camadas tradicional empregada no Windows. ID3D12Debug::SetProcessDebugFlags também pode ser usado para selecionar um runtime instrumentado que oferece suporte à criação de perfil do PIX e é executado com desempenho mais próximo ao da versão de varejo.

<a id="ID4EGC" />

## Recursos de troca

O XBOX One não oferece suporte a cadeias de troca, permitindo, em vez disso, a apresentação direta de objetos de recurso exibíveis. Cabe ao título criar e gerenciar seu próprio pool de recursos de troca. Para obter mais informações sobre as alterações na apresentação, consulte [Apresentação e agendamento de quadros no XBOX One](/pt-BR/build/core-features/graphics/directx/frame-scheduling-and-presentation).

Atualmente, os formatos compatíveis com recursos de troca estão listados a seguir. A diferença entre alguns formatos é simplesmente a ordem das cores.

* DXGI\_FORMAT\_B8G8R8A8\_UNORM
* DXGI\_FORMAT\_R8G8B8A8\_UNORM
* DXGI\_FORMAT\_B8G8R8A8\_UNORM\_SRGB
* DXGI\_FORMAT\_R8G8B8A8\_UNORM\_SRGB
* DXGI\_FORMAT\_R10G10B10A2\_UNORM

<a id="ID4E5C" />

## Formatos de vídeo planares

Os formatos de vídeo atualmente compatíveis com o XBOX One são NV12, P010, P016, 420\_opaque e NV11.

Para obter mais informações, consulte [Enumeração DXGI\_FORMAT](https://learn.microsoft.com/windows/desktop/api/dxgiformat/ne-dxgiformat-dxgi_format).

<a id="ID4ERD" />

## Obtenção do estado de tela inteira

**GetFullScreenState** não pode ser chamado no XBOX One. Isso ocorre porque as cadeias de troca não podem ser criadas, e o método é destinado apenas a aplicativos DirectX da área de trabalho. Em vez disso, se você precisar saber quando seus primeiros gráficos são mostrados ao usuário, chame ID3D12Device::GetFrameStatisticsX com o tipo D3D12XBOX\_FRAME\_STATISTICS\_TYPE\_DISPLAY.

Você deve presumir que a janela do jogo permanece no mesmo estado enquanto ela estiver no estado de execução do gerenciamento do tempo de vida do processo (PLM).

Para obter mais informações, consulte:

* [Ciclo de vida do jogo XBOX](/pt-BR/build/console-features/console-workflows/xbox-game-life-cycle)

<a id="ID4EYE" />

## Linguagem de sombreador de alto nível (HLSL)

A linguagem de sombreador de alto nível (HLSL) no XBOX One é uma implementação completa da [Microsoft HLSL](https://msdn.microsoft.com/library/windows/desktop/bb509561\(v=vs.85\).aspx).

A HLSL e o [pipeline gráfico](https://msdn.microsoft.com/library/windows/desktop/ff476882\(v=vs.85\).aspx) estão documentados no Microsoft Docs. No entanto, há vários pequenos erros de documentação:

* **GetRenderTargetSamplePosition** é listado como retornando um UINT, mas esse método na verdade retorna um **float2**.
* O tipo de retorno UINT não se aplica na linguagem de sombreador. O valor correto é **uint** em letras minúsculas ou escrito por extenso como **unsigned int**.

<a id="ID4EBG" />

## Windows Imaging Component (WIC)

O Windows Imaging Component (WIC) é uma plataforma extensível que fornece uma API de baixo nível para imagens digitais.

O XBOX One oferece suporte ao WIC2. Para obter detalhes sobre os novos recursos do WIC2, consulte [Novidades do WIC](https://learn.microsoft.com/windows/win32/wic/what-s-new-in-wic-for-windows-8-1). Para obter detalhes sobre o formato WIC, consulte [Windows Imaging Component](https://learn.microsoft.com/windows/win32/wic/-wic-lh) ou o [wiki do DirectXTex no GitHub](https://github.com/microsoft/DirectXTex/wiki/DirectXTex).

Há várias ressalvas quanto ao suporte ao WIC em títulos do XBOX One (Game OS).

* Expressões de política de metadados de fotos não são compatíveis.
* O codec HD Photo / JPEG-XR (identificado por GUID\_ContainerFormatWmp e com as extensões de arquivo .jxr, .hdp e .wdp) não é compatível.
* O codec BMP não oferece suporte a algumas variantes de formato mais antigas específicas do GDI.
* Algumas conversões de formato de pixel não são compatíveis.
  * GUID\_WICPixelFormat48bppRGBFixedPoint
  * GUID\_WICPixelFormat48bppBGRFixedPoint
  * GUID\_WICPixelFormat16bppGrayFixedPoint
  * GUID\_WICPixelFormat96bppRGBFixedPoint
  * GUID\_WICPixelFormat64bppRGBAFixedPoint
  * GUID\_WICPixelFormat64bppBGRAFixedPoint
  * GUID\_WICPixelFormat128bppRGBAFixedPoint
  * GUID\_WICPixelFormat64bppRGBAHalf
  * GUID\_WICPixelFormat48bppRGBHalf
  * GUID\_WICPixelFormat32bppRGBE
  * GUID\_WICPixelFormat16bppGrayHalf
  * GUID\_WICPixelFormat32bppGrayFixedPoint
  * GUID\_WICPixelFormat64bppRGBFixedPoint
  * GUID\_WICPixelFormat128bppRGBFixedPoint
  * GUID\_WICPixelFormat64bppRGBHalf
  * GUID\_WICPixelFormat64bppPRGBAHalf
  * Todos os formatos CMYK e formatos nChannel

Consulte [Windows Imaging Component (WIC) no XBOX](/pt-BR/build/core-features/graphics/image-processing-overview) para obter informações relacionadas.

<a id="ID4EABAC" />


## Related topics

- [Diretório de tópicos NDA: links ativos do Microsoft Learn](/pt-BR/nda/nda-topic-directory.md)
- [Visão geral da API do pipeline de Mesh Shader](/pt-BR/build/core-features/graphics/newfeatures/ms/ms-api-design.md)
- [Guia de programação do Direct3D 12](/pt-BR/build/gdk-and-engines/guides/directx-12-programming-guide.md)
- [Sampler Feedback e SFS no XBOX Series X|S](/pt-BR/build/core-features/graphics/newfeatures/sfs/index.md)
- [Mesh shaders e meshlets no XBOX Series X|S](/pt-BR/build/core-features/graphics/newfeatures/ms/index.md)
