EDIT: C'est officiel, Microsoft a tué XNA . Je suis attristé par cela, mais ce n'était pas inattendu, c'est ce que je prédisais arriverait, mais en espérant que j'avais tort. Tout ce qui se trouve en dessous de ce point correspond à mon article original du début de 2012.
Un autre élément à prendre en compte est que Microsoft est susceptible de publier une nouvelle console entre le milieu et la fin de 2013. tentera-t-il de faire en sorte que quelque chose comme XNA fonctionne sur leur console? S'ils veulent que les utilisateurs fassent des jeux sur la nouvelle Xbox, ils auront besoin de quelque chose et il serait inutile de supprimer XNA et de recommencer à zéro avec autre chose. En outre, Windows 8 fonctionnera sur des tablettes dotées de processeurs ARM, et nous savons tous à quel point le marché des applications pour téléphones et tablettes est important. Pour Microsoft, il est donc tout à fait possible de disposer d'une API permettant de créer des applications sur ces périphériques. XNA ou seulement .NET?
Je vois quelques chemins potentiels:
XNA n'a pas connu beaucoup de succès avec la Xbox actuelle, principalement en raison du nombre peu important de jeux XNA et de la configuration médiocre du magasin pour les jeux XNA sur Xbox Live. Microsoft peut donc décider de débrancher entièrement le câble, nous laissant avec XNA 4.0, compatible avec DX10, qui constituera une plate-forme décente pour créer des jeux PC simples pendant quelques années avant sa disparition.
Microsoft peut voir les énormes possibilités offertes par les applications personnalisées, comme l'App Store d'Apple, générant beaucoup d'argent, et si Microsoft peut faciliter la création de jeux et les intégrer aux tablettes Xbox Live et Windows 8, ils auront alors la chance de réussir. sur le marché des applications de console. Si Microsoft s'engage dans cette voie, je vois la nouvelle version de XNA prenant en charge DX11.1 dans sa prochaine version, ainsi que la poursuite de la prise en charge de XNA pendant au moins 5 ans.
Quelques points à considérer:
Actuellement, avec XNA, vous devez débourser 100 USD si vous souhaitez développer votre jeu pour la Xbox 360, c'est 100 USD seulement pour l'essayer et voir si vous pouvez gagner de l'argent. Même dans ce cas, MS tire une partie des bénéfices de votre jeu. Si Microsoft supprime les frais de 100 $ et ne récupère que la plus grande partie des bénéfices, il se peut qu'ils voient beaucoup plus de jeux et engrangent plus d'argent.
Les jeux XNA ont des problèmes de performances sur la Xbox 360. Microsoft ne voulait pas que les jeux XNA posent un risque pour la sécurité lorsqu'ils s'exécutaient sur la Xbox d'autres personnes. Ils ont donc exécuté ces jeux dans un sandbox avec un accès limité au processeur, au processeur graphique et à la mémoire. En plus de l'accès limité, les jeux programmés sur le Kit de développement Xbox SDK complet ne sont pas écrits en C # et ne nécessitent pas de tâches telles que le garbage collection, mais XNA s'exécute sur le propre C # de Microsoft. Microsoft a donc dû écrire un wrapper pour que XNA s'exécute sur le Xbox, et cet emballage ralentit un peu les choses. Des performances telles que les performances en virgule flottante peuvent être jusqu'à 10 fois plus lentes que les jeux Xbox écrits avec le SDK complet. Ces problèmes de performances signifient que les jeux Xbox développés par XNA ne peuvent pas vraiment exploiter tout le potentiel de la Xbox. ce qui nuit à la qualité des jeux que Microsoft peut obtenir de la communauté. Microsoft ferait bien de prendre cela en considération s’ils continuent avec XNA afin que leur prochaine console permette aux développeurs XNA d’utiliser le système à son plein potentiel.
Pour autant que je sache, XNA ne supportera pas le style de métro de Windows 8, les développeurs ne pourront donc pas écrire de jeux pour en tirer parti. XNA ne fonctionnera pas non plus sur les processeurs ARM. Par conséquent, vous ne pouvez pas utiliser XNA pour écrire des applications pour tablettes Windows 8 qui seront bientôt disponibles. Est-ce un signe que XNA pourrait ne plus être pris en charge à l'avenir?
Microsoft utilise actuellement XNA pour les jeux, mais avec un peu de travail, il pourrait également être utilisé pour créer des applications intéressantes. Si Microsoft poussait XNA vers des communautés autres que les développeurs de jeux, il pourrait s'utiliser plus souvent et donner davantage de raisons à Microsoft de continuer à le prendre en charge.
Les forums XNA sont un peu taris, il faut plus de temps pour obtenir des réponses, et je ne vois plus aucun membre de l'équipe XNA sur les forums, à l'exception de Shawn Hargreaves, qui peut donc simplement jouer un rôle de soutien.
J'ai créé et pris en charge un moteur de jeu open-source pour XNA. Au cours des deux dernières années, le nombre de téléchargements du moteur a été réduit à environ la moitié de ce qu'il avait commencé, même si le moteur était bien meilleur qu'avant. Cela signifie que beaucoup moins de personnes utilisent XNA que d’habitude. Voici un graphique du nombre de visites que j'ai sur mon site. Vous pouvez constater que l'intérêt pour XNA a atteint son apogée entre la fin de 2007 et le milieu de 2008.
Voici une longue discussion qui inclut certains membres de l’équipe XNA. Bien sûr, ils ne sont pas disposés à commenter beaucoup car Microsoft ne parle pas beaucoup de choses avant leur annonce:
http://xboxforums.create.msdn.com/forums/t/91616.aspx
Des citations comme celle-ci sont également intéressantes:
Créez des jeux immersifs en utilisant la puissance de DirectX La nouvelle pile graphique de Windows 8 est mieux intégrée, ce qui facilite l'utilisation des composants Direct2D, Direct3D et DirectCompute ensemble et nécessite moins de ressources dupliquées qu'auparavant. Les fonctionnalités auparavant disponibles uniquement dans XNA, telles que DirectXMath, XAudio2 et XInput, sont désormais disponibles. Pour une expérience ultime du jeu et de la vidéo, utilisez DirectX 11.1 pour intégrer la 3D stéréoscopique à vos applications.
http://download.microsoft.com/download/1/E/4/1E455D53-C382-4A39-BA73-55413F183333/Windows_Developer_Preview-Windows8_guide.pdf
Je supporte actuellement un moteur de jeu open-source pour XNA, je préférerais donc qu'il soit supporté à l'avenir. Toutefois, même si XNA 4.0 est le dernier XNA, il s'agit toujours d'une plate-forme appropriée pour créer rapidement et facilement des jeux Windows. une excellente API pour ceux qui veulent apprendre à créer des jeux vidéo.
Mon opinion honnête est que XNA 4.0 sera le dernier, mais j'espère vraiment que je me trompe à ce sujet.