Comment apprendre XNA

XNA est une plate-forme de développement de jeux de Microsoft permettant de créer des jeux pour Windows, Xbox 360 et Windows Phone. Dans cet article, nous allons partager des livres, des tutoriels et des suggestions pour apprendre le plus en douceur possible XNA..

Intéressé par d'autres plateformes gamedev? Consultez également nos guides pour apprendre Unity ou Flash!

Qu'est-ce que XNA??

XNA (à l'origine "Xbox New Architecture", maintenant simplement "XNA's Not Acronymed") est un ensemble d'outils de développement de jeux .NET, qui s'exécutent sous Windows - désolé, les utilisateurs de Mac et de Linux. Les jeux créés avec XNA peuvent être exécutés sur Windows, Xbox 360 et Windows Phone 7, avec d'autres projets tels que MonoXNA et MonoGame qui tentent de transférer les jeux sur d'autres plateformes..

Les outils XNA sont eux-mêmes gratuits. Vous pouvez vendre vos jeux moyennant des frais annuels via les jeux indépendants Xbox Live (à condition qu’ils passent l’évaluation par les pairs) et le marché Windows Phone 7. (Si vous êtes étudiant, vous pouvez obtenir gratuitement un abonnement d'un an aux jeux Xbox Live indépendants.) Les jeux Windows construits avec XNA peuvent être vendus comme des jeux Windows conçus avec d'autres outils. Il n'existe pas de marché officiel pour les jeux XNA..

Étant donné que XNA Framework est basé sur .NET, tout langage .NET peut techniquement être utilisé pour créer des jeux, même si seuls C # et Visual Basic.NET sont officiellement pris en charge..

La dernière version de XNA, 4.0, a été publiée en septembre 2010 et a été actualisée en octobre 2011. Elle est donc bien mature et dispose de nombreuses ressources. Aucune annonce de la version 5.0 n'a été annoncée. Vous n'avez donc pas à vous soucier d'apprendre XNA 4.0 uniquement pour que vos connaissances deviennent immédiatement obsolètes..


Installer XNA

Comme mentionné ci-dessus, les outils XNA ne sont officiellement pris en charge que par Windows..

Le site officiel de XNA est plutôt déroutant, à savoir le hub d'applications MDSN, dont la page de téléchargement est très axée sur Windows Phone. Ce qu'il faut télécharger pour savoir si vous souhaitez développer des jeux XNA pour Xbox ou sur un ordinateur n'est pas vraiment clair..

Cependant, c'est en réalité simple: il suffit de télécharger et d'installer le kit de développement logiciel Windows Phone 7.1, qui contient tous les logiciels et outils nécessaires pour développer XNA pour Windows Phone, Xbox ou Desktop..

Le téléchargement inclut Visual Studio Express 2010, mais si vous disposez déjà d'une meilleure version de Visual Studio 2010, vous pouvez télécharger et installer les outils XNA séparément: XNA Game Studio 4.0 et XNA Game Studio 4.0 Refresh.

Vous voudrez peut-être aussi acheter un contrôleur Xbox 360 sur votre PC à des fins de test, bien que cela soit facultatif..


Le tutoriel officiel

MSDN App Hub propose un didacticiel d’introduction (partie vidéo, partie écrite) qui vous guide tout au long de la création d’un jeu de tir simple. Il dure environ 90 minutes, mais vous pouvez vous attendre à passer quelques heures à le terminer vous-même. Il utilise le C #, que je vous recommanderais comme langage XNA même si vous connaissez déjà un autre langage .NET..

Une fois que vous avez terminé, essayez de changer quelque chose: l'œuvre d'art, la vitesse des ennemis, la fréquence d'apparition des ennemis, la puissance des balles… Vous pouvez même essayer de faire un boss qui prend plusieurs coups! Ce genre de jeu vous aidera à voir ce que vous comprenez et ce sur quoi vous devez travailler..

D'autres tutoriels, articles et exemples de code source sont disponibles dans le catalogue de contenu App Hub. Encore une fois, il peut être amusant de prendre quelque chose et de creuser dans le code pour voir si vous pouvez changer son fonctionnement ou ajouter une nouvelle fonctionnalité..

Soi-disant, ce tutoriel est destiné aux personnes qui débutent complètement dans le développement de jeux et ne nécessite aucune connaissance préalable de la programmation. Cependant, après l'avoir suivi moi-même, je soupçonne que si vous n'avez pas déjà une expérience en C # (ou un langage similaire comme Java ou AS3), vous serez surpris..

Alors, considérez ce tutoriel comme un test: si vous sentez que vous n'avez pas vraiment compris ce qui se passait, ne vous inquiétez pas, cela signifie simplement que vous devez apprendre à coder ...


Apprentissage c #

Si vous voulez faire des jeux avec XNA, vous devrez apprendre à programmer. Plutôt que d'essayer d'apprendre à programmer et apprendre le développement de jeux XNA en même temps, il est plus facile de se lancer seul dans la programmation. Oui, cela signifie construire des choses qui ne sont pas des jeux, mais cela vous aidera à créer des jeux à long terme..


Head First C #

Head First C # est un excellent livre pour commencer. C'est une approche amusante. les auteurs utilisent en fait les leçons apprises des concepteurs de jeux pour structurer le livre.

Si vous avez faim après cela, procurez-vous une copie d'Essential C # 4.0. Ce que vous apprendrez de Head First C # est probablement suffisant pour vous permettre de vous lancer dans le développement de jeux XNA; Essential C # vous aidera à affûter la scie et à devenir un meilleur programmeur C #.

Il est pratique d'avoir une référence pour rechercher des mots clés inconnus (comme un dictionnaire pour les programmeurs). La référence MSDN C # convient pour cela, mais si vous voulez quelque chose de physique, procurez-vous une copie de la référence de poche C # 4.0..

Essayez à nouveau le didacticiel XNA officiel après vous être familiarisé avec le langage C # - cela aura tellement plus de sens!


Livres XNA

Bon, vous comprenez donc C # - ou du moins, vous comprenez un langage de programmation similaire. Génial! Il est temps de plonger dans XNA et de commencer à créer des jeux.

Il existe deux excellents choix pour votre premier livre XNA et ils supposent tous les deux que vous connaissez déjà le C #. Choisissez celle dont vous préférez l'approche (ou obtenez les deux!).

Learning XNA 4.0 est une introduction à XNA qui adopte une approche assez théorique. Il enseigne le développement de jeux en 2D, puis en 3D, dans le cadre de la construction de jeux. Une partie de ce livre est consacrée à l’exportation de vos jeux vers Windows Phone 7 et Xbox..

Le développement de jeux XNA 4.0 par exemple adopte une approche plus pratique ou fonctionnelle, expliquant XNA en vous montrant comment créer quatre jeux distincts. En plus de vous enseigner de nouveaux concepts, le livre vous aide à créer des jeux..

Si vous voulez aller plus loin après avoir lu l’un ou l’autre, consultez la programmation de XNA Game Studio 4.0. Cela va beaucoup plus loin dans XNA et contient du matériel avancé que vous devrez savoir si vous voulez être un développeur XNA sérieux. Ne vous sentez pas obligé de vous précipiter pour l'acheter, cependant; se familiariser avec les bases, d'abord.


Tutoriels sur le Web

Les didacticiels XNA en ligne ne manquent pas, mais ces sites proposent les guides les plus complets:

  • Didacticiels XNA de RB Whitaker: Ce site propose un grand nombre de didacticiels XNA, classés par sujet dans une hiérarchie - ils ont donc une structure, mais vous avez le choix entre l'ordre dans lequel vous les faites..
  • Blog de Shawn Hargreaves: Shawn Hargreaves est l’un des concepteurs de XNA. Il n’est donc pas surprenant qu’il ait une compréhension approfondie de la plate-forme. La plupart de ses publications, mais pas toutes, sont des tutoriels. Il y a aussi une liste classée de messages.
  • Didacticiels XNA 2D et 3D de Riemer: Riemer propose une série sur la fabrication de tireurs en 2D et quatre séries sur la création de jeux en 3D, réparties en 89 didacticiels individuels. Comme il le dit si bien, "l'objectif principal de ces didacticiels XNA est de produire de jolis résultats dans les meilleurs délais."
  • XNA Game Programming Adventures: Ce site propose une courte série de tutoriels sur la construction d'un jeu de casse-briques destiné aux débutants, ainsi qu'une énorme série (plus de 30 parties!) Sur la construction d'un RPG, destinée à des développeurs plus expérimentés..
  • Blog de Catalin: Catalin Zima propose d'excellents tutoriels sur les textures de vertex, le rendu différé et le rendu de la fourrure dans XNA..

Vous voulez encore plus? Découvrez le kit de survie 2 du développeur XNA de Nelxon Studio, qui répertorie un grand nombre de ressources sur tous les sujets relatifs à XNA..

Si vous avez besoin de matériel de référence, consultez la bibliothèque MSDN sur XNA. Pour les questions et réponses, il y a toujours Game Development Stack Exchange - jetez un coup d'œil aux questions précédemment posées marquées XNA 4.0.


Faire des jeux

Ceci est juste un conseil général: pour votre premier jeu, ne créez pas quelque chose de complexe, comme un MMO, ou quelque chose qui nécessite d'énormes quantités d'illustrations et d'histoires comme un RPG. Commencez avec quelque chose de simple que vous pourrez peut-être développer plus tard. Par exemple: un jeu à un seul bouton comme Canabalt pourrait être étendu pour créer un jeu de plateforme; un clone de Pong pourrait être transformé en un jeu de casse-briques à plusieurs niveaux; un jeu d'évitement pourrait devenir un clone des envahisseurs de l'espace et ensuite un shoot-'em-up à part entière.

Ne vous inquiétez pas non plus pour l’apprentissage de techniques de programmation avancées; vous aurez le temps de vous familiariser plus tard avec les modèles de conception et l'architecture générale du code. Concentrez-vous sur la finition de certains jeux, même si vos premiers ne seront que petits.


Un grand merci à Stéphane Beniak et Michael Hoffman de NullCandy pour leurs recommandations! Consultez leurs didacticiels XNA et recherchez-en de nouveaux ici à Gamedevtuts + bientôt.

Si vous avez des suggestions concernant des ressources d’apprentissage XNA que nous avons manquées, veuillez nous en informer dans les commentaires. N'oubliez pas de consulter également nos autres guides Comment apprendre!