netlib.narod.ru< Назад | Оглавление | Далее >

Получение XNA Game Studio Express

Чтобы начать программировать, надо убедиться, что установлены необходимые инструменты, самый важный из которых — интегрированная среда разработки (IDE). Если XNA Game Studio Express у вас уже установлена и настроена, можете пропустить этот раздел. Он был написан для тех, кто нуждается в дополнительных подсказках. Например, здесь рассказывается, как заставить XNA работать совместно с Visual Studio 2005 Professional, что по умолчанию не поддерживается, но может быть полезно, если вы хотите использовать подключаемые модули Visual Studio или такие инструменты, как SourceSafe (например, для лучшей работы команды).

Требования

Во время написания этой книги XNA Game Studio Express предназначалась только для Windows XP SP2 (SP означает Service Pack). SP2 необходим потому что требуется .NET Framework версии 2.0. Windows 2003 и Windows Vista также используют .NET 2.0, но официально не поддерживаются. Кроме того, XNA тестировалась только на 32-разрядных платформах, но я проверял ее в Windows XP x64 и Windows Vista и все замечательно работало, в том числе и в качестве платформы разработки.

Поскольку XNA Game Studio Express базируется на Visual C# Express, основные требования у них одинаковы. Вам нужен достаточно средний компьютер. Но для разработки игр требования к нему будут чуть выше, о чем я вскоре расскажу. Visual C# Express работает в системах Windows 2000 SP4, Windows XP SP2, Windows 2003 SP1, Windows XP x64 и Windows Vista. Как видите, чем старее операционная система, тем больше пакетов обновлений ей нужно.

И, наконец, вам нужны самые последние библиотеки времени выполнения DirectX (DirectX Runtime), а если вы серьезно задумываетесь о разработке игр, лучше установить полный DirectX SDK. Вообще то DirectX SDK для XNA Game Studio Express не требуется, поскольку библиотеки XNA просто обращаются к нижележащим библиотекам DirectX, но лишняя документация никогда не помешает и, кроме того, DirectX SDK содержит множество примеров и обучающих материалов к которым можно обращаться при возникновении проблем. Например, DirectX SDK содержит утилиту для создания текстур в формате DDS, являющимся на данный день наиболее оптимизированным форматом текстур для современных видеокарт.

Поскольку XNA, в отличие от DirectX или DirectX для управляемого кода, вообще не поддерживает фиксированный конвейер функций, очень важно, чтобы ваша видеокарта поддерживала модель шейдеров версии 1.1, или, что еще лучше, версии 2.0. Первые видеокарты с поддержкой шейдеров появились в 2001 году (GeForce 3 и ATI 7000); следующее поколение с моделью шейдеров 2.0 (GeForce 5x и серия ATI 9x00) появились в 2003 году и стали популярными с выходом активно использующих шейдеры игр в 2004 (Far Cry, Doom 3, Half Life 2). Модель шейдеров версии 3.0 является стандартом сегодня (GeForce 6x и серия ATI x1000), а новые видеокарты с поддержкой модели шейдеров 4.0 (GeForce 8x) появились в 2007 году. Xbox 360 использует расширенную версию модели шейдеров 3.0.

Итак, вот что нам необходимо чтобы попытаться установить XNA Game Studio Express:

Установка

Последнюю версию XNA Game Studio Express можно бесплатно получить по адресу http://msdn.microsoft.com/directx/xna/.

Текущая версия требует, чтобы вы сначала установили Visual C# Express и последнюю версию DirectX 9.0c; вероятно, все останется также и в последующих версиях. Все эти программы можно скачать абсолютно бесплатно и действительно здорово, что мы получаем столько инструментов не обращаясь к кошельку. Это позволяет многим людям, особенно студентам, любителям и обычным игрокам, посмотреть на среду разработки и, возможно, присоединиться к разработчикам игр.

Если вам потребуется пошаговое руководство к процессу установки, можете просмотреть мой видеоурок, который я сделал для XNA Starter Kit Racing Game, доступный на сайте http://www.xnaracinggame.com.

Запустите установку XNA Game Studio Express (рис. 1.7). Здесь нет никаких специальных вариантов; программа установки все сделает за вас (например, добавит правила межсетевого экрана для тестирования на Xbox 360). Кроме того, программа установки скопирует контекстную систему помощи XNA, набор для начинающего разработчика и шаблоны проектов.


Рис. 1.7

Рис. 1.7


Вам не нужен DirectX SDK, но, как упоминалось ранее, я все же рекомендую установить его. Это даст вам дополнительную документацию и замечательные уроки и примеры, которые пригодятся, если вам потребуется дополнительная информация о техниках для вашего графического движка.

DirectX можно загрузить со страницы Microsoft DirectX Developer Center, находящейся по адресу http://msdn.microsoft.com/directx/.

В списке устанавливаемых компонентов DirectX помимо прочего вы должны отметить компонент Redistributable. Это необходимо, если вы планируете устанавливать вашу игру на другие компьютеры. После установки DirectX вы можете ознакомиться с его новыми возможностями, просмотрев примеры с помощью DirectX Sample Browser. Если вы раньше не работали с DirectX для управляемого кода, и вас интересует эта тема, обратитесь к документации и урокам.

Если вы хотите использовать игровой пульт от Xbox 360 на вашем компьютере с Windows (это можно сделать, благодаря тому, что для подключения контроллера используется обычный интерфейс USB), просто подключите контроллер к компьютеру и он будет замечательно работать в Windows XP и Vista после автоматической установки необходимых драйверов. Если автоматическая установка не происходит, вы можете сами загрузить драйвера, следуя инструкциям, находящимся на официальном сайте Microsoft по адресу http://www.microsoft.com/hardware/gaming/download.mspx.

И последнее, но не менее важное замечание: в этой книге вы будете выполнять тестирование модулей, для которого я обычно рекомендую NUnit и TestDriven.NET, но поскольку NUnit является внешней библиотекой, а TestDriven.NET не поддерживается в Express Edition, чуть позже мы реализуем собственное тестирование модулей со специализированным классом.

Если вы используете Visual Studio 2005, я предлагаю использовать TestDriven.NET, а если вы работаете с Visual Studio 2005 Team System, можно воспользоваться инструментом Unit Testing, встроенным непосредственно в VS. Альтернативой могут служить другие средства тестирования модулей (например, MbUnit, csUnit и т.д.). Большинство примеров в этой книге достаточно просты и используют только основные возможности тестирования модулей, подобные набору небольших тестовых программ.

Всю необходимую работу вы можете выполнить внутри IDE XNA Game Studio Express, и Microsoft поощряет поступать именно так. Все примеры в этой книге замечательно работают в версии Express Edition и не используют никаких внешних библиотек (что является одним из требований для XNA Starter Kits). Однако, у многих людей есть Visual Studio 2005 и им более комфортно работать именно в этой среде. Прочитайте несколько советов о том, как заставить XNA работать совместно с Visual Studio 2005 Professional.

А что насчет Visual Studio 2005 Professional?

XNA Game Studio Express — замечательная среда для работы. Однако, если вы используете такие утилиты, как SourceSafe или другие CMS (Content Management System), либо подключаемые модули, такие как CodeRush, TestDriven.NET и другие, то столкнетесь с рядом проблем. Как я говорил раньше, вы даже не сможете открыть свой проект XNA в Visual Studio 2005.

XNA Framework использует .NET 2.0 Framework и DirectX 9.0c. Это означает, что для запуска игр на любом PC под управлением Windows необходимы библиотеки .NET 2.0 Framework, DirectX 9.0c и XNA. Если вы разработчик игр, у вас должна быть последняя версия DirectX SDK, а если у вас есть Visual Studio 2005, то у вас также есть и .NET 2.0 Framework, так что вам для запуска и компиляции XNA-приложений нужны только две библиотеки XNA:

На эти библиотеки ссылаются все проекты XNA, так что вам надо просто добавить их в проект Visual Studio 2005 и можно начинать программировать. Перед началом скопируйте файлы Game1.cs и Program.cs из пустого проекта XNA, созданного в XNA Game Studio Express.

Еще одна проблема может возникнуть, если вы работаете в 64-разрядной операционной системе, такой как Windows XP x64 или Windows Vista x64. Хотя в DirectX 9.0c есть 64-разрядные версии библиотек, и .NET Framework тоже замечательно работает в 64-разрядном окружении, проблема коренится в XNA Framework, для которого доступны только 32-разрядные версии (называемые также x86). В прошлом люди, использующие 64-разрядные операционные системы Windows сталкивались с такой же проблемой в DirectX для управляемого кода, который был также доступен только в 32-разрядной версии. Использование 64-разрядной операционной системы не означает, что вы вообще не можете пользоваться 32-разрядными приложениями; скорее наоборот. Почти все существующие сегодня приложения написаны для 32-разрядных операционных систем, и они замечательно работают в 32-разрядном режиме в Windows XP x64 или Windows Vista x64.

