ALMA MATER STUDIORUM - UNIVERSITA' DI BOLOGNA SEDE DI CESENA FACOLTA' DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN SCIENZE DELL'INFORMAZIONE RIPRODUZIONE VIRTUALE DEGLI ESTERNI DELL’EDIFICIO DEL CORSO DI LAUREA Relazione finale in: INTELLIGENZA ARTIFICIALE Relatore: Presentata da: Prof. Giorgio Casadei Riccardo Lombardi Correlatore: Dr. Stefano Cacciaguerra Sessione III Anno Accademico 2006/2007 A Laura e Renato, mi hanno fatto crescere e diventare la persona che sono ora. A mio fratello che mi ha aiutato nei momenti difficili. Ai miei parenti che mi hanno supportato nelle mie fatiche. A Romano, resterai sempre nei miei pensieri e ti ringrazio per tutto quello che hai fatto per me. Agli amici, quelli veri, che mi sono sempre stati vicini e mi hanno fatto vivere a pieno la mia vita. Al Tasso, zio Gabry, RomaG, Ruffi, Faggiri, Ale, Mr. Dan, Giga, le massaie e tutti gli altri che mi hanno aiutato a portare al termine gli studi. A Stefano, un sentito ringraziamento per la pazienza e la collaborazione scientifica. Indice Indice INDICE ................................................................................................................... 1 DIDASCALIA FIGURE ............................................................................................ 3 1 INTRODUZIONE .......................................................................................... 7 1.1 1.2 1.3 2 SCENARIO.......................................................................................................... 7 CONTRIBUTO DELLA TESI .................................................................................. 8 DESCRIZIONE DEI CONTENUTI............................................................................ 9 STATO DELL’ARTE NEI MONDI VIRTUALI ............................................... 11 2.1 SUDDIVISIONE DEI MONDI VIRTUALI .............................................................. 14 2.1.1 The Sims 2 .................................................................................................. 17 2.1.2 Metaplace ................................................................................................... 19 2.1.3 Second Life ................................................................................................. 21 3 PROGETTAZIONE ..................................................................................... 29 3.1 3.2 3.3 3.4 3.5 4 CREAZIONE DEL CORSO DI LAUREA CON 3D STUDIO MAX ............................... 30 DIFFERENZE TRA 3D STUDIO MAX E SECOND LIFE ......................................... 31 INTRODUZIONE ALLA COSTRUZIONE IN SECOND LIFE ...................................... 33 OSSERVAZIONE, DOCUMENTAZIONE E MODELLAZIONE ................................... 38 FASI DI REALIZZAZIONE DEL CORSO DI LAUREA.............................................. 41 IMPLEMENTAZIONE ................................................................................. 45 4.1 RIDUZIONE DELLE PRIMITIVE .......................................................................... 47 4.2 RIDUZIONE DELLE PRIMITIVE CON PRIMFFICIENCY .......................................... 50 4.2.1 Linden Script Language utilizzato.............................................................. 53 4.3 FASI DI REALIZZAZIONE ................................................................................... 56 4.3.1 Problematiche riscontrate nella realizzazione ........................................... 65 5 CASI DI STUDIO ........................................................................................ 71 5.1 6 DIFFERENZE GRAFICHE TRA REALTÀ, SECOND LIFE E 3D STUDIO MAX.......... 71 CONCLUSIONI .......................................................................................... 87 6.1 CONCLUSIONI FINALI ....................................................................................... 87 1 Indice 6.2 SVILUPPI FUTURI ............................................................................................. 89 BIBLIOGRAFIA .................................................................................................... 91 2 Didascalia Figure Didascalia Figure Figura 2.1 World of Warcraft e Age of Mitology .......................................................... 15 Figura 2.2 Travian e Ogame ........................................................................................... 16 Figura 2.3 Logo di The Sims 2 ....................................................................................... 17 Figura 2.4 Personaggio in The Sims 2 ........................................................................... 17 Figura 2.5 Casa in The Sims 2 ....................................................................................... 18 Figura 2.6 Logo di Metaplace ........................................................................................ 19 Figura 2.7 Chat di Metaplace ......................................................................................... 20 Figura 2.8 Logo di Second Life ..................................................................................... 21 Figura 2.9 Foto Cappella Sistina in Second Life ........................................................... 22 Figura 2.10 Foto Avatar in Second Life ......................................................................... 23 Figura 2.11 Conferenza in Second Life ......................................................................... 24 Figura 2.12 Foto Prims ................................................................................................... 25 Figura 2.13 Foto Sandbox .............................................................................................. 26 Figura 2.14 Edificio del Colosseo in Second Life ......................................................... 26 Figura 2.15 Logo Linden Dollar .................................................................................... 27 Figura 3.1 Lavorazione di poligoni con 3DS Max ......................................................... 31 Figura 3.2 Foto Corso di Laurea con 3Ds Max .............................................................. 32 Figura 3.3 Foto aula ristoro con 3Ds Max ..................................................................... 33 Figura 3.4 Foto porta che si apre con Second Life......................................................... 33 Figura 3.5 Foto del menù primitive................................................................................ 34 Figura 3.6 Foto prims selezionate e oggetto unito ......................................................... 34 Figura 3.7 Foto Megaprim ............................................................................................. 35 Figura 3.8 Foto sculpt in realizzazione .......................................................................... 36 Figura 3.9 Foto megaprim sculpt ................................................................................... 37 Figura 3.10 Foto take copy e take .................................................................................. 38 Figura 3.11 Texture ghiaia e pavimento in ciottolato .................................................... 39 Figura 3.12 Texture muro giallo e muro rosso ............................................................... 40 Figura 3.13 Texture e cortile interno .............................................................................. 40 Figura 3.14 Texture pavimento scacchi e pavimento rosso ........................................... 40 Figura 3.15 Texture finestra e porta esterna aula ristoro................................................ 41 Figura 3.16 Texture Pietro Marinelli e tombino ............................................................ 41 Figura 3.17 Foto piano terra e primo piano .................................................................... 42 Figura 3.18 Foto auto-ritaglio automatico dei bordi ...................................................... 43 Figura 3.19 Foto inserimento guide ............................................................................... 43 3 Diidascakia Figure Figura 3.20 Foto ghigliottina ......................................................................................... 44 Figura 3.21 Blocco “A1” e “A2” piano terra ................................................................. 44 Figura 4.1 Sandbox Denmark International ................................................................... 46 Figura 4.2 Muri che combaciano con porte e finestre ................................................... 47 Figura 4.3 Riproduzione muri adiacenti a porte e finestre............................................. 48 Figura 4.4 Riproduzione muri adiacenti a porte e finestre modificate .......................... 48 Figura 4.5 Differenza spigoli dei muri ........................................................................... 49 Figura 4.6 Foto esempio sull’incastro di finestre........................................................... 49 Figura 4.7 Riduzione primitive orizzontale e verticale attorno a finestre...................... 50 Figura 4.8 Foto di un castello esempio di primfficiency ............................................... 50 Figura 4.9 Foto cornice esterna finestra con 1 prim ...................................................... 51 Figura 4.10 Foto finestra del laboratorio al primo piano dell’università ....................... 51 Figura 4.11 Foto dei 3 archi della porta dell’aula ristoro .............................................. 52 Figura 4.12 Foto arco e parte sopra che congiungono le colonne ................................. 53 Figura 4.13 Foto elementi esterni .................................................................................. 53 Figura 4.14 Foto apertura di una porta........................................................................... 55 Figura 4.15 esempio di collaborazione tra due utenti .................................................... 56 Figura 4.16 Foto di due prims unite con texture planimetria......................................... 57 Figura 4.17 Realizzazione iniziale dei muri .................................................................. 58 Figura 4.18 modifica delle murature con meno prims ................................................... 59 Figura 4.19 Pianta completa del piano terra .................................................................. 59 Figura 4.20 Foto della riproduzione colonne ................................................................. 60 Figura 4.21 Foto sviluppo verticale del piano terra ....................................................... 60 Figura 4.22 Inserimento porte e archi ............................................................................ 61 Figura 4.23 Inserimento piano intermedio e primo con murature ................................. 62 Figura 4.24 Cortile interno con texture adeguate........................................................... 62 Figura 4.25 Cortile interno con texture adeguate 2........................................................ 63 Figura 4.26 Cortile esterno ............................................................................................ 63 Figura 4.27 Costruzione del tetto ................................................................................... 64 Figura 4.28 Tetto del corso di laurea ............................................................................. 64 Figura 4.29 Facciata dell’Università con parete esterna inclinata ................................. 65 Figura 4.30 Volte interne ai loggiati .............................................................................. 66 Figura 4.31 Volte della Basilica di Assisi su Second Life (coord. 246,109,68) ............ 67 Figura 4.32 Ringhiere e porta di ingresso ...................................................................... 67 Figura 4.33 Foto del Corso di Laurea costruito in aria .................................................. 69 Figura 4.34 Bannaggio all’interno di una sandbox ........................................................ 69 Figura 4.35 Edificio del Corso di Laurea dopo lost and found ...................................... 70 Figura 5.1 Facciata ingresso Corso di Laurea ................................................................ 72 Figura 5.2 Facciata ingresso Corso di Laurea in Second Life ....................................... 73 Figura 5.3 Facciata ingresso posteriore Corso di Laurea ............................................... 73 Figura 5.4 Facciata ingresso posteriore Corso di Laurea in Second Life ...................... 74 Figura 5.5 Facciata laterale esterna Corso di Laurea ..................................................... 74 Figura 5.6 Facciata laterale esterna Corso di Laurea in Second Life ............................ 75 Figura 5.7 Facciata laterale esterna zona cortile esterno del Corso di Laurea ............... 76 Figura 5.8 Facciata laterale esterna zona cortile esterno del Corso di Laurea in Second Life ................................................................................................................................. 76 Figura 5.9 Cortile interno Corso di Laurea Facciata 1................................................... 77 Figura 5.10 Cortile interno Corso di Laurea Facciata 1 in Second Life ........................ 77 Figura 5.11 Cortile interno Corso di Laurea Facciata 1 in 3D Studio Max ................... 78 Figura 5.12 Finestra chiusa facciata cortile confronto ................................................... 79 4 Didascalia Figure Figura 5.13 Cortile interno Corso di Laurea Facciata 2 ................................................. 79 Figura 5.14 Cortile interno Corso di Laurea Facciata 2 in Second Life ........................ 80 Figura 5.15 Cortile interno Corso di Laurea Facciata 2 in 3D Studio Max ................... 80 Figura 5.16 Loggiato del Corso di Laurea facciata 2 ..................................................... 81 Figura 5.17 Loggiato del Corso di Laurea facciata 2 in Second Life ............................ 81 Figura 5.18 Loggiato del Corso di Laurea facciata 2 in 3D Studio Max ....................... 82 Figura 5.19 Cortile interno facciata 3 Corso di Laurea .................................................. 82 Figura 5.20 Cortile interno facciata 3 Corso di Laurea in Second Life ......................... 83 Figura 5.21 Cortile interno facciata 3 Corso di Laurea in 3D Studio Max .................... 83 Figura 5.22 Cortile interno facciata 4 Corso di Laurea .................................................. 84 Figura 5.23 Cortile interno facciata 4 Corso di Laurea in Second Life ......................... 84 Figura 5.24 Cortile interno facciata 4 Corso di Laurea in 3D Studio Max .................... 85 5 Capitolo 1: Introduzione 1 Introduzione 1.1 Scenario Una delle forme ibride derivanti dai fenomeni di natura tecno-sociale che caratterizza il Web è rappresentata dai mondi virtuali multiutenti. Questi nuovi ambienti elettronici virtuali sono accessibili tramite internet e mostrano un approccio diverso dalle classiche chat 3D ed ai videogame. Sono Social Environment ovvero un ambiente digitale ove l’utente ha la possibilità di interagire, attraverso apposite interfacce, in tempo reale dentro uno spazio tridimensionale, vivendo l’illusione di un movimento e di un’immersione spaziale effettiva. Second Life è il simulatore social environment per eccellenza: in quanto si può considerare uno spazio persistente, aperto, altamente personalizzabile e configurabile. In questo “metamondo” ogni utente può collegarsi senza limiti di orario e, grazie ad un’interfaccia tridimensionale, identificarsi con un avatar che lui stesso plasma dando l’immagine di sé che preferisce. A differenza dagli altri mondi virtuali, Second Life è orientato alla creazione di contenuti, tenendo fede al suo motto “Our world, your imagination”. Ogni utente utilizza gli stessi strumenti degli amministratori di sistema e ha la possibilità di creare delle ambientazioni, attraverso l’uso di primitive, diventando quindi vero e proprio demiurgo dell’ambiente circostante. Tutti i contenuti sono realizzati grazie ad uno strumento di modellazione tridimensionale intuitivo, che permette la costruzione sia di oggetti elementari che complessi. Ciascun elemento può essere animato attraverso l’utilizzo di un linguaggio di scripting nativo, chiamato “Linden Script Language”, che permette perfino di fornire gli oggetti di un comportamento autonomo. 7 Capitolo 1: Introduzione Ogni oggetto ha come peculiarità la memoria della firma digitale del proprio creatore, può essere scambiato e venduto tra gli utenti utilizzando come valuta commerciale la moneta interna chiamata “Linden Dollar” (convertibile in dollari US). All’interno del metamondo si sono sviluppate molteplici attività, tra cui aziende, enti pubblici e università. L’utilizzo che viene fatto da enti universitari è di tipo formativo ed educativo; tra le prime ad entrare sono state l’università di Harvard e quella di Oxford. In ambito politico, il primo ministro italiano che ha sfruttato le potenzialità divulgative del mezzo, indicendo una conferenza su di un’isola da lui acquistata, è stato l’Onorevole Antonio Di Pietro. Numerose aziende hanno esportato la propria immagine in modo innovativo, aprendo la propria impresa a nuove possibilità relative alla vendita e alla pubblicità. Il primo caso d’impresa Real Estate che abbia intrapreso un’attività di virtual business è stata l’italiana Gabetti Property Solution. La regione italiana Toscana è stata la prima ad apparire ufficialmente in questo mondo. Nell’ambito sociale, si ricorda l’organizzazione di alcuni scioperi degli avatar dei dipendenti di IBM, indetto dalle associazioni sindacali CGIL, CISL e UIL. Utilizzando “Ultrapro Plug” è stato possibile a fine 2007 compiere un’operazione chirurgica di ernia inguinale. 1.2 Contributo della tesi L’obiettivo di questa tesi è realizzare un edificio virtuale all’interno di SL. Questa struttura deve permettere ai futuri studenti universitari di interagire e cooperare, attraverso i propri avatar, in un ambiente virtuale. In questo scenario è interessante permettere agli utenti di condividere esperienze interattive mentre si muovono con i propri avatar all’interno del mondo virtuale pianificando il proprio futuro. Diventa perciò interessante riprodurre l’edificio dell’università, in primis perché la struttura rappresenta uno strumento fortemente interattivo, inoltre lo spirito dell’”eduteinment” permette ai fruitori di acquisire nozioni ricordando le esperienze maturate. In secondo per l’orientamento, infatti diamo modo non solo di poterlo visionare da casa tramite foto o filmati, ma soprattutto offriamo la possibilità innovativa di esplorarlo completamente nella sua interezza introducendoci direttamente in una sua riproduzione virtuale. 8 Capitolo 1: Introduzione Quest’ambiente deve essere altamente interattivo e deve trasmettere all’utente la percezione di trovarsi in un labirinto di stanze tematiche, rappresentate da aule, laboratori, uffici e segreterie dell’edificio dell’università. Ogni utente dovrà possedere un profilo adibito ad immagazzinare delle esperienze maturate raffigurandosi all’interno del Corso di Laurea. Lo studente avrà la possibilità, secondo la carriera presente nel profilo, di seguire lezioni o fare esperimenti in base alla preparazione posseduta. In questo modo sarà spronato a raggiungere obiettivi ed a perseverare fino al conseguimento degli stessi. Il progetto diventerà un vero e proprio laboratorio virtuale del Corso di Laurea di Scienze e Tecnologie Informatiche e darà la possibilità all’esecutore di costruire una vita virtuale alternativa all’interno di un mondo virtuale, comunicare con colleghi e cooperare in progetti rimanendo comodamente seduto a casa. La struttura universitaria è stata realizzata passo passo rispettando tutti i limiti imposti dall’applicazione. La riproduzione è partita dall’importazione delle planimetrie immesse in scala, grazie alle quali è stata possibile una ricostruzione di murature, finestre, porte e di altre componenti affidabili e fedeli alla realtà. Grazie all’interattività e l’immersività del progetto viene data la possibilità a chiunque sia interessato di visitarlo da casa esplorando ogni ambiente dell’edificio. 1.3 Descrizione dei contenuti La struttura di questo lavoro è articolata in sei capitoli. Nel secondo capitolo si tratta dello stato d'arte nei mondi virtuali partendo dal concetto di “ciberspazio”si giunge ad illustrare gli ambienti virtuali che permettono la realizzazione di strutture virtuali complesse. Il terzo capitolo contiene la fase di progettazione del sistema realizzato per riproduzione virtuale dell'edificio del Corso di Laurea. Nel quarto capitolo viene illustrata l'implementazione del sistema progettato seguendo passo passo la costruzione virtuale dell'edificio dell'università. Il quinto è dedicato al raffronto tra la realtà ed, ove possibile, si è confrontato tale progetto con la realizzazione in 3D Studio Max di una precedente tesi. Il sesto capitolo presenta alcune considerazioni sul lavoro svolto e mostra possibili sviluppi futuri per questo lavoro di tesi. 9 Capitolo 1: Introduzione 10 Capitolo 2: Stato dell’arte nei mondi virtuali 2 Stato dell’arte nei mondi virtuali Il ciberspazio è un metamondo caratterizzato dall'uso dell'elettronica e dello spettro elettromagnetico atto a immagazzinare, modificare e scambiare informazioni attraverso le reti informatiche e le relative infrastrutture fisiche [C2.1]. È visto come la dimensione immateriale che mette in comunicazione i computer di tutto il mondo in un unico network permettendo agli utenti di interagire tra loro senza nessun riguardo per la loro posizione geografica. Storicamente il termine fu coniato da William Gibson, padre della fantascienza cyberpunk, nel suo romanzo “Neuromancer” (1984). In tale romanzo, ambientato in un cupo futuro, tutte le informazioni risiedono all’interno della rete mondiale. In quest’ambientazione, i neuromanti [C2.2] quotidianamente entrano in questo spazio virtuale per interegire con programmi ed altri utenti cercando di reperire informazioni utili ai loro scopi. Sull’idea di ciberspazio è stata improntata la trama di diversi film. In “The Matrix”, l’idea della “matrice” nella quale ogni essere umano è collegato fin dalla nascita, a propria insaputa, rappresenta la realtà virtuale [C2.3]. Ogni umano trascorre una propria vita artificiale all’interno di questo mondo attraverso la propria rappresentazione sintetica definita “avatar” [C2.4]. Come, per la religione Induista, l’avatar rappresenta l'assunzione di un corpo fisico da parte di un dio o di uno dei suoi aspetti sulla terra, così nel ciberspazio, rappresenta l’incarnazione dell’utente sotto forma di byte. Nel film “Tron” il programmatore è trasferito all’interno del programma dove i software hanno una propria personalità e le caratteristiche dei loro creatori. 11 Capitolo 2: Stato dell’arte nei mondi virtuali Oggi si pensa alla rete internet come una possibile implementazione del ciberspazio. Di fatto sono due cose ben differenziabili, metaforicamente si può dire che un sito web esiste all’interno del ciberspazio. In accordo con questa interpretazione, gli eventi che hanno luogo in internet non sono per questo in atto nei paesi dove si trovano fisicamente i partecipanti o i server, ma nel ciberspazio. Lo “spazio” nel ciberspazio può essere più comunemente paragonato alla definizione matematica di “spazio matematico” e di “spazio fisico”, quindi si riferisce non al contenuto presentato dal navigatore in internet, ma piuttosto alla possibilità di navigare tra diversi siti, tramite i feedback loops tra l’utente e il resto del sistema. In questo modo si crea il potenziale di incontrare continuamente qualcosa d’inatteso, sconosciuto, ma soprattutto imprevisto e quindi non risulta essere un sistema statico. Ma allora possiamo chiederci se il connubio tra il web e internet è realmente l’implementazione del ciberspazio? Per rispondere a questa domanda prendiamo in considerazione i videogiochi, i quali differiscono dalla comunicazione basata sul testo improntata da un browser perché danno la possibilità all’utente di interagire con il mondo che lo circonda. Con questa tecnologia vengono riprodotte immagini sullo schermo intese come figure che occupano realmente uno spazio. L’animazione mostra i movimenti delle figure, quindi non avremo più una successione di pagine Web, ma uno scambio d’informazioni rappresentabile figuratamente, di più facile lettura e di maggior effetto e completezza di un documento di testo online. In un gioco online l’utente può rappresentare il suo personaggio come preferisce, e visualizzarlo figurativamente sullo schermo. Queste comunità virtuali non si devono fermare al livello di caratterizzazione dell’avatar, ma devono far interagire il giocatore in una Realtà Virtuale [C2.5], simulata, creata e gestita dinamicamente da un computer. Il termine realtà virtuale fu introdotto da Jaron Lanier, uno dei pionieri in questo campo, che parlò per la prima volta di “virtual reality” al SIGGRAPH (Special Interest Group on GRAPHinc and Interactive Techniques) del 1989. Riguardo la realtà virtuale, Lanier dichiarò: “È molto difficile da descrivere se non si è provata. Ma c’è un’esperienza che consiste nel sognare che non c’è nulla di impossibile, che qualsiasi cosa può accadere, che si è in un mondo assolutamente aperto, in cui l’unica 12 Capitolo 2: Stato dell’arte nei mondi virtuali limitazione è la propria mente. Ma il problema è che si è lì da soli, tutti soli con se stessi. E quando ci si risveglia si deve rinunciare a tutta quella libertà. Tutti noi abbiamo sofferto da bambini un terribile trauma che poi abbiamo dimenticato, quando abbiamo dovuto accettare il fatto che siamo degli esseri materiali, e che tuttavia, nel mondo materiale in cui dobbiamo fare delle cose, siamo molto limitati. Quel che mi sembra così emozionante della realtà virtuale è che essa ci restituisce quella libertà. Ci dà la sensazione di poter essere quello che siamo senza alcun limite, e che la nostra immaginazione sia diventata oggettiva e che possiamo farvi partecipare altre persone” [C2.6]. L’obiettivo preposto è quello di creare un ambiente digitale ove l’utente ha la possibilità di interagire, attraverso delle apposite interfacce, in tempo reale dentro uno spazio tridimensionale, ricavando l’illusione di un movimento e di una immersione spaziale effettiva. Nelle esperienze della realtà virtuale è evidente come la percezione accompagna l’azione. Questo perché sono creati per il nostro modo costitutivo e globale di percepire, fondato sul corpo e sull’azione piuttosto che su singoli sensi. Per questo consideriamo questi sistemi immersivi una “tecnologia cognitiva” basata “sull’interattività e sull’impiego di capacità sensomotorie e cinestetiche”, strettamente legata alle “possibilità cognitive del corpo”[C2.7]. Questo mondo tridimensionale può essere il modello geometrico di un edificio, di una città, di un territorio o di un oggetto. Spostarsi in tempo reale significa lasciare la possibilità all’utente di decidere, attraverso le proprie azioni, quello che porterà a termine, da che parte guardare, dove andare e come comportarsi. Questa illusione è data dalla capacità del programma di adattare il più rapidamente possibile i punti di vista e le geometrie all’interno dell’ambiente simulato in base ai movimenti ed alle azioni che l’utente compie, creando un’esperienza sensoriale la più possibile identica a quella di un ambiente reale. L’ambiente è rappresentato graficamente ed aggiornato numerose volte al secondo, tutto questo in base al movimento imposto dall’utente attraverso mouse, tastiera, joystick e molti altri strumenti maggiormente sofisticati. Attraverso l’utilizzo di videogiochi l’utente non dovrebbe percepire l’ambiente simulato come una rappresentazione della realtà ben ricostruita, ma dovrebbe aver l’impressione di trovarsi effettivamente in uno spazio reale. La reazione dell’ambiente simulato agli spostamenti visivi deve essere immediata e fluida, quindi gli oggetti 13 Capitolo 2: Stato dell’arte nei mondi virtuali collocati nell’ambiente dovranno rispondere perfettamente alle ombre e alle illuminazioni nelle quali sono contestualizzati. Tutti questi requisiti non sono facili da ottenere, dato che non devono essere presenti solo buone doti ingegneristiche, ma anche un’accurata conoscenza dell’apparato sensoriale umano. Per avere un’immersione virtuale ottimale, l’utente non deve avere solo la sensazione visiva ottimale di quello che sta succedendo, ma anche un accompagnamento uditivo collegabile intuitivamente a quello che sta vedendo. I suoni riprodotti, devono essere adatti, ma soprattutto sincronizzati a quello che è visualizzato a schermo. In sostanza, gli ambienti virtuali non sono necessariamente un’esperienza che riguarda solo una persona isolata dal mondo, ma possono consistere in un’esperienza condivisa da più utenti che interagiscono e comunicano tra loro, all’interno di Mondi Virtuali. Un mondo virtuale è un ambiente non reale creato da una successione di bit, che si presenta sotto forma grafica, generalmente tridimensionale e permette sia la riproduzione di un mondo reale, che la realizzazione di un mondo immaginario. Il concetto d’immersione virtuale è ripreso per dare una definizione di mondi virtuali, da parte di William R. Sherman e Alan Craig nel loro libro “Understanding Virtual Reality” dove affermano che “l'immersione è la sensazione di essere in un ambiente; l'immersione può essere di tipo mentale (uno stato di profondo coinvolgimento, con sospensione dell'incredulità) e/o fisica (la sensazione di essere entrati con il corpo nell'ambiente, grazie agli stimoli sintetici che i nostri sensi ricevono dalla macchina)” [C2.8]. 2.1 Suddivisione dei Mondi Virtuali I mondi virtuali possono dividersi in tre categorie: educazione, intrattenimento e simulazione. La parola “Edutainment” (education, enterteinment) riassume questi due termini. Questo tipo di educazione è molto utile per raffinare certe sensibilità particolarmente adatte alla società contemporanea, soprattutto grazie al meccanismo della metamorfosi della propria identità che avviene in tutti i giochi e può favorire il decentramento identitario auspicato da molte strategie educative, come ad esempio quello dell'educazione interculturale. 14 Capitolo 2: Stato dell’arte nei mondi virtuali La via ludica all'apprendimento non deve essere finalizzata solo alla conoscenza di nozioni o di discipline, ma deve rappresentare un modo vero e proprio di concepire e comprendere il mondo. Il gioco, infatti, ricopre proprio questa funzione: grazie a questo l’utente scopre la realtà che lo circonda e sperimenta nuove abilità come il volo o il teletrasporto, che nella vita reale vanno contro le leggi della fisica, ma in questi mondi sono possibili e permettono di allargare le prospettive del mondo stesso. Altro motivo è facilitare l’immersione in una società che sempre di più ha bisogno di aperture prospettiche e approcci ludici. I giochi di simulazione sono sistemi di apprendimento sperimentale impiegati nella formazione aziendale. Servono a sviluppare capacità operative e a migliorare i comportamenti di relazione: acquisizione di tecniche, conoscenza di principi di riferimento, coinvolgimento nelle logiche di azione, affinamento di competenze diagnostiche, di comunicazione, di soluzione di problemi, di relazioni interne ed esterne, di elaborazione di tattiche, ecc. Possono essere supportati con le nuove tecnologie dell'informazione e della comunicazione e svolti online e offline. In ognuno è possibile, oltre all’interazione visiva, anche chattare e parlare direttamente in streaming audio con programmi come “teamspeak”. Quest’aspetto è molto interessante dato che permette di conoscere nuova gente e socializzare. Una delle categorie più diffuse è quella dei MMORTS (Massively Multiplayer Online Real-time Strategy), dove all’interno si trovano titoli di videogames come “World of Warcraft” [C2.9] e “Age of Mitology” [C2.10]. Figura 2.1 World of Warcraft e Age of Mitology Il successo di questa categoria di giochi online è elevatissimo, infatti non esiste una fascia di età ben definita per descrivere l’utente medio, perché cattura intere generazioni di player e a questo va il merito della loro larga diffusione. Lo scopo 15 Capitolo 2: Stato dell’arte nei mondi virtuali principale è di raggiungere il massimo livello prima degli altri (“PowerPlay”), per avere il predominio assoluto. Un’altra categoria molto diffusa, con finalità pressoché identiche ai MMORTS, è quella dei BBMMORPG (Browser Based Massive Multiplayer Online Role-playing Games). Tra i massimi esponenti ci sono Travian [C2.11] e Ogame [C2.12]. Sono enormi database online raffiguranti simulazioni di battaglie, gestiti in tempo reale, nei quali l’utente ha come scopo quello della ricerca, dello sviluppo, ma soprattutto quello della massima espansione territoriale e del proprio esercito. La differenza principale rispetto ai MMORTS è che qui non si ha un vero e proprio avatar, rappresentato da un personaggio tridimensionale che si muove nello schermo e che compie vere e proprie azioni, ma una serie di contatori, sincronizzati, che descrivono le operazioni effettuate. Figura 2.2 Travian e Ogame Entrambe le categorie sono interessanti, ma non sono utili al nostro fine. Quindi cercheremo di improntare il nostro lavoro su mondi virtuali del genere “Social Environment”. In questi, lo scopo principale è quello di esplorare e conoscere nuove cose all’interno del mondo arricchendo il proprio bagaglio in base alle esperienze effettuate. Altra possibilità è di integrare l’ambiente circostante costruendo ogni cosa vogliamo. È proprio su questo punto ci siamo soffermati nella ricerca del software adatto alle nostre attese: il nostro obiettivo, infatti, era di riprodurre il Corso di Laurea di Scienze e Tecnologie Informatiche in un mondo virtuale. I software più diffusi che ci permettono di costruire edifici nei mondi virtuali sono tre: • The Sims 2 • Metaplace • Second Life 16 Capitolo 2: Stato dell’arte nei mondi virtuali 2.1.1 The Sims 2 The Sims 2 [C2.13] è un videogioco di simulazione di vita reale sviluppato dalla Maxis [C2.14] e distribuito dalla EA Games [C2.15]. Si presenta come il seguito di The Sims, precursore della categoria. Figura 2.3 Logo di The Sims 2 The Sims 2 è stato rilasciato per PC il 17 settembre 2004. Del gioco sono inoltre state sviluppate numerose versioni per console, sebbene assai diverse dalla versione per PC. I Sims sono gli abitanti di SimCity: rappresentano gli avatar e sono i veri protagonisti di questo gioco. L'attenzione è spostata dal controllo della città a quello delle singole famiglie di abitanti. Al primo avvio del gioco sono già presenti diverse famiglie di Sims, divise nei tre quartieri di Bellavista, Stranizia e Verona Creek. Tuttavia è possibile creare infiniti Sim con l'uso dell'editor, il Create-A-Sim (CAS), dotato di numerose funzionalità aggiuntive rispetto a quello già presente in The Sims, fra il quale la possibilità di modificare i tratti somatici dei Sim e una maggiore libertà nella scelta degli abiti. Figura 2.4 Personaggio in The Sims 2 A differenza della precedente versione, in The Sims 2 gli abitanti invecchiano passando attraverso i vari stadi della vita (con le proprie specifiche caratteristiche). 17 Capitolo 2: Stato dell’arte nei mondi virtuali Un'altra novità rispetto a The Sims sono le aspirazioni: esse determinano i desideri e le paure del Sim, cioè quello che il Sim vorrebbe fare e quello che invece teme. I desideri aggiungono punti aspirazione, le paure li tolgono. Questi desideri non sono facili da realizzare: comprendono guadagnare ingenti quantità di “Simoleon”, moneta di The Sims 2, arrivare al culmine di una carriera, sviluppare al massimo tutte le abilità, avere molte attività al livello massimo, ecc. I Sim possono anche morire. I personaggi morti possono tornare a fare visita ai vivi come fantasmi e avranno un diverso aspetto secondo la causa della morte e anche diversi atteggiamenti. Esercitandosi con specifici oggetti un Sim può migliorare le sue abilità; l'apprendimento di queste è indicato su una scala numerica che indica la capacità del Sim ad eseguire certe azioni. Per progredire nella carriera inoltre, sono richiesti un certo numero di punti abilità. I territori sono divisi in quartieri e gli avatar suddivisi in famiglie. I Sim abitano in case che possono essere modificate o interamente create dal giocatore attraverso l’editor di costruzione. Si possono collocare fondamenta, muri, porte finestre, pavimentazioni e scale a piacimento. L'esterno può essere arricchito da recinzioni, cancelli, alberi, cespugli, fiori, laghi, fontane e piscine, e, possedendo l'espansione “Nightlife”, anche da vialetti per parcheggiare la macchina, mentre con l'espansione “Seasons” i Sim possono anche crearsi un orto ed avere alberi da frutta. La casa può avere più piani ed essere formata anche da varie strutture disgiunte. Figura 2.5 Casa in The Sims 2 Tuttavia riprodurre case esistenti realmente nel mondo di the Sims 2 può essere molto impegnativo, a causa di varie restrizioni, come l'impossibilità di utilizzare lo spazio inferiore alle scale. Alcune “cheats”, trucchi possibili nel software, permettono una maggiore libertà nella costruzione, ma potrebbero creare alcuni errori nel gioco. 18 Capitolo 2: Stato dell’arte nei mondi virtuali Nella modalità “Compra” c’è permesso di arredare a piacimento l'interno e l'esterno del lotto, con un gran numero di oggetti, dagli elettrodomestici ai tavoli, dalle decorazioni ai computer, dalle lampade ai sanitari. Durante l’operazione di acquisto, il gioco è in pausa. Per ottenere una buona casa, oltre al fine estetico, bisogna tener conto dei soldi a disposizione e degli attributi di ciascun oggetto. Esistono numerosi oggetti con la stessa funzione, ma con un diverso aspetto, prezzo, statistiche: ad esempio, un forno costa di più ed è più ingombrante di un fornetto a micro-onde, ma produrrà cibi più nutrienti. I vari oggetti possono essere raggruppati secondo le caratteristiche che l’utente preferisce oppure secondo la stanza in cui sono più adatti. È inoltre data la possibilità al giocatore di creare raccolte personalizzate di oggetti, in modo da ritrovare facilmente forniture simili o che comunque si abbinano bene fra loro. Sono stati realizzati siti internet non ufficiali, alcuni dei quali a pagamento, che contengono oggetti aggiuntivi [C2.16]. Questo mondo virtuale è ben strutturato ma con limitazioni nella costruzione, quindi non funzionale al nostro utilizzo. 2.1.2 Metaplace Figura 2.6 Logo di Metaplace Metaplace è un software open in via di realizzazione pubblicato dall’Areae Inc. [C2.17], una start-up creata da sviluppatori di giochi online di massa di vecchia data tra i quali il programmatore Raph Koster [C2.18] (alcuni provengono dal team di Ultima Online [C2.19]). L'obiettivo di Metaplace è sia di fornire una piattaforma di sviluppo per ambienti virtuali, completamente modulare, di utilizzo semplice e immediato, che di realizzare una chat grafica, Metaplace questo dovrebbe consentirlo attraverso un sistema intuitivo. 19 Capitolo 2: Stato dell’arte nei mondi virtuali Figura 2.7 Chat di Metaplace Il produttore Areae non intende offrire agli utenti un metamondo preconfezionato, ma un'infrastruttura aperta sulla quale edificare e un motore capace di tradurre ogni elemento creato dagli utenti in un file comprensibile da un browser. Ad esempio, dovrebbe essere possibile inviare informazioni dal mondo virtuale verso l'esterno attraverso RSS feed o XML, permettendo così molte operazioni interessanti, quali introdurre notizie (pubblicità...) o consentire lo scambio di messaggi da e verso pagine HTML, e così via. Metaworld, ora in versione alfa, sarà una piattaforma di sviluppo: l'idea vincente è che offrirà ai suoi utenti le basi per costruire spazi web come fossero micromondi. “Ogni mondo si può pensare come una fosse un server, ogni oggetto si può pensare come un link” ha spiegato Koster. In ogni micromondo i contenuti saranno scelti dal “demiurgo” (ideatore) e sarà pronto a ospitare utenti che vorranno interagire fra loro e con i contenuti presenti. Esistono già fenomeni del genere che sfruttano videogames online come Ultima Online e Neverwinter Nights, ma questi sono legati al mondo originario sviluppato dalle rispettive software houses. Sono, infatti, mondi chiusi dove la possibilità di introdurre grafica, elementi di logica (come il comportamento dei personaggi che si muovono autonomamente nel mondo virtuale) o regole di comportamento fisico dell'ambiente sono veramente limitate. Koster insiste sul fatto che Metaplace ambiziosamente mira alla massima libertà espressiva: “Si può prendere un’intera directory di contenuti grafici e utilizzarla come base per blocchi di modulo” scrive sul website, “o inserire un sistema di movimento con un copia e incolla”. I modelli di business sono numerosi: lo spazio messo a disposizione degli aspiranti demiurghi sarà gratuito e ospiterà pubblicità, anch’essa in formato 20 Capitolo 2: Stato dell’arte nei mondi virtuali minimondo, con il quale si potrà interagire. Agli utenti che invece vorranno sviluppare metamondi commerciali sarà chiesto un contributo. L’azienda che sta alle spalle di Metaworld venderà denaro virtuale da spendere nei mondi degli utenti. Il metamondo ha ambizioni di consegnare gli strumenti nelle mani dei “netizen” (avatar) e lasciare che siano loro stessi a costruire l'universo e il futuro del web. Le possibilità annunciate Metaplace sembrano buone e porterebbero a un rivoluzionamento dei mondi virtuali, ma ora, non essendo ancora in un software utilizzabile in versione stabile e diffuso, non lo possiamo prendere in considerazione per la realizzazione del nostro progetto [C2.20] [C2.21]. 2.1.3 Second Life Second Life [C2.22]è un mondo virtuale tridimensionale multi-utente online di proprietà dalla società americana Linden Lab [C2.23], concepito dalla mente di Philip Rosedale [C2.24]. Figura 2.8 Logo di Second Life Il progetto che sarebbe divenuto Second Life (inizialmente, Linden World) iniziò nel 1991, mentre le prime prove furono effettuate nel novembre del 2002. Sei mesi più tardi SL aprì le sue porte al pubblico in versione beta. Inizialmente era prevista una quota d’iscrizione utile per la creazione e memorizzazione gli oggetti creati dai residenti di questo mondo virtuale. Inoltre a tale quota andavano sommati i 21 Capitolo 2: Stato dell’arte nei mondi virtuali costi d’uso dei terreni, del teletrasporto e una tassa sulle “prim” (primitive), blocchi di materia con cui si costruiscono gli oggetti virtuali. Tutti i costi iniziali sostenuti da chi voleva partecipare al mondo di Second Life erano necessari perché ogni singolo oggetto costruito risultava appesantire il server che gestiva il mondo virtuale. Dal 2003, data del lancio ufficiale, questi costi sono stati soppressi ed è stato introdotto un unico vincolo al momento dell’iscrizione: l’essere maggiorenni. Il solo costo imposto dalla Linden, è quello per l’acquisizione di una porzione di terreno, a discrezione dell’utente, utile per poter posizionare gli oggetti creati in modo stabile. Al tempo del lancio SL consisteva in soli 16 server e contava a malapena 1.000 utenti, mentre tre anni dopo girava su tremila server e aveva cinque milioni di utenti registrati. In questo modo, in continua evoluzione, è stato permesso ad ogni singolo partecipante di creare il mondo che lo circonda. Questa innovazione introdotta dagli sviluppatori della Linden ha due vantaggi: il primo è che gli utenti possono dare sfogo alla loro immaginazione creando nuovi oggetti sotto forma di palazzi, navi, aerei, ecc, mentre il secondo è che la società non ha dovuto pensare a realizzare l’intera ambientazione. Figura 2.9 Foto Cappella Sistina in Second Life Come negli altri mondi virtuali l’avatar rappresenta il meccanismo della metamorfosi della propria identità, da modificare a piacimento. Questo non fa altro che rendere gli incontri veri e propri scambi tra esseri umani. 22 Capitolo 2: Stato dell’arte nei mondi virtuali Figura 2.10 Foto Avatar in Second Life Su Second Life sono registrati molti programmatori e disegnatori 3D. Alcuni di questi hanno guadagnato somme di denaro (vero) vendendo “script” (linguaggio di programmazione in Second Life) o oggetti creati appositamente per essere utilizzati all’interno di tale mondo virtuale. Nel corso degli anni, all’interno di SL, si è assistito alla nascita di vere comunità e sottoculture che sono state oggetto di studi e ricerche presso numerose università (Harvard, Oxford, ecc…). Anche all’interno del nostro Corso di Laurea si è pensato di partecipare, ed il laboratorio di “Vita Artificiale” ha promosso la creazione del gruppo “Infonauti” nel quale lavorano studenti, tirocinanti, tesisti e docenti. Un’opportunità fornita da questo mondo è di incontrare altri utenti attraverso i propri avatar, effettuando discussioni a tema o in ambito “sociale”. Questo può avviare ad una conoscenza virtuale o addirittura futura nella vita reale. Molte aziende utilizzano la piattaforma Second Life per presentare vere e proprie “conferenze” oppure gli utenti si ritrovano per dei “Brain Storming” (tecnica di creatività di gruppo per far emergere idee volte alla risoluzione di un problema), per confrontare cioè le proprie idee. Abitualmente per far ciò i partecipanti si ritrovano in “land” (terre) predefinite e parlano tra di loro attraverso i propri avatar. Molte land sono però acquistate dalle grosse aziende per pubblicizzare i propri prodotti. 23 Capitolo 2: Stato dell’arte nei mondi virtuali Figura 2.11 Conferenza in Second Life 2.1.3.1 Funzionamento e suddivisione All’interno del mondo di SL è possibile realizzare qualsiasi cosa desiderata: si può volare, teletrasportarsi e cambiare aspetto quando si preferisce. Questo mondo virtuale è rappresentato come una replica di quello reale, costituito da regioni (65.536 metri quadrati) interconnesse fra loro e formate da terra, acqua e cielo (SL consente di costruire anche in etere, questa è una delle tecniche migliori nel caso di grandi costruzioni). Grazie alla funzione di “search” (ricerca) è possibile trovare e raggiungere, tramite il teletrasporto, qualsiasi luogo all’interno del metamondo. Gli utenti di SL chiamano le regioni “sims”, abbreviazione di simulators perché originariamente un server conteneva un’intera regione. Ora ci sono due regioni per ogni server, ma il nome è rimasto quello originario. SL è suddiviso in aree formate da molteplici regioni, in ognuna sono presenti un set di regole che ogni avatar deve rispettare, altrimenti rischierebbe di esser “bannato” (cacciato). 2.1.3.2 Primitive e Sandbox Indipendentemente da quale oggetto prendiamo in considerazione quasi la totalità è stata costruita dagli utenti di SL. Effettivamente quella di “building” è una delle attività maggiormente utilizzate e anche una fonte di guadagni. La maggior parte degli oggetti che vediamo è stata costruita tramite “primitive”, solidi modellabili a 24 Capitolo 2: Stato dell’arte nei mondi virtuali piacere dall’utente. Queste possono avere forma di cubo, triangolo, sfera, ecc. e l’utilizzatore può modificarle, tramite comandi opportuni, attraverso la sostituzione dei valori delle coordinate cartesiane, sia inserendo i valori da tastiera, che modificandole con il mouse. Possiamo modificarne il colore, il materiale a nostro piacimento e anche applicare delle texture (immagini già in possesso dell’utente, oppure caricate dallo stesso al costo di 10L$ cadauna). Le prim possono anche diventare trasparenti, essere tagliate, svuotate partendo dal centro, ecc… L’unico vincolo imposto è quello della dimensione massima che possono raggiungere, cioè ogni coordinata non deve superare il massimo di 10 metri e minimo 1 centimetro. Figura 2.12 Foto Prims Per cercare di ovviare al vincolo massimo imposto dai 10 metri per coordinata, sono state inventate le Megaprims (primitive con dimensioni maggiori). Le primitive non possono essere costruite ovunque. Esistono delle particolari aree chiamate “Sandbox” dove l’avatar può realizzare quello che preferisce. Ogni Sandbox ha un proprio regolamento interno che varia, la maggior parte delle volte, sul numero di primitive utilizzabili all’interno, sul tempo di costruzione massimo (le più grandi hanno una soglia di 5 ore), ma anche su restrizione in base al gruppo di appartenenza. 25 Capitolo 2: Stato dell’arte nei mondi virtuali Figura 2.13 Foto Sandbox Tutte queste caratteristiche rendono Second Life il mondo virtuale maggiormente adatto per svolgere il nostro compito di costruzione del Corso di Laurea di Scienze e Tecnologie Informatiche. Figura 2.14 Edificio del Colosseo in Second Life 26 Capitolo 2: Stato dell’arte nei mondi virtuali 2.1.3.3 La Moneta Per quanto riguarda il denaro, SL ha la sua valuta di riferimento: il Linden Dollar. Figura 2.15 Logo Linden Dollar E’ possibile eseguire il cambio di valuta dei bonus e degli stipendi presenti in SL con dollari veri a un tasso di cambio che fluttua secondo le scorte monetarie. Abitualmente è 1 dollaro Usa vale circa 275 Linden Dollar (L$), ma si sono riscontrati picchi storici che hanno visto il tasso di cambio scendere sotto i 200 L$ e salire oltre i 300 L$. I modi in cui ottenere denaro sono infiniti, si può considerare che le fonti di reddito che si trovano su SL corrispondono similmente a quelle della vita reale. E’ possibile trovare un impiego virtuale, creare un proprio business, giocare d’azzardo e, se si è particolarmente bravi, è possibile creare e vendere oggetti o script. Un'altra fonte di reddito sicuramente innovativa è di sedersi comodamente su una sedia da campeggio e guadagnare 3 L$ ogni 15 minuti. Ovviamente esistono anche agenzie di cambio, in cui è possibile acquistare L$ pagandoli con euro o dollari USA, queste operazioni sono eseguite, nella maggioranza dei casi, con carta di credito pagando su SL. 27 Capitolo 2: Stato dell’arte nei mondi virtuali 28 Capitolo 3: Progettazione 3 Progettazione Lo scopo della tesi è di riprodurre l’edificio del Corso di Laurea in Scienze e Tecnologie Informatiche in un mondo virtuale affinché possa aiutarci nell’“orientamento”, infatti diamo la possibilità di visitarlo direttamente da casa, potendo non solo visionare foto o filmati (così come se avessimo utilizzato altri software di grafica tridimensionale), ma offrendo possibilità innovativa di poter entrare all’interno del palazzo e visitarlo completamente nella sua interezza introducendoci direttamente in una sua riproduzione virtuale. Chiunque visiti il nostro progetto potrà rendersi conto realmente delle dimensioni spaziali, esplorare ogni piccolo particolare, acquisire conoscenza della struttura senza esserci mai stato realmente. Questo è possibile solo all’interno di un mondo virtuale in quanto viene introdotto il concetto di “interattività”. Il fatto di sviluppare un edificio interattivo rende questa infrastruttura unica nel suo genere. Risulterà un modello per progetti futuri realizzabili da altri studenti e darà la possibilità di arricchire ogni stanza come se fosse un “contenitore” di progetti realizzati in futuro. Secondo questa possibilità si possono assegnare nuovi progetti per arredare una stanza con oggetti inerenti alla locazione. Un’altra funzione è quella di “punto di riferimento”, infatti sarà inserito in un terreno di proprietà dell’Università di Bologna e diventerà l’Home del Corso di Laurea di Scienze e Tecnologie Informatiche come edificio base per la ricerca. Questo perché l’Università ha bisogno di un fulcro operativo dove appoggiarsi e al quale fare riferimento. Sono stati sviluppati numerosi agenti che hanno come funzione quella di esplorare il mondo circostante, sfruttando questa struttura come caso di studio. A livello “didattico” l’utilizzo di Second Life per la realizzazione di edifici, all’interno di un mondo virtuale, è un ottimo editor grafico che permette di acquisire la capacità di lavorare in modo abbastanza veloce e agevole tramite l’assemblaggio di 29 Capitolo 3: Progettazione primitive, quindi è utile viste le analogie di utilizzo con molti dei software attualmente impiegati per editing grafico. Non solo: è un luogo dove si può lavorare cooperativamente e ottenere un feedback in ogni punto della realizzazione. 3.1 Creazione del corso di laurea con 3D studio Max Realizzare l’edificio del Corso di Laurea è possibile anche attraverso “3D Studio Max”, che è tra i programmi di disegno più utilizzati per realizzare progetti di grafica tridimensionale. È una “suite” utilizzata per la grafica vettoriale tridimensionale e per le animazioni. Fu realizzato dalla divisione Media & Entertainement di Autodesk [C3.1]. Il suo grande utilizzo è dato da numerose ragioni, tra cui le potenti capacità di editing e la sua architettura di plugin. Il prodotto è arricchito da una grande scelta di plugin realizzati da terze parti. 3DS Max ha una serie di funzionalità avanzate. Fin dalla versione 7.0 sono presenti strumenti di texture avanzati, come un generatore e renderizzatore di built-in normal map, inclusi apposta per migliorare le capacità di progettazione di video-giochi. Include anche Havok Reactor, software per la creazione di realistiche simulazioni dinamiche (utilizzato in giochi come Half-life 2 [C3.2], Oblivion [C3.3], Max Payne 2 [C3.4] e Tribes: Vengeance [C3.5]). I cinque metodi base utilizzati da 3DS Max per la modellazione sono: • Modellizzazione con primitive • NURMS • Surface tool • NURBS • Modelizzazione con poligoni Tra questi approfondiamo il primo metodo, cioè “modellizzazione con primitive” che risulta essere lo stesso utilizzato in Second Life. La costruzione avviene modellando quadrati, sfere, coni, cilindri e altre forme geometriche predefinite (similmente a Second Life), cambiando le dimensioni delle loro coordinate cartesiane. Si possono anche applicare operatori booleani, includendo intersezione, sottrazione e unione. La modellazione mediante poligoni è molto comune nella progettazione di videogiochi. Solitamente, il modellatore comincia convertendo una primitiva in 30 Capitolo 3: Progettazione poligoni e utilizzando strumenti come lo smusso, l'estrusione e il taglio dei vertici o delle facce, aggiunge dettagli e raffina il modello. Figura 3.1 Lavorazione di poligoni con 3DS Max È possibile inoltre attaccare due o più poligoni e collassare i vertici comuni in modo da poter mantenere unità nella superficie risultante. Questa tecnica è molto utilizzata nel campo dei videogiochi perché permette un controllo molto accurato su ogni poligono e quindi consente una forte ottimizzazione. [C3.6] 3.2 Differenze tra 3D Studio Max e Second Life L’idea di riprodurre l’edificio in modalità digitale è stata realizzata nella tesi di “Metodi Numerici per la Grafica” [C3.7] utilizzando come strumento per la realizzazione proprio 3D Studio Max. Grazie alla collaborazione di questo gruppo di ricerca, che ci ha fornito tale tesi e il filmato dell’edificio, siamo riusciti a riprodurre la struttura nel mondo di Second Life. In questo modo abbiamo potuto indagare sulle differenze tra i due risultati entrambi volti a fini diversi. Le differenze principali tra i due software possono essere descritte su tre fronti. La prima è il “livello di definizione” siccome con 3Ds Max il livello di dettaglio è certamente migliore paragonandolo a quello che si può vedere in Second Life. Questo perchè 3DS è un programma nato per la realizzazione di progetti grafici, si può 31 Capitolo 3: Progettazione verificare anche dall’elevato numero di Videogame creati con questo software. Second Life ha un editor grafico al suo interno, ma pur utilizzando le stesse tecniche di costruzione, ha livello di dettagli inferiori (soprattutto a causa della limitazione di primitive che c’è imposta per costruire), comunque molto apprezzabile per i nostri obiettivi. Nello spazio sono riportati alcuni sceenshot (cattura delle immagini) del filmato realizzato sulla costruzione del Corso di Laurea con 3Ds Max. Figura 3.2 Foto Corso di Laurea con 3Ds Max Come si può notare dalle immagini il dettaglio è elevatissimo, sembrano quasi foto della realtà. Questa è un’ulteriore conferma che 3Ds Max è un buon candidato se si vuol ottenere una riproduzione affidabile e verosimile. La seconda è il “tempo di rendering” (tempo impiegato per la visualizzazione completa del progetto a schermo). Questo è lo svantaggio maggiore di 3DS. Infatti, per eseguire il rendering dell’edificio il programma ha impiegato tempo nell’ordine di giorni. Un’ulteriore conferma è il progetto, da noi eseguito, con 3D Studio Max, riguardante l’aula ristoro interna al corso (una piccola parte interna all’edificio dell’università). Per portare a termine il rendering di quest’area abbiamo impiegato oltre 6 ore. 32 Capitolo 3: Progettazione Figura 3.3 Foto aula ristoro con 3Ds Max Questo è uno dei principali motivi per i quali usiamo Second Life: presenta un tempo di rendering nettamente inferiore, infatti per caricare l’intero edificio del corso di Laurea impiega circa 2 minuti. Il terzo motivo è quello della “Interattività”, infatti, la vera e propria innovazione dei mondi virtuali è che non possiamo solo vedere il mondo attorno a noi, ma possiamo anche toccarlo con mano (ovviamente la mano dell’avatar). Un esempio evidente è quello dell’apertura di una porta al semplice tocco, esperienza effettuata nel corso di “Storia e Didattica dell’Informatica” per la realizzazione del progetto “Museo dell’Informatica”. Figura 3.4 Foto porta che si apre con Second Life 3.3 Introduzione alla costruzione in Second Life A differenza di molti altri mondi virtuali, quasi ogni cosa che possiamo trovare all’interno di Second Life è stata costruita dagli utenti. Gli oggetti possono assemblati e sviluppati all’interno di zone definite Sandbox. Non c’è bisogno di utilizzare un software esterno perchè SL è munito sia di un editor grafico, sia di un proprio 33 Capitolo 3: Progettazione linguaggio di programmazione interno chiamato “Linden Scrips Language” (LSL). Questo linguaggio è simile all’ANSI-C ed è utilizzato per compiere semplici operazioni come l’apertura di una porta, ma anche per creare degli agenti autonomi [C3.8]. Per iniziare a costruire entriamo nel “menù principale” (è la barra situata in basso nello schermo), clicchiamo il tasto “build” e si apre il menù sottostante: Figura 3.5 Foto del menù primitive Questo menù contiene tutte le primitive che possiamo utilizzare e modellare a nostro piacimento; una volta selezionate, appariranno nella prims (elementi base per la costruzione in Second Life) le coordinate cartesiane. Potremo allungarle, modificando il valore delle coordinate (anche singolarmente), ruotarle e spostarle a nostro piacimento. Possiamo anche creare gruppi di primitive unite tra loro, questi sono chiamati “oggetti”. Gli oggetti possono essere composti da un minimo di 1 ad un massimo di 255 prims. Figura 3.6 Foto prims selezionate e oggetto unito Come si può notare dalla figura 3.6, quando creiamo un oggetto unendo più primitive, abbiamo una prim radice (quello selezionato in giallo) contenente gli script, attorno alla quale sono compiuti i movimenti di rotazione di tutte le altre prims satelliti (selezionate in colorazione blu). 34 Capitolo 3: Progettazione A volte possono essere riscontrati dei problemi riguardanti l’eccessiva distanza delle primitive selezionate, in questo caso apparirà sullo schermo un errore che riporterà che il link non è avvenuto. Se alcuni oggetti, al cui interno risiede uno script di movimento (come una porta), sono erroneamente linkati ad altri oggetti statici lo script perderà il regolare funzionamento. Per ridurre la quantità di dati inviati tra i client e i server SL utilizza la “modellazione parametrica”, grazie alla quale è possibile descrivere gli oggetti usando solo semplici e pochi parametri. Quando creiamo una prim, diciamo che facciamo il “rezzing”, cioè la materializziamo, infatti una delle caratteristiche che rendono questo software unico nel suo genere è di avere un tempo di rendering pressoché istantaneo. C’è la possibilità di creare oggetti tramite primitive di dimensioni maggiori alle comuni prim, le “Megaprims”. Queste sono utilizzate per portare a termine costruzioni di grandi dimensioni, data la peculiarità di poter diventare di ben 10 volte più grandi delle comuni prim. Figura 3.7 Foto Megaprim Come si può notare dalla foto l’utente, posto in altro a sinistra, è realmente piccolo confronto alla megaprim stessa. L’ostacolo maggiore riscontrato dal loro utilizzo, è che quando sono create provocano grossi problemi di “lag” (è il tempo di scambio di dati tra computer interconnessi che avviene in tempi troppo lunghi rispetto a 35 Capitolo 3: Progettazione quelli desiderati, in particolare nelle comunicazioni multiplayer è il fenomeno che crea vistosi scatti delle immagini su schermo) in tutta la regione. Le megaprim non furono create inizialmente dalla Linden Lab, ma da un hacker, Gene Replacement (nome dell’avatar), che voleva eliminare il problema della dimensione massima delle primitive. In molti megaprims che si trovano in Second Life troverete il suo come nome dell’autore. Per questo motivo la Linden Lab non ne ha vietato in seguito l’utilizzo, ma ha dichiarato che nell’eventualità ci fossero problemi di lag si riserverebbe di eliminare senza avviso e neppure salvare l’oggetto in building. Con queste prospettive il loro utilizzo, anche se sarebbero molto comodo nel nostro progetto, creerebbe instabilità, quindi non sfrutteremo questa possibilità. Un altro metodo di costruzione è quello delle sculpt, primitive modellate affinché possano raffigurare quello si vuole, con il vantaggio che risultano una sola prim. Per realizzarle utilizziamo un software, esterno a SL, chiamato “Blender” (editor di disegno open source) che ha la funzione di mappare i tre colori RGB (Red Green Blu) nei tre assi cartesiani (X, Y e Z) e di realizzare una texture che ci darà la “shape” (forma) delle sculpted prim da applicare ad una primitiva. Figura 3.8 Foto sculpt in realizzazione Possono ricreare ogni genere di forma, questo non è possibile con il normale sistema di prim. Le texture per sculpted prims determinano solo la loro forma, non il loro colore. Il colore va modificato normalmente nella tabella della finestra di Edit. Le sculpted prim consentono potenzialmente di realizzare costruzioni di aspetto più 36 Capitolo 3: Progettazione realistico o comunque meglio definito, con un numero di prim inferiore, rispetto alle prim tradizionali. È possibile applicare anche alle megaprim le texture per sculpted prim, anche se causano gli stessi problemi che risultano avere queste particolari primitive. Figura 3.9 Foto megaprim sculpt Attualmente, la lavorazione per la loro creazione risulta essere molto lunga, complicata e non di sicura riuscita, in più le sculpted prim possono solo essere ridimensionate lungo ciascuno dei 3 assi, ma non deformate e rese flessibili, come è già possibile fare con altri tipi di prim, quindi ottimali per un singolo oggetto come una statua, ma di non adattabili ad un’infrastruttura. Un altro aspetto importante all’interno di Second Life è la possibilità del realizzatore di rilasciare il diritto d’autore sulle creazioni effettuate. L’oggetto una volta materializzato può essere salvato all’interno di un”inventario” personale che ogni utente possiede, per far ciò bisogna cliccare sopra alla creazione col tasto destro e scegliere “take” se si vuole spostare nel proprio inventario, o “take copy” se si vuole solo prendere solo una copia lasciando il tutto materializzato. 37 Capitolo 3: Progettazione Figura 3.10 Foto take copy e take È possibile eseguire il salvataggio sia di gruppi di oggetti, che delle singole primitive nello stesso modo. Il salvataggio è fondamentale, in quanto, può capitare durante la costruzione che utenti disturbino il lavoro eseguito da noi, quindi salvare continuamente risulta essere l’unico modo per non perdere quello che produciamo. A causa di errori all’interno di SL (rari ma possibili), c’è la possibilità che avvengano perdite di dati da parte di singoli utenti, per questo è consigliabile creare un “account” aggiuntivo a quello che utilizziamo normalmente. Invieremo a questo nuovo personaggio i nostri salvataggi più importanti, “backup di dati”, per essere più sicuri di non perdere nulla. Per chi ha già un qualche tipo di esperienza con programmi di modellazione 3D come Maya o LightWave sarà molto facile ritrovarsi nel sistema di Second Life, mentre chi si trova per la prima volta di fronte a programmi di grafica o di modellazione, in poco tempo riuscirà a padroneggiare gli strumenti base. Nel caso ci si trovasse di fronte a dubbi o alla voglia di saperne qualcosa in più è possibile frequentare una lezione di costruzione (“building class”) direttamente all’interno di Second Life. 3.4 Osservazione, Documentazione e modellazione La prima fase per costruire la struttura dell’Università è quella di raccolta di materiale al fine di ottenere un’adeguata documentazione (base per lo svolgimento di un progetto). La costruzione che dobbiamo portare a termine è il Palazzo Mazzini Marinelli a Cesena. Questo edificio è un palazzo signorile a tre ordini con un ampio cortile interno delimitato, a sua volta, su tre lati da un bel porticato con archi a tutto sesto. L'impianto originario dell'edificio è della fine del XVIII secolo, ma nel tempo subì molte modifiche e ricostruzioni, di cui l'ultima risalente a dopo la fine della 38 Capitolo 3: Progettazione seconda guerra mondiale. Fu ristrutturato per dotare di maggiori spazi didattici il Corso di Laurea in Informatica della Facoltà di Scienze Matematiche, Fisiche e Naturali [C3.9]. Prima di tutto l’università ci ha concesso di avere accesso alle planimetrie della stessa e noi ci siamo preoccupati di scattare fotografie. Disporre di un buon materiale fotografico ci ha permesso di avere sempre riferimenti esatti da cui attingere informazioni su misure, colori e forme. Un altro utilizzo delle fotografie è quello della creazione delle texture da applicare alle primitive per aumentare l’effetto della struttura reale. La modellazione è una delle fasi più importanti, infatti il rispetto delle proporzioni è fondamentale. Siamo riusciti a calcolare con precisione anche alcune misure di altezza che non potevamo rilevare sul campo, usando come riferimento elementi a noi già noti e costruiti nella giusta scala. Un altro passo importante è quello del “surfacing”, cioè cercare di simulare i materiali della superficie degli oggetti. Per far ciò abbiamo cercato di scegliere colorazioni reali e toni non troppo saturi per ricreare i materiali del Corso di Laurea. Poiché certi colori o texture già presenti all’interno di Second Life non corrispondevano a quelli reali, siamo ricorsi alle foto in precedenza scattate, abbiamo tagliato le parti necessarie e le abbiamo caricate come texture. Volutamente abbiamo tralasciato di riportare le importanti imperfezioni naturali presenti nei materiali reali, poiché nella struttura iniziale non erano presenti e non ci sembrava consono riprodurle. Figura 3.11 Texture ghiaia e pavimento in ciottolato 39 Capitolo 3: Progettazione Figura 3.12 Texture muro giallo e muro rosso Figura 3.13 Texture e cortile interno Figura 3.14 Texture pavimento scacchi e pavimento rosso 40 Capitolo 3: Progettazione Figura 3.15 Texture finestra e porta esterna aula ristoro Figura 3.16 Texture Pietro Marinelli e tombino 3.5 Fasi di realizzazione del Corso di Laurea Per la riproduzione del Corso di Laurea abbiamo usato una tecnica molto diffusa all’interno di SL, che consiste nell’utilizzare le planimetrie degli edifici come base di partenza, affinché il lavoro fosse svolto con la maggior precisione possibile. 41 Capitolo 3: Progettazione Figura 3.17 Foto piano terra e primo piano Abbiamo pensato di caricare le piantine direttamente all’interno di Second Life affinché potessimo disporle come texture al posto del pavimento. A questo punto però, considerando la dimensione massima della singola primitiva (10 metri), abbiamo dovuto suddividere ognuno dei tre piani (terra, intermedio, primo) in blocchi di tale dimensione. Per far questo abbiamo preso le misure di lunghezza (direttamente sul campo) per compiere una proporzione tra la realtà e la planimetria a noi dataci, ricavando le misure reali. Per eseguire i tagli abbiamo usato “Gimp” [C3.10], ottimo software open source per il disegno, può essere utilizzato come semplice programma di disegno, per il fotoritocco professionale, come sistema di elaborazione bach in linea, come restitutore di immagini prodotte automaticamente, come convertitore di formati di immagine e altro ancora. Abbiamo caricato la piantina e compiuto il ritaglio automatico dei bordi bianchi: 42 Capitolo 3: Progettazione Figura 3.18 Foto auto-ritaglio automatico dei bordi In seguito introdotto le “guide” orizzontali e verticali, tutte poste in base alle proporzioni da noi rilevate sul campo: Figura 3.19 Foto inserimento guide Infine abbiamo usato la “ghigliottina” (un comando che permette di eseguire i tagli in base alle guide introdotte): 43 Capitolo 3: Progettazione Figura 3.20 Foto ghigliottina Il risultato è stato una suddivisione (sia per il primo che per il secondo piano) in blocchi che hanno dato origine a una matrice composta di 6 righe (suddivise in numeri da 1 a 6) e 7 colonne (suddivise chiamate con le lettere dell’alfabeto da “A” a “G”). Figura 3.21 Blocco “A1” e “A2” piano terra 44 Capitolo 4: Implementazione 4 Implementazione Per riprodurre l’edificio del Corso di Laurea abbiamo cercato di capire dove fosse possibile edificare un’opera di tali dimensioni, senza incorrere in problematiche in fase di realizzazione. Grazie all’esperienza maturata nello svolgimento del progetto “Museo dell’informatica” dove abbiamo carpito esperienze approfondite su Second Life, svolto durante il corso di “Storia e Didattica dell’Informatica” del Professor Giorgio Casadei [C4.1] e del Dottore di Ricerca Stefano Cacciaguerra [C4.2], abbiamo evitato di incappare in numerosi problemi relativi alla scelta dell’adeguata locazione (sandbox). Infatti ogni regione in Second Life è composta di 65536 metri quadrati (una matrice di 256x256) e all’interno di questi possono essere contenute al massimo 15000 primitive [C4.3]. Le restrizioni servono ad impedire che gli utenti possano creare un numero eccessivo di primitive, concentrate nella stessa zona, questo per evitare che Second Life passi troppo tempo nella fase di renderizzazione, provocando il fenomeno del lag (tempo di scambio di dati tra computer interconnessi che avviene in tempi troppo lunghi rispetto a quelli desiderati, in particolare nelle comunicazioni multiplayer è il fenomeno che crea vistosi scatti delle immagini su schermo). Il Lag compromette infatti la possibilità d’immersione ottimale nel mondo virtuale e disturba considerevolmente anche la fase di costruzione degli utenti presenti. Chiunque all’interno di una sandbox maneggia un numero superiore alle 100 primitive crea delle code di ritardo (il server carica un oggetto alla volta, se questo impiega molto tempo avviene un ritardo per gli oggetti che devono ancora essere visualizzati) che rallentano la renderizzazione da parte del server di tutta la regione. Abbiamo testato numerose sandbox, valutandole in base a precise caratteristiche: la possibilità di poter usufruire della massima disponibilità temporale di costruzione (5 ore) data dai programmatori 45 Capitolo 4: Implementazione della Linden e la possibilità di usare un consistente numero di primitive (senza il rischio di divergenze con gli amministratori presenti in tali regioni). La sandbox ritenuta a nostro avviso più funzionale è la “Denmark International” (coord. 163,122,21) che è stata quella da noi maggiormente impiegata. Figura 4.1 Sandbox Denmark International Un vantaggio di quest’area è che i suoi amministratori prima di interferire con l’attività degli utenti, anche se non la ritengono idonea ai parametri della sandbox, prendono contatto con il diretto interessato affinché possa salvare la propria produzione nell’inventario. Altro aspetto positivo è dato dalla strutturazione graduata in metri del pavimento (come si può notare dalla snapshot riportata nella fig. n 4.1) che ci permette da subito di avere una proporzione del lavoro eseguito. Altre sandbox che, a nostro avviso, sono ben strutturate (forniscono infatti validi strumenti di lavoro) e interessanti sono: “Guguen” (coord. 207,106,21), “Cordova” (coord. 0,159,78), “EuroFur dAlliez” (coord. 55,100,48). Il fattore “esperienza” all’interno di SL è importante: la conoscenza e la pratica fanno risparmiare tempo di esecuzione e soprattutto aiutano a prevedere ed ad aggirare ostacoli. 46 Capitolo 4: Implementazione 4.1 Riduzione delle primitive Per realizzare il Corso di Laurea all’interno di SL abbiamo cercato di riprodurre fedelmente l’architettura, utilizzando il minor numero di primitive e rispettando le regole imposte dalla sandbox. Uno dei casi specifici incontrato riguarda il rivestimento esterno dei muri e in particolare le zone dove s’inseriscono finestre e porte. Gli spigoli sono molto articolati, come ben descritto dall’immagine sottostante e per portarli a termine avremmo dovuto usare un numero elevato di prims, due in più per ogni lato. Figura 4.2 Muri che combaciano con porte e finestre 47 Capitolo 4: Implementazione Questo avrebbe portato ad un aumento sostanziale delle primitive all’interno di tutto il progetto, dato che nel palazzo dell’università sono presenti molte porte e finestre. Dopo aver riprodotto fedelmente le pareti, abbiamo deciso di semplificare i singoli elementi portandoli da 4 primitive a una primitiva ciascuno, come riportato nel raffronto fotografico. Figura 4.3 Riproduzione muri adiacenti a porte e finestre Figura 4.4 Riproduzione muri adiacenti a porte e finestre modificate Per far capire ancora meglio la differenza tra i due muri e mostrare l’effettivo risparmio di primitive, andiamo a rappresentare visivamente lo spigolo di un muro fedele alla realtà con due primitive e quello semplificato con una. 48 Capitolo 4: Implementazione Figura 4.5 Differenza spigoli dei muri Un altro aspetto che abbiamo dovuto considerare, è quello riguardante lo sviluppo verticale. Tenendo presente il problema della misura massima di una primitiva (10 metri) e l’esigenza di ridurre il numero delle stesse, nelle facciate esterne abbiamo unito il primo piano al secondo (essendo i muri contigui) in questo modo per lo sviluppo verticale della struttura abbiamo utilizzato una sola primitiva per lato. Questo metodo di costruzione è visibile nella figura sotto riportata. Figura 4.6 Foto esempio sull’incastro di finestre In giallo sono evidenziate le due murature esterne alle finestre, mentre in verde è ricoperto l’unico spazio vuoto che le separa. È chiaro che se avessimo avuto un’altra coppia di finestre speculari, a fianco di queste riportate, avremmo potuto eseguire l’operazione di “strech” (allungamento) della primitiva verde in modo tale da risparmiare prims anche nello sviluppo orizzontale, come nella foto 4.7 sotto riportata. 49 Capitolo 4: Implementazione Figura 4.7 Riduzione primitive orizzontale e verticale attorno a finestre 4.2 Riduzione delle primitive con Primfficiency Tutte le applicazioni fin qui illustrate possono essere considerate “intuitive”, ora introduciamo un altro concetto, il “Primfficiency”. Deriva dal nome "prim efficiency + proficiency"e si occupa della modifica delle singole prim, grazie a tagli particolari, che permettono di costruire un oggetto risparmiando sul numero di primitive. Figura 4.8 Foto di un castello esempio di primfficiency Nel nostro progetto abbiamo utilizzato questa tecnica per la realizzazione di porte, finestre, scale e archi. Dato il nostro compito di riprodurre gli esterni, parleremo nello specifico delle finestre, delle porte e degli archi. Questi oggetti sono numerosi e alquanto ripetuti pertanto nell’intento di risparmiare ove possibile le primitive abbiamo ricavato da un parallelepipedo, tramite 50 Capitolo 4: Implementazione la funzione “hollow” (scavare), una cornice esterna che ci permette di ridurre da quattro (tutti e quattro i lati esterni di una finestra) a una le prims. Figura 4.9 Foto cornice esterna finestra con 1 prim Nelle prime due sequenze d’immagini (fig. n 4.10) andiamo a mostrare l’utilizzo di questa tecnica per le finestre del laboratorio del primo piano dell’università. Figura 4.10 Foto finestra del laboratorio al primo piano dell’università 51 Capitolo 4: Implementazione Mentre nella terza, quella a destra, si vede quali sono gli altri elementi che vanno a comporre la finestra (escluso il vetro). In questi ultimi non è stata utilizzata la tecnica del primfficiency. Grazie a quest’operazione la finestra è stata eseguita con 7 prims invece di 15, ottenendo un risparmio di oltre il 50%. La stessa applicazione della funzione hollow è stata usata per ottenere la porta che dà accesso all’aula ristoro. In particolare andiamo ad illustrare come abbiamo riprodotto gli archi nella parte superiore. Per far ciò abbiamo creato un cilindro, poi tagliato a metà e ruotato di 90 gradi, infine scavato fino ad arrivare al risultato della figura 4.11. Figura 4.11 Foto dei 3 archi della porta dell’aula ristoro Tale applicazione è servita anche per realizzare la parte sottostante (giallo) degli archi che collegano le colonne del giardino interno, mentre per la parte soprastante (rosso) abbiamo usato il procedimento inverso. 52 Capitolo 4: Implementazione Figura 4.12 Foto arco e parte sopra che congiungono le colonne Tutti gli altri elementi realizzati per gli esterni e costruiti con primfficiency, li abbiamo raccolti in una sola immagine. Figura 4.13 Foto elementi esterni 4.2.1 Linden Script Language utilizzato Il “Linden Script Language” non è altro che il linguaggio usato per programmare all’interno di Second Life. Nel nostro caso specifico lo abbiamo utilizzato per interagire con le porte. Ad ogni porta corrisponde un cardine, attraverso il 53 Capitolo 4: Implementazione quale la stessa esegue il movimento di apertura che è anche il contenitore del nostro file del linguaggio di programmazione. Codice delle porte da noi utilizzato: float TIMER_CLOSE = 0; float gap = 2.0; float counter= 0.0; integer DIRECTION = 1; default { touch_start(integer total_number) { llSetTimerEvent(gap); llTriggerSound("Door open", 0.8); rotation rot = llGetRot(); rotation delta = llEuler2Rot(<0, 0, -DIRECTION * PI_BY_TWO>); rot = delta * rot; llSetRot(rot); state wait; return; } } state wait { timer() { counter = counter + gap; if (counter == 90.0) { State close } } touch_start(integer total_number) { State close; } } State close { rotation rot = llGetRot(); rotation delta = llEuler2Rot(< 0,0,DIRECTION * PI_BY_TWO >); rot = delta * rot; llSetRot(rot); llTriggerSound("Door close", 0.8); state default; } 54 Capitolo 4: Implementazione La peculiarità del nostro codice è di aprire una porta quando l’utente esegue il comando “touch” e di chiuderla utilizzando lo stesso comando. Se la stessa non fosse chiusa dall’utente, in automatico si chiuderebbe dopo 90 secondi in modo da preservare lo stato iniziale del nostro progetto. Figura 4.14 Foto apertura di una porta Nel codice sono presenti le variabili temporali (“timer_close”, “gap” e “counter”) e di direzione apertura porta (“direction”). La funzione di default rappresenta lo stato iniziale dell’oggetto; appena viene toccata una porta (“touch_start”) azioniamo “llSetTimerEvent”, che azzera il contatore temporale. Poi si attiva il suono di apertura della porta (“llTriggerSound(“Door open”, 0.8)”) e grazie alle funzioni “rotation”, si compie la rotazione attraverso il cardine e si entra nello stato di attesa, “wait”. Wait ha due sottofunzioni, “touch_star” e “timer()”: se l’utente clicca nuovamente sulla porta si attiverà la prima funzione che ci porta allo stato di “close, viceversa il contatore esegue il conteggio dei 90 secondi al termine dei quali sarà attivato lo stato close automaticamente. Nel conteggio è presente il tempo di gap, impostato a 2 secondi per la funzione precedente “llSetTimerEvent(gap)”, quindi viene generato un evento ogni 2 secondi. Un gap (+2) è aggiunto alla somma degli eventi e, quando si arriva a 90 secondi, la funzione si arresta e si attiva lo stato close. In close si effettua la rotazione della porta nel lato opposto (prima –direction, adesso direction) e attiviamo il suono di chiusura porta (“llTriggerSound (“Door close”, 0.8)”). Eseguite tutte le operazioni l’oggetto torna allo stato iniziale (State Default). 55 Capitolo 4: Implementazione 4.3 Fasi di realizzazione Grazie alla possibilità di realizzare l’edificio dell’Università in modo simultaneo, tra due o più utenti (dello stesso gruppo), abbiamo svolto il nostro progetto in cooperazione (suddividendo il lavoro in interni e esterni). Per questo motivo nelle immagini che riporteremo saranno visualizzati anche parte degli interni. Figura 4.15 esempio di collaborazione tra due utenti Abbiamo caricato, all’interno di Second Life i blocchi di planimetria derivanti da Gimp. Abbiamo creato delle primitive (10x10 metri), tante quanti i blocchi caricati, e le abbiamo allineate perfettamente. Successivamente abbiamo le parti della piantina alle primitive utilizzandole come texture, ottenendo tale risultato: 56 Capitolo 4: Implementazione Figura 4.16 Foto di due prims unite con texture planimetria Date le estese dimensioni della pianta reale abbiamo optato per un’altra tecnica costruttiva: edificare il tutto in scala ridotta. Abbiamo provato a realizzare le murature seguendo fedelmente le linee perimetriche dell’edificio, anche in corrispondenza dei vani porte e finestre come nella figura 4.3. Nella realizzazione della prima parte della struttura non abbiamo considerato le reali dimensioni dell’altezza, questo perché tale operazione è stata pianificata per il momento in cui avremmo ingrandito il piano terra fino ad arrivare alle reali misure, tutto questo per evitare errate proporzioni. 57 Capitolo 4: Implementazione Figura 4.17 Realizzazione iniziale dei muri Finiti i muri del piano terra, abbiamo valutato che ci conveniva ridurre il numero di primitive, poiché se avessimo continuato con tale strategia, la realizzazione finale sarebbe troppo dispendiosa allungando l’operazione di renderizzazione. Considerando che il nostro obiettivo è di mantenere elevata l’interattività abbiamo modificato le prims in modo tale da ottenere un risultato che non compromettesse l’aspetto esteriore. 58 Capitolo 4: Implementazione Figura 4.18 modifica delle murature con meno prims Al termine di quest’operazione, dopo aver selezionato tutti gli elementi realizzati, con l’operazione “strech” (ingrandire o rimpicciolire le primitive), abbiamo riportato la struttura in scala reale. Figura 4.19 Pianta completa del piano terra Gli unici oggetti mancanti erano le 26 colonne del cortile interno. Abbiamo costruito basamento, capitello e colonna composti da 2 prims ciascuno 59 Capitolo 4: Implementazione (complessivamente 6 primitive), poi abbiamo applicato una texture per riprodurre i mattoni. Figura 4.20 Foto della riproduzione colonne In seguito abbiamo modificato lo sviluppo verticale dei muri. Questa fase è stata complicata perché non hanno tutti la stessa altezza. Ad esempio in corrispondenza delle finestre abbiamo dovuto inserire una primitiva sotto e una sopra, cercando sempre di centellinare gli elementi inseriti utilizzando la funzione strech. Figura 4.21 Foto sviluppo verticale del piano terra 60 Capitolo 4: Implementazione Completato lo sviluppo verticale delle murature, abbiamo realizzato e inserite porte, finestre e archi, notando che l’edificio assumeva gradualmente una forma vicina alla realtà. Figura 4.22 Inserimento porte e archi Abbiamo selezionato le primitive contenti la pianta dell’edificio e le abbiamo copiate sia per creare il piano intermedio, che per creare il primo piano. Questo in modo da esser sicuri di avere la stessa dimensione della planimetria. Poi abbiamo sostituito le textur presenti con quelle dei piani a cui si riferivano. Fatto ciò abbiamo eseguito la stessa operazione precedente per costruire i muri nei piani superiori, direttamente con le misure di altezza giuste. Abbiamo dovuto controllare che le piantine dei vari piani combaciassero in corrispondenza dei muri. Nel caso in cui i muri di alcune parti del progetto non combaciavano perfettamente (anche se di pochi centimetri), abbiamo dovuto adattare la struttura in modo tale che non presentasse difetti estetici. 61 Capitolo 4: Implementazione Figura 4.23 Inserimento piano intermedio e primo con murature Progressivamente abbiamo introdotto finestre e porte anche ai piani superiori e chiuso le murature. Il passo successivo è stato quello di eliminare le parti della planimetria nelle zone dove la struttura era già completa e introdurre al loro posto le texture adatte della pavimentazione. Abbiamo incominciato a fare quest’operazione dal cortile interno. Figura 4.24 Cortile interno con texture adeguate 62 Capitolo 4: Implementazione Figura 4.25 Cortile interno con texture adeguate 2 Una volta applicate tutte le texture, abbiamo realizzato il cortile esterno adiacente alla facciata dell’edificio dell’università e alla biblioteca. Abbiamo riprodotto fedelmente alcune parti, mentre altre sono state create a nostro piacimento mantenendo la struttura verosimile all’architettura dell’edificio, poiché il cortile è adiacente a delle abitazioni, che non rientrano nell’area del nostro corso. Figura 4.26 Cortile esterno 63 Capitolo 4: Implementazione Completata l’applicazione delle texture sulle facciate, abbiamo creato il tetto dell’edificio introducendo dei parallelepipedi. Li abbiamo ruotati, fino a dare l’inclinazione giusta e in seguito li abbiamo uniti. Nell’intersezione abbiamo inserito dei triangoli che rappresentano la congiunzione tra i parallelepipedi. Figura 4.27 Costruzione del tetto Figura 4.28 Tetto del corso di laurea 64 Capitolo 4: Implementazione 4.3.1 Problematiche riscontrate nella realizzazione Nella realizzazione dell’intero progetto siamo incappati in alcune problematiche riguardanti la struttura dell’edificio, alcune ali non risultavano, infatti, in asse con il resto della costruzione: la parte davanti che dà su via Sacchi e quella dietro che dà su contrada Chiaramonti. Figura 4.29 Facciata dell’Università con parete esterna inclinata Come si può notare dalla figura 4.29 la facciata dell’edificio del Corso di Laurea è inclinata diversamente rispetto tutto il resto della struttura. Questo ha reso difficoltoso creare oggetti combacianti, doverli mantenere sullo stesso asse del precedente. Infatti all’interno di Second Life quando vogliamo unire 2 primitive, ci muoviamo attraverso 2 assi cartesiani possibili, “world e local”, rispettivamente uno orientato all’asse principale del mondo di SL, l’altro a quello locale della regione. I muri obliqui non possono fare riferimento a nessuno di questi 2 assi. Quindi la difficoltà è presentata dal fatto che abbiamo dovuto avvicinarci con la telecamera al punto di giunzione e far combaciare le due primitive, cercando di non creare alcun tipo di sfasamento nella compenetrazione di due solidi. Lo stesso problema è avvenuto nell’inserimento di finestre, porte e tetto in queste facciate. Un’altra difficoltà nella quale ci siamo imbattuti è stata quella della creazione delle volte presenti all’interno dei loggiati del cortile interno. 65 Capitolo 4: Implementazione Figura 4.30 Volte interne ai loggiati Inizialmente, durante la fase di progettazione, avevamo pensato di riprodurle grazie all’utilizzo delle sculpt, ma purtroppo questo metodo di costruzione non si è rivelato funzionale e abbiamo abbandonato l’ipotesi (creazione lunga, complicata, non di sicura riuscita e non modellabile per i tre assi cartesiani separatamente). Abbiamo cercato una valida alternativa a questo ma, com’è visibile anche all’interno della Basilica di Assisi, per portare a termine l’operazione avremmo utilizzato un numero elevatissimo di primitive. Abbiamo deciso, quindi, di non introdurle perché, a nostro avviso, sarebbero inadeguate per il completamento del progetto e lo avrebbero appesantito ulteriormente senza arrecare un vantaggio reale. 66 Capitolo 4: Implementazione Figura 4.31 Volte della Basilica di Assisi su Second Life (coord. 246,109,68) Un altro aspetto che abbiamo tralasciato sono le ringhiere, le porte d’ingresso di via Sacchi e le sbarre di alcune finestre esterne. Figura 4.32 Ringhiere e porta di ingresso 67 Capitolo 4: Implementazione La decisione deriva dal fatto che per realizzarle, anche in questo caso, avremmo dovuto introdurre un numero eccessivo di primitive. Avremmo potuto costruire anch’esse con le sculpt, ma si sarebbe evidenziato lo stesso problema descritto per le volte. Un altro metodo preso in considerazione è stato quello di fotografarle e applicare la foto come texture, ma facendo ciò nella foto si sarebbero visualizzati i dettagli presenti nell’area subito dietro la ringhiera o la porta, quindi avremmo perso il fattore di immersività. Il fatto di non avere un terreno proprio, all’interno del quale operare, è stato un ostacolo. Possedere uno spazio significa poter procedere nel proprio lavoro senza la necessità di doverlo continuamente salvare: nel momento in cui l’utente possessore o contributore ne riporta un oggetto all’interno, questo rimane lì e può essere modificato o cancellato solo dagli stessi creatori. Per noi sarebbe stato un vantaggio considerevole, perché uno dei problemi di costruzione nella sandbox è la continua necessità di salvare quello che si crea. Capita, a volte, che salvando oggetti complessi nell’inventario qualche pezzo non venga riportato compromettendo l’integrità della struttura. Nella maggior parte delle sandbox non c’era permesso nemmeno di costruire un edificio di tali dimensioni, infatti ogni volta che provavamo a tirar fuori la costruzione dall’inventario, arrivava l’amministratore e cancellava il tutto. Nelle sandbox dove invece potevamo lavorare, eravamo obbligati a completare la nostra costruzione in aria, perché se avessimo costruito l’edificio a contatto con il terreno, avremmo coperto quasi interamente l’area edificabile, limitando gli altri utenti. La possibilità di costruire oggetti in aria, contro le leggi della fisica, è una grande innovazione dei mondi virtuali. Nella riproduzione in aria abbiamo dovuto creare un parallelepipedo, collocarlo a circa 40 metri da terra, e indicare quello come punto estrarre dall’inventario l’edifico stesso. 68 Capitolo 4: Implementazione Figura 4.33 Foto del Corso di Laurea costruito in aria Viste le dimensioni del Corso di Laurea, all’interno di una sandbox è capitato che venissimo bannati senza nessun preavviso, questo a causa del lag che provocavamo nell’area attorno al nostro edificio. Essendo stati bannati ogni cosa che avevamo costruito, nel periodo che intercorreva dall’ultimo salvataggio al momento dell’allontanamento, non è stato più possibile recuperarla nella propria interezza (viene collocata nell’inventario dentro la sezione Lost and found) siccome il nostro avatar non poteva più avere accesso a tale area. Figura 4.34 Bannaggio all’interno di una sandbox 69 Capitolo 5: Casi di Studio Quando una costruzione di grandi dimensioni e con un elevato numero di prims viene cancellata da un amministratore, tutti gli oggetti eliminati sono collocati all’interno della sezione “lost and found” nell’inventario. Il problema sussiste poiché vengono salvati non in un unico file ma tutti separati o raggruppati in categorie. Questo comporta un’enorme perdita di tempo, in quanto se volessimo ricomporre il tutto s’impiegherebbe più tempo che rifare l’intera parte non salvata. Nell’immagine sottostante riportiamo l’edificio del Corso di Laurea dopo esser stato spostato dentro lost and found, come si può notare la parte eliminata non è più facilmente ricostruibile. Figura 4.35 Edificio del Corso di Laurea dopo lost and found 70 Capitolo 5: Casi di Studio 5 Casi di studio L’obiettivo della nostra tesi era di riprodurre l’edificio del Corso di Laurea in un mondo virtuale, in particolare su Second Life. Il fine è stato giustificato dal fatto che non ne esisteva ancora una riproduzione interattiva. A causa di vincoli dati dall’editor grafico di SL, non è stato possibile riportare ogni piccolo dettaglio, comunque ciascun oggetto sviluppato rispecchia in modo fedele la struttura. Il nostro progetto darà la possibilità a chiunque visiti l’edificio, dentro il mondo virtuale, di acquisire tutte le informazioni all’architettura dell’edificio come se lo avesse visitato di persona. A sostegno di quanto ho detto andiamo a confrontare le snapshot (fotografia presa rapidamente da un’immagine visualizzata a schermo) del progetto realizzato su Second Life e le foto dell’edificio reali. Ove possibile, in base al materiale in nostro possesso, riporteremo anche un raffronto con il progetto realizzato con 3D Studio Max, per evidenziare le differenze tra le due applicazioni. I colori nella nostra rappresentazione sono più accesi di quelli reali che risultano alterati a causa del degrado e dalla sporcizia. In alcune delle nostre immagini notiamo visuali ampie della facciata: poiché nel mondo virtuale è possibile visualizzare ogni piccolo particolare e ogni tipo di angolatura muovendosi con la telecamera, noi abbiamo così effettuato delle snapshot più dettagliate delle foto dell’edificio. 5.1 Differenze grafiche tra Realtà, Second Life e 3D Studio Max Andiamo ora ad analizzare le immagini raccolte per poter meglio individuare le differenze tra le tre rappresentazioni della struttura architettonica. 71 Capitolo 5: Casi di Studio Nelle immagini realizzate con Second Life della facciata d’ingresso principale (via Sacchi), noteremo mancare alcuni dettagli presenti nella realtà, tra i quali la ringhiera esterna, le porte di ingresso, le bandiere, le tende esterne alle finestre e gli alberi. Come illustrato in dettaglio nel capitolo 4, la ringhiera esterna e la porta d’ingresso potevano esser realizzate, ma avrebbero compromesso l’immersività del progetto, quindi abbiamo deciso di non riportarle. Avremmo potuto immettere le bandiere, le tende e gli alberi come oggetti esterni, trovabili nelle freebies (aree dedicate alla raccolta di oggetti comuni del mondo reale acquisibili in modo gratuito), ma una volta inseriti non ci avrebbero più permesso di salvare il progetto nel nostro inventario. Figura 5.1 Facciata ingresso Corso di Laurea 72 Capitolo 5: Casi di Studio Figura 5.2 Facciata ingresso Corso di Laurea in Second Life Nella riproduzione della facciata dell’ingresso secondario della struttura dell’università notiamo mancare solo le ringhiere del terrazzo, nell’ufficio dei tecnici, al primo piano. Figura 5.3 Facciata ingresso posteriore Corso di Laurea 73 Capitolo 5: Casi di Studio Figura 5.4 Facciata ingresso posteriore Corso di Laurea in Second Life L’ala occupata dai laboratori, nella facciata esterna presenta le stesse caratteristiche ad eccezione delle grate alle finestre del piano terra. Anche l’inserimento di quest’ultime, come già per gli elementi in precedenza considerati, avrebbe compromesso la funzionalità, quindi abbiamo preferito mantenere elevata l’immersività a discapito del dettaglio. Figura 5.5 Facciata laterale esterna Corso di Laurea 74 Capitolo 5: Casi di Studio Figura 5.6 Facciata laterale esterna Corso di Laurea in Second Life A causa degli edifici adiacenti alla facciata laterale esterna, non siamo riusciti a scattare una foto con un angolo tale da poterla visualizzare nella sua interezza. Quindi ne riportiamo una che presenta evidenti limiti nei dettagli, mentre con la snapshot realizzata in Second Life possiamo permetterci una visuale maggiore. In questa parte abbiamo introdotto modifiche sostanziali per realizzarla. La colorazione reale grigia è tale per mancata verniciatura nella ristrutturazione, per questo abbiamo deciso di riportarla rossa come il resto degli esterni, per migliorare l’estetica della nostra realizzazione. In seguito abbiamo creato un giardino esterno, diverso dalla realtà poiché in questa zona combaciano edifici non appartenenti al Corso di Laurea (da non riprodurre). Lo abbiamo ampliato in modo da creare una zona relax su Second Life all’interno della struttura. Inoltre non abbiamo riprodotto la scala antincendio, per non dare un’altra via di accesso alla zona interna della struttura, oltre a quelle prestabilite. 75 Capitolo 5: Casi di Studio Figura 5.7 Facciata laterale esterna zona cortile esterno del Corso di Laurea Figura 5.8 Facciata laterale esterna zona cortile esterno del Corso di Laurea in Second Life 76 Capitolo 5: Casi di Studio All’interno del cortile principale, abbiamo la possibilità di compiere un raffronto dettagliato, potendo disporre anche di alcune immagini di 3D Studio Max. Nelle figure sottostanti riportiamo la facciata d’ingresso dell’aula ristoro. Figura 5.9 Cortile interno Corso di Laurea Facciata 1 Figura 5.10 Cortile interno Corso di Laurea Facciata 1 in Second Life 77 Capitolo 5: Casi di Studio Figura 5.11 Cortile interno Corso di Laurea Facciata 1 in 3D Studio Max Nel progetto di 3D Studio Max per rappresentare le finestre sono state applicate delle foto come texture. Nel nostro invece si possono vedere gli interni attraverso il vetro, mantenendo inalterata l’immersività, questo ha comportato l’utilizzo durante la realizzazione di un numero maggiore di primitive. Nell’immagine 5.10 l’unico dettaglio discordante sono le finestre chiuse per ristrutturazione. Abbiamo deciso, durante la progettazione, di riprodurle in muratura senza applicare pannelli di legno, per non comprometterne l’aspetto visivo. Anche nel progetto di grafica è stata adottata la stessa scelta. Abbiamo lasciato volutamente il bordo bianco per dare il senso di profondità. 78 Capitolo 5: Casi di Studio Figura 5.12 Finestra chiusa facciata cortile confronto Nella facciata del cortile interno, dalla parte dei laboratori 1 e 2, sono presenti tutti i particolari in entrambi i progetti. Figura 5.13 Cortile interno Corso di Laurea Facciata 2 79 Capitolo 5: Casi di Studio Figura 5.14 Cortile interno Corso di Laurea Facciata 2 in Second Life Figura 5.15 Cortile interno Corso di Laurea Facciata 2 in 3D Studio Max Sotto il loggiato abbiamo realizzato lo scivolo di accesso per le persone portatrici di handicap, mentre non abbiamo considerato le volte e i lucernai. Questi aspetti da noi tralasciati sono presenti nel progetto di grafica, al contrario non compare lo scivolo. 80 Capitolo 5: Casi di Studio Figura 5.16 Loggiato del Corso di Laurea facciata 2 Figura 5.17 Loggiato del Corso di Laurea facciata 2 in Second Life 81 Capitolo 5: Casi di Studio Figura 5.18 Loggiato del Corso di Laurea facciata 2 in 3D Studio Max Consideriamo la facciata dell’ingresso principale. Di quest’area sono riportati tutti i dettagli in entrambe le realizzazioni. Figura 5.19 Cortile interno facciata 3 Corso di Laurea 82 Capitolo 5: Casi di Studio Figura 5.20 Cortile interno facciata 3 Corso di Laurea in Second Life Figura 5.21 Cortile interno facciata 3 Corso di Laurea in 3D Studio Max L’ultima area considerata è quella riguardante le aule D, E, l’associazione universitaria e la sala lettura. In entrambe le riproduzioni sono inseriti tutti gli elementi effettivamente presenti. 83 Capitolo 5: Casi di Studio Figura 5.22 Cortile interno facciata 4 Corso di Laurea Figura 5.23 Cortile interno facciata 4 Corso di Laurea in Second Life 84 Capitolo 5: Casi di Studio Figura 5.24 Cortile interno facciata 4 Corso di Laurea in 3D Studio Max 85 Capitolo 5: Casi di Studio 86 Capitolo 6: Conclusioni 6 Conclusioni 6.1 Conclusioni finali Questa tesi ha mostrato com’è possibile riprodurre nella propria interezza porzioni di ambiente reale all’interno del mondo virtuale di Second Life, dove l’utente vive una vita alternativa attraverso la propria rappresentazione sintetica definita “avatar”. SL è dotato di un ottimo motore grafico 3D che permette dei raffronti tra le creazioni al suo interno e la realtà. Per rendere il tutto maggiormente realistico è dotato anche di un sistema audio che realizza la sensazione di tridimensionalità associata all’ambientazione. Questo ci ha permesso di realizzare un edificio fedele a quello reale all’interno di un mondo esplorato da oltre 10 milioni di utenti. La struttura verrà situata all’interno di un terreno di proprietà dell’Università di Bologna e diventerà l’Home del Corso di Laurea di Scienze e Tecnologie informatiche. Questo permetterà la visibilità del progetto di Laurea 24 ore su 24 e 7 giorni su 7. Data la peculiarità del mondo di SL di esser realizzato, nella sua interezza, da utenti sono stati imposti dei limiti di costruzione. La ricerca di una sandbox adeguata ci ha permesso di costruire un edificio di grandi dimensioni, pur non avendo un terreno proprio. A causa dell’ingente mole di primitive rappresentata dal nostro progetto abbiamo riscontrato evidenti difficoltà di “rendering” (generazione di un'immagine a partire da una descrizione matematica di una scena tridimensionale interpretata da algoritmi che definiscono il colore di ogni punto dell'immagine) del server di Second Life. Il metamondo infatti ha come obiettivo quello di supportare un’architettura 87 Capitolo 6: Conclusioni massiva online tramite la modellazione parametrica degli oggetti sviluppati al suo interno. Per realizzare la struttura con un numero basso di prim abbiamo cercato, ove possibile, di effettuare una riduzione attraverso un metodo chiamato “primfficiency”. Questo ci permette, lavorando su di una sola primitiva, di modellarla, con operazioni di taglio ed estrusione, in modo tale da produrre gli stessi oggetti con un numero minore di elementi. Oltre alla classica metodologia abbiamo effettuato uno studio per utilizzare particolari tecnologie, fruibili all’interno di questo metamondo, come le “megaprim” e le “sculpt”. Entrambi i metodi possono garantire un elevato risparmio di primitive, ma riscontrano problemi durante la modellazione dell’oggetto essendo di scarsa adattabilità ad una realizzazione complessa. Il server di Second Life infatti deve garantire una renderizzazione delle immagini pressoché immediata: oggetti quali sculpt e megaprim, a causa della loro complessità, lo porterebbero ad un rallentamento e questo risulta non soddisfare i nostri canoni. Dopo un accurato studio per trovare un’alternativa a questi metodi abbiamo valutato una tra le realizzazioni più imponenti all’interno di SL, la Basilica di Assisi. In questo complesso per implementare dettagli architettonici similari al nostro progetto, come le volte, sono state utilizzate un numero elevatissimo di primitive. Quindi abbiamo deciso di non introdurle nella nostra struttura, perché l’avrebbero appesantita ulteriormente, senza arrecare un vantaggio reale. Per questo motivo abbiamo orientato l'applicazione verso una minor ricerca del dettaglio. I particolari che abbiamo escluso dalla riproduzione potevano esser riportati come texture, questo però avrebbe provocato la perdita dell’immersività, di conseguenza abbiamo preferito non aggiungerli. I risultati ottenuti dimostrano che è possibile riprodurre su Second Life qualsiasi cosa esista nel mondo reale. I mondi virtuali differiscono dalla comunicazione basata sul testo dei browser, infatti danno la possibilità di interagire, in tempo reale, con l’ambiente che circonda l’utente. Con questa tecnologia possiamo riprodurre non solo foto e video come con i comuni programmi di grafica tridimensionale, ma le figure che visualizziamo a schermo occupano realmente uno spazio e possono essere animate mostrando i movimenti degli elementi man mano che vengono effettuati. 88 Capitolo 6: Conclusioni 6.2 Sviluppi futuri Il progetto dà la possibilità di visitare virtualmente l'edificio, affinché gli utenti possano visionarlo direttamente da un computer in maniera più completa anche in fase di orientamento. La struttura sarà utilizzata anche come contenitore di progetti didattici futuri, volti ad ammobiliare e arricchire gli ambienti dell'edificio. Risulterà essere un fulcro operativo al quale potranno appoggiarsi e fare riferimento alcuni agenti già realizzati che hanno come funzione quella di esplorare il mondo circostante. In futuro si potrà rendere l’edificio attivo, introducendo opportuni script la struttura potrà diventare un agente passivo e reagire a diversi tipi di sollecitazioni come reazioni ai comportamenti degli avatar. Grazie all'ottimo editor grafico presente in SL abbiamo avuto a livello didattico la capacità di lavorare in modo agevole tramite l'assemblaggio di primitive, quindi anche di sviluppare conoscenze per l'utilizzo dei software attualmente impiegati per l'editing grafico. 89 Capitolo 6: Conclusioni 90 Bibliografia Bibliografia [C2.1] Wikipedia, “Cyberspace”, “http://en.wikipedia.org/wiki/Cyberspace” [C2.2] Wikipedia, “Neuromante”, “http://it.wikipedia.org/wiki/Neuromante” [C2.3] Gino Roncaglia, “Dal reale al virtuale”, “http://www.mediamente.rai.it/mediamentetv/learning/ed_multimedial e/lezioni/05/index.htm#Dal_reale_al_virtuale_e_ritorno” [C2.4] Wikipedia, “Avatar”, “http://it.wikipedia.org/wiki/Avatar” [C2.5] Wikipedia, “Virtual Reality”, “http://en.wikipedia.org/wiki/Virtual_reality” [C2.6] Benjamin Woolley, “Mondi Virtuali”, “http://manigaultpessoa.blogspot.com/2007/11/realt-virtuale-unadefinizione-2_06.html” [C2.7] NoemaLab, ”Realtà virtuale”, “http://www.noemalab.org/sections/ideas/ideas_articles/pagano.html” [C2.8] William R. Sharman & Alan B. Craig, “Understanding Virtual Reality”,“http://www.amazon.co.uk/gp/reader/1558603530/ref=sib_d p_pt#reader-link” [C2.9] Blizzard, “World of Warcraft”, “http://www.worldofwarcraft.com/” [C2.10] Microsoft, “age of mitology”, “http://www.macsoftgames.com/products/age_of_myth/macsoft-aompage.html” [C2.11] Gameforge Productions GmbH, “Travian”, “http://www.travian.it/” [C2.12] Gameforge Productions GmbH, “Ogame”, “http://ogame.it/” 91 Bibliografia [C2.13] EA Game, “”the sims 2”, “http://www.thesims2.it/” [C2.14] Wikipedia, “Maxis”, ”http://it.wikipedia.org/wiki/Maxis” [C2.15] Wikipedia, “EA_games”, “http://it.wikipedia.org/wiki/EA_Games” [C2.16] Wikipedia, “The Sims 2”, “http://it.wikipedia.org/wiki/The_Sims_2” [C2.17] Areae, “Metaplace”, “http://www.areae.net/” [C2.18] Raph Koster, “Metaplace”, ”http://www.raphkoster.com/2007/09/18/metaplace/ [C2.19] Wikipedia, “Ultima online”, “http://en.wikipedia.org/wiki/Ultima_Online” [C2.20] Gaia Bottà, “metaplace, micromondi in rete”, “http://puntoinformatico.it/canali.asp?idc=102” [C2.21] Diego d'Andria, “metaplace, crea il tuo mondo virtuale”, “http://uovooggi.blogspot.com/2007/09/metaplace-crea-il-tuo-mondovirtuale.html” [C2.22] Linden Researc Inc., “Second Life”, “http://www.secondlife.com/” [C2.23] Linden Researc Inc., ”Linden Lab” , ” http://lindenlab.com/” [C2.24] Wikipedia, “Philip Rosedale”, “http://en.wikipedia.org/wiki/Philip_Rosedale” [C3.1] Autodesk, “3D Studio Max”, “http://www.autodesk.com/3dsmax” [C3.2] Wikipedia, “Half Life 2”, “http://it.wikipedia.org/wiki/Half-Life_2” [C3.3] Wikipedia, “Oblivion”, “http://it.wikipedia.org/wiki/Oblivion” [C3.4] Wikipedia, “Max Payne 2”, “ http://it.wikipedia.org/wiki/Max_Payne_2 [C3.5] Wikipedia, “Vengeance”, “http://it.wikipedia.org/w/index.php?title=Tribes:_Vengeance&action =edit” [C3.6] Wikipedia, “3D Studio Max”, “http://it.wikipedia.org/wiki/3D_Studio_Max” 92 Bibliografia [C3.7] Montefusco Laura, “Metodi numerici per la grafica 1 e 2”, “http://www.csr.unibo.it/users/docenti/montefusco_laura” [C3.8] Second Life - Italia, “Second Life Build”, “http://www.secondlifeitalia.it/index.php?option=com_content&task=view&id=41&Itemid=3 0” [C3.9] Università di bologna, “Palazzo Mazzini-Marinelli”, “http://www.archiviostorico.unibo.it/template/listImmagini.asp?IDFol der=156&LN=IT” [C3.10] The Gimp Team, “Gimp”, “http://www.gimp.org/windows/” [C4.1] Giorgio Casadei, “Giorgio Casadei”, “http://www.cs.unibo.it/~casadei/index.html” [C4.2] Stefano Cacciaguerra, “Stefano Cacciaguerra”, “http://www.cs.unibo.it/~scacciag/” [C4.3] Second Life Italia, “Primitive”, “http://www.secondlifeitalia.com/wiki/Primitive” 93