Prise en main de XNA

Prise en main de XNA

Télécharger l’EDI et XNA

Si l’EDI Microsoft Visual C# Express 2008 et le framework ne sont pas déjà sur votre ordinateur, voici la procédure à suivre pour vous en équiper : 1. Téléchargez Microsoft Visual C# Express 2008 en vous rendant à cette adresse : http://www.microsoft.com/express/download/ Figure 2-1 Téléchargement de Microsoft Visual C# Express 2008  Développement XNA pour la XBox et le PC  2. Une fois le fichier téléchargé, exécutez-le pour démarrer l’installation. 3. Il ne reste plus qu’à télécharger et installer XNA en vous rendant sur le site officiel à cette adresse : http://creators.xna.com/en-us/xnags_islive Partir d’un starter kit En général, les starter kits sont des projets de jeux prêts à l’emploi et à compiler. Ils sont faciles à modifier et constituent une bonne base pour vos projets : vous pouvez analyser leur code source, en utiliser une partie dans vos jeux et le modifier. Penchons-nous sur celui livré avec XNA 3.0 : 1. Ouvrez Visual Studio. 2. Cliquez sur Fichier puis Nouveau projet. 3. Dans la section XNA Game Studio 3.0, sélectionnez Platformer Starter Kit (3.0). 4. Validez. Dans l’explorateur de solutions situé à droite de l’écran, vous trouvez trois projets : un pour Windows, un pour la Xbox 360 et le dernier pour Zune. Figure 2-2 Création d’un projet basé sur un starter  Appuyez sur F5 pour lancer la compilation du projet sélectionné par défaut (ici, le projet Platformer). Le petit jeu qui s’ouvre alors est un bon exemple de ce que vous pouvez facilement réaliser avec XNA : afficher des graphismes, déclencher des sons et enchaîner plusieurs niveaux. D’autres starter kits sont disponibles et téléchargeables sur le site Internet de la communauté d’XNA : http://creators.xna.com/en-US/education/starterkits/ Jeux de rôles, shoot’em up, jeux de course et puzzles : il suffit de jeter un œil à la liste des kits pour voir que les possibilités de créations avec XNA sont presque illimitées ! Nous vous conseillons de prendre le temps d’explorer plus en détail les kits, et notamment de regarder leur code. Vous reconnaîtrez sûrement les facettes du langage abordées dans le chapitre précédent, mais certaines parties du code vous sembleront au contraire obscures : ceci est tout à fait normal pour le moment. Cependant, revenir sur les kits plus tard peut Zune Zune est le lecteur multimédia de Microsoft, concurrent de l’iPod d’Apple. Depuis la version 3.0 d’XNA, il est possible de développer des jeux sur cette plate-forme. Toutefois, sachez qu’à l’heure où nous écrivons ces lignes, Zune est commercialisé uniquement aux ÉtatsUnis et qu’aucune date officielle n’a été annoncée pour une éventuelle apparition sur le marché français. Figure 2-3 Le jeu est agréable à jouer.  Développement XNA pour la XBox et le PC 28 être intéressant et très instructif, ne serait-ce que pour comparer vos méthodes de programmation avec celle d’un autre développeur, ou encore pour savoir comment telle ou telle partie du jeu a été réalisée. Partager ses projets Les starter kits restent des projets assez simples et leur vocation est essentiellement didactique. La plupart d’entre eux sont basés sur des jeux en 2D. Mais rassurez-vous, il est tout à fait possible de réaliser des jeux en 3D avec XNA. Pour vous en convaincre, il vous suffit de faire un petit tour sur le site de la communauté (http://creators.xna.com/en-US/) et de vous intéresser aux projets des autres membres. En effet, sur ce site, vous pourrez parcourir le catalogue des jeux développés par des amateurs, des développeurs patentés, voire des studios indépendants. Vous pourrez également visualiser des vidéos de présentation et même en acheter certains Nous conseillons vivement de vous y inscrire et de participer aux forums de discussion, car c’est le meilleur endroit pour obtenir de l’aide sur XNA et, d’une manière générale, sur la programmation de jeux. Figure 2-4 Le catalogue de jeux disponible sur le site de la communauté  Vous aurez sûrement envie de partager vos projets. Ceci est intéressant à plusieurs titres : vous pourrez ainsi présenter vos créations à vos amis, mais surtout, vous récolterez par ce biais les avis et conseils des autres développeurs. Avec la sortie de XNA 3.0, la possibilité de vendre ses jeux sur le Xbox Live est apparue. Votre jeu est alors disponible sur le Xbox Live Market pour quelques centaines de points Microsoft. Les détails sont disponibles sur le site Internet de la communauté (http://creators .xna.com/). Une autre solution pour faire connaître vos talents de développeur et vous frotter aux autres afin de progresser est de participer aux concours de programmation XNA. Citons par exemple l’Imagine Cup, organisé chaque année par Microsoft et possédant une catégorie intitulée Game Development, dont les finalistes gagnent plusieurs milliers de dollars (http://imaginecup.com). L’architecture d’un projet XNA Dans cette partie, nous allons d’abord nous intéresser aux différents éléments du framework, puis nous nous pencherons sur les différentes méthodes qui composent le cycle de vie d’un jeu vidéo sous XNA. Structure du framework Le framework XNA comporte essentiellement trois parties, chacune correspondant à une DLL (Dynamic Link Library, c’est-à-dire une bibliothèque de fonctions) : • le moteur graphique (Microsoft.XNA.Framework.dll), qui contient tout qu’il faut pour gérer l’affichage dans votre jeu ; • le modèle d’application d’un jeu (Microsoft.XNA.Framework.Game.dll), que nous détaillerons dans la section « Structure du code » ; • et le content pipeline (Microsoft.XNA.Framework.Content.Pipeline.dll), utile à la gestion des ressources (texture, son, etc.) du jeu. Les fonctions contenues dans ces bibliothèques font appel à des fonctions de DirectX de plus bas niveau, c’est-à-dire qu’à une ligne de code utilisant le framework XNA correspondent plusieurs lignes de code utilisant directement DirectX. Dans Visual Studio, vous pouvez voir à quelles bibliothèques votre projet est lié dans la section References de l’explorateur de solutions. Structure du code Le déroulement d’un jeu sous XNA est le suivant : les méthodes Initialize() et LoadContent() sont appelées en premier puis, tant que le joueur ne quitte pas le jeu, les méthodes Update() et Draw() sont exécutées en boucle ; enfin, lorsque le joueur quitte le jeu, la méthode UnloadContent() est appelée. La liste ci-dessous détaille les différentes actions à effectuer dans chacune de ces cinq méthodes. • Initialize – Comme son nom l’indique, c’est dans cette méthode que se font tous les réglages de base : instanciation d’un objet, chargement de paramètres, etc. • LoadContent et UnloadContent – Si vous suivez le modèle d’application proposé par Microsoft, c’est ici que vous chargerez ou déchargerez vos ressources. Cependant, certains programmeurs ont tendance à réaliser ce travail avec la méthode Initialize(). • Update – Cette méthode fait partie de la boucle de jeu. D’après le modèle d’application proposé par Microsoft, c’est ici que vous devrez effectuer toutes les opérations dites logiques, c’est-à-dire tout ce qui ne concerne pas l’affichage à l’écran. • Draw – Cette dernière méthode, qui fait également partie de la boucle de jeu, est appelée à chaque fois que l’écran de jeu est mis à jour. Vous devrez donc y écrire uniquement du code utile à l’affichage. Souvenez-vous que la séparation du code entre les méthodes Update() et Draw() n’est absolument pas obligatoire. Il s’agit d’une proposition de design faite par les créateurs d’XNA afin que les développeurs utilisant XNA puissent facilement récupérer des composants créés par d’autres et mettre les leurs à disposition (les composants seront abordés au chapitre 4). Nous suivrons cette recommandation dans ce livre, le modèle étant très simple à comprendre et le code créé très bien organisé de cette manière.

Formation et coursTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *