Ako optimalizovať mapu v programe Hammer Editor: 10 krokov (s obrázkami)

Obsah:

Ako optimalizovať mapu v programe Hammer Editor: 10 krokov (s obrázkami)
Ako optimalizovať mapu v programe Hammer Editor: 10 krokov (s obrázkami)
Anonim

Chcete zrýchliť výkon svojej vlastnej mapy, nezaháľať v škytavkách pri vykresľovaní a skrátiť čas kompilácie? Tu je pár tipov, ktoré vám pomôžu optimalizovať akúkoľvek mapu v Hammeri.

Kroky

Optimalizujte mapu v programe Hammer Editor, krok 1
Optimalizujte mapu v programe Hammer Editor, krok 1

Krok 1. Utesnite miestnosti

To je nevyhnutné. Ak sa na mape vyskytnú AKÉkoľvek netesnosti, kompilátor nebude schopný určiť hranice mapy a pokúsi sa vykresliť všetko, čo je na mape naraz. Ešte horšie je, že akékoľvek portály oblastí, štetce a okludéry na mape nebudú fungovať, takže budú zbytočné. Voda sa tiež nevykreslí správne, ak na mape existujú nejaké netesnosti.

  • Na obr. 1a nie je miestnosť evidentne zapečatená. Ak zostavíte túto mapu s týmto únikom, vvis (časť kompilátu, ktorá určuje údaje o viditeľnosti) nebude môcť určiť hranice mapy, pretože vidlice len „uniknú“von do čiernej prázdnoty mimo našej mapy.
  • Na obrázku 1b je miestnosť zapečatená a bude správne zostavená.
  • Ak chcete skontrolovať úniky, najskôr sa uistite, že je na mape aspoň jedna entita (napríklad „info_player_start“), inak to nebude fungovať. Uložte a skompilovajte BSP stlačením klávesu F9 alebo prejdite na položku Súbor -> Spustiť mapu. Vyberte položku „Normálne“ Spustite BSP, a v oboch zvoľte „Nie“ Spustite VIS a Spustite RAD (Nezabudnite tiež skontrolovať „Nespúšťajte hru po kompilácii“ box). Keď je kompilácia hotová, zatvorte protokol kompilácie a prejdite na položku Mapa -> Načítať súbor bodov. Ak dôjde k úniku, požiada vás o potvrdenie operácie (napr. „Načítať predvolený bodový súbor? [C: / Program Files / ----]) Vyberte možnosť„ Áno “a zobrazí sa červená čiara. od najbližšej entity* von cez oblasť úniku. (* Preto na mape potrebujete entitu, buď štetcovú alebo bodovú. Nefunguje to so svetovými ani detailnými štetcami.) Utesnite únik, skompilujte súbor BSP a načítajte bodový súbor. Ak je všetko zapečatené, malo by ísť iba do prázdneho priečinka v priečinku Steam / steamapps / GAMERTAG / GAME / mapsrc priečinok. Pred zverejnením mapy vždy skontrolujte netesnosti.
Optimalizujte mapu v programe Hammer Editor, krok 2
Optimalizujte mapu v programe Hammer Editor, krok 2

Krok 2. Vytvorte štetce pomocou „tools/toolsnodraw“

Uistite sa, že štetce vždy vytvárate pomocou tools/toolsnodraw najskôr textúra a potom iba textúra, ktorú hráč vidí z pohľadu hráča. Ak chcete vidieť iba jednu stranu steny, textúrujte iba túto viditeľnú stranu.

Optimalizujte mapu v programe Hammer Editor, krok 3
Optimalizujte mapu v programe Hammer Editor, krok 3

Krok 3. Znížte počet štetcov a tvárí

Kedykoľvek je to možné, držte sa vytvárania geometrie pomocou niekoľkých veľkých štetcov, nie tisíc malých. Viac štetcov rovná sa viac tvárí a viac tvárí znamená nižší výkon a čas kompilácie. Zrátané a podčiarknuté: Ak môžete vytvárať zložitú geometriu pomocou jedného alebo dvoch štetcov, prečo použiť niečo viac?

