riproduzione virtuale degli interni dell`edificio del

Transcript

riproduzione virtuale degli interni dell`edificio del
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 INTERNI
DELL’EDIFICIO DEL CORSO DI LAUREA
Relazione finale in:
INTELLIGENZA ARTIFICIALE
Relatore:
Presentata da:
Prof. Giorgio Casadei
Correlatore:
Dr. Stefano Cacciaguerra
Sessione III
Anno Accademico 2006/2007
Marco Tassani
Ai miei genitori, Massimo e Patrizia,
che mi hanno permesso nello studio, come nella vita,
di crescere con serenità.
A mia sorella Linda
che mi ha aiutato a superare i momenti difficili.
A Cecilia,
per l’affetto sempre vivo
e per il supporto in questi primi tre anni di Noi.
Ai miei nonni Rina, Alvaro e Pino
che hanno seguito con passione i miei anni di studio
e vivono in prima persona i miei impegni.
Ai miei Zii Milena e Daniele
e i miei cugini Enrico e Annalisa
che sono un punto di riferimento fondamentale per me.
Al Lombo,
grazie per la collaborazione in questi anni di studio
e per l’amicizia dimostrata.
A Pira, Teo, Bega, Claudia, Lele, Para,Monica e tutti gli altri
che mi hanno aiutato a portare al termine gli studi.
A Stefano,
un sentito ringraziamento
per la pazienza dimostrata, l’umanità
e la fondamentale collaborazione scientifica.
Sommario
Sommario
1 INTRODUZIONE.............................................................................................. 7
1.1 CONTRIBUTI ........................................................................................................... 8
1.2 PROMEMORIA ........................................................................................................ 8
2 I MONDI VIRTUALI ...................................................................................... 11
2.1 I MUD.................................................................................................................. 12
2.2 I MMORPG ......................................................................................................... 14
2.3 ETICA NEI MONDI VIRTUALI ............................................................................... 15
2.3.1 Mondi Virtuali di Educazione ...................................................................... 16
2.3.2 Mondi Virtuali di Intrattenimento................................................................ 17
2.3.3 Mondi Virtuali di Simulazione ..................................................................... 19
2.3.3.1 Metaplace.......................................................................................................... 19
2.3.3.2 The Sims Online ............................................................................................... 20
2.3.3.3 Second Life ....................................................................................................... 22
3 PROGETTAZIONE ......................................................................................... 27
3.1 CREAZIONE DEL CORSO DI LAUREA CON 3DS MAX ............................................ 29
3.2 DIFFERENZE TRA 3D STUDIO MAX E SECOND LIFE ............................................ 31
3.3 INTRODUZIONE ALLA COSTRUZIONE IN SECOND LIFE ......................................... 33
3.3.1 Le primitive .................................................................................................. 34
3.3.1.1 Le Megaprims ................................................................................................... 35
3.3.1.2 Sculpted Prims .................................................................................................. 36
3.3.2 Le operazioni basilari .................................................................................. 37
3.3.3 Proprietà delle Primitive ............................................................................. 39
3.3.3.1 La Scheda General ............................................................................................ 39
3.3.3.2 La Scheda Object .............................................................................................. 40
1
Sommario
3.3.3.3 La Scheda Features............................................................................................42
3.3.4 Le Textures .................................................................................................. 43
3.3.5 Assemblare gli Oggetti ................................................................................ 45
3.3.6 Salvare gli oggetti ....................................................................................... 46
3.3.7 L’inventario ................................................................................................. 46
3.4 OSSERVAZIONE E MODELLAZIONE ..................................................................... 47
4 IMPLEMENTAZIONE ..................................................................................... 51
4.1 RIDUZIONE DELLE PRIMITIVE .............................................................................. 51
4.1.1 I Muri........................................................................................................... 52
4.2 PRIMFFICENCY .................................................................................................... 54
4.2.1 Scale ............................................................................................................ 55
4.2.2 Le finestre .................................................................................................... 57
4.2.3 Le porte interne ........................................................................................... 59
4.2.3.1 Lo script delle Porte ..........................................................................................60
4.2.4 Altre porte.................................................................................................... 63
4.3 SVILUPPO DELL’EDIFICIO .................................................................................... 64
4.3.1 La struttura base ......................................................................................... 66
5 CASI DI STUDIO............................................................................................ 69
6 CONCLUSIONI .............................................................................................. 81
6.1 SVILUPPI FUTURI ................................................................................................. 82
BIBLIOGRAFIA ................................................................................................ 83
2
Sommario Immagini
Sommario Immagini
2.1 Avatar al PC ............................................................................................. 12
2.2 Esempio di MUD...................................................................................... 13
2.3 Immagine tratta da World of Warcraft ...................................................... 15
2.4 Immagine tratta da Ultima Online............................................................. 17
2.5 Immagini di Ogame e Gladiatus................................................................ 18
2.6 Logo di Metaplace .................................................................................... 19
2.7 Logo di The Sims Online .......................................................................... 21
2.8 Logo di Second Life ................................................................................. 22
2.9 Finestra di caratterizzazione del proprio avatar ......................................... 23
2.10 Collaborazione tra due Avatar in costruzione .......................................... 24
2.11 Dieci Linden Dollar ................................................................................ 25
2.12 Conferenza su Second Life ..................................................................... 26
3.1 Palazzo Mazzini Marinelli ........................................................................ 27
3.2 Immagini di Max Payne 2 e Half Life 2 .................................................... 29
3.3 Immagine tratta dal film Matrix ................................................................ 30
3.4 Foto del Corso di Laurea con 3Ds Max e con Second Life ........................ 32
3.5 Icona Build Disattivata ............................................................................. 33
3.6 Menu a disco ............................................................................................ 33
3.7 Interfaccia di creazione oggetto ................................................................ 34
3.8 Esempio di Megaprim............................................................................... 35
3.9 Finestra di sculpting.................................................................................. 36
3
Sommario Immagini
3.10 Scale formate con le sculpt...................................................................... 37
3.11 Tool di modifica oggetto ......................................................................... 38
3.12 La scheda General................................................................................... 39
3.13 La Scheda Object .................................................................................... 40
3.14 Oggetto twistato...................................................................................... 41
3.15 Scheda Features ...................................................................................... 42
3.16 Editor di Texture..................................................................................... 43
3.17 Esempio di Offset, ottenuto facendo scorrere la stessa texture ................. 44
3.18 Esempio di blocco di prims prima e dopo il linking................................. 45
3.19 Esempio di salvataggio di oggetto ........................................................... 46
3.20 Inventario su Second Life........................................................................ 47
3.21 Planimetria dell’edificio.......................................................................... 48
3.22 Misura della superficie di alcune stanze del Secondo Piano..................... 48
4.1 Particolare sulle smussature dei muri ........................................................ 52
4.2 Differenza tra due possibili muri ............................................................... 53
4.3 Esempio d'incastro di porte ....................................................................... 53
4.4 Esempio di Struttura di un castello con un numero limitato di prims ......... 55
4.5 Due scalini formati con una sola prim ....................................................... 55
4.6 Gli scalini applicati al nostro progetto ....................................................... 56
4.7 Esempio di creazione scalini in piani successivi ........................................ 56
4.8 Finestra Costruita con otto Primitive ......................................................... 57
4.9 Stessa finestra con cinque prim ................................................................. 58
4.10 Effetto cornice ........................................................................................ 58
4.11 Porta Interna ........................................................................................... 59
4.12 Apertura della porta ................................................................................ 61
4.13 Chiusura Porta ........................................................................................ 62
4.14 Porta interna laboratori............................................................................ 63
4.15 Prim ottenuta con Path e Hollow ............................................................. 64
4.16 Esempio di costruzioni con Texture di planimetria .................................. 64
4.17 Immissione di Guida ............................................................................... 65
4.18 Creazione guida in Gimp......................................................................... 65
4.19 Operazione di ghigliottina ....................................................................... 66
4.20 Esempio di blocco con texture................................................................. 66
4
Sommario Immagini
4.21 Blocchi con le caratteristiche dei piani intermedi .................................... 67
4.22 Fase della creazione della struttura di base .............................................. 67
4.23 Pavimentazione del Piano Terra.............................................................. 68
4.24 Pavimento Graduato nella SandBox Denmark International .................... 68
5.1 Scale reali con corrimano.......................................................................... 70
5.2 Scale su Second Life................................................................................. 70
5.3 Corridoio con porta a vetri ........................................................................ 71
5.4 Corridoio con porta a vetri su Second Life ................................................ 72
5.5 Porta dell’Atrio al Piano terra ................................................................... 73
5.6 Distributori automatici.............................................................................. 73
5.7 Distributori automatici nella realtà............................................................ 74
5.8 Confronto tra archi.................................................................................... 74
5.9 Porta esterna ai Laboratori Superiori......................................................... 75
5.10 Inizio della costruzione degli interni del piano terra ................................ 76
5.11 Immagine degli interni............................................................................ 76
5.12 Vista all’inizio della costruzione del Primo Piano ................................... 77
5.13 Particolare sulla costruzione degli interni................................................ 77
5.14 Interni dell’edificio ................................................................................. 78
5.15 Primo piano in sezione............................................................................ 78
5.16 Vista posteriore degli interni ................................................................... 79
5.17 Struttura completa con particolare sugli interni ....................................... 79
5.18 Interni con selezione ............................................................................... 80
5
Introduzione
1 Introduzione
Il termine “Mondo Virtuale” indica una realtà simulata, capace di mettere in
comunicazione i computer di tutto il mondo in un unico Network e di permettere agli
utenti di interagire tra loro attraverso i propri “avatar”. La tecnologia ha permesso di
sviluppare mondi Virtuali tridimensionali, in cui utenti connessi da ogni parte del
pianeta possono esplorare zone e scambiarsi informazioni.
L’Avatar è la rappresentazione virtuale dell’utente e può essere modificato dal
possessore dell’account, in modo da personalizzare il più possibile il proprio “Io
Virtuale”.
L’ambiente di sviluppo utilizzato nel nostro progetto è stato Second Life, un
mondo virtuale tridimensionale multi-utente online creato nel 2003 dalla società
americana Linden Lab.
Questo metamondo è il “Social Environment” per eccellenza, la sua prerogativa
è permettere agli utenti, che si affacciano a questa realtà, di interagire con altri Avatar e
sviluppare una vita simile a quella reale. Il metamondo, infatti, fornisce ai “residenti”
gli strumenti per creare e aggiungere contenuti grafici: oggetti, fondali, audiovisivi.
La peculiarità di Second Life è quella di essere stato creato interamente dagli
utenti, il motto di questo ambiente virtuale è, infatti, “Our world, your imagination”.
Una caratteristica unica in second Life consiste nel dare la possibilità agli utilizzatori di
usufruire dei diritti d'autore sulle proprie creazioni.
Grazie a questa opportunità possiamo assistere ogni giorno a migliaia di
compravendite di oggetti tra residenti: un vero e proprio business che ha come moneta
virtuale il Linden Dollar.
7
Capitolo 1
1.1 Contributi
Il punto focale di questo lavoro è la progettazione e la realizzazione di una
struttura online che permetta ai futuri studenti universitari di interagire e collaborare in
un mondo virtuale. La rete, infatti, sta cominciando ad essere percepita sempre meno
come tecnologia e sempre più come servizio.
Oggi comunicare usando Internet è diventata un’abitudine, grazie alla velocità
della trasmissione d’informazioni e alla sua forte accessibilità. Il punto di forza della
rete è di poter “incontrare”, scambiare informazioni e collaborare in tempo reale con
utenti di tutto il mondo, rimanendo comodamente seduti a casa propria.
Queste considerazioni ci suggeriscono una riflessione sulla possibilità di rendere
disponibile uno strumento per realizzare l’edificio dell’università virtuale, simulato via
rete, anziché descriverlo attraverso pagine web. Diviene necessaria la possibilità di fare
interagire lo studente con un opportuno ambiente virtuale che ne simuli il contesto
tipico: una sorta di Corso di Laurea Virtuale (i.e. CdL Virtuale) che l’utente può
frequentare comodamente seduto a casa sua. L’ambiente deve essere più interattivo di
un portale e deve dare al visitatore la percezione di trovarsi in un vero e proprio
labirinto di stanze tematiche. Le stanze rappresentano i differenti spazi del CdL
Virtuale come le aule, i laboratori, gli uffici dei docenti e le segreterie.
L’utente attraverso l’avatar potrà maturare esperienze e raffigurarsi all’interno
del corso di laurea. La possibilità di interagire eventualmente con altri giocatori
promuove lo studio di comportamenti sociali umani supportando una nuova forma di
comunicazione. In questo ambiente, l’utente deve poter esprimere se stesso lasciando
una propria traccia indelebile che va dal commento delle attività svolte fino alla
proposta di progetti da realizzare all’interno dell’ambito tematico del CdL stesso.
Questo strumento dovrebbe promuovere la capacità di lavorare in gruppo e la
possibilità di sperimentare una fase progettuale delle soluzioni. Pertanto, l’utente
sarebbe spronato dal sistema e dai suoi compagni virtuali a scrivere un contributo
comprensibile ed attuabile. Come l’attuale Web permette di configurare un server per
condividere documenti di testo, immagini, video, e audio, così, dovrà essere possibile
attivare un gestore del CdL Virtuale dove inserire nuove porzioni di spazio (come aule,
laboratori, uffici, punti ricreativi) per l’interazione tra gli avatar e l’ambiente. In questo
modo, si vuole ripresentare l’idea che sottende alla possibilità di accedere alle risorse
8
Introduzione
del WWW, tramite browser, usufruendo opportunamente di interfacce 3D che
permettano la navigazione all’interno di mondi virtuali.
1.2 Promemoria
Andiamo a descrivere gli argomenti trattati nei prossimi Capitoli:
•
Nel Capitolo 2 viene affrontata la storia dei Mondi Virtuali e la loro
distinzione in mondi di Educazione, Intrattenimento e Simulazione.
Vengono descritte, inoltre, le motivazioni per cui abbiamo scelto Second
Life come ambiente di sviluppo.
•
Nel Capitolo 3 vengono affrontati gli aspetti progettuali della nostra Tesi
con particolare importanza riguardo le possibilità di creare e modellare
oggetti in Second Life.
•
In seguito, nel Capitolo 4, abbiamo affrontato i problemi inerenti allo
sviluppo, la necessità di avvalerci del numero minore possibile di primitive
attraverso la primfficiency e le fasi della costruzione. Inoltre viene
rappresentata nel dettaglio la funzione che ci permette di animare le porte
nel progetto.
•
Nel Capitolo 5 abbiamo confrontato alcuni particolari del nostro progetto
con la realtà e riportato le differenze ed i limiti di Second Life .
•
Il Capitolo 6 conclude questo studio di Tesi e propone alcuni sviluppi futuri
del progetto realizzato.
9
I Mondi Virtuali
2 I Mondi Virtuali
Un mondo virtuale è una realtà simulata, basata sui computer, creata affinché
gli utenti possano abitarla e interagire tra loro. L’espressione “realtà virtuale” può
essere erroneamente considerata un ossimoro; occorre invece chiarire che quando
usiamo il termine virtuale, intendiamo sottolineare che questi fenomeni sono strutturati
sul modello costituito dalla realtà fisica.
I vari collegamenti fisici avvengono realmente nel Cyberspazio, ovvero nella
dimensione immateriale che mette in comunicazione i computer di tutto il mondo in un
unico network e permette agli utenti di interagire tra loro. Il termine trae origine dalla
fantascienza cyberpunk, corrente letteraria e artistica degli anni ottanta, che descriveva
il Cyberspazio come una serie di realtà virtuali condivise da utenti profondamente
immersi in tali dimensioni. Oggi per cyberspazio è comunemente inteso il "mondo di
Internet" in senso generale [CYB05].
Nei mondi virtuali troviamo uno “spazio virtuale”, che non è uno spazio fisico,
ma è strutturato in modo simile ad esso. All’interno dello spazio virtuale possono
nascere relazioni analoghe a quelle che istituiamo abitualmente in un mondo reale:
relazioni quali vicinanza e lontananza, sinistra e destra, sopra e sotto.
Come il nostro corpo fisico può spostarsi in uno spazio reale, così una sua
rappresentazione (o Avatar) può spostarsi all'interno dello spazio virtuale,
avvicinandosi o allontanandosi dai luoghi e dagli oggetti che vi si trovano.
L'avatar è un'immagine scelta per rappresentare la propria utenza in
community, luoghi di aggregazione, discussione, o di gioco on-line. La parola nel
11
Capitolo 2
gergo di internet si riferisce alla rappresentazione digitale di chi sta visitando
l'ambiente.
2.1 Avatar al PC
Questi mondi virtuali traevano ispirazione dai giochi di ruolo da tavola, come
Dungeons & Dragons, che proprio negli anni ‘70 avevano raggiunto una notevole
popolarità. La vera innovazione nel settore dei mondi virtuali si ebbe nel 1978, quando
nell’Università di Essex, in Inghilterra, fece la comparsa il primo Multi-User Dungeon
(MUD), ideato da R. Trubshaw. Quest’applicazione era composta unicamente da
pagine di testo, che permettevano agli utilizzatori di spostarsi in zone virtuali diverse e
di dialogare tra loro. La comparsa della prima World Wide Web favorì lo sviluppo di
questo tipo di mondo, riuscendo a coinvolgere utenti provenienti da vari Paesi in un
unico ambiente virtuale. Tra i primissimi mondi virtuali citiamo MUD creato nel 1978
da Roy Trubshaw e Richard Bartle e Zork, distribuito dalla Infocom.
2.1 I MUD
Il termine MUD identifica una categoria di giochi di ruolo eseguiti su Internet
da più utenti attraverso il PC. Ogni utente controlla un personaggio che si muove in un
mondo virtuale organizzato in stanze e zone, interagisce con i personaggi degli altri
utenti o con i BOT (i.e. agenti) e progredisce (acquisendo abilità). Questa tecnologia è
stata resa possibile grazie all’avvento dei modem per il collegamento “in rete” e ad una
notevole diminuzione del prezzo del personal computer.
12
I Mondi Virtuali
I MUD possono essere testuali o grafici e sono orientati al combattimento o alla
socializzazione con altri utenti. Riassumendo un MUD è un programma per computer
nel quale gli utenti possono connettersi, giocare ed esplorare nuovi mondi.
2.2 Esempio di MUD
Un MUD Grafico è un MUD che utilizza la computer grafica per rappresentare
parte degli ambienti in cui si svolge la simulazione. Naturalmente i primi esemplari di
questa categoria erano sviluppati con una grafica a due dimensioni, come possiamo
notare nella Fig. 2.1, i primi mondi virtuali tridimensionali, infatti apparvero una decina
di anni dopo, negli anni ’90.
In questi mondi ogni utente controlla un proprio Avatar attraverso il quale può
muoversi, parlare con altri personaggi, esplorare aree, risolvere enigmi, evitare trappole
e a volte avere anche una propria dimora dove riposare e riporre gli oggetti. Uno dei
primi MUD grafici fu Habitat, scritto nel 1985 da Randy Farmer e Chip Morningstar
per la Lucasfilm. L’evoluzione dei MUD ha portato alla nascita di nuovi ritrovati,
sempre più tecnologicamente avanzati e interattivi, tra questi citiamo i MUSH e i
MUCK.
I MUSH (multi-user shared habitat) derivano dai MUD e risalgono ai primi anni
'90. Sono più orientati all'interpretazione rispetto ai MUD classici, infatti i giocatori
13
Capitolo 2
sono molto attenti a creare i propri personaggi il più accuratamente possibile, per
personalizzare maggiormente la loro vita virtuale..
I MUCK (Multi User Chat Kingdom) derivano anch’essi dai MUD, ma
enfatizzano l'interazione tra gli utenti piuttosto che il compiere azioni o porre domande.
Sono in sostanza delle Chat ambientate in mondi virtuali che favoriscono lo scambio
d’informazioni e il dialogo tra utenti di tutto il mondo [MU02].
2.2 I MMORPG
L’evoluzione odierna dei MUD è rappresentata dai MMORPG. Il termine
identifica un gioco di ruolo in rete, nel quale migliaia di giocatori possono interagire
interpretando personaggi che si evolvono insieme al mondo persistente che li circonda
ed in cui vivono.
Il genere dei MMORPG diventa veramente popolare nel 1997, quando negli
Stati Uniti nasce Ultima Online, una simulazione tridimensionale della vita medievale,
creata da Richard Garriot. Ultima Online conterà fino a 160mila abbonati che pagano
dieci dollari a testa per far parte di quel mondo, ripartiti su vari server che possono
ospitare 16mila giocatori ciascuno. Il gioco ha come personaggi nobili che si occupano
di politica, artigiani che curano il commercio e soldati che garantiscono la sicurezza. A
governare il tutto c’è la figura di un monarca: Lord Bruitisi, che naturalmente è lo
stesso Garriot [MON06].
Molto comune in questo tipo di giochi è l'ambientazione fantasy: il mondo è
spesso popolato da diverse razze (elfi, orchi, nani, umani), che possono essere scelte dal
giocatore e che costituiscono fazioni nemiche in guerra tra loro. L'eterna
contrapposizione tra bene e male è rappresentata principalmente dalla lotta di giocatori
contro i mostri, ma in ogni MMORPG c'è un obiettivo che va al di là del semplice
player versus monster (PvM, giocare contro il mostro). I mostri, infatti, rappresentano
il mezzo per far crescere di livello il proprio personaggio, ogni volta a che un utente ne
sconfiggerà uno, avrà diritto a punti esperienza, che aumenteranno le capacità
dell‘avatar. Come in un mondo reale ci sono delle eccezioni: esistono player, infatti,
che si accontentano di collezionare oggetti rari.
14
I Mondi Virtuali
L’obiettivo finale è quello di acquisire più capacità sugli altri player, in modo da
ottenere un predominio territoriale;
2.3 Immagine tratta da World of Warcraft
2.3 Etica nei Mondi Virtuali
Sono decine di migliaia le persone che ogni giorno dedicano il loro tempo a
questo tipo di attività su Internet, il cui successo è dovuto soprattutto alla presenza delle
comunità on-line. In un mondo virtuale un gruppo di giocatori è spesso organizzato in
“clan” o in “gilde”, questo favorisce l’aggregazione e il senso di appartenenza, creando
un forte legame fra gli utenti. Questo legame tende a protrarsi nel tempo; spesso accade
che i clan per rimanere uniti si trasferiscano in massa su altri giochi, oppure si
incontrino fuori dal gioco, nella vita reale.
Secondo il sociologo Canadese De Kerckhove, l’autentico uomo virtuale è
quello "consapevole del fatto che il mondo virtuale che egli contribuisce a fondare
stando nella rete è nello stesso tempo un mondo reale". Lo stesso De Kerckhove
sostiene che la virtualità telematica si compone di tre elementi essenziali, che ne
costituiscono una sorta di “grammatica”: la connettività, l’ipertestualità e l’interattività.
A parere del Sociologo, il terzo elemento è di gran lunga il più importante: “Quello che
15
Capitolo 2
integrando gli altri due fa diventare reale il virtuale e, per così dire, restituisce una
corporeità a colui che viaggia sulla rete”.
Sempre secondo De Kerckhov, “la virtualità è l’esempio palmare della
connessione tra cervello fisico e mente immateriale, cui le reti riescono a dare
consistenza; ma è anche luogo d’incontro fra persone, nel quale un immaginario
diventa sempre più reale” [DEIA4].
Con il passare del tempo e la nascita di nuove realtà virtuali, si sono delineate
tre categorie di mondi virtuali alle quali utenti provenienti da tutto il mondo possono
accedere; queste sono: educazione, intrattenimento e simulazione.
2.3.1 Mondi Virtuali di Educazione
I mondi virtuali dedicati all’educazione hanno come fine quello di istruire i
propri utenti tramite un approccio ludico degli argomenti trattati. Questo processo
prende il nome di Edutainment. Il termine è, infatti, un neologismo nato dalla fusione
delle parole educational (educativo) ed entertainment (divertimento), ed è stato
utilizzato inizialmente per indicare le forme di comunicazione ludica, finalizzate alla
didattica. Il concetto si è con il tempo esteso a tutto quello che può essere comunicato,
grazie al gioco, in modo simpatico e produttivo.
Dal punto di vista informatico edutainment ha il significato di educare e di far
socializzare le persone tramite differenti forme d’intrattenimento come siti web,
videogames e mondi virtuali. Alcuni mondi virtuali lo utilizzano come apprendimento
sperimentale utilizzabile nella formazione aziendale, questi giochi, infatti, sviluppano
capacità operative e portano a:
– 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.
Questa categoria di mondo virtuale ha innanzi a sé un immenso terreno di
sviluppo perché accomuna gli scenari tridimensionali di ultima generazione, tanto
16
I Mondi Virtuali
allettanti per i giovani, alla possibilità di apprendere nozioni utili alla crescita personale
e professionale.
2.3.2 Mondi Virtuali di Intrattenimento
I mondi virtuali di Intrattenimento, a differenza di quelli sopra citati, non hanno
fini didattici, ma il loro unico obiettivo è di accogliere (spesso a pagamento) un numero
arbitrario di utenti, offrendo ambientazioni fantasy e dinamiche di gioco tradizionali
degli RPG (i.e. Giochi di ruolo).
Il giocatore agisce nel mondo virtuale, svolgendo una serie di quest (i.e.
compiti) che gli vengono assegnati. Procedendo di missione in missione, progredisce
nelle proprie capacità di combattimento e acquisisce nuovi oggetti che può utilizzare
direttamente o commerciare con altri giocatori.
Questo tipo di mondo virtuale è PowerPlay: lo scopo principale, infatti, è quello
di aumentare il proprio livello più velocemente possibile per diventare “il più forte”.
Esistono già numerosi ambienti virtuali che sfruttano queste possibilità, come Ultima
Online; questi, però, sono mondi chiusi in cui la possibilità di introdurre elementi di
grafica, di logica o regole di comportamento fisico dell'ambiente sono veramente
limitate.
2.4 Immagine tratta da Ultima Online
17
Capitolo 2
Un altro esempio di PowerPlay è rappresentato dalla categoria dei
BBMMORPG (Browser Based Massive Multiplayer Online Role-playing Games).
Questi mondi virtuali consistono di enormi database online raffiguranti simulazioni di
battaglie, nei quali l’utente ha come scopo quello della ricerca, dello sviluppo, ma
soprattutto quello della massima espansione.
La differenza principale rispetto ai MMORPG è che qui non si ha un vero e
proprio avatar, ma una serie di contatori sincronizzati che descrivono le operazioni
effettuate. L’utente è lo stratega che decide in che modo investire le proprie risorse e
muovere le proprie truppe; anche in questi giochi per raggiungere un predominio
territoriale è fondamentale una buona alleanza.
Questa categoria di mondi virtuali si adatta a diversi tipi di utente: è possibile
collegarsi per pochi minuti al giorno e decidere le strategie migliori per il proprio
villaggio o rimanere connessi ed avere un riscontro in tempo reale dello stato del
proprio account.
I contatori che scandiscono il tempo necessario all’operazione effettuata (es.
creazione di un soldato), infatti, rimangono attivi a prescindere dallo stato (online o
disconnesso) dello User.
Alcuni tra i BBMMORPG più famosi sono Travian (ambientato nel Medioevo),
Ogame (ambientato nello spazio), BiteFight (un mondo di vampiri) e Gladiatus
(ambientato nell’antica Roma).
2.5 Immagini di Ogame e Gladiatus
18
I Mondi Virtuali
2.3.3 Mondi Virtuali di Simulazione
Esistono mondi virtuali nei quali non è fondamentale acquisire un predominio
sugli altri, ma lo scopo principale è quello di costruire una vera e propria “seconda
vita” on-line. In questi mondi è interessante esplorare zone e conoscere altri utenti
scambiando informazioni con essi, arricchendo il proprio bagaglio personale. Una
possibilità che è tipica di questo ambiente virtuale è quella di poter costruire qualsiasi
oggetto e condividerlo con altri utenti on-line.
Su questo punto ci siamo soffermati, in quanto il nostro progetto prevedeva la
riproduzione dell’Edificio del Corso di Laurea di Scienze dell’Informazione in un
mondo Virtuale.
Per sviluppare questo progetto abbiamo cercato nel web diversi tipi di
programma e, dopo un’attenta scrematura, solo tre di essi potevano risultare utili per i
nostri obiettivi:
-
MetaPlace;
-
The Sims Online;
-
Second Life.
2.3.3.1 Metaplace
2.6 Logo di Metaplace
Metaplace è un mondo virtuale di ultima generazione. I netizen (i.e. abitanti
della rete) possono utilizzare spazi online messi a disposizione per sviluppare
19
Capitolo 2
un'infrastruttura aperta sulla quale edificare e un motore capace di tradurre ogni
elemento creato in un elemento comprensibile da un browser.
“Ogni mondo si può pensare come una fosse un server, ogni oggetto si può
pensare come un link”, ha spiegato Koster, già creatore di Ultima Online. Questi
micromondi a loro volta agiranno come media: ognuno sarà veicolo di contenuti scelti
dal demiurgo (i.e. creatore) che l'ha implementato e potrà ospitare utenti che vogliano
interagire fra loro e con i contenuti [BOT23].
Ad esempio, dovrebbe essere possibile introdurre informazioni dal mondo reale
a quello virtuale o consentire lo scambio di messaggi da pagine HTML, e così via. Lo
spazio messo a disposizione degli aspiranti demiurghi potrà essere utilizzato come
strumento di business, ospiterà pubblicità, anch’essa in formato minimondo, con la
quale si potrà interagire. Agli utenti che invece vorranno sviluppare metamondi
commerciali verrà chiesto un contributo.
Metaplace ha come obiettivo quello di consegnare ai netizen gli strumenti
tecnologici per lo sviluppo e lasciare che siano questi ultimi a costruire il futuro del
web. Due le opportunità offerte ai creatori di Metaplace.
Per gli utenti più esperti sarà possibile animare il proprio spazio assemblando
stringhe di codice, modificando strutture esistenti, inserendo link, integrando servizi e
contenuti web esterni e costruendo dei client ad hoc.
Gli utenti meno esperti potranno comporre il proprio metamondo come fosse un
puzzle, attingendo a codice preconfezionato e a template o alle soluzioni sviluppate da
altri utenti, arricchendo il proprio spazio con forum o sbarramenti per rendere il mondo
privato, con wiki o Chat.
Questo metamondo avrà ottime possibilità di sviluppo in futuro, ma per ora non
permette nessun tipo di progetto, in quanto ancora in via di sperimentazione
(Metaworld è ancora in versione alfa). Per questo abbiamo preferito escluderlo dalla
lista dei software adatti alla creazione del nostro progetto, a vantaggio di altri mondi
virtuali quali Second Life o The Sims Online.
2.3.3.2 The Sims Online
The Sims Online è un gioco online multiplayer, nato dalla variazione del
popolare Gioco The Sims. E’ stato pubblicato dal Gruppo Electronic Arts e rilasciato
20
I Mondi Virtuali
nel Dicembre 2002. Il nome Sims rappresenta i veri protagonisti del mondo virtuale: gli
utenti sono, infatti, rappresentati da simulatori (da cui il nome) di vita, piccoli
personaggi completi di tratti fisici e caratteriali diversi tra loro, che nascono, vivono, si
riproducono e muoiono. I Sims abitano delle case (da costruire e arredare), hanno un
lavoro, guadagnano simoleon (i.e. la loro moneta) e vivono esistenze che ricordano
quelle delle persone vere [GIAN08].
2.7 Logo di The Sims Online
Il successo del gioco consiste, secondo alcuni, nella possibilità di creare da sé
vestiario, ricolorare mobilia o inventarsi pettinature e trucco e poi poterli scambiare online tra utenti o utilizzarli nel proprio gioco.
Il gioco, però, non è gratuito: dopo il primo mese per poter giocare è
obbligatorio pagare 9,99 Dollari. Gi avatar che in questo metamondo prendono il nome
di Sims, devono acquisire diverse skills (i.e. abilità) per guadagnare denaro e comprare
oggetti virtuali o più semplicemente, per interagire con altri utenti.
Le abilità possono essere incrementate più velocemente se diversi Sims
lavorano allo stesso Skill contemporaneamente. Ad esempio, per diventare Meccanico
è necessario leggere libri sulla Meccanica, per aumentare la propria Skill in carisma si
deve parlare da soli allo specchio, etc. Inoltre, grazie alla funzione “Compra”, può
essere arredato a piacimento l'interno e l'esterno della casa, con una serie di oggetti tra
cui lampadari, tv, PC, elettrodomestici, mobili, etc.
Tutto ciò rende the Sims Online completo: questo metamondo, infatti, può
essere inserito nelle categorie di Edutainment, Intrattenimento e Simulazione, perché
oltre ad imparare con le skills e ad interagire con altri sims, una volta diventati abili
costruttori è possibile edificare la propria casa nel proprio lotto di terreno limitato.
21
Capitolo 2
Le possibilità di questo mondo virtuale sono di tutto rispetto e molto allettanti,
ma il limite del lotto di terreno e il prezzo di abbonamento mensile al gioco distolgono
la nostra attenzione da The Sims, a vantaggio di Second Life.
La nostra scelta è dovuta al fatto che il nostro progetto risulterà molto esteso e
soprattutto, dovrà avere come caratteristica fondamentale l’accessibilità, resa
complicata dai costi di abbonamento di The Sims Online. La nostra scelta, quindi,
cadrà su un mondo virtuale accessibile, nel quale risulterà possibile edificare una
costruzione complessa.
2.3.3.3 Second Life
Second Life è un mondo virtuale, creato nel 2003 dalla Società californiana
Linden Lab. Il sistema fornisce ai suoi utenti (definiti “residenti”) gli strumenti per
creare e aggiungere nel “mondo virtuale” di Second Life nuovi contenuti grafici:
oggetti, fondali, fisionomie dei personaggi, audiovisivi.
2.8 Logo di Second Life
Ciò che distingue questo mondo virtuale dai normali giochi 3D online è che il
contenuto è interamente creato dagli utenti stessi. Gli incontri all’interno del mondo
virtuale appaiono, dunque, come reali scambi tra esseri umani attraverso la mediazione
“figurata” degli Avatar [SEC01].
L’avatar, sorta di corpo digitale, è incredibilmente dettagliato e permette una
ricca e completa identificazione, grazie ad una serie di parametri da impostare a proprio
piacimento. È possibile modificare in primo luogo l’altezza, la muscolatura, la
corporatura, per poi passare alla fisionomia del viso. In questa sezione sono possibili
22
I Mondi Virtuali
innumerevoli combinazioni, al fine di personalizzare al massimo il proprio avatar. La
caratterizzazione del proprio “io” virtuale è possibile anche attraverso l’uso di vestiti,
acquistabili online o realizzabili tramiti opportuni Tool di disegno.
2.9 Finestra di caratterizzazione del proprio avatar
Il nome dell’avatar consiste di First Name (i.e. nome) e Last Name (i.e.
cognome); il nome è scelto liberamente dall’utente, mentre il cognome deve essere
selezionato da una lista Last Name preimpostati.
Second Life è adatto ad ogni tipo di approccio: sia un creatore di contenuti 3D,
un imprenditore, uno sviluppatore di giochi, un artista, un programmatore, sicuramente
avranno enormi possibilità di sviluppo all’interno di questo mondo virtuale. Questo
perché il metamondo è una finestra rivolta verso il futuro, che accoglie chiunque
disponga di creatività.
Una vera e propria arte all’interno di Second Life è rappresentata dalla moda.
La possibilità di sviluppare indumenti di tutti i tipi partendo da Templates (i.e.
immagini di riferimento) o incollando oggetti al proprio Avatar, ci dà l’opportunità di
incontrare in rete giocatori con occhiali, catene, armi e borse. Questa funzione permette
di personalizzare ancora di più il proprio personaggio: è difficilissimo, infatti, trovare
su Second Life due personaggi uguali, proprio come nella vita reale.
23
Capitolo 2
All'interno di questo spazio online, tridimensionale, persistente e in continua
crescita, si può creare qualsiasi cosa in tempo reale e in collaborazione con gli altri
utenti.
2.10 Collaborazione tra due Avatar in costruzione
Second Life offre la possibilità di possedere e gestire terreni, progettare e
rivendere contenuti 3D. In questo mondo parallelo, infatti, la Linden Lab garantisce al
creatore del contenuto la possibilità di sfruttare su di esso i diritti d’autore, vendendo o
scambiando con altri utenti [LAB06].
Proiettare su appositi schermi on-line dei filmati in formato Real è
un’opportunità interessante su Second Life; questa funzione, purtroppo, è applicabile
solo se si è proprietari di un account premium e si agisce sul proprio terreno.
È possibile inoltre animare gli oggetti creati, grazie al Linden Script Language
(LSL), un linguaggio di programmazione simile al C-ansi, alquanto intuitivo che rende
molto semplice lo sviluppo di script (i.e. programmi). Il LSL è ampiamente descritto in
rete tramite un apposito wiki (i.e. enciclopedia creata dagli stessi utenti), che descrive
le funzioni con i relativi parametri e propone, per ognuna, un esempio applicativo.
Questo linguaggio permette di muovere oggetti e renderli interattivi, oltre ad associare
suoni ad azioni dell’Avatar e rappresenta un aspetto di Second Life fondamentale per il
nostro progetto. Il nostro obiettivo, infatti, consiste nel creare una struttura attiva
capace di interagire con gli utenti.
24
I Mondi Virtuali
Le compravendite su Second Life sono supportate da una moneta virtuale, il
Linden Dollar, che ha un valore fluttuante e può essere convertito in Dollari Americani
(1000 Linden sono circa 4 dollari). E’ possibile guadagnare Linden lavorando sul
metamondo come cameriere o barista, oppure vendendo le proprie creazioni. Questa
valuta virtuale può essere scambiata con denaro reale, dando vita a vere opportunità di
business.
2.11 Dieci Linden Dollar
In Second Life, proprio come nel mondo reale, ci sono innumerevoli occasioni
per spendere soldi: shopping center, teatri, casinò, night club, ristoranti, alberghi.
Questo significa che vi sono moltissimi Second Lifer (i.e. residenti) che della loro
passione per il gioco hanno fatto il loro lavoro.
Ad esempio vi sono persone che entrate nel mondo, hanno poi aperto un locale,
un negozio o si sono improvvisati organizzatori di matrimoni virtuali.
La portata economica di SL è tale che Paesi come Stati Uniti, Australia, Gran
Bretagna, si stanno già attrezzando a livello normativo per poter tassare i guadagni
effettuati su Second Life [DIG162].
La forza di Second Life è quella di non avere impegni di costo al momento
dell’iscrizione: il solo vincolo consiste nell’essere maggiorenni. L’unico eventuale
costo, imposto dalla Linden, è quello per l’acquisizione di una porzione di terreno,
acquistabile a discrezione dell’utente, utile per posizionare gli oggetti creati in modo
stabile.
Un’altra enorme possibilità di Second Life consiste nel tenere conferenze
online; il mondo virtuale, infatti, supporta il Voip (Voice over IP). Questa funzione
permette di “dare voce” al proprio Avatar tramite una tecnologia che rende possibile
effettuare una conversazione telefonica sfruttando una connessione Internet. La
25
Capitolo 2
peculiarità di Second Life è quella di permettere un’emissione vocale “a raggio
d’azione”, ovvero, ciascun utente situato nei pressi di un avatar che sta parlando può
sentire la sua voce. I campi di utilizzo di questa funzione sono immensi, molte
Multinazionali, infatti, utilizzano l’applicazione per organizzare veri e propri
Brainstorming Online.
2.12 Conferenza su Second Life
Molti progetti sono in fase di sviluppo su Second Life, ad esempio, a breve sarà
possibile ottenere una laurea nel metamondo di Second Life. Grazie ad un accordo tra
l’università telematica internazionale Uni Nettuno e l’università Roma Tre, infatti, oltre
40mila studenti, appartenenti alla facoltà, potranno studiare da casa [IP07].
Negli ultimi mesi, anche il nostro Corso di Laurea ha ritenuto opportuno tenersi
aggiornato su questo fenomeno di massa, è stato così allestito un laboratorio di “Vita
Artificiale” che ha promosso la creazione del gruppo “Infonauti”. In questo gruppo
studenti, tirocinanti, tesisti e docenti cooperano per raggiungere fini comuni, tra i quali
la creazione dell’Edificio del Corso di Laurea.
Le varie possibilità edilizie di Second Life e soprattutto, la sua accessibilità
hanno fatto sì che la nostra scelta di sviluppo cadesse su questo mondo virtuale.
26
Progettazione
3 Progettazione
L’obiettivo della nostra Tesi è sviluppare l’edificio del Corso di Laurea di
Scienze e Tecnologie Informatiche, in Via Sacchi a Cesena, all’interno di un mondo
virtuale: Second Life. La nostra struttura prende parte ad un progetto ben più grande:
sviluppare un laboratorio permanente online in cui i vari utenti del Gruppo Infonauti
potranno incontrarsi (direttamente da casa) e svolgere i propri elaborati in maniera
cooperativa. Dovendo effettuare esperimenti di simulazioni e vita virtuale, è necessaria
un’infrastruttura realistica per testare i vari modelli, gli agenti e gli algoritmi sviluppati.
Per questi motivi abbiamo ritenuto interessante utilizzare come Home del Dipartimento
la riproduzione online del Palazzo Mazzini Marinelli, infatti questo ci permette di unire
la grafica, la programmazione, l’intelligenza artificiale e la storia dell’Informatica nello
stesso progetto.
3.1 Palazzo Mazzini Marinelli
27
Capitolo 3
Chiunque visiti il nostro progetto potrà rendersi conto realmente della struttura
del palazzo, già complesso della Chiesa e del Convento di Santa Caterina. La struttura
venne edificata da Malatesta Novello nel 1460 e poi ingrandita e ampliata
successivamente da diversi cittadini sindaci, fra i quali in particolare Girolamo Zofoli
che prima del 1585 aveva fatto ampliare la facciata occidentale, edificare quella
meridionale e quella orientale.
Nel 1810 i Napoleonici spogliarono la chiesa e cacciarono le monache. Il
complesso passò in affitto alla famiglia Ghiselli e nel 1813 fu acquistato dal Conte
Giuseppe Masini che rase al suolo la Chiesa e ristrutturò il complesso con l'idea di
costruirvi il suo palazzo. Nel 1815 i Napoletani abbatterono il campanile. Nel 1818 il
complesso ricostruito dal conte Masini divenne un teatro e tale rimase fino al 1863. Nel
1877 la parte di levante del complesso, diventato di proprietà della Congregazione di
Carità, diventò la Scuola elementare femminile Mazzini e a fine ottocento fu data stessa
destinazione (scuola) anche alla parte sud del complesso.
Uno degli obiettivi più importanti è quello dell’orientamento dell’utente; grazie
a questo progetto è data la possibilità a chiunque di visitare il Corso di Laurea
direttamente da casa, potendo visionare foto o filmati, ma soprattutto esplorare l’interno
del Palazzo. L’aspetto è fondamentale, in quanto grazie alla accessibilità di Second
Life, basterà avere una connessione internet per esplorare il Corso di Laurea e farsi
un’idea dei contenuti architettonici e didattici.
Un altro aspetto molto interessante di questo progetto è la possibilità di rendere
interattiva parte dell’edificio, Second Life, infatti, offre la possibilità agli utenti di
programmare righe di codice per controllare i movimenti degli oggetti.
Ciò è reso possibile solo all’interno di un mondo virtuale perché qualsiasi altro
software per la grafica non permetterebbe tale “interattività”; il fatto di sviluppare un
edificio “dinamico” rende questo tipo di progetto assolutamente originale.
A livello “didattico”, Second Life rappresenta un ottimo compromesso tra le
qualità grafiche e la capacità d'interattività; veloce e intuitivo, è sicuramente uno dei
migliori editor per lo sviluppo del nostro progetto. Andiamo adesso a definire alcune
differenze con altri editor grafici e a porre l’accento sulle caratteristiche che ci hanno
spinto a utilizzare Second Life. In particolare vogliamo chiarire il motivo per cui non
abbiamo sviluppato la nostra tesi con 3D Studio Max.
28
Progettazione
3.1 Creazione del Corso di Laurea con 3Ds Max
3D Studio Max è uno degli editor di grafica tridimensionale più utilizzato in
assoluto al di fuori dei mondi virtuali. È un programma di sviluppo per la grafica
vettoriale tridimensionale che supporta le animazioni.
3DS Max è utilizzato per creazione 3D per numerose ragioni tra cui le potenti
capacità di editing e la sua architettura a plug-in. Infatti, anche se molti strumenti non
sono parte del prodotto, il software ha una grande scelta di plug-in realizzati da terze
parti.
Fin dalla versione 7.0 sono presenti strumenti di Texture avanzati, come un
generatore e renderizzatore built-in normal map, stati inclusi per migliorare le capacità
di progettazione di video-giochi. Dalla versione 6.0, è stato incluso Mental Ray, un
potente sistema di rendering. Dalla versione 5.0, 3DS Max include strumenti
d'illuminazione avanzata come Radiosity e Light Tracer, simili a strumenti di
professionali per il rendering foto realistico come finalrender, Brazil r/s e V-ray.
Il programma, inoltre, include Havok Reactor, un software per la creazione di
realistiche simulazioni dinamiche (usate anche in molteplici giochi come Half-life 2,
Oblivion, Max Payne 2 e Tribes: Vengeance) [3DS].
3.2 Immagini di Max Payne 2 e Half Life 2
Alcuni metodi utilizzati da 3Ds per lo sviluppo degli oggetti consistono nella
“modellizzazione con primitive”, questi metodi trovano utilizzo anche in Second Life.
29
Capitolo 3
La costruzione avviene modellando quadrati, sfere, coni, cilindri e altre forme
geometriche predefinite (simile a Second Life, vedi la sezione 3.3.1), 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; il modellatore comincia
convertendo una primitiva in poligoni e utilizzando strumenti come lo smusso,
l'estrusione e il taglio dei vertici o delle facce, aggiunge dettagli e raffina il modello.
3D Studio Max è, inoltre, uno dei software più utilizzati per la creazione di
Film, tra i più famosi possiamo citare Jurassic Park, Matrix, Il Gladiatore, Tomb
Raider, Sin City e Gli Incredibili.
3.3 Immagine tratta dal film Matrix
È possibile inoltre unire due o più poligoni e collassare i vertici comuni in modo
da poter mantenere unità nella superficie risultante (funzionalità simile in SL, vedi
sezione 3.1.4). Questa tecnica è molto utilizzata nel campo dei videogiochi,
permettendo un controllo molto accurato su ogni poligono e quindi consentendo una
forte ottimizzazione.
30
Progettazione
3.2 Differenze tra 3D Studio Max e Second Life
Dovendo sviluppare un edificio riguardante la nostra Università, abbiamo
ritenuto opportuno documentarci su eventuali progetti già sviluppati, per assicurarci di
creare qualcosa d’innovativo e non un duplicato di un progetto preesistente. Il Corso di
Laurea è stato realizzato anche in 3D Studio Max per una Tesi in “Metodi numerici per
la Grafica” qualche anno fa.
Il gruppo di ricerca che tiene tale Corso di Studio ci ha dato la possibilità di
recuperare questa Tesi, di visionarla e di avere il filmato di rendering della stessa;
grazie a questo abbiamo potuto paragonare Second Life con 3D Studio Max e motivare
le nostre scelte.
Le differenze principali tra i due software sono:
“livello di definizione”;
“tempo di rendering”;
“interattività”;
3D Studio Max ha certamente un livello di definizione superiore a quello di
Second Life. Questo perché 3DS è un programma nato per la realizzazione di progetti
grafici, mentre Second Life ha un editor grafico al suo interno che, pur utilizzando le
stesse tecniche di costruzione, ha livello di dettagli inferiori.
Questo è dovuto soprattutto alla necessità di sviluppare un’architettura massiva
online, ovvero una rapida visualizzazione del contenuto, percepibile da tutti e quindi
renderizzata in pochi secondi.
Possiamo affermare che il livello di definizione di Second Life è sicuramente
buono. Il nostro obiettivo, infatti, non è quello di creare un palazzo esteticamente
perfetto, ma quello di sviluppare un edificio interattivo.
Come si può notare dalla Fig. 3.4 il dettaglio di 3Ds Max è elevatissimo, mentre
l’immagine di Second Life rappresenta una riproduzione discreta e soprattutto,
riconoscibile dell'edificio. Questa è un’ulteriore conferma che 3Ds Max è un ottimo
programma per la riproduzione affidabile e realistica.
31
Capitolo 3
3.4 Foto del Corso di Laurea con 3Ds Max e con Second Life
La seconda differenza sostanziale è il “tempo di rendering”. Il rendering è il
processo di produzione dell'immagine finale a partire dal modello matematico del
soggetto [CO3D]. Questa differenza di tempo rappresenta il motivo principale per cui
abbiamo sviluppato il nostro progetto con Second Life: il tempo di rendering di 3Ds è
estremamente lungo, mentre in Second Life è pressoché immediato.
L’oggetto nello stesso istante in cui viene rezzato (i.e. creato) è già nel suo
stadio finale, pronto a interagire. Per quello che riguarda il nostro progetto, dobbiamo
denunciare che per caricare la nostra struttura, composta di oltre 3700 primitive, sono
necessari circa due minuti al server di Second Life. Questo tempo è veramente
irrilevante se consideriamo le ore di rendering necessarie per sviluppare un progetto in
3Ds.
L’Interattività rappresenta, però, il motivo fondamentale per cui abbiamo scelto
Second Life. Il nostro progetto, infatti, oltre a rappresentare la riproduzione
dell’edificio, doveva soprattutto essere dinamico. Sviluppando la costruzione in Second
Life si offre a chiunque la possibilità di visitarlo, non attraverso un percorso forzato,
ma in modo pseudo-realistico, guidando i nostri Avatar attraverso porte (con un
semplice tocco) e percorrendo scale.
32
Progettazione
3.3 Introduzione alla costruzione in Second Life
Second Life, come abbiamo più volte affermato, è un mondo virtuale in tutto e
per tutto, possiede, infatti, proprie regole, una moneta corrente, una propria grafica e
soprattutto un proprio modo di costruire oggetti. Costruire un oggetto è un’operazione
consentita solo in determinate zone, immediatamente identificabili grazie all’icona
Build (i.e. costruzione), situata immediatamente alla destra dell’HELP.
3.5 Icona Build Disattivata
Non sono molti i terreni comuni che mettono a disposizione aree sulle quali
costruire su Second Life e nel caso non si abbia un luogo proprio nel quale riunire
oggetti, conviene cercare SandBox (i.e. Aree di Costruzione) tramite la funzione di
ricerca di Second Life.
Per costruire in Second Life c'è un'interfaccia molto intuitiva che permette, dopo
un po’ di pratica, di poter realizzare qualsiasi oggetto.
3.6 Menu a disco
Per attivare questo TOOL di progettazione è sufficiente compiere un “Rightclick” sul terreno e scegliere Create nel menu a disco.
33
Capitolo 3
3.3.1 Le primitive
Le prims (i.e. primitive) sono gli elementi base delle costruzioni di Second Life.
Se s'immagina ogni oggetto di SL come una costruzione fatta con dei mattoncini, ogni
singolo mattoncino è una “primitiva”.
L’interfaccia con la quale è possibile costruire prim lavora in ambiente 3D,
quindi tramite le tre coordinate cartesiane (x, y, z) come avviene per i sistemi CAD.
Come si vede dall'immagine ci sono ben dieci figure geometriche solide (o
PRIMITIVE) piene e tre cave.
3.7 Interfaccia di creazione oggetto
Mettendo insieme tutte queste primitive è possibile realizzare qualsiasi
costruzione; basta selezionare con il mouse una di queste figure e poi cliccare
nell'ambiente circostante per creare la forma.
Primitive come alberi e cespugli possono essere create solo se si è proprietari di
un terreno. Tramite le funzioni di stretch (i.e. allungamento) rotation (i.e. rotazione) e
copia, è possibile utilizzare le prims in svariati modi e comporre oggetti molto
rapidamente.
La dimensione minima per un elemento (X, Y, Z) è di un centimetro, mentre la
dimensione massima ufficiale per una primitiva è di 10 metri. Questo poiché per ridurre
la quantità di dati inviati tra i client e i server SL è utilizzata la modellazione
parametrica, gli oggetti, infatti, sono descritti usando solo semplici e pochi parametri.
Ci sono, però, delle eccezioni, di grandezza superiore ai 10 metri, queste
primitive prendono il nome di Megaprim.
34
Progettazione
3.3.1.1 Le Megaprims
Le Megaprims sono prims che raggiungono dimensioni superiori ai 10 metri di
lato. Le Megaprims non possono essere create, sono utilizzabili solo quelle già esistenti
in quanto Second Life ha appurato una serie di problemi al server, dovuti alla troppa
estensione di queste prim (fino a cento metri).
Infatti, le Megaprim non furono create inizialmente dalla Linden Lab, ma da un
pirata informatico, Gene Replacement (nome dell’Avatar), che voleva eliminare il
problema della dimensione massima delle primitive. Per questo motivo la Linden Lab
non ha vietato l’utilizzo, ma ha dichiarato che nell’eventualità ci fossero problemi di
Lag (i.e. rallentamento) si riserverebbe di eliminare senza avviso e salvare l’oggetto in
Lost and Found (i.e. Oggetti persi). Con queste prospettive il loro utilizzo, anche se
sarebbero molto comode nella riproduzione del nostro progetto, creerebbe instabilità,
quindi non useremo questa tecnica. Nella Fig. 3.8 possiamo notare una prim più lunga
dell’intero palazzo dell’Informatica da noi creato, la megaprim, infatti, misura 100
metri contro gli 80 della nostra struttura.
3.8 Esempio di Megaprim
35
Capitolo 3
3.3.1.2 Sculpted Prims
Le sculpted prims (o Sculpts) sono primitive complesse determinate da texture.
Per creare una texture per sculpted prim si deve creare un modello con un software 3d
esterno e uploadare (i.e. caricare) l’immagine in Second Life.
L’immagine creata deve avere i canali RGB mappati in XYZ, in questo modo è
possibile dare profondità a un’immagine bidimensionale.
3.9 Finestra di sculpting
Per aggiungere una sculpted texture a una primitiva è sufficiente selezionare “Sculpted”
nel menu a tendina Building Block Type del Tool Edit Object.
Nell’inventario sono presenti di defalut diverse sculpt e molte altre possono essere
rintracciate gratuitamente on-line. Una volta caricata la texture, la sculpt è una
primitiva in tutto e per tutto e può essere colorata, stretcchata e passibile di texture.
36
Progettazione
3.10 Scale formate con le sculpt
Le sculpted prim consentono potenzialmente di realizzare costruzioni di aspetto
definito, con un numero di prim inferiore rispetto alle prims tradizionali. È possibile
applicare anche ai megaprim le texture per sculpted prim.
Il problema principale delle sculpt consiste nel non perdere di qualità una volta
stretcchate, per questo non le abbiamo utilizzate nel nostro progetto.
Per sviluppare sculpted prims sono necessari software quali Blender: editor di
disegno open source, che hanno la funzione mappare i tre colori RGB (Red Green Blu)
nei tre assi cartesiani XYZ. Spesso la qualità della sculpt non è delle migliori, ma,
considerando il basso numero di primitive utilizzate, si preferisce fare uso di questa
tecnica.
3.3.2 Le operazioni basilari
Premendo da tastiera Ctrl + 3 o selezionando l'icona con la freccia (Edit), è
possibile apportare le tre operazione basilari di modellazione: spostare, ruotare e
ridimensionare l'oggetto selezionato.
37
Capitolo 3
3.11 Tool di modifica oggetto
Le tre operazioni più semplici da eseguire su una primitiva sono:
-
Position (i.e. spostare): selezionando quest’opzione appariranno tre frecce
lungo i tre assi: rosso (X), verde (Y) e blu (Z). Cliccando sulle frecce è
possibile spostare l'oggetto trascinandolo lungo l'asse scelto.
-
Rotate (i.e. ruotare): selezionando quest’opzione o mantenendo premuto il
tasto Ctrl appariranno le sfere di rotazione. Basta selezionare e trascinare
uno specifico anello (rosso/verde/blu) per ruotare l’oggetto sull'asse
corrispondente.
-
Stretch (i.e. dimensionare): selezionando quest’opzione o mantenendo
premuti Ctrl+Shift apparirà il box di ridimensionamento. Cliccare e
trascinare
la
maniglia
rossa/verde/blu
per
ridimensionare
lunghezza/larghezza/altezza di una primitiva senza modificare le altre
dimensioni. Cliccare e trascinare una delle maniglie bianche per
ridimensionare l'intero oggetto proporzionalmente.
-
Se nella finestra di modifica è selezionata l'opzione Stretch Both Sides (i.e.
Restringi entrambi i lati) le modifiche effettuate in un lato dell’oggetto
verranno eseguite anche nell’altro lato, in modo da mantenere la simmetria.
Questa scelta è molto utile quando si vuole rimpicciolire l’oggetto su
entrambi i lati, mantenendo la sua posizione.
38
Progettazione
3.3.3 Proprietà delle Primitive
In questa sezione andiamo a descrivere le varie operazioni che possono essere
effettuate su una prim e gli sviluppi pratici.
3.3.3.1 La Scheda General
3.12 La scheda General
La scheda General ha come attributi il nome dell’oggetto e una sua possibile
descrizione, inoltre, qui è possibile decidere se condividere l’oggetto con altri utenti del
proprio Gruppo (Share with Group), permettere a tutti gli utenti di Copiarlo e Spostarlo
(Allow Anyone to copy/move) oppure se venderlo e impostare il prezzo.
S può decidere, inoltre, se l’utente successivo potrà Modificare o Copiare, e
quindi rivendere l’oggetto ottenuto.
39
Capitolo 3
3.3.3.2 La Scheda Object
La scheda Object presenta diverse possibilità per modificare le prims.
3.13 La Scheda Object
Ecco qui di seguito alcuni esempi:
- Position, Size, Rotation (i.e. Posizione, Dimensione, Rotazione): consentono
di introdurre coordinate specifiche XYZ per muovere, ridimensionare, ruotare
l'oggetto. I cambiamenti ai valori originali hanno sempre come riferimento il
centro dell'oggetto.
- Path Cut Begin and End (i.e. Taglia inizio e fine): elimina una “fetta”
dell'oggetto lungo il suo asse Z. È possibile specificare dove inizia il taglio e
dove finisce.
- Hollow (i.e. Svuota): introduce una cavità al centro dell’oggetto che parte dal
punto mediano della forma e si espande all’esterno. Si può specificare quale
percentuale del raggio dell’oggetto sarà occupata dalla cavità.
40
Progettazione
- Twist (i.e. Attorciglia): introduce delle torsioni, curvando la forma
dell’oggetto, come possiamo notare in Fig. 3.13.
3.14 Oggetto twistato
- Taper (i.e. Assottiglia): riduce le dimensioni laterali da una parte o dall’altra
(lungo l’asse X o Y, positivo o negativo) dell’oggetto primario.
- Top Shear (i.e.Taglia in cima): fa scorrere via la superficie superiore
dell’oggetto, creando un disallineamento con la parte inferiore. Si può scorrere
lungo l'asse X o Y separatamente.
È possibile decidere di utilizzare un oggetto nella modalità Locked (i.e.
bloccato), nella quale non può essere modificato, ma solo spostato. Quest’opzione è
tipica delle Megaprims, che hanno forme e dimensioni prestabilite, non potendo essere
create. Se viene scelta, invece, la modalità Physical, l’oggetto in questione subirà gli
effetti delle leggi fisiche del mondo virtuale tra cui la gravità e il vento. Se si crea un
oggetto in modalità Temporary, si potrà assistere da un momento all’altro alla
scomparsa di quest’ultimo, infatti l’oggetto ha un tempo di vita limitato. Nella modalità
Phantom, la primitiva in questione manterrà la sua fisicità, ma risulterà inconsistente al
tatto. Questa modalità è utile se si vogliono sviluppare delle Phantom-Door (i.e. porte
fantasma) che potranno essere attraversate dopo un semplice tocco da parte dell’avatar.
41
Capitolo 3
Se non si seleziona nessun tipo di funzione speciale, la prim è collocabile in
qualsiasi parte della Sandbox può essere modificata e mantiene la consistenza. Questa è
la modalità da noi utilizzata durante il progetto.
3.3.3.3 La Scheda Features
3.15 Scheda Features
In questa sezione è possibile impostare nella parte superiore la flessibilità della
prim: la rigidità (Softness), in base un valore che va da zero (rigida) a tre (soffice), la
gravità cui l’oggetto sarà sottoposto (Gravity, da – 10 a + 10), l’attrito dell’oggetto
(Drag) e le risposte alle forze sugli assi e al vento (Force, Wind). Nella parte inferiore
troviamo le impostazioni sulla luminosità dell’oggetto, tutte queste impostazioni sono
avanzate.
42
Progettazione
3.3.4 Le Textures
Una Texture (i.e. Consistenza) è un'immagine di tipo bitmap utilizzata per
rivestire la superficie di un oggetto virtuale, tridimensionale [TEXT], nel nostro
progetto abbiamo intenzione di fare largo uso di texture per dare ai muri, pavimenti e
oggetti una facciata più realistica.
Le Textures in Second Life possono subire una serie di modifiche per adattarsi
alla primitiva che dovranno rappresentare.
3.16 Editor di Texture
Per uploadare (i.e. importare) immagini proprie su Second Life si deve pagare
una “tassa”d'importazione di dieci Linden Dollar. Second Life supporta diversi tipi
d’immagini (jpeg, jpg, bmp, or e tga) ed ha come caratteristica quella di assegnare alle
figure importate risoluzioni di ampiezza e altezza che sono potenze di due (es.
256x256). È consigliato, quindi, importare immagini già impostate a risoluzioni adatte
43
Capitolo 3
a Second Life, per evitare cambi di risoluzione dannosi. E’ possibile, inoltre, cambiare
colore alla prim, grazie al comando Color, nella Scheda Texture, che permette di
scegliere tra una vasta gamma di colori disponibili.
Nella Fig. 3.14 notiamo le opzioni riguardanti la composizione di una Texture:
-
Mapping (i.e. Mappatura): può essere Default (i.e. standard) o Planar (i.e.
Bidimensionale).
-
Shiness (i.e. Luminosità): può essere impostata None, Low, Medium, High
(i.e. nessuna, bassa, media, alta).
-
Bumpiness (i.e. Rugosità): Second Life dà la possibilità di impostare anche
l’effetto che l’oggetto darà alla sua superficie, liscio, rugoso, effetto
mattone, stucco, legno e diversi altri effetti.
-
Repeats Per Face (i.e. Ripetizioni per faccia): rappresenta il numero di
ripetizioni che la texture deve compiere in ogni singola faccia del nostro
oggetto.
-
Rotation (i.e. Rotazione): ruota la Texture di un angolo deciso dall’utente.
-
Offsett (i.e. bilanciamento): sposta la texture in orizzontale o verticale in
base alle necessità dell’utente.
3.17 Esempio di Offset, ottenuto facendo scorrere la stessa texture
44
Progettazione
3.3.5 Assemblare gli Oggetti
Una delle caratteristiche più interessanti di Second Life consiste nel poter
assemblare più primitive in un unico oggetto e trattarlo come una sola entità. Per
linkare (i.e. unire) le primitive bisogna selezionare gli oggetti che si vogliono
assemblare e digitare CTRL + L, mentre per disunirli CTRL+SHIFT+L.
Bisogna prestare molta attenzione all’ultimo oggetto selezionato, che
rappresenterà la Radice, in altre parole la prim che prevale sulle altre “Prim Satellite”
e che contiene l’eventuale codice. La Radice è immediatamente visibile in quanto,
subito dopo il linking assume un colore giallo, mentre tutte le altre prim diventano blu.
3.18 Esempio di blocco di prims prima e dopo il linking
Il vantaggio/svantaggio di avere un oggetto linkato è quello di spostare, ruotare
o stretcchare contemporaneamente tutte le prims che lo compongono.
Questo è molto utile per ingrandire o rimpicciolire oggetti precedentemente
composti in scala, ma, d’altro canto, impedisce di lavorare sul particolare una volta
linkato l’oggetto. A volte si possono riscontrare dei problemi riguardanti l’eccessiva
distanza delle primitive selezionate, in questo caso apparirà sullo schermo un errore che
riporterà che il link (i.e. collegamento) 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.
45
Capitolo 3
3.3.6 Salvare gli oggetti
La peculiarità del mondo di Second Life è di rilasciare agli utenti il diritto
d’autore sugli oggetti che essi creano, in questo modo possiamo assistere ogni giorno a
migliaia di compravendite o scambi di oggetti tra residenti.
Per salvare un oggetto occorre innanzitutto selezionarlo e, in seguito, entrare nel menu
a disco e scegliere Take (i.e. prendi) se si vuole spostare l’oggetto nel proprio
inventario, o Take Copy (i.e. prendi copia) se si vuole prendere solo una copia
dell’oggetto.
3.19 Esempio di salvataggio di oggetto
È possibile salvare sia oggetti linkati che gruppi di primitive e, in ogni caso,
assegnare un nome al salvataggio direttamente dall’inventario, o dal menu di editing.
3.3.7 L’inventario
Come nella maggior parte dei mondi virtuali, anche su Second Life è possibile
mantenere i propri oggetti in un inventario, ovvero un raccoglitore di file che annovera
tutti gli elementi posseduti all’atto della creazione del proprio avatar più quelli aggiunti
successivamente.
46
Progettazione
3.20 Inventario su Second Life
Nell’inventario abbiamo a disposizione diverse cartelle preimpostate quali
Clothing (i.e. abbigliamento) che contiene i vestiti, Landmarks (i.e. Caposaldo)
contenente link a zone già visitate, Objects (i.e. Oggetti) che contiene le nostre
creazioni, come possiamo notare nella Fig. 3.19. Altre Cartelle di grande interesse sono
Scripts e Textures, che contengono rispettivamente le creazioni in LSL e le immagini
importate nel metamondo, pronte all’utilizzo.
3.4 Osservazione e Modellazione
La raccolta del materiale è fondamentale quando si tratta di costruire la struttura
dell’edificio, l’Università ha messo a nostra disposizione la planimetria dell’intero
edificio, che è composta di due piani, più uno intermedio. La difficoltà maggiore che
abbiamo incontrato è stata quella di dover calcolare le misure di altezza dell’edificio,
per sviluppare una struttura realistica e proporzionata.
47
Capitolo 3
3.21 Planimetria dell’edificio
Inizialmente abbiamo calcolato la proporzione che legava le misure riportate
nella planimetria, a quelle reali. In quasi tutte le stanze dell’edificio, infatti, è riportata
la superficie occupata.
3.22 Misura della superficie di alcune stanze del Secondo Piano
48
Progettazione
Grazie ad una buona documentazione fotografica, abbiamo potuto calcolare le
misure di altezza corrette, con proporzioni con altri oggetti di altezza nota. Le molte
fotografie effettuate, inoltre, ci hanno permesso di avere sempre un riferimento esatto,
da cui attingere informazioni su misure, colori e forme.
L’utilizzo delle fotografie è fondamentale per la creazione di texture da
applicare alle primitive per aumentare l’effetto della struttura reale.
Un passo importante da compiere prima di incominciare a costruire, è quello del
surfacing (i.e. facciata esterna, affioramento), cioè cercare di simulare i materiali della
superficie degli oggetti. Per ricreare la superficie dei nostri oggetti abbiamo cercato di
scegliere colorazioni reali e toni non troppo luminosi, per ricreare i materiali del Corso
di Laurea. Naturalmente abbiamo eliminato le imperfezioni dell’intonaco, il degrado
dovuto all’inquinamento e abbiamo apportato dove possibile delle migliorie. Poiché
certi colori o texture già presenti all’interno di Second Life non corrispondevano a
quelli reali, siamo ricorsi alle foto scattate in precedenza, abbiamo tagliato le parti
necessarie e le abbiamo caricate come texture.
49
Implementazione
4 Implementazione
Possiamo affermare, in primis, che Second Life è un mondo virtuale abbastanza
stabile; questo mondo virtuale, grazie alla modellazione parametrica, ha un sistema di
visualizzazione delle immagini molto veloce e interattivo.
Se non si possiede un terreno sul quale sviluppare il proprio progetto, come nel
nostro caso, si deve ricorrere all’uso di Sandbox (i.e. aree di costruzioni comuni),
tuttavia,
è
altamente
consigliato
salvare
continuamente
i
propri
progressi
nell’inventario perché il server offre agli oggetti sulle Sandbox un tempo di vita
limitato.
L’enorme mole di primitive, indispensabili per dare forma al nostro progetto,
infatti, rappresentava un peso non indifferente per le Sandbox. Quando si sviluppano
progetti complessi, come nel nostro caso, può capitare di venire invitati ad uscire, o di
essere direttamente bannati (i.e. esclusi) da un’area di costruzione, senza nessun
preavviso.
4.1 Riduzione delle primitive
Ogni regione in Second Life è composta di 65536 metri quadrati (256x256) e
può contenere al massimo 15.000 prims [LAPR], questo per non permettere ai residenti
di sviluppare troppe costruzioni nella stessa area, rallentando così il basso tempo di
Rendering (i.e. Resa di colori e luci di una scena). Se aumentano più del dovuto i
51
Capitolo 4
contenuti di un’area, infatti, il server non può più garantire una renderizzazione
istantanea e vengono a mancare i principi basilari di Second Life.
Lo scopo del nostro progetto è, quindi, riuscire a riprodurre l’edificio del Corso
di Laurea di Scienze e Tecnologie Informatiche a Cesena, utilizzando il minor numero
possibile di primitive.
Questo ci porta a considerare ogni singolo particolare architettonico
dell’edificio, al fine di raggiungere un buon compromesso tra il numero di primitive
utilizzato e il risultato grafico ottenuto.
4.1.1 I Muri
La prima modifica che abbiamo apportato è stata quella di “smussare” tutti i
muri adiacenti alle porte; il particolare architettonico, infatti, è stato valutato irrilevante
per quel che concerne le funzionalità del nostro edificio. I fattori di maggior interesse
nella nostra Tesi sono, infatti, l’interattività e il basso tempo di rendering del progetto, a
discapito di qualche particolare sacrificabile.
4.1 Particolare sulle smussature dei muri
Gli spigoli adiacenti alle finestre rappresentavano un grosso peso, poiché ogni
finestra ne possiede due, ciascuno formato da quattro prims e in tutta la facoltà abbiamo
più di cinquanta finestre (200 prims in più).
52
Implementazione
4.2 Differenza tra due possibili muri
Come si può notare dalla Fig. 4.2 la differenza tra i due blocchi è evidente, ma il
risparmio di prims nel secondo è proporzionalmente maggiore.
Per quanto riguarda lo sviluppo verticale dei muri nell’edificio abbiamo dovuto
affrontarlo tenendo conto del problema della grandezza massima di una prim, infatti,
come precedentemente affermato, una primitiva non può essere più estesa di 10 metri
per lato.
4.3 Esempio d'incastro di porte
53
Capitolo 4
Come si può notare in Fig. 4.3 la tecnica più conveniente consiste nello
sviluppare prims strette e alte, che si adattano all’incastro della finestra, in questo modo
si evitano sprechi di primitive.
Per lasciare aperta la possibilità di ingrandire o rimpicciolire l’edificio abbiamo
ritenuto importante utilizzare al più primitive di otto metri. Selezionando tutte le
primitive che compongono la nostra struttura, infatti, è impossibile modificare in scala
l’edificio.
Poiché Second Life è un mondo virtuale, in alcuni casi possiamo trovare degli
Avatar sovradimensionati. Considerando che la costruzione dell’edificio risale al XVIII
Secolo abbiamo supposto che alcune misure di altezza, soprattutto delle porte (alcune
alte solo 2 metri), non fossero adeguate. In virtù di queste considerazioni abbiamo
ritenuto utile utilizzare qualche primitiva in più per lasciare aperta questa possibilità.
Le scelte architettoniche da noi effettuate risultavano abbastanza immediate; è
possibile, invece, affrontare uno studio per sviluppare gli stessi particolari con un
numero minore di primitive, questo studio prende il nome di PRIMFFICIENCY.
4.2 Primfficency
Primfficiency è un termine che deriva da "prim efficiency + proficiency", in
altre parole efficienza e competenza nel campo delle prim. Il termine allude a una
conoscenza approfondita del Tool di disegno, che porta a un buon risultato grafico, con
l’utilizzo di meno prims possibili.
Creare una prim significa materializzarla o rezzarla (neologismo di Second
Life). Le costruzioni più complesse hanno un gran numero (decine o centinaia) di
primitive. Questo non dipende tanto dalle dimensioni, quanto dalla complessità
dell'oggetto e dall'abilità del costruttore; quest’ultima consiste nell’utilizzare il minor
numero di primitive possibili. Un oggetto o una costruzione con un basso numero di
primitive è preferibile in quanto ogni porzione di terreno ha un limite massimo di
primitive che può ospitare.
La PRIMFFICIENCY è quindi l’arte di sviluppare un oggetto utilizzando un
basso numero di prims [PRIM05].
54
Implementazione
4.4 Esempio di Struttura di un castello con un numero limitato di prims
In questo progetto abbiamo utilizzato la nostra conoscenza nel campo del
disegno per risparmiare primitive in oggetti ripetitivi come porte, finestre, scale o
colonne. Dovendo descrivere la parte interna dell’edificio, ci occuperemo dello studio
della Primfficiency sulle scale e sulle porte interne.
4.2.1 Scale
Nell’edificio da noi progettato sono presenti dieci scalinate, ciascuna composta
di circa dieci gradini, il tutto corrisponde a cento prims; risultava quindi necessario
studiare un metodo per risparmiare primitive. Abbiamo illustrato in precedenza le
opzioni di disegno, tra le quali Path Cut Begin-End, ovvero taglia inizio e fine.
4.5 Due scalini formati con una sola prim
55
Capitolo 4
Questa possibilità ci permette di tagliare un parallelepipedo, formando, così, con
una sola primitiva due scalini, ottenendo un guadagno immediato del 50%.
Nonostante l’uso di una sola primitiva, la qualità degli scalini, come si può
notare nella Fig. 4.6, rimane inalterata: questo è un esempio evidente di Primfficency.
4.6 Gli scalini applicati al nostro progetto
Per quanto riguarda, invece, il passaggio da un piano all’altro, possiamo dire
che l’operazione è stata abbastanza semplice. L’unico fattore di difficoltà è stato l’avere
in nostro possesso solo le planimetrie dell’edificio, per cui abbiamo sempre dovuto
calcolare ogni sviluppo verticale della struttura. Per creare gli scalini tra un piano e
l’altro è bastato far coincidere scalini superiori con gli inferiori, mettere il piano più
elevato all’altezza giusta e ricalcare fedelmente gli scalini presenti nella planimetria.
4.7 Esempio di creazione scalini in piani successivi
56
Implementazione
4.2.2 Le finestre
Le finestre, come le scale, sono molto numerose nel nostro edificio e potevano
rappresentare un fattore di risparmio prims, se create con Primfficiency.
4.8 Finestra Costruita con otto Primitive
Possiamo notare in Fig. 4.8 una finestra composta da 8 prims, in questo caso si
deve ricorrere alla primfficiency per risparmiare prims. Lo studio applicato alle finestre
ci ha portato a sviluppare un oggetto composto di sole cinque primitive, ottenuto grazie
alle funzioni di Hollow (scavatura) di un parallelepipedo. La funzione Hollow, come
prima citato, rende cavo un oggetto partendo dall’interno e lavorando sul piano Z.
Come possiamo notare nelle Fig. 4.8 e 4.9, le due finestre sono identiche tra
loro, ma la prima è di otto primitive la seconda di cinque, questo è altamente indicativo
sui possibili utilizzi della Primfficiency.
57
Capitolo 4
4.9 Stessa finestra con cinque prim
Ruotando di novanta gradi l’oggetto rispetto al piano Z è, infatti, possibile
ottenere un “effetto cornice”, ovvero ottenere quattro lati di un parallelepipedo con una
sola primitiva.
4.10 Effetto cornice
58
Implementazione
4.2.3 Le porte interne
4.11 Porta Interna
Le porte interne rappresentavano una buona fonte di risparmio prims, perché
costituite da legno, materiale che si prestava all’utilizzo di Texture, a differenza delle
porte di vetro.
Potendo “incollare” direttamente le Texture, diminuisce notevolmente il numero
di prims necessarie alla costruzione di una porta.
In questo caso abbiamo deciso di eliminare il riquadro esterno alle porte e di
sviluppare un lato sinistro statico e nella parte destra, il lato dinamico. Il lato destro è
soggetto ad una rotazione di 90 gradi e consiste di una primitiva in cui è incollata la
texture e dal cardine che è la radice dell’oggetto. Grazie all’utilizzo delle texture
abbiamo utilizzato solo tre prim per costruire la porta, questo rappresenta un notevole
risparmio, siccome la versione senza texture era formata da 8 prims e nel primo piano
abbiamo 30 porte uguali (150 prims in meno).
59
Capitolo 4
Nella costruzione di qualsiasi porta è fondamentale inserire un cardine dove si
vuole la rotazione, il cardine deve essere linkato al resto della porta apribile e deve
rappresentare la Radice dell’oggetto, in altre parole il contenitore degli script.
4.2.3.1 Lo script delle Porte
Nel nostro progetto abbiamo utilizzato sempre lo stesso script per aprire e
chiudere tutte le porte, il nostro scopo era di costruire una porta che potesse richiudersi
sia sotto comando dell’utente, che dopo un intervallo definito. Abbiamo deciso di
impostare il tempo di chiusura automatica a novanta secondi, in questo modo l’oggetto
ritorna in ogni caso al suo stato di quiete; andiamo ad analizzare lo script:
Float TIMER_CLOSE = 0;
Float gap = 2.0;
Float counter= 0.0;
Integer DIRECTION = 1;
Nella prima parte assegniamo le variabili di tempo (TIMER_CLOSE, GAP e
COUNTER), che più avanti spiegheremo meglio, e di direzione apertura porta
(DIRECTION). Andiamo ad affrontare ora la funzione iniziale del nostro script.
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;
} }
La funzione di default descrive lo “stato di quiete” del nostro oggetto. Appena
tocchiamo la porta (llSetTimerEvent(gap);), viene attivata la funzione llSetTimerEvent,
che azzera il tempo e lancia il contatore, viene successivamente attivato un suono di
apertura porta(llTriggerSound("Door open", 0.8);) e attraverso il pacchetto di funzioni
ROTATION, viene effettuata la rotazione intorno al Cardine. Terminata la rotazione,
60
Implementazione
l’oggetto entra nella fase WAIT, ovvero in una condizione di attesa; qui è possibile
richiudere la porta manualmente o lasciando passare 90 secondi, vediamo in che modo.
4.12 Apertura della porta
Lo stato Wait ha due sottofunzioni, touch_star e timer(), se l’utente re cliccherà sulla porta, si attiverà la prima funzione (che conduce allo stato Close), nel
caso contrario, quando il contatore (azzerato nel momento dell’apertura) arriverà a 90
lo stato Close verrà attivato automaticamente.
State wait{
timer(){
counter = counter + gap;
If (counter == 90.0){
State close;
}
}
touch_start(integer total_number){
State close;
}
}
61
Capitolo 4
Il conteggio funziona nel seguente modo: il gap è impostato a due e per la
funzione precedente llSetTimerEvent(gap), viene generato un evento ogni 2 secondi. Alla
somma degli eventi viene, quindi, aggiunto gap (+2) ogni due secondi, quando la
somma arriva a novanta la funzione si arresta e si attiva lo stato 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;
}
Nello Stato Close viene effettuata la rotazione nel lato opposto della porta
(prima -DIRECTION, adesso DIRECTION) e viene attivato il suono di chiusura
porta(llTriggerSound("Door Close", 0.8);) finite le operazioni, l’oggetto torna nel suo
stato di quiete(State Default).
4.13 Chiusura Porta
62
Implementazione
4.2.4 Altre porte
Dovendo analizzare gli interni dell’edificio, evidenzio gli studi effettuati sulla
porta a vetri che precede il laboratorio al piano di sopra.
La porta è molto complicata come struttura e il fatto di dover avere due sportelli
apribili non permette un alcun risparmio di primitive nella parte inferiore.
Nelle finestre, infatti, era possibile risparmiare diverse primitive utilizzando
un’unica lastra di vetro; ogni parte della vetrata invece deve averne da unire al cardine,
in modo da rendere realistica la porta.
Per quanto riguarda la parte superiore, la Primfficiency mi permette di
risparmiare primitive solo in un punto, la primitiva della figura 4.13 è ottenuta da un
parallelepipedo,
tagliato,
incavato
(Path
Cut/Begin,
Hollow)
e
ruotato
di
quarantacinque gradi.
4.14 Porta interna laboratori
63
Capitolo 4
4.15 Prim ottenuta con Path e Hollow
4.3 Sviluppo dell’edificio
Per sviluppare il nostro edificio abbiamo deciso di utilizzare una tecnica
abbastanza frequente su Second Life, ovvero quella di applicare la planimetria
attraverso le texture.
4.16 Esempio di costruzioni con Texture di planimetria
64
Implementazione
Abbiamo quindi dovuto dividere la nostra planimetria in blocchi di 10 metri per
lato, in modo da rispettare le proporzioni. Abbiamo compiuto quest’operazione tramite
il software open source “Gimp”, che permette di tagliare un’immagine in diversi
settori, in base alle proprie esigenze, grazie all’immissione di guide (i.e. Linee) che
possono essere tagliate.
4.17 Immissione di Guida
Una volta immesse tutte le guide necessarie al taglio, è possibile ottenere la
frammentazione dell’immagine. Questo grazie alla funzione Ghigliottina, che, come
suggerisce il nome, taglia le immagini in base alle guide.
4.18 Creazione guida in Gimp
65
Capitolo 4
Il risultato dell’operazione di ghigliottina è ottimale per il nostro tipo di
approccio al progetto, infatti, ora è sufficiente inserire le immagini ottenute come
texture in Second Life, e incollarle a prim che formeranno le “fondamenta” del nostro
edificio.
4.19 Operazione di ghigliottina
4.3.1 La struttura base
La struttura base consiste di una matrice di blocchi di dieci metri per dieci, ai
quali sono state applicate le Texture, per ottenere in Second Life una pavimentazione in
grado di guidarci nella creazione dell’edificio.
4.20 Esempio di blocco con texture
66
Implementazione
I blocchi sono in tutto quarantadue, infatti abbiamo diviso l’asse X della
planimetria in sei sezioni e l’asse Y in sette. I particolari riguardanti piani intermedi
erano contenuti all’interno del secondo piano; per estrarre le texture abbiamo
semplicemente incollato le immagini che ne riportavano le caratteristiche in appositi
blocchi.
4.21 Blocchi con le caratteristiche dei piani intermedi
Dalla struttura base abbiamo poi sviluppato i muri esterni e interni,
semplicemente ricalcando le forme date nella planimetria e riportando le misure di
altezza calcolate in precedenza. Per “sincronizzare” due piani è bastato prolungare
parte dei muri inferiori e cercare un riscontro nei piani superiori. La struttura, infatti,
non subisce evidenti modifiche e presenta diversi muri portanti che si estendono dal
primo all’ultimo piano.
4.22 Fase della creazione della struttura di base
67
Capitolo 4
Una fase complicata della costruzione consiste nell’affrontare il problema della
grandezza della struttura. Non tutte le SandBox, infatti, supportano prims o blocchi di
prims troppo estese, perché possono rallentare i tempi di rendering.
Dopo diversi tentativi abbiamo trovato una SandBox adatta al nostro progetto:
“Sandbox - Denmark International”, questa zona di costruzione ha una caratteristica
aggiunta rispetto a tutte le altre, il pavimento graduato, per facilitare la misura
immediata delle prim in fase di sviluppo.
4.23 Pavimentazione del Piano Terra
4.24 Pavimento Graduato nella SandBox Denmark International
68
Casi di Studio
5 Casi di Studio
In questo Capitolo andremo a paragonare i risultati ottenuti nel nostro progetto
con la realtà; il nostro obiettivo, infatti, è riprodurre la struttura dell’edificio del Corso
di Laurea di Scienze dell’Informazione su Second Life.
Second Life, come più volte ricordato, ha come intento quello di supportare
un’architettura massiva online, questo porta ad un forte risparmio nel dettaglio per
favorire la velocità di renderizzazione e l’interattività del prodotto.
Durante il nostro progetto abbiamo effettuato degli SnapShot, ovvero delle
fotografie istantanee che riportavano i nostri progressi e abbiamo utilizzato questa
possibilità per effettuare il confronto con la realtà.
Dobbiamo specificare che risulteranno evidenti alcune differenze tra lo sviluppo
in Second Life e la realtà, soprattutto a livello di dettagli: il nostro obiettivo era, infatti,
quello di sviluppare una struttura riconoscibile del Palazzo, senza arredare le stanze ed i
corridoi.
Per quanto riguarda la mancanza di alcuni particolari possiamo affermare che
abbiamo ridotto i corrimani di tutte le scale per risparmiare primitive, inoltre non
abbiamo inserito nella nostra struttura alcun tipo di lampadario e tavolo o PC.
Le finestre sono rappresentate in modo schematico, senza l’aggiunta di tende o
veneziane per risparmiare primitive e sono state ovviate alcuni dislivelli presenti nei
vari piani per semplificare il tutto. Andiamo ora a visualizzare alcune immagini
significative del nostro sviluppo.
69
Capitolo 5
5.1 Scale reali con corrimano
5.2 Scale su Second Life
70
Casi di Studio
Il confronto tra le due immagini ci porta a ribadire gli obiettivi principali del
nostro progetto. È evidente che la riproduzione effettuata su Second Life presenta delle
leggere incongruenze con realtà. Può capitare di non riscontrare una perfetta
riproduzione di tutti i particolari, in quanto il primo obiettivo posto è quello della
riconoscibilità e non della perfezione nel dettaglio architettonico.
La nostra struttura si può considerare un “cantiere aperto” e queste
imperfezioni potranno essere migliorate da futuri ricercatori in Second Life del gruppo
Infonauti.
Un’altra differenza giustificata è quella degli scalini, possiamo notare che nella
Fig. 5.1 gli scalini originali presentano un unico piano inferiore, mentre su Second Life
non è stato inserito, per rispettare la PRIMFFICIENCY. Il corrimano, come in tutte le
scale riprodotte nel nostro progetto è riportato in modo semplice e simbolico, al fine di
risparmiare primitive.
Andiamo ora ad analizzare la differenza tra le Fig. 5.3 e 5.4: anche in questo caso
possiamo notare che la qualità della riproduzione non è ottimale.
5.3 Corridoio con porta a vetri
71
Capitolo 5
L’illuminazione nella foto di Second Life è molto scarsa in quanto non sono state
inserite le lampade che rappresentavano un numero elevatissimo di primitive. Possiamo
notare come dietro la porta a vetri manchi il disegno del corrimano della scala: anche in
questo caso la scelta architettonica è stata effettuata al fine di risparmiare prims.
Un’altra differenza è rappresentata dalla pavimentazione: nella realtà, infatti, abbiamo
un disegno molto semplice, formato da una tinta grigia con due linee rosse che si
estendono per tutto il corridoio. Su Second Life abbiamo deciso di utilizzare lo stesso
colore per tutto il corridoio in quanto le linee rosse dovevano essere incollate su altri
piani e rappresentavano per noi una spesa ingente di primitive.
5.4 Corridoio con porta a vetri su Second Life
Nell’atrio abbiamo sviluppato la porta che separa la stanza “distributori
automatici” dall’ala disabitata. Questo particolare presenta una parte superiore in vetro
e un’inferiore composta di uno sportellino statico e la porta con i vetri oscurati.
La riproduzione in Second Life è stata abbastanza fedele in questo caso:
abbiamo potuto risparmiare primitive in quanto la porta non si deve aprire e non
necessita di primitive spezzate e di cardini.
72
Casi di Studio
5.5 Porta dell’Atrio al Piano terra
Per ottenere i vetri oscurati, abbiamo impostato una trasparenza molto bassa, a
differenza dei vetri nei quali abbiamo utilizzato parallelepipedi bianchi con trasparenza
al 70%. Grazie alla ricerca di oggetti in Freebies (i.e. luoghi in cui vengono regalati
oggetti) abbiamo trovato in Second Life dei Distributori automatici, simili a quelli
presenti in facoltà e li abbiamo inseriti nel nostro progetto.
5.6 Distributori automatici
73
Capitolo 5
5.7 Distributori automatici nella realtà
L’arco situato in fondo al corridoio del primo piano rappresenta un altro
particolare degno di nota. L’oggetto è stato sviluppato con la funzione Hollow-Circle,
ovvero effettuando un foro circolare ad un parallelepipedo.
5.8 Confronto tra archi
Osservando la Fig. 5.8 possiamo notare che lo sviluppo in Second Life risulta
essere privo di arredamento (per i motivi sopracitati), inoltre si ripropone la differente
74
Casi di Studio
pavimentazione, il colore è leggermente diverso, ma è il modello più simile che è stato
trovato. Nelle pagine successive proponiamo altri casi di studio: la porta dei
Laboratorio nel Primo Piano, porta che eviteremo di descrivere in quanto già affrontata
nel capitolo 4.2.4.
5.9 Porta esterna ai Laboratori Superiori
Andiamo adesso a visualizzare alcune immagini che documentano la creazione
degli interni del nostro edificio. Dalla Fig. 5.10 possiamo notare come i muri interni
rappresentino lo sviluppo verticale della planimetria del piano terra. Nell’immagine è
rappresentata una vista dell’edificio a poche ore dalla nascita del progetto, è evidente la
strategia di sviluppo attuata grazie all’uso delle texture per la pavimentazione.
Nelle pagine seguenti riportiamo alcune snapshot particolarmente significative,
riguardanti lo sviluppo del nostro edificio. Possiamo affermare che in molte foto la
pavimentazione non rispetta la realtà; le immagini sono state riprese durante il nostro
lavoro, e non rappresentano il prodotto finale.
75
Capitolo 5
5.10 Inizio della costruzione degli interni del piano terra
5.11 Immagine degli interni
76
Casi di Studio
5.12 Vista all’inizio della costruzione del Primo Piano
5.13 Particolare sulla costruzione degli interni
77
Capitolo 5
5.14Interni dell’edificio
5.15 Primo piano in sezione
78
Casi di Studio
5.16 Vista posteriore degli interni
5.17 Struttura completa con particolare sugli interni
79
Capitolo 5
5.18 Interni con selezione
80
Conclusioni
6 Conclusioni
In questa Tesi abbiamo dimostrato come sia possibile riprodurre edifici reali in
Second Life. Il mondo virtuale si è dimostrato utile ai fini didattici e ci ha permesso di
sviluppare una struttura polivalente che rappresenta il prodotto di studi grafici e
implementazione di codice LSL.
La scelta del Palazzo Mazzini Marinelli è stata effettuata in quanto la struttura
rappresenta realmente la sede del CdL di Scienze e Tecnologie Informatiche; inoltre
l’edificio presentava un’architettura apprezzabile e un alto numero di stanze, entrambe
caratteristiche fondamentali per i nostri obiettivi.
Il progetto da noi realizzato diventerà, infatti, l’Home di Ricerca del CdL di
“Via Sacchi” a Cesena e verrà utilizzata da futuri ricercatori del Gruppo Infonauti per
testare agenti virtuali.
La caratteristica principale di Second Life è di permettere una forte
accessibilità: ogni oggetto, infatti, viene “rezzato” (i.e. creato) direttamente nel suo
stadio finale, senza dover attendere lunghi tempi di rendering. Grazie a questa
possibilità l’utente, oltre a visualizzare l’edificio, avrà la possibilità di esplorarlo,
scegliendo quali porte aprire e camminando all’esterno e all’interno del “CdL
Virtuale”. In questo modo è possibile creare un prodotto interattivo ed accessibile da
chiunque abbia a disposizione un collegamento Internet: un vero labirinto di Stanze
Tematiche, che è molto più di una riproduzione fedele di un edificio visitabile tramite
un percorso obbligato.
81
Capitolo 6
Una problematica riscontrata è rappresentata dall’ingente mole di primitive
presenti nel nostro progetto. Il server del metamondo ha difficoltà a “caricare” un
numero elevato di primitive per cui una fase importante del nostro studio è stata la
ricerca di meccanismi atti a risparmiare prims. Abbiamo modificato qualche particolare
architettonico irrilevante e utilizzato alcune texture incollate a parallelepipedi per
sviluppare finestre, porte e muri con un basso numero di Primitive.
6.1 Sviluppi Futuri
Il progetto darà la possibilità di esplorare su Second Life la riproduzione
virtuale del Palazzo Mazzini Marinelli di Cesena, sede del CdL Scienze e Tecnologie
Informatiche. Questa opportunità favorirà l’orientamento per futuri studenti e per
chiunque volesse farsi un’idea dell’edificio, senza muoversi da casa.
Sviluppando questo progetto abbiamo unito, la componente Grafica a quella di
Ricerca e Sviluppo, la Programmazione per animare gli oggetti alla Storia della nostro
Corso di Laurea.
La struttura sarà collocata all’interno dell’Isola di Unibo, su Second Life e
diventerà l’Home di ricerca del Corso di Laurea di “Via Sacchi”. Oltre alla componente
dell’orientamento, la costruzione virtuale sarà molto utile come contenitore didattico:
futuri studenti, infatti, si occuperanno di ammobiliare e perfezionare gli ambienti
dell’edificio.
Il numero elevato di stanze che compongono la struttura permette diversi
utilizzi, ad esempio quello di contenere alcuni agenti sviluppati da Studenti del Corso
che hanno come funzione quella di esplorare il mondo circostante.
In futuro si potranno aggiungere all’edificio componenti di domotica, come
l’ascensore, per rendere la struttura ancora più realistica; inoltre potranno essere tenute
delle vere e proprie lezioni online grazie alla funzione di Voip e alla possibilità di
proiettare immagini e filmati.
82
Bibliografia
Bibliografia
[CYB05]
Gino Roncaglia, Costruire il ciberspazio
http://www.mediamente.rai.it/mediamentetv/learning/ed_multimediale
/lezioni/05/index.htm#Dal_reale_al_virtuale_e_ritorno
[MU02]
Wikipedia, Multi User Dungeon,
http://it.wikipedia.org/wiki/Multi_user_dungeon
[MON06]
Mario Gerosa, Aurélien Pfeffer, Mondi Virtuali
2006, Edizione Castelvecchi
[DEIA4]
Giuseppe Deiana, Etica e Multimedialità nella Società della
Comunicazione
http://www.sfi.it/cf/archivio_cf/cf4/articoli/deiana.htm
[BOT23]
Gaia Bottà, Metaplace, micromondi in rete
mercoledì 23 gennaio 2008
http://punto-informatico.it/p.aspx?i=2167193
[GIAN08]
Enrico Giancipoli, The Sims Online, il biglietto è gratis
Giovedì 28 febbraio 2008
http://punto-informatico.it/p.aspx?i=2203364
[SECO01]
Wikipedia, Second Life
http://it.wikipedia.org/wiki/Second_Life
[LAB06]
Second Life Italia, Cos’è Second Life
http://www.secondlifeitalia.com/wiki/Cos'%C3%A8_Second_Life
[DIG162]
Donatella Cambosu Abirascid, Vite Parallele
http://www.digitalife.it/primapagina.asp?id=162
[IP07]
Alessandro Ferrazzi, Laurearsi su Second Life.
21 Dicembre 2007
83
Bibliografia
http://www.over-ip.eu/2007/12/21/laurearsi-su-second-life.html
[UNI18]
Unibo, Archivio Storico, Palazzo Mazzini Marinelli
http://www.archiviostorico.unibo.it/template/listImmagini.asp?IDFold
er=156&LN=IT
[3DS]
Wikipedia, 3D Studio Max
http://it.wikipedia.org/wiki/3D_Studio_Max
[CO3D]
Wikipedia, Computer Grafica 3D
http://it.wikipedia.org/wiki/Computer_grafica_3D
[TEXT]
Wikipedia, Texture
http://it.wikipedia.org/wiki/Texture
[PRIM05]
Second Opinion , Tips and Trick, Better building with Primfficiency
http://secondlife.com/newsletter/2006_05/html/tips.html
[LAPR]
Second Life , Land Pricing & Use Fees
http://secondlife.com/whatis/landpricing.php
84

Documenti analoghi

riproduzione virtuale degli esterni dell`edificio del

riproduzione virtuale degli esterni dell`edificio del ALMA MATER STUDIORUM - UNIVERSITA' DI BOLOGNA SEDE DI CESENA FACOLTA' DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN SCIENZE DELL'INFORMAZIONE

Dettagli

Atlante della Città Virtuale

Atlante della Città Virtuale cui abbiamo evidenziato il disegno della Città Virtuale rispetto a tre aspetti tematici (comunicare/”costruire”, giocare, sperimentare); b) lo spazio teorico “visionario” del Ciberspazio; c) lo spa...

Dettagli

UMANI, ELFI, ORCHI E NON MORTI. Per un

UMANI, ELFI, ORCHI E NON MORTI. Per un 3.2.11. La Comunità, la Chat e la costituzione delle gilde .................. 76 3.2.12. L’economia e il commercio...................................................... 79 3.2.13. La morte............

Dettagli