Creating environment next-gen textures for games
Creating Desert house
Salutare tuturor, ma numesc Daniel Vijoi, lucrez in industria jocurilor pe calculator de aproape 7 ani si sunt Lead Texture Artist la AMC Studio, o companie romana bazata pe Outsourcing si situata in Bucuresti. Am conceput acest tutorial deoarece am observat o lipsa pe acest segment pentru industria jocurilor, in special pe partea de texturare pentru cladiri low-poly. Acesta se adreseaza artistilor cu un nivel mediu de cunostinte de modelare si texturare si consta in crearea de texturi fotorealiste pentru o cladire modelata in prealabil. O sa ma axez mai mult pe partea de texturi cu specificatia ca succesul acestui proces depinde si de corectitudinea optimizarii geometriei, UV-urilor si maparii finale a texturilor.
Pentru acest tutorial voi folosi numai texturi din libraria 3Dtotal, o librarie complexa si diversificata pe care noi cei de la AMC Studio o folosim cu regularitate. Este de preferat ca la crearea unui asset pentru jocuri atat partea de modelare cat si cea texturare sa fie realizate de acelasi artist deoarece sunt necesare optimizari esentiale la ambele etape, modificare de geometrie care poate infulenta partea de textura si vice-versa. Din acest motiv vor fi prezentate si niste modalitati si cazuri diverse de mapare si tile a anumitor elemente de geometrie, optimizari facute pentru a reduce numarul texturilor alocate pentru acest asset dar si pentru a adauga un plus de detaliu si personalitate.
Majoritatea asseturilor pentru jocuri pleaca de la un concept art si de la cateva referinte adunate pentru a intra cat mai bine in caracterul cladirii care trebuie realizate. Acestea sunt referintele si concept art-ul de la care am plecat pentru realizarea acestui tutorial.
Aceasta este geometria low-poly optimizata la aproximativ 2500 de triunghiuri. Bugetul alocat acestei cladiri este de maxim 2700 insa am pastrat un buget si pentru teselarile si parametrizarile viitoare de care vom avea nevoie pentru a ne putea mapa texturile.
Iata si cladirea cu UV-urile desfasurate, avand mapat un checker pentru a ne verifica daca nu am scapat cumva anumite zone cu UV-uri neuniforme.
Pentru a ne putea incepe texturile este necesar sa concepem un layout rapid al texturilor pe hartie sau in Photoshop, layout care in cea mai mare parte va ramane neschimbat pana la terminarea texturilor noastre. Putem face una, doua sau mai multe variante de layout, schitate rapid, din care la final sa alegem pe cel mai potrivit si cu optimizarea cea mai buna. In primul rand trebuie sa masuram foarte bine geometria pentru a acoperi cat mai optim spatiul texturii, in asa fel inca sa ramana cat mai putin spatiu nefolosit pe canvas. Zonele cele mai mari de textura vor fi alocate geometriilor cu suprafata cea mai mare si tot asa. Densitatea de pixeli pe metru depinde de la un engine la altul si dela un proiect la altul, in acest caz vom respecta o rezolutie de 128 de pixeli pe metru pentru a avea aceeasi rezolutie pe toata suprafata modelului, astfel incat sa nu avem zone mai blury decat altele.
Fiind o cladire fotorealista este esential sa ne alegem cu grija texturile, acestea nu trebuie sa prezinte artefacte sau sa aibe alte probleme de compresie. Artistul trebuie sa urmareasca intocmai culorile din concept art, in cazul in care acesta este o schita ca si in cazul de fata o sa urmarim culorile din referintele de baza, urmand ca la sfarsit sa facem un tuning de culoare. In acest caz cladirea trebuie locata intr-o zona de desert de aceea trebuie sa avem grija ca toate culorile sa se potriveasca cu aceasta zona climatica. Cand alegem texturile de la care trebuie sa plecam, in primul rand trebuie sa cautam poze cu materialitatea potrivita pentru cladirea noastra, nu trebuie sa aibe neaparat aceleasi culori deoarece acestea sunt foarte usor de modificat ulterior. Este de preferat insa ca acestea sa fie cat mai bogate cromatic, cu cat sunt mai putin monocrome si mai personalizate cu atat cladirea noastra va avea la sfarsit mai multa viata si va fi mai credibila.
Iata cum am construit textura de perete pas cu pas pentru corpul de baza al cladirii care trebuie sa fie construit din pamant. In partea de sus a texturii este poza initiala iar in partea de jos un Color Adjustment si un Unsharp fin.
In poza urmatoare am adaugat cateva tonuri diferite de culoare pentru diversitate si un layer cu vposea. Cea mai usoara metoda pentru a adauga detalii de acest gen (pe care eu o folosesc foarte des) este slectia cu Color Range a culorii care ne intereseaza si copierea acesteia in psd-ul nostru.
In poza urmatoare am folosit o masca pentru a aduce cateva detalii din alta fotografie pentru a face niste scursuri pentru partea superioara a peretelui. Ca si in cazurile de mai sus am folosit un blending cu Normal pentru layere.
Marea majoritate a detaliilor pot fi adaugate in aceasta maniera foarte usor, doar selectand culorile cu tool-ul Color Range din alte imagini, folosind masti pentru a selecta anumite zone sau tragand fotografia in psd-ul nostru si modificand culorile cu tool-ul Replace Color. Este foarte important sa avem grija la rezolutia texturii pe tot parcursul acestui proces. Trebuie sa avem grija cand scalam detaliile sau elementele pentru ca acestea sa ramana pe de o parte credibile si pe de alta parte la aceeasi rezolutie si pixelatie cu restul elementelor, pentru a nu a avea in final zone mai blury sau mai sharp decat altele.
Este foarte important deasemenea cum ne manageriem psd-ul pentru a obtine o calitate cat mai buna a texturii si pentru a economisi timpul de executie care este foarte important in conditiile unui deadline strans. Trebuie sa denumim de la inceput layerele si sa le organizam pe grupuri sau pe seturi de elemente pentru a ne usura munca si pentru a gasi cat mai repede elementele cand avem nevoie de ele. De cele mai multe ori pastrez detaliile si layerele cat mai mult posibil pe Normal blending pentru a pastra cat mai multe culori si detalii din poza originala si in acelasi timp pentru a ne departa cat mai mult de efectele de digitalizare daca blenduim prea mult layerele cu Hard light, Overlay, etc. In cazul in care folosim unul din blending mode-uri trebuie sa avem grija sa pastram textura intr-o nota realista daca proiectul la care lucram este unul fotorealist. Cateodata mai folosesc Softlight daca vreau sa accentuez shading-ul sau anumite forme gen highlight-uri, umbre, bevel-uri.
Iata cateva exemple de detalii adaugate prin aceste metode:
Aceasta este textura finala de perete si cu saturatia marita putin:
In imaginea de sus se mai pot vedea si doua guildeline-uri, linii care ne arata zona de tile a acestei texturi. Am fost nevoit sa fac un tile pentru aceasta textura deoarece zidul cladirii are 5.5 metri inaltime iar spatiul disponibil pe textura este de numai 4 metri. De aceea a trebuit sa teselez geometria la 3 metri inaltime(sau 3 unitati, depinde cum setati metrul in scena) si sa fac un tile pe textura la acea inaltime pentru a putea mapa o suprafata mai mare. Aceasta tehnica este foarte folositoare in cazul cand aveti o cladire inalta si doriti in continuare sa puneti dirt la baza si scursuri in partea de sus. Practic partea de mijloc se poate tila la nesfarsit, oricat de mare ar fi geometria pastrand in acelasi timp la capete detalii cu particularitati. Iata zona unde a fost taiata geometria cat si zonele de tile de pe textura si UV-urile:
Aceasta textura de mai sus nu numai ca se tileaza cu ea insasi dar se tileaza si cu o alta textura din spatele cladirii pentru a permite adaugarea unui zid de alta structura fara a avea vreun seam vizibil. Am pastrat ca background textura initiala la care am adaugat cu ajutorul unei masti celalalt zid.
Iata alte cateva exemple de tile-uri:
Aceeasi metoda a fost aplicata si pentru zidul turnului. Pentru a nu rezulta la sfarsit un tile prea vizibil am uniformizat putin intensitatea pietrelor de pe zid si culorile acestora. Folosindu-ma de masti de la textura precedenta pentru a economisi din timpul de executiei, am adaugat dirt la baza turnului cat si scursuri in partea superioara. Dupa aceasta am selectat din psd-ul zidului de baza folosind tool-ul Color Range o parte din petele de vopsea, pentru a le include si in textura de zid a turnului. De cele mai multe ori este benefic sa folosim elemente comune sau asemanatoare pe texturile aceleiasi cladiri pentru a adauga unitate texturilor, pentru ca acestea sa se potriveasca mai bine impreuna. Dupa ce am adaugat toate aceste detalii, am copiat un rand de pietre in zona superioara de tile si am facut trecerea catre celelalte randuri de pietre, astfel incat sa para totul cat mai natural. De obicei tile-ul unei texturi se face la sfarsit , dupa ce au fost adaugate si tunate toate layerele si elementele componente ale texturii pentru a economisi timp. Aceasta presupune ca pe suprafata unei texturi sa existe cel putin doua randuri de pixeli identice pe verticala sau pe orizontala, cat si in interiorul texturii, dupa caz. Iata pasii principali ai realizarii texturii turnului in cazul de fata, o textura care trebuie sa fie tile-abila atat pe orizontala, pentru a cuprinde toata circumferinta turnului cat si pe verticala, pentru a putea acoperi inaltimea zidului de piatra deoarece spatiul de textura nu ne permite desfasurarea integrala a UV-urilor:
In imaginea de mai sus vedem pas cu pas cum am creat textura de roof, aducand in prima faza contrast si culoare texturii duplicand poza originala cu multiply, apoi folosind tool-ul Color Range am selectat vopseaua rosie si am marit intensitatea acesteia. In final am adaugat unul cate unul detaliile care dau personalitate texturii precum: rugina, vopsea cazuta, detalii mecanice, etc.
In imaginea urmatoare puteti vedea cum am extras scursurile de pe o textura de beton pentru a o folosi atat la roof cat si la alte elemente.
Iata cum a fost realizata pas cu pas si usa de la intrare. Este important sa pastram in continuare psd-urile clare si bine organizate, sa nu exageram cu prea multe layere sau blending mode-uri deoarece riscam ca in final sa avem o textura prea imbaxita si neclara. Este de preferat sa pastram pe cat posibil cate un layer pentru fiecare element: rugina, vopsea cazuta, zgarieturi, dirt, texte, etc. In general se pastreaza layere separate pentru elementele care reprezinta volumetrie, pentru a ne fi mai usor la crearea de Normal mapuri sau la celelalte texturi.
In poza urmatoare este prezentat modul cum a fost realizata textura de lemn. In cazul in care avem tile-uri de acest gen, cu linii verticale sau orizontale este esential ca inainte sa adaugam alte detalii sa indreptam liniile, pentru a ne ajuta mai tarziu la tile.
Pentru un workflow cat mai bun este indicat sa pastram texturi sau elemente de texturi reprezentative intr-o librarie personala organizata pe categorii precum, dirt, stains, rust, etc. astfel incat la nevoie sa nu cautam prea mult textura potrivita pentru cladirea la care lucram. In acelasi timp texturile pot fi refolosite pentru crearea altor elemente ale aceleiasi cladiri. Deasemenea ne putem folosi de pete de culoare de la elemente deja realizate pentru alte zone pentru a realiza selectii sau alte detalii in zone diferite ale texturii sau ale cladirii, pentru a economisi timp pretios. De pe aceeasi textura iata si cum am realizat elementele pentru tevi:
Pentru a recapitula putin, practic folosind doar cateva tool-uri importante precum Color range, Replace color, Clone stamp, Healing brush, etc. putem realiza in aceeasi maniera diferite elemente ale aceleiasi cladiri, indiferent de forme sau culori. Este important ca de la un capat la altul al procesului sa nu exageram cu numarul de layere sau blending, sa denumim de la inceput layerele pentru a le gasi cat mai usor precum si sa avem grija sa pastram aceeasi rezolutie si pixelatie pe toata suprafata texturii cat si a cladirii. Deasemenea este foarte important sa pastram layere separate pentru toate elementele importante ale cladirii dar mai ales pentru elementele care reprezinta volumetrie si ne ajuta pentru crearea celorlalte texturi precum Normal map, Specular map, etc. Organizarea cat mai buna a psd-ului duce la o calitate mai buna a texturii dar si la foarte mult timp economisit, timp care poate fi folosit la final pentru fine tuning si adaugarea de elemente in zonele neglijate, deoarece in industria jocurilor pe calculator timpii de realizare al unui task sunt foarte importanti.
Aceasta este textura finala de diffuse pentru prima mapa, cu toate zonele de tile-ing. A trebuit sa tilez foarte mult fiecare element deoarece mi-am propus sa aloc pentru acest asset de la inceput doar doua texturi de 1024x1024 si una cu alpha de 512x256. Cu toate ca suntem restrictionati tot timpul de buget, atat pentru textura cat si pentru geometrie, nu trebuie a ne fie teama sa adaugam detalii din abundenta pe texturi, deoarece daca acestea sunt distribuite uniform pe suprafata texturii nu va rezulta un tile-ing prea evident in final. Chiar daca acesta exista, este preferat intotdeauna un plus de detaliu decat un obiect anost si fara detalii.
Iata si cea de a doua textura de diffuse finala, deasemenea cu zonele de tile-ing evidentiate:
Urmatoarea etapa este sa trecem la realizarea celorlaltetexturi si anume cele de Normal map. Pentru a face un Normal map trebuie sa lucram mai intai o textura de Height map. Pentru a genera aceasta textura nu este de ajuns doar sa desaturam textura de diffuse, realizarea acestei texturi precum si a celei de Normal map necesita un studiu atent al volumelor din textura de diffuse. Se lucreaza in primul rand volumele mari ale elementelor, de exemplu casetoane, rame de usi si geamuri, grilaje, etc. Detaliile fine precum fibra de lemn, rugina sau vopsea cazuta, care nu au un volum evident se lucreaza si genereaza separat, la sfarsit, pentru ca volumele mici sa nu concureze cu volumele mari deoarece riscam ca in final cladirea noastra sa arate prea cartoony si nenaturala. Iata cum arata o textura de Height map, in principal este formata din nuante de gri-uri, foarte contrastante unele fata de celelalte. Cu cat contrastul este mai mare, cu atat diferentele intre volume vor fi mai mari.
Aceasta este textura finala de Normal map. Este de retinut faptul ca dupa generam prima data Normal mapul cu Plugin-ul de la Nvidia, Crazybump sau oricare program de generat Normal map-uri mai trebuie sa lucram pe acesta pana definitivam si perfectionam formele diverselor elemente. De exemplu daca dorim volume si mai puternice de atat putem duplica layerele au elementele din normal map cu Overlay pentru a adauga adancime si mai mare volumelor.
In aceeasi maniera au fost realizate si texturile de Normal map si Height map pentru a doua textura:
Pentru a evidentia anumite volume nu este obligatoriu sa folosim detalii numai din texturile noastre de diffuse, putem folosi elemente si forme care pot aparea numai pe texturile de Normal map, chiar daca nu exista pe Diffuse sau Specular. Iata cateva pe care le-am folosit la texturile mele:
Urmatoarea etapa este sa cream texturile de Specular map, la fel ca si cele de Height map si Normal map, necesita un studiu atent al materialelor pe care le avem in referinte si pe care vrem sa le reproducem, precum si un studiu al proprietatilor acestora de reflexie.
Iata cateva elemente adunate de pe ambele texturi finale de Specular map:
Iata si lista texturilor de baza folosite din libraria 3Dtotal:
Parts01 texture
brick15 (02 - aged & stressed)
brick18 (02 - aged & stressed)
ceiling_01 (07 - sci-fi textures)
door_12 (07 - sci-fi textures)
hull__05 (07 - sci-fi textures)
metal09 (02 - aged & stressed)
paint03 (02 - aged & stressed)
paving03 (01 - general)
red10 (03 - bases & layers)
wall10 (02 - aged & stressed)
wall13 (02 - aged & stressed)
wall14 (02 - aged & stressed)
-wood_03 (02 - aged & stressed)
Parts02 texture
african15 (09 - ancient tribes & civilisations)
brown_01 (03 - bases 7 layers)
misc09 (02 - aged & stressed)
normal06 (03 - bases 7 layers)
paint01 (02 - aged & stressed)
plaster06 (02 - aged & stressed)
plaster08 (02 - aged & stressed)
tile02light07 (05 - dirt & graffiti)
tile02medium10 (05 - dirt & graffiti)
tile04heavy01 (05 - dirt & graffiti)
wall05 (02 - aged & stressed)
wall18 (02 - aged & stressed)
window01t (07 - sci-fi textures)
La final sper ca ati avut cate ceva de invatat de pe urma acestui tutorial, sau macar intelegeti mai bine cum sunt realizate diferite obiecte din jocurile voastre preferate.
Multumesc.
Acest concept prezinta o cladire de desert, ca inspiratie este genul arhitecturii de pe Tatooine din StarWars, genul acesta de cladiri fiind specifice Tunisiei, exceptand bineinteles elementele SF. Faptul ca este o cladire de zona desertica trebuie sa se vada si in cromatica finala a texturilor si in felul cum a fost afectata cladirea de conditiile meteo specifice acestei zone climatice. Este o cladire cu mai multe functionalitati, are un generator propriu in turn iar la nevoie poate fi transformata si intr-un mic bazar asa cum se poate vedea si in spatele cladirii.
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |