I formati nella Computer Grafica

Slides:



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

Introduzione all’HTML
Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Accessibilità, usabilità, credibilità
Corso di Fondamenti di Informatica
Introduzione ad XML Mario Arrigoni Neri.
HtML Premessa introduttiva al laboratorio Sergio Capone.
A. FERRARI Alberto Ferrari. L'HyperText Markup Language (HTML) (traduzione letterale: linguaggio di marcatura per ipertesti) è un linguaggio usato per.
I Formati Grafici I Formati grafici sono i formati tramite le quali le immagini sono salvate su disco fisso. I Formati grafici si suddividono in Formati.
(Appunti da Scott Mitchell, James Atkinsons - Active Server Pages 3.0 – ed. Apogeo) Le pagine ASP.
AMBIENTE VIRTUALE DI APPRENDIMENTO.
1 Introduzione ad XML. 2 Problemi con SGML Complesso da comprendere ed utilizzare Non è pensato per la rete: mancano link ipertestuali e specifiche grafiche.
PHP.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
Che cosè? Che cosè? Che cosè? Che cosè? Come creare una pagina… Come creare una pagina… Come creare una pagina… Come creare una pagina… inserire testi,immagini,tabelle…
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Reti Informatiche.
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Linguaggi per il Web Laboratorio di Applicazioni Informatiche II mod. A.
IL FORMATO DEI FILE E IL FILETYPE (ESTENSIONE) Formato dei file 10 marzo 2012 Informatica prof. Giovanni Raho anno
Dicembre 2006 Informatica applicata prof. Giovanni Raho 1 Informatica applicata La comunicazione ed IL FORMATO DEI FILE.
Corso di Informatica A.A
Fabio Massacci Programmazione ad Oggetti
Linguaggi di markup1 LINGUAGGI DI MARKUP. Linguaggi di markup2 Documenti su Internet Internet permette (tra laltro) di accedere a documenti remoti In.
Utilizzo di modelli 3D nella programmazione OpenGL Corso di Elementi di Grafica Digitale Anno accademico 2004/2005 Daniele Otti Università degli Studi.
1 Linux day /11/2003 ADA. Dai requisiti al progetto Come nasce il progetto di una piattaforma e-learning Open Source.
ELEMENTI DI GRAFICA DIGITALE. GRAFFITI = GRAFFIO, SEGNO TESTODISEGNO Senso della vista GRAFICA PER COMUNICARE.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Scienze dellInformazione Applicazione.
Realizzazione siti web Pagine web dinamiche - javascript.
Corso di PHP.
Trattamento di Foto e Immagini Digitali
ARCHITECTURAL TOOLS FOR RHINO
COMPUTER GRAPHIC. La computer graphic si occupa della creazione o manipolazione di immagini digitali. Le immagini digitali possono essere di due tipi:
WORLD WIDE WEB Il World Wide Web (Web, WWW o W3) è un'architettura software utilizzata per fornire l'accesso e la navigazione ad un insieme molto vasto.
Una LIM per la didattica
Descrizione Semantica ad Alto Livello di Ambienti Virtuali in X3D
Internet L’essenziale.
VRML97 -Appendice- Cristina Donati 1 VRML97. Il Virtual Reality Modeling Language (VRML) è un formato di file volto alla descrizione degli oggetti interattivi.
Massimiliano Piscozzi – Sistemi multimediali.
Creare pagine web Xhtlm. Struttura di una pagina.
Gianpaolo Cecere Introduzione
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Internet Explorer I preferiti Stampa di pagine web Salvataggio di pagine web Copia di elementi di pagine web in altri applicativi.
Immagini digitali immagine digitale, si intende un elemento grafico elaborato tramite computer, che si può visualizzare sul monitor e stampare su carta.
Tutte le immagini che si trovano nel computer sono digitali. Possiamo crearle con programmi di grafica o acquisirle con scanner, macchine fotografiche.
Il linguaggio HTML Antonella Schiavon – settembre 2008 rev. 1 – aprile 2011.
HTML HyperText Markup Language Linguaggio per marcare un’Ipertesto
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
Corso di Programmazione Grafica per il Tempo Reale Prof. Daniele Marini.
Corso di Programmazione Grafica e Laboratorio Prof. Daniele Marini.
Codifica di Immagini Fabio Cantaro.
Impostare i caratteri. Le prime versioni del linguaggio HTML così come le prime versioni dei browser consentivano unicamente la scelta tra due tipi di.
Internet e HTML Diffusione di informazioni mediante la rete Internet.
La lavagna luminosa del futuro Adotteremo il modello degli agenti cognitivi.
HTML HTML e il web.
Star Office è una suite di software di produttività personale commercializzata da Sun Microsystems. StarOffice nasce come software commerciale sviluppato.
Indice argomenti Installazione e configurazione
InternetInternet Sede: Salvo D’acquisto 2010/2011 Docente: Vito Monno.
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.
TCS D e realtà aumentata Lidia Falomo Dipartimento di Fisica “Volta”
LINGUAGGI DI PROGRAMMAZIONE Per comunicare comandi e dati ad un computer occorre un particolare linguaggio detto LINGUAGGIO MACCHINA, che è un insieme.
Servizi Internet Claudia Raibulet
Eprogram informatica V anno.
Cloud Tecno V. Percorso didattico per l’apprendimento di Microsoft Access 4 - Le maschere.
Tipi di immagini. Vi sono 3 tipi di formati di immagini molto conosciuti Bitmap (bmp)  Bitmap (bmp)  Gif  Jpg.
SOMMARIO La Digitalizzazione La Compressione LA DIGITALIZZAZIONE La digitalizzazione consiste nella trasformazione di un oggetto in una sequenza di numeri,
STRUTTURE DEI DATI (COMPLESSI). TESTO (codifica informazioni testuali) TESTO: (es. libro) sequenza di capitoli, paragrafi,pagine,righe, parole.
Video Grafica Immagini. Modalità Video Risoluzione –Numero di pixel visualizzati sul monitor; per esempio 800 x 600, 1024 x 768, 1280 x 1024 Profondità.
Progetto WELL-FIR Manuale Utente del Web GIS Versione 0.1.
Transcript della presentazione:

