lunedì 21 gennaio 2013

Un assaggio di codice OpenGL II

La prima linea in main() inizializza una finestra sullo schermo. La funzione InizializzaFinestra() è pensata come il luogo ove le routine di sistema per la finestra vengono richiamate, esse non sono funzioni OpenGL. Le due linee seguenti sono istruzioni OpenGL per rendere lo schermo nero, glClearColor(), stabilisce il colore con cui la finestra deve essere pulita; glClear(), ripulisce la finestra. Il colore della finestra può essere cambiato nuovamente mediante glClearColor(). In modo simile glColor3f() stabilisce il colore con il quale gli oggetti devono essere disegnati, in questo caso il bianco. Tutti gli oggetti disegnati dopo questa istruzione saranno di quel colore, sino a quando non ne viene richiamato un altro. Il successivo comando OpenGL, usato dal programma glOrtho(), specifica le coordinate del systema OpenGL e come l'immagine debba essere disegnata sullo schermo. Le chiamate successive sono comprese tra glBegin() e glEnd(), definiscono l'oggetto da disegnare, in questo caso solo un poligono a quattro vertici. Gli angoli del poligono sono definiti da glVertex3f(). Infine glFlush() assicura che i comandi siano eseguiti piuttosto che immagazzianti in un buffer in attesa di ulteriori istruzioni OpenGL. La funzione AggiornaEventiFinestra() gestisce il contenuto della finestra e l'inizio della gestione dei processi.
Questo codice illustrato non è ben strutturato, in quanto non permette di cambiare le dimensioni della finestra o modificare il punto di vista. Successivamente saranno spiegate delle funzioni che possano rendere il codice più efficiente.

Nessun commento:

Posta un commento