Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione.

Slides:



Advertisements
Presentazioni simili
XmlBlackBox La presentazione Alexander Crea 11 Aprile 2010 La presentazione Alexander Crea 11 Aprile 2010.
Advertisements

Gestione di un Sistema di Talk multiutente
CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
DBMS (DataBase Management System)
Stored Procedure Function Trigger
STRUTTURA DEL PERSONAL COMPUTER
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
GLUT & OpenGL Ing. Tommaso Coviello Politecnico di Bari
Fondamenti di Informatica Prof. Cantone
XmlBlackBox La presentazione Alexander Crea 7 Giugno 2010 La presentazione Alexander Crea 7 Giugno 2010.
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Gerarchie di Oggetti Tutti i sistemi avanzati di grafica (PHIGS, OpenGL, DirectDraw, …) permettono di definire un modello come una gerarchia di oggetti.
Texture Mapping.
Allocazione dinamica della memoria
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Tecniche di automazione Corso: Tecniche di automazione – prof.ssa Laura ZUCCHI DDE Data Dynamic Exchange Appunti lezioni Classi 1C e 1H – gruppo A.
Architettura del World Wide Web
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Struttura dei sistemi operativi (panoramica)
Linguaggi di programmazione
Snake 2D Snake 2D Esame: Elementi Grafica Digitale Anno accademico: 2005/06 Studente: Gianluca Racano Docente: Matjaž Hmeljak.
1.7 Risorse di sistema Comprendere le risorse di sistema Gestire le risorse di sistema.
Windows Sistema operativo con interfaccia grafica per PC IBM compatibili (varie versioni dal 95) La gestione dei file viene fatta secondo le modalità.
Vincoli di integrità generici Con i costrutti visti sinora, non è sempre possibile definire tutti i possibili vincoli di integrità. Per questo esiste listruzione.
1 Programmazione grafica: lInterazione Daniele Marini.
Lavorare con le matrici in OGL
LOCALIZZAZIONE SATELLITARE GEOREFENRENZIATA. OBIETTIVI Gestire il database cartografico al fine di poter visualizzare la posizione dei mezzi localizzati,
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Gerarchie Nella lezione precedente abbiamo imparato creare una gerarchia di oggetti usando i gruppi (edit>group)
VRML97 -Appendice- Cristina Donati 1 VRML97. Il Virtual Reality Modeling Language (VRML) è un formato di file volto alla descrizione degli oggetti interattivi.
Cosa è una applicazione distribuita?
DDE Data Dynamic Exchange Appunti lezioni Classi 1C e 1H – gruppo A
1 w w w. g a t 4. c o m WI GAT WebIngelligence rappresenta una piattaforma funzionale e tecnologica per la creazione e gestione di un datawarehouse che.
Il Sistema Operativo: il File System
Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione.
Architettura di OGL e pipe-line Daniele Marini Corso Di Programmazione Grafica.
Trasformazioni in OGL Daniele Marini.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
File e Funzioni Si possono distinguere tre tipi di file che vengono utilizzati in MATLAB: M-file: hanno estensione .m e in essi vengono memorizzati i.
Threads.
Complessità di un algoritmo
Corso di Programmazione Grafica e Laboratorio Introduzione a OpenGL Prof. Daniele Marini.
Trasformazioni in OGL Daniele Marini Davide Gadia Marco Ronchetti Davide Selmo Corso Di Programmazione Grafica aa2005/2006.
Architettura di OGL e pipe-line Daniele Marini Corso Di Programmazione Grafica.
Picking - OpenGL Disegno della scena (display) Impostazione parametri selezione Ripristino parametri Loop Selezione.
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Display list e picking Daniele Marini Corso Di Programmazione Grafica e Laboratorio.
Architettura di OGL e pipe-line Daniele Marini Davide Gadia Davide Selmo Corso Di Programmazione Grafica aa2005/2006.
Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione.
Primitive OpenGL Corso di Programmazione Grafica e Laboratorio Daniele Marini.
Ottimizzazione della scena: culling (decimazione) Daniele Marini Corso di Programmazione Grafica per il Tempo Reale.
STRUTTURA DI UN COMPUTER
LABVIEW Sommario Che cosa è uno strumento virtuale (VI) creato con LABVIEW Parti di un VI: pannello frontale diagramma a blocchi Confronto tra il principio.
I DATABASE.
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
1 Gestione della Memoria. 2 Idealmente la memoria dovrebbe essere –grande –veloce –non volatile Gerarchia di memorie –Disco: capiente, lento, non volatile.
Computer Graphics Marco Tarini Università dell’Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Google Visualization API
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 1 -Domain Name System Ernesto Damiani Lezione 1 – Nomi e indirizzi.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Corso di Politiche Regionali Introduzione a STATA a cura del Dott. Augusto Cerqua 15/10/2012.
1 SISTEMI INFORMATIVI TERRITORIALI LABORATORIO L’APPLICAZIONE AUTODESK MAP UNIVERSITA’ DEGLI STUDI DI NAPOLI FEDERICO II CORSO DI LAUREA IN SCIENZE GEOLOGICHE.
Implementazioni di un analizzatore di protocollo Esistono quattro fondamentali tradeoff per la realizzazione di un analizzatore di protocollo:  Analisi.
Access Breve introduzione. Componenti E’ possibile utilizzare Access per gestire tutte le informazioni in un unico file. In un file di database di Access.
Progetto WELL-FIR Manuale Utente del Web GIS Versione 0.1.
Transcript della presentazione:

Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione

