OpenSim: Installiamo una grid. Parte III: la voce…

Rieccoci 🙂

Ed ecco finalmente la terza parte del nostro trittico su come costruire una grid opensim professionale. Dopo avere descritto nei due articoli precedenti:

Ecco le istruzioni per configurare la voce. Queste istruzioni sono il frutto di quelle pubblicate sul sito http://opensimulator.org (http://opensimulator.org/wiki/Freeswitch_Module) e delle istruzioni pubblicate da Carlos Roundel, creatore della grid italiana Cyberlandia  e riportate da Olivier Battini creatore della grid francese New World Grid  (http://wiki.osgrid.org/index.php/Freeswitch_HowTo2). Le istruzioni sono state ulteriormente ritoccate da AndreaPiero Arbizu che me le ha fornite dopo averle verificate in pratica su decine di grid e che ho verificato personalmente sulla grid creata con gli articoli precedenti.
Notate che questa operazione (la configurazione di freeswitch) è leggermente più complicata e lunga rispetto agli step precedenti e dovete allocare ALMENO 1 ora di tempo per eseguire questi passi…

Ecco la guida:

Voice su Opensim, configurazione di Freeswitch
Questa procedura è valida per UBUNTU con versione opensim 0.7.2 dev r. 16203 (NB: io l’ho provata con una 0.7.1 ufficiale)
e configurazione per usare freeswitch come servizio di grid .Luglio 15 , 2011 Andrea Arbizu ( contatto skype : andreapiero.hotmail.it )

PREPARAZIONE DELL’AMBIENTE

– Entrare con utente root ( su ubuntu desktop aprire il terminale , digitare il comando sudo su e inserire la password UTENTE) .

 apt-get update
 apt-get install -y autoconf automake libtool build-essential subversion libxml2
 apt-get install -y libxml2-dev libtiff4 libtiff4-dev php5 php5-cli
 apt-get install -y php5-common php5-mcrypt php5-mysql php5-gd php5-pgsql php-pear php-db
 apt-get install -y libmysqlclient16-dev curl sox libssl-dev libncurses5-dev bison
 apt-get install -y libaudiofile-dev libnewt-dev libcurl4-gnutls-dev
 apt-get install -y libnet-ssleay-perl openssl ssl-cert libauthen-pam-perl
 apt-get install -y libio-pty-perl
 apt-get install -y libpg-perl libdbd-pg-perl  sqlite3
 apt-get install -y libsqlite3-dev
 apt-get install -y libapache2-mod-php5 libmcrypt-dev

INSTALLAZIONE DI FREESWITCH

cd /usr/local/src

– download, compilazione e installazione del Git di freeswitch

 apt-get install -y git
 git clone git://git.freeswitch.org/freeswitch.git
 cd freeswitch
 cd build
 cp modules.conf.in modules.conf
 vi modules.conf

individuare la riga:

 #codecs/mod_siren

e levare il # (da me era già scommentata)
individuare la riga

 #xml_int/mod_xml_curl (OK)

e levare il #
 salvare il file (con vi esc:wq)

cd ..
 AUTOCONF=/usr/bin/autoconf ./bootstrap.sh

 attendere una decina di minuti sino al termine dell ‘ operazione. (a me meno di 5 minuti)
 ./configure --prefix=/usr/local/freeswitch
 attendere  il termine  (5 minuti pieni)
make
 attendere il termine. (20 minuti pieni)
 make install
 make mod_siren-install
 make mod_xml_curl-install

notare che i due comandi successivi vanno ripetuti due volte non e’ un errore!!
 make sounds-install
 make sounds-install
 make moh-install
 make moh-install

 make samples

CONFIGURAZIONE FREESWITCH

– Configurazione di Freeswitch per opensim
supponiamo che il nostro server sia connesso ad internet con un IP pubblico del tipo: 192.111.222.33

supponiamo che non esista alcun firewall che limita alcunche ne in ingresso ne in uscita.

cd /usr/local/freeswitch/conf/autoload_configs/
 vi modules.conf.xml
 individuare la riga:
 <!– <load module=”mod_xml_curl”/> –>
 e sostituirla con:
 <load module=”mod_xml_curl”/>
 individuare la riga:
 <!–<load module=”mod_siren”/>–> (a me non era commentata)
 e sostituirla con:
 <load module=”mod_siren”/>
 salvare il file (esc:wq)
 cd /usr/local/freeswitch/conf/autoload_configs
 vi xml_curl.conf.xml

 posizionarsi sotto la riga:
 <binding name=”example”>
 cancellare tutte le righe (premendo dd piu volte su vi) (dG cancella tutto se si è sulla prima riga)
 e sostituire con:
 <configuration name="xml_curl.conf" description="cURL XML Gateway">
 <bindings>
 <binding name="example">
 <param name="gateway-url" value="http://192.111.222.33:8004/fsapi/freeswitch-config" bindings="directory"/>
 <param name="disable-100-continue" value="true"/>
 </binding>
 <binding name="local">
 <param name="gateway-url" value="http://192.111.222.33:8004/fsapi/freeswitch-config" bindings="dialplan"/>
 <param name="disable-100-continue" value="true"/>
 </binding>
 </bindings>
 </configuration>

(al posto di 192.111.222.33 va messo l’ip pubblico del server dove gira opensim.).
salvare il file.

AVVIO  FREESWITCH IN UNO SCREEN

– Avvio di Freeswitch

 screen –S Voice
 screen –r Voice (????) da me questo da errore
 cd /usr/local/freeswitch/bin/
 ./freeswitch

ignorare qualunque messaggio o errore più o meno colorato

2011-08-07 06:34:03.782163 [NOTICE] switch_utils.c:248 Adding 192.0.2.0/24 (allow) [brian@78.47.22.111] to list domains 2011-08-07 06:34:03.782208 [CONSOLE] switch_core.c:1839 _____              ______        _____ _____ ____ _   _ |  ___| __ ___  ___/ ___       / /_ _|_   _/ ___| | | | | |_ | '__/ _ / _ ___ \  / / / | |  | || |   | |_| | |  _|| | |  __/  __/___) | V  V /  | |  | || |___|  _  | |_|  |_|  ___|___|____/  _/_/  |___| |_| ____|_| |_| ************************************************************ * Anthony Minessale II, Michael Jerris, Brian West, Others * * FreeSWITCH (http://www.freeswitch.org)                   * * Paypal Donations Appreciated: paypal@freeswitch.org      * * Brought to you by ClueCon http://www.cluecon.com/        * ************************************************************ 2011-08-07 06:34:03.782215 [CONSOLE] switch_core.c:1842 FreeSWITCH Version 1.0.head (git-b952b2b 2011-08-04 19-53-18 +0200) Started. Max Sessions[1000] Session Rate[30] SQL [Enabled] freeswitch@opensim>
e detachare screen
 control+maiuscolo a
 control+maiuscolo d
CONFIGURAZIONE ROBUST e OPENSIM

Editare il file Robust.ini sezione Freeswitch :

[FreeswitchService] LocalServiceModule = "OpenSim.Services.FreeswitchService.dll:FreeswitchService" ;; The IP address of your FreeSWITCH server. ;; This address must be reachable by viewers. ServerAddress = 192.111.222.33
 (al posto di 192.111.222.33 va messo l’ip pubblico del server dove gira robust.).
 - Configurazione di Opensim
 editare il file OpenSim.ini
 nella sezione FreeSwitchVoice
 [FreeSwitchVoice] ;; In order for this to work you need a functioning FreeSWITCH PBX set up. ;; Configuration details at http://opensimulator.org/wiki/Freeswitch_Module Enabled = true ;; You need to load a local service for a standalone, and a remote service ;; for a grid region. Use one of the lines below, as appropriate ;; If you're using Freeswitch on a standalone then you will also need to configure the [FreeswitchService] section in config-include/StandaloneCommon.ini ;; LocalServiceModule = OpenSim.Services.FreeswitchService.dll:FreeswitchService LocalServiceModule = OpenSim.Services.Connectors.dll:RemoteFreeswitchConnector ;; If using a remote connector, specify the server URL FreeswitchServiceURL =  ( sostituire con ip del server )

>>>> Fine <<<<

avviare normalmente opensim, da questo momento in poi la sim ha il voice abilitato.
Verificare che nelle impostazioni della parcell il voice sia attivo

Ho seguito la configurazione ufficiale suggerita sul sito http://www.opensimulator.org
integrandola su come settare i moduli e con alcuni suggerimenti sia dai bug mantis
che dalle mailing list di opensimulator. Questo documento e’ rilasciato con licenza cc ( obbligo citazione della fonte)
Credo che possa essere utile a quanti stanno sbattendosi a far funzionare il voice in questo periodo.

