Realtà Virtuali Prof. Raffaella Folgieri, aa 2013/2014 Realizzare la VR: i software Piattaforme per la VR: VRML Il più diffuso: VRML (Virtual Reality Modeling Language) Rappresentazioni 3D interattive anche per web Rendering di poligoni tridimensionali attraverso spigoli Informazioni su colore, superfici (opacità, brillantezza), fonti luminose Gestione animazione e suoni tramite procedure ed eventi I browser non lo supportano, ma esistono plug-in Non semplice per neofiti Prof. R. Folgieri Editor ed esempi VRLM Editor: FreeWRL (gratuito): http://freewrl.sourceforge.net/ Webseed Studio 3D (a pagamento) : OpenVRLM: http://www.openvrml.org/ White_Dune (gratuito): http://www.viewlife.com/ http://vrml.cip.ica.uni-stuttgart.de/dune/ Qualche esempio: http://www.graphicax.com/cult3d/ Prof. R. Folgieri Piattaforme per la VR: X3D http://www.web3d.org/x3d/ Linguaggio per descrizione di ambienti virtuali interattivi. Sviluppato dal Web 3D Consortium Evoluzione del VRML Basato su XML Permette di descrivere: Ambiente (caratteristiche. Es. sfondo.) Oggetti (posizione, geometria, colore) Illuminazione Audio Osservatore (caratteristiche, posizione) Animazioni (associate a oggetti, luci, audio, osservatore, ecc.) Interazione ambiente/osservatore Manipolazione dell’ambiente virtuale tramite scripting (javascript, Java) File X3D: file XML che descrive ambiente virtuale (come grafo della scena) Prof. R. Folgieri Piattaforme per la VR: OpenVRML Progetto open source Gratuito. Licenza GNU GPL. visione oggetti tridimensionali in VRML e X3D in applicazioni web plugin basato su GTK+ (1) per render mondi X3D e VRML nei browser Sito web: http://openvrml.org/ (1) acronimo per GIMP ToolKit: insieme di strumenti per la creazione di interfacce grafiche, sviluppato in C. Prof. R. Folgieri VR immersiva Eidolab: Chi: http://eidomatica.dico.unimi.it/ http://eidomatica.dico.unimi.it/people.php?lang=it Teatro Virtuale: http://eidomatica.dico.unimi.it/theater.php?lang=it Prof. R. Folgieri Desktop VR, semi-immersiva Grafica 3D e 3D modeling simulazione, riproduzione, game (engine) Interazione Grafica 3D utilizzata per giochi, e applicazioni con immagini in movimento, quando occorre disegnare l'immagine 30-60 volte al secondo servono grandi prestazioni, piu' di quanto CPU fornisce Prof. R. Folgieri La pipeline grafica insieme di operazioni e trasformazioni geometriche, effettuate in sequenza sugli elementi grafici pipeline in parte implementata in hardware (apposite schede grafiche, veri e propri processori paralleli) trasforma figure tridimensionali (3D), in valori di illuminazione dei punti dello schermo assieme alle schede: software per utilizzarle (driver e librerie di funzioni software utilizzate dai developer). stretto legame con schede Librerie (API: Application Standard Interfaces) per uso delle schede si sono standardizzate. Si ha: OpenGL, di un consorzio di fornitori (inizialmente da librerie SGI) DirectX di Microsoft, per uso schede grafiche con Windows. Le librerie forniscono la pipeline grafica Prof. R. Folgieri Fasi della pipeline grafica Definizione oggetti grafici (Application Stage): fase gestita dalla CPU posizione oggetti da disegnare: visibili o no, in che posizione sono, dove sono le luci , da dove viene osservata la scena ecc. Trasformazioni geometriche/calcolo luci (Transform & Lighting o Geometry Stage) oggetti ruotati e proiettati sul piano dello schermo fase implementata in hardware in molte schede grafiche Calcolo dei valori di illuminazione di tutti i pixel dello schermo (Rastering Stage) vengono applicate textures e vari effetti si calcola quali punti sono nascosti da oggetti avanti ad essi immagine disegnata in area di memoria detta frame buffer. frame buffer convertito in segnali inviati allo schermo. Prof. R. Folgieri Pipeline grafica: dettagli geometry stage effettuato in moderne schede grafiche da hardware mediante da componenti dette vertex shaders unita' che effettuano raster stage dette pixel shaders come precedenti, ce ne sono piu' di una e lavorano in parallelo Vi sono unita' speciali per il calcolo e l'applicazione delle texture. Texture = immagini bidimensionali che rappresentano le superfici (rugosita' pareti, disegni dei pavimenti, superficie della pelle, ecc): disegni in due dimensioni (2D) poi incollate sulle superfici Prof. R. Folgieri Grafo di una scena Concetto collegato al precedente Descrizione dello stato attuale del mondo virtuale Organizzazione gerarchica degli oggetti Può cambiare nel tempo Nodi: albero di trasformazione gerarchica Le dita che si muovono comportano che si muova la mano Foglie Fine di un albero Prof. R. Folgieri MONDO Un classico evergreen La mitica teapot: http://www.sjbaker.org/wiki/index.php?title =The_History_of_The_Teapot Prof. R. Folgieri 3D modeling software CAD/3D Modeling. Molti: 3D Studio MAX, Maya, Houdini, SolidWorks, LightWave3D, AutoCAD, CATIA, Presagis, Multigen, Cinema 4D, XSI ecc. ecc. Altri free, open source: Art of illusion: http://www.artofillusion.org/ Make Human: http://www.makehuman.org/ Motori di rendering open source: Aqsis: http://www.aqsis.org/ LuxRender: http://www.luxrender.net/en_GB/index POV-ray: http://www.povray.org/ Prof. R. Folgieri 3D modeling software Blender http://www.blender3d.org/ Game engine Free, scaricabile Open source Prof. R. Folgieri 3D modeling software Da guardare: Google Sketchup: http://sketchup.google.com/ Testimonia interesse crescente per 3D HD view (Microsoft): http://research.microsoft.com/en-us/um/redmond/groups/ivm/HDView/ Come sopra… Prof. R. Folgieri Ambienti di modeling di desktop VR Detti anche MUVE (Multi User Virtual Environment) Il più famoso: Second Life (Linden Lab, giugno 2003) Residenti: avatar Personaggio digitale personalizzabile che rappresenta l’utente Può caminare, parlare, volare, ecc Moneta interna (Linden Currency). 1 $ USD= 267 L$ Anche business virtuali/reali. Gratuito (base) Nel 2011 comunità crescente. + 120 server/settimana supporto crescita Linguaggio LSL (Linden Scripting Language), simile a C o Java Teen Second Life: versione riservata ai teenager (Teen Grid) Due case study: IBM e NASA Prof. R. Folgieri Desktop VR: Second Life Svantaggi: Tempi e costi di apprendimento Numerose distrazioni Occorre download sw specifico e schede grafiche specifiche Neccessità buona broadband No sensi addiction Vantaggi potenziali: Facile accesso e basso costo Costi ridotti per uso standard e infrastruture emergenti Veloce verifica free trial-and-error Miglioramento apprendimento attraverso sessioni interattive, immersive Ambiente cooperativo. Riduzione viaggi. Aumento efficienza. Prof. R. Folgieri Desktop VR: altri MUVE Active Worlds (http://www.activeworlds.com/ ) Entropia Universe http://www.entropiauniverse.com/ Italcity http://www.italcity.com/ There (http://www.there.com/info/homepage) ha chiuso ma dice che riaprirà… Prof. R. Folgieri Approfondimenti VRML GTK+ Pipeline grafica Grafo della scena Rendering ed equazione di rendering OpenGL Kinematics modeling Behavior modeling Physical modeling Light field rendering, computational imaging Lumigraphs multi-camera arrays Spherical panoramas & videos Aspetti teorici grafica 3D: http://it.wikipedia.org/wiki/Computer_grafica_3D#Programmi_per_la_grafica_3D Prof. R. Folgieri