MODUL 1 · MODELIRANJE DIGITALNIH OBJEKATA
Nastavna jedinica 1.3
Slobodno modeliranje i poligonalna mreža
Slobodno modeliranje radi izravno s mrežom: vrhovi se pomiču, plohe izvlače i dijele, a oblik nastaje pod rukom, bez kota i stabla značajki. Ova jedinica uvodi alate tog načina rada, objašnjava zašto je raspored poligona jednako važan kao sam oblik i pokazuje kako se površina razvija u ravninu radi nanošenja teksture.
- objasniti načelo rada izravno na poligonalnoj mreži
- primijeniti osnovne zahvate: izvlačenje, dijeljenje ploha, spajanje i glačanje
- ocijeniti kakvoću topologije i prepoznati česte pogreške u mreži
- objasniti razliku između četverokuta i trokuta u radnoj i u izvoznoj mreži
- objasniti postupak UV razvijanja i ulogu normala
- procijeniti broj poligona nakon zadanog broja razina glačanja
Rad izravno na mreži
U slobodnom modeliranju nema skice ni kote. Polazi se od jednostavnog tijela — kocke, valjka, kugle ili ravnine — i ono se preoblikuje pomicanjem vrhova, bridova i ploha. Oblik koji nastaje nije nigdje zapisan kao postupak; zapisana je samo konačna mreža. Zbog toga se model ne može izmijeniti promjenom parametra, ali se zato može oblikovati svaki detalj bez ograničenja.
Takav način rada je nezamjenjiv ondje gdje mjere nisu glavno mjerilo: kod likova, tkanine, krajolika, ali i kod tehničkih oblika koji u aplikaciji služe samo kao prikaz. U projektu AR-1 slobodno se modeliraju strelice koje pokazuju smjer okretanja, obruč koji ističe vijak koji treba otpustiti i pojednostavljeno kućište koje zamjenjuje složeni original.
Druga, važnija uloga slobodnog modeliranja jest dorada uvezene mreže. Model prihvatnice dolazi iz konstrukcije kao mreža koja je matematički točna, ali nepovoljno raspoređena: guste trake trokuta oko zaobljenja, rijetke velike plohe na ravnim dijelovima, nepotrebni bridovi na spojevima. Takva se mreža u programu za oblikovanje čisti, prorjeđuje i ponovno raspoređuje.
Treći posao je izrada mreže koja služi samo kao nosač teksture. Umjesto da se svaki vijak modelira, izradi se jednostavan oblik na koji se nanese slika s ucrtanim vijcima. Uređaj tada prikazuje dva trokuta umjesto nekoliko tisuća, a korisnik s pola metra udaljenosti ne vidi razliku. Taj postupak je temelj svake optimizacije u sedmoj jedinici modula.
Osnovni zahvati nad mrežom
Alati slobodnog modeliranja svode se na nekoliko zahvata koji se kombiniraju. Izvlačenje (extrude) uzima plohu ili brid i pomiče njegovu kopiju, stvarajući nove bočne plohe. To je najčešći zahvat i njime se iz kocke dobiva gotovo sve. Dijeljenje ploha (subdivide) ubacuje nove bridove i time povećava gustoću mreže ondje gdje treba više detalja.
Petlja bridova (edge loop) je niz bridova koji obilazi model u krugu. Umetanjem petlje dodaje se detalj bez razbijanja ostatka mreže, a petlja postavljena uz brid služi za oštrenje: što je bliže bridu, to je brid nakon glačanja oštriji. To je glavni alat za upravljanje oblikom pri glačanju.
Glačanje (subdivision surface) svaku plohu dijeli na četiri i pomiče vrhove tako da površina postane blaža. Svaka razina glačanja množi broj poligona s četiri: mreža od 1000 četverokuta nakon tri razine ima 64 000 četverokuta. Zato se glačanje koristi kao prikaz pri radu, a pri izvozu se ili primijeni jednom ili se ne primijeni uopće.
Uz njih idu zahvati čišćenja: spajanje vrhova koji leže jedan na drugome, brisanje unutarnjih ploha koje se nikada ne vide, zatvaranje rupa i poravnanje normala. Ti zahvati ne mijenjaju izgled, ali uklanjaju pogreške koje se poslije očituju kao treperenje ploha ili crne mrlje na modelu.
Topologija: raspored je važan koliko i oblik
Topologija je raspored vrhova, bridova i poligona po površini modela. Dva modela mogu izgledati posve jednako, a imati posve različitu topologiju. Jedan će se glatko deformirati, dobro primiti teksturu i uredno se prorijediti, a drugi će pri prvoj izmjeni dati nabore i svjetlosne mrlje.
Dobra topologija ima tri obilježja. Poligoni su pretežno četverokuti slični kvadratu. Gustoća prati oblik: više poligona ondje gdje se površina jako zakrivljuje, manje na ravnim dijelovima. Petlje bridova prate rubove i prijelaze oblika, umjesto da ih sijeku pod slučajnim kutom.
| Pogreška u mreži | Kako nastaje | Posljedica | Ispravak |
|---|---|---|---|
| Trokut usred četverokutne mreže | nepažljivo spajanje | prekinuta petlja, nabor pri glačanju | preusmjeravanje petlje |
| Poligon s više od četiri vrha | zatvaranje rupe u jednom koraku | nepredvidiva podjela na trokute | ručna podjela na četverokute |
| Dvostruki vrhovi | kopiranje dijela mreže | vidljiva pukotina, krivo osvjetljenje | spajanje vrhova unutar zadanog razmaka |
| Okrenuta normala | izvlačenje u suprotnom smjeru | ploha se ne vidi ili je tamna | poravnanje normala |
| Unutarnje plohe | uvoz iz konstrukcije | nepotrebni trokuti, sporiji prikaz | brisanje nevidljive geometrije |
| Vrlo tanki trokuti | loše prorjeđivanje | treperenje rubova pri gibanju | ponovno prorjeđivanje s drugim postavkama |
Razlika između četverokuta i trokuta nije stvar ukusa. Dok se model oblikuje, četverokuti su bolji jer petlje bridova kroz njih teku neprekinuto, glačanje daje predvidiv rezultat, a odabir cijelog niza ploha je jednostavan. Pri prikazu je pak sve trokut, jer grafička kartica ne poznaje ništa drugo. Pravilo je stoga jednostavno: radi se u četverokutima, izvozi u trokutima.
Trokuti su dopušteni i u radnoj mreži, ali na mjestima gdje ne smetaju: na skrivenim dijelovima, na ravnim plohama i ondje gdje se mreža ionako neće dalje mijenjati. Poligoni s više od četiri vrha izbjegavaju se svugdje jer program sam odlučuje kako će ih podijeliti, a ta odluka nije uvijek ista.
UV razvijanje i normale
Tekstura je dvodimenzionalna slika, a model je trodimenzionalan. Da bi se slika nanijela na površinu, svakom vrhu mreže mora se pridružiti par koordinata u ravnini slike. Te se koordinate označavaju slovima u i v, a postupak njihova određivanja zove se UV razvijanje (UV unwrapping).
Razvijanje počinje odabirom rezova (seams) — bridova po kojima se površina reže. Rezovi se postavljaju ondje gdje se spoj neće vidjeti: na stražnjoj strani, u utorima, uz oštre bridove. Nakon reza program razastire dijelove u ravninu i slaže ih tako da zauzmu što veći dio slike, jer neiskorišten dio teksture je izgubljena memorija.
Dva mjerila govore je li razvijanje dobro. Prvo je izobličenje: kvadrat na modelu mora u ravnini ostati približno kvadrat, inače se tekstura rasteže. Drugo je gustoća piksela: jednako velike plohe na modelu moraju u teksturi zauzeti jednako prostora, inače je jedan dio modela oštar, a drugi mutan.
Uz koordinate teksture, površina nosi i normale. Ako svi vrhovi jednog brida dijele istu normalu, brid izgleda glatko; ako svaki poligon ima svoju, brid je oštar. Granica se zadaje kutom: bridovi oštriji od zadanog kuta ostaju oštri, blaži se izglade. Krivo postavljen kut daje ili nazubljene valjke ili omekšane bridove koji izgledaju kao od plastelina.
Dorada mreže uvezene iz konstrukcije
Mreža koja dolazi iz konstrukcijskog programa nije izrađena za prikaz nego za točnost. Prepoznaje se po nekoliko obilježja: sastavljena je isključivo od trokuta, gustoća joj je nejednaka, na zaobljenjima ima guste trake vrlo tankih trokuta, a na velikim ravnim plohama samo dva. Uz to često nosi i geometriju koja se nikada neće vidjeti: unutarnje stijenke, navoje i provrte za vijke koji su ionako skriveni.
Dorada takve mreže ide utvrđenim redom. Prvi korak je čišćenje: brisanje nevidljive geometrije, spajanje dvostrukih vrhova, uklanjanje izdvojenih dijelova koji su ostali od izvoza. Drugi je poravnanje normala tako da sve gledaju prema van. Treći je prorjeđivanje na broj trokuta koji odgovara namjeni. Četvrti je razvijanje i priprema za teksturu.
| Korak dorade | Što se radi | Čime se provjerava | Učinak na AR-1 |
|---|---|---|---|
| Čišćenje | brisanje nevidljive i višestruke geometrije | statistika mreže | 486 000 → 310 000 trokuta |
| Poravnanje normala | sve normale prema van | prikaz s jednostranim plohama | nestaju crne plohe |
| Prorjeđivanje | smanjenje broja trokuta | usporedba obrisa s izvornikom | 310 000 → 24 000 trokuta |
| Preraspodjela | ravnomjernija gustoća mreže | pregled rubnih trokuta | nestaje treperenje bridova |
| Razvijanje | rezovi i razastiranje u ravninu | provjera izobličenja | priprema za pečenje tekstura |
Svaki od tih koraka mijenja model, pa se izvorna mreža nikada ne prepisuje. Radi se na kopiji, a izvornik ostaje kao mjerilo prema kojem se provjerava koliko je oblika izgubljeno. Usporedba se izvodi tako da se dvije mreže postave jedna preko druge i izmjeri najveća udaljenost među njima; na prihvatnici AR-1 dopušteno je odstupanje do 0,3 mm.
Posljednji korak je odluka o tome što se uopće zadržava. U uputama se prikazuje osam koraka zamjene, pa model mora imati odvojene čeljusti, vijke i prirubnicu. Sve ostalo — unutarnji kanali, opruge, brtve — može se izbaciti bez ikakva gubitka za korisnika. Najbrže prorjeđivanje je brisanje onoga što se ne prikazuje.
Slobodno ili parametarski
Oba pristupa daju model, ali ne daju istu vrstu modela. Odluka se donosi prema tome što se s modelom dalje radi, a ne prema tome koji je program bliži ruci.
| Pitanje | Parametarsko modeliranje | Slobodno modeliranje |
|---|---|---|
| Što je zapisano | postupak i mjere | gotova mreža |
| Izmjena mjere | promjena parametra | ponovno oblikovanje |
| Točnost | matematički točna ploha | približna, ovisna o gustoći |
| Gustoća mreže | bira se pri izvozu | zadana pri oblikovanju |
| Prikladno za | dijelove koji se izrađuju | prikaze, oznake, organske oblike |
| Rad s teksturom | otežan, traži naknadno razvijanje | izravan |
| Veličina datoteke | velika prije izvoza | u granicama koje se same biraju |
U projektu AR-1 oba pristupa žive jedan uz drugoga. Prihvatnica i nosač dolaze iz parametarskog modela jer im mjere moraju odgovarati stvarnom dijelu. Strelice, obruči, natpisne pločice i pojednostavljena kućišta izrađuju se slobodno jer im je zadaća pokazati, a ne izmjeriti. Sve se na kraju svodi na istu mrežu u istoj sceni.
Prikaz računa koliko poligona i trokuta ostaje nakon zadanog broja razina glačanja. Svaka razina dijeli svaki poligon na četiri, pa broj raste vrlo brzo.
Prikaz pokazuje koliko brzo raste mreža pri glačanju. Upravo je to razlog zbog kojeg se glačanje u modelima za proširenu stvarnost gotovo nikad ne izvozi u punom broju razina. Umjesto toga se oblik zadrži na jednoj razini, a dojam glatkoće preuzmu normale i tekstura koja ih nosi.
Zapamtite
Mreža koja je u programu za modeliranje izgledala savršeno može na tabletu izgledati loše, i obratno. Jedina mjerodavna provjera je prikaz na ciljanom uređaju, pod stvarnim osvjetljenjem i s udaljenosti s koje korisnik gleda. Sve prije toga je procjena.
Ključni pojmovi
| Pojam | Značenje |
|---|---|
| Izvlačenje | Zahvat kojim se ploha ili brid pomiče i time stvaraju nove bočne plohe. |
| Dijeljenje ploha | Umetanje novih bridova radi veće gustoće mreže. |
| Petlja bridova | Neprekinuti niz bridova koji obilazi model; služi za detalj i oštrenje. |
| Glačanje | Podjela svakog poligona na četiri uz zaobljivanje površine. |
| Topologija | Raspored vrhova, bridova i poligona po površini modela. |
| UV razvijanje | Pridruživanje koordinata teksture vrhovima nakon rezanja i razastiranja površine. |
| Rez | Brid po kojem se površina reže radi razvijanja u ravninu. |
Provjeri se
Kratka provjera prije prelaska na sljedeću jedinicu. Odgovor se potvrđuje klikom, a obrazloženje se prikazuje odmah.
Pitanje 1 od 5
Koji se zahvat koristi da se iz plohe dobije novo tijelo u zadanom smjeru?
Izvlačenje pomiče kopiju plohe i stvara nove bočne plohe.
Pitanje 2 od 5
Koliko se puta poveća broj poligona pri jednoj razini glačanja?
Svaki se poligon dijeli na četiri, pa tri razine daju šezdeset i četiri puta više poligona.
Pitanje 3 od 5
Zašto se pri oblikovanju radi u četverokutima?
Grafička kartica radi samo s trokutima; četverokuti su prednost dok se model oblikuje.
Pitanje 4 od 5
Što je rez pri UV razvijanju?
Rezovi se postavljaju na mjesta gdje spoj u teksturi neće biti vidljiv.
Pitanje 5 od 5
Ploha modela ne vidi se u sceni, a geometrija je ispravna. Najvjerojatniji uzrok je:
Ako normala gleda u unutrašnjost, ploha se pri prikazu odbacuje.
Odgovoreno 0 od 5.