Утилиты Зонера обладают отличной информативностью о ходе компиляции.
Вся информация записывается в *.LOG файл, который создается в папке с
утилитами ZHLT. В данном материале мы расказываем о главных операциях,
которые происходят во время компиляции уровня.
1. Просчёт геометрии (HLCSG.EXE)
Первым начинает свою работу программа-компилятор HLCSG.EXE, выполняющий расчёт общей геометрии уровня.
В строке Command line: друг за другом перечислены параметры этой программы-компилятора.
Если вы используете продвинутые компиляторы ZHLT Custom Build, то становится возможным задействование параметра -wadconfig, который устанавливает название конфигурации текстур.
После строки Command line с параметрами начинается таблица с
перечислением всех доступных параметров для программы-компилятора
HLCSG.EXE, текущие значения данных параметров (столбец Setting) и их
установки по умолчанию (столбец Default).
Информация о текстурах
В подчеркнутой оранжевым цветом строчке говорится, что используется
конфигурация текстур с названием dm_aztec_maso32 и что в данной
конфигурации используется одиннадцать текстурных библиотек (*.WAD
файлов).
Далее перечисляются все используемые WAD-файлы.
В следующей подчеркнутой оранжевым цветом строчке говорится, что у
без малого 150 брашей (и 866 их сторон) удалены clipnode-плоскости. Так
работает режим экономии clipnode-поверхностей, который стандартно
включен в утилитах Зонера Custom Build 1.7.
Затем мы видим подробную информацию об использовании текстур.
Using Wadfile — говорит о том, что этот *.WAD файл просто подключен, но не включён в карту.
Including Wadfile — говорит о том, что текстуры из этого *.WAD файла вшиваются в BSP файл уровня.
Тут же мы видим число используемых текстур (из данного *.WAD файла) в
уровне, сколько % занимают данные текстуры от общего количества всех
текстур и сколько всего текстур находится в каждом *.WAD файле.
Warning — не более, чем просто предупреждения. Они говорят
нам, что некоторые текстуры слишком большие по размеру и что число
задействованных *.WAD файлов больше восьми, когда это так.
В нижней подчеркнутой оранжевым цветом строчке говорится сколько памяти используется текстурами. В нашем случае это 1.53 Мб из лимита в 4 Мб максимум.
2. Создание BSP-файла (HLBSP.EXE)
Теперь вторая стадия в преобазовании файла. За работу берётся 2-ая программа-компилятор HLBSP.EXE, которая создает дерево карты и работоспособный *.BSP файл.
Ежели эта стадия закончится успешно, то шанс безпроблемно
докомпилировать карту довольно большой, при условии наличия достаточного
количества системной памяти.
Об успешном окончании этой стадии сообщается в строке BSP generation successful.
3. Оптимизация карты (HLVIS.EXE)
К работе приступает третья программа-компилятор HLVIS.EXE, который занимается созданием визуальной части и оптимизацией уровня.
Наилучшего результата позволяет добиться полный просчёт, включаемый опцией -full.
В подчеркнутой оранжевым цветом нижней строчке говорится о числе leafs (что-то вроде отдельных пространств в уровне).
4. Просчет освещённости карты (HLRAD.EXE)
И вот к работе приступает последняя программа-компилятор HLRAD.EXE, которая делает расчёт освещения в уровне.
Данная стадия наиболее продолжительна по времени и наиболее требовательна к системным ресурсам.
Полезно к параметрам HLRAD.EXE добавить такую опцию, как -chart, она выведет в конце компиляционного процесса подробную статистику о *.BSP файле.
Для наилучшего расчёта освещённости и создания наиболее реалистичных теней нужно задействовать параметр -extra.
Также лучше увеличить опцию -smooth, скажем до 100 градусов;
по умолчанию он равен 50 градусам. Данная опция задает максимальный угол
между 2-мя плоскостями, при котором расчёт освещения ведётся с
использованием сглаживания.
Chop и texchop устанавливают размер патча (площадь
плоскости), на которые разбивается поверхность для просчёта
освещённости. Чем больше значение данных опций, тем грубее
рассчитывается освещённость. По умолчанию стоят наилучшие значения.
В данной строчке говорится, что в уровне используется две светящиеся текстуры (текстуры, испускающие свет).
5796 видимых сторон объектов 28411 патчей 38 сторон объектов блокирующих свет 1292 источника света (такое большое значение получается при использовании.
BuildFacelights — основная операция по освещению.
Размер визуальной матрицы, чем больше значение, тем больше нужно оперативной памяти для выполнения этой стадии.
MakeScales — данная операция так же, как и следующая SwapTransfers,
не занимает много времени, но только при наличии свободной оперативной
памяти, однако, при её нехватке эти стадии могут затянуться до
нескольких суток!
Стадия освещения заканчивается расчётом установленного параметром -bounce
заданного количества отражений света. Чем больше количество отражений
света, тем более реалистичными будут тени, отбрасываемые объектами, и
тем реалистичнее будут освещены темные места в уровне. По умолчанию
значение параметра -bounce равно одному. Советуем увеличить данный параметр до четырёх или более.
Статистика BSP-файла
При установленном параметре -chart с программой-компилятором HLRAD.EXE, в самом конце процесса компиляции выводится на экран подробная информации о *.BSP файле.
В первом столбце перечислены имена объектов, во втором — количество
данных объектов в уровне и максимально возможное их число (в HL число
объектов, как вы должно быть знаете, ограничено), в третьем —
используемая и максимально возможная память для этих объектов и в
четвертом — % использования объектов в уровне.
В предпоследней строчке говорится, что уровень использует в нашем случае 51 текстуру.
В заключении говорится о полном времени компиляции и размере *.BSP файла.