Pular para o conteúdo principal
O Direct3D 12 no Microsoft Game Development Kit (GDK) fornece uma API de baixo nível e alto desempenho semelhante ao Direct3D 12 no PC. O Direct3D 12.x é adaptado para oferecer o máximo desempenho gráfico de console, tanto para CPU quanto para GPU. Muitas das alterações no Direct3D em relação à versão do Windows ocorrem porque o Game OS do Microsoft GDK usa uma única plataforma de hardware específica, e os títulos do Game OS exigem desempenho gráfico muito alto. Extensões do Direct3D 12 foram adicionadas ao Microsoft Game Development Kit (GDK).

Documentação do Direct3D 12

A API é a mesma para o Direct3D 12 no Microsoft Game Development Kit (GDK) (D3D12.x) e para o Direct3D 12 no PC (D3D12 no PC), exceto pelas extensões do XBOX.
  • A documentação do D3D12 no PC está disponível no Microsoft Docs: Gráficos do Direct3D 12. A documentação do D3D12 no PC também se aplica ao Direct3D 12 no XBOX One.
  • As especificações de engenharia dos recursos do Direct3D podem ser encontradas no GitHub em DirectX-Specs.
  • As extensões do XBOX para o Direct3D 12 são documentadas somente no Gaming eXtensions Development Kit (GXDK). Para obter mais informações, confira d3d12_x. A documentação do GXDK não duplica a documentação do D3D12 no PC, abrangendo apenas as extensões do Microsoft Game Development Kit (GDK) (itens de API específicos do D3D12.x).

Exemplos que usam o Direct3D 12 no Microsoft Game Development Kit (GDK)

Alguns exemplos foram atualizados para serem compatíveis com o D3D12.x, e alguns exemplos foram criados para o D3D12.x. Para baixar os exemplos mais recentes, confira os seguintes locais: Para compilar e executar a versão D3D12.x de um exemplo, no menu suspenso Configuração da Solução, selecione uma opção que contenha “12”, como Debug12.

Arquivos de cabeçalho

Valores de retorno dos métodos do D3D12.x

Na maioria dos casos, se um método for declarado em d3d12_x.h e retornar um HRESULT, mas ainda não tiver suporte no XBOX One, o método retornará o código de erro E_NOTIMPL, que significa “Não Implementado”. Alguns métodos não implementados que retornam um HRESULT retornam S_OK em vez de E_NOTIMPL porque o método nunca fará nada no Microsoft Game Development Kit (GDK). O método é, na prática, uma operação nula. Alguns métodos não implementados que retornam um HRESULT retornam S_OK em vez de E_NOTIMPL porque um exemplo chama o método, mas não depende realmente dele. Por exemplo, o exemplo SimpleCompute tem opções para operações de computação assíncronas e síncronas. Esse exemplo é executado de forma síncrona por padrão, mas tem código de inicialização que chama a computação assíncrona e dispararia uma saída prematura se o método não implementado retornasse E_NOTIMPL.

Bibliotecas de utilitários do DirectX Tool Kit

O DirectX Tool Kit para DirectX 12 tem bibliotecas de utilitários para simplificar a programação do DirectX. O design pretende ser o mais genérico possível para o Direct3D 12, usando especificidades do XBOX somente quando necessário para o suporte da plataforma. Essa base de código é publicada no GitHub como um projeto organizacional da Microsoft: DirectXTK12. Há conjuntos de testes para essas bibliotecas: directxtk12test.

Confira também

d3d12_x Diferenças entre o Direct3D 12 em um PC com Windows e o Microsoft Game Development Kit (GDK) Referência do Direct3D 12
Última modificação em 6 de outubro de 2026