Na obr. 3a sú dve kefy: tá vľavo bola vytvorená pomocou nástroja Arch Tool, ktorý vytvoril 8-stranný štetec so 40 tvárami, a ten vpravo bol vyrobený z jedného orezaného štetca s iba 11 tvárami. To sa dosiahlo pomocou nástroja Clipping Tool (Shift + X). Aby ste to dosiahli, odporúča sa najskôr vytvoriť požadovaný geometrický tvar z nástroja Arch ako referenciu. Potom vytvorte štetec s rovnakou dĺžkou, šírkou a výškou ako referenčný oblúk a umiestnite ho mierne nad referenciu. Vyberte kefu a orežte uhly. (Možno budete musieť zmeniť veľkosť mriežky („-“na zmenšenie, „ +“na zvýšenie) a/alebo manuálne posunúť vrcholy (Shift + V) referenčného oblúka, aby sa prichytili k najbližšiemu bodu mriežky.) Teraz máte geometricky identický štetec, ale len s menším počtom tvárí

Optimalizujte mapu v programe Hammer Editor, krok 4
Optimalizujte mapu v programe Hammer Editor, krok 4

Krok 4. Dobre využite kefy na detaily

Svetové kefy blokujú viditeľnosť, pečatia mapu a rozdeľujú BSP na „listy“, čo je v zásade spôsob, akým kompilátor určuje, čo môže a čo nie je možné vidieť v danom čase a mieste. Detailné kefy boli navrhnuté tak, aby boli v podstate „neviditeľné“pre kompilátor. Jediné kefy, ktoré by mali byť svetovými kefami, sú steny, podlaha a strop miestnosti. Skoro všetko ostatné v miestnosti, čo nie je fungujúcou entitou a výrazne neblokuje víziu hráča, by malo byť viazané na kefu func_detail (kravatu pomocou Ctrl + T). Pretože kefy s detailmi neblokujú viditeľnosť, nebudú kompilované vvis výpočty a nerozdelí mapu na viac listov (čo je vo väčšine prípadov dobré). Majte však na pamäti, že mapa tiež neuzatvorí. Len sa uistite, že všetky svetové kefy pečatia mapu a nemali by byť žiadne problémy.

Optimalizujte mapu v programe Hammer Editor, krok 5
Optimalizujte mapu v programe Hammer Editor, krok 5

Krok 5. Vhodne používajte portály oblasti a naznačte kefy

Plošné portály a kefy na nápovedu sú skvelými spôsobmi, ako obmedziť viditeľnosť a zvýšiť výkon, ak sú vykonané správne. Nemali by ste ich však umiestňovať do každej chodby a okna, pretože množstvo na výpočet toho, čo sa má vykresliť a kedy, by mohlo veľmi dobre prevýšiť to, že sa vykreslia všetky miestnosti naraz. Namiesto toho by ste mali oddeľovať iba miestnosti s veľkým počtom detailov. Vďaka tomu bude váš počítač musieť vykresľovať mnoho nepotrebných predmetov a pomôže zvýšiť výkon bez toho, aby ste výrazne zaťažovali výpočty viditeľnosti.

Optimalizujte mapu v programe Hammer Editor, krok 6
Optimalizujte mapu v programe Hammer Editor, krok 6

Krok 6. Používajte okludéry (striedmo)

Occludery sú podobné portálu uzavretej oblasti, pretože nevykresľuje to, čo je za ním. Je však odlišný od uzavretého plošného portálu v tom, že nepotrebuje utesniť miestnosť (môže byť voľne stojaci a nesmie sa dotýkať svetových štetcov) a blokuje iba 3D modely (alias rekvizity). Tento nástroj je veľmi nákladný na využitie pamäte, takže okluzory by ste mali používať iba vtedy, ak je za voľne stojacou stenou drahý 3D model, ktorý nemožno utesniť plošnými portálmi.

