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

# Guia de programação do Direct3D 12

> O Direct3D 12 fornece uma API e uma plataforma que permitem que os aplicativos aproveitem os recursos de gráficos e computação de PCs equipados com uma ou mais GPUs compatíveis com Direct3D 12.

O Direct3D 12 fornece uma API e uma plataforma que permitem que os aplicativos aproveitem os recursos de gráficos e computação de PCs equipados com uma ou mais GPUs compatíveis com Direct3D 12.

## Nesta seção

| Tópico | Descrição |
| - | - |
| [O que é o Direct3D 12?](https://learn.microsoft.com/en-us/windows/win32/direct3d12/what-is-directx-12-) | O DirectX 12 apresenta a próxima versão do Direct3D, a API de gráficos 3D que é o coração do DirectX. Esta versão do Direct3D é mais rápida e eficiente do que qualquer versão anterior. O Direct3D 12 permite cenas mais ricas, mais objetos, efeitos mais complexos e a utilização completa do hardware de GPU moderno. |
| [Novidades no Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/new-releases) | Descreve a nova documentação mais significativa disponível com a versão mais recente do SDK. |
| [Noções básicas sobre o Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/directx-12-getting-started) | Para escrever jogos e aplicativos 3D para Windows 10 e Windows 10 Mobile, você precisa entender os conceitos básicos da tecnologia Direct3D 12 e como se preparar para usá-la em seus jogos e aplicativos. |
| [Envio de trabalho no Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/command-queues-and-command-lists) | Para melhorar a eficiência de CPU dos aplicativos Direct3D, o Direct3D 12 não dá mais suporte a um contexto imediato associado a um dispositivo. Em vez disso, os aplicativos gravam e depois enviam *listas de comandos*, que contêm chamadas de desenho e de gerenciamento de recursos. Essas listas de comandos podem ser enviadas de vários threads para uma ou mais filas de comandos, que gerenciam a execução dos comandos. Essa mudança fundamental aumenta a eficiência de thread único ao permitir que os aplicativos pré-computem o trabalho de renderização para reutilização posterior, além de aproveitar os sistemas de vários núcleos ao distribuir o trabalho de renderização entre vários threads. |
| [Associação de recursos no Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/resource-binding) | A associação é o processo de vincular objetos de recurso aos sombreadores do pipeline gráfico. |
| [Gerenciamento de memória no Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/memory-management) | Migrar para o D3D12 envolve fazer a sincronização e o gerenciamento adequados da residência de memória. Gerenciar a residência de memória significa que ainda mais sincronização precisa ser feita. Esta seção aborda estratégias de gerenciamento de memória e suballocação dentro de heaps e buffers. |
| [Sistemas com vários adaptadores](https://learn.microsoft.com/en-us/windows/win32/direct3d12/multi-engine) | Descreve o suporte no Direct3D 12 a sistemas que têm vários adaptadores instalados, abordando cenários em que seu aplicativo direciona explicitamente vários adaptadores de GPU e cenários em que os drivers usam implicitamente vários adaptadores de GPU em nome do seu aplicativo. |
| [Sincronização de vários mecanismos](https://learn.microsoft.com/en-us/windows/win32/direct3d12/user-mode-heap-synchronization) | Este tópico discute a sincronização do acesso aos vários mecanismos independentes encontrados na maioria das GPUs modernas. |
| [Renderização](https://learn.microsoft.com/en-us/windows/win32/direct3d12/rendering) | Esta seção contém informações sobre os recursos de renderização novos no Direct3D 12 (e no Direct3D 11.3). |
| [Advanced Shader Delivery](https://docs.xbox.com/pt-BR/build/gdk-and-engines/guides/advanced-shader-delivery.md) | O Advanced Shader Delivery pré-compila sombreadores do Direct3D 12 na nuvem e os entrega no momento do download, reduzindo os tempos de carregamento na primeira inicialização, as travadas causadas pela compilação de sombreadores durante o jogo e o consumo de energia. |
| [Contadores, consultas e medição de desempenho](https://learn.microsoft.com/en-us/windows/win32/direct3d12/performance-measurement) | As seções a seguir descrevem recursos para uso em testes e melhoria de desempenho, como consultas, contadores, medição de tempo e predicação. |
| [Trabalhando com Direct3D 11, Direct3D 10 e Direct2D](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-interop) | Esta seção aborda técnicas de interoperabilidade com versões anteriores do Direct3D e do Direct2D, a API Direct3D 11on12 e diretrizes de portabilidade do Direct3D 11 para o Direct3D 12. |
| [Exemplos funcionais](https://learn.microsoft.com/en-us/windows/win32/direct3d12/working-samples) | Exemplos funcionais estão disponíveis para download, mostrando o uso de vários recursos do Direct3D 12. |
| [Explicações passo a passo de código do D3D12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-code-walk-throughs) | Esta seção fornece código para cenários de exemplo. Muitas das explicações passo a passo fornecem detalhes sobre qual código precisa ser adicionado a um exemplo básico, para evitar repetir o código do componente básico em cada cenário. |
| [Depuração e diagnóstico com o Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/understanding-the-d3d12-debug-layer) | Inclui tópicos que descrevem como aproveitar ao máximo a Camada de Depuração do Direct3D 12 com a validação baseada em GPU (GBV) e como usar os DRED (Dados Estendidos de Remoção de Dispositivo). |

## Tópicos relacionados

* [Elementos gráficos do Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-graphics)
* [Referência do Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-reference)
* [Tutoriais em vídeo de aprendizado avançado do DirectX](https://www.youtube.com/channel/UCiaX2B8XiXR70jaN7NK-FpA)


## Related topics

- [Advanced Shader Delivery](https://docs.xbox.com/pt-BR/build/gdk-and-engines/guides/advanced-shader-delivery.md)
- [SetName](https://docs.xbox.com/pt-BR/reference/graphics/d3d12/interfaces/id3d12object/methods/id3d12object_setname_public.md)
- [Modelos de projeto no Visual Studio para o desenvolvimento de jogos para PC](https://docs.xbox.com/pt-BR/tools/tools-pc/visualstudio/gr-vs-templates.md)
- [D3D12_FEATURE_DATA_FORMAT_SUPPORT](https://docs.xbox.com/pt-BR/reference/graphics/d3d12/structs/d3d12_feature_data_format_support_public.md)
- [Modelos de projeto no Visual Studio para desenvolvimento para XBOX](https://docs.xbox.com/pt-BR/tools/tools-console/visualstudio/durango-visual-studio-templates.md)
