PC Press
O nama
O nama
Pretplata
O nama
Postanite saradnik PC-ja
Kontakt sa redakcijom
PC Press
Novi broj
Novi broj   
Pretrazivanje
Arhiva
Arhiva   
PC Online
PC Plus   
Specijalna izdanja
Softver Softver
PC #143 : April 2008

 Naslovna  Sadržaj 
Stevan Josimović  

MaP-iranje i fa-Zoniranje

Teksturiranje je pipav posao koji zahteva ne samo iskustvo, nego i strpljenje. Photoshop je nezamenjiv alat za teksturiranje, ali bi dobro došla i neka dodatna pomoć...

(kliknite za veću sliku)

Allegorithmic je softverska kuća koja se ozbiljno uhvatila u koštac sa problemom beskonačnog i proceduralnog teksturiranja. U svetu 3D grafike odavno je propoznata potreba za beskonačnim (tajlabilnim) teksturama. Njih nije lako napraviti – ako su trivijalne, gubi se iluzija „beskonačnosti“, a ukoliko su vizuelno kompleksne, geometrijski raste i vreme potrebno za njihovu izradu. Kvalitetne teksture obično imaju veliki broj (Photoshop) lejera, što dodatno usložnjava problem. Zbog toga neki dominantni 3D programi poodavno imaju sopstvene proceduralne teksture, implementirane sa manje ili više uspeha i sa različitim stepenom korisnosti.

Noviji 3D programi, specijalno oni orijentisani ka stvaranju organolikih modela, zagovaraju drugačiji pristup teksturiranju – kompletna tekstura je unikatno oslikana na 3D objektu. Rezultati su odlični, mada ovakav pristup zahteva više truda i ne funkcioniše najbolje na beskonačnim 3D objektima, npr. velikim poligonima koji simuliraju tlo ili zidove. Naročito je zahtevan kod animacije, gde kamera kroz frejmove pokriva veliku površinu takvih objekata.

Šta može MaPZone

(kliknite za veću sliku)

Još jedan veliki problem sa rasterskim beskonačnim teksturama je u tome što se one rade uvek u fiksnoj rezoluciji. Ako zbog bilo čega kasnije morate da promenite scenario i da kameru više približite nekom od objekata koji ima beskonačnu teksturu na sebi, stvari postaju komplikovane jer se tekstura mora preraditi u višu rezoluciju. Ovo često ne znači samo dodatni posao već i potpuni gubitak vremena već uloženog u izradu lo-res verzije tekstura. A vreme je novac, naročito na velikim projektima sa fiksnim i strogim rokovima isporuke.

Sve ove probleme pokušao je elegantno da adresira Allegorithmic sa svojim MaPZone-om, editorom proceduralnih tekstura. Ova Windows aplikacija bazirana je na patentiranoj Allegorithmic tehnologiji FXMaps i omogućava stvaranje visokokvalitetnih tekstura. Pošto su u pitanju proceduralne teksture, njihova rezolucija će biti „beskonačna“, tačnije onolika koliku korisnik odabere. Teksture koje stvarate se mogu renderovati u vreme izvršenja programa koji ste sami napisali (3D aplikacije ili igre) ukoliko koristite ProFX2 biblioteku. Na taj način možete uštedeti mnogo prostora i/ili Internet saobraćaja prilikom distribucije 3D aplikacija. Naravno, iz MaPZone-a je, osim ProFX2 tekstura, moguće eksportovati i najobičniji raster fajl koji ćete koristiti u drugoj 3D aplikaciji kao klasičnu mapu diffuse, specular, normal, bump ili nekog drugog tipa.

FXMaps za sada nije dovoljan da postigne sve efekte neophodne jednom profesionalnom tekstureru jer su ove proceduralne mape najčešće samo manje ili više komplikovani grayscale šabloni koji ne deluju previše uzbudljivo sami po sebi. Oni jesu neophodna osnova, ali da biste dobili bilo šta upotrebljivo, neophodno je na njih primeniti filtere, a izbor filtera u MaPZone-u je bogat (oko dvadesetak). Iako vam se ova brojka može učiniti skromnom, trik je u tome što se filteri mogu neograničeno kombinovati, možete menjati i njihove parametre, tako da je broj kombinacija (sa ponavljanjem i bez ponavljanja) impresivan.

„Ima nas Čvorovića“

(kliknite za veću sliku)

