Sfat rapid optimizarea texturilor în kitul de dezvoltare unreal

În sfatul de astăzi, noul autor Ankash Kallyat va discuta despre optimizarea texturilor în Unreal Development Kit și câteva dintre lucrurile cheie de reținut atunci când importă texturi în UDK. Vom analiza câteva moduri de a economisi memoria prin extragerea hărților Specular de la hărțile difuzate, precum și de a lucra cu setările LOD pentru a optimiza jocul.

Tutorial publicat

La fiecare câteva săptămâni, revizuim câteva postări preferate ale cititorului nostru de-a lungul istoriei site-ului. Acest tutorial a fost publicat pentru prima dată în decembrie 2011.


Înainte de a începe, aș dori să menționez formatele acceptate de UDK. Sunt acceptate următoarele formate de textură:

  • .bmp
  • .PCX
  • .tga
  • .pluti
  • .PSD
  • .png

Majoritatea preferă TGA, deoarece este acum susținută de majoritatea pachetelor software, plus puteți modifica alfa. De obicei, salvez texturile în format TGA, dar uneori fișierele TGA sunt salvate în 32 de biți și uneori cu un alfa simplu, chiar dacă în realitate nu conțin informații alfa.

Acest lucru este foarte rău, deoarece UDK importa fișierele TGA și încearcă să le comprime cu compresorul încorporat cunoscut sub numele de DXTC. Cu toate acestea, alfa nu este complet comprimat sau uneori deloc de către Unreal Engine 3. Deci, este mai bine să salvați fișierul fără alfa, dacă într-adevăr nu aveți nevoie de informații alfa în motorul Unreal. De asemenea, asigurați-vă că fișierul este salvat cu format de 8 biți pe canal RGB / RGBA pentru a evita complicațiile la import.

Aici voi începe cu o simplă frunză textura (frunza de palmier Banana.)

Faceți clic pentru a mări

Extragerea unei hărți Specular de pe o hartă difuză

Tindem să salvăm fișiere în trei formate diferite, cum ar fi hărțile difuzate, speculare și normale. Deși într-adevăr nu trebuie întotdeauna să salvați o hartă speculară separată, pentru că o putem extrage din harta difuză.

Faceți clic pentru a mări

Așa cum am arătat mai sus în editorul de materiale unreal, am extras informațiile roșii și verzi de pe harta difuză și apoi l-am înmulțit. Din nou am înmulțit-o cu o valoare constantă de 18 doar pentru a coborî rezultatul.

Puteți să o reglați în funcție de dorințele dvs. sau să importați o hartă speculară de 256 x 256 în loc de a utiliza parametrul constant. Veți vedea că a doua valoare multiplică începe să strălucească puțin (ceea ce este exact ceea ce vrem) după care conectați rezultatul în nodul "Specular".

De asemenea, puteți conecta valoarea parametrului constanta în nodul "Specular Power", dacă doriți un Rezultat Specular frumos și strălucitor. Asta e, tocmai am creat o hartă speculară de pe o hartă difuză și am economisit astfel suficientă memorie pentru a încărca încă o dată 1024 res harta în motor.


Sfaturi de import n Tricks

Ori de câte ori încercăm să încărcăm sau să salvăm o hartă de texturi, de obicei ne pierdem și uităm să verificăm rezoluția hărții texturii. Verificați întotdeauna rezoluția hărții deoarece UDK importă numai texturi cu o rezoluție de 2 (x2.)

De exemplu: 256 x 256, 512 x 512, 1024 x 1024, 2048 x 2048 și așa mai departe. Din nou, asigurați-vă că fișierul este salvat în format de 8 biți pe canal RGB / RGBA, pentru a evita complicațiile în timpul importului. Pentru a verifica acest lucru, deschideți fișierul în Photoshop și mergeți la Image -> Mode -> și acolo ar trebui să vezi 8 biți / canal selectat. Dacă nu este, atunci faceți clic pe ea. După ce încărcați textura, asigurați-vă că ați setat LOD Bias.


Reglarea setărilor LOD

Faceți clic pentru a mări

Așa cum am arătat în proprietățile de textura de mai sus, am importat textura frunzei de banane cu o rezoluție de 1024 x 1024 dar am setat părtinirea LOD la 1. Ce se întâmplă aici este rezoluția scade cu 1 pas (x2) care este de 512 x 512, deci nu trebuie să încărcați Photoshop pentru asta.

Motivul pentru care am stabilit părtinirea sarcinii la 1 se datorează faptului că ochiurile noastre sunt frunziș simple și 1024 x 1024 va scurge multă memorie. Mai jos este diferența dintre "Cu LOD Bias" și "Fără LOD Bias".

În UDK mergeți la Vizualizare și apoi la fereastra Browser și selectați Texture Stats pentru a vedea statisticile texturilor încărcate în scenă.


Fără setarea LOD BIAS

Faceți clic pentru a mări

După cum puteți vedea în imaginea de mai sus, texturile sunt încărcate într-o dimensiune de 1024 x 1024 fără setări LOD bias. Texturile de aici folosesc fiecare câte 1366kb de memorie.


Cu setarea LOD BIAS

Faceți clic pentru a mări

În imaginea de mai sus, texturile sunt încărcate în dimensiuni 1024 x 1024, dar cu setarea LOD Bias 1. Fiecare textură utilizează aproximativ 342 kb de memorie.


CONCLUZIE

Pentru obiectele în care aveți nevoie de detalii înalte, nu trebuie să faceți acest proces. Dar pentru obiecte statice simple cum ar fi frunziș, iarbă, frunze și orice alte astfel de plase statice, puteți merge la procesul de mai sus. Acest lucru va economisi o mulțime de memorie optimizând astfel modul de joc.


Tutoriale corelate:

  • Un ghid cuprinzător pentru începători la UDK
  • UDK - Crearea de evenimente cu Kismet ireal
  • Sfat rapid: o introducere în cartografiere ușoară în UDK