Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La libreria GLUT
Sommario
Introduzione a OpenGL Primitive per modellazione Modalita per il rendering ` Lighting Texture Mapping XVR. . .
Obiettivo: essere in grado di scrivere una applicazione (interattiva) con modelli 3D, lighting e texture mapping
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` Cose OpenGL
Con il termine OpenGL (Open Graphics Library) si intende una specica che denisce una API per piu linguaggi e per piu ` ` piattaforme per scrivere applicazioni che producono computer graca 2D e 3D (http://it.wikipedia.org/wiki/OpenGL)
Open in quanto non legata ad un particolare produttore di
hardware o software
Caratterizzata da unarchitettura client-server Consta di circa 250 istruzioni Facilmente estendibile
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Include les
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Include les
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Include les
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
dal presso gl
glClearColor() glLineWidth() glTexImage2D()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
dal presso gl
glClearColor() glLineWidth() glTexImage2D()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
dal presso gl
glClearColor() glLineWidth() glTexImage2D()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
dal presso gl
glClearColor() glLineWidth() glTexImage2D()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
glVertex3f(5.0f,10.0f, 0.0f)
gl: Presso di libreria Vertex: Istruzione 3: Numero di parametri dellistruzione f: Tipo dei parametri
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
glVertex3f(5.0f,10.0f, 0.0f)
gl: Presso di libreria Vertex: Istruzione 3: Numero di parametri dellistruzione f: Tipo dei parametri
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
glVertex3f(5.0f,10.0f, 0.0f)
gl: Presso di libreria Vertex: Istruzione 3: Numero di parametri dellistruzione f: Tipo dei parametri
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
glVertex3f(5.0f,10.0f, 0.0f)
gl: Presso di libreria Vertex: Istruzione 3: Numero di parametri dellistruzione f: Tipo dei parametri
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
glVertex3f(5.0f,10.0f, 0.0f)
gl: Presso di libreria Vertex: Istruzione 3: Numero di parametri dellistruzione f: Tipo dei parametri
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Tipi di dato
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Tipi di dato
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Tipi di dato
Glbiteld: variabili atte a contenere campi di bit Glenum: variabili enumerative Glclamp: valori oat limitati tra 0.0 e 1.0
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Tipi di dato
Glbiteld: variabili atte a contenere campi di bit Glenum: variabili enumerative Glclamp: valori oat limitati tra 0.0 e 1.0
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Tipi di dato
Glbiteld: variabili atte a contenere campi di bit Glenum: variabili enumerative Glclamp: valori oat limitati tra 0.0 e 1.0
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
GLUT
Libreria aggiuntiva multipiattaforma, sviluppata sopra OpenGL che contiene funzioni per:
Gestione di nestre Gestione di menu pop-up Gestione dellinput da parte dellutente (mouse, joystick. . . ) Gestione modalita video full screen ` Molto altro. . .
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
dal programmatore
glutDisplayFunc(), glutIdleFunc() e glutKeyboardFunc()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
dal programmatore
glutDisplayFunc(), glutIdleFunc() e glutKeyboardFunc()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
dal programmatore
glutDisplayFunc(), glutIdleFunc() e glutKeyboardFunc()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Funzioni callback
dal programmatore
glutDisplayFunc(), glutIdleFunc() e glutKeyboardFunc()
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
//pw1.netcom.com/tjensen/ptr/pointers.htm
Tutorial estensivo
guidac/guidac025.html
Tutorial in italiano dallUniversita di Trento `
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
` ogni momento lo stato puo essere interrogato o modicato attraverso opportune istruzioni Tutti gli attributi di rendering sono memorizzati in tale macchina a stati, tra i quali
` Modalita di rendering Attributi di shading Parametri per lilluminazione Texture mapping Modicatori ambientali
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
disposizione da GLUT:
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Istruzioni per modicare la resa generale glPointSize(GLoat size); glLineStipple(GLint repeat, GLushort pattern); glShadeModel(GL SMOOTH); Istruzioni per abilitare opzioni di resa particolari glEnable(GL LIGHTING); glDisable(GL TEXTURE 2D);
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
scena void glutPostRedisplay(void) Redisplay dopo aver cambiato il contenuto della nestra
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
scena void glutPostRedisplay(void) Redisplay dopo aver cambiato il contenuto della nestra
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
scena void glutPostRedisplay(void) Redisplay dopo aver cambiato il contenuto della nestra
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
scena void glutPostRedisplay(void) Redisplay dopo aver cambiato il contenuto della nestra
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
scena void glutPostRedisplay(void) Redisplay dopo aver cambiato il contenuto della nestra
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
w, int h))
Specica la funzione func da eseguire alla pressione del
int h))
Lega lo stato state del bottone del mouse button alla
funzione func void glutMotionFunc(void (*func)(int x, int y)) Specica la funzione func da eseguire in corrispondenza del movimento del mouse da (x,y) con un tasto premuto
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
void glutMainLoop(void) Ciclo degli eventi principale da chiamare come ultima funzione nel main void glutIdleFunc(void (*func)) Callback richiamata quando il programma e in stato di idle `
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
void glutMainLoop(void) Ciclo degli eventi principale da chiamare come ultima funzione nel main void glutIdleFunc(void (*func)) Callback richiamata quando il programma e in stato di idle `
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
void glutMainLoop(void) Ciclo degli eventi principale da chiamare come ultima funzione nel main void glutIdleFunc(void (*func)) Callback richiamata quando il programma e in stato di idle `
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
void glutMainLoop(void) Ciclo degli eventi principale da chiamare come ultima funzione nel main void glutIdleFunc(void (*func)) Callback richiamata quando il programma e in stato di idle `
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
Esercitazioni di OpenGL
Introduzione
La libreria GLUT
http://www.opengl.org/documentation/ Documentazione ufciale su OpenGL http://nehe.gamedev.net/ Ottima raccolta di tutorials su OpenGL http://fly.cc.fer.hr/unreal/theredbook/ OpenGL Red Book
Esercitazioni di OpenGL