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 #109 : Mart 2005 Knjiga 50 godina racunarstva u Srbiji

 Naslovna  Sadržaj 
Stevan Josimović  

Blender zadužbina

Nešto pre Nove godine Blender zadužbina plasirala je verziju 2.36 ovog popularnog paketa. Lista rešenih bagova je poduža, a dodati su i neki značajni noviteti.

Blender je open source proizvod i distribuira se pod GPL licencom. Do pre godinu-dve korisnici bi posezali za open source softverom samo onda kada ne bi bilo drugog izlaza, dok danas stvari stoje drugačije – treba ozbiljno razmotriti sve pretendente na tržištu pre nego što izabere softver koji ćete koristiti. Blender je jedan od najboljih dokaza te tvrdnje – od jednostavne 3D aplikacije u nekoliko godina i koraka (čitaj: verzija), prešao je put do ozbiljnog 3D paketa, koji se, bez većih problema, takmiči sa skupim komercijalnim proizvodima.

Detalji Blender-ove GPL licence su standardni: softver možete distribuirati bez ograničenja, možete ga menjati i dorađivati, možete to i naplatiti koliko god želite (odnosno koliko je neko spreman da plati), ali morate obezbediti potpuno iste uslove svojim krajnjim korisnicima. To znači da im morate dozvoliti da softver kopiraju i distribuiraju dalje, ali im morate isporučiti i kompletan source code koji ste vi promenili/dodali – ukratko, sasvim džentlmenski ugovor.

Kako se GPL licenca odnosi na umetnike koji takav alat koriste? Svaki fajl koji predstavlja izlaz iz Blender-a je vaše vlasništvo po svim pitanjima, pa i po pitanju copyright-a. To znači da će svaka slika ili animacija biti potpuno nezavisna od GPL licence i da vaš rad nikako neće biti manje vredan od onoga koji biste stvarali komercijalnim paketom. Naravno, postoje i izuzeci kao što su recimo slike Blender-ovog GUI-ja koji je sam po sebi pokriven GPL licencom. Tek nešto komplikovanija situacija je ukoliko koristite Blender-ov game engine za izradu video-igara (za njegovo predstavljanje bio bi potreban još jedan tekst ove dužine). Kao i kod slika i animacije, sve što predstavlja izlaz iz Blender-a je vaše vlasništvo, ali morate voditi računa o fajlovima koje distribuirate uz vašu video-igru jer su neki od njih pokriveni GPL licencom. Više detalja potražite na www.blender3d.org.

Gde smo ono stali...

Blender je od verzije 2.28, koju smo predstavili u PC #94, pretrpeo mnogo promena. Pre svega, postao je značajno stabilnija aplikacija i to je nešto što će svi korisnici iz Blender zajednice dočekati sa velikim olakšanjem. Veliki broj alata je usavršen, a dodat je i izvestan broj novih.

Novi korisnički interfejs je potpuno razvijen u OpenGL-u što vam omogućava da zumirate i panujete preko interfejsa, tastera, tekst polja i slično. Ovo je korisno jer vas oslobađa velikih strategija oko upravljanja korisnom površinom ekrana. Osim toga, Blender zajednica je ovim dobila puno jer je sada moguće raditi video-tutorijale u nižim rezolucijama, što zbog usitnjenog korisničkog interfejsa nije lako sa ostalim 3D paketima.

Plivajući paneli su poboljšani, uz hrabar potez da se od korisnika očekuje da pozicionira kursor ne baš na samu liniju podele, već više ka smeru u kojoj želi podelu datog panela. Osim toga, takozvani panel hederi mogu se potpuno isključiti ili pozicionirati na bilo kojoj strani panela, a svaki od plivajućih panela može da „uskoči“ u full-screen i da se vrati nazad primenom prečice na tastaturi. Kad smo već kod prečica, treba reći da se na njima u novoj verziji još više insistira, mada to ne treba da vas plaši jer je dobar deo funkcija raspoređen ravnopravnije na sva tri tastera miša, tako da je ukupni broj prečica koji morate zapamtiti manji nego ranije. Uz to su meniji logičniji i pregledniji, pošto neki tasteri odražavaju tri stanja, a kontekst-meniji su dobili i podmenije pa je snalaženje nešto intuitivnije.

Osećaj pod prstima

(kliknite za veću sliku)

Blender izgleda potpuno isto na svim platformama što je svakako plus, mada je ova politika već pretrpela prve kritike iz Mac tabora. Ovo je donekle i razumljivo pošto su Mac korisnici „razmaženi“ prvoklasnim vizuelnim dizajnom softvera koji koriste. Osim toga Blender se sa svojim interfejsom nikako ne uklapa u najnoviji Mac look-and-feel. Blender-ov korisnički interfejs nije ni ružan ni nefunkcionalan, ali svakako nije ni u Mac, ni u Windows stilu pa će korisnici, navikli na tipičan platformski izgled aplikacija, morati da potroše nešto više vremena na uhodavanje.

