Pathfinding parte 2. Scriptare un personaggio in LSL.

Premessa


La montagna ha partorito un topolino, potrebbero dire i cattivi anti-linden. Ad agosto avevo scritto un articolo sulla “rivoluzione” introdotta dall’inserimento del Pathfinding, che era passata molto in sordina, unico elemento che aveva smosso le acque erano le notice allarmate del gruppo del viewer di Phoenix http://phoenixviewer.blogspot.it/2012/08/pathfinding-server-rollout.html che urlava al disastro e alcune extra ore di down delle sim e un generico timor panico verso queste funzionalità.

Avevo anche scritto un primo articolo introduttorio dove spiegavo come usare il viewer beta  di SecondLife per impostare le navmesh: http://virtualworldsmagazine.wordpress.com/2012/08/09/pathfinding-7-agosto-2012-una-catastrofe-per-secondlife-o-una-nuova-potenzialita-come-le-mesh-lanno-scorso/. Ora è giunto il momento dopo 3 mesi di fare un po’ un riepilogo dello stato delle cose.

Lo stato delle cose

Il topolino che scappa da chi si avvicina

Se cerchiamo sul marketplace troviamo pochissimi oggetti che usano esplicitamente il pathfinding fra queste appunto, il già citato topolino https://marketplace.secondlife.com/p/Rat-pathfinding-rats-flee-from-visitors/4040947  299L$,

robottino curioso da 299 L$

un robot curioso che segue gli avatar https://marketplace.secondlife.com/p/Curiosity-Pathfinding-bot/4037644 una specie di robottino a vapore Steampunk https://marketplace.secondlife.com/p/Cute-Steam-Droid-Prim-Pathfinding/4187664 1199L$. Non pare che ci siano supergiochi costruiti con questo sistema ancora segno che la tecnologia è ancora ostica agli sviluppatori di contenuti. In effetti avendo fatto delle prove approfondite negli ultimi tempi ho verificato che ci sono parecchi bachi ancora irrisolti fra cui ad esempio:

  • I character tendono a perdere l’aggancio alla navmesh dopo un po’ (errore 6 nel path_update) per cui devono essere incoraggiati con un reset oppure con un riposizionamento a mano.
  • La visualizzazione del viewer appare spesso un po’ inconsistente (la navmesh view non visualizza bene i percorsi, non li calcola, oppure l’oggetto sembra scappare via anche se poi si vede che è ancora lì e che abbiamo visto un “errore della matrice” come direbbero quelli di Matrix).
  • L’aggancio iniziale alla navmesh del character è un po’ fortunoso, durante le mie lezioni di pathfinding spesso il character rimaneva inerte e poi scattava all’improvviso dopo 2-3 minuti apparentemente senza che fosse accaduto nulla di speciale

Non sono l’unico ad avere incontrato questi problemi, vedi anche http://www.sluniverse.com/php/vb/scripting/76404-pathfinding-workarounds.html

Queste caratteristiche rendono evidenti che la tecnologia è ancora considerabile in BETA, vale a dire sperimentabile ma non adatta per usi maturi, in pratica con lo stesso livello di qualità che viene imputato spesso alle grid opensim dove spesso gli script hanno questo genere di anomalie. Insomma vediamo un po’ una piccola regressione rispetto agli standard (seppur non molto alti) che ci offriva SecondLife negli ultimi anni.

Per quanto riguarda l’errata convinzione che il pathfinding abbia se abilitato un effetto negativo sul lag della sim http://blog.nalates.net/2012/08/08/second-life-pathfinding-performance/ e la stessa linden rigettano con forza questa equazione, anche se è vero che le modifiche associate all’introduzione del pathfinding sembrano avere aggiunto un livello di complessità in più in TUTTE le sim di SL, con la percezione di una generale maggiore instabilità della grid (cosa che non avveniva da un bel po’) speriamo che questi difetti si sistemino (!).

Quale viewer utilizzare?

La domanda principale che mi viene posta da tutti quelli che si avvicinano al pathfinding durante le mie lezioni è questa. E la risposta non è ancora completa visto che per poter sfruttare al massimo le possibilità visuali del Pathfinding in fase di progetto della navmesh si devono utilizzare dei pezzi di codice software proprietari di Havok che sono dati in licenza a SecondLife ma NON ad esempio per poter entrare in OpenSim. Questo è il motivo per cui i nuovi viewer di Linden non supportano più OpenSim http://www.hypergridbusiness.com/2012/08/linden-lab-cuts-viewer-link-to-opensim/. Se dovete scriptare o utilizzare oggetti che usano il pathfinding non siete obbligati ad avere i nuovi viewer, ma se volete vedere la navmesh, cercare i personaggi o cercare i linkset per modificarne gli attributi dal viewer invece si. Questo vuol dire che non è obbligatorio, anche se raccomandabile avere un viewer nuovo.

Al momento in cui scrivo l’unico viewer che ha un supporto quasi totale delle funzionalità di Pathfinding è il Firestorm versione beta 4.3.0, mentre leggo che Dolphin http://dolphinviewer.eregion.de/2012/11/10/dolphin-viewer-3-3-4-1-26336/ sta  fornendo il supporto sia pure parziale. Seguite il blog modemworld che offre spesso articoli sul pathfinding e sui viewer abilitati:  http://modemworld.wordpress.com/2012/09/24/pathfinding-summary-update/

Il corso sul pathfinding a Torino 2 su SecondLife

Nelle ultime settimane ho svolto un corso di due puntate dedicato alla alfabetizzazione sul pathfinding, corso che risulta incarnato, oltre che dal video proposto nel mio articolo di agosto , anche da questo secondo video specificatamente dedicato alla programmazione LSL dei character:

Per la playlist completa vedi http://www.youtube.com/playlist?list=PLXTK688RnbsE0NAAqV5ZAsQl-OFwnaeoD

Documentazione Pathfinding sul wiki

Per il corso ho provveduto a tradurre la pagina principale del pathfinding in italiano: https://wiki.secondlife.com/wiki/Pathfinding_in_Second_Life/it ma trovate comunque moltissima documentazione utile in inglese ai seguenti link:

Mi pare veramente molto sull’argomento auguri a chiunque voglia cimentarsi.

Salahzar Stenvaag

Advertisements
This entry was posted in Technical Evolution and tagged , , . Bookmark the permalink.

One Response to Pathfinding parte 2. Scriptare un personaggio in LSL.

  1. Grazie per l’esaustivo articolo e per i link di approfondimento. Prezioso.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s