I formati nella Computer Grafica Daniele Marini, Maurizio Rossi Marco Ronchetti, Davide Selmo, Davide Gadia

Struttura di ambiente 3D Abbiamo una struttura in cui gli oggetti possono essere classificati in: Ambiente della scena Oggetti nella scena Luci Camere

Problema della descrizione Come visualizziamo e memorizziamo gli oggetti presenti in una scena? Dobbiamo analizzare la struttura delle varie componenti presenti nella scena 3D, e capire quale migliore rappresentazione si adatta alla loro descrizione.

Approcci differenti Scrittura a mano della struttura in un formato di file Uso di programmi modellatori 3D (Maya, 3DStudio, ecc..) Uso di Linguaggi dedicati (VRML, X3D,…)

Cosa devo salvare o memorizzare?   Cosa e come devo salvare? Quale tipo di informazioni mi servono per ricostruire una scena 3D? E per archiviare una immagine? Sintassi e Semantica per: -descrizione delle scene 3D -memorizzazione delle immagini di rendering

Problema della compatibilità Diversi programmi Diversi parser di lettura Diversi approci alla memorizzione   -Faccio un formato unico, standard? Ogni modifica deve essere concordata -Oppure lascio la libertà a formati proprietari Facili cambiamenti, problemi di compatibilità.

La filosofia Opensource Formato leggibile e comune a tutti e quindi Standard In questo genere di file la caratteristica principale è l’interscambiabilità delle informazioni, infatti avendo un codice aperto, tipicamente sono stringhe di caratteri ASCII facilmente interpretabili, è possibile scrivere e leggere sullo stesso file.

Come devo costruire un ambiente 3D? Uso di Linguaggi di Programmazione. Mettono a disposizione un linguaggio semplice e potente in modo da poter ricostruire situazione complesse in scenari 3D. Uso di programmi modellatori 3D.

Linguaggi di programmazione (Open Source) volti alla costruzione di scene 3D -VRML -X3D (xml + vrml+ altro.....)

Memorizzazione delle informazioni Differenti formati commerciali: 3ds (3d studio format) Obj (AliasWavefront) 3DS (3D StudioMax format) Iges (Initial Graphics Exchange Specification ) DXF (Drawing Interchange file format)

Formati di interscambio Seguono generalmente la filosofia OpenSource Usati per far comunicare differenti programmi di modellazione. Utilissimi nel caso di grosse produzioni e cooperazione in un team di persone. Formati usati: Obj 3ds Rib DXF