Display List Per poter gestire eventi e interazione è necessario tener traccia della struttura dati grafica generata dal programma e modificata dalla interazione È più difficile cancellare che disegnare!

Display list - origini Origine nei sistemi grafici pre-workstation display memory diplay file display listRegistrare in una memoria dedicata (display memory) del display processor le istruzioni a basso livello (nella forma di diplay file o display list) per generare il disegno sul monitor Si distingueva tra monitor a memoria (storage) e monitor refresh (raster) Negli storage la DL poteva essere rimossa, nei refresh la DL doveva venire attraversata a ≈ 50 Hz

Display list - client server Oggi il display processor è un server grafico e il programma applicativo può essere in esecuzione su un client Il bottleneck non è tra host e DP, ma tra server e client - due modalità di display: immediate modeModo immediato (immediate mode)- la primitiva grafica viene spedita al server al momento in cui è definita, e non se ne conserva memoria; per ridisegnarla il programma deve eseguire nuovamente l’istruzione che genera la primitiva retained modeModo differito (retained mode)

Display list - client server retained modeModo differito (retained mode) - la descrizione della primitiva viene posta in una display list che risiede nel server grafico, la DL viene attraversata su richiesta del client per ridisegnare la figura Vantaggi: »minor traffico di rete »Il client sfrutta le performance grafiche del server »Si tiene memoria della figura per successive modifiche e interazione Svantaggi: »Costo di memoria

OGL e Display list Creazione: glNewList, glEndList #define BOX 1 /* definisce un quadrato, attribuisce il nome BOX e il numero 1 */ glNewList(BOX, GL_COMPILE); glBegin(GL_POLYGON); glColor3f(1.0, 0.0, 0.0); glVertex2f(-1.0, -1.0); glVertex2f(1.0, -1.0); glVertex2f(1.0, 1.0); glVertex2f(-1.0, 1.0); glEnd(); glEndList;

GL_COMPILE flag - indica al sistema di inviare la display list al server ma di non visualizzare la struttura BOX GL_COMPILE_AND_EXECUTE il display è immediato Per disegnare la struttura si esegue la funzione: glCallList(BOX); Cambiando attributi alla struttura o modificando i parametri di window, viewport, o di proiezione ed eseguendo la glCallList la figura viene disegnata modificata

La display list viene usata in modo massiccio per programmi di modellazione geometrica, per trasformare la geometria degli oggetti si usano matrici, attributi e trasformazioni possono essere nidificate con una gestione a stack: glPushAttrib(GL_ALL_ATTRIB_BITS); glPushMatrix(); e recuperati con: glPopAttrib(); glPopMatrix(); Si possono gestire più liste contemporaneamente: glGenLists(number); permette di creare liste con identificatori consecutivi, restituendo il primo intero di number disponibile, sono consecutivi corrispondenti a label non ancora usate; glCallLists permette di eseguire, visualizzandole contemporaneamente, tutte le liste definite (es. gestione del testo con display list, paragrafo Angel - pag )

Scene graph Una scena complessa può essere descritta da un grafo (es. un albero) ad ogni nodo del grafo sono associate trasformazioni e proprietà di apparenza degli oggetti della scena