Compartilhar via


Roteiro para aplicativos DirectX para Desktop

Aqui estão os principais recursos para ajudá-lo a começar a usar DirectX e C++ para desenvolver aplicativos de área de trabalho com uso intensivo de gráficos, como jogos. Esta não é uma lista abrangente de todos os recursos ou recursos disponíveis.

Introdução

Aqui estão alguns dos principais tópicos. Configurar seu projeto DirectX, se adaptar ao Windows e aplicativos de exemplo.

Tópico Descrição
Criar seu primeiro aplicativo do Windows usando o DirectX Use este tutorial básico para começar a usar o desenvolvimento de aplicativos DirectX e, em seguida, use o roteiro para continuar explorando o DirectX.
Introdução ao DirectX para Windows Examine as etapas que você deve seguir para começar a desenvolver um jogo usando DirectX e C++.
Código completo para uma estrutura DirectX Obtenha o código para uma estrutura básica de renderização do DirectX.
Como usar o Direct3D 11 Esta seção demonstra como usar a API do Microsoft Direct3D 11 para realizar várias tarefas comuns.
Guia de programação para Direct3D 11 O guia de programação contém informações sobre como usar o pipeline programável do Microsoft Direct3D 11 para criar gráficos 3D em tempo real para aplicativos da área de trabalho.
Ferramentas para elementos gráficos DirectX Documentação das ferramentas usadas para dar suporte ao desenvolvimento do DirectX.
Novidades no Direct3D 11 Um detalhamento de todos os recursos adicionados nas versões mais recentes do DirectX e direct3D (atualmente 11.2).
Baixar o Visual Studio 2013 Você deve ter Visual Studio Express 2013 para Windows Desktop para criar jogos da Windows Store. Para obter um tour pelo Visual Studio, consulte Desenvolver aplicativos da Windows Store usando o Visual Studio 2012. Para obter informações sobre novos recursos no Visual Studio, consulte Destaques do produto para Visual Studio 2013.
Onde está o SDK do DirectX? Contém diretrizes para devs que desejam trazer seus projetos DirectX para o Microsoft Visual Studio.

Aplicativos de exemplo

Tópico Descrição
Exemplo do Direct3D Tutorial Win32 Exemplo de tutorial básico do Direct3D da área de trabalho.
Exemplo de renderização de vídeo do DirectX Um exemplo que demonstra a renderização de vídeo personalizada com o Direct3D.

Examinar os principais conceitos do Direct3D 11

Tópico Descrição
Pipeline de Gráficos Aborda o pipeline de gráficos básico do Direct3D 11.
Renderização Aborda os modelos de renderização direct3D, componentes, sombreadores e fluxo de chamadas à API.
Recursos Aborda "recursos" do Direct3D, como buffers e outros tipos de recursos de GPU.
Efeitos Aborda a instanciação e os efeitos de vários sombreadores Direct3D.
Como criar uma cadeia de troca Como criar a cadeia de troca usada para desenhar pixels para uma região da tela.
Como criar um dispositivo e um contexto imediato Como criar uma abstração de dispositivo Direct3D e um contexto imediato para desenho.
Como criar um buffer de vértice Como criar uma lista simples de vértices de malha para processamento pela GPU.
Como criar um buffer de índice Como criar um buffer de índice permitindo que o sombreador de vértice ande na ordem dos vértices em uma malha.
Como criar um buffer constante Como passar dados constantes (uniformes) entre a CPU e a GPU durante a renderização.
Como criar uma textura Como criar uma textura ou outro recurso de buffer que possa ser amostrado pela GPU.
Como inicializar uma textura de um arquivo Como carregar uma textura de um arquivo e processá-la para uso pelo pipeline do sombreador.
Como compilar um sombreador Como compilar um sombreador para uso em seu aplicativo gráfico.

APIs gráficas

Tópico Descrição
Direct3D 11 Documentação das APIs principais para a virtualização da GPU e seus recursos e para desenhar gráficos usando um modelo de sombreador unificado.
Direct3D HLSL Documentação de referência para High-Level Linguagem de Sombreador, a sintaxe e as regras usadas para definir programas de sombreador executados como parte do pipeline de gráficos em um modelo de sombreador unificado.
Interface Gráfica DirectX (DXGI) Documentação das APIs de baixo nível usadas para adquirir a interface de GPU e os recursos do sistema.
Direct2D Documentação das APIs Direct2D, que dão suporte ao desenho de primitivos 2D. Normalmente, Direct2D é usado para interfaces de usuário personalizadas, processamento de imagens e envio em lote e jogos simples.
DirectWrite Documentação das APIs DirectWrite, que dão suporte à renderização e ao dimensionamento de fontes personalizadas.
Windows Imaging Component (WIC) Documentação para as APIs wic, que são usadas para ler e gerenciar diferentes formatos de imagem de bitmap.
DirectDraw Surfaces (DDS) para texturas Documentação das APIs de DDS, que são usadas para compactação e descompactação de textura 2D em conjunto com as APIs do WIC.
DirectXMath Documentação das APIs DirectXMath, que dão suporte ao Direct3D com um conjunto de tipos e funções adequados para o desenvolvimento de gráficos em tempo real 3D. (Anteriormente XNAMath.)
Directcompute Documentação para as APIs DirectCompute, usadas para funcionalidade de sombreador de computação ou uso geral.

