Предыдущая Следующая
В DirectX, чтобы загрузить модель, приходилось писать десяток-другой строк исходного кода! Более того, загружать можно было только определенные графические файлы, которые DirectX понимал. Для остальных моделей и изображений приходилось писать свои экспортеры или искать инструменты для конвертирования контента в необходимый формат данных.
Используя XNA Framework и Content Pipeline (Конвейер контента), который входит в пространство имен Microsoft.Xna.Framework.Content, вам не нужно беспокоиться о том, в каком формате представлено изображение или модель. Вы просто пишите пару строк исходного кода, и ваш графический контент будет успешно загружен в игру внутренними средствами конвейера (в главе 6 мы подробно остановимся на этом вопросе).
Конвейер контента понимает следующие форматы:
□ трехмерные модели - формат X и формат FBX. Формат Х - это всем известный Х-файл, или мэш. Формат FBX - относительно новый формат в игровой индустрии, продвигаемый компанией Autodesk, и поскольку эта же компания является создателем всем известного инструментария 3DMAX Studio, то сомнений в дальнейшем распространении этого форма-
Платформа XNA Framework 53
та нет. На сайте компании Autodesk можно бесплатно скачать плагин и конвертер для преобразования сделанной модели в 3DMAX Studio до версии 8 в формат FBX. В 3DMAX Studio 9 все перечисленные средства встроены по умолчанию;
□ графические изображения - поддержаны наиболее распространенные графические форматы DDS, BMP, JPG, PNG и TGA;
□ материал - имеется поддержка формата FX, или формата шейдеров;
□ аудиоформат - осуществлена поддержка работы с проектами, созданными при помощи XACT. Подробно о самом формате и загрузке в игру звуковых данных вы узнаете в главе 13.
Как видите, список поддерживаемых форматов достаточно большой и внушительный, но главное - это простота загрузки, например текстуры или модели в игру. Посмотрите на пример двух строк исходного кода, загружающих в программу графическое изображение и модель.
private Texture2D mySprite; private Model myBoll;
mySprite = content.Load<Texture2D>(«sprite») myBoll = content.Load<Model>(«boll»);
В последних двух строках этого блока кода мы загрузили в программу из корневого каталога проекта графическое изображение и модель (для дополнительной или вложенной папки используется следующая запись: «Имя_папки\\ boll»). Вот и все, теперь вы можете использовать загруженные элементы для вывода на экран телевизора (о том, как это сделать, в следующих главах). Предыдущая Следующая
|