Un esempio di sim costruita su un server ubuntu (sim Pyramidosita su craft)… Clicca l’immagine per vedere il video su come installare in pochi minuti su ubuntu
Per par condicio ecco un video equivalente per l’installazione su Ubuntu di OpenSim, con la distribuzione Diva (che peraltro è quella contenuta in Sim On A Stick). E’ solo un po’ tediosa, richiedendo di installare nell’ordine su una installazione vergine di Ubuntu server 12.04 (ma vale anche per le versioni desktop)
Da questa settimana pubblicherò dei video veloci (circa 5 minuti) dedicati ad un argomento specifico. Cliccate sull’immagine per il video youtube. Non avete scuse per non guardarli e questa settimana imparerete come scaricare un programma che si chiama sim on a stick, lanciarlo sul vostro pc (solo windows), e avere in pochissimo tempo un intero sistema di gestione di mondi virtuali.
Ricordate dopo l’installazione di lanciare il file mowes e sotto diva/bin/OpenSim.exe. (Ricordatevi poi di spegnerli quando avete finito di utilizzarli!).
Il video mostra come collegarsi con Imprudence, ma potete utilizzare un qualsiasi viewer che supporti la configurazione delle grid alternative a opensim come Firestorm OS, Singularity, Cool VL, Phoenix etc. Ricordate di entrare con “Simona Stick” e password 123.
A breve un video altrettanto snello per spiegare come spostare oggetti fra il vostro micromondo e SL usando strumenti legali. Curiosi??? Vi Aspetto.
NB: per rimanere al di sotto dei 5 minuti ho velocizzato del 10% il clip, che dà un taglio più da telegiornale e mi permette di rispettare (quasi) l’impegno di rimanere sotto i 5 minuti….
Blender (http://en.wikipedia.org/wiki/Blender_(software)) è una passione per moltissimi dilettanti a livello mondiale, che lo usano normalmente in quanto prodotto gratuito, ancorchè considerato “difficile”. Molti professionisti lo stanno utilizzando in quanto alternativa efficace rispetto ai software pregiati come Maya 3DMax che costano fior di soldoni. In pratica questo programma è uno dei tanti fiori all’occhiello dell’ormai vasto panorama di software opensource che vede fra i più importanti a mio avviso Linux-Ubuntu, OpenOffice, Firefox, MySQL, Apache, Gimp, Filezilla, VideoLan VLC Media Player, 7zip, Notepad++ …. e la lista continua fortunatamente ad allungarsi.
Negli ultimi anni Blender ha fatto dei passi da gigante, passando dalla versione 2.49b disponibile fino a due anni fa alle ultime versioni a partire dalla versione 2.54, che hanno costituito una netta semplificazione nell’uso del tool e soprattutto un aumento esponenziale della potenza del programma. Blender è così diventato il programma “franco” disponibile per modificare, migliorare ed adattare progetti anche fatti da altri programmi (come SketchUp ad esempio), una volta che si possa passare da formati intermedi come Wavefront OBJ o Collada DAE.
Scopo di questo articolo è quello di mostrare le nuove possibilità rese disponibili negli ultimi due anni e di cui molti (inclusi alcuni veterani di Blender) non sono a conoscenza.
There are many websites teaching you how to rig with blender. This is one of them: http://cg.tutsplus.com/tutorials/blender/building-a-basic-low-poly-character-rig-in-blender/
Recently during my Blender classes, some gifted students asked me to explain again rigging techniques for SecondLife. I already have spoken about this in some other posts (in Italian) on this magazine. I made available some Youtube playlists on this topic:
Un esempio (fatto da Claudia222 Jewel in cloudparty) che fa vedere come i mondi virtuali in una pagina web possano avere una qualità sensibilmente superiore a quella di client dedicati
Pare che ormai sia chiaro a tutti che esistono alcune barriere nell’adozione dei mondi virtuali da parte delle masse. Ci sarà un motivo per cui i più preferiscono usare Facebook o Twitter in luogo della complessa ed intrigante realtà virtuale…
Video di agosto 2012 dove Linden Lab pubblicizzava le nuove caratteristiche
Nel 2012, ce l’avevano annunciato, sarebbero arrivate presto le mappe normali e speculari in SecondLife. Ora siamo quasi al dunque, entro un mese massimo due queste diventeranno realtà nella grid principale, dopo che da circa una settimana sono state introdotte nella grid beta e in alcune regioni selezionate della grid principale.
Proprio nelle ultime settimane è balzato all’attenzione dei media un nuovo nome estraneo ai più: “BitCoin”, l’ultima frontiera della moneta virtuale/elettronica. Il motivo è stato che questa moneta virtuale nel giro di pochi giorni ha avuto una enorme volatilità nel tasso di cambio con le altre monete, si è passati da poche decine di $ per BTC a quasi 300$ (il valore è cioè decuplicato) e nelle ultime ore è avvenuto un altrettanto repentino ridimensionamento, tornando ad un valore di circa 50$.
Nel corso di Blender che tengo ogni Giovedì alle 21.30 circa a Solaris Island, alcuni studenti affezionati ed in gamba mi hanno chiesto di spiegare nuovamente le tecniche di rigging per SecondLife. Di questi argomenti ho già trattato in altri articoli qui in questa rivista (ad esempio
Quando stavano per arrivarre le mesh e il rigging era un vago sogno:
Uno dei più letti articoli di sempre di questo blog: http://virtualworldsmagazine.wordpress.com/2011/09/03/alta-sartoria-virtuale-in-secondlife/
Sul progetto del Mesh Deformer di Qarl Fizz ,
Quando era nato il progetto a pagamento Avastar per rigging ed animazione ,
Lezioni in Italiano/Inglese a Penguin Tribu http://virtualworldsmagazine.wordpress.com/2012/05/01/rigging-per-dummies-reiniziano-le-lezioni-a-penguin-tribu-ama-gi/
E’ un po’ che non scrivo sulle “meraviglie” in arrivo su SL. Un po’ forse perchè tanto meraviglie non mi paiono, un po’ perchè ci impiegheranno sicuramente mesi per maturare, comunque per chi volesse capire cosa “bolle in pentola”, provo a riportare in Italiano quanto già diffuso da altri blog in lingua inglese, cercando come al solito di sfatare leggende e di rendere comprensibili anche le cose più contorte.
Un esempio di come le mappe normali possano aumentare enormemente la risoluzione 3d di una mesh SENZA usare centinaia di migliaia di vertici (e quindi pagando anche meno di land impact)
1. Phoenix non è più supportato dal 1 Gennaio 2013
Il famoso viewer alternativo basato sul vecchio viewer Linden 1.x cesserà di esistere?
Il titolo è ovviamente un gioco di parole con le piattaforme che stanno ispirando in questi ultimi mesi gli “Dei” di Linden Lab. Avrete sicuramente riconosciuto una traduzione ad effetto di “Steam“, la piattaforma di giochi online della Valve e “Minecraft“, il gioco indie che sembrano essere alla base delle nuove avventure commerciali di Rod Humble, il CEO di SecondLife ormai da un paio di anni.
Personalmente sono rimasto un po’ sorpreso dal vedere che i miei interessi “extra-SL” siano stati in realtà inglobati nel futuro di SL, manca solo che Blizzard (World of Warcraft) si compri la Linden e tutto tornerebbe al posto giusto…
Un incontro a metà strada fra videogame e creatività
gioco e creatività sono estremamente connessi http://videogamewriters.com/researchers-find-games-improve-kids-creativity-28592
Valve afferma che ci sono già 40 milioni di giocatori su Steam e questi potrebbero essere solo la punta dell’iceberg una volta che gli utenti commerciali e i non giocatori sciameranno verso questo servizio. I dettagli devono ancora arrivare, ma ci hanno detto che dal 5 settembre verranno lanciate molte iniziative di software non ludico e molti altri verranno presentati in seguito.
La mia speranza è che Steam si espanda per diventare più che un gioco, che una certa parte degli utenti di Steam trovino interessante SecondLife. Dato che è una piattaforma creativa che richiede una consistente capacità tecnica per poter essere apprezzata, sembra che sia una buona scelta. Cose come Garry’s Mod sono probabilmente un buon indicatore di interesse. E comunque se dovessimo sperimentare dei newbie da Steam, spero che tutti voi gli daranno il benvenuto.
Come vedete stiamo andando verso una sintesi fra gioco e creatività.
Ma vediamo alcuni dettagli sulle novità d’autunno…
Patterns
Questo fa parte della sempre più folta categoria di giochi che si chiamano “sandbox” o “mondi aperti” http://en.wikipedia.org/wiki/Open_world, dove le regole e l’esperienza del gioco sono in realtà definite dalla fantasia e creatività del giocante. E’ questo appunto quello che succede nei mondi creativi come SecondLife. Sembra proprio che Linden stia tentando un progetto organico se proprio vogliamo riconoscerle un filo conduttore, nel tentativo di essere all’avanguardia in questo nuovo settore “ludico/creativo”, distinguendosi dai giochi di guerra, gli ammazza zombie dei video game. Insomma, pare che ormai ci siano solide fondamenta per “mondi virtuali creativi” solidamente associati a questa azienda.
Patterns è descritto come uno “spazio creativo 3D condiviso ed elegante” che consentirà agli utenti di creare e manipolare oggetti che compongono l’ambiente di gioco. Ai giocatori viene dapprima insegnato a creare forme elementari che possono essere usate per assemblare costrutti più complessi. C’è un robusto motore fisico, il che significa che gli oggetti obbediscono alle leggi fisiche, e gli utenti saranno anche in grado di condividere le proprie creazioni in modo da poter imparare l’uno dall’altro.
Patterns è agli inizi; però alcuni coraggiosi saranno in grado di accedere alla Genesis Release, un prodotto in pre-alpha progettato per consentire che alcuni utenti possano testare il processo di creazione degli oggetti. Il gruppo di sviluppo sta attualmente lavorando per potere includere possibilità di personalizzazione dell’avatar, di avere il multiplayer, la creazione di liquidi e la generazione automatica dei mondi.
A prima vista Patterns sembra una specie di clone di minecraft, di cui ho già scritto in questo blog in modo decisamente positivo http://virtualworldsmagazine.wordpress.com/2012/07/07/il-successo-mondiale-di-minecraft-il-segreto-e-nellessenzialita/ e http://virtualworldsmagazine.wordpress.com/2012/08/07/minecraft-parte-seconda-con-la-nuova-versione-1-3-1-piu-somiglianze-che-differenze-con-secondlife-ma-socialmente-forse-difetta/
Ma i primi commenti, fra cui anche dello stesso creatore di Minecraft Markus “Notch” Persson sembrano molto curiosi e positivi dicendo solo due parole
I commenti di questo sviluppatore non sono da sottovalutare, il suo commento su Windows 8 è diventato famoso (cfr. http://www.thinkdigit.com/Software/Minecraft-creator-slams-Windows-8_10922.html) dove afferma di avere ricevuto un invito da Microsoft di certificare Minecraft su W8, ma la sua risposta lapidaria è che forse questa è la volta buona che la gente abbandoni l’uso dei prodotti Microsoft e che Microsoft dovrebbe smetterla di rovinare la piattaforma “open” dei pc.
Probabilmente quando uscirà dal beta questo prodotto verrà distribuito nella piattaforma Steam che stiamo cominciando a conoscere bene…
Steam
Il motore a vapore originale di Watts
Veniamo invece all’aspetto più interessantedell’integrazione fra Linden e la piattaforma Steam.
Steam permette agli utenti di acquistare giochi attraverso un sistema di distribuzione digitale. Una volta effettuato un acquisto, invece di ricevere la scatola, il disco o un codice seriale, il contenuto viene immediatamente aggiunto alla propria libreria, ma esso viene anche registrato sui server della piattaforma, in modo da riscaricare un contenuto senza riacquistarlo nuovamente. Il gioco può essere acquistato singolarmente o anche insieme a una delle tante raccolte presenti.
Steam funziona in un modo simile ad un lettore RSS: l’utente seleziona un contenuto e, una volta acquistato, Steam si preoccuperà di mantenerlo aggiornato; oppure se ad esempio sono presenti due versioni, 32-bit o 64-bit, dello stesso gioco Steam analizzerà il computer in uso e scaricherà automaticamente la versione più adatta. Inoltre, se è stata acquistata la versione per Windows, sarà possibile scaricare la versione per OSX, se disponibile, gratuitamente, e viceversa, salvo diverse condizioni nel caso di un distributore esterno. Il processo di aggiornamento avviene ogni volta che Steam accede in modalità online, garantendo quindi che siano sempre installati gli aggiornamenti più recenti. Il trasferimento di contenuto avviene mediante un protocollo proprietario Valve attraverso server dedicati di Valve o società terze autorizzate da essa.
(….)
Attualmente funziona su sistemi operativi Microsoft Windows NT (2000, XP, Vista, 7), e dal 12 maggio 2010 è disponibile anche su piattaforma OSX, per un numero limitato di giochi. È previsto entro la fine del 2012 il rilascio di una versione dedicata alla distribuzione GNU/LinuxUbuntu, la quale renderà Steam pienamente multipiattaforma.
Che poi è lo stesso concetto di volta che sta dietro l’AppStore o Android Market (Google Play) e chi più ne ha più ne metta. Tutte cose nate negli ultimissimi tempi…
Steam come piattaforma creativa per creare contenuti multimediali
Non è ancora chiaro come esattamente Linden o SecondLife si integreranno con Steam, staremo a vedere. Nel frattempo dettaglio un po’ meglio alcuni contenuti creativi famosi resi già disponibili in Steam da Valve.
Io ho avuto la possibilità di entrare in contatto con steam perchè in passato sono comparsi alcuni contenuti promettenti per chi fa machinima come “Source Filmmaker” che consente di creare film usando come materia “prima” gli oggetti 3D già costruiti per i giochi online. Non so se avvertite l’elemento rivoluzionario in tutto questo: è possibile creare contenuti multimediali senza bisogno di essere esperti di modellazione 3D (blender o altro),
Source Filmmaker (SFM) è uno strumento per fare film che usiamo noi internamente in Valve per filmare eventi all’interno del motore di gioco Source. Dato che SFM usa le risorse interne ai singoli giochi, ogni cosa che esiste nel gioco può essere usata nel filmato e viceversa. Utilizzando le risorse hardware di un moderno PC, SFM consente ai “costruttori di storie” (story tellers) di lavorare in un ambiente “vedi quello che ottieni WYSIWYG” in modo che possano affinare il contesto in modo da renderlo adatto per i vostri fruitori.
Ecco un esempio di rifacimento della scena famosa di Matrix:
Garry’s Mod costo 7.99 €
Il coltellino svizzero per fare quello che si vuole in Steam
Usare Steam come piattaforma di assemblaggio di nuovi oggetti 3D a partire da altri semilavorati già pronti. Qui diversamente da SFM gli oggetti possono essere creati a partire dagli elementi già presenti (SFM non consente alterazioni degli elementi o delle scene). In questo senso GMOD è pienamente e completamente creativa ed una utile aggiunta a SFM.
Garry’s Mod è una “sandbox fisica” (proprio come Minecraft o Patterns (!) diversamente dai giochi normali non ci sono obiettivi o scopi definiti. Vi diamo gli strumenti e vi lasciamo giocare (dare il secchiello e la paletta ai bambini, ecco il significato inglese di sandbox). Potete “far nascere” (spawn, ma chi viene da sl preferirebbe “rezzare”) oggetti già costruiti e fonderli assieme per generare le vostre originali “contraption” – macchine, razzi, catapulte o cose ancora senza nome – dipende da voi. Se non siete bravi a costruire non preoccupatevi! Potete comunque disporre molti altri caratteri ponendoli in posizioni stranissime.
Ecco un esempio di cosa si può fare con la Garry’s mod e forse cogliete la similitudine con altre piattaforme già note come appunto (sorpresa!) Minecraft o SL.
CreatorVerse (un minimondo dentro all’IPad).
In chiusura non possiamo non accennare a questo ultimo progetto nel palinsesto autunnale della Linden… Anche se non c’entra molto con Steam.
Su creatorverse c’è molto poco di particolare da dire: pare essere molto direzionato verso gli utenti IPad, in particolare bambini ma non sembra avere caratteristiche tali da renderlo differente da altre applicazioni grafiche già esistenti. Per chi è interessato, ecco un video di preview:
Sarà che io non amo i prodotti Apple e che l’Ipad e i tablet mi paiono francamente limitati come piattaforma di espressione digitale (al di là di leggere le notizie o leggere libri o scorrere internet). Ho visto ad esempio un porting di Blender su tablet e ne sono rimasto abbastanza orrorificato… Probabilmente abbiamo bisogno di attendere che ci siano altri sistemi di puntamento, il dito e i menù attuali mi paiono ancora eccessivamente rozzi per le sottigliezze manipolative richieste dalla progettazione 3D…
Alcuni Annunci ufficiali da Linden Lab:
Dai blog Linden a proposito di Steam: http://community.secondlife.com/t5/Featured-News/Second-Life-is-Expanding-to-Steam/ba-p/1637751,
Nuove tecnologie in progetto in SL già in uso dai motori grafici in Steam: http://community.secondlife.com/t5/Tools-and-Technology/New-Open-Source-Project-to-Improve-Graphics-Rendering/ba-p/1637559
Tipica espressione di contentezza di un utente di un programma multiplayer alla comparsa del lag
E’ capitato a molti di organizzare o partecipare ad un evento in SL in una sim dove non ci si riusciva a muovere, la chat non funzionava, anche un semplice tocco di un giver non ha effetto, non si riescono a leggere notecard, insomma l’esperienza percepita diventa talmente frustrante da spingere i partecipanti a fuggire, sempre che non crashi la sim prima chiudendo il discorso a metà. Quando capita questo rallentamento, viene definito con un’unica parola “LAG”, (http://it.wikipedia.org/wiki/Lag_(informatica) ) che esprime in inglese il concetto di rallentamento (quando non congelamentoFREEZE temporaneo , o addirittura CRASH) di quello che si vive nel mondo virtuale.
Per chi organizza eventi è importante capire come prevenire e curare le cause di lag, in modo tale da offrire a sè stessi e ai partecipanti una qualità di servizio accettabile. Come dice la massima popolare a proposito di mogli e botti, non è possibile avere tutto perfetto nello stesso momento, che tradotto in termini di SL non è possibile avere un evento fluidissimo e contemporaneamente avere 100 avatar nella propria sim. Oltre un certo numero di avatar presenti il fenomento del lag diventa normale e può solo essere limitato ma non annullato. Qui vedremo quali sono gli accorgimenti e gli strumenti a nostra disposizione per valutare, controllare e ridurre il lag, come: la misura della pesantezza della nostra sim o della nostra parcella, la misura delle texture, degli script e delle collisioni e appropriate istruzioni da dare ai partecipanti.
Per chi partecipa ad un evento esistono alcune norme di senso comune generali che riducono in maniera considerevole il disturbo arrecato nella sim (come ad esempio cercare di indossare abiti e capelli a “basso impatto ambientale” e soprattutto evitare di avere troppi script addosso e troppi HUD (spegnete ad esempio i vostri radar e il Mystitool). E’ anche una buona norma se vi trovate in una sim con tantissimi partecipanti di evitare di muovervi, ma di trovarvi un posticino dove sedervi e rimanere attenti, evitando di affollare troppo la chat con le gesture che sono normalmente quasi sempre inutili e dannose. Capelli scriptati con trasparenze e strati di abiti all’ultima moda non aiutano certo.
Tipologie di LAG e il famoso lagmeter.
Ma prima di andare avanti cerchiamo di capire bene le varie tipologie di lag http://wiki.secondlife.com/wiki/Lag. Tutti i viewer recenti hanno un semaforo che serve a capire in modo veloce ed efficace se state sperimentando un LAG oggettivo. Il semaforo è composto da tre luci associate alle seguenti etichette:
Client Lag, è il lag associato a difficoltà del computer locale nello stare dietro e al visualizzare le cose che succedono. Spesso questo lag è associato ad un computer lento o vecchio o al fatto che state facendo molte altre cose in contemporanea. Se sperimentate spesso un Client Lag rosso allora forse è il caso che aggiorniate il vostro computer oppure riduciate la qualità della grafica (NON usate ultra), e riducete la distanza di DRAW. Se vedete rosso questo semaforo anche quando avete un computer molto veloce, e con distanza di DRAW al minimo, allora forse stanno succedendo semplicemente troppe cose su quella sim, e gli organizzatori dovrebbero semplificare. Confrontatevi sempre con altri utenti che hanno computer differenti e provider differenti (può darsi che abbiate un problema locale sul vostro pc).
Network Lag, è il lag associato alla trasmissione di dati dal vostro computer verso i server della linden e viceversa. E’ normale che quando si entra per la prima volta in una sim occorra scaricare tutte le texture e gli oggetti della sim. Se la sim ha molti oggetti, sculpted, mesh, può essere che debbano essere scaricati centinaia di megabytes prima che voi possiate vedere bene ciò che vi circonda (come sanno bene gli sfortunati che devono usare le penne dati con tariffe proporzionali al traffico utilizzato). Per ridurre questo lag provate a ridurre la distanza di DRAW ed eventualmente scegliete un provider più veloce. Confrontatevi comunque sempre con altri utenti differenti. Potete anche ridurre la banda nelle preferenze per evitare di ingolfare la linea.
Server Lag, questo è il lag “intrinseco” che viene percepito da tutti ed è l’unico oggettivo nel senso che è misurabile indipendentemente dal vostro computer, e dalla qualità della vostra connessione. Questo è di solito il lag che può essere più facilmente individuato e normalmente risolto. Questo genere di lag è associato direttamente agli script che girano sulla sim, alle collisioni degli avatar con oggetti, e al motore fisico che muove gli oggetti.
Capiamo le Statistiche ctrl-shift-1
accessibile facilmente con ctrl-shift-1
Per chi voglia capire meglio le cose può digitare questi tre tasti assieme o cercarlo nel sistema di menu del vostro browser e si ottengono una serie di dati fra cui i più importanti sono:
Time Dilation normalmente un numero molto vicino ad 1 ad esempio .995. Misura il lag di SERVER ed è preoccupante quando scende al di sotto di .90. I famosi misuratori di lag che si trovano in SL lo esprimono con una % ottenuta facendo 1 – TimeDilation e moltiplicando per 100. Quindi una time dilation di 0.92 risulta essere rappresentata come un lag di 8%.
Sim FPS, indica quanti frame al secondo (istantanee del mondo) riesce a generare complessivamente il server. Il max è 45. Se questo numero diminuisce al di sotto di 35 vuol dire che la sim sta subendo server lag, se scende al di sotto di 10 vuol dire che c’è qualcosa di veramente grave (cfr: .
TFT: Total Frame Time. Il minimo possibile è 22.2 msecondi, se vedete che questo tempo è sensibilmente più alto vuol dire che si sperimenta lag. Da consultare solo se vedete una sim fps minore di 35.
Script time. Questa è la quota del TFT imputabile agli script. Si considera “in ottima forma” quando è inferiore a 5 ms, ancora accettabile attorno ai 10 ms, di più normalmente significa che forse avete troppi script attivi. In quel caso dovete ottimizzare o se necessario inibire alcuni o tutti gli script sulla vostra sim nei casi più gravi. Tenete conto che a volte gli script sono parte essenziale della esperienza della sim quindi eliminare TUTTI gli script potrebbe rendere la sim inutile.
Physics Time non dovrebbe essere molto più alta di 4 msec.
Ping Sim in America è più basso perchè sono più vicini ai server, in europa di solito oscilla fra 150 e 300 msec. Un valore più alto indica seri problemi di connettività del vostro provider ).
Per alcune altre note sulle statistiche e ottimizzazioni del vostro viewer: http://community.secondlife.com/t5/English-Knowledge-Base/How-to-improve-Viewer-performance/ta-p/1316923.
Potete verificare quali script, occupano più tempo CPU, oppure i top colliders utilizzando la funzionalità di DEBUG nella finestra di Region/Estate a disposizione degli Estate Manager. Se sospettate che siano gli script a produrre lag potete provare a stopparli temporaneamente o stoppare temporaneamente la fisica delle collisioni. Se una di queste due operazioni cancella il lag percepito allora sapete la tipologia di cose che provocano problemi. Se disabilitando gli script non si avvertono miglioramenti sensibili, ad esempio, è inutile cercare di ridurli, ma è meglio concentrarsi su altre cause.
Quanto “pesano” gli avatar?
Bastano pochi attachment per mandare il rendering cost alle stelle… Esempio di un furry con rendering cost di circa 300K
Se ci sono problemi di LAG è meglio avere abbigliamenti, capelli e attachment poco appariscenti
Il famigerato ARC Avatar Rendering Cost o il più recente RWA Render Weight for Avatar http://wiki.secondlife.com/wiki/Mesh/Rendering_weight indicano una misura di quanto pesano gli avatar. Quest’ultimo parte da un minimo di circa 5K e arriva finoa 300/400K (cfr . Va da se che valori molto più alti di 10K generano inevitabilmente lag nei viewer dei vicini. E’ meglio fare in modo che il proprio avatar non abbia peso elevatissimo. Abiti, capelli complicati specialmente se trasparenti o se emettono particelle sono considerati costosi e andrebbero evitati.
Quanto “pesano” gli sculpted e le mesh? E’ vero che provocano lag?
Il PE o LandImpact (una sintesi del peso di caricamento dei triangoli, del rendering client e delle collisioni di un oggetto)…
Dopo l’avvento delle mesh nel 2011, è stato creato un sistema di misurazione del peso di un oggetto mesh sulla sim che è differente dal conteggio dei prim ed è considerato universamente adeguato ad esprimere il peso di una mesh: il PE o Land Impact. Questo valore non viene calcolato per i prim normali in quanto il loro PE viene posto uguale al numero dei prim.
Quanti triangoli pesi?
E’ Il peso della trasmissione dei dati sulla composizione delle mesh
E’ stato dimostrato che un cubo mesh ha un peso sulla sim nettamente inferiore rispetto ad un cubo prim oppure ad un cubo sculpted.
Infatti sempre nel link di prima si dimostra che un cubo mesh è composto da 12 triangoli, un cubo prim (se non torturato) ha un peso di almeno 108 triangoli (quasi 10 volte più complesso da renderizzare per il vostro viewer), mentre un cubo sculpted ha un peso di circa 2048 triangoli (!!).
Triangoli che costituiscono un cubo come prim normale
sono sempre gli stessi quindi uno sculpted cubo avrà sempre 2048 facce
Se ne deduce che gli sculpted pesano in genere di più dei prim i quali pesano in genere di più delle mesh.
Il peso delle collisioni e del Pathfinding
Buona parte del tempo della sim è dedicato all’individuazione delle possibili collisioni fra oggetti ed avatar.
Attenzione però alle collisioni: uno sculpted collide come un cubo, mentre in teoria una mesh può collidere in modo molto complesso generando un certo grado di lag di collisioni. Il problema eventualmente associato alle collisioni si può facilmente risolvere rendendo gli oggetti mesh phantom oppure associando una fisica più semplice.
Per quanto riguarda il pathfinding occorre sottolineare che in caso di lag sulla sim tutte le funzionalità di pathfinding sono automaticamente sospese e quindi non può contribuire a generare il lag, ma al massimo ne è vittima… Attenzione a chi fa costrutti pathfinding quindi perchè non funzionerebbero in caso di lag… http://community.secondlife.com/t5/Second-Life-Server/Pathfinding-FAQ/td-p/1672699 In ogni caso il contributo massimo al lag del pathfinding nelle condizioni peggiori non può superare 4 msec (o 1 msec nelle homestead) rendendolo di fatto secondario rispetto alle altre sorgenti di lag.
Il peso delle texture
Le textures sono spesso la causa prima del lag client e di network…
Questo è un peso generalizzato su tutti i tipi di prim: più texture si usano e più lag di trasmissione sulla rete si genera (misurabile dal tempo che impiega la sim e i suoi oggetti a rezzarsi quando vi teleportate e vedete tutto vuoto o grigio. Come vedete chiaramente, le texture sono le ultime che arrivano perchè in genere “sono le + pesanti”.
Se chi ha creato gli oggetti ha usato tutte texture 1024×1024 allora vi garantisco che la trovate lunga (!). Per inciso una texture 1024×1024 richiede per la trasmissione da 3 o 4 Megabytes a seconda che abbia o meno la trasparenza .
Quanto pesa una texture
Da questo schema si vede che uno sculpted pesa in realtà 2048 triangoli + la sua sculpted map (64×64 che è irrisoria 16Kb ma se siete pieni di altre texture da visualizzare vengono accodate e arriveranno in forte ritardo con il classico effetto delle sculpted a pallone prima di essere ben definite) + la sua texture 1024×1024 che invece impiega 2-3 megabyte. Se trasformate uno sculpted inserendo “convex hull” nella maschera delle “features” vedete che il suo costo in PE raddoppia rendendo chiaro che il costo in prim usato precedentemente non è equo perchè non descrive effettivamente il costo reale che ha il server per fare il rendering di uno sculpted.
Riassumendo: una sim piena di sculpted può laggare (semaforo network + client) oppure un avatar vestito con capelli tutti sculpted lagga molto di più di quello che laggerebbe se ci fossero mesh (ben fatte). Ovvio che anche con le mesh si possono fare disastri …
Altre sorgenti di Lag: inquinamenti di vario ordine e grado
Spoofer o particles possono laggare il vostro client
Tra le sorgenti di lag client non ancora esplicitamente citate ci sono gli oggetti che emettono particelle, quelli con l’hovertext (il testo fluttuante). Quelli che spammano parlando sui vari canali di chat. Sorgenti di rumore e di suoni.
Il Voice o il multimedia laggano?
Il voce in senso stretto non crea peso sulla sim o sul vostro viewer, perchè vengono gestiti da un server vivox differente che per esperienza supporta tranquillamente un numero alto di avatar senza gravi problemi, a meno che non abbiate una connessione internet lenta o inaffidabile nel qual caso sentite male e a scatti.
Il multimedia se abilitate tutte le sorgenti di video/audio web texture può creare un fortissimo lag client. ….
Lag proveniente da sim che condividono il vostro server
In SL ogni server ospita 4 sim, ma essendo un server a 4 core, viene garantito che la cpu usata dalle sim confinanti non impatta la vostra sim. Se invece parliamo di Homestead il discorso è diverso: se le sim consociate alla vostra fanno eventi voi ne subite il lag. Questo lag nascosto è difficile da individuare a meno che non conosciate l’identità delle sim limitrofe. Per trovare le sim limitrofe potete usare questo link http://gridsurvey.com/index.php specificando la vostra sim, individuando l’ip potete cercare le sim che condividono l’ip.
Lag proveniente da superprim (anche chiamati megaprim)
Questo è stato molto dibattuto in passato (cfr. http://wiki.secondlife.com/wiki/Talk:Mega_Prim) la conclusione più ragionevole basata anche sulle proprie esperienze è che i superprim phantom non producono lag, mentre quelli non phantom possono produrre lag. Il caso in cui il lag è molto maggiore dei prim normali capita quando ci sono superprim cavi o tagliati con molti avatar o altri prim all’interno della cavità. Pare che il motore fisico di Havok abbia (o almeno abbia avuto in passato) numerosi problemi a gestirli. Dopo l’avvento dei superprim legali avvenuto l’anno scorso si può affermare che i prim fino a 64x64x64 ora legali occupano un peso sul server che è ben rappresentato dal PE. La necessità di megaprim dopo il superamento del limite dei 10 metri, è ora accettabile a mio avviso in alcuni casi particolari come pavimenti molto grandi, sfere enormi. Cercando di farli se possibile phantom e in caso che non sia possibile, di monitorare l’impatto sulle statistiche della sim in particolare per quanto riguarda le collisioni.
Lag proveniente da Hackers e Griefers
Ovviamente è possibile che il lag possa essere prodotto ad arte da persone che vogliono solo disturbare e distruggere l’esperienza. Anche in questo caso la monitorizzazione degli script, delle collisioni dovrebbe far capire chi o cosa produce lag e permettervi di disabilitare script/collisioni o singoli oggetti. In ogni caso è consigliabile fare un Abuse Report alla Linden.
Lag immotivati
A volte il lag è misterioso. Problemi hardware o altri malfunzionamenti lato Linden?
Se non riuscite a muovervi nella sim, il monitoraggio vi segnala che è tutto normale e nulla di apparentemente anomalo sta accadendo, è possibile che la sim sia malfunzionante e necessiti di un restart che potete fare voi o chiedere al servizio di assistenza Linden di farlo al posto vostro. Se queste anomalie ingiustificate si ripetono è opportuno aprire un ticket alla Linden chiedendo di monitorare il perchè la vostra sim si comporti stranamente. In questo caso però è opportuno avere cercato ed individuato tutte le possibilità alternative onde evitare che l’assistenza vi dica che avete dimenticato uno script che va “in loop”
Il progetto SHINING (risolverà almeno il lag locale?)
Questo articolo non può non concludersi con un accenno al prossimo progetto shining di Linden http://community.secondlife.com/t5/Tools-and-Technology/Project-Shining-to-Improve-Avatar-and-Object-Streaming-Speeds/ba-p/1583465 dove la Linden ha “dichiarato guerra al lag” e sta cercando di trovare dei sistemi che riducono l’impatto della quantità di dati che si scambiano server e client durante l’attività normale. Com’è ovvio questo lavoro se portato correttamente a termine potrebbe ridurre il lag e consentire una fruizione più naturale delle sim con particolare riguardo al lag locale (quello delle texture e degli sculpted per intenderci). Vediamo cosa uscirà…
Conclusione
Mi pare di avervi dato un quadro abbastanza chiaro e completo sul lag.
Come vedete abbiamo gli strumenti giusti per capire o avere forti indizi da dove venga il lag. Prima di fare la caccia alle streghe, è opportuno sincerarsi se il lag della vostra sim provenga effettivamente da una o più di queste categorie. Urlare sempre “allo script” “allo script” (al lupo, al lupo), potrebbe essere in alcune situazioni sbagliato e controproducente perchè il lag potrebbe nascondersi da altre parti insospettabili. In particolare è difficilissimo da valutare il lag client, che risulta molto soggettivo e dipende spesso dal sistema operativo, e dal provider del singolo utente (e magari può essere influenzato da malfunzionamenti sulla loro macchina).
Se ho detto cose che non vi tornano, nei commenti inserite i riferimenti alle sorgenti ufficiali (knowledge base, blog di persone autorevoli o della linden), in modo che possa correggere o possiamo spiegare meglio insieme questi concetti che sono tutt’altro che banali.
Alcuni link utili:
http://www.secondlifeitalia.com/community/viewtopic.php?t=11410 (un po’ tecnico e solo per quanto riguarda lo script) con contributi di OpenSource Obscure ed altri scripter. Interessante rimando al link http://www.lslwiki.net/lslwiki/wakka.php?wakka=Lag con consigli per gli scripter.
E’ nata da pochissimo (aperta in beta pubblica a giugno 2012) questa nuova creatura virtuale, che ha immediatamente generato un comprensibile e tumultuoso tam-tam e entusiasmo fra tutti i blog che si occupano di virtualità. Fondata da Cory Ondrejka (co-creatore di SecondLife) e Bruce Rogers (ex CTO, responsabile tecnologico di Cryptic Studio, cfr http://nwn.blogs.com/nwn/2012/06/cloud-party-faq.html pare mettersi appunto in diretta concorrenza con SecondLife e altri prodotti simili (compreso Kytely OpenSim che gira anche lui su Facebook http://www.kitely.com.
Una suggestiva immagine di una sim d’arte da cui si possono vedere le bolle oppure come nel caso di Rustica la icona (un teschio) che la rappresenta come brand
Dopo circa 2 mesi di vita, avere già superato la fase di Hype compresi articoli che stanno analizzando (di già?) come mai la quantità di iscrizioni stia declinando… Ecco a voi CloudParty (per brevità CP) che ha anche un interessante record: non essere ancora censita da Wikipedia.
Il nome “CloudParty” pare l’unica cosa infelice di questa idea, il significato pare legato al fatto di potersi incontrare e festeggiare “fra le nuvole”, dato che ogni zona dove è possibile costruire content è rappresentata da una bolla in mezzo al cielo. Un altro piccolo tocco di genialità è che è possibile sostituire l’icona della bolla con una che rappresenta il proprio brand in modo che guardando in cielo è possibile navigare “a vista” individuando subito il mondo successivo dove volete perdervi…
CloudParty è fondamentalmente una applicazione facebook
Per accedere ed usufruire completamente della piattaforma dovete essere iscritti a Facebook, cosa che per alcuni è una banalità per altri potrebbe essere uno scoglio insormontabile. Andate qui: http://www.facebook.com/CloudParty e cliccate sul tasto “vai all’applicazione”. Se non volete usare Facebook è possibile comunque visitare il mondo virtuale in qualità di ospiti: avrete un nome tipo guest#123456 ma potete partecipare egualmente agli eventi e godere nella sua navigazione.
L’idea di usare Facebook http://it.wikipedia.org/wiki/Facebook è considerabile ottima perchè consente di presentarsi alla distanza di un click a qualunque persona che ha già un account facebook (e sono ormai 900 milioni in tutto il mondo, di cui 21 Milioni pari al 35% della sola popolazione italiana). Farsi un account facebook è rapidissimo ed è culturalmente accettato anche da persone che non hanno conoscenze informatiche (conosco madri di famiglia di mezz’età che trascorrono con gratificazione molto tempo a chattare con questo strumento). So che ci sono molti soprattutto fra gli esperti informatici che guardano con sufficienza se non con odio a questo strumento, ma tenersene fuori può significare in alcune circostanze una forma di autoemarginazione.
Potenzialità
Si può usare cloudparty per costruire una vetrina efficace per le proprie attività commerciali o artistiche, come ad esempio questa mostra d’arte che potete raggiungere a https://its.cloudpartytime.com/#1.5,5,0,-1.6_2167
Lo strumento pare avere moltissime possibilità di sviluppo, anche nell’attuale fase Beta (che è da ritenersi fortemente incompleta) vediamo che questo Mondo è particolarmente indirizzato alla creazione di contenuti 3D (oggetti, edifici, ambientazioni, effetti speciali) interattivi (scripting). Garantisce una “cura dell’avatar” che troviamo con buon successo commerciale in SL e in IMVU (skin, abiti, pettinature ecc), consente la definizione di “Vetrine” artistiche e commerciali per la presentazione di prodotti e presentazione di Brand (IBM, ecc) ad esempio http://apmel.blogspot.se/2012/06/lennart-aka-explicit-apmel.html. E’ già disponibile una moneta virtuale (cloud coin, acquistabili al costo di 4$ per 80 gettoni sintetici “CC”) http://en.wikipedia.org/wiki/Virtual_currency.
Per esplorare una bolla di questo mondo è sufficiente cliccare su un link come questo https://its.cloudpartytime.com/#65,149.8,-30,0.4_2220 per essere teleportarti a destinazione. Anche senza tutorial e usando tasti abbastanza intuitivi come le frecce per muoversi il doppio click per il teletrasporto si può godere CloudParty come semplice esploratori.
Esempio di esplorazione della mostra artistica precedente
Tecnologia
Tenete conto però che per poter fare tutto questo dovete avere un browser abilitato con WebGLhttp://it.wikipedia.org/wiki/WebGL e HTML5, al momento solo Chrome,Firefox, Safari e Opera (http://www.khronos.org/webgl/wiki/Getting_a_WebGL_Implementation) quindi niente Internet Explorer. Queste piattaforme grafiche consentono di eseguire nel browser applicazioni grafiche sofisticate in modo analogo a quello che già avviene sui vostri cellulari. L’evoluzione di queste tecnologie è tale che è scontato che nel giro di qualche anno vedremo scomparire i client “grassi” come il browser separato di SecondLife, sostituiti da pagine ben più leggere che attiverete al tocco di un click e senza installare nulla (!).
Resoconto di una “iniziazione” a CloudParty
La scelta dell’avatar (minimale)
Potete entrare come anonimi o con l’autenticazione di Facebook. Dovete scegliere il sesso del vostro avatar ed infine entrate e dovete seguire un veloce tutorial che vi insegna come muovervi e costruire. La lezione di base del movimento vi insegna a cliccare per terra per muovervi, usare le frecce, fare orbiting cliccando con il tasto destro e poi trascinando il mouse. Poi imparate a chattare (un po’ come in sl),
La metafora del cellulare
Il cellulare per la navigazione e ricerca dei posti
Aprendo il “cellulare” in alto a destra accedete al menu di opzioni di CP: potete vestirvi indossando capi di abbigliamento e cambiando skin. Potete individuare le varie isole della piattaforma (equivalente delle sim in SL), guardandovi intorno vedendole come delle bolle nel cielo: basta cliccarle per teleportarvici sopra, operazione rapida ed efficiente. Vi viene insegnato come riaprire il “cellulare” per fare ricerche di altre bolle o per rivisitare quelle in cui siete già stati. Ricercando le destinazioni più popolari vedo “Albertini e Moioli” ad esempio e ci curioso.
Foto e resoconti di viaggio
Esplorazione delle bolle (Albertini e Moioli)
Potete anche fare fotografie ma quando dovete salvarle vi viene richiesto di completare il login con facebook, così che le potete inserire nel vostro account. In questo modo sulla vostra timeline di Facebook compare anche traccia dei luoghi che avete visitato. Sigh mi fa rifare il tutorial dopo l’autenticazione… Così si impara meglio
Teleport
Successivamente imparate a teleportarvi rapidamente all’interno della bolla cliccando sul terreno con il tasto destro e premendo “Teleport Here”. Oppure fate doppio click e vi teleportate con un lampo. Interagire con gli oggetti è analogo, basta cliccarci sopra con il tasto destro. Vi viene chiesto di individuare qualche oggetto con cui interagire.
Bolle in affitto
Terra in affitto su cloudparty
Esplorando cercandolo disperatamente mi imbatto in una sim disponibile che posso comprare (100×100x100 m che sarebbero 10000 metri equivalenti SL per 14.95$ al mese). Se volete un confronto su SL una terra di 10000 L$ costa circa 25 $ al mese, quindi non è proprio economicissimo come opensim. Potete metterci sopra 350 oggetti statici e 25 fisici o scriptati, e non superare i 300000 triangoli mesh.
L’isola della IBM
Nei miei pellegrinaggi trovo anche la sim (presunta?) della IBM: forse lì trovo qualche oggetto con cui interagire per far avanzare il tutorial (!) E infatti trovo un cannone su cui posso fare interact con il tasto destro e quindi il tutorial di base è completato … Mi viene dato in omaggio un cappello da festa che però non posso evidentemente indossare mentre ho già gli occhiali (a quando il multi attachment?).
L’isola della IBM con il cannone che mi salva per far avanzare il tutorial
Il Building elementare
Ora non rimane che completare la seconda parte quella di building. Alla fine mi regaleranno la mia casetta, ma per il momento devo trovare una sandbox, pardon, un’area pubblica, che trovo facilmente nella mappa come mi era stato insegnato poco prima.
Qui imparo che CP ha due modalità: Esplorazione e Build. Per entrare in build mode si può usare il “cellulare” con l’icona del martello e attrezzi oppure più semplicemente premendo la B di build. Mi viene chiesto di aprire la libreria, di aprire la “Paletta” (equivalente di una sottocartella) e di piazzare un blocco lungo. Ma non ci riesco perchè la sandbox è piena Mi devo cercare un’area pubblica più vuota (ma quando le puliscono queste aree?) Ok trovato una sandbox più vuota, piazzo il blocco devo premere ESC e dopo di che posso muoverlo ruotarlo e ridimensionarlo con le ormai usuali frecce rosse verdi e blu, e i goniometri rotatori.
Editing di un oggetto come insegnato dal tutorial
I mobili e la casa tutta vostra (e gratis anche senza premium)
Ed ecco che avendo completato questo tutorial, mi viene regalata una nuova “palette”, cioè una cartella con i mobili per arredare una casa che mi viene data in regalo, posso reclamarla subito …
La casetta da comprare regalo dopo avere terminato i due tutorial, quando si è in edit vi fa vedere gli esagoni gialli dove potete costruire
A questo punto il tutorial mi abbandona e posso giocare con la mia nuova casa.
Queste erano le basi.
Cenni di CloudParty avanzato
Ma se volessimo fare qualcosa di più avanzato? Ecco alcuni piccolissimi esempi di cosa possiamo fare, memori della nostra esperienza di SecondLife e di altri mondi virtuali.
1. Import oggetti collada da Blender e primer sull’uso dei materiali e delle texture.
Questo è facile (per chi sa già maneggiare Blender o Maya — venite ai miei corsi di Blender se avete lacune in merito) , basta esportare in .dae e poi importare l’oggetto con l’opzione upload visibile quando si è in modalità Build. Provo ad importare un abito che mi ha passato la mia amica rumegusc e che ho remeshato. Posso fare una foto per illustrare il materiale nell’inventory ( bella cosa questa) … Sono 6000 triangoli su un massimo di 75000 che posso rezzare su questa terra. Si riempiono in fretta…
Abito importato inworld, associando un materiale metallico
Finestra di proprietà della mesh. Notate il riferimento ad un materiale metallico in basso
2. Il rigging di abiti e di avatar
Per trasformarlo in qualcosa di vestibile devo fare un costume. Gli cambio rotazione dimensioni etc e faccio un attachment al b_root per vedere se riesco ad indossarlo…
Ed infatti non si riesce ad indossare Bisogna fare il rigging un po’ come ormai sappiamo che si deve fare in SL. Per il rigging con blender ho trovato questo riferimento http://forums.cloudpartytime.com/discussion/19/video-tutorials-for-uploading-animations-and-creating-costume-pieces/p2 che però è ancora molto da digerire e ancora incompleto per Blender (pare che quelli di CP preferiscano Maya). Il massimo che sono riuscito a riggare finora è stata una scatola sopra la mia testa, un po’ pochino
Abito indossato, ma manca il rigging e rimane rigido….
3. Materiali e Texture
Ma facciamo un passo indietro. Un problema che potrebbe comparire spesso è come visualizzare un quadro in CloudParty. Per farlo dovete associare ad una mesh un materiale (vi ricorda niente voi che venite da blender?). Quindi la sequenza è:
avere un oggetto mesh con opportuna UVMAP cioè una mappa di impacchettamento delle texture (niente paura gli oggetti di default hanno già una uvmap importante). Questo è un concetto un pochino più complicato rispetto a SL, ma prima o poi dovrete fare i conti. Avevo fatto un video bilingue in merito qui: http://www.youtube.com/watch?v=oABf4SEkpKY
Ho comunque fatto un video su youtube che potete utilizzare per fare una mappatura minima per quadri etc.
4. Lo scripting.
C’è chi ha osannato CP perchè finalmente, in un mondo virtuale abbiamo un linguaggio di programmazione VERO, che sia poi javascript, uno dei linguaggi meno blasonati fra tutti, non è che mi entusiasma fino alle fondamenta, ma almeno non si devono fare i salti mortali che si fanno in SecondLife, con un linguaggio di programmazione ai limiti della decenza.
Per avere una idea di come si scripta in CP ecco la pagina principale di introduzione: https://wiki.cloudpartytime.com/wiki/Scripting ed ecco una versione in CP del famoso Hello Avatar di SL
function hello(){
say(‘Hello CloudParty!’);
}
hello();
5. Le particles.
Anche in CP abbiamo le particles, che sono ottenute con una serie di opzioni che possono apparire intimidenti all’inizio, e comunque un pochino differenti da SL. Anche qui ci va molta maestria.
Cfr. il seguente video: Immagini esplorative dal blog[/caption]
Non ce ne sono molte ancora, però ci sono alcuni blog che ne stanno parlando. Uno che sembra già molto ricco è ad esempio http://cloudparty.blogspot.it/ che è pieno di avventure ed esplorazioni e foto. Credo che si moltiplicheranno presto e quindi riusciremo a fare un altro articolo di approfondimento sulla “geografia” di cloudparty.
Microintervista con Aristide Despres
Mentre ero in esplorazione di CloudParty sono entrato in contatto con Aristide che stava facendo degli esperimenti molto interessanti con il rigging in CP. Per avere una idea di chi sia Aristide cfr. http://uwainsl.blogspot.it/2012/01/victoria-lenoirres-look-at-aristide.html, quest’artista ha partecipato spesso alle manifestazioni artistiche del dipartimento LEA di SL ) mentre ecco l’avatar su cui stava sperimentando din CP:
L’avatar scelto da Aristide per sperimentare rigging in CloudParty
Il succo della microintervista si può riassumere nelle seguenti considerazioni:
Cloudscape sembra un posto ideale per sperimentare installazioni artistiche: la qualità delle texture è sensibilmente superiore a quella offerta da SL
Occorre gestire programmi sofisticati come Maya se si vuole utilizzare il rigging e animazioni
Blender va bene se si vogliono fare solo mesh
Riguardo al metodo per fare un cartello mi conferma che attualmente è la strada giusta e che è molto semplice, auspichiamo che in futuro ci sia però un marketplace con dei freebies o direttamente nella library di base che consenta ai newbie di poter fare un cartello senza impazzire con le UVMap, per facile che le vogliamo dipingere
Trova che l’interattività, fisicità e manualità in CloudParty sia al momento inferiore rispetto a SL (” i find it difficult to have the level of interaction and physicals i had in SL”)
Quindi concludendo. Mi aspetto che CloudParty diventi una alternativa tecnologica che indichi la strada giusta da seguire nei prossimi 10 anni. Al momento però soffre di un po’ di problematiche e la complessità di dover ricorrere a programmi complessi per poter creare contenuti spero che sia semplificata in futuro onde evitare di fare la fine che ha fatto BlueMars, che appunto richiedeva ai content producer di essere dei geni di programmi grafici talmente complessi da risultare proibiti ai più.
Chissà inoltre che Linden Lab non provi ad investire anche lei nella tecnologia WebGL producendo viewer più immediati e magari garantendosi una “Terza Vita”
Senza grandi avvertimenti, Linden Lab ha sganciato (seguendo l’opinione di alcuni blogger in queste ore) la sua bomba atomica sulla grid negli ultimi giorni, portando tutte le sim alla ultima versione di Havok e di PF (Pathfinding) sull’intera struttura di SL.
Il 6 agosto 1945 la bomba di hiroshima. In questi giorni, in SL, il deploy del sistema pathfinding visto da alcuni come un totale disastro, da altri come una nuova intensa possibilità
Ho atteso due giorni per vedere la polvere dell’evento diradarsi e capire cosa stava succedendo. Dal mio punto di vista tutto inizia con una notice in un gruppo di SL dove si riporta laconicamente il link di phoenixviewer http://phoenixviewer.blogspot.ca/2012/08/pathfinding-server-rollout.html dove si avverte che TUTTA la grid è passata al pathfinder e si presagisce il disastro, invitando gli owner di sim di disattivare il PF sulla loro proprietà.
“Pathfinding is rolling out on all regions today and may have an impact on the performance of your regions as well as introduce some new bugs. “
La mia prima preoccupazione è che nel sito di SL non ci sono avvisi specifici (gridstatus parla di generici rolling restart: http://status.secondlifegrid.net/2012/08/07/post1723/, senza specificare che questi restart stanno effettivamente introducendo il PF su tutta la grid). Il riferimento a centinaia di bachi irrisolti di cui alcuni (sarà vero?) NASCOSTI esplicitamente da Linden Lab per coprire questa ennesima malefatta mi colpisce. E’ vero che avevo letto che llSetRot non funzionava più qualche mese fa, ma pare che questo problema sia ora risolto. (https://jira.secondlife.com/browse/PATHBUG-136), mentre molti si arrabbiano perchè alcuni trucchi che utilizzavano delle caratteristiche NON DOCUMENTATE di SL come la llVolumeDetect che consentiva di avere in un linkset alcuni prim phantom e altri no non funziona più https://jira.secondlife.com/browse/PATHBUG-69 (altro bug dichiarato fixato) al punto di dichiarare che il business di intere imprese sono state distrutte ). L’uso del PF inoltre aumenta il conteggio del “Land Impact” (un prim che usa il PF può costare un equivalente di 16!) http://modemworld.wordpress.com/2012/04/29/pathfinding-llvolumedetecttrue-and-land-impact-changes/.
Altri blogger cercano di coprire in maniera più neutra l’avvenimento:
Insomma pare che anche quest’anno la solita polemica contro Linden Lab abbia combustibile da bruciare. A questo si aggiunge la polemica associata al fatto che il nuovo PF dato che usa sui client dei brevetti Havok specificatamente dedicati e non distribuibili se non per collegarsi a SL e quindi “disturbando” i viewer TPV come Phoenix e Firestorm, che pure appunto hanno garantito versioni separate per SL e OpenSim. http://www.hypergridbusiness.com/2012/08/linden-lab-cuts-viewer-link-to-opensim/
Insomma terreno di polemica ce n’è in abbondanza. Sintetizzando, la scelta del Pathfinding ha le seguenti controindicazioni:
(Presunto) rallentamento delle prestazioni
Bug su llDetectVolume usato da alcuni costruttori per avere linkset fisici e con alcuni elementi phantom (aerei)
Problemi su llSetRot e altri bachetti sparsi apparentemente risolti
Incompatibilità nelle licenze per i viewer TPV che non possono collegarsi con OpenSim.
Ma una volta tanto, non mi sento di allinearmi con le posizioni anti-linden che leggo in giro. Linden Lab sta tutto sommato perseguendo una strategia che nei fatti si dimostra “non perdente”. Inusuale strategia, che punta a garantirsi come riferimento tecnologico per i mondi virtuali. A costo di inimicarsi il proprio parco di utenti acquisiti negli anni 2007-2010, ma nel sempreverde tentativo di acquisire NUOVI spazi e nuove tipologie di utenti. Il fatto che sia “non perdente” è giustificato da una serie di segnali e statistiche che ad esempio affermano che SL è ancora nell’elenco dei primi 10 computer games secondo la statistica Nielsen http://nwn.blogs.com/nwn/2011/07/top-pc-games-may-2011-nielsen-second-life.html in nona posizione. Philip Rosendale (creatore di SL) ha sottolineato recentemente che SL è viva esattamente e certificatamente di più di quello che era nel 2007 quando veniva considerata dai giornali un miracolo: http://pandodaily.com/2012/07/06/philip-rosedale-the-media-is-wrong-secondlife-didnt-fail/, conteggiando una quantità di utenti mensili ancora attorno al più che dignitoso milione per mese. Anche negli ultimi giorni abbiamo statistiche che il marketplace di SL sta superando l’obiettivo del mezzo milione di utenti attivi http://nwn.blogs.com/nwn/2012/08/second-life-marketplace-470k-users.html (pur con qualche difficoltà sul direct delivery). Insomma pare che non si possa risolvere SL secondo i termini dei suoi detrattori, che siano i media oppure gli stessi suoi utenti “anziani” che negli ultimi anni hanno dichiarato la morte di SL.
Guardiamoci in faccia, anche OpenSim o altri cloni equivalenti non è al momento una alternativa di massa, ma una piccola “nicchia” all’interno della “nicchia” di SL. Nicchia per nicchia Sl rimane per molti artisti, istituzioni, artisti, IL mondo virtuale per eccellenza dotato delle capacità tecnologiche massime e tutto sommato anche di una capacità di aggiornamento costante. Non approfondisco qui gli aspetti “sbagliati” di SL, le sue inefficienze, la incapacità di comunicare con i suoi utenti, la dubbia capacità di relazionarsi con realtà educational, tutte cose di cui si trova molto, troppo in giro nella blogosfera.
Qui in questo articolo cerco invece di spiegare anche solo ad un livello introduttivo COSA sia il Pathfinding e sul come questo possa essere utilizzato dagli utenti di SL.
.
Un esempio di percorso di pathfinding che unisce due punti sulla navmesh
.
A questo proposito ho appena uploadato un video che dovrebbe aiutare a capire alcune basi non tanto di scripting del pathfinding, ma delle modifiche di building come la navmesh, i percorsi walkable e alcune altre chicche rese disponibili dal viewer beta (e mi pare di capire anche dal viewer ufficiale di SL), tutte cose che saranno presto rese disponibili anche da Firestorm, nonostante le dichiarazioni (a mio avviso improvvide) di guerra che il gruppo Phoenix ha lanciato contro SL negli ultimi giorni.
Per chi volesse avere informazioni dettagliate sul PathFinding a livello di scripting consiglio i seguenti link:
ma anche il mio precedente articolo qui su VWM: http://virtualworldsmagazine.wordpress.com/2012/05/27/intelligenza-artificiale-in-secondlife-novita-dal-pathfinding-presto-in-secondlife/ che però era un po’ generico.
Per i pigri ricordo che le funzionalità principali del pathfinding di sl sono le seguenti:
definizione di navmesh, cioè di percorsi navigabili gestiti a livello di viewer con risultati di estrema fluidità e realismo. Le navmesh possono essere ostacoli, oppure zone camminabili.
supporto di strutture di associazione dei linkset ordinari di SL agganciati alla navmesh
definizione di CHARACTERs cioè di personaggi non giocanti che possono usare le navmesh per fare attività di “Vagabondaggio/Pattuglia”, “Caccia ad un Prim o a un Avatar”, “Fuga da un prim o da un avatar”, “individuazione del percorso per arrivare in un certo punto” (da cui appunto il nome pathfinding).
E’ evidente che il target manifesto di queste innovazioni sono nei seguenti ambiti:
Animali o Creature che si muovono libere nel loro ambiente (simulazione di ecosistemi)
Pet animali o creature che vi seguono o vi obbediscono
Simulazione di mostri che controllano castelli che vi possono attaccare o cacciare quando vi vedono
Guide turistiche fluide che possono mostrarvi le caratteristiche di una sim
Bot di benvenuto che possono aiutare nei negozi
…altro
Linden Lab non ha tirato fuori dal cappello queste novità dalla sera alla mattina. Del pathfinding se ne parla dall’anno scorso (ottobre 2011) con il seguente annuncio di Rod http://community.secondlife.com/t5/Featured-News/CEO-Rodvik-Humble-Shares-What-s-New-in-Second-Life/ba-p/1143239 e poi vi sono stati vari post annunciativi
come ad esempio
E le avventure nelle isole selvagge, dedicate solo agli utenti premium:
Come dicevo ad inizio articolo, anche se io notoriamente sono sempre stato molto critico sulle scelte di Linden Lab, al punto da spingermi ad usare molto più intensamente OpenSim, non posso onestamente fare a meno di notare che forse anche grazie a queste scelte sbagliate per gli anziani ma evidentemente importanti per la strategia di marketing di questa azienda stiano in realtà producendo un interessante effetto di “non fallimento” come testimoniato dalle cifre.
E’ comunque un notevole passo avanti (di lato? in alto? in basso?) che testimonia la grande vitalità tecnologica se non altro di questo mondo virtuale.
A breve (a settembre?) lezioni di Pathfinding fatte dal sottoscritto sfruttando anche la notevole opera di divulgazione di Any Ginoid (Magid Pathfinder) del gruppo NCI di autoaiuto gratuito e volontario su SL (http://www.nci-sl.info/blog/) che sta facendo da qualche mese delle lezioni specifiche su Intelligenza Artificiale e Pathfinding in sl cfr questo invito https://lists.secondlife.com/pipermail/educators/2012-May/048473.html per un ciclo di due lezioni che illustra tecniche di uso di pathfinding, di animazione di personaggi, e di intelligenza artificiale.
Alcuni pannelli deo corso ottimamente fatto da Magic Pathfinder di NCI
Con l’uscita di Firestorm 4.1.1, abbiamo l’ultimissima versione di questo ottimo viewer che insieme a Phoenix (fatto dagli stessi programmatori) è attualmente più utilizzato dalla maggior parte degli utenti di SecondLife http://nwn.blogs.com/nwn/2012/05/second-life-viewer-usage-dominated-third-party-.html, con percentuali “bulgare” che si avvicinano all’80%, specie da chi usa SL in maniera massiccia. Questo anche per stessa ammissione di Linden Lab (Lawrence Oz Linden) a Marzo 2012 che dice:
“Gli utenti del nostro viewer sono una significativa minoranza: siamo al terzo posto dopo Phoenix e Firestorm. Phoenix sta tuttavia perdendo quote di utenti a favore di Firestorm”
(dalla trascrizione del suo intervento ad una trasmissione WEBTV)
Sulle novità dell’ultima versione di Firestorm molti stanno scrivendo in questi giorni e se vogliamo elencarle brevemente ci sono importanti novità sul supporto OpenSim, su alcune funzionalità di supporto a scripter (lsl preprocessor, selezione del colore da paletta, uso del tasto centrale per la modifica dello scale) ed una moltitudine di altre novità, elencate tutte nel loro sito ufficiale http://phoenixviewer.blogspot.it/2012/07/major-firestorm-viewer-update.html.
Quello che però io noto spesso è che molte persone usano firestorm o phoenix senza conoscerne le principali caratteristiche (o perlomeno ne conoscono ed usano solo 1 o 2), rinunciando quindi ad una quantità incredibile di possibilità che il viewer offre. Inoltre, molte persone sono convinte che Firestorm sia un hype che non introduca nulla di veramente utile e sostanziale rispetto al viewer ufficiale.
Scopo di questo articolo è di rendere conscie le persone del potentissimo motore che stanno utilizzando e per gli scettici per far capire che qualcosa di notevolmente diverso c’è e non sono sciocchezze per pochi nerd scripter o builder sofisticati. Firestorm è per tutti un ottimo sistema di lavoro. Quanto elencato in questo elenco al 90% è applicabile anche su Phoenix. Le funzionalità di FS che mi pare non implementate in Phoenix sono ad esempio la ricerca multipla nell’inventory, il numero della faccia e alcune delle ultime novità introdotte nella 4.1.1 di cui alla release note precedente).
Va da se che poi uno possa avere preferenze personali differenti, nessuno obbliga nessuno. Io stesso uso molto anche un concorrente (Nirans Viewer) che ha caratteristiche di visualizzazione notevolissime utili per fare turismo, fotografie e machinima. Eventualmente farò un articolo analogo a questo sulla potenza di Nirans Viewer
Vediamo ora graficamente alcune delle caratteristiche a cui difficilmente potrei rinunciare il numero di stelle indica la frequenza con cui uso questa funzione:
1. Cambiare rapidamente le preferenze principali (***) SE QUALCUNO VI DICE DI CAMBIARE IL LOD, LE PARTICLES, LA DISTANZA DI DRAW o anche semplicemente per scegliere un’ora del giorno) PH/FS
Quick preferences. Facilmente accessibili per modificare facilmente le principali impostazini
2. AO incorporato (**) PER I VANITOSI PH/FS
AO automatico senza produrre lag sul server e di facile gestione
3. Ricerca di oggetti nella land (**) PER TUTTI PH/FS
Area Search: utilissimo per ritrovare i vostri oggetti perduti (a volte anche per barare nelle cacce al tesoro)
4. Allineamento rapido e perfetto di oggetti (**) PER BUILDER PH/FS
Il programma di allineamento automatico di Qarl Fizz.. Utilissimo per allinearsi i propri oggetti
5. Profilo RAPIDO (****) PER TUTTI PH/FS
Profilo istantaneo invece di aspettare 10 secondi che ve lo carichi dal web, come era nella versione 1.x del viewer. Inoltre per gli scripter, accesso istantaneo alla UUID degli avatar
6. Menu tasto destro a torta (****) PER BUILDER PH/FS
Il tradizionale e comodissimo menu a torta, sparito nei viewer 2. e 3. chissà mai perchè. L’altro menu è parecchio più scomodo. Ci sarà un motivo se anche Maya usa un menu a Torta…
7. Ricerca nell’inventory (****) PER TUTTI (solo FS)
Ricerca nell’inventory èer PIU’ di una chiave di ricerca. ESSENZIALE per chi ha inventory enormi
8. IM Verticali (****) PER TUTTI PH/FS
IM Verticali. Essenziale per chi ha un sacco di IM da tenere sotto controllo
9. Selezione impostazioni WindLight (**) MACHINIMA E FOTO PH/FS
Possibilità di selezionare centinaia di temi di windlight predefiniti fra cui la famosa libreria windlight di Torley, contro la ventina o meno offerta dal V2/v3
10. Copia/Incolla di proprietà fra oggetti (**) BUILDER/SCRIPTER PH/FS
Possibilità di fare copa / incolla di proprietà dell’oggetto come posizione, dimensione, rotazione
11. Per conoscere il numero della faccia selezionata (**) BUILDER/ SCRIPTER (solo FS)
Visualizza il numero della faccia selezionata fondamentale per scripter/builder
12. Tenere in ordine le proprie amicizie (**) se ne avete migliaia… (FS)
Contact set per mettere in ordine le migliaia di vostri amici e vedere rapidamente chi è online fra quelli interessanti
13. Ricerca all’interno di una notecard (***) PER TUTTI FS
Ricerca all’interno di una notecard. Utilissimo per rintracciare informazioni in notecard chilometriche
14. Controllare tutti i siti web a cui si collega il vostro viewer (**) PER I PARANOICI DELLA PRIVACY PH/FS
Media filter per i paranoici della privacy e della sicurezza. Ogni stream o musica o sito web che viene chiamato deve essere autorizzato (!) oppure no come fa il viewer 3
E poi ci sono moltissime altre cose fra queste io uso ad esempio:
flr scritto nella chat per andare al suolo se mi trovo ad altezze spropositate
gth xxx per andare subito all’altezza indicata
dd xxx per impostare una distanza di draw specificata
Gestione grid opensim (la 4.1.1)
La chat di testo non è limitata a 512 caratteri e si possono incollare testi più lunghi
Upload temporaneo di texture e di sculpt evitando di sperperare inutilmente L$
Con il termine intelligenza artificiale (o IA, dalle iniziali delle due parole, in italiano[1]
) si intende generalmente l’abilità di un computer di svolgere funzioni e ragionamenti tipici della menteumana. L’intelligenza artificiale è una disciplina dibattuta tra scienziati e filosofi, la quale manifesta aspetti sia teorici che pratici.
Nel suo aspetto puramente informatico, essa comprende la teoria e le tecniche per lo sviluppo di algoritmi che consentano alle macchine (tipicamente ai calcolatori) di mostrare un’abilità e/o attività intelligente, almeno in domini specifici.
Uno dei problemi principali dell’intelligenza artificiale è quello di dare una definizione formale delle funzioni sintetiche/astratte di ragionamento, meta-ragionamento e apprendimentodell’uomo, per poter poi costruire dei modelli computazionali che li concretizzano e realizzano (in modo “goal-oriented“)
[2]
.
Ora come ho imparato a mie spese quando ho dato l’esame di Intelligenza Artificiale all’Università di Informatica di Torino, una cosa è la teoria è una cosa sono poi le applicazioni pratiche. Da idealista qual ero ero convinto che si potesse, almeno “introduttoriamente” simulare alcune delle caratteristiche del pensiero umano, anche se solo per principi di Emulazione e di simulazione, magari con calcoli statistici e/o con “trucchi” e piccoli inganni (ad. es. cfr. il programma Elisa sviluppato nel ’66 e famoso negli anni 80 http://it.wikipedia.org/wiki/ELIZA),
Un esempio di output del programma ELIZA
ELIZA è un Chatterbot scritto nel 1966 da Joseph Weizenbaum che fa la parodia di un terapeuta Rogersiano, in buona parte rispondendo al paziente con domande ottenute dalla riformulazione delle affermazioni del paziente stesso. Cosi, per esempio, alla frase “Mi fa male la testa” il programma può ribattere con “Perché dici che ti fa male la testa?” oppure la risposta a “Mia madre mi odia” potrebbe essere “Chi altro nella tua famiglia ti odia?”
Una rappresentazione di una rete neurale
Per dirla in breve, a parte alcuni risultati molto interessanti ottenuti con la tecnica delle reti neurali http://it.wikipedia.org/wiki/Rete_neurale (argomento peraltro tabù nella mia Università in quanto i risultati erano impredicibili e quindi a-scientifici), al momento l’intelligenza artificiale sembra un ramo abbastanza morto e deprimente.
Fanno una eccezione notevole i robot (dove appunto le reti neurali hanno brillanti applicazioni) e i video games, dove alcune tecniche particolari di Intelligenza Artificiale hanno una applicazione notevole nella programmazione dei cosiddetti NPC (Non Player Character). Se avete mai giocato a uno di questi giochi come WoW o altri dove ci sono i cattivi che vi inseguono o che scappano da voi, forse avete una idea di cosa si intende qua.
Ebbene Linden Lab dall’anno scorso ha investito moltissime energie in una tecnologia di Intelligenza artificiale nota come Pathfinding, il che consentirebbe di ottenere in SL dei “bot” (ma anche semplicemente degli oggetti, animali, mostri cose) in grado di avere un comportamento “intelligente”. Come detto il Pathfinding è solo un piccolo pezzo dell’Intelligenza artificiale, ma potrebbe essere un ottimo punto di partenza per Università ed altri enti per fare o dimostrare dei modelli di AI, ivi compresa la simulazione di ecosistemi di creature animali o virtuali. Mi viene ad esempio in mente a parte gli animali che si autoproducono (meebo e cavallini da compagnia), soprattutto applicazioni di simulazione di colonie batteriche o di ambienti naturali. Un esempio interessante è ad esempio offerto dal seguente video:
Simulazione di un ecosistema in Second Life. Con Piante, Erbivori e Carnivori. I Carnivori possono cacciare ed uccidere altre creature per mangiarne la carne. Gli erbivori possono mangiare frutti e le piante morte. Le Piante mangiano gli escrementi. I carnivori e gli erbivori producono escrementi quando digeriscono il cibo. Le piante producono frutti. Ognuno di loro produce dei cloni mutati fintanto che riescono a trovare abbastanza cibo. I loro “geni” consistono di colori, velocità, distanza di vista, angolo di vista, capacità di attacco, dimensioni dello stomaco, ecc. I tratti benefici richiedono energia: se una creatura può muoversi più velocemente ha bisogno di più cibo. Per cominciare il processo, alcune creature con geni casuali sono sganciati dal cielo finchè la popolazione si stabilizza attorno ad almeno 100 unità. Questo progetto è una mistura di “Breedable Pets in SL” e “Polyworld” e usa il nuoso sistema di SL denominator Pathfinding.
Entro pochi mesi questi sistemi saranno realtà nella grid ufficiale di SecondLife e consentiranno (così come 6 mesi fa la funzione di animazione llSetKeyFramedMotion), a SL di avere una marcia in più (e anche due) rispetto a OpenSim che si trova purtroppo ad arrancare e che implementerà queste funzioni se va bene dopo qualche anno.
Ma come potete fare se volete sperimentare da subito queste funzionalità?
Le funzionalità di scripting LSL pathfinding vi consentono di creare dei personaggi che riescono in modo dinamico ad evitare degli ostacoli e raggiungere degli obiettivi mentre realizzano alcuni comportamenti tipici che si possono incontrare o volere fare nei giochi o in altre esperienze virtuali, includendo:
Evitamento – cercare di stare lontano da uno specifico oggetto o avatar. Cfr llEvade.
Fuga – cercare di mantenere una determinata distanza da una locazione. Cfr. llFleeFrom.
Navigazione – Dirigersi verso una determinata locazione. Cfr. llNavigateTo.
Pattugliare fare la ronda – Muoversi attraverso un percorso definito da un insieme di “punti di pattuglia.” Cfr. llPatrolPoints.
Catturare ricercare – Trovare uno specifico oggetto o avatar. Cfr. llPursue.
Vagabondare – Muoversi in modo casuale all’interno di una specifica distanza da un punto centrale . Cfr. llWanderWithin.
Il tutto ovviamente evitando ostacoli fissi e mobili e manifestando un comportamento “pseudo” intelligente.
Le possibilità ci sono tutte… Ora vediamo se il tutto si tradurrà in qualcosa di concreto e di appetitibile per Scuole, Università, community di Role Playing o rimarrà soltanto limitato ai costruttori di “Breedable Pets”… Time Will Tell… (Chi vivrà vedrà)…
Utilizziamo i cookie per essere sicuri che tu possa avere la migliore esperienza sul nostro sito. Non sono installati cookies di profilazione ma solo quelli tecnici di Google Analytics e i bottoni per i social networks. Se continui ad utilizzare questo sito noi assumiamo che tu ne sia felice. OkLeggi di più