3D vizualizacija v.prof.dr. Samir Lemeš Predavanja za predmet "Kompjutersko oblikovanje parkovskog prostora (CAD)" Šumarski fakultet u Sarajevu, 2018. 3D vizualizacija i rendering Faze 3D modeliranja Software za 3D modeliranje Materijali Osvjetljenje Sjenčenje Refleksija Okvir isijecanja Rasterizacija slike i videa Tehnike rasterizacije 1
Faze 3D modeliranja 1. Kreiranje 3D objekata 2. Pozicioniranje objekata u WCS i međusobno 3. Određivanje položaja izvora svjetlosti 4. Položaj kamere / posmatrača 5. Dodavanje teksture na objekte 6. Atmosferski efekti i pozadine 7. Renderisanje (rasterizacija) Redoslijed pojedinih faza može biti različit, zavisno od korištenog softwarea. Software za 3D modeliranje Pored izrade 2D tehničkih crteža, 3D modeli se često koriste za vizualizaciju projekta, obično za potrebe prezentacije za investitora. Vizualizacija obuhvata sve tehnike za vizualno predstavljanje ideja i komunikaciju. CAD software ima ograničene mogućnosti za vizualizaciju i zato se koriste alternative. Koriste se fotorealistični prikazi, video animacije, pa i interaktivna grafika, koja omogućuje manipulaciju objektom koji se želi predstaviti. 2
Software za 3D modeliranje Kod izbora software-a za vizualizaciju, potrebno je uporediti osnovne karakteristike raspoloživih software-a sa stvarnim potrebama dizajnera. Ako se želi samo renderisanje (rasterizacija) statične slike, lakoća korištenja nameće SketchUp kao pravi alat za tu namjenu. Ako će se 3D model koristiti i za druge namjene (od faze dizajniranja, preko vizualizacije, sve do izrade tehničke dokumentacije), onda se koristi složeniji software kao što je Autodesk Revit. Revit Osnovna prednost korištenja software-a Revit je mogućnost interakcije s drugim članovima projektnog tima, posebno sa građevinskim inženjerima, koji vrše proračune i dimenzionisanje strukture građevine. Druga prednost je brza izrada sastavnica i predmjera, koji se koriste u dokumentaciji. 3
Revit Maya Autodesk Maya je software za 3D računarsku grafiku za MS Windows, Mac OS i Linux. Od 1998. proizvod kompanije Alias Systems Corporation (Alias Wavefront) a od 2005. u vlasništvu Autodesk Inc. Koristi se za kreiranje interaktivnih 3D aplikacija, kao što su video igre, crtani filmovi ili vizualni efekti u filmovima. Ima odličnu integraciju sa software-ima za uređivanje digitalnog videa. 4
Maya SketchUp Software za 3D modeliranje, za arhitekturu, građevinarstvo, mašinstvo, ali i za industriju zabave (filmovi, igre i sl.) Omogućava smještanje 3D modela u Google Earth i korištenje Google Earth tekstura. Besplatna verzija: Google SketchUp Komercijalna verzija: SketchUp Pro Export iz Sketchup Pro u: 3ds, dwg, dxf, fbx, obj, xsi, wrl format. 5
SketchUp Autodesk 3ds Max Autodesk 3ds Max (do 2009: 3D Studio MAX), je software prvenstveno namijenjen za izradu 3D animacija. Ima vlastiti 3D modeler, a često se koristi za razvoj video igara, video animacije i efekte, te za vizualizaciju u arhitekturi. 6
Autodesk 3ds Max SierraSoft Vista 7
Materijali i teksture Za realističnu vizualizaciju potrebno je aplicirati materijale i teksture na 3D modele. CAD software obično ima biblioteku unaprijed definisanih materijala i tekstura. Materijali i teksture Teksture povećavaju prividnu složenost jednostavne geometrije. Mogu se uporediti sa lijepljenjem tapeta ili umotavanjem u elastičnu foliju Zakrivljene površine zahtijevaju dodatno rastezanje ili odsijecanje. 8
Materijali i teksture Prilikom rasterizacije, rasterske slike se transformišu tako da prekriju segmente površinskog 3D modela. Za svaki trougao na modelu uspostavlja se odgovarajući region sa fototeksture Za vrijeme rasterizacije koordinate se interpoliraju u teksturu Osvjetljenje Za realističnu sliku, potrebno je simulirati i osvjetljenje površina prikazane scene. Koristi se puno aproksimacija radi brzine rada. Modeli osvijetljenosti se dijele u dvije kategorije: Empirijski: jednostavne formulacije koje aproksimiraju fenomen koji se posmatra Fizički: modeli zasnovani na stvarnoj fizici svjetla koje je u interakciji sa materijom Radi jednostavnosti se u interaktivnoj grafici obično koriste empirijski modeli. 9
Osvjetljenje Komponente osvijetljenosti: 1. Osobine izvora svjetla: Spektar emitovanog svjetla (boja) Geometrijski atributi: položaj, smjer, oblik Usmjereno slabljenje Polarizacija 2. Osobine površina: Spektar refleksije (boja površine) Refleksija dijelova površine Geometrijski atributi Osvjetljenje Objekti koji nisu direktno osvijetljeni su ipak vidljivi (npr. plafon u sobi, donja strana stola). To je rezultat indirektne osvijetljenosti od emitera, koja se odbija od drugih površina Preteško za proračun (u realnom vremenu), pa se koristi trik: "ambijentalni izvor svjetla". Nema prostorne karakteristike niti smjer; isto osvjetljava sve površine. Količina refleksije zavisi od osobina površine. 10
Osvjetljenje Kod usmjerenog izvora svjetla smjer je konstantan za sve prikazane površine. Sve zrake svjetla su paralelne, kao da je izvor beskonačno daleko od osvijetljenih površina. ambijentalno: usmjereno: Osvjetljenje Tačkasti izvori svjetla emituju svjetlo jednako u svim pravcima iz jedne tačke. Spot-svjetla su tačkasti izvori čiji intenzitet opada usmjereno. Površinski izvori svjetla definišu 2-D površinu emitovanja (disk ili poligon). 11
Sjenčenje Sjenčenje (shading) je proces promjene boje površine 3D objekta, na osnovu ugla pod kojim je objekat osvijetljen i udaljenosti izvora svjetla. Renderisanje (rasterizacija) je proces pretvaranja 3D objekata u 2D rasterske slike, sa definisanim materijalom, osvjetljenjem, položajem posmatrača i sjenčenjem. Može se vršiti i u realnom vremenu. Sjenčenje Flat shading je tehnika brzog sjenčenja koje uzima u obzir samo ugao izvora svjetla i normale na površinu objekta, njihove boje i intenzitet svjetlosti. Smooth shading (glatko sjenčenje) koristi i druge osobine. Algoritmi za linearnu interpolaciju glatkog sjenčenja su Phong i Gouraud. 12
Refleksija Refleksija je tehnika za opis objekata koji odbijaju svjetlost (ogledala, sjajne površne): Metallic refleksije zadržavaju boju objekta. Polished potpuna refleksija, kao ogledalo. Blurry zamućenost, kao na hrapavoj površini. Glossy reflektuje samo svjetlost sa izvora. Okvir isijecanja Isijecanje je svaka procedura koja uklanja dijelove slike. Algoritmi isijecanja se koriste u 2D pogledima da bi se identifikovao dio slike koji se nalazi unutar prozora isijecanja (vidljivi dio slike). Matrice transformacija se primjenjuju samo na isječeni dio slike, kako bi se smanjio obim proračuna. 13
Rasterizacija slike i videa Za razliku od rasterizacije statičnih slika, rendering videa podrazumijeva da se izvrši rasterizacija svake scene (frame) posebno. Standardno, video ima 25 do 30 slika u sekundi (frames per second, fps). Za te svrhe, koristi se paralelno procesiranje pomoću klastera. Titanic (1997): 105 x Linux + 55 NT Tehnike rasterizacije Za proračun transporta svjetla (rendering) se koriste tehnike: Scanline rendering je projektovanje geometrijskog oblika, bez optičkih efekata. Ray casting koristi geometriju i osnovne zakone optike uklanjanje nediljivih linija (nema sjenčenja). Ray tracing koristi naprednije optičke simulacije. Radiosity proračunava putanju svjetla na osnovu definisanih osobina izvora svjetla. Često se koristi kombinacija navedenih tehnika da bi se proces ubrzao. 14
Tehnike rasterizacije Ray tracing prikuplja kompleksno ponašanje svjetlosnih zraka kako se reflektuju ili upijaju. Najbolje radi sa potpuno sjajnim površinama. Difuzne površine pretvaraju zraku svjetlosti u više zraka. Ray tracing prati samo jednu zraku, pa se mora koristiti ambijentalno svjetlo da se nadoknadi nedostatak difuzije. Radiosity prikuplja zbir prenosa svjetla, ali modelira sve površine kao difuzne reflektore. Ne može modelirati odraz ili upijanje. Slike ne zavise od tačke posmatranja. Tehnike rasterizacije Ray tracing je algoritam koji se implementira u 2D prostoru (u projekciji) Radiosity je algoritam koji se proračunava u 3D prostoru. 15
3D animacije Pored statičnih 3D vizualizacija, sve se više koriste i 3D animacije, za simuliranje pokretnog 3D prikaza dizajna: Lakša vizualizacija za dizajnera Bolje predstavljanje dizajna klijentima Nakon kreiranja animacije, vrši se renderisanje, da bi se animacija mogla pohraniti u neki video format (CAD vektorski formati zahtijevaju licence za software). 3D animacije Sve su popularnije "walk-through" animacije, koje simuliraju kretanje kroz 3D model. Koriste se prednosti tehnika 3D modeliranja i vizualizacije (atmosferske pojave, sjene, osvjetljenja) kako bi se postigla što realističnija slika dizajna. 16
Tehnike 3D videa 3D displej je uređaj koji omogućuje percepciju prostorne dubine. Osnovni zahtjev koji treba ispuniti je odvojena slika za desno i lijevo oko. Mozak kombinuje te 2 slike kako bi se dobio utisak "dubine", odnosno 3. dimenzije. Koncept je analogan stereo zvučnicima, koji dodaju utisak prostora, tako da se može odrediti položaj izvora zvuka. Tehnike 3D videa Tehnike za prikaz 3D slike: Stereoskopija podrazumijeva različite slike za lijevo i desno oko i zahtijeva korištenje posebnih naočala. Autostereogram razdvaja izvor svjetlosti na dva odvojena svjetlosna zraka, za svako oko posebno. Ne zahtijeva posebne naočale. Koristi tehnike fokusiranja slike barijerama s paralaksom ili zakrivljenim lećama. 17
Video formati Nakon renderisanja 3D animacije, potrebno je video pohraniti u format koji je prihvatljiv za klijenta. "Codec" je software koji se koristi za kompresiju/dekompresiju videa. Danas se najviše koriste MPEG2 (DVD), MPEG4 (Divx, Xvid, MKV) codeci, a za distribuciju videa preko interneta se video obično snima u Adobe Flash formatu. Video formati Javni servisi za distribuciju videa prihvataju više različitih formata (codeca) Automatska konverzija u Adobe Flash format. Može se mijenjati rezolucija videa prilikom reprodukcije. 18