Ako se bavite 3D modeliranjem i renderiranjem, zasigurno ste se susreli s problematikom umetanja 3D modela u 2D sliku. Uspješno određivanje odgovarajuće perspektive ovisi o nizu čimbenika i bez pomoći specijaliziranih programa čitav postupak uglavnom se svodi na pokušaje i ispravljanje pogrešaka. Zajedničko svojstvo većine takvih programa jest, nažalost, visoka cijena, pa ćete se – osim ako se profesionalno bavite fotogrametrijom (pojednostavljeno rečeno, rekonstrukcijom 3D scene na osnovi 2D slika) – obično oslanjati na svoju subjektivnu procjenu. U Blenderu je otežavajuća okolnost i ta što postavke leće na virtualnoj kameri ne odgovaraju istim postavkama leća na stvarnim fotoaparatima. Ipak postoji nekoliko načina da se postignu dobri rezultati, a mi ćemo opisati jedan od njih.
Odabir odgovarajuće slike
3D modele moguće je umetnuti u bilo koju 2D sliku, ali najbolje rezultate postići ćete ako koristite slike napravljene vlastitim digitalnim fotoaparatom za koji znate ili možete pronaći tehničke podatke poput dimenzija ugrađenog čipa. Ti podaci trebaju vam zbog skripte BLenses (preuzmite je sa stranice home.metrocast.net/~chipartist/BlensesSite/index.html) koja će vam pomoći u podešavanju leća virtualnog fotoaparata (kamere) prema postavkama vašeg stvarnog uređaja. Datoteke iz arhive s ekstenzijom PY smjestite u mapu .blenderscripts (pod instalacijskom mapom Blendera), a preostalu CFG datoteku smjestite u mapu .blenderscriptspydataconfig.
Da biste odredili nagib kamere pod kojim je neka slika napravljena, na njoj bi trebale biti vidljive dvije stranice nekog pravokutnog objekta (poput kuće, odnosno zgrade). Poželjno je da su vidljive sjene, kao i dijelovi objekta koji ih stvaraju (tako da ih možete vizualno povezati – primjerice, vrh ulične svjetiljke s vrhom sjene koju ona stvara). To će vam pomoći pri određivanju odgovarajućeg položaja svjetala (sunca) u sceni. Ako se radi o slici interijera, trebao bi biti vidljiv jedan kut prostorije te spojevi s plafonom i podom (ako je prostorija premala, kao referenca mogu poslužiti, na primjer, i slike na zidovima koji čine taj kut). Bez takvih referentnih objekata nemoguće je pouzdano odrediti horizont koji nam je potreban da bismo pronašli odgovarajući nagib kamere.
Priprema scene
U centar scene u Blenderu umetnite običnu plohu i poravnajte je s pogledom sprijeda. Postavite dimenzije plohe tako da se poklapaju s dimenzijama odabrane slike – primjerice, ako je veličina slike 2048 puta 1536 piksela, postavite veličinu plohe na 2.048 puta 1.536 Blender jedinica. Dodijelite joj novi materijal kojem ćete aktivirati opciju TexFace. UV mapirajte je iz pogleda sprijeda koristeći projekciju Project from View (bounds) i u UV/Image Editoru učitajte sliku koju ste odabrali. Završite sve editiranjem plohe i aktivirajte teksturirano iscrtavanje objekata (Alt+Z – na plohi biste trebali ugledati učitanu sliku).
Kameru također poravnajte s pogledom sprijeda i centrirajte je u odnosu na plohu. Pokrenite skriptu BLenses (trebala bi se nalaziti u izborniku Scripts pod stavkom Wizards). U sučelju skripte vidjet ćete niz opcija od kojih su nam bitne samo prve tri – Lens Focal Length (žarišna udaljenost), Image Aperture Width i Image Aperture Height (širina i visina osvijetljene površine filma ili CCD čipa). Ako koristite digitalni fotoaparat, žarišnu udaljenost možete vidjeti u EXIF podacima slike, ali do ostalih dviju vrijednosti teže je doći, jer se uglavnom ne nalaze u dokumentaciji kamere. Tu ćete se, nažalost, morati osloniti na Internet i nadati da postoje podaci za vaš model.
Unesite prikupljene podatke u skriptu, aktivirajte tipku Use Infinity Focus i kliknite na tipku Calculate & Set FOV. Vrijednost leće aktivne kamere u Blenderu bit će postavljena na onu koja odgovara podacima vaše prave kamere.
Postavite veličinu renderirane slike (jednakog omjera širine i visine referentne slike). U pogledu kamere njezinim pomicanjem uzduž osi y poklopite rubove plohe s isprekidanim linijama koje označavaju rubove renderirane slike. Za kraj, u tipkama World pod karticom Preview kliknite na tipku Paper, dodajte novu teksturu u koju ćete učitati odabranu sliku i mapirajte je na Horizont.
Traženje horizonta
Postavite Parent plohe na aktivnu kameru (ploha će tako pratiti rotaciju kamere) i u Outlineru onemogućite njezin odabir i renderiranje. Horizont ćemo odrediti tako što ćemo pronaći lijevu i desnu točku "nestajanja" (primjerice, kad biste stajali uz neku vrlo dugačku zgradu i gledali je uzdužno, činilo bi vam se kako ta zgrada nestaje u jednoj točki na horizontu). Postavite centar skaliranja i rotacije na 3D kursor, dodajte Empty Mesh u scenu i aktivirajte mu opciju x-ray (u tipkama objekta, tako će se verteksi i bridovi koje ćete stvoriti vidjeti kroz plohu). Povežite ga s kamerom (kao što ste povezali plohu) i aktivirajte uređivački način rada. Ako ste odabrali sliku na kojoj se nalazi, recimo, kuća, dodajte prvi verteks na kut kuće najbliži kameri, na mjestu gdje temelji kuće nestaju u tlu i odmah pomoću dijaloga Snap smjestite 3D kursor na taj verteks. Drugim verteksom kreirajte brid koji će se poklopiti s linijom temelja s lijeve strane kuće i skaliranjem produžite tu liniju za, primjerice, 10 puta. Poništite odabir i na jednak način kreirajte brid koji prati liniju ruba krova s iste strane kuće. Mjesto gdje se ta dva brida (linije perspektive) susreću predstavlja lijevu točku nestajanja. Ponovite postupak za desnu stranu kuće i pronađite desnu točku nestajanja.
Liniju horizonta kreirat ćete tako da dodate zaseban brid i poklopite jedan njegov verteks s lijevom točkom nestajanja, a drugi s desnom (pomoći će vam krajnji zoom pogleda i aktivirano hvatanje na najbliže bridove). Najvažnije u ovome postupku jest da što preciznije odredite linije točaka nestajanja, jer i najmanja odstupanja jako utječu na položaj horizonta.
Određivanje nagiba kamere
S obzirom na to da smo kreirali brid horizonta, tj. brid koji predstavlja horizont, ostale bridove kojima ste odredili točke nestajanja možete obrisati. Najprije ćemo odrediti kutove nagiba kamere, pa odaberite jedan verteks i ekstrudirajte ga uzduž osi x u smjeru drugog verteksa. Kut pod kojim novi brid siječe horizont predstavlja uzdužni nagib kamere (vidjet ćete točno koliki je u stupnjevima ako od tih dvaju bridova kreirate trokut i u tipkama Editing pod karticom Mesh Tools More aktivirate opciju Edge Angles). Iz ortografskog pogleda sprijeda pomoću dijaloga Snap postavite 3D kursor na ishodište kamere i rotirajte je uzduž osi y na suprotnu stranu od one na koju je nagnut brid horizonta za utvrđeni kut nagiba. Kako je objekt u kojem se nalazi brid horizonta povezan s kamerom, on će se također zakrenuti, pa možete vizualno potvrditi da je brid sada paralelan s osi x. Dodavanjem trokuta s jednim verteksom u ishodištu kamere, drugim u centru scene i trećim na bridu horizonta (brid koja spaja drugi i treći verteks mora biti okomit na os x) pronaći ćete kut za koji morate kameru zakrenuti oko osi x (hipotenuza tog trokuta treba se poklopiti s osi y). Kad završite sa zakretanjem kamere, pomaknite je vertikalno za nekoliko Blender jedinica, nije bitno koliko, samo je pomaknite iz horizontalnog centra scene. Poništite položaj 3D kursora i dodajte novu plohu u scenu. Skalirajte je koliko treba da pokrije većinu pogleda kamere. Ta ploha predstavljat će tlo u sceni i trebala bi se poklapati s tlom na vašoj slici. Osnovna joj je funkcija hvatanje sjena, pa joj dodijelite materijal kojemu ćete uključiti opciju OnlyShadow.
Provjera perspektive i položaj sunca
Da biste provjerili jeste li dobro odredili nagib kamere, premjestite plohu tla u neki drugi sloj scene. U istom sloju kreirajte novi Empty Mesh u koji ćete dodavati vertekse (uključite mu opciju x-ray). Aktivirajte sloj u kojem se nalazi slika zgrade te dodajte jedan verteks. Poklopite ga s kameri najbližim kutom zgrade na spoju temelja i tla. Deaktivirajte sloj sa slikom, uključite alat Retopo i kliknite na tipku Retopo All. Time ćete projicirati verteks na plohu iza njega. Dodajte kocku u scenu i postavite joj origin (ishodište) na jedan od njezinih donjih verteksa (odaberite ga, pomaknite 3D kursor na njega i u tipkama Editing kliknite na tipku Center Cursor). Sada pomaknite cijelu kocku točno na koordinate verteksa u Empty Meshu. Aktivirajte sloj sa slikom i rotirajte kocku oko osi z da poklopite linije temelja kuće s donjim bridovima kocke. Vertikalnim pomicanjem gornje plohe kocke poravnajte bridove s rubovima krova zgrade. Ako ih uspješno poklopite, odredili ste dobar nagib kamere.
Na kraju, da biste utvrdili smjer svjetla, na slici pronađite sjenu za koju možete odrediti što je stvara (npr. vrh ulične svjetiljke). Poklopite verteks (u Empty Meshu) s vrhom sjene i projicirajte ga na plohu tla (kao kod provjere perspektive). Postavite origin objekta na to isto mjesto, dodajte drugi verteks i projicirajte ga na podnožje svjetiljke. Ekstrudirajte ga vertikalno do vrha svjetiljke i povežite s prvim verteksom. Bridom koji ste stvorili odredili ste smjer iz kojeg dolazi svjetlo, pa dodajte jedno i usmjerite ga na Empty Mesh. Spremni ste nastaviti s ubacivanjem modela u sliku. (Damir Prebeg)




