Будет ли XNA «XBox 360 Project» работать на Windows?

12

Я понимаю, что в проекте XNA для XBox 360 будет использоваться специализированная версия .NET Compact Framework. Но скажем, я хочу выпустить как для XBox 360, так и для Windows.

Будет ли версия XBox (с использованием компактного фреймворка) работать, если она распространяется для Windows, или мне нужно будет перестроить ее на основе обычного фреймворка (или не-Xbox CF) для распространения?

CodexArcanum
источник

Ответы:

15

Да, на разных платформах работают разные среды .net.

В xna 3 / 3.1 / 4 это работает так, что вы создаете свой игровой проект для одной платформы (например, создаете новый игровой проект для Windows Xna в visual studio). В Visual Studio 'Solution Explorer', щелкните правой кнопкой мыши проект и выберите «Создать копию проекта для X», где x - это платформа, на которую вы хотите ориентировать новый проект. Вот и все, что нужно сделать. создать копию проекта

Эти два проекта синхронизированы, все, что вы добавите в один, будет отображаться в другом. Используйте #if WINDOWS или #if блоки XBOX или #if WINDOWS_PHONE, чтобы добавить код, специфичный для отдельной платформы.

Cubed2D
источник
Ааа, вот почему в примерах проектов есть «Копия Х». Я предполагал, что это были просто ручные копии, я не знал, что XNA + VS автоматизировал это. Очень полезный! И картина демонстрирует, где вариант очень красиво. Похоже, было бы лучше начать с проекта XBox и сделать копию для Windows, если я планирую выпустить обе версии с самого начала.
CodexArcanum
Персональный идентификатор всегда начинается с проекта Windows, его легче отлаживать в Windows, и вы получаете такие инструменты, как perf hud и pix. Неважно, в какую сторону вы это делаете, но это наоборот укрепляет идею платформы c main dev, но тестируйте рано и часто на 360.
Cubed2D 22.10.10
3

Вам нужно пересобрать под Windows. Существует инструмент для автоматизации процесса конвертации визуальных студийных проектов. Так как вы начали на 360 и компактной конструкции, у вас должно быть все в порядке. Если пойти другим путем, вы можете столкнуться с проблемами, когда вы используете функции .Net Framework, которые не поддерживаются компактной средой.

Документы содержат раздел о различиях между ними (например, вы не можете установить привязку процессора в Windows). Если вы действительно выпускаете свою игру на ПК, вы можете столкнуться с проблемами совместимости. Например, ваш формат буфера рендеринга может не поддерживаться или ваши шейдеры могут не скомпилироваться. Это проклятие разработки ПК, хотя и не специфичное для XNA.

Крис Хоу
источник
Приятно осознавать, что у меня могут возникнуть проблемы с шейдером или буфером на ПК. Я предполагал, что XNA скрывает большинство этих маленьких деталей, но я предполагаю, что некоторые все еще проскальзывают.
CodexArcanum
Да, аппаратное обеспечение ПК сильно различается. Но я обнаружил, что причуды xbox сложнее объяснить, чем возможности современного массового графического оборудования. Это свободный стандарт, я знаю :)
Сет Бэттин