Situacija je donekle ublažena činjenicom da interfejs možete prilagoditi sebi i svojim potrebama, a onda takva podešavanja snimiti i pozivati po potrebi. To vam omogućava podešavanje za svaki posao u Blender-u ponaosob, što znači da ćete uvek biti „kod kuće“. Pogledajte i dodatni skin koji dolazi uz Blender, sa zaobljenim plutajućim panelima što nekim korisnicima izgleda lepše od standardnog oblika – mada lično nisam ubeđen u to.

Iako funkcionalnost nije goruće Blender-ovo pitanje, opšti utisak je da work-flow nije iščišćen od svih „bubica“. Povremeno ćete primetiti da u nekim procedurama postoje prilično nepotrebni koraci. Primer je upotreba dupliframes-a u tipičnoj rail extrude operaciji. Naime, pošto podesite parametre i dobijete poprečne preseke duž putanje (ili rail-a), da biste stigli do konačnog ekstrudovanog objekta moraćete dupliframes objekte-duhove prvo da pretvorite u stvarne NURBS objekte, pa tek onda da primenite extrude. Ovaj korak je nepotreban jer su putanja, a pogotovo poprečni preseci, privremeni objekti koje posle uspešnog ekstrudovanja brišemo. Tako Blender, umesto da nam uštedi korak u ovoj operaciji, u stvari dodaje dva nova.

Pomenimo i terminološku razliku između objekta i meša (ili mreže). Objekat je tačka u sredini oko geometrije i slične paradigme smo sretali ranije u vidu parentovanih null objekata ili pivot tačaka, dok je meš u stvari sama geometrija. Ova dva termina nikako ne treba mešati, što često zasmeta početnicima koji nisu naviknuti na doslednu objektnu orijentaciju aplikacija.

Dobro podmazana mašina

Moduli Blender-a su čvrsto integrisani pa on odaje utisak „dobro podmazane mašine“. Utisak dopunjava mnoštvo dodataka kao što je integrisani tekst-editor, koji će vam odlično poslužiti prilikom vođenja beleški o projektu ili editovanju Python skriptova. Zgodna opcija je i prelazak u tzv. lokalni pogled, kada se objekat na kome radite apstrahuje iz scene, što pročisti 3D prikaz za osetljivije modelarske zahvate. Iako sličnu stvar možete dobiti i upotrebom lejera, koncepcijski je ovo daleko bolje rešenje. Kad smo kod lejera, pomenimo da ih u Blender-u možete imati do 20, što je uglavnom dovoljno. Interesantno je da objekti mogu postojati u više lejera odjednom – deluje zbunjujuće, ali je ideja u tome da dok radite u lejerima možete kontrolisati osvetljenje ili položaj objekta sa kojim radite u odnosu na pozadinske objekte, npr. zgrade, puteve ili planine.

Sve ovo ima snažnu podršku u .blend fajl formatu, koji čuva čitav projekat, nalik onome što smo viđali kod Softimage-a. Dosetljivi korisnici su, oslanjajući se na Append funkcije, počeli da koriste .blend fajlove kao biblioteke objekata, kamera, materijala i svega ostalog što .blend može da čuva u svojoj strukturi. Budući da se unutar .blend fajla mogu čuvati i višestruke scene, posebno je interesantan način na koji te scene mogu biti povezane među sobom (link objects, link object data, empty i full copy).

Da biste videli šta se sve nalazi u sceni koristićete OOPS schematics koji omogućava i da se menjaju veze među objektima. OOPS schematics je urađen u OpenGL-u, a objekti sa kojima radi nisu samo oni koji imaju geometriju, već svi objekti koji se mogu naći na sceni: kamere, svetla, krive...

Rampe i ostale zanimacije

(kliknite za veću sliku)

Rampe (RAMPS) su proceduralne teksture sa gradijentima i alfom. Rampe poseduju sijaset opcija kojima se kontroliše distribucija boje preko geometrije u zavisnosti od blizine svetla (odnosno, u radiosity terminologiji, energije) ili kamere (udaljenost + ugao gledanja). Ovaj dodatak materijalima podseća na kontrole kakve ima Lightwave, pa su praktično i mogućnosti ekvivalentne, što je opet za svaku pohvalu pošto Lightwave to radi jako dobro. Ni blend metod iz Photoshop-a nije izostavljen, pa je odlični set kontrola sa ovim zaokružen. Rampe su veoma brze i upotrebljive, ali ne zamenjuju image teksture i shader-e.

Ni alati za modeliranje nisu zapostavljeni u novoj verziji. Dupliframes je postojao i ranije, ali su prikaz i upotebljivost značajno povećani. Osim kao rail array alat, dupliframes može da posluži i kao neka vrsta primitivnog onion-skining-a, pošto se prikazani duh-objekti ne realizuju dok se to eksplicitno ne zatraži. Tako se prilikom pomeranja nekog objekta duž putanje (rail-a) može videti prolaz kroz sve duh instance. Kontrola instanciranja duž putanje je detaljna pa tako možete podešavati da li će brzina kretanja datog objekta uticati na instanciranje ili bi ono trebalo da bude konstantno. Osim toga kroz pathlen parametar možete setovati broj frejmova na putanji nezavisno od broja kontrolnih tačaka na krivoj, koja zbog toga može biti i Bezijeova kriva sa vrlo ograničenim brojem kontrolnih tačaka.

