Тема: 3.5 Как да компилирам?

Опции на темата
Дисплей
  • изглед на линия
  • Комбиниран изглед
  • дървовиден изглед

3.5 Как да компилирам?

ЧАСТ 1. Типове компилация

Тъй като процесът на компилация е доста дълъг и е по-добре да гледате резултата от направените промени на картата възможно най-често (за да можете да коригирате нещо навреме), става необходимо по някакъв начин да намалите времето за компилация. Как да намалим времето за компилиране? Можете да си купите по-мощен компютър или да си "играете" с опциите за компилация. Във втория случай картата забележимо ще загуби качество (ще има по-лошо осветление, повече спирачки и т.н.), но това е идеално за тестова компилация.

Необходимостта от намаляване на времето за компилиране доведе до появата на режим на компилация на тестове. При използване на тестов режим се задават параметри, които значително намаляват времето за компилиране, но качеството на крайната карта се влошава. Също така, по време на тестова компилация е възможно да се използват само две от четирите компилиращи програми.

И така, има 2 вида компилация:

  • Пълна компилация (максимално качество на картата, но по-дълго време за компилация);
  • Тестова компилация (времето за компилация е много по-малко, но качеството на картата е много по-лошо).

1.1 Пълна (окончателна) компилация

Пълната компилация включва всички 4 компилатора: HLCSG, HLBSP, HLVIS, HLRAD.

Най-спестяващият ресурси начин за компилиране е компилирането с BAT файл. С този метод на компилиране се създава BAT файл (по същество прост текстов файл), в който се записват редът и параметрите за стартиране на компилаторите.

По-долу са редовете, които трябва да копирате в Notepad и да запишете файла като full.bat (или с другиме, но с разширение *.bat). След това този файл трябва да бъде поставен в директорията с компилатори, копирайте картата във формат MAP на същото място и стартирайте full.bat.

@echo off set WADROOT=c:\games\half-life set mapname=karta.map

hlcsg.exe -estimate "%mapname%" hlbsp.exe -estimate "%mapname%" hlvis.exe -estimate -full "%mapname%" hlrad.exe -estimate -chart -extra -dscale 1 -bounce 4 -smooth 100 "%mapname%" 1 ред: премахва съобщенията от екрана (не приложи към компилация); 2-ри ред: запишете пътя до директорията на Half-Life тук (компилаторите и HL трябва да са на един и същи диск); 3-ти ред: име на вашата карта (не забравяйте разширението .map в края);

4-ти ред: стартирайте компилатора HLCSG; 5 ред: стартиране на HLBSP компилатор; 6 ред: стартирайте HLVIS компилатора с опция -full (пълна оптимизация на картата); 7 ред: стартирайте компилатора HLRAD с опцията -extra (изчисляване на осветление с най-добро качество).

1.2 Компилация на тестове

Тестовата компилация се използва, когато не искате да чакате дълго време, само за да проверите правилната работа на обекти на обекти (дали всички врати се затварят, дали колата се движи, дали асансьорът слиза и т.н.) или просто да тичате по картата, да тествате играта, да засичате времето, когато командите се появяват на различни места - в този случай качеството на осветлението и оптимизацията изчезват на заден план.

По-долу са редовете, които трябва да копирате в Notepad и да запишете файла като fast.bat (или с друго име, но с разширение *.bat). След това този файл трябва да бъде поставен в директорията с компилатори, копирайте картата във формат MAP на същото място и стартирайте fast.bat.

@echo off set WADROOT=c:\games\half-life set mapname=karta.map

hlcsg.exe -оценка"%mapname%" hlbsp.exe -оценка "%mapname%" hlvis.exe -оценка -бързо "%mapname%" hlrad.exe -оценка -chop 128 "%mapname%"

Разликата от пълната компилация се наблюдава само в последните два реда.

Ред 1: премахва съобщения от екрана (не се отнася за компилация); 2-ри ред: запишете пътя до директорията на Half-Life тук (компилаторите и HL трябва да са на един и същи диск); 3-ти ред: име на вашата карта (не забравяйте разширението .map в края);

