> ## 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.

# Desenvolva um novo título GDK

> Crie um novo título GDK no Visual Studio usando modelos de projeto para Windows PC, consoles XBOX Series X|S ou uma build multiplataforma que tem como alvo ambos.

Esta é a etapa 3 do caminho guiado. Instale o GDK e compile um exemplo em [Configurar e instalar o GDK](https://docs.xbox.com/pt-BR/home/setup-install/get-started.md) antes de começar aqui.

Todo jogo GDK começa como um projeto do Visual Studio. Você seleciona um modelo com base em onde deseja que seu jogo seja executado: somente Windows PC, somente consoles XBOX ou ambos os alvos a partir do mesmo código. Você não precisa decidir isso definitivamente agora, porque pode adicionar outro alvo mais tarde.

> [!TIP]
>
> Se você não tem certeza de qual alvo escolher, comece com **Desktop** (`Gaming.Desktop.x64`) quando tiver um Windows PC e ainda não tiver um dev kit. Você pode testar tudo localmente. Adicione alvos XBOX depois de receber um dev kit.

## Modelos de projeto

A instalação do GXDK adiciona nove modelos de projeto GDK ao Visual Studio: cinco para PC e quatro para consoles XBOX.

| Alvo | Modelo | Descrição |
| - | - | - |
| **Desktop** | Direct3D 12 Desktop Game (Classic) | Jogo autônomo para PC na plataforma MSBuild x64 padrão. |
| | Direct3D 12 Desktop Game | Jogo autônomo para PC na plataforma MSBuild personalizada `Gaming.Desktop.x64`. |
| | Direct3D 12 Desktop Game Makefile | Jogo para PC compilado a partir de um makefile pelo prompt de comando. |
| | Desktop Static Library | Biblioteca estática com alvo em `Gaming.Desktop.x64`. |
| | Desktop DLL | DLL com alvo em `Gaming.Desktop.x64`. |
| **Console** | Direct3D 12 XBOX Game | Executável autônomo de jogo XBOX. |
| | Direct3D 12 XBOX Game Makefile | Jogo XBOX compilado a partir de um makefile. |
| | XBOX Static Library | Biblioteca estática com alvo nas plataformas XBOX. |
| | XBOX DLL | DLL com alvo nas plataformas XBOX. |

## Crie um projeto

1. Abra o Visual Studio.
2. Vá em **File** > **New** > **Project**.
3. Em **All Languages**, selecione **C++**. Em **All Platforms**, selecione **XBOX** ou **Windows**. Em **All Project Types**, selecione **Games**. Você também pode pesquisar pelo nome do modelo.
4. Selecione um modelo e selecione **OK**.

## Selecione um modelo

### Somente PC

Comece com **Direct3D 12 Desktop Game**.

* Usa `WINAPI_FAMILY_DESKTOP_APP` e faz o link com o conjunto completo de bibliotecas de PC, incluindo `kernel32.lib` e `user32.lib`.
* Inclui cabeçalhos e bibliotecas para D3D12. Fornece uma swap chain simples, um dispositivo D3D e um loop de atualização e renderização.
* Inclui `XGameRuntime.h` e faz o link com `XGameRuntime.lib`. Todas as capacidades do Gaming Runtime do GDK estão prontas.
* Biblioteca de extensão XSAPI disponível por padrão.
* Compila para a plataforma x64 padrão ou para a plataforma personalizada `Gaming.Desktop.x64`.
* Cria um arquivo `MicrosoftGameConfig.mgc` com espaços reservados para a sua identidade do Partner Center.

### Somente XBOX

Comece com **Direct3D 12 XBOX Game**.

* Usa `WINAPI_FAMILY_GAMES` e faz o link com `XGamePlatform.lib`.
* Inclui cabeçalhos D3D12 prontos para as extensões D3D12.x do XBOX.
* Inclui `XGameRuntime.h` e faz o link com `XGameRuntime.lib`.
* Biblioteca de extensão XSAPI disponível por padrão.
* Usa a plataforma MSBuild `Gaming.XBOX.XboxOne.x64` com expectativas de depuração remota.
* Cria um arquivo `MicrosoftGameConfig.mgc` com espaços reservados.

### PC e XBOX (base de código compartilhada)

Comece com um modelo, por exemplo **Direct3D 12 Desktop Game**, e adicione uma segunda configuração de build com alvo em `Gaming.XBOX.XboxOne.x64` (ou vice-versa).

Adapte o código-fonte com guardas `#define` ou `#ifdef`, ou particione o código específico de plataforma em DLLs separadas:

* A configuração de PC usa o D3D12 padrão.
* A configuração de XBOX usa o D3D12.x.

Alternar a configuração ativa muda automaticamente o depurador, as bibliotecas vinculadas e outras configurações de ferramentas.

## Lance de ponta a ponta em um dev kit

Antes de selecionar um caminho mais profundo, faça o passo a passo prático de console. Ele leva o modelo **Direct3D 12 XBOX Game** que você criou até uma implantação solta (loose) em execução em um dev kit XBOX. A partir daí, produz um XVC instalável.

> [card] [Compile e execute seu primeiro título de console com o GDKX](https://docs.xbox.com/pt-BR/home/build-first-title/first-console-title-walkthrough.md)
>
> Tutorial de 14 etapas: fixe a edição do GDK, adicione o DirectXTK12, compile para consoles XBOX Series X|S, implante em um dev kit, diagnostique falhas de inicialização e produza um XVC instalável.

## Próximas etapas

Você tem um projeto compilando. Selecione o caminho selecionado que corresponde ao que você está lançando. O guia aponta para a documentação mais profunda (Build, Serviços, Otimização, Publicação e Referências de API) de que você precisará em seguida.

> [card] [Portabilidade](https://docs.xbox.com/pt-BR/paths/porting/overview.md)
>
> Porte um título já lançado de outra plataforma.

> [card] [XBOX Play Anywhere](https://docs.xbox.com/pt-BR/paths/play-anywhere/overview.md)
>
> Uma única compra, PC e console. Saves compartilhados.

> [card] [Consoles XBOX Series X|S](https://docs.xbox.com/pt-BR/paths/series-xs/overview.md)
>
> Console em primeiro lugar: Quick Resume, DirectStorage e Smart Delivery.

> [card] [Windows e ROG XBOX Ally](https://docs.xbox.com/pt-BR/paths/windows/overview.md)
>
> Lance no Windows PC e em portáteis.

> [card] [Unreal Engine](https://docs.xbox.com/pt-BR/paths/unreal/overview.md)
>
> Plugins do GDK e extensões de plataforma para Unreal.

> [card] [Unity](https://docs.xbox.com/pt-BR/paths/unity/overview.md)
>
> Integração do Unity para PC e XBOX.

> [card] [Godot e engines da comunidade](https://docs.xbox.com/pt-BR/paths/community-engines/overview.md)
>
> Notas sobre Godot, GameMaker e engines personalizadas.

> [!TIP]
>
> A maioria dos títulos combina o GDK com o [PlayFab](https://docs.xbox.com/pt-BR/services/playfab/get-started.md) para identidade, multijogador, placares de líderes, economia e live-ops. Você pode integrá-lo a qualquer momento depois que seu projeto compilar.

## Consulte também

* [Guias de portabilidade](https://docs.xbox.com/pt-BR/home/build-first-title/porting-guides.md): índice técnico de tópicos de portabilidade (ERA para GDK, shaders, GameInput e mapeamento do Steamworks).
* [Visão geral do MicrosoftGame.config](https://docs.xbox.com/pt-BR/build/core-features/common/game-config/MicrosoftGameConfig-Overview.md).
* [Empacotando seu jogo](https://docs.xbox.com/pt-BR/build/core-features/common/packaging/overviews/packaging.md).


## Related topics

- [Compile e execute seu primeiro título de console com o GDKX](https://docs.xbox.com/pt-BR/home/build-first-title/first-console-title-walkthrough.md)
- [Guias de portabilidade do Microsoft Game Development Kit (GDK)](https://docs.xbox.com/pt-BR/home/build-first-title/porting-guides.md)
- [Iniciar o desenvolvimento de um novo título usando modelos de projeto do GDK](https://docs.xbox.com/pt-BR/build/gdk-and-engines/guides/gdk-project-templates.md)
- [Conquistas baseadas em eventos vs. gerenciadas pelo título](https://docs.xbox.com/pt-BR/services/xbox-services/player-data/achievements/live-achievements-eb-vs-tm.md)
- [Visão geral da publicação de jogos XBOX](https://docs.xbox.com/pt-BR/publishing/game-publishing/publishing-processes/managed-creators/overview.md)