Dupliframes se ne slaže baš najbolje sa sistemom funkcijskih krivih kojima se kontroliše animacija – u Blender žargonu: IPO (interpolation) curves. Razlog je što IPO krive preuzimaju kontrolu nad brzinom kojom se kreće objekat po krivoj, pa dupliframes zbog toga češće služi kao modeling nego animatorski alat. IPO krive imaju perfektnu kontrolu nad položajem i brzinom objekata u pokretu. Doslovce svi parametri koji se mogu animirati imaju zasebne kanale na IPO grafiku, a neki od njih pored svojih apsolutnih verzija imaju i relativne u kojima se kontroliše intenzitet promene po datom kanalu. Sve IPO krive su Bezijeovog tipa a kontrolne tačke (odnosno ključni frejmovi) kontrolišu se preko dve klasične ručke. Na ovom grafiku možete kontrolisati i ciklično ponašanje pokreta, a jedina stvar koja nedostaje da bi i ovaj modul bio ekvivalent adekvatnog modula iz Lightwave-a, jesu proceduralni ili skript modifikatori kretanja.

Najbolje i ostalo

(kliknite za veću sliku)

Blender u nekim stvarima jednostavno briljira, ali bi se moglo reći i da je kod nekih drugih opcija na staklenim nogama. Recimo, subsurfs radi klasične subdivide operacije, ali Blender nudi čak dve vrste: obične ili jednostavne i Catmull-Clark subdivide operacije.

U jednostavnim subdivide operacijama geometrija se umnožava ali se njen oblik ne menja u organski, dok Catmull-Clark radi upravo to. Svoje subdivide objekte možete gledati u nižem nivou subdivide-a od onoga u kojem ćete ih renderovati, što značajno ubrzava prikaz, a samim tim i rad sa tim objektima.

UV mapiranje je dovedeno do savršenstva u LSCM UV Mapping opciji (Least Square Conformal Mapping). Definišete šavove po kojima će se razviti UV mapa, što je fenomenalan nivo kontrole. Zatim će LSCM razmotati (unfold) mapu pokušavajući da zadrži uglove iz geometrije. Rezultati su obično sjajni već iz prvog pokušaja, ali čak i ako neki deo mreže nije „odvijen“ kako treba, tu je opcija pin kojom ćete fiksirati određene vertekse iz mreže i „odvijanje“ će tada odraditi posao kako treba. Blender takvu UV mapu izvozi u raster željene rezolucije i sve što vam preostaje je da u GIMP-u ili Photoshop-u „skrojite odelo" za svoju geometriju.

S druge strane, dodati objekti se neki put ne pojave na sceni, pa ćete morati da ponovite render da bi stvari legle na mesto. Operacije koje traju duže nemaju nikakvu poruku o završetku, pa nikad niste sigurni da li je operacija uopšte obavljena. Konačno ako Blender pretenduje na masovniji ulazak u studije, neko će morati da se pozabavi mrežnim renderom, a s tim u vezi i sa eksternim rendererima. Trenutno Blender podržava YAFRAY koji je pristojno brz i pravi odlične slike. YAFRAY ima podršku za distribuirani render, ali se postavlja pitanje koliko će Blender prihvatiti ovaj renderer kao svoj i šta će se dešavati ako YAFRAY jednog dana postane komercijalni proizvod. U tom smislu jako je bitna vest koja je prostrujala neposredno pre pojave verzije 2.36 o Piovra projektu – network rendering skriptu za Blender. Radi se o italijanskom softveru, a više informacija dobićete sa www.idstudio.it/piovra/.

Iza ruba Zadužbine

(kliknite za veću sliku)

Budući da Blender možete da pribavite sa Interneta i da ga legalno koristite bez plaćanja, dajte mu šansu – neće vas razočarati. Podrška koju ovaj softver ima među korisnicima je fenomenalna: odlični tutorijali u HTML ali i video formatu čekaće vas na svakom koraku. Dokumentacija je iscrpna i odlično napisana, pa je sva prilika da ćete probleme moći i sami da rešavate. O Blender-u je napisano i sijaset knjiga – neke su besplatne, neke možete download-ovati uz minimalnu naknadu, dok ostale možete naručiti sa Amazon-a ili neke druge svetske knjižare.

Konačno, track record je nešto čime se Blender može podičiti i što mu garantuje svetlu budućnost. Krug korisnika je iz meseca u mesec sve širi, a Python skriptovi niču kao pečurke posle kiše. Već sada, Blender može skoro sve što i komercijalni konkurenti. Možda nije uvek najudobnije, ali nije ni kod konkurencije. Trebaće vam izvestan trud da savladate Blender ili da se prešaltujete sa neke druge platforme, ali će to po svemu sudeći biti odlična investicija jer Blender-ovo vreme tek dolazi.