APIs de áudio, mídia e entrada

Tópico Descrição
Guia de Programação em XAudio2 Nó de nível superior para a documentação conceitual da API de áudio XAudio2.
Referência de programação em XAudio2 Nó de nível superior para a documentação de referência da API de áudio XAudio2.
Guia de Programação XInput Nó de nível superior para a documentação conceitual da API do controlador XInput.
Referência de programação XInput Nó de nível superior para a documentação de referência da API do controlador XInput.
Media Foundation Nó de nível superior para a documentação da API de reprodução de mídia (áudio/vídeo) do MF (Media Foundation). Normalmente, o MF é usado em jogos para reprodução de trilha sonora, enquanto XAudio2 é usado para áudio dinâmico.

Porta para DirectX 11

Tópico Descrição
Migrando para o Direct3D 11 Diretrizes básicas para mover sua base de código do DirectX 9 para o DirectX 11.
Técnicas de codificação de uso duplo para jogos Postagem detalhada no blog sobre o desenvolvimento para os níveis de recursos do DirectX 9_* e do DirectX 11_* em um único aplicativo.
Implementando buffers de sombra para o nível de recurso 9 do Direct3D Diretrizes para implementar mapas de sombra no nível de recurso do DirectX 9_*.

Trabalhar com C++

Se você é uma mão velha com C++ em plataformas Windows, as coisas podem parecer um pouco diferentes. Aqui estão alguns ponteiros para tópicos que podem ajudá-lo a obter um identificador sobre a diferença.

Observação

Alguns desses tópicos existem para ajudá-lo a manter seu aplicativo C++/CX. Recomendamos que você use C++/WinRT para novos aplicativos. C++/WinRT é uma projeção de linguagem C++17 completamente moderna e padrão para APIs do WinRT (Windows Runtime), implementada como uma biblioteca com base em cabeçalho e arquivo, projetada para fornecer acesso de primeira classe à API moderna do Windows.

Tópico Descrição
Referência de linguagem do Visual C++ (C++/CX) Página de alto nível que é vinculada ao conteúdo relacionado ao C++.
Referência rápida (Windows Runtime e Visual C++) Tabela que fornece informações rápidas sobre operadores e palavras-chave de C++/CX (extensões de componente do Visual C++).
Sistema de tipos (C++/CX) Conteúdo de referência para os tipos com suporte do C++/CX.
Namespaces (C++/CX) Conteúdo de referência para os namespaces que contêm tipos específicos do C++que podem ser usados em aplicativos da Windows Store.
Tópico Descrição
Programação assíncrona (DirectX e C++) Saiba mais sobre programação assíncrona e multithreaded para aplicativos e jogos DirectX.
Programação assíncrona em C++ Descreve as maneiras básicas de usar a classe de tarefa para consumir Windows Runtime métodos assíncronos.
Classe task (Runtime de Simultaneidade) Documentação de referência para a classe de tarefa.
Paralelismo de tarefa (runtime de simultaneidade) Discussão detalhada sobre a classe de tarefa e como usá-la.

Bibliotecas úteis adicionais para programação do Windows C++

Tópico Descrição
Biblioteca de Modelos Padrão do C++ Windows Runtime tipos jogam bem com tipos de Biblioteca de Modelos Padrão. A maioria dos aplicativos da Windows Store C++ usa coleções e algoritmos da Biblioteca de Modelos Padrão, exceto no limite da ABI.
Biblioteca de Padrões Paralelos O PPL fornece algoritmos e tipos que simplificam o paralelismo de tarefas e o paralelismo de dados na CPU.
C++ Accelerated Massive Parallelism (C++ AMP) C++ AMP fornece acesso à GPU para paralelismo de dados de uso geral em placas de vídeo que dão suporte ao DirectX 11.

Blogs e outros recursos

Tópico Descrição
Blog jogos para Windows e DirectX Blog atualizado regularmente de um contribuidor de desenvolvimento directx chave e um ótimo recurso para devs DirectX.
Blog do desenvolvedor do Windows DirectX O blog oficial do Windows DirectX.
Blog directx de Shawn Hargreave) Blog de desenvolvimento de outro respeitado contribuidor de desenvolvimento do Windows DirectX.
Kit de ferramentas do DirectX Kit de Ferramentas DirectX (DxTK), que contém várias APIs de suporte úteis para carregar malhas, reproduzir sons e outros comportamentos comuns.
Biblioteca de processamento de texturas DirectXTex DxTEX (Biblioteca de Processamento de Textura) DirectX, que contém APIs de suporte para processamento de textura e compactação/descompactação.