PS: Ho seguito fedelmente questa guida e al termine ho poi invitato gli amici Pinowo, Rumegusc, Marcus73 a provare il voce, che dopo un iniziale momento in cui sembra che non funzionasse nulla, aggiustando i livelli del microfono, degli altoparlanti etc, alla fine siamo riusciti a fare una discreta conferenza a 3.

La resa, pur soddisfacente per alcuni versi, lamenta alcuni momenti di perdita di voce. La qualità complessiva non pare essere equivalente a quella di secondlife, ma tuttavia pare promettente e se avete un po’ di pazienza, anche usabile. Ad onore del vero nella grid Craft Rumegusc aveva cercato di usare il voice, ma dice che quando le persone erano più di 3-4 i problemi diventavano insormontabili.

Dal mio punto di vista, sono ragionevolmente soddisfatto, perchè fino a 2 anni fa i miei tentativi di installazione di freeswitch erano stati infruttuosi e frustranti 🙁

 

Salahzar Stenvaag

SecondLife prova a fare il “suo” social network.

Da ieri sera è possibile utilizzare le funzionalità di “socialworking” interne a SecondLife. Per farlo occorrerebbe il nuovo viewer ufficiale o uno che supporti i “profili web”, ma potete usufruirne lo stesso anche se in maniera indiretta, andando nel sito my.secondlife.com da un browser e facendo la login conseguente (potete farlo anche da DENTRO qualunque viewer).

Ecco un video by OpenSource Obscure e un articolo nel suo blog che approfondisce questo tema: http://opensourceobscure.com/2011/07/27/con-il-nuovo-social-network-basato-sui-profili-web-e-ora-possibile-conversare-dentro-e-fuori-second-life/

Entrando nella pagina principale si vede uno “stream” di post dei nostri amici a cui è possibile rispondere immediatamente:

Prossimamente credo che tutti i browser supporteranno questa funzionalità in modo nativo a partire da FireStorm, dove ho già letto nel JIRA della versione 2.6 che dovrebbe uscire subito dopo le vacanze http://jira.phoenixviewer.com/browse/FIRE-2266).

Tra le funzionalità disponibili oltre a quelle stile twitter / fb, con la possibilità di postare sulla propria bacheca, di rispondere ai post di un altro e di mettere “love” (mi piace), ricordiamo la possibilità già presente da un po’ di tempo di poter specificare i propri interessi e di ricercare persone che condividono i propri interessi. Evidentemente siamo ancora in fase sperimentale perchè da quello che mi risulta, non c’è stata alcuna presentazione ufficiale sul blog.

Secondo alcuni non c’era bisogno di questa feature, ma se per caso la ritenete utile, o comunque volete discuterne, postate pure dei commenti…

PS. Pare proprio che vista la mole di nuove funzionalità che sono in offerta negli ultimi mesi, Linden Lab non abbia nessuna intenzione di volere farsi vedere morta…

Salahzar

Secondlife Luglio 2011: L’invasione delle Meshes

Alla fine le Meshes sono arrivate su SecondLife. Nella foto una riproduzione della Statua della Libertà (750 prim circa) costruita realmente su una delle prime 10 sim abilitate alle meshes.

Ecco un piccolo estratto dell’incontro che ho fatto stasera dove istruivo su come si fa per poter fare delle “prove” per importare meshes su SecondLife.

Passo 0: prendete il patentino per poter scaricare le meshes

Andate sul sito secondlife.com, fate login e aprite sul vostro account la scelta “Mesh Upload Status”. Per poter scaricare mesh dovete avere “Payment info on file” (PIOF) cioè avere inserito una carta di credito ed averla usata, e in più completare il questionario dove vi impegnate in sintesi a non scaricare mesh di altri senza il loro consenso e di non scaricare mesh “rubate” o non consentite. Ci sono 10 domande che secondo alcuni blogger “anche una scimmia” potrebbe rispondere esattamente senza pensarci su 🙂

Passo 1: Scaricatevi un viewer compatibile.

Potete scaricare il viewer “ufficiale” compatibile meshes da qui: http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/mesh-development/rev/236084/index.html (attualmente versione 2.8.2),

funziona anche il kirstens viewer, scaricabile da qui: http://www.kirstensviewer.com/

Passo 2: Entrate con il viewer su Agni (grid ufficiale)

Attenzione, dal menu preferenze fate in modo di vedere la grid di ingresso, e selezionate Agni (Se selezionate Aditi entrate nella grid di prova).

Passo 3: Iscrivetevi al gruppo di test “Mesh Volunteers”.

Condizione essenziale per poter entrare nelle prime regioni abilitate al meshing.

Passo 4: Andate in una sandbox abilitata

Le regioni abilitate sono descritte in fondo a questo link: http://wiki.secondlife.com/wiki/Mesh/LiveVolunteers, ad esempio http://maps.secondlife.com/secondlife/Mesh%20Sandbox%206/128/128/30 (Mesh Sandbox 6)

Passo 5: Trovate un modello dae (Collada 1.4) da scaricare (possibilmente opensource o senza vincoli di distribuzione).

Andate nel menu inventory (la valigetta sulla destra), cliccate sul tasto “+” in basso a sx e specificate “Upload Model…”, e specificate il file .dae che volete scaricare.

Si apre un complesso menu di scarico dove potete selezionare la qualità dei vari LOD con cui volete caricare il vostro modello (Alta risoluzione, LOD3, per la visione da vicino, Media risoluzione LOD2, Bassa risoluzione e Bassissima risoluzione per la vista da lontano). Potete giocare con i vari parametri con il calcolo automatico in modo da ridurre il numero totale di triangoli e vertici. C’è un tasto che vi computa il costo in L$ e il costo in prim.

Potete anche specificare la “fisica” cioè come l’oggetto può essere calpestato o reagire alle collisioni. Potete anche impostare la scala.

La statua della libertà che ho scaricato mi  è costata 151 L$ e ha un peso di circa 800 prim equivalenti ed occupa un quarto di sim.

Quando siete contenti, premete upload e vi compare un oggetto nell’inventory che potete rezzare per terra. La statua della libertà usata era enorme ed è difficilmente manipolabile 🙂

Buona fortuna e arrivederci al prossimo mini-tutorial per fare upload degli avatar,

Salahzar

Anno 2033: Second World, un viaggio nel futuro…

Da quando sono un resident di Second World, dall’ormai lontano 2025, da quando cioè abbiamo startato la Grid, ho dovuto imparare a gestire al meglio i numerosi impegni che mi vedono coinvolto, col prezioso aiuto di un software per la selezione e l’organizzazione dei meeting e degli eventi a cui partecipo. Quando entro in Second World trovo ad accogliermi il mio segretario virtuale per il briefing giornaliero delle attività in corso: una sala di controllo mi monitorizza le attività che seguo costantemente e mi mostra lo stato dei progetti in corso. Nessuno mi contatta senza essere passato per il filtro del mio software/segretario. Entro subito nel primo slot di impegni della serata, con un meeting all’Associated Press, in un gruppo di studio in cui si sta discutendo una ricerca condotta sugli albori del giornalismo virtuale. La ricerca espone i dati su come la diffusione delle notizie sulle attività inworld, e sulle esperienze che si andavano sperimentando, sia stato un elemento di grande stimolo alla loro evoluzione. Dai prototipi di Mondo Virtuale (alla Second Life, per intenderci), fino ad arrivare a questa Grid di Second Word, che ha ormai convogliato tutti i resident dei diversi Mondi Virtuali preesistenti, creando standard, criteri organizzativi e di sicurezza, che sono necessari a svolgere tutte le attività a cui i resident partecipano. La discussione in corso nel gruppo di studio, che ha l’obiettivo di rivedere il codice deontologico a cui aderiscono tutti gli attuali organi di informazione virtuale, va avanti animata. Siamo già arrivati a consolidare il 15° articolo del codice, ne mancano ancora 12, ma ce la faremo.

Al termine di questo primo briefing, passo a salutare alcuni amici in un ranch vicino a Virtual Tombstone, in cui un Country Singer intrattiene gli ospiti con la sua musica anni ’70 del secolo scorso. Un momento di puro relax, che mi lascia un attimo di pausa, e di tranquille chiacchiere con gli amici Americani. Mi chiedono della sezione di Grid dedicata all’Italia, in cui si stanno sperimentando nuove tecniche di immersione temporale nell’antica Roma, a partire dal patrimonio esistente nei Musei della nazione. Siamo ancora alla fase iniziale, ma i lavori procedono rapidamente, gli ambienti sono stati creati e i manager sono al lavoro per creare la comunità e i gruppi di comunicazione.

 Mi arriva una chiamata dal software segretario: mi cercano per un problema di lavoro legato all’ultimo progetto che abbiamo rilasciato, lo scorso mese, in versione beta. Ci sono due milioni di testers al lavoro per perfezionarlo. E’ una richiesta urgente di intervento, saluto quindi gli amici e faccio un salto col Teleport. Qui incontro i colleghi del laboratorio alle prese con l’instabilità di quella zona di Grid in cui abbiamo costruito il simulatore spaziale. Il nuovo simulatore di viaggi spaziali fa le bizze. Non rispetta i tempi di “viaggio” stabiliti per le connessioni extra galassia e c’è bisogno di ulteriori testers per completare il debug della versione beta, che sembra avere seri problemi. C’è da diramare un nuovo avviso di reclutamento per altri 200 mila beta testers. Dobbiamo stringere i tempi, il software definitivo deve assolutamente essere rilasciato per fine anno.


