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

# Développer un nouveau titre GDK

> Créez un nouveau titre GDK dans Visual Studio à l'aide de modèles de projet pour Windows PC, les consoles XBOX Series X|S, ou une build multiplateforme ciblant les deux.

Ceci est l'étape 3 du parcours guidé. Installez le GDK et compilez un exemple à partir de [Configurer et installer le GDK](/home/setup-install/get-started) avant de commencer ici.

Chaque jeu GDK commence par un projet Visual Studio. Vous sélectionnez un modèle selon l'endroit où vous voulez que votre jeu s'exécute : Windows PC seulement, consoles XBOX seulement, ou les deux cibles à partir du même code. Vous n'avez pas besoin de trancher maintenant, car vous pouvez ajouter une autre cible plus tard.

<Tip>
  Si vous ne savez pas quelle cible choisir, commencez par **Desktop** (`Gaming.Desktop.x64`) si vous avez un Windows PC et pas encore de kit de développement. Vous pouvez tout tester localement. Ajoutez les cibles XBOX après avoir reçu un kit de développement.
</Tip>

## Modèles de projet

L'installation du GXDK ajoute neuf modèles de projet GDK à Visual Studio : cinq pour PC et quatre pour les consoles XBOX.

| Cible       | Modèle                             | Description                                                                   |
| ----------- | ---------------------------------- | ----------------------------------------------------------------------------- |
| **Desktop** | Direct3D 12 Desktop Game (Classic) | Jeu PC autonome sur la plateforme MSBuild x64 standard.                       |
|             | Direct3D 12 Desktop Game           | Jeu PC autonome sur la plateforme MSBuild personnalisée `Gaming.Desktop.x64`. |
|             | Direct3D 12 Desktop Game Makefile  | Jeu PC compilé à partir d'un makefile via l'invite de commandes.              |
|             | Desktop Static Library             | Bibliothèque statique ciblant `Gaming.Desktop.x64`.                           |
|             | Desktop DLL                        | DLL ciblant `Gaming.Desktop.x64`.                                             |
| **Console** | Direct3D 12 XBOX Game              | Exécutable de jeu XBOX autonome.                                              |
|             | Direct3D 12 XBOX Game Makefile     | Jeu XBOX compilé à partir d'un makefile.                                      |
|             | XBOX Static Library                | Bibliothèque statique ciblant les plateformes XBOX.                           |
|             | XBOX DLL                           | DLL ciblant les plateformes XBOX.                                             |

## Créer un projet

1. Ouvrez Visual Studio.
2. Allez à **File** > **New** > **Project**.
3. Dans **All Languages**, sélectionnez **C++**. Dans **All Platforms**, sélectionnez **XBOX** ou **Windows**. Dans **All Project Types**, sélectionnez **Games**. Vous pouvez aussi rechercher par nom de modèle.
4. Sélectionnez un modèle, puis sélectionnez **OK**.

## Sélectionner un modèle

### PC seulement

Commencez avec **Direct3D 12 Desktop Game**.

* Utilise `WINAPI_FAMILY_DESKTOP_APP` et se lie à l'ensemble complet des bibliothèques PC, incluant `kernel32.lib` et `user32.lib`.
* Inclut les en-têtes et bibliothèques pour D3D12. Fournit une chaîne d'échange simple, un périphérique D3D et une boucle de mise à jour et de rendu.
* Inclut `XGameRuntime.h` et lie `XGameRuntime.lib`. Toutes les capacités du Gaming Runtime du GDK sont prêtes.
* Bibliothèque d'extension XSAPI offerte par défaut.
* Compile pour la plateforme x64 standard ou la plateforme personnalisée `Gaming.Desktop.x64`.
* Crée un fichier `MicrosoftGameConfig.mgc` avec des espaces réservés pour votre identité Partner Center.

### XBOX seulement

Commencez avec **Direct3D 12 XBOX Game**.

* Utilise `WINAPI_FAMILY_GAMES` et se lie à `XGamePlatform.lib`.
* Inclut des en-têtes D3D12 prêts pour les extensions D3D12.x de XBOX.
* Inclut `XGameRuntime.h` et lie `XGameRuntime.lib`.
* Bibliothèque d'extension XSAPI offerte par défaut.
* Utilise la plateforme MSBuild `Gaming.XBOX.XboxOne.x64` avec des paramètres de débogage à distance.
* Crée un fichier `MicrosoftGameConfig.mgc` avec des espaces réservés.

