- .WAD
-
Doom WAD Расширение .wad
Разработан Тип формата данные
.WAD (происходит от англ. Where’s All the Data; слово wad также имеет самостоятельное значение — «комок ваты») — архивный формат файлов, который использовался в компьютерных играх, основанных на движке Doom: Doom, Doom 2, Final Doom: The Plutonia Experiment, Final Doom: Evilution, Heretic, Hexen и некоторых других, для хранения игровых ресурсов (текстур, музыки, звуков и других). Формат ресурсов, помещаемых в такой файл, может подразумевать сжатие. Сам формат не предоставляет возможности сжатия, хотя по своей структуре допускает возможность создания нескольких ссылок в заголовке на один фактический ресурс, что позволяет избежать дублирования ресурса, целиком сводящегося к полному или частичному повторению другого ресурса. В силу экзотичности такой ситуации случаи практического использования этой возможности неизвестны.
Содержание
Описание формата
Ресурсы хранятся в именованных блоках (англ. lump), имена, размеры и местоположение в файле которых хранится в каталоге — таблице размещения ресурсов, располагающемся, как правило, в конце файла, хотя каталог может располагаться где угодно.
Каталог состоит из 16-байтовых записей, либо описывающих блоки данных, либо являющихся маркерами. Каждая запись состоит из трёх полей: 4-байтовое смещение начала блока относительно начала файла, 4-байтовая длина блока (для маркера поле равно нулю) и восьмисимвольное имя (см. Стандарт 8.3) блока, дополняемое нулями до 8 байт.
.WAD
-файл имеет 12-байтовый заголовок, состоящий из трёх 4-байтовых частей: сигнатура, число записей каталога и смещение начала каталога относительно начала файла.Сигнатура обычно бывает двух типов (для игр, использующих движок Doom и производные):
IWAD
— основной файл игровых ресурсов (англ. Internal WAD — «внутренний WAD»).PWAD
— подключаемый файл (англ. Patch WAD — «заплаточный WAD»).
Существуют также другие сигнатуры, в частности
WAD2
, используемый в игре Quake. Такие файлы, как правило, имеют другой (расширенный) формат каталога.Маркеры используются для отметки группы блоков, которые игровой движок считает идущими в строго определённой последовательности. К примеру, данные уровня начинаются маркером
ExMy
для DOOM и Heretic,x
— номер эпизода,y
— номер уровня, либоMAPxx
для DOOM 2 и Hexen,xx
— номер уровня. Теоретически, имя блока может быть любым, допустимым в имени файла файловой системы FAT. Затем идут блоки данных уровня в строго определенной последовательности:THINGS
,LINEDEFS
,SIDEDEFS
,VERTEXES
,SEGS
,SSECTORS
,NODES
,SECTORS
,REJECT
,BLOCKMAP
. В Hexen также присутствует блокBEHAVIOR
, содержащий скрипты.Когда подключаются
PWAD
-файлы, игровой движок помещает их каталоги в начало списка, так, что при поиске содержащиеся в них блоки будут обнаружены первыми. Таким образом, не меняя основного файла, можно заменить практически любой игровой ресурс (карты, спрайты, текстуры).Ограничения оригинального движка
В оригинальном движке существует проблема, связанная с использованием маркеров: все спрайты и текстуры полов и потолков должны располагаться между специальными маркерами:
S_START
иS_END
для спрайтов иF_START
иF_END
для текстур полов и потолков, и-за чего требуется помещение всех блоков вместе с маркерами изIWAD
-файла вPWAD
-файл, что сказывается не только на удобстве использования, но и на проблемах при распространении (оригинальная игровая графика, как правило, защищена авторскими правами). Для устранения этой проблемы существуют специальные программы, создающие нужныеPWAD
-файлы уже у конечного пользователя, обладающего необходимымIWAD
-файлом. В современных портах эти ограничения устранены.Дальнейшее развитие
В более поздних играх от id Software, начиная с Quake, была разработана другая технология хранения игровых ресурсов, основанная на совместном использовании файловой системы операционной системы и полноценных архивных файлов, содержащих срез файловой системы. При поиске ресурса файл сначала ищется в файловой системе в определённых папках; если он не находится, то начинается просмотр списка архивов. Таким образом, модификация игрового ресурса становится максимально простой: нужно просто положить нужный файл в нужное место на диске. А архивы позволяют не засорять папки файловой системы множеством мелких файлов. Quake также использует и
.WAD
-файлы: текстуры хранятся в файлеgfx.wad
, который, в свою очередь, упакован в архивpak0.pak
.Данная технология используется и поныне во многих современных играх, не только от id Software.
Ссылки
Doom Wiki[неавторитетный источник?]
Примечания
Для улучшения этой статьи по информационным технологиям желательно?: - Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждающие написанное.
- Проставив сноски, внести более точные указания на источники.
Категории:- Форматы файлов
- Doom
Wikimedia Foundation. 2010.