Spiegazioni
dell'esercitazione del 13 Maggio 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
3)
Create nella
vostra Home Directory (selzionabile dal desktop) una directory per
l’esercitazione
4)
Copiate in
questa directory sul vostro computer il file cubo.c
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.
9)
Introducete
le seguenti modifiche in ordine:
a.
Ruotate il
cubo di 20 gradi anche rispetto all’asse y
b.
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. Deformate la sfera in modo che diventi un ellissoide con
il raggio sull’asse y maggiore di quello sugli assi x e z. Usare le push e pop.
c.
Provate a
modificare la gluPerspective, e la gluLookAt per vedere l’effetto e per
centrare la scena complessiva con l’ellissoide.
d.
Permettete
la modifica da tastiera della posizione dell’osservatore
e.
Fate in modo
che in caso di modifica delle dimensioni della finestra sullo schermo anche la
finestra sul piano di proiezione venga modificata di conseguenza per rispettare
le proporzioni
f.
Fate in modo
che ad ogni click del mouse il cubo venga ruotato rispetto all’asse y di 5
gradi
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