Nefotorealistični
prikaz objekta

diplomski rad br. 1819
Ante Radman, studeni 2009.    FER

2  Prikaz oblika osnovnim crtama

Karakteristične crte koje najviše govore o obliku tijela su njegov obris i oštri bridovi – rubovi tijela i pregibi – i zato su one nezaobilazan korak u nefotorealističnom prikazu. Spomenute tri vrste takvih crta prikazane su na slici 2.1. Tehnike koje imaju za cilj estetski dojam koriste različite likovne izvedbe; za ovaj rad su najprikladnije jednostavne, pune crte.


Slika 2.1. Karakteristične crte tijela

Njihov pronalazak traži određenu analizu tijela prije samog iscrtavanja. U toj, početnoj obradi modela, potrebno je prije svega utvrditi strukturu poligonalne mreže i relacije susjedstva među poligonima. To je postupak koji je potrebno provesti samo jednom; kasnije se koristi dobiveni skup informacija za prikaz svih triju vrsta osnovnih crta tijela.

2.1  Obris tijela

Obris, kontura ili silueta je skup crta povučenih oko tijela, koje ga jasno odvajaju od okoline. Kod složenih tijela obris može rezultirati i s više krivulja. U 3D-modelima koji su građeni od poligonalne mreže jednostavno ga je ostvariti biranjem bridova poligona koji su na granici između vidljivih i skrivenih područja. Brid poligona smatra se dijelom obrisa ako je poligon vidljiv i na tom bridu graniči s poligonom koji je skriven.

Vidljivost pojedinog poligona se po toj definiciji može pojednostavnjeno utvrditi skalarnim umnoškom normale i vektora pogleda prema očištu, pri čemu se poligon smatra vidljivim, odnosno okrenutim prema promatraču ako je umnožak veći od nule.

Uvjet za takav pojednostavnjeni izračun je usmjerenost svih poligona modela u smjeru kazalje na satu. Ovdje ostvareno programsko rješenje pretpostavlja takvu usmjerenost. U slučaju suprotne orijentacije, predznak umnoška bi imao suprotno značenje. Druga pretpostavka za tako jednostavnu izvedbu algoritma je korištenje Z-spremnika, koji će i u samom obrisu efektivno razvrstati bridove u dijelove koji su vidljivi i one koji su skriveni.

Ako tijelo s vremenom mijenja svoj smjer ili položaj, potrebno je iznova potražiti bridove obrisa. U priloženom programskom rješenju početni proračun se izvodi pri učitavanju modela i kasnije pri svakoj rotaciji i pomicanju iznova.

2.2  Rubovi

Slično kao što su rubovi u stvarnom svijetu završetci ploha, u poligonalnim 3D-mrežama treba rubovima modela smatrati one bridove poligona koji ga ne povezuju ni s jednim drugim poligonom.

Za utvrđivanje rubova se dakle koristi već dobivena informacija o susjedstvima među poligonima, a dodatne analize nije potrebno provoditi.

2.3  Pregibi

Pregibi su crte oko kojih se normala površine relativno naglo mijenja. Također su vrlo bitni za razumijevanje oblika tijela, te ih treba iscrtati jednako naglašeno kao druge dvije spomenute vrste crta. Pregibe pronalazimo izračunom kutova između svaka dva susjedna poligona, pri čemu jednostavan prelazak određenog graničnog iznosa oštrog kuta po dogovoru znači postojanje pregiba na bridu.

Programsko rješenje dopušta korisniku proizvoljno zadavanje oštrog kuta, odn. granice kada tupi kut prelazi u oštar. Time je omogućeno da se prikaz prilagodi konkretnom modelu.