Korisnički interfejs programa je unikatan, a koncipiran je kao svojevrsni dijagram toka podataka – u MaPZone terminologiji compositing graph. Čvorovi kompoziting grafa su FXMaps, FXMaps linkovi i filteri, a izlaz iz svakog od ovih čvorova predstavlja ulaz u naredni čvor. Kombinacijom i rekombinacijom čvorova dobijaju se grafovi neograničene kompleksnosti sa kojima možete doterivati izgled tekstura. Pozicioniranje čvorova na kompoziting grafu ne utiče na rezultat, pošto to određuju veze između čvorova, ali će vam u interesu biti da grupišete čvorove po njihovim ulogama radi lakšeg praćenja situacije. U suprotnom, vrlo brzo ćete na ekranu imati gužvu u kojoj se nije lako snaći.

Manipulacija čvorovima je sasvim intuitivna, što je važno s obzirom na to da je paradigma ovog interfejsa dovoljno komplikovana i zahteva značajno vreme za navikavanje. Iako je MaPZone namenjen svima koji se bave teksturama, zbog tehničke orijentacije svog GUI-ja nekako se čini da je više okrenut onima koji se bave renderom u realnom vremenu nego klasičnim stvaraocima 3D sadržaja.

(kliknite za veću sliku)

FXMaps linkovi su zapravo samo reference na FXMaps iz tzv. Preset biblioteke. Da biste mogli da im promenite parametre, moraćete da ih poravnate (flatten), što će datu referencu zameniti punom instancom FXMaps čvora. Na prvi pogled FXMaps linkovi nisu toliko korisni, ali ako ste ikada programirali koristeći pokazivače (u C-u, na primer), biće vam odmah jasno koliko je to moćna opcija. Klasična situacija nastaje kada isti FXMaps želite da koristite kao ulaz u više filtera da biste izlaze iz tih filtera kombinovali u novom čvoru. Ukoliko koristite instancu datog FXMaps čvora i kasnije zaključite da morate da promenite neki od parametara u njoj, moraćete to da uradite na svakoj pojedinačnoj instanci teksturnog modela. Ukoliko koristite linkove, dovoljno će biti da promenite instancu iz biblioteke koju ste referencirali na vašem dijagramu i svi linkovi će biti ažurirani automatski.

Najlepše za kraj

Najlepše smo ostavili za kraj – MaPZone je potpuno besplatan i može se preuzeti sa Allegorithmic-ovog Web sajta www.mapzoneeditor.com . Aktuelna je verzija 2.6, a kolege iz Allegorithmic-a se grozničavo spremaju za marketinški pohod po nastupajućim sajmovima grafike i konferencijama. MaPZone uglavnom operiše u realnom vremenu, čak i na jednojezgarnim procesorima, pa i onda kada renderujete komplikovane teksturne modele. To naravno ne znači da nećete moći da iskoristite sve prednosti svog dual core ili quad core procesora – MaPZone je multithread-ovana aplikacija, koja će vas u malom info baru regularno obaveštavati o tome koliko jezgara koristite.

(kliknite za veću sliku)

Najveći nedostatak ovog proizvoda je nepostojanje detaljnije dokumentacije. Dokumentacija koja postoji na sajtu se zasniva na opisu kontrola na interfejsu, a to nije ono što je neophodno novim korisnicima. S obzirom na ideju i filozofiju rada, treba pokazati korisnicima kako da „misle“ u skladu sa novim, kreativnim korisničkim interfejsom. Video tutorijali su odlična ideja, ali su postojeći najčešće bez tona ili nisu na engleskom, što im smanjuje upotrebljivost kod najšire publike. Druga zamerka tutorijalima je ta da su oni pre raskošno zamišljene demonstracije mogućnosti MaPZone-a nego edukativni resurs za umetnike koji do tada nisu radili u ovom programu. Ostavljajući iza sebe drugu deceniju u svetu kompjuterske grafike, potpisniku ovih redova bilo je teško da razume zašto je za neke relativno jednostavne teksture iz pomenutih tutorijala bilo potrebno i po 80 čvorova na vrlo komplikovanim kompoziting grafovima.

Važnije od svega toga je ipak konstatacija da je kvalitet tekstura proizvedenih MaPZone-om vrhunski i da one odgovaraju kako 3D animacijama tako i specijalnim efektima ili generisanju interaktivnog 3D sadržaja. Kvalitet ovog softvera je potvrđen i činjenicom da je Allegorithmic potpisao ugovor o saradnji sa Microsoft XNA klubom koji je MaPZone uvrstio u svoj standardni arsenal. Gledajući na dilemu oko Photoshop-a s početka ovog teksta, jasno je da MaPZone nije tu da zameni „velikog“, ali je potpuno sigurno da ćete sa ovim programom lakše prolaziti mnoge staze i bogaze teksturiranja. Sve preporuke za MaPZone i još jednom pohvala Allegorithmic-u na dodatnom trudu da njihov softver ostane besplatan i dostupan svima – korisnička zajednica to ume da ceni!