Spiegazioni
dell'esercitazione del 26 Ottobre 2004
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