Optimalizujte mapu v programe Hammer Editor, krok 7
Optimalizujte mapu v programe Hammer Editor, krok 7

Krok 7. Pridajte 3D Sky-boxy

Nie je to úplne nevyhnutné, ale pomôže to tomu, aby mapa vyzerala oveľa väčšia bez drastického spomalenia FPS (počet snímok za sekundu). 3D skyboxy sú zvyčajne vyrobené pre „veľké“vonkajšie mapy, ale je možné ich vytvoriť aj pre vnútornú mapu, ak vidíte exteriér cez okno alebo podobne. 3D skyboxy sú veľmi lacné na vykreslenie a môžu spôsobiť, že malá mapa bude až 16 -krát väčšia, pretože 3D skyboxy sú v Hammeri nastavené na mierku 1/16 a potom počas kompilácie zväčšené.

Optimalizujte mapu v editore Hammer, krok 8
Optimalizujte mapu v editore Hammer, krok 8

Krok 8. Pridajte hmlu

Na veľkých vonkajších mapách môže hmla obmedziť množstvo vykresľovaných detailov a vaša mapa tak môže vyzerať realistickejšie. Jednoducho pridajte entitu env_fog_controller na svoju mapu. Na možnosti „Povoliť hmlu“v Vlastnosti objektu vyberte kartu „Áno“. Ďalej upravte súbor Rovina Clip Clip Plane podľa vášho vkusu, ktorý po tejto vzdialenosti odstráni všetky kefy, čím sa odstráni motor, ktorý vykresľuje nepotrebné objekty (The Rovina Clip Clip Plane hodnota by mala byť väčšia ako Hmlistý koniec hodnota).

Optimalizujte mapu v programe Hammer Editor, krok 9
Optimalizujte mapu v programe Hammer Editor, krok 9

Krok 9. Nezbláznite sa na stupnici Lightmap

Stupnica svetelnej mapy v zásade určuje, ako ostré alebo rozmazané tiene sú v geometrii vykreslené. Väčšie čísla zhoršujú kvalitu tieňa, ale môžu zvýšiť výkon. Naopak, nižšia mierka svetelnej mapy zvyšuje vizuál tieňov, ale môže výrazne znížiť výkon. Buď príliš veľká, alebo príliš malá mierka svetelnej mapy môže spôsobiť nereálny svetelný efekt, ktorý je buď príliš nudný alebo príliš ostrý. Predvolená mierka svetelnej mapy pre všetky kefy je 16, čo je vyvážená oblasť medzi vizuálom a výkonom.

Optimalizujte mapu v programe Hammer Editor, krok 10
Optimalizujte mapu v programe Hammer Editor, krok 10

Krok 10. Ak má vaša mapa vodu, umiestnite na mapu entitu „water_lod_control“

Táto entita určuje, ako ďaleko musíte byť od „drahej“vody, aby mohla prejsť na „lacnú“vodu. Drahá voda vyzerá oveľa realistickejšie ako lacná voda, a preto stojí viac za využitie pamäte a výpočty v počítači. Kratšia prechodová vzdialenosť bude produkovať lacnejšiu vodu na kratšiu vzdialenosť, a preto stratí veľa vizuálnej kvality, keď bude na diaľku, ale tiež zvýši výkon.

