Créer un jeu de plateforme Windows universelle (UWP) simple avec DirectX

Dans cet ensemble de tutoriels, vous allez apprendre à utiliser DirectX et C++/WinRT pour créer l’exemple de jeu de base plateforme Windows universelle (UWP) nommé Simple3DGameDX. Le gameplay se déroule dans une galerie de tir 3D simple à la première personne.

Notes

Le lien à partir duquel vous pouvez télécharger l’exemple de jeu Simple3DGameDX lui-même est l’exemple de jeu Direct3D. Le code source C++/WinRT se trouve dans le dossier nommé cppwinrt. Pour plus d’informations sur les autres exemples d’applications UWP, consultez Exemples d’applications pour le développement Windows.

Ces tutoriels couvrent toutes les principales parties d’un jeu, y compris les processus de chargement de ressources telles que les arts et les maillages, la création d’une boucle de jeu main, l’implémentation d’un pipeline de rendu simple et l’ajout de sons et de contrôles.

Vous verrez également les techniques et considérations relatives au développement de jeux UWP. Nous allons nous concentrer sur les principaux concepts de développement de jeux UWP DirectX et nous allons mettre en évidence des considérations spécifiques à Windows Runtime autour de ces concepts.

Objectif

Pour en savoir plus sur les concepts et les composants de base d’un jeu UWP DirectX, et pour devenir plus à l’aise dans la conception de jeux UWP avec DirectX.

Bon à savoir

Pour ce tutoriel, vous devez vous familiariser avec ces sujets.

  • C++/WinRT. C++/WinRT est une projection de langage C++17 moderne standard pour les API Windows, implémentée en tant que bibliothèque basée sur un fichier d’en-tête et conçue pour vous fournir un accès de première classe aux API Windows modernes.
  • Algèbre linéaire de base et concepts physiques newtoniens.
  • Terminologie de programmation de graphiques de base.
  • Concepts de programmation Windows de base.
  • Connaissances de base des API Direct2D et Direct3D 11.

L’exemple de jeu Simple3DGameDX implémente une galerie de tir 3D simple à la première personne, où le joueur tire des balles sur des cibles mobiles. Le joueur gagne un certain nombre de points en atteignant chaque cible et il peut traverser 6 niveaux de défis de plus en plus difficiles. À la fin des niveaux, les points sont comptés et un score final est attribué au joueur.

L’exemple illustre ces concepts de jeu.

  • Interopérabilité entre DirectX 11.1 et Windows Runtime
  • Caméra et perspective 3D subjectives
  • Effets 3D stéréoscopiques
  • Détection de collision entre objets en 3D
  • Gestion de l’entrée du joueur pour les contrôles de la souris, de l’interaction tactile et de la manette Xbox
  • Mixage audio et lecture
  • Une machine d’état de jeu de base

l’exemple de jeu en action

Rubrique Description
Configurer le projet de jeu La première étape du développement de votre jeu consiste à configurer un projet dans Microsoft Visual Studio. Une fois que vous avez configuré un projet spécifiquement pour le développement de jeux, vous pouvez le réutiliser en tant que modèle.
Définir l’infrastructure d’application UWP du jeu La première étape du codage d’un jeu plateforme Windows universelle (UWP) consiste à créer l’infrastructure qui permet à l’objet d’application d’interagir avec Windows.
Gestion de flux de jeu Définissez la machine à états de haut niveau pour permettre l’interaction entre le joueur et le système. Découvrez comment l’interface utilisateur interagit avec l’ordinateur d’état du jeu global et comment créer des gestionnaires d’événements pour les jeux UWP.
Définir l’objet jeu principal Maintenant, nous examinons les détails de l’objet main de l’exemple de jeu et comment les règles qu’il implémente se traduisent en interactions avec le monde du jeu.
Infrastructure de rendu I : présentation du rendu Découvrez comment développer le pipeline de rendu pour afficher des graphiques. Présentation du rendu.
Infrastructure de rendu II : Rendu du jeu Découvrez comment assembler le pipeline de rendu pour afficher des graphiques. Rendu du jeu, configuration et préparation des données.
Ajouter une interface utilisateur Découvrez comment ajouter une superposition d’interface utilisateur 2D à un jeu DirectX UWP.
Ajouter des contrôles À présent, nous examinons comment l’exemple de jeu implémente des contrôles de mouvement-regard dans un jeu 3D, et comment développer des contrôles tactiles, de souris et de contrôleur de jeu de base.
Ajouter du son Développez un moteur de son simple à l’aide des API XAudio2 pour lire de la musique de jeu et des effets sonores.
Développer l’exemple de jeu Découvrez comment implémenter une superposition XAML pour un jeu DirectX UWP.