Cum să optimizați o hartă în Hammer Editor: 10 pași (cu imagini)

Cuprins:

Cum să optimizați o hartă în Hammer Editor: 10 pași (cu imagini)
Cum să optimizați o hartă în Hammer Editor: 10 pași (cu imagini)
Anonim

Doriți să accelerați performanța hărții dvs. personalizate, să nu vă lăsați împiedicați să redați sughițuri și să reduceți timpul de compilare? Iată câteva sfaturi pentru a vă ajuta să optimizați orice hartă din Hammer.

Pași

Optimizați o hartă în Hammer Editor Pasul 1
Optimizați o hartă în Hammer Editor Pasul 1

Pasul 1. Sigilați camerele

Aceasta este o necesitate. Dacă există ORICE scăpări în hartă, compilatorul nu va putea determina limitele hărții și va încerca să redea totul dintr-o hartă dintr-o dată. Mai rău încă, orice portaluri de zonă, pensule și ochelari de pe hartă nu vor funcționa, făcându-le inutile. De asemenea, apa nu se va reda corect dacă există scurgeri pe hartă.

  • În Fig. 1a, camera nu este evident sigilată. Dacă compilați această hartă cu această scurgere, vvis (porțiunea de compilare care determină datele de vizibilitate) nu va putea determina limitele hărții, deoarece frunzele se vor „scurge” doar în golul negru din afara hărții noastre.
  • În Fig. 1b, camera este sigilată și va fi compilată corect.
  • Pentru a verifica scurgerile, asigurați-vă mai întâi că există cel puțin o entitate pe hartă (cum ar fi un „info_player_start”), altfel acest lucru nu va funcționa. Salvați și compilați BSP apăsând F9 sau mergând la Fișier -> Executare hartă. Selectați „Normal” pentru Rulați BSP și selectați „Nu” pentru ambele Rulați VIS și Rulați RAD (de asemenea, asigurați-vă că verificați „Nu rula jocul după compilare” cutie). Odată ce ați terminat compilarea, închideți jurnalul de compilare și accesați Harta -> Încărcare fișier punct. Dacă există scurgeri, vă va cere să confirmați operațiunea (de exemplu, „Încărcați fișierul punct implicit? [C: / Program Files / ----]) Selectați„ Da”și veți vedea o linie roșie care iese în afară de la cea mai apropiată entitate * prin zona scurgerii. (* Acesta este motivul pentru care aveți nevoie de o entitate, fie perie, fie punct, în harta dvs. Nu funcționează cu perii luminoase sau cu detalii.) Sigilați scurgerea, recompilați BSP și încărcați pointfile-ul. Dacă totul este sigilat, acesta ar trebui să meargă într-un folder gol din Steam / steamapps / GAMERTAG / GAME / mapsrc pliant. Verificați întotdeauna scurgerile înainte ca harta să fie publicată publicului.
Optimizați o hartă în Hammer Editor Pasul 2
Optimizați o hartă în Hammer Editor Pasul 2

Pasul 2. Creați pensule cu „tools / toolsnodraw”

Asigurați-vă că creați întotdeauna pensule cu tools / toolsnodraw textură mai întâi și apoi textură doar ceea ce jucătorul poate vedea din punctul de vedere al jucătorului. Dacă veți vedea doar o parte a unui perete, atunci texturați numai acea parte vizibilă.

Optimizați o hartă în Hammer Editor Pasul 3
Optimizați o hartă în Hammer Editor Pasul 3

Pasul 3. Reduceți numărul de pensule și fețe

Ori de câte ori este posibil, rămâneți la crearea geometriei cu câteva perii mari, mai degrabă decât cu o mie de mici. Mai multe pensule echivalează cu mai multe fețe, iar mai multe fețe sunt cu performanțe mai lente și timp de compilare. Linia de fund: dacă puteți crea geometrie complexă cu una sau două perii, de ce să folosiți mai mult decât atât?

În Fig. 3a, există două perii: cea din stânga a fost creată folosind Arch Tool, care a creat o perie cu 8 fețe cu 40 de fețe, iar cea din dreapta a fost realizată dintr-o singură perie decupată cu doar 11 fețe. Acesta din urmă a fost realizat prin utilizarea instrumentului de tăiere (Shift + X). Pentru a realiza aceasta din urmă, este recomandat să creați mai întâi forma geometrică dorită din Arch Tool pentru referință. Apoi, creați o perie cu aceeași lungime, lățime și înălțime ca arcul de referință și așezați-l puțin deasupra referinței. Selectați pensula și tăiați unghiurile. (poate fi necesar să schimbați dimensiunea grilei („-” pentru a scădea, „+” pentru a crește) și / sau să mutați manual vârfurile (Shift + V) ale arcului de referință pentru a fixa la cel mai apropiat punct de grilă.) Acum aveți o perie identică geometric, dar numai cu mai puține fețe

Optimizați o hartă în Hammer Editor Pasul 4
Optimizați o hartă în Hammer Editor Pasul 4

