Описание файла "level"
Cодержит в себе всё самое основное. Тут хранятся источники света, описания объектов, имена соответствующих им текстур и шейдеров, порталы и секторы.
Существует программа для разбора и сбора этого файла - unp level, автор - XiaNi
Общая структура - блоки файла Код блока
Версия компилятора карты 1
Описание порталов 4
Источники света 6
Короны источников света 7
Объекты 3
Текстуры 2
Секторы 8
Версия компилятора карты (блок для всех карт одинаковый) Значение Размер
Код блока 1 Word(2)
Сжатие данных (0 - нет, 32768 - да) 0 Word(2)
Размер блока (в байтах) 4 DWord(4)
Номер версии (для всех одинаковый) 13 DWord(4)
Описание порталов (блок для всех карт одинаковый и данных не содержит) Значение Размер
Код блока 4 Word(2)
Сжатие данных (0 - нет, 32768 - да) 0 Word(2)
Размер блока (в байтах) 0 DWord(4)
Источники света Значение Размер
Код блока 6 Word(2)
Сжатие данных (0 - нет, 32768 - да) 0 Word(2)
Размер блока (в байтах) - DWord(4)
Источник свет - (108*х)
Источник света Смещение Размер
Тип источника света (встречались только 1 или 2) 0 DWord(4)
(встречались только 1 или 3) 4 DWord(4)
Цвет Красный 8 Single(4)
Цвет Зелёный 12 Single(4)
Цвет Синий 16 Single(4)
20 DWord(4)
24 DWord(4)
28 DWord(4)
32 DWord(4)
36 DWord(4)
40 DWord(4)
44 DWord(4)
48 DWord(4)
52 DWord(4)
Координата X 56 Single(4)
Координата Z 60 Single(4)
Координата Y 64 Single(4)
Угол поворота по X 68 Single(4)
Угол поворота по Z 72 Single(4)
Угол поворота по Y 76 Single(4)
80 DWord(4)
84 DWord(4)
88 Single(4)
92 Single(4)
96 Single(4)
100 DWord(4)
104 Single(4)
Короны источников света Значение Размер
Код блока 7 Word(2)
Сжатие данных (0 - нет, 32768 - да) 0 Word(2)
Размер блока (в байтах) - DWord(4)
Корона источника света - (18*х)
Корона источника света Смещение Размер
Координата X 0 Single(4)
Координата Z 4 Single(4)
Координата Y 8 Single(4)
??? 12 Single(4)
??? 16 Word(2)
Текстуры Значение Размер
Код блока 2 Word(2)
Сжатие данных (0 - нет, 32768 - да) 0 Word(2)
Размер блока (в байтах) - DWord(4)
Кол-во текстур - DWord(4)
Текстуры - -
Текстура Значение Размер
Шейдер (с путём) - String
Разделитель "/" Byte(1)
Текстура (с путём) - String
Начало необязательной части
Разделитель "," Byte(1)
Лайтмап 1 - String
Разделитель "," Byte(1)
Лайтмап 2 - String
Конец необязательной части
Нулевой символ - конец названия текстуры #0 Byte(1)
* Примечание: нулевая текстура указана без имени файла и состоит только из символа #0. Так что после поля "кол-во текстур" сразу попадается символ #0, не пугайтесь
Секторы Значение Размер
Код блока 8 Word(2)
Сжатие данных (0 - нет, 32768 - да) 32768 Word(2)
Размер блока (в байтах) - DWord(4)
Размер несжатого блока (в байтах) - DWord(4)
Описание секторов - ????