Utilizzo di modelli 3D nella programmazione OpenGL Corso di Elementi di Grafica Digitale Anno accademico 2004/2005 Daniele Otti Università degli Studi.

Slides:



Advertisements
Presentazioni simili
Linguaggio R Raffaele Miele Dipartimento di Matematica e Statistica Università degli Studi di Napoli Federico II
Advertisements

Introduzione ad XML Mario Arrigoni Neri.
Universita di Camerino
Associazione Italiana Utenti ExLibris Pinassi Michele System manager ASB – Università degli Studi di Siena Cataloghi fuori di sé
Università degli Studi di Modena e Reggio Emilia
SINCRONIZZAZIONE E TRASFERIMENTO VIA WEB DI IMMAGINI E DATI MULTIMEDIALI CON INFORMAZIONI GEOGRAFICHE E RAPPRESENTAZIONI CARTOGRAFICHE Laureando: Mitja.
GLUT & OpenGL Ing. Tommaso Coviello Politecnico di Bari
Elaborazione di Immagini e Suoni Syllabus
1 Introduzione Necessità per utenti e progettisti di sistemi di calcolo Formalizzare le aspettative dellutente nei confronti del calcolatore Fornire degli.
STRUTTURE DATI e LABORATORIO II ESERCITAZIONE N°13 Heap massimo.
Esercizi su alberi binari
Texture Mapping.
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 prove.
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 prove generali.
Laboratorio di Linguaggi lezione VIII Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi lezione IX: Dentro le Librerie Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Lezione.
1 Costruzione di Interfacce Primi passi in OpenGL
2 Dicembre 2002Costruzione di Interfacce - Paolo Cignoni1 Costruzione di Interfacce Lezione 23 Scene Graphs, Object Loading
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
INCONTRI IN PRESENZA FASE METODOLOGICA PARTE 5
I PRIMI FILE NELLE CARTELLE CLASSE VIRTUALE EDULAB PROGETTO LIM Laura Antichi.
INFORMATICA GRAFICA – SSD ING-INF/05 Sistemi di elaborazione delle informazioni a.a. 2007/2008 Esercitazione OpenGL.
PROGETTO CRESCO Linea Attività 1 / SP1.2 Strumenti per la Grafica Martedì, 11 Dicembre PROGETTO CRESCO Linea Attività 1 / SP1.2 Strumenti per la.
Animazione di un cubo in Java 3D
Introduzione alla grafica digitale 2005,6,7,8,9,.. Matjaž Hmeljak.
Snake 2D Snake 2D Esame: Elementi Grafica Digitale Anno accademico: 2005/06 Studente: Gianluca Racano Docente: Matjaž Hmeljak.
Algoritmi e Programmazione Avanzata
1 Informatica Grafica Daniele Marini. 2 Informazioni generali Corso in teledidattica: –Videoconferenza –Learning community Frequentare le lezioni! Cercare.
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
Relatore: Laureando: Prof. Luca Zaccarian Roberto Antonelli
Gerarchie Nella lezione precedente abbiamo imparato creare una gerarchia di oggetti usando i gruppi (edit>group)
Il computer: struttura fisica e struttura logica
11 ottobre 2012 Modelli a poligoni Roberto Pirrone.
Modellazione Mura Prof. F. Corato. Clicchiamo con il tasto destro su Perspective e spuntiamo la voce Edged Faces Ci tornerà utile dopo…
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
void binario(int n); …………………
SY-MAP tools Guida allutilizzo. SY-MAP tools I SY-MAP tools permettono di collegare informazioni memorizzate su un database e elementi grafici dei file.dgn.
Studente: Banovaz Diego Trieste, 15/12/2008AA: 2008/2009.
Daniele Marini, Maurizio Rossi
I formati nella Computer Grafica
Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione.
Architettura di OGL e pipe-line Daniele Marini Corso Di Programmazione Grafica.
Esercizi su File e Liste
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Corso di Programmazione Grafica e Laboratorio Introduzione a OpenGL Prof. Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
Display list e scene graph Daniele Marini Dipartimento di Informatica e Comunicazione.
Introduzione al corso Corso di Programmazione Grafica e Laboratorio Daniele Marini.
1 Programmazione grafica e Laboratorio Daniele Marini.
Architettura di OGL e pipe-line Daniele Marini Davide Gadia Davide Selmo Corso Di Programmazione Grafica aa2005/2006.
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Corso di Programmazione Grafica per il Tempo Reale Prof. Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
Primitive OpenGL Corso di Programmazione Grafica e Laboratorio Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
L’Informatizzazione del Distretto Francesco Maremonti – Commissione Informatica ed Anagrafe.
Tools di analisi di programmi sviluppati in ANSI C Studio dei tre tools di analisi CFlow, Fjalar e Metre. Verranno messi a confronto per i loro requisiti.
T E S I N A Di Liberto Giovanni I.T.I.S. E.Barsanti – Castelfranco V.to Classe 5B/ABACUS A.S. 2007/2008.
GPGPU General Purpose Computation on GPU Emanuele Ruffaldi 2005 Corso su Elasticità non lineare ed Oggetti Deformabili.
Computer Graphics Marco Tarini Università dell’Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
File binari Accesso a file con record di lunghezza costante Struct Persona { Int id; Char nome[50];// nome e cognome Double stipendio; }; Persona dipendente;
Computer Graphics Marco Tarini Università dell’Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Lezione.
Simulazione Interattiva di Capelli Marta De Cinti Anno accademico 2005/2006 Università di Roma “La Sapienza” Relatore Prof. Marco Schaerf Correlatore Ing.
Breve Storia 3d prima generazione (escludiamo Wolf3d, Doom e Duke3d, che erano una sorta di 2D)  per ogni triangolo che compone una mesh calcoliamo la.
Transcript della presentazione:

Utilizzo di modelli 3D nella programmazione OpenGL Corso di Elementi di Grafica Digitale Anno accademico 2004/2005 Daniele Otti Università degli Studi di Trieste

Introduzione Necessità: Utilizzo di modelli precedentemente acquisiti Utilizzo di software appositi per la creazione di figure complesse

Formati di esportazione.ASE.3DS.OBJ.X.Max.lwo.dxf Centinaia di formati ….. vrml.mdl.m3g.blend.osg.dts.stl.md2.m

Perchè ASE? Pro: Formato testuale Facile da leggere e implementare Contro: File di grosse dimensioni - Basse prestazioni Non può essere importato Non ottimizzato (Grafi di Scena…)

Funzionamento di un Parser Modello 3D Struttura Dati struct t3DObject { int numOfVer; int numOfFace; CVector3 *pVerts; tFace *pFaces; }; *GEOMOBJECT { *MESH { *MESH_NUMVERTEX 8 *MESH_NUMFACES 12 *MESH_VERTEX_LIST { *MESH_VERTEX 0 *MESH_VERTEX 7 } *MESH_FACE_LIST { *MESH_FACE 0 *MESH_FACE 11 } INIT: RENDER:

Struttura di un file ASE - 1 Identificatori principali: *SCENE{ … } Informazioni sulla scena, sulle animazioni, sulle luci dambiente e i colori di background *MATERIAL_LIST { … } Elenco di tutti i materiali utilizzati dagli oggetti nella scena *GEOMOBJECT { … } Elenco degli oggetti contenuti nella scena *LIGHTOBJECT { … } Informazioni sulle luci della scena

Struttura di un file ASE - 2 *GEOMOBJECT { *MESH { *MESH_NUMVERTEX 8 *MESH_NUMFACES 12 *MESH_VERTEX_LIST { *MESH_VERTEX …… *MESH_VERTEX } *MESH_FACE_LIST { *MESH_FACE 0: A: 0 B: 2 C: 3 AB: 1 BC: 1 CA: 0 …. *MESH_FACE 11: A: 4 B: 6 C: 2 AB: 1 BC: 1 CA: 0 } Elenco dei vertici Elenco delle facce

Rendering - 1 struct t3DModel { int numOfObjects; vector pObject; }; struct t3DObject { int numOfVerts; int numOfFaces; CVector3 *pVerts; tFace *pFaces; }; struct tFace{ int vertIndex[3]; }; struct CVector3 { float x, y, z; }; Rappresenta un Modello (file) Un oggetto del modello Una faccia Un vertice

Rendering - 2 for(int i = 0; i < g_3DModel.numOfObjects; i++){ t3DObject *pObject = &g_3DModel.pObject[i]; glBegin(GL_LINE_STRIP); for(int j = 0; j numOfFaces; j++){ for(int k = 0; k <3; k++){ int vertIndex = pObject-pFaces[j].vertIndex[k] glVertex3f(pObject->pVerts[ vertIndex ].x, pObject->pVerts[ vertIndex ].y, pObject->pVerts[ vertIndex ].z); } glEnd(); }

Ulteriori Dati Possibilità di inserire: Informazioni su materiali (texture) Dati aggiuntivi (normali per illuminazione)

Formati Binari - 1 Difficili da leggere, ma più performanti Lobbiettivo è comunque quello di creare in memoria una struttura dati che è come quella che abbiamo appena visto

Formati Binari - 2 Formato 3DS: Informazioni analoghe ad ASE Organizzate in chunks: ID Lunghezza del chunk Attributi Se non si è interessato ad un campo, lo si salta

Conclusioni Un modello quindi: Separa la fase di realizzazione delloggetto con la sua rappresentazione vera e propria utilizzando un file testuale o binario per mantenere le informazioni.

Bibliografia - 1 Riferimenti: ASE_File_Format e.htm

Bibliografia - 2 Software: Blender: Lib3Ds: lib3ds.sourceforge.net LibAse: