|
Koliko često izađe softver nakon čijeg releasa poželite otići među developere i sve ih redom izgrliti? Ne znam za vas, ali kod mene je taj nagon proradio kad je Unity 1.0 ugledao svjetlo dana. Bilo je to 2005. godine, dok je Unity još bio beba koju su David, Nicholas i Joachim porodili vjerujući da su napravili "pravu stvar". Iako je već tada, ne posebno bogat featurima, odskočio od jednako ne-posebno-bogate konkurencije, pažnju je privukao kao jedan od rijetkih game engina raspoloživih za Mac, koji, usput, od korisnika ne traži diplomu Stanforda za uspješno korištenje.
Tri muškarca i Unity
Unity je svoju premijeru doživio u lipnju 2005. na WWDC-u, kao Appleov uzvanik. Već sljedeće godine, u kolovozu 2006., nagrađen je kao runner-up Appleovim Design Awardom za najbolje korištenje Mac OS X grafike. Tijekom narednih godina polica za nagrade hrabro je odoljevala pritisku sve veće težine kipića koji su se na njoj gomilali, a ove godine vrijeme je za novu policu jer je Unity okrunjen s prestižnim Develop Grand Prixom i ništa manje laksavim Technology Innovation Awardom dodijeljenim u softverskoj kategoriji od strane Wall Street Journala. Čini se da je trojac doista napravio "pravu stvar".
|
|
Ne, ovo nije koksara u Bakru.
|
Svoje oduševljenje Unityem podijelio sam s vama krajem kolovoza 2008., uzvikujući "Živjelo bratstvo i jedinstvo". Ako ste ga preskočili u strahu od neprikrivenog komunističkog pamfleta - preporučam da nadoknadite propušteno, ne grize. :) Tada je Unity bio već itekako solidan komad softvera i nosio je oznaku 2.1. Krajem te godine mnogi su ih poželjeli zagrliti jer je otvorio vrata jednostavnog razvoja 3D aplikacija i za iPhone. Kompanija (Unity Technologies) se preko noći udvostručila: kako u osoblju, tako i u broju prodanih licenci. Unity se preselio i na Windowse, a osim na iPhone (danas: iOS) omogućio je deployment na Wii, PS3 i Android. "One engine to rule them all", složio bi se i ovdje Tolkien, ali i veliki igrači poput Electronic Artsa koji su također uskočili u Unity vlak.
|
|
Jednim klikom? Jednim klikom!
|
Nevjerojatno
Krajem prošle godine izdana je potpuno ispolirana verzija 2.6 i šokirala je korisnike time što je postala - besplatna. Licencu je od tada potrebno kupiti samo za Pro, iOS i Android verziju, odnosno za Wii/PS3 koji se licenciraju posebnim ugovorima. Zlobnici će primjetiti da se ta odluka poklapa s promjenom licencnih uvjeta korištenja Unreal Development Kita, ali:
- UDK još uvijek postoji samo za Win
- od "besplatne" licence do komercijalno upotrebljivog alata korisnika dijeli poveća hrpa šuškavih papirića s likovima američkih predsjednika
- ne morate se ni truditi bez diplome Stanforda - OK, može i FER-a
|
|
A kad se potrudite, dobijete ovo.
|
Zvončići, zvončići...
Verzija 2.6 bila je aktualna do prije desetak dana. A onda, nakon gotovo 4 mjeseca iscrpljujućeg beta-testiranja, skinut je NDA sa sljedeće verzije i 3.0 postalo je svima dostupno izdanje - izdanje koje je ponovo probudilo isti onaj nagon za grljenje developera! No, sad ih je već 50+ pa, po novim licencnim uvjetima, svaki korisnik Unitya ima pravo izgrliti samo jednog od developera u timu. Srećom: po vlastitom izboru.
A zašto uopće grlimo developere? Zato što nema drugog načina za im se zahvaliti za ono što nam poklanjaju za 0 kn ili za "čak" $1.500 koliko košta Pro licenca!
Pokušat ću biti slikovitiji: kada u softver koji vrijedi kao "suho zlato" (v2.6) ubacite samo dvije dodatne komponente od kojih svaka inače košta peteroznamenkastu cifru u dolarima (i to za jednokratno korištenje!) - ili se zapitate koji to Soros financira lude Dance i kako se uklapaju u plan s kojim je i Veliki Meštar upoznat samo na need-to-know bazi - ili jednostavno prihvatite da je Božić ove godine uranio.
Što se krije ispod bora?
Naizgled - ništa. :)
Ušavši u 3.0 imate dojam da ste tamo gdje ste bili i do sada. Sve je nekako poznato, razlikuje se jedino po crnom skinu (u Pro verziji), nalik onome iz zadnje Maye, Maxa ili CS5. To je dobra vijest jer kada bi sve izgledalo "drugačije", bila bi to potvrda da ono što ste do sada koristili zapravo nije valjalo. :)
S obzirom da je sve naizgled isto, osnovni koncept je rock-solid i 5 godina kasnije - to se zove imati jasnu viziju proizvoda!
Ono što nećete ni vidjeti su novosti ispod haube - velik dio enginea napisan je iznova. Satkan je od 5 godina iskustva u razvoju dosadašnjeg, oslobođen je dječjih mušica, optimalno je prilagođen svim spomenutim platformama i u konačnici je, a to je najvažnije, značajno brži od svog prethodnika. U prijevodu: imat ćete bolji framerate starih projekata.
|
|
Framerate za ubiti konkurenciju!
|
Editori svih zemalja - znate što vam je činiti
Ako ste korisnik više od jedne licence (najčešće su to Pro i iOS), mahat ćete repom vidjevši da od sada desktop i mobile deployment više nisu rasuti u dvije zasebne instalacije Unitya. Uz v2.6, namijenjen desktop deployingu (Mac/Win standalone, Mac/Win web player, Mac widget), na disku ste morali imati i v1.7 za iPhone/iPad (iOS) deployment. Ne bi bilo ni toliko strašno da v1.7 nije baziran na v1.x editora koji u odnosu na funkcionalne apgrejde v2.x djeluje kao dinosaurus (korisnike je lako razmaziti!).
Da bude apsurdnije, taj dinosaurus je imao ugrađen culling kako bi se iPhone developerima olakšao život. Culling je tehnika "skrivanja" 3D objekata/poligona koji se ne vide s neke pozicije na 3D sceni, kako bi se olakšao posao grafičkoj kartici. Bez cullinga bi 3D na iPhoneu bio neupotrebljiv. A culling nije trivijalan za implementaciju. Ostat će vječna zagonetka zašto culling nije bio implementiran i u desktop verziji (2.6). :/
Kako god, sve te muke su postale prošlost s 3.0 - o cullingu malo kasnije, a najvažnije je da od sada postoji samo jedan editor u kojem se može developati za SVE: od iPhonea do PS3 - naravno, sukladno instaliranim licencama.
Funkcionalna kozmetika
Editor je doživio brojne plastične operacije koje ćete otkriti tek po putu. Ili nećete jer ćete biti uvjereni da su oduvijek tamo - jer je logično da su oduvijek bile tamo. :)
|
|
Mmm... njami!
|
Tvikanje postavki nije bilo nikad jednostavnije, a imajući na umu deployment na različite platforme to je itekako dobrodošla opcija. Shvatit ćete kad vam postane jasno da više ne morate mijenjati ikonice NAKON builda - Unity će sve obaviti za vas i isporučiti vam finalni proizvod.
Uveden je Object Picker - praksa je pokazala da se sa dosadašnjim pop-upovima nije bilo najjednostavnije snalaziti u scenama s gomilama asseta (različiti resursi korišteni u projektu: od objekata i tekstura do samih skripti). Sad se otvara prozor s thumbnailovima koji ima i vlastiti filter - štogod tražili, naći ćete!
Editoru je dodan "snapping" koji omogućava "prislanjanje" 3D objekata bazirano na njihovim vertexima (točkama). Scene (u igrama) se obično grade ponavljajući elemente tipa "komad ceste", slažući ih jedan do drugoga, a to sa snappingom postaje dječja igra. Bez snappinga je zahtjevalo manualno pozicioniranje na prethodno izračunatu koordinatu i kao takvo je trošilo bitno više vremena. A pritom bi i zjevali od dosade.
|
|
Curve Editor je od sada dostupan u Inspectoru - natežite krivulje do mile volje!
|
Pretraživanje - za ovo im treba dati posebnu nagradu. :) Briljantan koncept: imate scenu prepunu šarenih objekata (jer scene obično jesu prepune šarenih objekata). I tražite "stol". Koji se zove "stol". I negdje je na sceni. Do sada ste ga mogli naći tako da u filter utipkate "stol" i lista objekata na koji možete kliknuti se suzi na one koji sadrže riječ "stol". Međutim, sada će se, uz to, dogoditi i sljedeće: sve što NE sadrži riječ "stol" će u editoru (u kojem imate pogled na 3D scenu) postati "blijedo" - samo će objekti koji sadrže naziv "stol" biti "u boji" - iz aviona ćete vidjeti gdje su i moći im pristupiti. A sam efekt pretraživanja će izmamiti "wow!". U konačnici ćete postajati sve senilniji samo da bi mogli pretraživati na taj način. Ali to je rizik posla. ;)
Zvjer je puštena!
Lightmapping je jedan od razloga zašto današnje igre izgledaju vraški dobro. Možda nisu igrive poput Froggera, ali ponekad jednostavno poželite napraviti snapshot i okačiti ga na zid, kraj omiljenih vam goblena. Lightmapping je, stručnim rječnikom, veliki pain in the ass. Zahtjeva savršenu topologiju 3D modela kako bi dotični mogao imati jednako savršenu UV mapu i onda se sve to lijepo osvijetli u 3D aplikaciji, "bejka" i kao tekstura proslijedi u neki real-time engine (Unity, u ovom slučaju).
Ako potom art-direktor odluči u mjesečinom osvjetljenu uličicu dodati narančastu lampu, ponavlja se proces osvjetljavanja i "bejkanja", generirajući novu teksturu. Ako se art-direktor ponovo predomisli, sljedeći dan ga pronađu u nekoj mjesečinom osvjetljenoj uličici, bez pulsa.
Kako je art-direktor bez pulsa prilično beskoristan, rješenje je kompletan dio posla iz 3D aplikacije preseliti u Unity i omogućiti mu da se predomišlja do mile volje. Tako je i učinjeno! Unity je dobio alat za lightmapping i to ne bilo koji - dobio je Beast, zvjer među alatima za lighmapping, jednu od one dvije komponente čije se licence inače plaćaju po cijeni limuzine srednje klase.
Od sada: krijesnice!
Lightmapping ima smisla samo kada se na sceni ništa ne miče. Mračna ulica osvjetljena mjesečinom se ne miče. Ali zato roj krijesnica u istoj toj uličici radi problem. Zato valjda nikad ne vidimo roj krijesnica u mračnim ulicama u igrama.
No, ubuduće ćemo vidjeti i njih jer je Unity dobio "deffered rendering". Koliko god je tehničko objašnjenje zanimljivo i cure mi sline dok se trudim uživo objasniti ga u svoj njegovoj genijalnosti, skratit ću na činjenicu da deffered rendering znači gomilu dinamičkog svjetla na sceni. I nikad realističnije scene!
U sjeni
Dok još zadovoljno trljate ruke jer ste ušićarili Beast za 0 kn, primjećujete da se u izborniku sakrio i Occlusion culling. I to ne bilo koji već - Umbra! Ono što je Beast za lightmapping, to je Umbra za occlusion culling. Onda valjda nije ni čudo da će vas i Umbra koštati koliko i Beast: točno 0 kn. :)
Umbra je za Unity razvila novi "Precomputed Visibility Solution" algoritam. Osim što savršeno odrađuje posao i skriva sve što treba sakriti kako bi framerate bio što veći, vraški dobro izgleda i u editoru dok tvikate postavke - pogotovo ako ste ljubitelj Trona. :)
Stereo? Naaah.
Bilo je vrijeme da Unity dobije debuger. Ali ne samo da je dobio debuger nego je uz dosadašnji Unitron (editor koda baziran na Smultronu), dobio pravi pravcati IDE: MonoDevelop! I u njemu debuger (za korištenje kojeg, istina, morate imati Pro licencu - napomenut ću i da su oba vrijedna poklona, Beast i Umbra, također dostupni samo u Pro verziji!).
Da bude malo manje zbunjujuće zašto baš MonoDevelop (a ne... Xcode): u Unityu se za programiranje/skriptanje koriste JavaScript, C# i Boo, a sve skupa počiva na open source .NET platformi poznatijoj kao - Mono.
Unity traži zvijezdu
Kada u alatu poput Unitya već imate Beast i Umbru, tišina nije opcija. Zato je audio doživio krupan upgrade i sada zvuči bolje nego ikad! U Pro verziji dostupni su audio effect filteri s kojima možete izvoditi čuda sa zvukom. Bilo je i vrijeme!
Car više nije gol
Kada sam, prije desetak godina, prvi put vidio Mayin Cloth, modul za fizikalnu simulaciju mekih tijela (soft bodies), bio sam istovremeno oduševljen što postoji i radi to što radi, i razočaran vidjevši koliko sporo radi to što radi, znajući da još neko vrijeme nećemo vidjeti takve efekte u realnom vremenu. PS3 me nekoliko godina kasnije uspješno uvjerio u suprotno, ali i dalje nisam fiziku mekih tijela doživljavao kao nešto trivijalno. Onda je Will Goldstone pokazao Cloth Physics Unity demo i ne znam što je bilo šokantnije: vidjeti demo ili shvatiti da ga spominju tek toliko da ga spomenu, kao da su promjenili ikonu ili nešto još manje nevažnije. Ponašajmo se u skladu tim, nemojmo pljeskati, idemo dalje.
Entska posla
Bit će da je u ekipu Unity developera ušao i neki šumar jer UDK korisnici više neće imati puna usta svog omiljenog SpeedTree Editora - Unity je dobio Tree Creator. I jako je zabavan! :) Na stranu to što je zabavan, činjenica je da više ne moramo importirati gotova 3D stabla, možemo ih proceduralno modelirati!
Nije ni čudo da već danima slušam Crvene koralje, kao potencijalni soundtrack, i pokušavam osmisliti igru s drvosječom. Bit će hit u AppStoreu!
|
|
Drvosječa da sam ja, a ti da si dama...
|
Kako se obogatiti u Hrvatskoj?
Nabrojao sam neke od najvidljivijih novosti u Unityu 3, ali to svakako ne iscrpljuje listu novotarija. No, sasvim su dovoljan razlog za zagrliti developere. Pogotovo kad nam dođe do mozga da slogan "The Most Powerful Engine This Side of a Million Dollars" ima itekakvo pokriće!
Ako s vremena na vrijeme maštate o tome da putem AppStorea prodate svoju igru u milijun primjeraka, a odustali ste od Xcodea jer ste u njemu izgubili vlastito samopouzdanje - probajte Unity. Koštat će vas, znate već i sami, točno 0 kn - a samopouzdanje bi moglo dobiti adrenalinsku injekciju. :)
|