VRML 1.0 L’idea primordiale del VRML arriva da Tim Berners-Lee e Dave Raggett per discutere l’interfaccia di realtà virtuale per il WWW, durante la prima conferenza annuale sul World Wide Web tenutasi a Ginevra nella primavera del 1994.

VRML97 - Feature Noto anche come VRML 2 È uno standard riconosciuto: ISO/IEC 14772-1:1997 È un Linguaggio che consente la simulazione di mondi virtuali tridimensionali. Descrizione: -Ambienti virtuali contenenti oggetti, sorgenti luminose, immagini, suoni, filmati. -Animazioni e interattività -Impiego di link 3D a URL remoti e naturalmente a qualunque altro file di tipo .wrl (formato files VRML ).

VRML97 - Il formato File di testo che utilizza caratteri ASCII (come l’HTML ad esempio) Estensione file: *.wrl. Eventualmente compresso con Gzip *.wrz. Pro: VRML comparabile a quello che fanno i numerosi programmi di modellazione tridimensionale. Linguaggio di scripting. Contro: gli esiti raggiungibili da un programma di rendering sono in confronto decisamente superiori sia a livello di qualità sia di velocità. Il file contiene:: - Nodes: il mondo è fatto di nodi che sono tipi di oggetti - Fields: descrivono le proprietà dei nodi

Esempio VRML97 Node Field (uses default values) #VRML V2.0 utf8 WorldInfo { title "Example 1" } DEF FBOX Shape { appearance Appearance { material Material { diffuseColor 0 0.5 0 geometry Box { Field (uses default values)

VRML97 - Strumenti per la creazione del file -Tools di authoring 3D (export in vrml) Maya, Blender, Caligari TrueSpace ecc… -Tools di authoring VRML97 visuali Cosmo World 2.0, 3D Studio Max, Internet Space Builder, Internet Character Animator Editors VRML97 testuali SitePad, VRMLPad, Vorlon, X3D-Edit

