Компиляторы ZHLT обладают хорошей информативностью о ходе процесса компиляции. Вся информация записывается в log-файл, который создается в директории с компиляторами. В этой статье мы рассмотрим основные операции, происходящие во время компиляции карты. 1. Просчет геометрии (HLCSG)
Первым в работу вступает компилятор HLCSG, который выполняет просчет общей геометрии карты.
В строке Command line: друг за другом перечислены параметры для данного компилятора.
При использовании компиляторов ZHLT Custom Build возможно использование параметра -wadconfig, который указывает имя конфигурации текстур.
После строки с параметрами идет таблица, в которой перечислены все возможные параметры для компилятора HLCSG, установленные значения этих параметров (столбец Setting) и их значения по умолчанию (столбец Default).
Информация о текстурах
В подчеркнутой строке сообщается о том, что используется конфигурация текстур с именем dm_aztec_maso32 (в нашем случае). В этой конфигурации используется 11 wad-файлов.
Затем идет перечисление всех используемых при компиляции текстурных файлов.
В следующей подчеркнутой строке сообщается, что 145 брашей (и 866 их сторон) избавлены от clipnode-плоскостей. Это работает режим экономии clipnode, который стандартно включен в ZHLT Custom Build.
Далее выводится подробная информация об использовании текстур.
Using Wadfile — означает, что данный wad-файл просто подключен.
Including Wadfile — означает, что текстуры из данного wad-файла включаются в BSP-карту.
Также здесь Вы можете видеть сколько именно текстур из wad-файла используются на карте, сколько процентов занимают эти текстуры от общего числа всех текстур и сколько всего текстур находится в каждом wad-файле.
Warning — не более, чем просто предупреждения. Они сообщают Вам, что некоторые текстуры слишком большие по размеру и, что количество используемых wad-файлов больше 8 (если это так).
В нижней подчеркнутой строке сообщается какое количество памяти используется текстурами.
В данном случае это 1.53 Мб из 4.00 Мб максимум.
2. Создание BSP-файла (HLBSP)
Теперь за работу принимается второй компилятор HLBSP, который создает дерево карты и работоспособный bsp-файл.
Если данная операция пройдет успешно, то шанс окончить компиляцию без проблем (при наличии достаточного количества свободной оперативной памяти) довольно большой.
Об успешности операции сообщается в строке BSP generation successful.
3. Оптимизация карты (HLVIS)
Настает черед третьего компилятора HLVIS, который занимается созданием визуальной части и оптимизацией карты.
Наиболее хорошего результата позволяет добиться полный просчет, который включается параметром -full.
В подчеркнутой строке ниже сообщается о количестве leafs (что-то вроде отдельных пространств на карте).
4. Просчет освещения (HLRAD)
Ну, и наконец, за работу берется последний компилятор HLRAD, который просчитывает освещение на карте.
Это наиболее продолжительная по времени и наиболее требовательная к ресурсам операция.
Полезно к параметрам HLRAD добавить такой параметр как -chart, для вывода в самом конце компиляции подробной статистической информации о BSP-файле.
Для наиболее качественного просчета освещения и создании реалистичных теней необходимо включить также параметр -extra.
Также полезно увеличить параметр -smooth, который по умолчанию равен 50 (измеряется в градусах). Этот параметр задает максимальный угол между двумя поверхностями, при котором расчет освещения производится с использованием технологии сглаживания.
Chop и texchop устанавливают размер патча (площадь поверхности), на которые разбивается поверхность для просчета освещения. Чем больше значение этих параметров, тем грубее просчитывается освещение. По умолчанию установлены оптимальные значения.
В этой строке сообщается, что на карте используется 2 светящиеся текстуры.
5796 видимых сторон объектов
28411 патчей
38 сторон объектов блокирующих свет
1292 источника света (такое большое значение получается при использовании светящихся текстур)
Основная операция по освещению.
Размер визуальной информации, чем больше значение, тем больше требуется оперативной памяти для выполнения операции.
MakeScales — данная операция так же, как и следующая Swap Transfers, не занимает много времени при наличии свободной оперативной памяти, но при ее отсутсвии может затянуться вплоть до нескольких дней!
Освещения заканчивается просчетом установленного параметром -bounce заданного числа отражений света. Чем больше число отражений, тем более сглаженными будут тени и тем реалистичнее будет освещены темные места на карте. По умолчанию значение параметра -bounce равно 1. Рекомендуется увеличить этот параметр до 4 или более.
Статистика BSP-файла
При использовании параметра -chart с компилятором HLRAD, в конце компиляции выводится подробная информации о BSP-файле.
В первом столбце перечислены названия объектов, во втором — количество данных объектов на карте и максимально допустимое их количество (в Half-Life количество объектов ограничено), в третьем — используемая и максимально допустимая память для этих объектов и в четвертом — процент использования объектов на карте.
В этой строке сообщается, что карта использует 51 текстуру.
В заключении сообщается о полном времени компиляции и размере BSP-файла.