Guia de programação do Direct3D 12

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

Nesta seção

Tópico Descrição
O que é o Direct3D 12? O DirectX 12 apresenta a próxima versão do Direct3D, a API de gráficos 3D no centro do DirectX. Essa versão do Direct3D é mais rápida e eficiente do que qualquer versão anterior. O Direct3D 12 permite cenas mais avançadas, mais objetos, efeitos mais complexos e utilização completa do hardware moderno da GPU.
Novidades do Direct3D 12 Descreve a nova documentação mais significativa disponível com a versão mais recente do SDK.
Introdução ao Direct3D 12 Para escrever jogos e aplicativos 3D para Windows 10 e Windows 10 Mobile, você deve entender as noções básicas da tecnologia Direct3D 12 e como se preparar para usá-la em seus jogos e aplicativos.
Envio de trabalho no Direct3D 12 Para melhorar a eficiência da CPU de aplicativos Direct3D, o Direct3D 12 não dá mais suporte a um contexto imediato associado a um dispositivo. Em vez disso, os aplicativos registram e enviam listas de comandos, que contêm chamadas de desenho e 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 alteração fundamental aumenta a eficiência de thread único, permitindo que os aplicativos pré-computem o trabalho de renderização para reutilização posterior e aproveita os sistemas multi-núcleos espalhando o trabalho de renderização em vários threads.
Associação de recursos no Direct3D 12 A associação é o processo de vincular objetos de recurso aos sombreadores do pipeline de gráficos.
Gerenciamento de memória no Direct3D 12 Mover para D3D12 envolve 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 deve ser feita. Esta seção aborda estratégias de gerenciamento de memória e subalocação em heaps e buffers.
Sistemas com vários adaptadores Descreve o suporte no Direct3D 12 para sistemas que têm vários adaptadores instalados, abrangendo 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 aplicativo.
Sincronização de vários mecanismos Este tópico discute a sincronização do acesso aos vários mecanismos independentes encontrados na maioria das GPUs modernas.
Renderização Esta seção contém informações sobre como renderizar recursos novos para Direct3D 12 (e Direct3D 11.3).
Contadores, consultas e medição de desempenho As seções a seguir descrevem os recursos para uso em testes de desempenho e aprimoramento, como consultas, contadores, tempo e pré-indicação.
Como trabalhar com o Direct2D, o Direct3D 10 e o Direct3D 11 Esta seção aborda técnicas de interoperabilidade com versões anteriores do Direct3D e Direct2D, a API direct3D 11on12 e as diretrizes de portabilidade do Direct3D 11 para o Direct3D 12.
Exemplos de trabalho Exemplos de trabalho estão disponíveis para download, mostrando o uso de vários recursos do Direct3D 12.
Passo a passo do código D3D12 Esta seção fornece código para cenários de exemplo. Muitos dos passo a passo fornecem detalhes sobre qual codificação é necessária para ser adicionada a um exemplo básico, para evitar repetir o código básico do componente para cada cenário.
Depuração e diagnóstico com o Direct3D 12 Inclui tópicos que descrevem como fazer o melhor uso da Camada de Depuração do Direct3D 12 com GBV (validação baseada em GPU) e como usar o DRED (Dados Estendidos Removidos pelo Dispositivo).