Zoner's Halflife Tools (ZHLT) — лучшие в мире компиляторы для карт на движке Half-Life. Также эти компиляторы называют Утилитами Зонера или Утилитами ZHLT. В состав утилит ZHLT входят четыре небольшие консольные программы-компилятора. Основные отличия компиляторов ZHLT от стандартных, идущих вместе с редактором Hammer:
бОльшее количество параметров для настройки компиляции
более качественный просчет освещения
более быстрая и качественная оптимизация карты
подробная система сообщений об ошибках
бОльшая информативность о ходе компиляции
меньшее количество ошибок
Преимущества компиляторов ZHLT перед стандартными очевидны. Именно поэтому их используют 99% всех мапперов в мире.
Различные версии компиляторов ZHLT
Благодаря открытости исходного кода утилит ZHLT, появилась возможность улучшать их, чем не преминул воспользоваться Энтони Мур (Anthony Moore) aka «Merl». Этот хороший человек улучшил ZHLT и назвал их ZHLT Custom Build.
Итак, компиляторов ZHLT существуют две версии:
ZHLT (официальные компиляторы от Зонера);
ZHLT Custom Build (улучшенные компиляторы от Мерла).
Официальные компиляторы ZHLT, к сожалению, давно не обновляются (последняя версия 2.5.3 выпущена в 2001г.), однако и по сей день они прекрасно справляются со своей задачей и выдают на-гора великолепные по качеству карты.
Улучшенные компиляторы ZHLT Custom Build, к счастью, обновляются регулярно (о последней версии этих компиляторов Вы можете прочитать в следующей статье это Главы).
Какую версию ZHLT использовать? Наверное, все-таки ZHLT Custom Build, хотя скачать рекомендуем обе, т.к. в простых ZHLT есть полезная программка Ripent для изменения свойств объектов на карте без ее повторной компиляции.
Подробнее о программах-компиляторах
Итак, как мы уже знаем, всего компиляторов четыре:
HLCSG.EXE — просчитывает общую геометрию карты и создает 4 hull-файла для их обработки компилятором HLBSP;
HLBSP.EXE — создает дерево карты и работоспособный BSP-файл;
HLVIS.EXE — создает визуальную часть и оптимизирует карту для более быстрой отрисовки в игре;
HLRAD.EXE — просчитывает освещение на карте.
Компиляторы ZHLT в своей стандартной поставке не имеют графического интерфейса и запускаются из командной строки с указанием параметров компиляции. Последовательность запуска компиляторов такая же, как в списке выше. На сегодняшний день выпущено несколько графических оболочек для ZHLT, которые позволяют управлять параметрами компиляции и собственно запускать компиляцию карты по средством привычных меню и диалогов. Сразу на ум приходят несколько из них: ZHLT Compile GUI и Batch Compiler.
В процессе компиляции ZHLT записывают информацию о ходе компиляции в LOG-файл (файл называется по имени карты, к примеру, de_dust.log или de_aztec.log). Если во время компиляции возникнут ошибки, процесс будет прерван, а в директории с компиляторами будет создан ERR-файл с описанием ошибки (файл также называется по имени карты, например, de_dust.err). При обнаружении ошибок, Вы можете попытаться исправить их, и здесь пригодится наша статья, описывающая все возможные ошибки компиляции.
Очень сильно на время компиляции влияют установленные параметры. Например, можно откомпилировать карту очень быстро, но при этом пострадает как качество освещения, так и оптимизация под более высокий FPS (Frames Per Second). Такой вариант компиляции используется для тестирования карты, когда внешний вид не так важен. Можно наоборот выставить параметры, которые сделают карту максимально качественно, но за это придется платить бОльшим временем компиляции. Такой вариант используется для окончательной версии карты, когда она наилучшим образом освещена и оптимизирована.
Параметров компиляции существует довольно много (несколько десятков), но используются далеко не все из них. Описание всех параметров для каждого из компиляторов Вы можете найти в одной из следующих статей данной Главы.
О компиляторе NetVIS
В состав утилит ZHLT входит еще один компилятор — NETVIS.EXE, который является сетевой версией компилятора HLVIS. Если время компиляции HLVIS'ом слишком велико, Вы можете объединить несколько компьютеров и посчитать эту стадию вместе. Для этого один компьютер должен быть сервером, а другие — клиентами.
Запуск сервера: netvis.exe -server mapname, где mapname — имя карты;
Присоединение к серверу: netvis.exe -connect servername, где servername — имя или IP-адрес сервера.
По умолчанию клиенты коннектятся к серверу по 21212 порту, который можно изменить параметром -port.
Обмен информацией с сервером по умолчанию происходит каждые 60 секунд. Изменить этот показатель можно параметром -rate.
Установка и подключение ZHLT к редактору
Скопируйте содержимое архива с компиляторами в какую-нибудь папку. Для удобства можно создать папку ZHLT в директории с установленным редактором (например, «D:\Hammer\ZHLT») и скопировать файлы туда. Если Вы хотите сравнить удобство использования обеих версий ZHLT, то можете создать 2 папки. Во вторую папку (например, «D:\Hammer\ZHLT_CB») можно поместить улучшенные компиляторы ZHLT Custom Build. Однако подключить к редактору можно только одни компиляторы, поэтому удобнее пользоваться для компиляции BAT-файлами. В этом случае не надо будет изменять настройки редактора.
Если Вы планируете компилировать карты, используя редактор Hammer, то компиляторы необходимо подключить. Для этого в меню «Tools\Options» выберите вкладку «Build Programs» и укажите пути к каждому из компиляторов.
Все должно выглядеть примерно так:
Если для компиляции Вы будете использовать пакетный BAT-файл или программы-оболочки (например, Batch Compiler или ZHLT Compile GUI), то подключать утилиты к редактору не надо.