Il simulatore dei viaggi spaziali è la più grande innovazione mai sperimentata. Il Mondo Virtuale ha ormai fornito una soluzione stabile alla voglia di viaggiare nello spazio. Una volta rassegnati sul limite invalicabile della velocità della luce (Einstein docet), abbiamo capito che per viaggiare nello spazio è inutile tirarsi dietro il corpo fisico, e che il viaggio nella Realtà Aumentata è di gran lunga più sicuro e redditizio. Tuttavia, le connessioni sulla Grid Extra Mondo possono avvenire solo attraverso le stringhe di singolarità scoperte nel buco nero di Proxima, a 1,5 anni luce dal sistema solare. Attraversando quel buco nero, esplorato con l’ausilio delle centinaia di sonde che vi abbiamo inviate, e perse, abbiamo creato dei Poli di “arrivo” in vari punti della galassia, man mano che l’esplorazione è andata avanti, e nuovi Poli si aggiungono di continuo, allargando il nostro raggio d’azione per l’esplorazione e i contatti nello spazio. Ovviamente abbiamo sempre uno starting time per arrivare al buco nero, che dista 1,5 anni luce dalla terra. Ma un delay di un anno e mezzo è veramente il minimo, per poter fare questa esperienza formidabile, e le nostre navi, per quanto lente, ci hanno consentito di portare fin lì le connessioni a cui collegarci dalla Terra. Rimane ancora come problema, purtroppo insuperabile, vista la velocità della luce e la teoria della relatività ristretta, il tempo necessario allo start up per stabilire la prima connessione. Poi si va …

 La scoperta successiva è stata che altre civiltà sono arrivate, alcune molto prima di noi, a sperimentare questi “viaggi”, abbiamo quindi allacciato relazioni Extra Mondo che ci stanno consentendo di migliorare rapidamente il nostro livello di sfruttamento di questa tecnologia. Gli impatti sono stati enormi, in termini di evoluzione sociale e scientifica, ma, come dicevo, siamo un po’ alle prime armi, con l’attuale software di connessione Extra Mondo. Dovremo lavorare ancora molto intensamente al nuovo tipo di software a struttura biologica, collegato sensorialmente alle nostre terminazioni nervose, per azzerare i nostri tempi di reazione, che sono fondamentali in questo tipo di viaggi. Dopodichè il teleport Extra Mondo diverrà molto più efficiente. Siamo appena all’inizio di un lungo viaggio…

Lascio i ragazzi, sempre impegnati a lavorare sul software tuttora in prova, ma è l’unico che abbiamo al momento, e ci vorrà purtroppo ancora un bel po’ per aver ragione dei bachi relativi ai tempi di trasmissione e teletrasporto.

 Salto rapidamente alla grid Indiana, per incontrare un regista di VirtualVideo (ricordate l’antico Machinima?) che sta realizzando filmati educativi sull’America primordiale. Ormai le immagini vengono completamente sviluppate qui in Grid, e nessuno usa più attori fisici, che dovrebbero recitare, fingere, riprovare, fino a rendere il risultato accettabile per il regista. Ci si concentra invece suoi contenuti. Sviluppare filmati virtuali consente di ottimizzare tempi e risultati, con una resa infinitamente migliore. La differenza fondamentale, rispetto al cinema di una volta, è che noi stessi, con il nostro avatar, siamo chiamati a far parte del filmato, ogni volta che lo vediamo, o, per meglio dire, che lo viviamo. Questo video sull’America primordiale ha qualche difficoltà nella partecipazione, poichè il visitatore è costretto a sorvolare le zone che si visitano, infatti non sempre è possibile atterrare in quei posti piuttosto a rischio, in un ambiente in cui l’uomo ancora non aveva fatto la sua comparsa. Ma vi assicuro che essere immersi in un VirtualVideo ambientato nel Medioevo, magari nel ‘300, pone problemi non minori di sicurezza, sia per gli incontri con i tagliagole locali, sempre pronti a violenze o stupri, che per le condizioni miserrime della vita a quei tempi. Preferisco mille volte essere nella Firenze medioevale a tirare quattro calci ad un pallone di pezza, insieme a quei rudimentali calciatori del ‘400.  Ascolto con attenzione le esigenze che mi pone il regista sulla progettazione di nuovi ambienti virtuali, da creare ex novo per il prossimo VirtualFilm.  Ci sono ancora molti problemi progettuali da risolvere col team di architetti, e come al solito, il tempo non è mai abbastanza, per tutto il lavoro che c’è da fare.

Ogni zona di Grid che viene buildata, per esigenze di svago, di lavoro o culturale, nella VirtualReality, è un pezzo di mondo in più, che si aggiunge a questa infinita Grid, tuttora in continua espansione esponenziale. L’estensione della Grid attuale, dopo i primi 8 anni di vita, è pari ormai a quasi l’intero sistema solare. Tuttavia, i nostri computer quantici non hanno alcuna difficoltà a gestirla. Non hanno ormai limiti, né di potenza, né di gestione delle informazioni, e si tratta solo di organizzare e gestire la complessità derivante. Un puro problema ingegneristico. Per fortuna, i nuovi software ci aiutano anche in questo lavoro. Quello che rimane tuttora insuperata, è la fantasia e l’inventiva della mente umana, a cui non si può assolutamente rinunciare, per proseguire nella spinta evolutiva. Nessun software è ancora in grado di riprodurre le mappe mentali umane, comprese le incertezze e gli errori. Le macchine perfette non hanno fantasia. Questa deriva anche, molto spesso, dagli errori e dal caso. Ogni creativo porta il suo contributo a questo mondo, e gli specialisti di VirtualArchitecture sono ormai i veri artefici di questo grande sviluppo, sono dei veri e propri VIP, ricercatissimi e impegnatissimi. Il compito di noi progettisti e Project Managers è quello di convogliarne gli sforzi ed organizzare il lavoro di gestione e di rilascio delle nuove modellazioni, oltre naturalmente che a lavorare per creare le condizioni di gestione a regime.

Raggiungo il quartiere commerciale di VirtualLondon. Ho bisogno di un restyling dell’Avatar. A proposito, l’Avatar non ha più niente a che vedere con i poveri modellini sviluppati nei primi prototipi di inizio secolo. L’avatar attuale è un Io reale, solo che ha l’aspetto che vogliamo dargli e che più ci aggrada. La gente qui è abituata a vedere cambi di shape e skin, così come si fa con i vestiti, tanto il nostro codice identificativo mantiene visibile la nostra identità, a garanzia del riconoscimento, anche legale, della nostra persona fisica. Abbiamo una identità certificata, con cui effettuiamo tutte le nostre transazioni, e teniamo i rapporti intra mondo. I controlli sono rigidissimi. Ma questi controlli servono solo per l’identificazione legale. Il nostro aspetto esteriore, del nostro avatar intendo, non è affatto influente, tocca a noi deciderlo. Ovviamente, il nostro corpo fisico ha il controllo costante dell’Avatar, ma mentre il corpo fisico è nella poltrona anatomica, immerso nella Realtà Aumentata, il nostro Avatar naviga nel Cyberspazio e lavora per noi, studia, si diverte, discute. Ma gli Avatar sono sempre noi stessi, senza alcun dubbio o dissociazione possibile (per ora?).

Unico limite imposto, sono gli intervalli di rilascio nel mondo fisico, che sono prefissati e controllati dal nostro software di navigazione. Non possiamo consentire che i tempi di vita virtuale superino quelli reali e fisici, per ovvi motivi sociali, e per salvaguardare la salute del nostro corpo fisico. Il controllo è effettuato su base settimanale, e sulla media dei sette giorni. Se passo 20 ore di seguito immerso nella Realtà Aumentata, devo poi recuperare tempo reale per stare nella media del 50% a settimana. Da questo vincolo non c’è deroga, il Ministero della Salute ha posto vincoli rigidissimi, fortunatamente. Ma questo limite di salvaguardia serve soprattutto a tutela dei cyber dipendenti. Alle persone con un buon equilibrio psichico e sociale, la Realtà Aumentata fornisce uno strumento formidabile, per complementare la propria vita reale ed il proprio lavoro. Quindi ci si organizza per bilanciare i tempi fisici e virtuali, suddividendo attività lavorative e di svago tra i due livelli, senza che nessuno dei due ne abbia a soffrire. E’ un grande vantaggio l’espansione della nostra realtà, fino all’utilizzo ampio di modelli e ambienti nuovi, mai visti o sfruttati prima.