Tipy

  • Premiestnenie neblokuje viditeľnosť, aby ste sa uistili, že je mapa zapečatená, vytvorte svetový štetec pomocou tools/toolsnodraw textúru pod výtlakom a zalepte ňou mapu (t. j. rohy tejto kefy sa dotknú rohov skyboxu). Rovnako ako v prvom kroku sa vždy uistite, že je mapa zapečatená, inak je prakticky každá optimalizačná technika, ktorá bola spomenutá, vyhodená von oknom a do čiernej medzery zdrojového motora.
  • Pri vytváraní plošných portálov (vytvorením štetca s textom nástroje/náradieportálne a viazaním na func_areaportal), je veľmi dôležité, aby sa strany priestorového portálu, cez ktoré sa neprezerá, dotýkali svetových štetcov. Napríklad, ak chcete umiestniť priestorový portál do dverí, ale tieto dvere majú rám viazaný na func_detail, urobili by ste nie nechajte kefu areaportal dotýkať sa zárubne, pretože je func_detail (a keďže kefy func_detail neovplyvňujú viditeľnosť, protokol kompilácie sa vráti s únikom). Plošná portálna kefa by sa mala namiesto toho dotýkať stien, stropu a podlahy dverí (čo by mali byť všetky svetové kefy) a pretínať zárubňu. Nebojte sa, že by mohlo dôjsť k „orezaniu“z okolo rámu dverí; rám sa bude v hre stále vykresľovať správne… je to jednoducho tam v editore Hammer, kde ho kompilátor môže použiť vvis.
  • Tento článok predpokladá, že máte základné znalosti o rozhraní programu Hammer Editor (vytváranie štetcov, umiestňovanie entít, viazanie entít atď.).
  • Pri vytváraní štetcov s náznakmi textúrujte iba tváre, ktoré pôsobia ako roviny nápovedí (tváre, ktoré budú rozdeľovať BSP) pomocou nástroje/pomôcka textúra. Každú druhú tvár na štetci textúrujte tak, aby nepôsobila ako rovina náznaku nástroje/nástrojeskip, inak vytvoríte viac vizitiek, ako by ste chceli.
  • Stav otvoreného/zatvoreného oblastného portálu môžete prepojiť s funkčnými dverami, ako napríklad s func_door, func_door_rotating alebo s podobnou entitou. Aby to urobili, dvere, na ktoré chcete prepojiť areaportal, potrebujú jedinečný „názov“. (Zadajte meno dvojitým kliknutím na dvere a otvorte ich Vlastnosti objektu okno a pod ním zadajte jednoduchý názov názov na karte Informácie o triede.) Keď máte dvere pomenované, choďte na stránku areaportal's Vlastnosti objektu a posuňte sa nadol na položku „Názov prepojených dverí“a vyberte dvere, s ktorými chcete prepojiť areaportal. Tiež (a to je veľmi dôležité) musíte nastaviť Počiatočný stav oblastnéhoportálu k Počiatočný stav dverí. Čo to robí, je zaistiť, aby sa pri zatvorení dverí priestorový portál zatvoril spolu s nimi. Ak vás zaujíma, čo presne diktujú stavy otvorených/zatvorených areaportálov, ak je areaportal otvorený, vykreslia sa všetky pohľady, ktoré sú viditeľné z druhej strany areaportalu. Naopak, ak je areaportal zatvorený, potom sa nevykreslí nič, čo je mimo areaportal. Ak je teda otvorená chodba, do ktorej budete vždy schopní vidieť, Počiatočný stav plošného portálu by malo byť nastavené na Otvorené, nie Zatvorené. A keď sú prepojené s dverami, cez dvere aj tak neuvidíte, preto ich nastavte na Zatvorené, ak sa dvere zatvoria (pokiaľ nemajú priehľadné okno, v ktorom by ste potom mali priestorový port nastaviť na Otvoriť a Dokonca sa neobťažujte prepojiť ho s dverami).

Varovania

  • Nikdy nevyrábajte komplikovanú kefu s dutým nástrojom. Vrcholy (rohy štetcov) sa budú navzájom prelínať a vytvoria len veľkú nedbalosť.
  • Okluzory používajte iba ako poslednú možnosť. Je to veľmi náročné na pamäť, takže ak je možné rekvizitu zapečatiť v miestnosti pomocou plošných portálov alebo ak je možné rozdeliť višne náznakom a preskočiť kefy, odhláste sa z používania okludérov.
  • Portály na voľnej ploche sú oveľa náročnejšie na pamäť, pretože lístky sa počítajú v reálnom čase. Odporúča sa používať buď uzavreté plošné portály, alebo štetce s náznakmi tak často, ako je to možné.

Odporúča: