jahta
PRINCIPI 3D MODELIRANJA
Seminarski rad
    

Granična reprezentacija

Granična reprezentacija se odnosi na takav način modeliranja koji konstruiše 3D objekat iz opisa površina, a ne zapremine. Npr. kocka koja je ranije opisana predstavlja opis površine pomoću koordinata vrhova koji definiraju stranice, a one formiraju poligone površina. Ovo je očito granična reprezentacija jer postoji eksplicitna geometrija za definiranje bilo koje tačke na površini kocke. Međutim, nemamo slične podatke za definiranje tačaka unutar i izvan kocke. Nadalje, iako je jednostavno izračunati zapreminu kocke, ona se ne mođe direktno izračunati iz ovih podataka o granicama.  Potrebna je određena reorganizacija tih podataka.

Planarni poligoni
Poligon definiše klasu figure konstruisanu iz lanca ravnih ivica. Ovo uključuje oblike čije su granice konveksne, konkavne ili se presijecaju i mogu ali ne moraju biti planarni. Zbog ovog širokog opsega konstrukcija poligonalno modeliranje se uglavnom radi na planarnim poligonima koji su ili konkavni ili konveksni, mada konkavni poligoni komplikuju stvari. Npr. kod konveksnog poligona svaka tačka unutar granice treba da presiječe granicu samo jednom da bi se našla izvan dok konkavne granice mogu uzrokovati veliki broj čudnih presjeka.
slika2..(3)
slika 2
Slika 2 ilustrira ovaj efekat. Nadalje, bilo koje dvije susjedne ivice u konveksnom poligonu mogu se koristiti kao vektori da bi se izveo konzistentan ortogonalni vektor na površinu, dok konkavni poligon može preokrenuti pravac vektora zavisno od ugla koji zatvaraju ivice. 
Ovi popratni efekti kod konkavnih poligona mogu biti veoma nepovoljni kada se razvija algoritam za sjenčenje pa se ili izbjegava njihovo dozvoljavanje kod modeliranja ili se poligon triangulira tj reducira na mrežu trouglova koji mogu biti samo konveksni i uvijek su planarni. Nadalje ćemo pretpostaviti da su svi poligoni planarni i konveksni.
Pravljenje objekata pomoau poligona je relativno jednostavno i zahtijeva samo da se identificiraju važne ivice i konstruiše familija strana koje pokrivaju površinu. U kompjuterskoj animaciji pri modeliranju uvijek moramo voditi računa o tome kako će objekat biti animiran. Da bismo ovo objasnili konstruišimo kocku. 
slika3..(3)
Slika 3 pokazuje njenu poziciju relativno u odnosu na neki koordinatni sistem i zbog jednostavnosti pretpostavimo da je svaka strana duga jednu jedinicu dužine. 
Kocka može biti konstruisana na različite načine i jedan od njih bi bio da smjestimo koordinate osam vrhova u tabelu kako je prikazano na slici 3. Druga tabela bi referencirala ove vrhove da formiraju šest graničnih poligona. Program onda može konstruisati bilo koji poligon izvlačenjem četiri vrha iz tabele poligona.
Kocka će biti animirana tako što će se spljoštiti na vrhu broj 7 sa koordinatama (1, 1, 1). Ovaj vrh bi mogao lagano padati prema dolje, recimo na (1, 0.5, 1) mijenjanjem y koordinate vrha od 1 do 0.5 u određenom periodu vremena. Program za renderovanje koji zapravo kreira sliku u boji bi prema podacima iz dvije tabele konstruisao poligone kocke u svakom frejmu animacije. 
Ako se reducira y koordinata vrha 7, gornji poligon kocke više nije planaran, nego je uvrnut i veoma je moguće da će renderer proračunati osvjetljenje na pogrešan način. Zato, ako zaista želimo da se kocka spljošti preko vrha 7, onda vrhovi 6 i 8 moraju također biti pomaknuti da bi se očuvala planarnost gornjeg poligona. 
U realnosti način na koji kocka mijenja svoju geometriju zavisi od njenog sastava. Promjene na kocki koja je napravljena od spužve su drukčije od promjena na kocki od gline. Također kocka napravljena od aluminijskih ploča reaguje drukčije od kocke koja je napravljena od papira.  Druga vježba za animaciju mođe biti podizanje gornje ploče kocke kao da je fiksirana za jednu od ivica. Sa predloženim načinom modeliranja ovo predstavlja ozbiljan problem, jer ne samo da gornje vrhove dijele četiri stranice, nego i stranice kocke nemaju debljine i zato njihova unutrašnjost ne postoji. Konstruisanje čvrste kocke zahtijeva modeliranje kao što je prikazano na slici 4.
slika4...(3)
Možemo vidjeti da zahtjevi animacije moraju biti anticipirani u fazi modeliranja i da renderer mora imati dovoljno geometrije da bi mogao uraditi svoj posao, a dio tog posla je da ima pristup ivicama koje formiraju granične poligone. U takvim slučajevima objekti su definirani u obliku hijerarhije poligona napravljenih od ivica, koje su opet napravljene od vrhova i predstavljeni su pomoću tri liste podataka o poligonima, ivicama i vrhovima...(1)