Procédure pas à pas : porter une application Direct3D 9 simple vers DirectX 11 et le Windows Store

Applies to Windows and Windows Phone

Cet exercice de portage montre comment faire passer une infrastructure de rendu simple de Direct3D 9 à Direct3D 11 et au Windows Store.

Dans cette section

RubriqueDescription

Initialiser Direct3D 11

Montre comment convertir du code d’initialisation Direct3D 9 en Direct3D 11, notamment comment obtenir des handles vers le périphérique Direct3D et le contexte de périphérique, et comment utiliser DXGI pour configurer une chaîne d’échange.

Convertir l’infrastructure de rendu

Montre comment convertir une infrastructure de rendu simple de Direct3D 9 à Direct3D 11, notamment comment porter des tampons de géométrie, comment compiler et charger des programmes de nuanceurs HLSL et comment implémenter la chaîne de rendu dans Direct3D 11.

Porter la boucle de jeu

Montre comment implémenter une fenêtre pour un jeu du Windows Store ou Windows Phone, et comment récupérer la boucle de jeu, notamment comment créer une interface IFrameworkView pour contrôler une classe CoreWindow en plein écran.

 

Cette rubrique examine progressivement deux chemins de code qui effectuent la même tâche graphique de base : afficher un cube en forme de vertex qui tourne. Dans les deux cas, le code couvre le processus suivant :

  1. Création d’un périphérique Direct3D et d’une chaîne d’échange.
  2. Création d’une mémoire tampon de vertex et d’un tampon d’index pour représenter un maillage de cube en couleur.
  3. Création d’un nuanceur de vertex qui transforme les vertex en espace d’écran, d’un nuanceur de pixels qui fusionne les valeurs de couleurs, compilation des nuanceurs et chargement des nuanceurs en tant que ressources Direct3D.
  4. Implémentation de la chaîne de rendu et présentation du cube dessiné à l’écran.
  5. Création d’une fenêtre, démarrage d’une boucle principale et traitement des messages de fenêtre.

À l’issue de cette procédure pas à pas, vous devrez connaître les différences élémentaires suivantes entre Direct3D 9 et Direct3D 11 :

  • Séparation du périphérique, du contexte de périphérique et de l’infrastructure graphique.
  • Processus de compilation des nuanceurs et chargement du bytecode de nuanceur au moment de l’exécution.
  • Manière de configurer des données par vertex pour le stade d’assembleur d’entrée (stade IA).
  • Manière d’utiliser un IFrameworkView pour créer un affichage CoreWindow.

Notez que cette procédure pas à pas utilise CoreWindow pour des raisons de simplicité, et ne couvre pas l’interopérabilité XAML.

Conditions préalables

Vous devez préparer votre environnement au développement de jeux DirectX du Windows Store. Vous n’avez pas encore besoin de modèle, mais Microsoft Visual Studio 2013 est nécessaire pour charger les exemples de code de cette procédure pas à pas.

Téléchargez l’exemple de portage simple de Direct3D 9 vers DirectX 11 et le Windows Store. Cet exemple inclut les chemins de code Direct3D 9 et du Windows Store présentés dans cette procédure pas à pas. Même si cet exemple utilise une application du Windows Store, les concepts de portage décrits sont applicables également aux applications Windows Phone.

Accédez aux concepts et considérations liés au portage pour mieux comprendre les concepts de programmation DirectX 11 et du Windows Store présentés dans cette procédure pas à pas.

Rubriques associées

Direct3D
Développement pour différents niveaux de fonctionnalités Direct3D
Écriture de nuanceurs HLSL dans Direct3D 9
Créer un projet DirectX 11 pour le Windows Store
Windows Store
Microsoft::WRL::ComPtr
Handle to Object Operator (^)

 

 

Afficher:
© 2014 Microsoft