VRML - Come lo si usa Il file VRML, viene interpretato e mostrato sul display da player freeware disponibili su web come. Plug-in per Internet Explorer o Netscape: Cosmo Player 2.0 (http://www.cosmosoftware.com/ ) Cortona 4.2 (http://www.parallelgraphics.com/products/cortona/) Player autonomi: FreeWRL GLView Blaxxun Contact – 3D (http://www.blaxxun.com) Quesi tool leggono il codice contenuto nel file .wrl e lo traducono in ambienti 3D visualizzabili in real-time

VRML - Specifiche e link VRML Consortium/Web3D http://www.vrml.org/ VRML repository: http://vrml.sdsc.edu/ VRML97 Specification http://www.web3d.org/Specifications/VRML97/ /

X3D (eXtensible 3D) Sviluppato dal Web3D consortium: www.web3D.org Si basa su XML (eXtensible Markup Language) Standard: ISO/IEC 19775:2004 Nasce per migliorare la specifica VRML97 Limiti principali di VRML97: Peso del Plug-in nel browser Non sfrutta le estensioni 3D delle nuove GPU Non consente estensioni al suo standard

Architettura di X3D Si basa su: Componenti Profili Livelli di servizio Lo sviluppo di X3D è stato fatto in collaborazione con ISO, W3C e MPEG-4 Rispetto a VRML: Aggiunge nuove caratteristiche Aggiunge nuovi metodi di codifica dei dati Presenta migliori API Presenta una architettura modulare È facilmente estendibile Si conforma ad XML

I “Componenti” di X3D Sono gruppi di funzionalità correlate

I “Profili” di X3D (1) VRML97 Base. Full. Interchange Definiscono raggruppamenti di Componenti: VRML97 Base. Questo è il profilo che consente la compatibilità all'indietro verso lo standard VRML 2.0, implementandone tutte le funzionalità immersive per la navigazione e interazione in mondi virtuali nell'architettura X3D. Full. Questo è il profilo che include tutti i componenti dello standard X3D nella versione attuale. Come tale è anche quello che fornisce il maggiore numero di funzionalità ma richiede lo sviluppo di applicazioni più pesanti. Interchange Questo profilo è indirizzato allo scambio di dati di geometrie e animazioni tra differenti sistemi autore. Si presta bene per una implementazione run-time leggera, che non richiede interazione, e può essere realizzata tramite applet Java o piccoli plug-in per browser. Presenta comunque delle possibilità di rendering più limitate rispetto alla specifica completa di X3D di cui non utilizza tutte le possibilità in termini di modelli di illuminazione.

I “Profili” di X3D (2) Interactive Extensibility. Definiscono raggruppamenti di Componenti: Interactive Questo profilo è finalizzato allo sviluppo di player leggeri in grado di gestire e mostrare animazioni, grafica e interazione. In definitiva presenta le funzionalità del profilo Interchange a cui aggiunge le possibilità di picking, altre geometrie e modelli di illuminazione. È un punto di congiunzione con lo standard MPEG-4 cui si allinea. Extensibility. Questo profilo definisce l'insieme di caratteristiche che gli sviluppatori possono utilizzare per creare nuovi nodi e componenti per costruire nuove applicazioni. Presenta un insieme di caratteristiche base che possono essere composte per gestire la grafica, i comportamenti e l'interazione. Definisce anche le possibilità di scripting e le API che consentono agli sviluppatori di creare nuovi nodi e componenti che utilizzano le caratteristiche base. Ciò significa che tramite queste caratteristiche e API uno sviluppatore può ricreare qualsiasi nodo X3D standard non presente in questo profilo.

I “Livelli di Servizio”X3D Tutte le specifiche (componenti) di X3D possono essere implementate in modo variabile per fornire vari livelli di servizio. Questi consentono di definire gradi variabili di supporto delle specifiche, da parte delle applicazioni e dell’HW. Il livello di conformità è strettamente definito per ogni livello di servizio, e i profili specificano il grado di supporto dei livelli di componenti.

Il formato Obj Creato da AliasWavefront SGI Le info sono organizzate in un file ASCII Posso definire all’interno: -colore -geometria 3D -non posso comprimere -contiene la definizione di uno o più oggetti  

OBJ - La sua struttura Ecco la descrizione di un file obj Mtllib Definisco il meteriale (*.mtl) (optional) # a comment line V x y z Elenco dei vertici vt u v [w] Elenco delle coordinate u,v (texture) vn x y z Vettore normale G Gruppo di appartennenza dell’oggetto (optional) F n0 n1 n2 n3 Elenco faccie Usemtl Colorazione (se esiste il materiale) V -> vertici F -> faccie G-> gruppi

OBJ - Esempi di file mtllib colors.mtl v -0.500000 -0.500000 0.500000 g cube usemtl Color1 f 1 2 4 3 f 3 4 6 5 f 5 6 8 7 usemtl Color2 f 7 8 2 1 f 2 8 6 4 f 7 1 3 5

Formato 3DS Costituito da una serie di chunks. Ognuno ha una struttura simile: short chunk_id; long chunk_len; Id indica un codice unico il quale identifica il tipo di dato in questo chunk e può indicare inoltre l’esistenza di chunk subordinati. len indica la lunghezza dei dati associato allo chunk. I chunk subordinati possono anche essi stessi avere subordiati chunks.

Altri formati Formato IGES usato per memorizzazione di superfici parametriche Formato DXF usato per la struttura di modelli architettonici (CAD)

RIB files Ideato dalla Pixar come supporto della RenderMan interface Modello per strutturare una scena 3D È quello usato per spiegare RenderMan Argomento di discussione durante la trattazione delle RenderMan interface

Formati di immagine Bitmap Tipi di file immagine .bmp .tif .gif .jpg ……… Il formato .bmp non è compresso, La compressione di immagine LZW usata in .tif e .gif è simmetrica e non degrada le immagini, ma comprime meno i file, Il formato .jpg (JPEG) comprime molto ma ha una compressione non simmetrica di tipo lossy, con degrado dell’immagine compressa, La grafica raster: fotografie e illustrazioni pittoriche. Vantaggi: si lavora sui pixel, effetti molto realistici, simili a quelli della pittura e grafica tradizionale (pennello, aerografo, matita, carboncino). SW di fotoritocco funzionano con immagini a punti. Operazioni sui punti. Contro: ingrandimento (su monitor o in stampa) solo ingrandendo la dimensione del pixel, che può diventare visibile, fino a creare effetti sgradevoli (pixelizzazione). Per elaborare (spostare, modificare, cancellare) una parte dell’immagine occorre letteralmente selezionare alcuni pixel e spostarli