Spiegazioni
dell'esercitazione del 21 Ottobre 2005
Scopo dell’esercitazione:
scopo dell’esercitazione è di prendere confidenza con i principali comandi di OpenGL e di GLUT attraverso la modifica e completamento di
un semplice programma che visualizza un cubo.
Nota bene: Tutte le
operazioni di disegno e di modifica delle matrici devono (preferibilmente)
essere effettuate nella Display Function,
chiamata disegna nel nostro caso. Nelle altre funzioni, dovete soltanto
cambiare i valori dei parametri che vengono usati
dalla Display Function.
Cose da fare:
1)
Su risorse
del Computer selezionare Tools à Map Network Drive. Selezionate il Drive S ed
inserite il Folder \\SAMBADMN\PUBLIC
2)
Spostatevi
nel Folder Corsi\InfoGrafica\2004-10-26
3)
Create nella
vostra Home Directory (selezionabile dal desktop) una directory per l’esercitazione
4)
Copiate in
questa directory sul vostro computer il file cubo.c e
Spiegazioni.doc (questo file)
5)
Avviate
Visual C++ ed aprite la vostra copia del file cubo.c
6)
Compilate il
file. Vi verrà chiesto di creare un default workspace. Rispondete di si.
7)
Se non ci
sono errori, mandate in esecuzione il programma.
8)
Aprite il
codice e cercate di capirne il funzionamento. Le funzioni gluPerspective e gluLookAt
sono descritte nei lucidi su OpenGL (30-31 la gluPerspective e 26 la gluLoookAt).
Maggiori dettagli nel file glu1.3.pdf alle pagine 11 e 12)
9)
Introducete
le seguenti modifiche in ordine:
a. Provate a modificare la gluPerspective, e la gluLookAt
per vedere l’effetto.
b. Ruotate il cubo di 20 gradi anche rispetto
all’asse y
c. Inserite una sfera di colore blu posizionata coon il centro in (0, 3, 0). L’istruzione per il disegno
della sfera è glutSolidSphere(r, 10, 10) che disegna
una sfera di raggio r con centro nell’origine. Il secondo e terzo parametro
definisco il numero di spicchi orizzontali e verticali in cui è divisa la
sfera, che in realtà è sfaccettata. Scalate la sfera in modo che diventi un
ellissoide con il raggio sull’asse y maggiore di quello sugli assi x e z.
d. Modificare la gluPerspective, e la gluLookAt
per centrare la scena complessiva con l’ellissoide
Documentazione: Tutta la
documentazione su OpenGL è disponibile nella
directory Corsi\InfoGrafica. Questa contiene i tre files:
· glspec15.pdf
· glu1.3.pdf
· glut-3-spec.pdf