Невозможно пройти тесты, в окне с вопросами пусто |
Игровые ресурсы, игровая документация
Цель лекции: Ознакомиться с особенностями использования игровых ресурсов и составления игровой документации.
3.1. Из чего состоит игра: игровые ресурсы
Любая игра состоит из множества частей. Но среди них можно выделить две основных. Первая – это игровые ресурсы, и вторая – это программный код.
Игровые ресурсы – это графические, музыкальные и иные ресурсы, которые используются для оформления игры. Рассмотрим различные форматы, в которых хранятся игровые ресурсы.
Графические файлы
Графические файлы используются для хранения изображений. Как правило, это – графические представления игровых объектов, которые применяются в двумерных или в псевдотрехмерных играх, когда трехмерный вид игровых объектов достигается лишь художественными средствами, без использования технологий трехмерной графики. Так же эти файлы могут быть использованы для создания элементов оформления игры и как текстуры для наложения на трехмерные модели.
JPEG
JPEG – это стандарт хранения файлов изображений, разработанный специально для хранения цифровых фотографий. JPEG расшифровывается как Joint Photographic Experts Group – именно так называлась рабочая группа, которая разработала этот стандарт. Особенностью JPEG является возможность сжатия изображения с потерями качества. Как правило, в JPEG выделяют 10 уровней сжатия (от 1 до 10), однако эти изображения можно сжимать и с более точным указанием уровня сжатия. Чем сильнее сжатие – тем сильнее потери качества. На невысоких уровнях сжатия JPEG-файлы практически не содержат так называемых артефактов сжатия. В случае с JPEG это проявляется в заметном искажении изображения, особенно – содержащего четкие границы между цветами, четкие линии. Дело в том, что при сжатии по алгоритму JPEG изображение разбивается на фрагменты 8х8 пикселей. После этого цветовая информация о пикселях одного квадрата сжимается, яркостная же информация остаётся в более сохранном виде.
Как правило, в JPEG хранят различные двумерные изображения, которые можно использовать для организации элементов интерфейса пользователя, для создания различных экранов игры (экран приветствия, экраны с информацией о набранных очках и так далее). В JPEG можно хранить изображения (их называют спрайтами), которые используются в двумерных играх в качестве игровых объектов (преимущественно – прямоугольной формы), в качестве фоновых изображений.
Лучше всего использовать JPEG для хранения цветных изображений с плавными цветовыми переходами. В частности, это могут быть фотографии, нарисованные игровые объекты и так далее.
JPEG-файлы имеют расширение JPG или JPEG.
Для создания JPEG-файлов с успехом можно использовать популярные графические редакторы – такие, как Adobe Photoshop различных версий.
PNG
Формат PNG (Portable Network Graphics) отличается от формата JPG тем, что использует алгоритмы сжатия, сжимающие изображение без потери качества. В результате оказывается, что изображения, имеющие четкие цветовые переходы (такие, как схемы, графики, изображения для простых элементов управления) могут быть довольно сильно сжаты в PNG-файлах. Если изображение имеет плавные цветовые переходы – лучшим выбором для его сжатия будет JPG, хотя и PNG вполне можно использовать. Как и JPG, данный формат поддерживает полноцветные изображения, однако изображение можно создать с использованием нескольких фиксированных цветов, что идет на пользу размеру графического файла, и, естественно, при правильном подборе цветов, не сказывается на его качестве.
Формат PNG был разработан для замены устаревшего, но все еще популярного формата GIF. Основное назначение GIF-файлов – простая интернет-графика.
PNG-файлы имеют расширение .PNG. Для их создания можно использовать растровые графические редакторы, такие, как Adobe Photoshop.
Еще одна важная особенность формата PNG – поддержка прозрачности. То есть при создании файла можно указать, какие из пикселей изображения считать прозрачными. В результате PNG идеально подходит для хранения графического представления двумерных игровых объектов сложной формы.
TGA
TGA (Truevision Graphic Adapter), TARGA - Truevision Advanced Raster Graphics Adapter – это графический формат, который используется преимущественно для хранения игровых текстур. Этот формат был специально создан для хранения текстур, он используется во многих существущих играх именно для этих целей. Он поддерживает полноцветные изображения (8, 16, 24, 32-битные), поддерживают 8-ми битный альфа-канал для указания прозрачных участков изображения.
Текстура – это растровое (точечное) изображение, которое накладывается на поверхность полигона, являющегося частью трехмерной модели. Текстуры позволяют придавать трехмерным моделям цвета, создавать видимость рельефа, мелких деталей модели. При проектировании 3D-модели создание мелких деталей обычно оказывается слишком ресурсоемким, использование же текстур позволяет получать привлекательно выглядящие модели, построенные с использованием сравнительно небольшого количества трехмерных элементов. Сегодня трехмерные модели создаются с высоким уровнем детализации – мощности современных компьютеров хватает для реалистичной обработки таких моделей. В играх прошлых лет модели обычно выглядят схематично (например, профиль колеса автомобиля в играх, использующих низкополигональные модели, может выглядеть как многоугольник, но не как окружность), однако текстурирование позволяет даже таким моделям выглядеть достаточно реалистично.
Текстуры различаются глубиной цвета и разрешением – чем выше и то и другое – тем выше качество изображения. В применении к текстурам существует такое понятие, как тексель – число пикселей, приходящееся на минимальную единицу текстуры.
TGA-файлы имеют расширение .TGA
Для создания TGA-файлов можно применять всё тот же Adobe Photoshop и другие редакторы. Например, бесплатный редактор Paint.NET (http://www.getpaint.net/)
DDS
DDS (Direct Draw Surface) – это графический формат, разработанный специально для использования в DirectX SDK (http://msdn.microsoft.com/en-us/library/bb943990(VS.85).aspx). Он предназначен преимущественно для хранения текстур. Благодаря особенностям формата – поддержке хранения сжатых и несжатых текстур, аппаратной поддержке, этот формат идеален для хранения игровых текстур.
DDS-файлы имеют расширение DDS. Для их создания можно использовать плагины для обычных графических редакторов, для работы с такими файлами созданы специальные наборы утилит и плагинов.
BMP
BMP (Bitmap) – это графический формат, который хранит изображение в несжатом виде. Он поддерживает алгоритм сжатия, который, однако, используется достаточно редко. Создавать BMP-файлы можно практически во всех растровых редакторах. Особенность BMP – широкое распространение при создании графических интерфейсов пользователя в различных Windows-программах. BMP-файлы обычно имеют сравнительно большой объём.
Файлы трехмерных моделей
Трехмерные модели используются в трехмерных, объемных играх. Для придания им реалистичного вида, на такие модели обычно накладывают файлы текстур.
FBX, X
FBX (Autodesk FBX), – это универсальный формат для хранения трехмерных моделей и сопутствующей информации. Он используется во множестве трехмерных приложений, в частности, весьма популярен в компьютерных играх.
Существуют плагины для популярных программ создания трехмерной графики, позволяющие конвертировать созданные в них модели в этот формат. Найти ПО для работы с FBX-файлами можно на http://www.autodesk.ru/.
Формат X – это формат трехмерных файлов, который используется DirectX.
Файлы описания шрифтов, SPRITEFONT
SPRITEFONT-файл - это xml-файл с настройками шрифта. Он содержит инструкции, касающиеся визуализации шрифта в игровом окне XNA-проекта. Файлы этого типа имеют расширение .SPRITEFONT.
Звуковые файлы
MP3 – сжатый звуковой файл. Этот формат имеет огромную популярность за счёт возможности сильного сжатия звука с приемлемым качеством. WAV – обычно представляет собой несжатый звуковой файл, как правило, может использоваться для воспроизведения коротких звуковых фрагментов (звуковых эффектов) высокого качества.
Все вышеперечисленные форматы файлов – это игровые ресурсы, которые могут быть включены в игровой проект. Учитывая тенденцию к сближению технологий XNA и Silverlight, которая наблюдается сегодня, нельзя строго разделить перечисленные игровые ресурсы между двумя технологиями.