Pasul 4. Folosește bine periile de detalii

Pensulele lumii blochează vizibilitatea, sigilează harta și împarte BSP în „frunze”, care sunt în esență modul de compilare de a determina ce se poate și ce nu poate fi văzut la un moment și un loc dat. Periile de detalii au fost concepute pentru a fi în esență „invizibile” pentru compilator. Singurele pensule care ar trebui să fie pensule mondiale sunt pereții, podeaua și tavanul unei camere. Aproape orice altceva din cameră care nu este o entitate de lucru și care nu blochează semnificativ vederea jucătorului ar trebui să fie legat de o pensulă func_detail (cravată folosind Ctrl + T). Deoarece pensulele de detaliu nu blochează vizibilitatea, ele nu vor fi compilate în vvis calcule și nu va împărți harta în mai multe frunze (ceea ce este bun în majoritatea cazurilor). Fiți avertizat însă că nici nu va sigila harta. Asigurați-vă că toate periile lumii sigilează harta și că nu ar trebui să existe probleme.

Optimizați o hartă în Hammer Editor Pasul 5
Optimizați o hartă în Hammer Editor Pasul 5

Pasul 5. Utilizați portalurile de zonă și sugerați periile în mod corespunzător

Portalurile de zonă și pensulele de sugestie sunt modalități excelente de a limita vizibilitatea și de a crește performanța dacă sunt făcute corect. Cu toate acestea, nu ar trebui să le așezați în fiecare coridor și fereastră, deoarece suma pentru a calcula ceea ce ar trebui redat și când ar putea foarte bine să o depășească pe aceea de a reda întreaga cameră dintr-o dată. În schimb, ar trebui să separați doar camerele cu multe detalii. Acest lucru va scuti computerul de a reda multe obiecte inutile și va contribui la creșterea performanței fără a pune o presiune majoră pe calculele de vizibilitate.

Optimizați o hartă în Hammer Editor Pasul 6
Optimizați o hartă în Hammer Editor Pasul 6

Pasul 6. Folosiți ochelari (cu ușurință)

Ocluderele sunt similare cu un portal cu zonă închisă, deoarece nu redă ceea ce se află în spatele acestuia. Cu toate acestea, este diferit de o zonă închisă-portal prin faptul că nu are nevoie să sigileze o cameră (poate fi independentă și nu poate atinge pensulele lumii) și blochează doar modelele 3D (aka recuzită). Acest instrument este foarte costisitor în ceea ce privește utilizarea memoriei, deci ar trebui să utilizați ochelari numai atunci când există un model 3D scump în spatele unui perete independent care nu poate fi sigilat de portalurile de zonă.

Optimizați o hartă în Hammer Editor Pasul 7
Optimizați o hartă în Hammer Editor Pasul 7

Pasul 7. Adăugați casete 3D Sky

Nu este absolut necesar, dar va ajuta la ca harta să arate mult mai mare fără a încetini drastic FPS (cadre pe secundă). Skybox-urile 3D sunt de obicei realizate pentru hărți exterioare „mari”, dar este posibil să le faceți pentru o hartă interioară, dacă puteți vedea un exterior printr-o fereastră sau ceva de genul. Skybox-urile 3D sunt foarte ieftine de redat și pot face ca o hartă mică să apară cu până la 16 ori mai mare, deoarece Skybox-urile 3D sunt setate la o scară 1/16 în Hammer și apoi sunt mărite în timpul compilării.

Optimizați o hartă în Hammer Editor Pasul 8
Optimizați o hartă în Hammer Editor Pasul 8

Pasul 8. Adăugați ceață

Pe hărțile mari în aer liber, ceața poate limita cantitatea de detalii redate și poate face harta să arate mai realistă în acest proces. Pur și simplu adăugați o entitate env_fog_controller în harta dvs. În opțiunea „Activați ceața” din Proprietăți obiect, selectați „Da”. Apoi, editați fișierul Far Z Clip Plane după dorința dvs., care va elimina toate periile după această distanță, eliminând motorul care redă obiecte inutile (The Far Z Clip Plane valoarea trebuie să fie mai mare decât valoarea Sfârșit de ceață valoare).

Optimizați o hartă în Hammer Editor Pasul 9
Optimizați o hartă în Hammer Editor Pasul 9

Pasul 9. Nu înnebuni pe Lightmap Scale

Scara hărții luminoase determină în esență modul în care sunt redate umbrele clare sau neclare pe geometrie. Un număr mai mare degradează calitatea umbrelor, dar poate crește performanța. Dimpotrivă, o scală mai mică a hărții luminoase crește vizualitatea umbrelor, dar poate reduce semnificativ performanța. Fie o scară prea mare sau prea mică dintr-o hartă de lumină ar putea produce un efect de iluminare nerealist, care este fie prea plictisitor, fie prea ascuțit, respectiv. Scala implicită a hărții luminoase pentru toate pensulele este 16, care este o zonă echilibrată între imagini și performanță.

Optimizați o hartă în Hammer Editor Pasul 10
Optimizați o hartă în Hammer Editor Pasul 10

Pasul 10. Dacă harta dvs. are apă, plasați pe hartă o entitate „water_lod_control”

Această entitate determină cât de departe trebuie să fii de apa „scumpă” pentru a trece la apa „ieftină”. Apa scumpă pare mult mai realistă decât apa ieftină și, prin urmare, costă mai mult în ceea ce privește utilizarea memoriei și calculele pe computer. O distanță de tranziție mai mică va produce apă mai ieftină la o distanță mai mică și, prin urmare, va pierde multă calitate vizuală atunci când este la distanță, dar va crește, de asemenea, performanța.

sfaturi

  • Deplasările nu blochează vizibilitatea, așa că, pentru a vă asigura că harta este sigilată, creați o perie mondială cu tools / toolsnodraw textura de sub deplasare și sigilați harta cu aceasta (adică, colțurile acelei pensule atinge colțurile casetei). La fel ca în primul pas, asigurați-vă întotdeauna că harta este sigilată, altfel practic fiecare tehnică de optimizare menționată este aruncată pe fereastră și în golul negru al motorului sursă.
  • Când creați portaluri de zonă (prin crearea unei pensule texturate cu tools / toolsareaportal și legându-l la func_areaportal), este foarte important ca laturile unui areaportal care nu sunt vizualizate să atingă pensule ale lumii. De exemplu, dacă doriți să plasați un portal de zonă într-o ușă, dar ușa respectivă are un cadru legat de func_detail, nu faceți ca peria areaportală să atingă cadrul ușii deoarece este func_detail (și deoarece periile func_detail nu afectează vizibilitatea, jurnalul de compilare va reveni cu o scurgere). În schimb, peria portală ar trebui să atingă pereții, tavanul și podeaua ușii (care ar trebui să fie toate perii mondiale), intersectând cadrul ușii. Nu vă faceți griji că ar putea exista „decupare în z” în jurul cadrului ușii; cadrul va fi redat corect în joc… este pur și simplu acolo în editorul Hammer pentru ca compilatorul să îl poată utiliza în timpul vvis.
  • Acest articol presupune că aveți cunoștințe de bază despre interfața Hammer Editor (crearea de pensule, plasarea entităților, legarea entităților etc.).
  • Când creați pensule de sugestie, texturați doar fețele acționând ca planuri de sugestie (fețele care vor împărți BSP) cu instrumente / toolhint textură. Texturați toate celelalte fețe de pe pensulă care nu acționează ca un plan de sugestie cu tools / toolsskip, altfel veți crea mai multe vizele decât doriți.
  • Puteți lega starea deschis / închis a unui portal de zonă la o ușă de lucru, cum ar fi func_door, func_door_rotating sau o entitate similară. Pentru a face acest lucru, ușa la care doriți să se conecteze portalul de zonă are nevoie de un „nume” unic. (Dați numele făcând dublu clic pe ușă pentru a-l deschide Proprietăți obiect fereastră și dați-i un nume simplu sub Nume în fila Informații despre clasă.) Odată ce ați numit ușa, mergeți la zona portală Proprietăți obiect și derulați în jos până la „Numele ușii conectate” și selectați ușa la care doriți să legați portul de zonă. De asemenea (și acest lucru este foarte important) trebuie să setați Stare initiala al zonei portale la Stare initiala a ușii. Ceea ce face acest lucru este să se asigure că, atunci când ușa este închisă, portala se închide odată cu ea. Dacă sunteți curioși cu privire la ceea ce dictează exact statele de portport deschis / închis, dacă un port de zonă este deschis, toate randurile vizibile care sunt vizibile prin cealaltă parte a portului de zonă sunt redate. În caz contrar, dacă areaportalul este Închis, atunci nimic dincolo de areaportal nu va fi redat. Deci, dacă există un hol deschis pe care îl veți putea vedea întotdeauna Stare initiala al portului de zonă ar trebui să fie setat la Deschis, nu Închis. Și atunci când este conectat la o ușă, oricum nu veți putea vedea trecutul ușii, așa că setați-l la Închis dacă ușa apare închisă (cu excepția cazului în care are o fereastră transparentă, pe care atunci ar trebui să aveți portul de zonă setat la Deschis și să nu nici măcar nu te deranjează să o legi de ușă).

Avertizări

  • Nu faceți niciodată o perie complicată cu Hollow Tool. Vârfurile (colțurile periilor) se vor intersecta și vor crea doar o mare mizerie neglijentă.
  • Folosiți ochelari doar ca ultimă soluție. Este foarte intensiv în memorie, deci dacă un element de recuzită poate fi sigilat într-o cameră cu portale de zonă sau dacă este posibil să împărțiți frunzele cu sugestii și săriți periile, atunci renunțați la utilizarea ocluzoarelor.
  • Portalurile de zonă deschise au mult mai multă memorie deoarece vizele sunt calculate în timp real. Este recomandabil să folosiți portale de zonă închise sau perii cu indicii cât mai des posibil.

Recomandat: