Vježbe 7
OpenGL - model osvjetljavanja
(Lighting/Illumination model)
Primjer 1: Animacija rotacije stožca s uključenim izvorom svjetlosti. Za ispravno
osvjetljavanje važno je definirati svojstva i pozicionirati izvore svjetlosti, definirati
svojstva materijala, paziti na konzistentnu orijentacija poligona i ispravno definirati
vektore normale.
Izvorni kod:
Lstozac.c
U demo programu Lstozac.c mogu se odgovarajućim slovima interaktivno
uključivati/isključivati opcije:
- 'C' - uključuje selektivno odbacivanje
- 'c' - isključuje selektivno odbacivanje
- 'B' - odbacuju se poligoni kojima gledamo stražnju stranu
- 'b' - odbacuju se poligoni kojima gledamo prednju stranu
- 'D' - uključuje provjeru dubine
- 'd' - isključuje provjeru dubine
- 's' - postavlja opciju glatkog sjenčanja
- 'f' - postavlja opciju ravnomjernog sjenčanja
- 'N' - povećava broj poligona
- 'n' - smanjuje broj poligona
- '0' - uključuje svjetlo 0
- '=' - isključuje svjetlo 0
- 'v' - odabir između četiri verzija vektora normala.
7.1. Definirajte vektore normale u modelu valjka iz zadatka 6.2.b. te animirajte rotaciju valjka pod uključenim izvorom svjetlosti.
7.2. Definirajte vektore normale u modelu kugle iz zadatka 6.2.c. te animirajte rotaciju kugle pod uključenim izvorom svjetlosti. Podešavanjem svojstava materijala pokušajte stvoriti privid da se radi o zlatnoj kugli. Također, definirajte svojstva unutarnjih površina, tako da budu vidljive kad se odstrani dio plašta kugle. Konačno, dodajte još jedan izvor svjetlosti koji ima ograničenu kutnu širinu, tj. ponaša se kao reflektor.
7.3. Primijenite sva stečena znanja i osvijetlite model vjetrometra iz zadatka 6.3.