### PC et XBOX (base de code partagée)

Commencez avec un modèle, par exemple **Direct3D 12 Desktop Game**, et ajoutez une deuxième configuration de build ciblant `Gaming.XBOX.XboxOne.x64` (ou vice versa).

Adaptez le code source à l'aide de gardes `#define` ou `#ifdef`, ou séparez le code propre à chaque plateforme dans des DLL distinctes :

* La configuration PC utilise le D3D12 standard.
* La configuration XBOX utilise D3D12.x.

Le changement de configuration active modifie automatiquement le débogueur, les bibliothèques liées et les autres paramètres d'outillage.

## Livrer de bout en bout sur un kit de développement

Avant de sélectionner un parcours plus approfondi, suivez le tutoriel pratique sur console. Il mène le modèle **Direct3D 12 XBOX Game** que vous avez créé jusqu'à un déploiement de fichiers non empaquetés en cours d'exécution sur un kit de développement XBOX. De là, il produit un XVC installable.

<Card title="Compiler et exécuter votre premier titre console avec le GDKX" icon="gamepad" horizontal href="/home/build-first-title/first-console-title-walkthrough">
  Tutoriel en 14 étapes : figer l'édition du GDK, ajouter DirectXTK12, compiler pour les consoles XBOX Series X|S, déployer sur un kit de développement, diagnostiquer les échecs de lancement et produire un XVC installable.
</Card>

## Prochaines étapes

Vous avez un projet qui compile. Sélectionnez le parcours sélectionné qui correspond à ce que vous livrez. Le guide vous oriente vers la documentation approfondie (Créer, Services, Optimiser, Publication et Références des API) dont vous avez besoin ensuite.

<CardGroup cols={2}>
  <Card title="Portage" icon="arrow-right-arrow-left" href="/paths/porting/overview">
    Portez un titre déjà publié depuis une autre plateforme.
  </Card>

  <Card title="XBOX Play Anywhere" icon="globe" href="/paths/play-anywhere/overview">
    Un seul achat, PC et console. Sauvegardes partagées.
  </Card>

  <Card title="Consoles XBOX Series X|S" icon="tv" href="/paths/series-xs/overview">
    Priorité console : Quick Resume, DirectStorage et Smart Delivery.
  </Card>

  <Card title="Windows et ROG XBOX Ally" icon="laptop" href="/paths/windows/overview">
    Livrez sur Windows PC et sur les appareils portatifs.
  </Card>

  <Card title="Unreal Engine" icon="gamepad" href="/paths/unreal/overview">
    Modules d'extension GDK et extensions de plateforme pour Unreal.
  </Card>

  <Card title="Unity" icon="cube" href="/paths/unity/overview">
    Intégration Unity pour PC et XBOX.
  </Card>

  <Card title="Godot et moteurs communautaires" icon="code" href="/paths/community-engines/overview">
    Notes sur Godot, GameMaker et les moteurs personnalisés.
  </Card>
</CardGroup>

<Tip>
  La plupart des titres associent le GDK à [PlayFab](/services/playfab/get-started) pour l'identité, le multijoueur, les classements, l'économie et les opérations en direct. Vous pouvez l'intégrer à tout moment une fois que votre projet compile.
</Tip>

## Voir aussi

* [Guides de portage](/home/build-first-title/porting-guides) : index technique des sujets de portage (ERA vers GDK, nuanceurs, GameInput et correspondance Steamworks).
* [Aperçu de MicrosoftGame.config](/build/core-features/common/game-config/MicrosoftGameConfig-Overview).
* [Empaqueter votre jeu](/build/core-features/common/packaging/overviews/packaging).


## Related topics

- [Compiler et exécuter votre premier titre console avec le GDKX](/fr-CA/home/build-first-title/first-console-title-walkthrough.md)
- [Guides de portage vers le XBOX GDK](/fr-CA/home/build-first-title/porting-guides.md)
- [Aperçu de Godot et des moteurs communautaires](/fr-CA/paths/community-engines/overview.md)
- [Guide de certification étape par étape](/fr-CA/publishing/game-publishing/concepts/certification/certification-guide.md)
- [Aperçu de XBOX Series X|S](/fr-CA/paths/series-xs/overview.md)