Finisco la giornata in un meeting del “Consiglio di Gestione” della zona Italiana. Ci sono i soliti problemi coi Greafer, sempre più aggressivi e scaltri. La Sicurezza non riesce a stare dietro alle mille diavolerie che sfornano ogni giorno, per divertirsi, arrecare danno e rompere le scatole al prossimo. Tocca quindi finanziare lo sviluppo del nuovo livello di sicurezza, per adeguare il software e ingaggiare  più agenti operativi in Grid. Storia già vista …

Ma per oggi basta così, stacco e vado a dormire. Domani la realtà fisica richiederà non meno impegno. Sono in ferie ma abbiamo programmato un’escursione al lago, quello fisico stavolta, non virtuale, e una c’è una brace di cinghiale che ci attende… Buona Vita Aumentata a tutti.

OpenSim: installiamo una grid. Parte Seconda: sito web e gruppi

L'accesso wifi alla nostra grid

Come vi avevo promesso nel mio primo articolo http://virtualworldsmagazine.wordpress.com/2011/07/15/opensim-nuove-istruzioni-per-esperti-come-configurare-una-grid-0-7-1-1/ ora proviamo ad arricchire la nostra grid “nuda” con due caratteristiche secondo me essenziali per una grid ma che NON sono parte essenziali della installazione di base di OpenSim:

  • L’interfaccia web (anche detta wifi) “Web Interface for… I”, sviluppata da Diva Canto, che consente di fare le seguenti attività:
  • Creazione di utenti, controllati dall’amministratore
  • Possibilità di definire degli avatar di default per i nuovi account
  • Consente l’aggiornamento degli account sia agli utenti che all’amministratore
  • Consente la cancellazione di utenti
  • Consente il recupero della password via email
  • Consente un accesso limitato all’inventory dell’utente
  • Definisce una pagina web di benvenuto
  • La gestione dei gruppi (ottenuta usando un componente che si chiama XmlRpcGroup), che consente una elementare gestione dei gruppi e dei messaggi offline.
  • Vedremo in questo articolo le operazioni necessarie per installare questi due “add-on”.

    1. Parte Prima: installiamo Wifi.

    (101) Dobbiamo andare a questo link dal sito di Diva Canto: https://github.com/diva/d2/downloads e scarichiamo (102) lo zip corrispondente all’ultima versione di wifi 0.7.1.1. (103) Lo spacchettiamo e (104) sovrascriviamo (dopo averne fatto un opportuno backup i file ivi contenuti nel direttorio OpenSim dove avevamo spacchettato la versione di OpenSim della grid di cui all’articolo precedente.
    Wifi contiene le seguenti cartelle:
    • bin con alcune dll specifiche di wifi
    • doc con documentazione di wifi
    • wifipages con le pagine di gestione html
    Occorre a questo punto configurare (105)  Robust.ini in modo da lanciare anche il modulo wifi:
    [Startup]
    ServiceConnectors = "
    8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,
    8003/OpenSim.Server.Handlers.dll:XInventoryInConnector,
    8004/OpenSim.Server.Handlers.dll:FreeswitchServerConnector,
    8003/OpenSim.Server.Handlers.dll:GridServiceConnector,
    8002/OpenSim.Server.Handlers.dll:GridInfoServerInConnector,
    8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector,
    8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector,
    8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector,
    8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector,
    8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector,
    8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector,
    8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector,
    8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector,
    8002/Diva.Wifi.dll:WifiServerConnector"
    Ricopiate una nuova sezione (106) [WifiService] in Robust.ini ricopiandola da Wifi.ini.example, ricordate di modificare localhost con il vostro ip:
    [WifiService]
        GridName = "My World"
        LoginURL = "http://<il tuo ip>:8002"
        WebAddress = "http://<il tuo ip>:8002"
        ....

    A questo punto dovete rilanciare (107)  il servizio Robust ed essere in grado di lanciare wifi (108) accedendo a http://<iltuoip>:8002/wifi Al primo lancio dovete (109) cliccare su “INSTALL WIFI” in alto a dx della maschera dopo di che dovete inserire la pwd dell’amministratore per poter avere un avatar di gestione. (110) Create gli avatar “template” da amministratore chiamandoli “Male Avatar” “Female Avatar” “Neutral Avatar” in modo da offrire a chi entra degli inventory e delle apparenze già precostituite. E ok, avete installato wifi….

    2. Installazione dei gruppi

    La struttura dei gruppi con XmlRpc

    Per installare i gruppi dovete scaricarvi invece il seguente tar.gz da questo sito (201):

    https://github.com/mcortez/flotsam/tarball/master rinominate il file scaricato (se già non lo ha in modo da terminare con .tar.gz), (202) spacchettatelo.

    (203) E ricopiate nel server la cartella “mcortez-flotsam-963d99eflotsamServersXmlRpcGroupsServer” dentro la root del vostro server http (su ubuntu sotto /var/www) chiamandola ad esempio (204) “groups” accertatevi di modificare le permissions (204a)  chmod o il proprietario chown in modo che il server apache sia in grado di leggere e scrivere questi file.

    Create un database per gestire i gruppi e i messaggi offline:

    con la tecnica suggerita dall’articolo precedente, andate in (205) http://<vostroip>/phpmyadmin, specificate la pwd di root del db mysql e su privilegi (206) create un utente opensim_group con pwd opensim_group e creategli il db corrispondente.

    A questo punto dovete modificare due file:

    il file sotto /var/www/groups/config.php.example (copiatelo come config.php) in modo da essere (207):

    <?php
        $dbName = "opensim_group";
        $dbHost = "localhost";
        $dbPort = 3306;
        $dbUser = "opensim_group";
        $dbPassword ="opensim_group";
    
        // Set to 0 for no debugging, 1 for essential debugging, 2 for more information.
        $debugXMLRPC = 2;
        $debugXMLRPCFile = "xmlrpc.log";
    
            //////////////////////////////
            //// Group security
            /////////////////////
    
            // A xmlrpc client must have this key to commit changes to the Groups DB
            // Leave blank to allow all clients to make changes.
            $groupWriteKey = '1234';
            $groupReadKey  = '1234';

    Dove sostituite l’eventuale (208) database nome utente e password se per caso non avete usato questi… (209) E se volete anche le chiavi di accesso sostituendo il PIN ovvio 1234.

    Poi proseguite modificando il vostro file OpenSim.ini cancellando la impostazione vecchia della stanza [Groups] e mettendo invece la seguente (210):

    [Groups]
        ;# {Enabled} {} {Enable groups?} {true false} false
        ;; Enables the groups module
        Enabled = true
    
        ;# {Module} {Enabled:true} {Groups module to use? (Use GroupsModule to use Flotsam/Simian)} {} Default
        ;; This is the current groups stub in Region.CoreModules.Avatar.Groups.
        ;; All the other settings below only really apply to the Flotsam/SimianGrid
        ;; GroupsModule.
        ;; This module can use a PHP XmlRpc server from the Flotsam project at
        ;; http://code.google.com/p/flotsam/
        ;; or from the SimianGrid project at http://code.google.com/p/openmetaverse
        Module = GroupsModule
    
        ;# {MessagingEnabled} {Module:GroupsModule} {Is groups messaging enabled?} {true false} true
        ;MessagingEnabled = true
    
        ;# {MessagingModule} {MessagingEnabled:true} {Module to use for groups messaging} {GroupsMessagingModule} GroupsMessagingModule
        MessagingModule = GroupsMessagingModule
    
        ;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
        ;; Service connectors to the Groups Service as used in the GroupsModule.  Select one depending on
        ;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
        ServicesConnectorModule = XmlRpcGroupsServicesConnector
    
        ;# {GroupsServerURI} {Module:GroupsModule} {Groups Server URI} {}
        ;; URI for the groups services
        ;; e.g.  for Flotsam XmlRpc
        ;; or  for SimianGrid
        GroupsServerURI = "http://localhost/groups/xmlrpc.php"
    
        ;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
        ;; Enable Group Notices
        ; NoticesEnabled = true
    
        ;; This makes the Groups modules very chatty on the console.
        DebugEnabled = true
    
        ;; XmlRpc Security settings.  These must match those set on your backend
        ;; groups service if the service is using these keys
        XmlRpcServiceReadKey    = 1234
        XmlRpcServiceWriteKey   = 1234

    Attenzione a inserire esattamente questa configurazione: io ho perso un sacco di tempo cercando di modificare la versione di base di OpenSim.ini.

    Ora potete rilanciare il vostro OpenSim.exe ed entrando inworld avrete i vostri bravi gruppi funzionanti.

    Cosa c’è dopo?

    Come promesso, nel prossimo articolo illustreremo come configurare l’ultimo elemento per dare professionalità alla vostra grid: il voce. Ricordate che una grid si può installare in infiniti modi, usando differenti add-on, noi abbiamo usato quelli suggeriti dal sito opensim.org, in particolare seguendo le guide in inglese a queste pagine:

    http://opensimulator.org/wiki/Wifi

    http://opensimulator.org/wiki/Enabling_Groups

    Ma amministratori esperti possono caricare degli add-on integrati con i principali sistemi di gestione di contenuti CMS come ad esempio JOOMLA, XOOPS, MOODLE.

    Non vi spiego come configurare i moduli per questi CMS, per questo ci sono amministratori esperti.

    Vi aspettiamo alla prossima puntata dove installeremo FreeSwitch…

     

    Salahzar

    OpenSim Nuove istruzioni per “esperti”: come configurare una grid (0.7.1.1)…

    Abbiamo pubblicato ad inizio anno alcune guide per consentire a persone anche relativamente digiune di programmazione di configurare/installare 1/4 sim ed eventualmente collegarle al mondo esterno o ad altre grid. Queste guide erano caratterizzate dall’essere abbastanza veloci e consentire la creazione di una regione in pochi minuti.

    Perchè creare una grid invece di Sim Isolate?

    Per coloro di voi un pochino più coraggiosi, spieghiamo ora come installare una intera Grid, cosa che può essere necessaria ed utile se volete utilizzare OpenSim in una struttura commerciale o in una scuola o istituto, o in una Università dove sia necessario configurare più di 1-4 regioni. E dove magari è necessario evitare che intrusi possano entrare, oppure ancora se voleste proprio dare vita ad una struttura di hosting di sim indipendenti (pare che sia uno sport abbastanza diffuso negli ultimi tempi, anche se a me sembra che non ne valga la pena 🙂 ).

    Uno dei motivi seri per cui si costruisce una grid anzichè un insieme di sim standalone è il fatto di poter suddividere il carico su più computer distinti. Se ad esempio voleste creare una struttura con 50 sim, sarebbe un po’ un suicidio crearle e caricarle su un’unica macchina, molto meglio suddividere il carico su un gruppo di computer che cooperano in modo da avere ad esempio una macchina “Robust” che mantiene l’infrastruttura della grid (Inventory, Identity, ecc), e distribuire le sim ad esempio mettendone due per macchina. (D’altronde la stessa Linden Lab di solito ospita su una macchina fisica UNA SOLA sim, ad eccezione delle HomeStead che vengono ospitate non più di 4 per macchina fisica). Rispetto ad una architettura HG (Hypergrid) abbiamo anche il vantaggio che possiamo tenere sotto controllo l’identità di chi si registra ed usa le nostre sim, e di poter appoggiare un sito web per la gestione delle identità.

    La grid di solito riesce anche a garantire quei servizi professionali che oramai sono essenziali in un mondo virtuale che voglia poter essere utilizzato seriamente, come ad esempio il servizio di gestione dei gruppi, un modulo “Money” per gestire acquisti interni, e soprattutto il modulo “Voce”.

    Struttura di questi Tutorial.

    Per rendere meno ostico l’argomento separeremo i vari argomenti in diversi articoli, di cui questo è il primo:

    • Prima parte: la grid base (questo articolo)
    • Seconda parte: installiamo interfaccia web e i gruppi/profili
    • Terza parte: installiamo il voice (freeswitch)
    Queste operazioni non sono banalissime (ma neanche impossibili), se si seguono le guide “giuste”. Quindi seguitemi con calma ed attenzione.

    Ingredienti di base Hardware:

    Se vogliamo usare la grid al nostro interno abbiamo bisogno di una macchina Linux (le istruzioni sono state certificate per Ubuntu 11.04).
    Se non vogliamo comprare e gestire uno o più computer fisici  l’ideale è di “affittare” un server dedicato che oltretutto risolve in modo limpido i problemi di FireWall e di Routing. Esistono dei provider che consentono di affittare un server dedicato virtuale per circa 10 € al mese (Io ho provato http://www.sisvps.com/ bronze plane che fornisce 512 Megabyte di ram) oppure sui 25 € al mese presso http://www.ovh.it/vps/. Se avete qualche finanziamento potete prendere anche soluzioni con server dedicati “veri” che però costano decisamente di più, ma garantiscono maggiore sicurezza e velocità (ad esempio http://www.kimsufi.it/). In ogni caso il parametro più delicato è sicuramente la quantità di RAM, ricordate che con meno di 512 Megabytes non riuscite a fare nulla! Quindi non prendete l’entry level con 256 M su cui oramai non gira nemmeno un piccolo server php con database mysql (!).

    Installiamo il S.O. e gli strumenti prerequisiti (MYSQL, APACHE, MONO)

    Il mio suggerimento è di usare come Sistema Operativo Ubuntu 11.04, dove è facile installare i vari pacchetti.
    Ecco la sequenza da adottare con ubuntu. (se per caso siete già utente root non c’è bisogno di dare il sudo).
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install mono-complete
    sudo apt-get install mysql-server
    sudo apt-get install phpmyadmin

    Le prime due servono per avere il repository dei programmi di apt-get allineato, la 3a installa mono che è il motore che ci serve. Le altre due installano il gestore del database e l’interfaccia web (comprensiva di php, apache).

    Durante l’installazione di mysql-server vi viene chiesta la “pwd” di root del database. Ricordatevi di trascriverla da qualche parte.

    Durante l’installazione di phpmyadmin vi viene chiesto di installare apache2 (mettete con la barra spaziatrice il baffo sulla prima opzione e poi tab invio per confermare), poi vi viene chiesta la pwd di root che avete dato a mysql-server e infine una nuova pwd di amministrazione di phpmyadmin (io metto admin/admin). Per le altre eventuali richieste accettate il default.

    Quando avete terminato andate sul vostro server con phpmyadmin (http://<vostroip>/phpmyadmin), specificate root e pwd di root già definite. Andate su privileges e create un utente opensim accessibile localmente con pwd opensim (o altra) e specificate di creare un database con lo stesso nome dove l’utente ha tutti i privilegi.

    Installazione e configurazione di Robust

    A questo punto quello che vi rimane da fare è di scaricare la versione binaria di OpenSim da qui: http://opensimulator.org/wiki/Download, attualmente la 0.7.1.1, la scaricate con wget o dal browser e la scompattate.

    Poi dovete andare nella cartella bin da un terminale e copiate Robust.ini.example in Robust.ini e cambiate le impostazioni del db ed eventualmente la presentazione della vostra grid.

    [DatabaseService]
        StorageProvider = "OpenSim.Data.MySQL.dll"
        ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=opensim;Old Guids=true;"
    [GridInfoService]
        ; These settings are used to return information on a get_grid_info call.
        ; Client launcher scripts and third-party clients make use of this to
        ; autoconfigure the client and to provide a nice user experience. If you
        ; want to facilitate that, you should configure the settings here according
        ; to your grid or standalone setup.
        ;
        ; See http://opensimulator.org/wiki/GridInfo
    
        ; login uri: for grid this is the login server URI
        login = 
    
        ; long grid name: the long name of your grid
        gridname = "the lost continent of hippo"
    
        ; short grid name: the short name of your grid
        gridnick = "hippogrid"
    
        ; login page: optional: if it exists it will be used to tell the client to use
        ;                       this as splash page
        ;welcome = http://127.0.0.1/welcome
    
        ; helper uri: optional: if it exists if will be used to tell the client to use
        ;                       this for all economy related things
        ;economy = 
    
        ; web page of grid: optional: page providing further information about your grid
        ;about = http://127.0.0.1/about/
    
        ; account creation: optional: page providing further information about obtaining
        ;                             a user account on your grid
        ;register = http://127.0.0.1/register
    
        ; help: optional: page providing further assistance for users of your grid
        ;help = http://127.0.0.1/help
    
        ; password help: optional: page providing password assistance for users of your grid
        ;password = http://127.0.0.1/password

    A questo punto basta che lanciate “mono Robust.exe” e verifichiate che non ci siano errori…

    Ricordatevi di creare un utente con “create user” e registratevi i suoi dati che serviranno quando aggiungerete la PRIMA SIM.

    Lanciamo la nostra prima sim associata alla grid

    Da un altro terminale andate sempre nella cartella bin e modificate il file OpenSim.ini e cambiate l’architettura:

    [Architecture]
    
        ; Include-Architecture = "config-include/Standalone.ini"
        ; Include-Architecture = "config-include/StandaloneHypergrid.ini"
        Include-Architecture = "config-include/Grid.ini"
        ; Include-Architecture = "config-include/GridHypergrid.ini"
        ; Include-Architecture = "config-include/SimianGrid.ini"
        ; Include-Architecture = "config-include/HyperSimianGrid.ini"

    Deve rimanere senza il ; solo il pezzo che indica Grid.ini.

    Dopo di che andate su config-include/GridCommon.ini (ricopiatelo da GridCommon.ini.example se manca) cambiando tutti i riferimenti dove leggete :8003 in modo che si legga chiaramente l’IP di dove avete messo Robust. Attenzione che vi sono tanti di questi quindi cercate 8003 senza dimenticarvene nessuno.

    [AssetService]
    
        DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll"
        AssetLoaderArgs = "assets/AssetSets.xml"
    
        ;
        ; change this to your grid-wide asset server
        ;
        AssetServerURI = "http://78.47.22.111:8003"

    A questo punto basta che lanciate questa prima sim con “mono OpenSim.exe”. La prima volta che la lanciate vi chiede un insieme di domande a cui dovrete rispondere. Le uniche cose importanti sono:

    • Il nome della regione che create
    • L’IP esterno della regione che dovrà coincidere con quello dove sta la sim
    • L’estate manager user che deve coincidere per la prima sim con quello fornito a robust
    Una volta salito, bast che vi colleghiate con Imprudence creando una nuova grid con la seguente loginuri: http://<<gridIP>>:8002/
    L’intero processo una volta che lo sapete fare partendo da Linux vergine richiede non più di mezz’ora andando anche tranquilli….
    Arrivederci al prossimo tutorial Parte II in cui vedremo come configurare l’interfaccia web e i gruppi. Se avete dei problemi contattatemi qui nei commenti, inworld come Salahzar Stenvaag o via email salahzar@gmail.com…
    Disclaimer: Questo articolo è ovviamente una introduzione funzionante. Maggiori informazioni si trovano nel sito ufficiale di opensim in inglese (http://opensimulator.org/wiki/Configuration e pagine connesse).
    Buona fortuna 🙂

    L’arte di Patrick Moya in Costa Azzurra

    Nell’ambito della manifestazione “L’arte contemporanea in Costa Azzurra” l’artista francese Patrick Moya ha allestito, presso il centro d’arte la Malmaison di Cannes, una mostra denominata “La Civilisation Moya”. Patrick ha interamente dipinto le pareti del centro d’arte con pitture rappresentanti uno spaccato veramente impressionante della sua arte (http://www.youtube.com/watch?v=Z825-R4QorU&feature=player_embedded). Sul suo sito potete trovare sia la ricostruzione di tutto il lavoro fatto dall’artista per preparare la mostra, con un diario dei lavori giorno per giorno (http://www.moyapatrick.com/malmaison.htm), sia il collegamento in streaming con i locali della mostra in cui Patrick ed i visitatori si muovono tra le diverse sale dell’allestimento.

    Ebbene, ho raggiunto l’artista che illustrava la mostra ai visitatori, entrando in Second Life, nell’identica installazione allestita da Patrick presso la sua land (http://slurl.com/secondlife/Moya Museum/196/119/25). Mentre ammiravo dall’esterno la ricostruzione della Malmaison, Patrick mi è venuto incontro, e mentre commentava in streaming su web la mostra dall’installazione reale a Cannes, mi ha guidato in Second Life attraverso le diverse sale dell’esposizione (http://www.youtube.com/watch?v=mg8xGtyMHqE&feature=related). Non provo neanche a descrivervi le immagini della sua arte rappresentata sulle pareti dell’allestimento, che in Second Life sono ben visibili, ma invito tutti i lettori a farci un salto per vivere questa esperienza davvero unica. Vi aggiungo solo un piccolo anticipo delle immagini che vedrete, pubblicando alcune foto che, con il permesso di Patrick, ho catturato durante la visita.

    Conosco Patrick Moya dal 2008, l’ho incontrato a Firenze nell’ambito della manifestazione “Rinascimento Virtuale” allestita in quell’anno indimenticabile presso la fortezza da Basso, e ricordo con molto piacere questo signore che, con infinita pazienza e gentilezza, ci spiegava le sue realizzazioni. Conservo ancora un minuscolo libricino da lui realizzato con bellissime immagini.  Grazie ancora, Patrick Moya.

    Cosa sta succedendo in SecondLandia? Spezzatino di novità tecniche e non solo pre-estivo.

    Sembra che il tasso di cambiamenti in SecondLife stia aumentando considerevolmente, segno evidente che c’è in corso una inversione di tendenza rispetto alla stagnazione relativa degli ultimi due anni, nel quale c’è stata una obiettiva contrazione dell’appeal. Non siamo ancora usciti completamente dalla recessione, ma abbiamo di nuovo un sacco di cose di cui raccontare senza frecciatine sarcastiche contro l’azienda, abitudine che stava ormai consolidandosi.

    Con la sola eccezione dell’introduzione delle Meshes (che purtroppo ancora latitano, nonostante la promessa di diventare pubbliche a Luglio 2011), ecco un elenco di Novità o di “achievements” appetitosi dal mio punto di vista :

    [cfr anche ultimo post sul blog di SecondLife: http://community.secondlife.com/t5/Featured-News/July-Update/ba-p/964435 e varie altre comunicazioni di servizio]

    1) Si è ampliata la scelta fra gli avatar di base al momento del login

     

    2. Le chat di gruppo ora sono tornate a funzionare come 3 anni fa(!)

    3. Nuovi profili alla facebook e nuovo marketplace con consegna degli oggetti direttamente nel proprio inventory (non ancora disponibile)

    4. Nuovo search più efficiente

    5. Modalità viewer Basic Mode con la voce(!)

    6. Per chi scripta

    Per gli scriptatori folli, non so se sapete che ora è possibile utilizzare un editor locale (lsleditor è la scelta appropriata), per poter scriptare e conservare i propri script. Inoltre sono comparse un tot di nuove funzionalità interessanti:

    Inoltre è stato sperimentato negli ultimi giorni un nuovo motore Mono2 che dovrebbe risolvere un bel po’ di problemi.

    Unity3D: un nuovo futuro per i mondi virtuali?

    Stasera sono tornato a casa quando mi sono imbattuto in questo post http://metaverseink.com/blog/?p=73 scritto da Diva Canto, una delle maggiori programmatrici del progetto OpenSim (http://www.opensimulator.org) dove viene presentato un sistema per costruire mondi virtuali accessibili attraverso un browser web in modo facile ed intuitivo. Il sistema è un sistema commerciale e viene distribuito in versione gratuita e a pagamento. Non mi è ancora chiarissimo le policy di uso che potrebbero anche essere abbastanza impegnative se siete una azienda che sviluppa ad esempio videogame per iPhone, tuttavia questo genere di tecnologie credo che diventerà un punto di partenza per il futuro dei nostri amati mondi virtuali 🙂

    Sono andato sul sito http://unity3d.com/gallery/  e le demo che ho visto sono state impressionanti cliccando sulle icone viene caricato un plugin che consente di avere una esperienza tridimensionale (in solitaria) al cui confronto SecondLife pare una reminiscenza di un mondo antico…

    Il video promozionale

    Di questo video guardate in particolare gli spezzoni attorno a 6’10” e attorno a 10′ sono interessantissimi (!)

    [vimeo

    Osservazioni

    Dopo un paio d’ore in cui mi sono scaricato il loro SDK (400 Mbyte!) e avendo visto che hanno una nutrita serie di manuali di documentazione che spiegano come e cosa fare, mi rendo conto che Unity3D è un universo complesso e completo forse anche più di SecondLife…

    Ben lontano da avere avuto una esperienza completa: ho solo raschiato la superficie in modo rozzo e superficiale.

    Quello che intravvedo, mi pare però importante e per molti versi, entusiasmante..

    Voi che ne dite?

    Salahzar Stenvaag

    Il Rod Humble pensiero, cosa dice il CEO della Linden Lab?

    Diverse interviste e dichiarazioni sono state ultimamente rilasciate dal CEO della Linden Lab Rod Humble, ne riporto un link ) al sito della Bloomberg (uno dei più noti in campo economico e finanziario). Nell’intervista, rispondendo alle domande della giornalista, che gli chiedeva che senso ha spendere soldi reali per acquistare beni virtuali, Rod espone la sua visione della creatività in SL e dà un quadro aggiornato e ottimistico della situazione aziendale.

    Le considerazioni riguardano la situazione dell’ultimo quarter, il migliore finora di sempre per l’azienda Californiana, che risulta in attivo e con una buona situazione di cassa. Dichiara anche che non sono previsti investimenti, al momento. Ricorda che circa 16.000 persone si loggano giornalmente in SL e che il valore della piattaforma sta soprattutto sulle comunità e sulla possibilità di esprimere la creatività dei residenti. Insomma, un quadro di risanamento finanziario e di ottimismo per il futuro. La mia personale impressione è che i tagli e le ristrutturazioni passate, col rallentamento della spesa in investimenti, abbiano portato l’azienda al risanamento finanziario, tuttavia, sebbene si rilevino costanti progressi tecnici (il lavoro costante di miglioramento sul Viewer2 e la preannunciata introduzione delle meches nei prossimi due mesi), ancora manca una chiara vision sul futuro di questo mezzo che, al momento, è ancora il miglior prototipo di quanto potranno diventare, nel futuro, i Mondi Virtuali). Forse dovremo attendere tempi migliori e un nuovo CEO per passare dal risanamento allo sviluppo…

    Evoluzione grafica dei nuovi viewer. Ombre, Profondità di campo (DOF), Visione StereoScopica. Nuove possibilità per i “machinimisti” e per i fotografi.

    Sarà forse sfuggito ai più che l’evoluzione dei viewer di SecondLife è ora giunta ad un discreto grado di realismo nella resa di colori, ombre, effetti visivi. Con l’uscita del viewer ufficiale 2.7.1 abbiamo delle nuove opzioni per l’abilitazione di questi effetti: cfr http://wiki.secondlife.com/wiki/Lighting_and_shadows.

    Per abilitare senza frustrazioni queste opzioni occorre avere una scheda grafica adeguata che supporti bene l’OpenGL. Schede grafiche decenti come la NVIDIA GTS 450 oppure RADEON HD5770 costano attorno ai 100-120 € (cfr. http://www.nvidia.it/object/graphics_cards_buy_now_it.html), ma ne vale decisamente la pena. Purtroppo su molti portatili questi effetti rimarranno fantascienza per via della tendenza a non supportare schede grafiche potenti – anche perchè tendono a consumare molto la batteria. Io sono sempre dell’opinione che per gustare al meglio i mondi virtuali ci vada almeno un desktop 🙂 

    Che sono in sintesi 3 nuove impostazioni:

    • Lighting and shadows
    • Ambient Occlusion
    • Depth of Field
    Proviamo a spiegarle una per ciascuna . Sulle ombre credo che non ci sia moltissimo da dire salvo che sono semplicemente entusiasmanti… Ambient occlusion può essere spiegata come un sistema per “sfumare” le ombre di oggetti vicini, concetto meglio espresso dall’immagine seguente:

    ambient occlusion

    Infine, Depth of Field, “profondità di campo” serve per fare fotografie realistiche dove come succede normalmente è a fuoco un oggetto mentre lo sfondo è sfumato o viceversa.

    Profondità di campo

    Quando abilitate la profondità di campo ricordatevi che se per caso vedete qualcosa di sfumato mentre navigate con la camera per forzare la messa a fuoco basta che orbitiate attorno all’oggetto che vi interessa.

    Altri viewer

    Firestorm consente di gestire in maniera fine altri parametri di visualizzazione associati alle ombre e alla illuminazione (ma non ha – ancora – la profondità di campo).

     

    Kirstens invece ha una funzionalità interessantissima per visualizzare le scene in 3D in modo che si possano vedere con i famosi occhialini. Se avete degli occhiali “anaglifici” può essere molto interessante..

    Wireframe: una immersiva di Fiona Saiman

    Una mostra immersiva di Fiona Saiman, con immagini realizzate con la tecnica del Wireframe, cioè del “fil di ferro”. E’ la sensazione che avrete ad immergervi in queste quinte spettacolari, allestite presso la sede di 2LifePhotos presso la sim di Itland. L’esposizione, aperta il 28 giugno, resterà apeta fino al 2 luglio. No perdetevela. Le immagini che riporto sotto sono solo un lontano tentativo di rappresentare quanto è visibile all’SLURL: (http://slurl.com/secondlife/Itland%20Entertainment/196/67/26).

    Uno Status Symbol per riconoscersi dai niubbi: l’AO. Pose e animazioni personalizzate… Ma sappiamo cosa sono?

    Una animazione più naturale delle "braccia incrociate"

    …. parlando di Niubbi e Papere

    Un esempio di AO disponibile sul marketplace a 350L$

    Una delle principali cose che consentono di distinguere un niubbo da un oldie di secondlife pare proprio che sia l’uso dell’AO. Infatti non appena entrati in SL la camminata è un po’ da “paperi” e l’animazione dell’avatar fermo è stereotipata.

    Ricordo che quando, da niubbo, ho visto una avatar ragazza che da ferma assumeva pose “naturali” ero rimasto ad occhi spalancati, e la prima cosa che le avevo chiesto era: come fai? E lei mi rispose automaticamente “animation override”. All’epoca questa risposta mi sconvolse, perchè non sapevo cosa fossero questi mostri. Ma adesso li mastico tutti i giorni a colazione e per gli amici si chiamano “AO”. Molti avatar per “sniubbarsi” si comprano un AO, che magari è capace di costare anche 1000 o 2000 L$, in modo da assumere pose originali e non condivise con “il volgo”. Esistono degli AO gratuiti, ad esempio sempre dal market place https://marketplace.secondlife.com/p/MRS-FREE-DANDY-male-AO/2190801 oppure degli “scheletri di AO” gratis ma privi di animazioni, come ad esempio https://marketplace.secondlife.com/p/ZHAO-II-MB2-BOX-the-latest-from-the-Open-Source-ZHAO-Project/256352. Ho letto di molti che hanno acquistato un AO trovandoselo “privo di animazioni” o comunque non sapendo come usarle un AO. E’ una frustrazione notevole, per cui vale la pena parlarne un momento.

    Ma cosa sono questi AO e come si usano?

    Per dirla in poche parole, un AO è un “catalogo” di animazioni (pose, camminate, etc), che vengono associate a quello che fa l’avatar in quel momento.

    Un avatar fermo in piedi si dice che è “standing”, gli AO forniscono un bel po’ di animazioni realistiche di quello che farebbe un avatar quando è fermo: si liscia i capelli, si mette le mani conserte, le tiene distese, ecc.

    Un avatar seduto “sitting”, può accavallare le gambe, agitarsi in modo nervoso, guardare annoiato la farfalla vicina, sbadigliare ecc.

    Un avatar che cammina può camminare da uomo virile oppure da donnina equivoca.

    Insomma usando il giusto AO si può sottolineare in modo interessante e pregnante la propria personalità. Il che è uno di quei famosi valori aggiunti che possono essere resi dai mondi virtuali e che li distinguono dalle banali grige chat.

    Il cuore di un AO è quindi un elenco di animazioni (spesso costose, non modificabili, non copiabili e non trasferibili) e soprattutto una NOTECARD che contiene l’elenco delle animazioni associate ad ogni stato (standing = in piedi, walking = camminando, running = correndo , flying = volando).

    Gli AO poi sono di solito gestiti attraverso un HUD, cioè una plancia di comandi da dove si può controllare quali animazioni si vogliono usare e in quale momento e visto che ci siamo l’AO può controllare anche se ci vogliamo sedere per terra o altre amenità.

    Se andate in una terra di roleplaying o di simulazione spesso viene fornito un HUD con un AO in modo che abbiate un “contegno appropriato”. Mi è successo ad esempio entrando in terre “militari” dove potevo muovermi e comportarmi come “soldato”…

    Modificare le animazioni di un AO (o riempire un AO vuoto)

    Se scegliete di usare lo ZHAO gratuito o comunque volete costruirvi delle animazioni personalizzate magari pescando e miscelando altri AO, ecco che dovete imparare

    Qui: http://www.secondlifeitalia.com/community/viewtopic.php?f=14&t=28559&p=274104#p274104 scritta da Vale-AQ moderatore-trice del forum di SecondLife Italia c’è un utile riassunto per utilizzare gli AO gratuiti che ricopiamo per comodità

    Lo Zhao e’ un HUD, cioe’, un oggetto che invece di attaccarsi al corpo, si attacca allo schermo.
    Dentro questo oggetto ci devi mettere le tue animazioni, e poi gli devi dire come leggerle.
    Allora, fai cosi’:
    1) vai in un posto dove tu possa rezzare
    2) rezza a terra il tuo zhao (occhio, e’ piccolino, quindi rezzalo dove il pavimento e’ neutro e pulito)
    3) edita lo zhao a terra, (tasto destro mouse EDIT), e quando ti si apre la finestra di edit, vai nell’ultima tab a destra, “content”)
    4) apri la tua inventory, e trascina, una per una, le animazioni che vuoi utilizzare nello zhao
    5) riprendi lo zhao in inventory (attenzione, lo zhao e’ copy, quindi adesso avrai due zhao dentro la inventory, e indossalo come hud.
    6) quando lo vedi come hud, tasto destro ancora, e rifai EDIT.
    7) vai al tab content, e localizza la notecard chiamata Default, che c’e’ dentro, doppio click, e aprila.
    8) troverai una lista fatta pressappoco cosi’:
    [ standing ]
    [ walking ]

    eccetera. (occhio che c’e’ uno SPAZIO fra le parentesi quadre e l’azione, se non lo rispetti, avrai un messaggio di errore)
    9) aggiungi, dopo l’azione “standing” le tue animazioni RISPETTANDO ESATTAMENTE il nome, maiuscole incluse, e separandole con punto e virgola ;
    10) aggiungi anche tutte le animazioni che vuoi per le altre azioni (tipo un bel power walking all’azione walking, e un bel fly all’azione corrispondente. Comunque, il succo di tutto e’ l’azione “standing”, cioe’ cosa fai quando stai fermo)
    11) finito di aggiungere i nomi delle animazioni (mi raccomando come sono scritte, mettiti calmo e senza fretta), salva la notecard, ed esci da edit.
    12) sullo zhao, localizza il bottone “Load”, (scusa, non ricordo quale e’, adesso). Premilo, e ti si aprira’ la classica finestrella blu col menu’ “load”, scegli il nome della notecard Default (ad essere raffinati, avresti potuto avere tre notecard, con tre corrispondenti profili e animazioni, e caricare quella che volevi al momento..)
    13) se tutto e’ andato bene, dopo un po lo zhao ti comunichera’ che ha caricato tutto, e tu te ne accorgerai perche’ comincerai ad assumere le pose che hai messo dentro l’AO.
    :D

    Se qualche cosa e’ andata storta (classico e’ aver scritto male i nomi, basta una maiuscola o un – invece di _), lo zhao ti dira’ che c’e’ un errore, per esempio, non trova un’animazione. Rivai al punto 6 e ripeti con piu’ attenzione.
    Occhio che se manca lo spazio fra la parentesi quadra e il nome dell’animazione, lo zhao ti da un errore non facilmente comprensibile (ora non ricordo quale e’, ma non si capisce subito), controlla la notecard passo passo, magari fa una bella cosa, salvatene una copia vuota in inventory, e usa quella come template.
    Occhio anche al fatto che per inserire le animazioni sullo zhao devi per forza toglierlo e rezzarlo a terra, per editare la notecard, non serve, anche se indossato lo puoi fare.
    Occhio anche infine che lo zhao con animazioni magari no tranfer, ti diventa anch’esso no transfer, ma te ne rimane una copia vuota sempre nell’inventory. Io parcheggio le copie vuote dello zhao in una directory, e la copia operativa in un’altra, con una sottodirectory contenente le animazioni che sono dentro l’ao, ma io sono un po’ maniaca… :8:
    Puoi anche dire allo zhao quanti secondi usare ogni animazione, io ti consiglio una ogni 30 secondi, ma e’ questione di gusti!

    Ehi, facci sapere!

    Ma quelli commerciali sono più facili 🙂

    Come avete visto, usare un AO gratis magari vuoto può essere un pochino complicato, ecco perchè i niubbi comprano ZHAO o AO già caricati con animazioni.

    AO, Lag ed estensioni di Firestorm

    Usare un AO richiede di solito uno script che rimane in attesa e ogni X secondi verifica cosa fa l’avatar. Quando l’avatar cambia stato, allora lo script modifica l’animazione associata. Questo timer può condurre all’aumento del lag, in quanto in una sim con 70-80 avatar tutti rigorosamente dotati di AO, vi saranno un sacco di timer che continuamente generano un appesantimento delle risorse della sim. In pratica un AO genera LAG.

    Phoenix prima e successivamente Firestorm consentono di avere un AO gestito dal viewer, riducendo quindi l’impatto sulla sim e migliorando l’usabilita.

    Come si fa ad usare questa caratteristica di firestorm? Occorre usare il tasto in basso dove c’è scritto in grande AO cliccando sulla freccina si apre una maschera che consente di “importare” le animazioni di uno ZHAO e/o di modificarle. La tecnica è la seguente:

    1. Spostate la notecard e le animazioni di un AO che già possedete in una cartella dell’inventory (si può fare rezzando lo ZHAO per terra e poi facendo Open e copiando il contenuto nell’inventory). Attenzione alle animazioni NOCOPY che verranno rimosse dal vostro ZHAO. Usate per questi esperimenti una copia del vostro AO preferito.
    2. Cliccate sul tastone di Firestorm e scegliete l’opzione di modifica (una sorta di chiave inglese tipo il simbolo dei cartelli “lavorativi”). A quel punto dovreste essere in grado di trascinare dall’inventory sulla finestra di AO di firestorm la notecard che descrive le animazioni.
    3. Potete personalizzare l’AO andando sulla tipologia di animazioni (standing, walking etc) e trascinando le animazioni singole dal vostro inventory.
    4. E’ possibile avere caricato N AO e poter passare da un AO all’altro facilmente.
    Ecco un video che illustra le basi dell’AO by Valentina…

    SL8B: buon compleanno Second Life!

    Finalmente ci siamo. Si comincia lunedì prossimo 20 giugno, alle ore 10.00 AM SLT, quando Kim Linden darà fiato alle trombe aprendo l’ottava celebrazione di compleanno per Second Life. Successivamente, il giorno 23 giugno, alle 3.00 PM SLT, anche lo stesso CEO della Linden, Rodvik Linden, si unirà ai partecipanti. La manifestazione si svilupperà per un totale di 12 giorni, fino al 2 luglio. Le fonti di informazione sull’evento sono molteplici: un blog wordpress (http://sl8b.wordpress.com/), un gruppo Flikr (http://www.flickr.com/groups/sl8b/ pool/with/5848779810/), filmati su Youtube (file://localhost/http/::www. youtube.com:watch%3Fv=NhM-RM_K3gM&feature=player _embedded), ecc.

    La Linden Lab ha fatto le cose in grande: 21 regions, più di trecento espositori, 300 performance live, il tutto per dare l’immagine di una Second Life in grande forma (http://slurl.com/secondlife/SL8B%20Astonish/172/87/22). E siamo sicuri che la manifestazione servirà proprio a questo, a dare uno spaccato della grande vitalità e della quantità di lavoro che i residenti riescono a sviluppare nel mondo virtuale. Se Second Life vive e si sviluppa, compiendo un cammino faticoso ma costante, di evoluzione, lo si deve esclusivamente a quanti ci lavorano, si cimentano con le sperimentazioni e con le proprie capacità artistiche ed intellettuali. Second Life è fatta da loro e non dagli errori manageriali e di strategia della company Californiana. Da questi personaggi, alcuni noti, altri oscuri, che giorno per giorno aggiungono un pezzetto di mondo, un evento, un’opera artistica, un concerto, un progetto, deriva la vitalità di Second Life. E’ grazie esclusivamente al loro impegno e alla loro passione, che questo mondo vive e si evolve, nonostante tutto.

    Molti gli espositori “istituzionali”, come la Caledon Oxbridge University, la Texas State University, o gruppi di grande rilevanza come quello del viewer Phoenix. Imponente la partecipazione Italiana: Solkide Auer, Giovanna Cerise, Merlino Mayo, Nessuno Moyo, Kicca Igaly, Shellina Winkler, Pallina60 Loon, il Gruppo “Italian Taste” (con Aliza Karu, MarkWD Helendale, Nevery Lorakeet, Mila Tatham, Rodroguez Imago, Trilly Sands), il padiglione dell’agenzia di stampa Crazy Press, e altri. Gli Italiani hanno dato il meglio di sé, con opere di grande impatto visivo ed immersività. Non voglio citarne nessuna, non sarebbe giusto, ma vi assicuro che diverse mi hanno lasciato a bocca aperta. Se solo gli italiani decidessero di lavorare insieme, non ci sarebbero rivali, oltre che a livello artistico e di inventiva (su questo sono già insuperabili), anche dal punto di vista manageriale ed organizzativo.

    Non aggiungo altro e non pubblico le foto delle opere, lo potrò fare a partire da domani. In ogni caso, non ne avrete bisogno. Fate un salto per visitare questa eccezionale esposizione, magari viaggiando su una delle navette individuali che vi portano in giro per i viali illustrando i diversi padiglioni e gli espositori. Vi invito poi a segnalare le opere che vi hanno maggiormante colpito, perché, di sicuro, la riflessione sul nostro senso estetico verrà molto stimolata da questa manifestazione, unica nel suo genere. Buona esplorazione!