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