La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Gestione della Window Daniele Marini. 2 Definire una Window: GLUT o altro WM /* Standard GLUT initialization */ glutInit(&argc,argv); glutInitDisplayMode.

Presentazioni simili


Presentazione sul tema: "1 Gestione della Window Daniele Marini. 2 Definire una Window: GLUT o altro WM /* Standard GLUT initialization */ glutInit(&argc,argv); glutInitDisplayMode."— Transcript della presentazione:

1 1 Gestione della Window Daniele Marini

2 2 Definire una Window: GLUT o altro WM /* Standard GLUT initialization */ glutInit(&argc,argv); glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB); /* default, non e necessario */ glutInitWindowSize(500,500); /* 500 x 500 pixel window */ glutInitWindowPosition(0,0); /* window in alto a sin su display */ glutCreateWindow("Sierpinski Gasket"); /* crea con titolo */ glutDisplayFunc(display); /* display callback invocata quando apre finestra */ myinit(); /* predispone attributi */ glutMainLoop(); /* event loop */ }

3 3 Drawing survival kit Pulire la finestra: glClearColor(0.0, 0.0, 0.0, 0.0); definisce il colore con cui la finestra viene pulita glClear(GL_COLOR_BUFFER_BIT); esegue la pulitura (cancellazione del contenuto precedente) inizializzando il color buffer col nero - ci sono altri buffer … Color buffer GL_COLOR_BUFFER_BIT Depth buffer GL_DEPTH_BUFFER_BIT Accumulation buffer GL_ACCUM_BUFFER_BIT Stencil buffer GL_STENCIL_BUFFER_BIT

4 4 Si possono pulire gli altri buffer assegna a tutti i pixel del depth buffer al valore indicato: glClearDepth(1.0)

5 5 Drawing survival kit Definire un colore: glColor3f(0.0, 0.0, 0.0); black glColor3f(1.0, 0.0, 0.0); red glColor3f(0.0, 1.0, 0.0); green glColor3f(1.0, 1.0, 0.0); yellow glColor3f(0.0, 0.0, 1.0); blue glColor3f(1.0, 0.0, 1.0); magenta glColor3f(0.0, 1.0, 1.0); cyan glColor3f(1.0, 1.0, 1.0); white

6 6 Drawing survival kit Forzare il display del disegno: glFlush() OGL ha una architettura client-server, un programma eseguito in rete richiede il comando glFlush per inviare al client il disegno; su una wrkstn non ha effetto ma è buona regola usarlo glFinish() esegue la visualizzazione e resta in attesa di un messaggio che il disegno è completo prima di accettare input: occhio alle performance!


Scaricare ppt "1 Gestione della Window Daniele Marini. 2 Definire una Window: GLUT o altro WM /* Standard GLUT initialization */ glutInit(&argc,argv); glutInitDisplayMode."

Presentazioni simili


Annunci Google