Почему же я поднял эту тему, если вы можете запускать в 64-разрядных операционных система и 32-разрядные и 64-разрядные приложения? Дело в том, что вы не можете использовать 64-разрядные сборки (библиотеки) из 32-разрядных приложений и наоборот. Причина в том, что процесс Windows может работать либо в 32-разрядном, либо в 64-разрядном режиме; эмуляция 32-разрядного режима из 64-разрядного будет очень медленной и вообще не поддерживается. Как же заставить XNA работать в 64-разрядном режиме? Никак, эта возможность не поддерживается. Вместо этого вы можете сделать так, что .NET Framework и ваше приложение будут выполняться в 32-разрядном режиме, тогда весь процесс Windows будет запущен в 32-разрядном режиме, и вы спокойно сможете загрузить библиотеки XNA. Если не сделать этого, ваша игра не сможет быть запущена на любой 64-разрядной платформе.

В Visual Studio 2005 вам достаточно выбрать платформу x86 вместо All CPUs в окне Project | Properties | Build. В XNA Game Studio Express такого параметра нет, и вам надо будет вручную добавить в каждую секцию PropertyGroup в файле .csproj следующую строку:

<PlatformTarget>x86</PlatformTarget>

Я также написал небольшую утилиту, которая преобразует проекты XNA Game Studio Express в проекты Visual Studio 2005 и наоборот, учитывая проблему 64-разрядных систем. Вы можете загрузить ее с моего сайта http://abi.exdream.com.

Конфигурирование Xbox 360

Чтобы соединить Xbox 360 с вашим PC сперва надо установить XNA Framework на Xbox 360 через Xbox Live Service. В отличие от платформы Windows, загрузка XNA Framework для Xbox 360 не бесплатна. Вам потребуется через сервис Xbox Live Marketplace приобрести подписку Creator's Club для Xbox 360 за $99 (на год) или за $49 (на четыре месяца). Microsoft делает это для того, чтобы иметь контроль над разработчиками. Разработка игр для консолей традиционно более закрыта и здесь нет идеологии открытого программного обеспечения, как в мире Windows или Linux. Можно только надеяться, что ситуация изменится.

Сперва убедитесь, что ваш PC и Xbox 360 подключены к одной сети. Нет необходимости подключать Xbox 360 непосредственно к PC, просто подключите их в одну сеть (через маршрутизатор или модем). Важно, чтобы доступ в Интернет был не только у PC, но и у консоли, поскольку XNA требует подключения консоли к Xbox Live. После установки на Xbox 360 XNA Framework, в которую включена специальная версия .NET 2.0 Compact Framework, предназначенная для запуска на консоли, вы можете запустить XNA Game Launcher (рис. 1.8).


Рис. 1.8

Рис. 1.8


В XNA Game Launcher вы можете запускать ваши игровые проекты, или копировать XNA-игры ваших друзей или из Интернета и запускать их на своей консоли. Перед подключением к PC вы должны создать ключ шифрования, щелкнув Settings, а затем Create Encryption Key. Вы увидите ключ шифрования, не закрывайте это окно. На вашем PC запустите XNA Game Studio Express, выберите в меню Tools команду Options и перейдите в конец списка. Вы увидите новые параметры XNA Game Studio. Здесь добавьте вашу Xbox 360 и введите ключ шифрования, для чего щелкните по кнопке Add (рис. 1.9).


Рис. 1.9

Рис. 1.9


После того, как вы успешно ввели ключ шифрования, щелкните OK на PC и на консоли. В случае сбоя или переустановки XNA Game Studio вы всегда можете получить новый ключ шифрования и ввести его здесь снова.

Теперь вы можете создавать проекты для Xbox 360 и разворачивать их на консоли с помощью меню построения XNA Studio. Если вы запускаете отладку проекта, нажав F5, он также будет развернут и вы сможете осуществлять отладку непосредственно на консоли, что очень круто, поскольку позволяет перемещаться по коду на PC и сразу видеть результаты на вашей Xbox 360 (все преимущества отладки в системе с несколькими мониторами бесплатно). Больше о запуске игр вы узнаете в главе 2.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz