Com optimitzar un mapa a Hammer Editor: 10 passos (amb imatges)

Taula de continguts:

Com optimitzar un mapa a Hammer Editor: 10 passos (amb imatges)
Com optimitzar un mapa a Hammer Editor: 10 passos (amb imatges)
Anonim

Voleu accelerar el rendiment del vostre mapa personalitzat, no enredar-vos en la representació de singlots i reduir el temps de compilació? Aquests són alguns consells per ajudar-vos a optimitzar qualsevol mapa a Hammer.

Passos

Optimitzeu un mapa a Hammer Editor Pas 1
Optimitzeu un mapa a Hammer Editor Pas 1

Pas 1. Segellar les habitacions

Això és imprescindible. Si hi ha QUALSEVOL fugida al mapa, el compilador no podrà determinar els límits del mapa i intentarà representar tot el contingut al mapa alhora. Pitjor encara, els portals de zona, els pinzells de suggeriments i els oclusors del mapa no funcionaran, cosa que els farà inútils. A més, l'aigua no es renderitzarà correctament si hi ha fuites al mapa.

  • A la figura 1a, òbviament, l'habitació no està segellada. Si compileu aquest mapa amb aquesta filtració, vvis (la part de la compilació que determina les dades de visibilitat) no serà capaç de determinar els límits del mapa, ja que les fulles de visor només "filtraran" al buit negre fora del nostre mapa.
  • A la figura 1b, la sala està segellada i es compilarà correctament.
  • Per comprovar si hi ha fuites, primer assegureu-vos que hi hagi almenys una entitat al mapa (com ara un "info_player_start"), en cas contrari això no funcionarà. Deseu i compileu el BSP prement F9 o anant a Fitxer -> Executa el mapa. Seleccioneu "Normal" per a Executeu BSPi seleccioneu "No" per a tots dos Executa VIS i Executeu RAD (també assegureu-vos de comprovar el fitxer "No executis el joc després de compilar" Caixa). Un cop hàgiu acabat de compilar, tanqueu el registre de compilació i aneu a Mapa -> Carrega el fitxer del punt. Si hi ha fuites, us demanarà que confirmeu l'operació (per exemple, "Carregar el fitxer punt per defecte? [C: / Program Files / ----]) Seleccioneu" Sí "i veureu una línia vermella que sobresurt des de l’entitat més propera * a través de la zona de la fuita. (* Per això necessiteu una entitat, ja sigui un pinzell o un punt, al vostre mapa. No funciona amb pinzells mundials ni de detall.) Segelleu la fuita, torneu a compilar BSP i carregueu el fitxer puntual. Si tot està segellat, hauria d'anar a una carpeta buida del fitxer Steam / steamapps / GAMERTAG / GAME / mapsrc carpeta. Comproveu sempre si hi ha fuites abans que el mapa es publiqui al públic.
Optimitzeu un mapa a Hammer Editor Pas 2
Optimitzeu un mapa a Hammer Editor Pas 2

Pas 2. Creeu pinzells amb "tools / toolsnodraw"

Assegureu-vos de crear sempre pinzells amb tools / toolsnodraw textura primer i després només textura allò que el jugador pot veure des del punt de vista del jugador. Si només veureu un costat d'una paret, textureu només aquest costat visible.

Optimitzeu un mapa a Hammer Editor Pas 3
Optimitzeu un mapa a Hammer Editor Pas 3

Pas 3. Reduïu el nombre de pinzells i cares

Sempre que sigui possible, seguiu creant geometria amb alguns pinzells grans en lloc de mil petits. Més pinzells equivalen a més cares i més cares equivalen a un rendiment més lent i al temps de compilació. Conclusió: si podeu crear geometries complexes amb un o dos pinzells, per què n'utilitzeu més?

A la figura 3a, hi ha dos pinzells: el de l'esquerra es va crear amb l'eina Arch que va crear un pinzell de 8 cares amb 40 cares i el de la dreta es va fer a partir d'un pinzell retallat amb només 11 cares. Aquest últim es va aconseguir mitjançant l’eina de retall (Maj + X). Per aconseguir-ho, es recomana primer crear la forma geomètrica desitjada a partir de l'eina Arch per a referència. A continuació, creeu un pinzell amb la mateixa longitud, amplada i alçada que l'arc de referència i col·loqueu-lo una mica per sobre de la referència. Seleccioneu el pinzell i retalleu els angles. (potser haureu de canviar la mida de la quadrícula ("-" per disminuir, "+" per augmentar) i / o moure manualment els vèrtexs (Maj + V) de l'arc de referència per ajustar-lo al punt de quadrícula més proper.) un pinzell geomètricament idèntic, però només amb menys cares

Optimitzeu un mapa a Hammer Editor Pas 4
Optimitzeu un mapa a Hammer Editor Pas 4

Pas 4. Feu un bon ús dels pinzells de detall

Els pinzells mundials bloquegen la visibilitat, segellen el mapa i divideixen el BSP en "fulles", que són bàsicament la manera del compilador de determinar què es pot veure i què no es pot veure en un moment i lloc determinats. Els pinzells de detall van ser dissenyats per ser essencialment "invisibles" per al compilador. Els únics pinzells que haurien de ser mundials són les parets, el terra i el sostre d’una habitació. Pràcticament tota la resta de la sala que no sigui una entitat que funcioni i que no bloquegi significativament la visió del jugador hauria d’estar lligada a un pinzell func_detail (empatar amb Ctrl + T). Com que els pinzells de detall no bloquegen la visibilitat, no es compilaran vvis els càlculs i no dividirà el mapa en més volums (cosa que és bona en la majoria dels casos). Tingueu en compte que tampoc no segellarà el mapa. Assegureu-vos que tots els pinzells del món segellin el mapa i que no hi hagi problemes.

Optimitzeu un mapa a Hammer Editor Pas 5
Optimitzeu un mapa a Hammer Editor Pas 5

Pas 5. Utilitzeu portals d’àrea i consulteu els pinzells adequadament

Els portals de zona i els pinzells de suggeriments són excel·lents maneres de limitar la visibilitat i augmentar el rendiment si es fan correctament. Tanmateix, no hauríeu de col·locar-los a tots els passadissos i finestres, ja que la quantitat per calcular el que es suposa que es representa i quan es pot superar molt bé la de representar tota l'habitació alhora. En canvi, només heu de separar les habitacions amb molts detalls. Això estalviarà que l’ordinador hagi de representar molts objectes innecessaris i ajudarà a augmentar el rendiment sense posar una pressió important en els càlculs de visibilitat.

Optimitzeu un mapa a Hammer Editor Pas 6
Optimitzeu un mapa a Hammer Editor Pas 6

Pas 6. Utilitzeu oclusius (amb moderació)

Els oclusors són similars a un portal d’àrea tancada, ja que no representa el que hi ha darrere. Tanmateix, és diferent d’un portal tancat perquè no necessita segellar una habitació (pot ser independent i no tocar pinzells del món) i només bloqueja els models 3D (també coneguts com accessoris). Aquesta eina és molt costosa pel que fa a l’ús de memòria, de manera que només heu d’utilitzar oclusors quan hi hagi un model 3D car darrere d’una paret independent que no es pugui segellar als portals d’àrea.

Optimitzeu un mapa a Hammer Editor Pas 7
Optimitzeu un mapa a Hammer Editor Pas 7

Pas 7. Afegiu caixes de cel 3D

No és totalment necessari, però ajudarà a fer que el mapa sembli molt més gran sense frenar dràsticament els FPS (fotogrames per segon). Les caixes de cel 3D es fan generalment per a mapes exteriors "grans", però és possible fer-los per a un mapa d'interiors si podeu veure un exterior a través d'una finestra o alguna cosa així. Les caixes de cel 3D són molt barates de representar i poden fer que un petit mapa aparegui fins a 16 vegades més gran, ja que les caixes de cel 3D es configuren a escala 1/16 a Hammer i, a continuació, s’amplien durant la compilació.

Optimitzeu un mapa a Hammer Editor Pas 8
Optimitzeu un mapa a Hammer Editor Pas 8

Pas 8. Afegiu boira

Als mapes exteriors grans, la boira pot limitar la quantitat de detalls que es representen i pot fer que el vostre mapa sembli més realista durant el procés. Simplement afegiu una entitat env_fog_controller al vostre mapa. A l 'opció "Habilita la boira" a Propietats de l’objecte, seleccioneu "Sí". A continuació, editeu el fitxer Avió de clip Far Z al vostre gust, que eliminarà tots els pinzells després d 'aquesta distància, eliminant el motor que faci objectes innecessaris (Avió de clip Far Z el valor ha de ser superior al valor Final de boira valor).

Optimitzeu un mapa a Hammer Editor Pas 9
Optimitzeu un mapa a Hammer Editor Pas 9

Pas 9. No us torneu bojos a l’escala Lightmap

L’escala del mapa de llum determina essencialment com es representen les ombres nítides o borroses sobre la geometria. Els números més grans degraden la qualitat de l’ombra, però poden augmentar el rendiment. Al contrari, una escala de mapa de llum més baixa augmenta les visuals de les ombres, però pot reduir severament el rendiment. Una escala de mapa de llum massa gran o massa petita pot produir un efecte d’il·luminació poc realista que sigui massa apagat o massa nítid, respectivament. L’escala de mapa de llum per defecte per a tots els pinzells és 16, que és una àrea equilibrada entre visuals i rendiment.

Optimitzeu un mapa a Hammer Editor Pas 10
Optimitzeu un mapa a Hammer Editor Pas 10

Pas 10. Si el vostre mapa té aigua, col·loqueu una entitat "water_lod_control" al mapa

Aquesta entitat determina la distància que heu d'estar entre l'aigua "cara" i la transició cap a l'aigua "barata". L’aigua cara sembla molt més realista que l’aigua barata i, per tant, costa més en termes d’ús de memòria i càlculs a l’ordinador. Una distància de transició més curta produirà aigua més barata a una distància menor i, per tant, perdrà molta qualitat visual quan estigui a distància, però també augmentarà el rendiment.

Consells

  • Els desplaçaments no bloquegen la visibilitat, de manera que, per assegurar-vos que el mapa està segellat, creeu un pinzell mundial amb tools / toolsnodraw textura per sota del desplaçament i segellar el mapa amb ell (és a dir, que les cantonades d’aquest pinzell toquin les cantonades del skybox). Com al primer pas, assegureu-vos sempre que el mapa estigui segellat, en cas contrari, pràcticament totes les tècniques d’optimització esmentades es llancen per la finestra i es mostren al buit negre del motor Font.
  • En crear portals d'àrea (mitjançant la creació d'un pinzell amb textura amb tools / toolsareaportal i lligant-lo a func_areaportal), és molt important que els costats d’un port d’àrea que no s’estiguin visualitzant toquin pinzells del món. Per exemple, si voleu col·locar un portal d’àrea en una porta, però aquesta porta té un marc lligat a func_detail, no feu que el raspall portàtil toqui el marc de la porta perquè és func_detail (i com que els pinzells func_detail no afecten la visibilitat, el registre de compilació tornarà amb una fuita). En canvi, el raspall portàtil hauria de tocar les parets, el sostre i el terra de la porta (que haurien de ser raspalls mundials), tallant el marc de la porta. No us preocupeu que hi hagi "retallades en z" al voltant del marc de la porta; el quadre encara es renderitzarà correctament al joc… simplement hi ha a l’editor Hammer perquè el compilador l’utilitzi durant vvis.
  • Aquest article suposa que teniu coneixements bàsics sobre la interfície de Hammer Editor (creació de pinzells, col·locació d'entitats, vinculació d'entitats, etc.).
  • En crear pinzells de suggeriments, només textureu les cares actuant com a plans de suggeriments (les cares que dividiran el BSP) amb el eines / suggeriment d’eines textura. Textureu totes les altres cares del pinzell sense actuar com un pla de suggeriments eines / omissió d’eines, en cas contrari, anireu creant més fulles visibles del que voleu.
  • Podeu enllaçar l’estat Obert / Tancat d’un portal d’àrea a una porta de treball com ara func_door, func_door_rotating o una entitat similar. Per fer-ho, la porta a la qual voleu enllaçar el port d'àrea necessita un "nom" únic. (Doneu el nom fent doble clic a la porta per obrir-ne Propietats de l’objecte finestra i doneu-li un nom senzill a sota Nom a la pestanya Informació de classe.) Un cop tingueu la porta anomenada, aneu al portal d’àrea Propietats de l’objecte i desplaceu-vos cap avall fins a "Nom de la porta enllaçada" i seleccioneu la porta a la qual voleu enllaçar el portal d'àrea. També (i això és molt important) cal configurar el fitxer Estat inicial de l 'areaportal al Estat inicial de la porta. El que fa això és assegurar-se que quan es tanca la porta, el portal d’àrea es tanca amb ella. Si teniu curiositat per determinar exactament el que dicten els estats de port àrea obert / tancat, si un port d’àrea és Obert, es representen totes les fulles visibles a l’altra banda del port de zona. En cas contrari, si el portal d'àrea està tancat, no es renderitzarà res més enllà del portal d'àrea. Així que si hi ha un passadís obert que sempre podreu veure, el Estat inicial del port d’àrea s’ha d’establir a Obert, no a Tancat. I quan estigueu enllaçat a una porta, de totes maneres no podreu veure més enllà de la porta, per tant, establiu-lo a Tancat si la porta apareix tancada (tret que tingui una finestra transparent, que hauríeu de tenir el portàtil configurat a Obrir i Ni tan sols em molesto a enllaçar-lo amb la porta).

Advertiments

  • Mai feu un pinzell complicat amb l’eina buida. Els vèrtexs (cantonades dels pinzells) es creuaran i crearan un gran desastre.
  • Utilitzeu oclusius només com a últim recurs. Consisteix molt en memòria, de manera que si es pot segellar un puntal en una habitació amb portals de zona o si és possible dividir les fulles amb pinzellades i saltar-les, desactiveu l’ús d’obturadors.
  • Els portals d’àrea oberts requereixen molta més memòria perquè les vislaves es calculen en temps real. És recomanable utilitzar portals de zona tancats o pinzells amb indicacions el més sovint possible.

Recomanat: