Laboratorio di Grafica A.A. 1997-98
Esercizio "buono per l'esame" di recupero N. 1
Scopo:
Partire dal programma realizzato per la prova N.1, e aggiungere la
gestione di un punto di vista mobile.
Consegna:
Il sorgente, da copiare sul mio dischetto, chiamandolo xxxx.c dove
xxxx e' il nome di uno dei componenti del gruppo.
Punto di partenza:
-
Il modulo da voi realizzato per la prova N.1,
chiamiamolo xxxx.c che legge, visualizza
e trasforma un insieme
di triangoli.
-
Il relativo makefile.
-
I relativi file di input.
ATTENZIONE! alcuni file contenevano triangoli
con normali sbagliate. Ora sono stati corretti:
pira.tri,
stella.tri.
Che cosa dovete fare:
- [1]
Visualizzare un punto, che chiamo V,
e introdurre controlli per
muovere tale punto rispetto alla scena.
I controlli corrispondono alla
pressione da parte dell'utente dei tasti 'l' (left), 'r' (right),
'u' (up), 'd' (down), 'f' (forward), 'b' (backward).
L'ammontare dello spostamento e' a vostra discrezione
purche' "ragionevole".
Quando si azionano i comandi di zoom e rotazione,
realizzati per la prova N.1,
tali trasformazioni devono agire su tutta la scena
(triangoli + punto).
- [2]
Far si' che premendo il tasto 'v' l'utente possa invocare
un cambio di trasformazione di vista,
che sposta il punto di vista in V,
con lo 'sguardo puntato' verso il centro della scena.
Quando l'utente preme 'v' nuovamente, il punto
di vista torna alla posizione originaria.
Nella situazione con punto di vista spostato in V,
nessun altro comando di trasformazione e' accettato
a parte 'v' che riporta alla vista normale.
Consiglio: utilizzare la funzione gluLookAt.