Guia de programação do Direct3D 12
O Direct3D 12 fornece uma API e uma plataforma que permitem que os aplicativos aproveitem os elementos gráficos e os recursos 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 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 avançadas, mais objetos, efeitos mais complexos e utilização completa do hardware de GPU moderno. |
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 os conceitos básicos da tecnologia Direct3D 12 e como se preparar para usá-lo 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 comando, 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 | Associação é o processo de vinculação de objetos de recurso aos sombreadores do pipeline de gráficos. |
Gerenciamento de memória no Direct3D 12 | A mudança 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 e melhorias de desempenho, 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 de 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 de componente básico para cada cenário. |
Depuração e diagnóstico com 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 do Dispositivo). |