Un «XBox 360 Project» XNA fonctionnera-t-il également sous Windows?

12

Je comprends qu'un projet XNA pour XBox 360 utilisera une version spécialisée du .NET Compact Framework. Mais disons que je veux sortir pour XBox 360 et Windows.

La version XBox (utilisant un cadre compact) fonctionnera-t-elle toujours si elle est distribuée pour Windows, ou aurais-je besoin de reconstruire par rapport au cadre standard (ou non-CF CF) afin de distribuer?

CodexArcanum
la source

Réponses:

15

Oui, différentes plates-formes exécutent différents temps d'exécution .net.

La façon dont cela fonctionne dans xna 3 / 3.1 / 4 est que vous créez votre projet de jeu pour une seule plate-forme (par exemple, créez un nouveau projet de jeu Windows Xna dans Visual Studio). Dans l'explorateur de solutions de Visual Studios, cliquez avec le bouton droit sur le projet, puis choisissez «Créer une copie du projet pour X», où x est la plate-forme que vous souhaitez cibler pour le nouveau projet. C'est à peu près tout ce qu'il y a à faire. créer une copie du projet

Ces deux projets sont synchronisés, tout ce que vous ajoutez à l'un apparaîtra dans l'autre. Utilisez les blocs #if WINDOWS ou #if XBOX ou #if WINDOWS_PHONE pour ajouter du code spécifique à une seule plateforme.

Cubed2D
la source
Ahh, c'est pourquoi les exemples de projets contiennent "Copy of X". Je supposais qu'il ne s'agissait que de copies manuelles, je ne savais pas que XNA + VS automatisait cela. Très utile! Et l'image montre où l'option est très bien. Il semble qu'il serait préférable de commencer par un projet XBox et de faire une copie Windows si je prévois une sortie sur les deux dès le début.
CodexArcanum
L'identification personnelle démarre toujours à partir d'un projet Windows, c'est plus facile à déboguer sur Windows et vous obtenez des outils comme perf hud et pix. Peu importe dans quelle direction vous le faites, mais faire de cette façon renforce en quelque sorte l'idée de la plate-forme de développement principale c, mais testez tôt et souvent sur 360.
Cubed2D
3

Vous devez reconstruire pour Windows. Il existe un outil pour automatiser le processus de conversion des projets Visual Studio. Depuis que vous avez commencé sur le 360 ​​et le framework compact, vous devriez être d'accord. Dans l'autre sens, vous pouvez rencontrer des problèmes dans lesquels vous utilisez des fonctionnalités du framework .Net qui ne sont pas prises en charge par le framework compact.

Les documents contiennent une section sur les différences entre les deux (par exemple, vous ne pouvez pas définir l'affinité du processeur sous Windows). Si vous publiez réellement votre jeu sur le PC, vous pourriez rencontrer des problèmes de compatibilité. Par exemple, votre format de tampon de rendu peut ne pas être pris en charge ou vos shaders peuvent ne pas être compilés. C'est la malédiction du développement PC et non spécifique à XNA.

Chris Howe
la source
Ravi de savoir que je pourrais également rencontrer des problèmes de shader ou de tampon sur PC. J'ai supposé que XNA cachait la plupart de ces petits détails mais je suppose que certains se glissent encore.
CodexArcanum
Oui, le matériel PC est extrêmement varié. Mais j'ai trouvé que la bizarrerie de la Xbox est plus difficile à prendre en compte que les fonctionnalités du matériel graphique grand public moderne. C'est une norme lâche, je sais :)
Seth Battin