La grafica 3D ed il WEB Lezione 20: La grafica 3D ed il WEB La grafica 3D ed il WEB Lo sviluppo che ha avuto Internet negli ultimi anni e' principalmente dovuto al WWW. Uno dei punto di forza del WWW e' la possibilita' di distribuire contenuti multimediali. La grafica 3D e' uno strumento interessante con cui e' possibile creare contenuti multimediali. Contenuti non interattivi Esistono due principali modalita' con cui includere la grafica 3D nelle pagine WEB: Immagini non interattive Scene interattive Inserire contenuti 3D non interattivi vuole dire limitarsi ad inserire immagini statiche tridimensionali... Contenuti non interattivi ... o filmati preregistrati realizzati con un programma di grafica 3D. Contenuti interattivi Inserire contenuti 3D interattivi significa invece dare all'utente la possibilita' di cambiare la visuale di una scena 3D... Contenuti interattivi ... ed eventualmente interagire con gli oggetti presenti in scena. Contenuti interattivi Sebbene le scene 3D interattive siano piu' interessanti da un punto di vista concettuale, le potenzialita' dei contenuti 3D non interattivi non vanno sottuvalutate. Loghi e filmati di presentazione possono trarre enorme beneficio dalla grafica 3D. Contenuti interattivi I contenuti 3D interattivi possono dare l'idea di mondi in cui l'utente interagisce direttamente con gli oggetti presenti. Immagini 3D nel web Il modo piu' semplice per inserire la grafica 3D nel web consiste nell'inserire immagini statiche generate tramite rendering. Anche se la tecnica puo' sembrare banale, essa consente numerose interessanti opportunita' comunicative. Inoltre si possono "simulare" contenuti 3D interattivi con tante immagini statiche. Immagini 3D nel web Loghi e scritte possono asumere una maggiore qualita' se realizzati in grafica 3D. Immagini 3D nel web Integrando collegamenti ipertestuali di una pagina HTML con grafica 3D e' possibile simulare realta' virtuali... Immagini 3D nel web Filmati 3D per web Inserire filmati realizzati in grafica 3D presenta invece le stesse difficolta' che presenta l'inserimento di contenuti video. In questo caso il problema maggiore e' la banda richiesta dai filmati 3D. ... inserendo viste differenti di uno stessa scena opportunamente collegate. Le image map possono aiutare nel definire l'interazione. Filmati 3D per web Un filmato 3D dev'essere compresso con fattori molto elevati per poter essere inserito su WEB. Filmati 3D per web Filmati 3D per web Ma fattori di compressione elevati danno luogo ad immagini di scarsa (spesso pessima) qualita'. Per questo i filmati 3D vengono raramente utilizzati. Grafica 3D in Flash Flash e' uno degli strumenti attualmente piu' utilizzati per inserire contenuti animati interattivi nelle pagine WEB. L'introduzione di grafica 3D in filmati Flash e' pratica abbastanza comune. L'impiego piu' frequente del filmato 3D e' la creazione di gif animate per pulsanti, banner od icone. Grafica 3D in Flash Per questo ed altri scopi sono stati introdotti motori di rendering non foto-realistici per i vari programmi di grafica 3D. Scopo di questi motori e' quello di produrre immagini vettoriali invece che raster dalle scene renderizzate. Grafica 3D in Flash Illustrate! permette di generare immagini non foto-realistiche per creare cartoni animati o diagrammi tecnici. Grafica 3D in Flash Grafica 3D in Flash I 3 sistemi piu' diffusi in questo momento sono: Illustrate! Swift 3D Vecta 3D Grafica 3D in Flash Swift 3D permette di creare animazioni ed immagini statiche di alta qualita', importandole da vari programmi di grafica 3D. Grafica 3D in Flash I vantaggi delle immagini tridimensionali esportate in flash e' che vengono codificate in un formato vettoriale. Sono quindi in grado di creare sofisticati effetti tridimensionali in pochissimi kilobytes: un risparmio notevole rispetto ai filmati 3D. Vecta 3D e' un plug-in per 3D studio MAX che permette di esportare immagini ed animazioni in formato SWF. Grafica 3D in Flash I mondi 3D di quicktime Le immagini 3D esportate in Flash possono avvalersi delle capacita' di interazione dello strumento. Il QuickTime e' uno strumento prodotto dalla Apple per la diffusione di contenuti multimediali in rete. Anche se non si possono creare veri e propri spostamenti in mondi virtuali, si possono comunque simulare movimenti in ambienti tridimensionali. Tra i vari formati multimediali che esso e' in grado di gestire, supporta anche ambienti tridimensionali. I mondi 3D di quicktime Gli ambienti 3D di Quicktime permettono agli utenti di muoversi in uno spazio pseudotridimensionale. I mondi 3D di quicktime ... e di Zoomare in avanti o all'indietro (simulando uno spostamento nella direzione della telecamera). I mondi 3D di quicktime Il programma permette di ruotare attorno all'ambiente (simulando l'operazione di pan di una cinepresa)... I mondi 3D di quicktime In realta' i mondi virtuali di QuickTime sono cubi su cui vengono disegnate delle immagini sulle 6 facce. I mondi 3D di quicktime Il programma consente di ruotare e di avvicinarsi alle pareti del cubo simulando un movimento in un ambiente 3D. VRML I mondi 3D di quicktime QuickTime permette inoltre di inserire aree calde su cui e' possibile intercettare eventi di click per creare interazioni. VRML Il VRML e' un linguaggio testuale utilizzato per descrivere mondi tridimensionali. E' stato creato per inserire mondi tridimensionali nei siti web. Presenta qualche similitudine con il linguaggio il linguaggio HTML, ma e' comunque un linguaggio profondamente differente. VRML Un modello VRML puo' essere visualizzato in un browser attraverso un apposito plug-in. VRML Un file VRML carica le texture che applica sugli oggetti da apposite URL internet. Consente di avere al suo interno collegamenti ipertestuali. Il browser mette a disposizione una console con la quale e' possibile controllare la telecamera inquadrante il modello scaricato. VRML Un mondo VRML puo' essere creato "a mano" scrivendo direttamente il codice sorgente... VRML VRML ... oppure generato dai programmi di grafica 3D attraverso opportuni filtri di esportazione. Java 3D Sebbene le idee alla base del VRML siano ottime, esso possiede molti limiti che si riflettono in una scarsissima qualita' grafica. Il Java e' un linguaggio di programmazione multi-purpose che puo' essere inserito nelle pagine WEB sotto forma di APPLET. A causa di questo problema il linguaggio e' scarsamente utilizzato ed in genere si preferiscono soluzioni alternative per la diffusione contenuti tridimensionali interattivi in Internet. Java supporta numerose funzionalita' quali connettivita', database, crittografia, ecc... Java 3D Java 3D e' una libreria di funzioni Java per realizzare grafica 3D. Java 3D Realizzare animazioni tridimensionali in Java 3D e' estremamente difficile in quanto bisogna utilizzare un linguaggio di programmazione complesso. Java 3D fornisce infatti solamente funzionalita' per visualizzare ed aggiungere oggetti ad una pipeline di visualizzazione. Essendo basato su un vero e proprio linguaggio di programmazione Java 3D e' lo strumento che fornisce la versatilita' maggiore. Java 3D Interazioni e movimenti possono essere realizzati scrivendo il codice opportuno. Java 3D Java 3D Diventa pero' estremamente difficile importare immagini create con programmi quali 3D Studio o similari. Shockwave 3D Il Java 3D ha bisogno di librerie non standard per poter essere visualizzato dall'utente finale. Director e' un programma della Macromedia destinato allo sviluppo di prodotti multimediali. L'utente puo' quindi essere costretto a scaricare componenti addizionali per visualizzare le animazioni ed entrare nei mondi 3D. Anche se e' prevalentemente indicato per la produzione di CD-Rom puo' essere utilizzato per realizzare contenuti destinati al WEB. Shockwave 3D Shockwave 3D A partire dalla versione 8.5, Director e' anche in grado di importare mondi tridimensionali. Gli oggetti tridimensionali possono essere modificati attraverso opportune primitive. Utilizzando 3D studio max si costruiscono i modelli tridimensionali... Shockwave 3D ... e li si esporta in un formato specificio per l'inclusione in Director 8.5 (formato W3D). Shockwave 3D I file W3D possono essere importati in Director 8.5 ... Shockwave 3D Shockwave 3D ... ed inseriti nelle scene alla stessa stregua degli altri oggetti multimediali. Director mette a disposizione una serie di strumenti per modificare l'inquadratura del mondo... Shockwave 3D Shockwave 3D ... ed associa agli oggetti 3D opportune proprieta'. LINGO (il linguaggio di programmazione di Director) possiede numerose funzioni per il 3D. Shockwave 3D Vi sono inoltre un gran numero di "behavior" predefiniti per spostare la cinepresa... Shockwave 3D Shockwave 3D ... e per legare questi spostamenti ad eventi indotti da tastiera o mouse. Shockwave 3D Director fornisce anche strumenti per aggiungere interazioni con gli oggetti presenti sulla scena. I documenti multimediali prodotti da Director 8.5 possono essere esportati in formato .SWF ed inclusi in pagine HTML. Grazie a tutte queste caratteristiche e' possibile creare contenuti tridimensionali interattivi abbastanza facilmente. Malgrado l'estensione .SWF sia la stessa dei filmati generati da Flash, in realta' il plug-in necessario per visualizzarli e' differente. Shockwave 3D Per visualizzare i file SWF generati da Director 8.5 occorre che il browser abbia installato un plugin sufficientemente aggiornato. In ogni caso, al momento attuale, questa soluzione risulta essere la piu' efficiente per la pubblicazione di contenuti tridimensionali interattivi su Internet.