4-ти ред: стартирайте компилатора HLCSG; 5 ред: стартиране на HLBSP компилатор; 6 ред: стартирайте HLVIS компилатора с -fast опция (бърза оптимизация на карта); 7 ред: стартирайте HLRAD компилатор с опция -chop 128 (по-бързо изчисление на грубо осветление).

ЧАСТ 2 Методи за компилиране

2.1 Компилиране с BAT файл

Всъщност вече разгледахме компилацията с BAT файл в първата част на статията. Вече можете да създадете два групови файла за бърза и пълна компилация. Но, както гласи народната мъдрост: „Повторението е майка на ученето“, така че нека се спрем малко повече на този метод.

Когато използвате BAT файл, той трябва да бъде поставен в директорията с компилатори, например "D:\Hammer\ZHLT". Там също трябва да копирате вашата карта във формат MAP.

Премахване на допълнителни файлове след компилация

След компилирането в папката с компилатори остават доста допълнителни файлове, които могат да бъдат изтрити. Нека да разгледаме кои файлове могат да бъдат изтрити и кои могат да бъдат полезни.

За да не изтривате ненужните файлове ръчно всеки път, предлагаме да автоматизирате това. Трябва да добавите няколко реда към BAT файла (даваме пример с файл за пълна компилация). Моля, обърнете внимание, че редът, който указва името на картата, няма разширение .map.

@echo off setWADROOT=c:\games\half-life set mapname=karta

hlcsg.exe -оценка "%mapname%" hlbsp.exe -оценка "%mapname%" hlvis.exe -оценка -пълна "%mapname%" hlrad.exe -оценка -диаграма -extra -dscale 1 -bounce 4 -smooth 100 "%mapname%"

del %mapname%.p0 del %mapname%.p1 del %mapname%.p2 del %mapname%.p3 del %mapname%.prt del %mapname%.wic del %mapname%.bsp

Редакторът Hammer ви позволява да извършите както тест, така и пълно компилиране на картата. За да можете да компилирате от Hammer, трябва да свържете ZHLT компилатори към него. Как да направите това можете да прочетете в статията "Компилатори на ZHLT".

file

Това е режимът "Нормален", в който можем да изберем минимум опции за компилация.

Не - не изпълнявайте HLCSG Нормално - обработвайте всички обекти на картата Само обекти - актуализирайте информацията за свойствата на обектите на обекти

Не - не стартирайте HLBSP Normal - нормален режим

Не - не стартирайте HLVIS (не за финална компилация) Нормално - нормален режим Бързо - бърза оптимизация на карта (не за окончателна компилация)

Не - не стартирайте HLRAD (не за финална компилация) Нормално - нормален режим Допълнително - активирайте изобразяване на светлина с най-високо качество (препоръчително)

Не стартирайте играта - не стартирайте картата веднага след компилация Запазете само видими обекти - обработвайте само видими (нескрити) обекти Експерт - превключете към разширен режим на компилация, където параметрите се задават ръчно.

Сега нека разгледаме компилацията в режим "Експерт", За да направите това, щракнете върху бутона Експерт в долната част на прозореца.

компилирам

В списъка „Конфигурации“ изберете „Counterstrike (пълен)“. Сега нека да разгледаме всеки ред в полето „Команди за компилиране/изпълнение“.

промянаДиректория $exedir - това задава директорията, където се намира файлът hl.exe $csg_exe $path\$file - този ред стартира първия HLCSG компилатор $bsp_exe $path\$file - този ред стартира втория HLBSP компилатор $vis_exe $path\$file - този ред стартира третия HLVIS компилатор $light_exe $path\$file - този ред стартира последния HLR компилатор AD Копиране на файл $path\$file.bsp $bspdir\$file.bsp - копира готовата карта в директорията с играта (посочена е в "Инструменти/Опции. /Изграждане на програми/Поставяне на компилирани карти. ") Копиране на файл $path\$file.pts $bspdir\$file.pts - копира *.pts файла в горе директория (по избор) $game_exe +map $file -game cstrike -dev -console +deathmatch 1 - автоматично стартира компилираната карта с параметри -dev -console +deathmatch 1 Изпълни само с видими обекти - обработва само видими обекти (ако има скрити обекти на картата, те няма да бъдат обработени)

В списъка „Конфигурации“ изберете „Counterstrike (пълен)“. Сега нека разгледаме всеки ред в полето „Команди за компилиране/изпълнение“.

Промяна на директория $exedir - това задава директорията, където се намира файлът hl.exe $csg_exe $path\$file - този ред стартира първия HLCSG компилатор $bsp_exe $path\$file - този ред стартира втория HLBSP компилатор $vis_exe $path\$file - този ред стартира третия HLVIS компилатор $light_exe $path\$file - това ред стартира последния H компилатор LRAD Копиране на файл $path\$file.bsp $bspdir\$file.bsp - копира готовата карта в директорията с играта (посочена е в "Инструменти/Опции. /Изграждане на програми/Поставяне на компилирани карти.") Копиране на файл $path\$file.pts $bspdir\$file.pts - копира *.pts файла в горната директория (по избор)cstrike -dev -console +deathmatch 1 - автоматично стартира компилираната карта с параметрите -dev -console +deathmatch 1 Изпълни само с видими обекти - обработва само видими обекти (ако има скрити обекти на картата, те няма да бъдат обработени)

Можете да добавите други опции за компилация, разгледайте пример за пълна компилация:

file

Изберете реда $light_exe отляво. В прозорците вдясно ще се появят опциите за стартиране на този компилатор (всъщност това е HLRAD, просто е обозначен по този начин). По подразбиране в параметрите е записано само $path\$file, което казва на компилатора пътя до нашата карта.

Добавете следните параметри към полето "Параметри", разделени с интервал: -extra -dscale 1 Можете също да добавите -smooth 100. Сега компилаторът HLRAD ще бъде стартиран в режим на изчисляване на осветлението с най-високо качество. Опции са зададени и за други компилатори. Просто погледнете в статията "Опции на компилатора" за необходимите опции и ги напишете в редовете за стартиране на компилатора.

Компилиране с партиден компилатор

Batch Compiler е графичен интерфейс за ZHLT компилатори. С помощта на различни менюта задаваме параметрите и започваме компилацията.

Ето как изглежда интерфейсът на програмата:

компилация

В горния ред флаговете показват операциите, които ще бъдат извършени. При пълно компилиране имайте предвид:

Квадратчето до буквите HL ще стартира Half-Life на компилираната карта веднага след компилирането.

След първото стартиране на програмата трябва да посочите пътищата до програмите за компилиране, както и, ако е необходимо, пътя до Half-Life. Това става чрез менюто Options/Setup.

%mapname%

След като посочите пътищата към компилаторите, трябва да направите същото с картата във формат MAP -посочете пътя към него, като поставите отметка в квадратчето в най-долната част на прозореца на програмата срещу надписа „Път към файла на картата“.

След това идва ред на задаване на параметри за компилация, това се прави в отметки (CSG, BSP, Visibility и т.н.). За да зададете желаните параметри, трябва да разберете какво означават, така че научете :)

За да започнете компилация, щракнете върху бутона Компилиране.

От наша гледна точка, най-бързият и лесен начин за компилиране е да използвате BAT файл. Обикновено, за да съставите нова карта, всичко, което трябва да направите, е да промените името на картата. В този случай не е необходимо да инсталирате допълнителни програми, които заемат дисково пространство. Трудно е да се каже какъв процент от картографите използват BAT файл, но съдейки по изявленията във форумите, BAT файлът правила! :)

Освен това, когато използваме обвиващи програми, като обсъждания пакетен компилатор, ние сме зависими от тях. Пример: пусната е нова версия на компилаторите ZHLT с някои нови функции, но старата програма, разбира се, не ги поддържа. Трябва да изчакате нова версия, да следите новините, да изтеглите N-тия брой мегабайти, да инсталирате. Така че няма ли да е по-добре да използвате BAT файл?