SL Avatar e Lag: Draw Weight, quanto ‘pesa’ la visualizzazione degli avatar

Spesso ci si lamenta del lag collegandolo alla sim/regione in cui ci si trova, ma la maggior parte delle volte il problema non è riconducibile alla sim. Basta aprire le Viewer Stats (Statistics Bar -> Ctrl-Shift-1) per avere la conferma o meno che non sia lag lato server. Se vedete i seguenti valori: Time Dilation 0.999, Sim FPS 44-45, Physics FPS 44-45, la performance del server è ok. Il problema lag è in questo caso nei nostri viewer.

viewer stats1

Statistics bar

 

Tra i vari fattori che incidono sul lag lato viewer -compreso la qualità della propria connessione internet, ram e scheda video del proprio computer- c’è il numero di avatar presenti nella sim e soprattutto il loro “peso”.

Per vedere quanto lavoro deve fare il nostro computer per visualizzare un avatar, abilitate il Menu Avanzato/Advanced (Ctrl-Alt-D) -> Perfomance Tools -> Show Draw Weight for Avatars.

draw weight2

Draw Weight for Avatars

Comparirà un numero colorato sulla testa di ogni avatar che indica il ‘peso di rendering’ (Draw Weight). Approssimativamente sarà verde fino a 15.000 per poi sfumare progressivamente fino al rosso pieno ai 40.000.

Ad oggi sembra quasi impossibile rientrare nel range “accettabile” sotto i 40.000 di Avatar Draw Weight, senza ridurre drasticamente la qualità del nostro avatar. E questo dipende dal fatto che spesso i contenuti creati per gli avatar sono poco ottimizzati.

I creatori di contenuti mesh per l’allestimento delle sim sono stati invogliati ad ottimizzare grazie alla presenza del LI (Land Impact), visto che inizialmente dopo l’introduzione delle mesh i proprietari di terre cercavano contenuti entro i 10-20 LI. Ed ora si trovano facilmente contenuti da 1-5 LI, con un buon rapporto qualità/peso.

impostor1

Attualmente impostando RenderAutoMuteRenderWeight Limit a 60.000 si visualizzeranno come sagome colorate gli avatar con un Draw Weight superiore a 90.000

Per incentivare anche i creatori di contenuti per avatar ad ottimizzare i loro prodotti, dovrebbero essere a breve introdotte delle nuove funzionalità, in particolare le funzioni RenderAutoMute -attualmente presenti nei Debug Settings – ottimizzate ed implementate nella UI (STORM-2082), per scegliere di derenderizzare gli avatar (ossia di visualizzare gli avatar come sagome colorate) oltre una certa soglia di Draw Weight.

Per chi volesse sperimentare le funzioni RenderAutoMute come sono attualmente:

  1. Advanced menu (Ctrl-Alt-D per abilitarlo) -> Show Debug Settings
  2. RenderAutoMuteFunctions: 7 (affinché qualsiasi funzione RenderAutoMute [5 in tutto] sia abilitata – qui una breve descrizione delle funzioni)
  3. RenderAutoMuteRenderWeightLimit: 60.000 (regolare il valore verso l’alto o verso il basso, a seconda delle esigenze/circostanze – al momento non c’è una corrispondenza diretta tra il valore che impostate ed il Draw Weight)

[NOTA: tutti i comandi riportati si riferiscono al SL Viewer ufficiale]

renderautomute1

Debug Setting 1: RenderAutoMuteFunctions

 

renderautomute2

Debug Setting 2: RenderAutoMuteRenderWeightLimit

 

Sta poi a noi decidere che fare, sia per quanto riguarda quali avatar visualizzare (in base alle caratteristiche del nostro computer e/o al numero di avatar presenti nella sim in cui ci si trova) che nel decidere se abbassare o meno il peso/Draw Weight del nostro avatar.

Ecco alcuni suggerimenti di Penny Patton per ridurre il peso di rendering del proprio avatar:

  • Molti attachment, compreso quelli mesh, hanno spesso un prim nascosto con texture molto grandi e che nessuno vede. Se sono modificabili,  eliminare le texture di questi root prim.
  • Negli avatar mesh ci sono spesso molti clothing/tattoo layer. Se non li si usa, e/o se l’avatar mesh è copy e mod, farne una copia eliminando i layer che non vengono utilizzati ed i relativi script.
  • Sostituire eventuali attachment sculpt con attachment mesh.
  • Eliminare ogni attachment coperto da altri attachment (es. occhi prim o mesh coperti da maschere).
  • Controllare se gli attachment mesh hanno una quantità di poligoni eccessiva (in modalità wireframe [Ctrl-Shift-R] li si vede quasi come solidi) e/o se hanno parti nascoste (sempre high-poly), e cercare una alternativa low-poly (che non significa necessariamente poco dettagliata o esteticamente non altrettanto bella!)
  • Ridurre, per quanto possibile, le grandezza di tutte le texture degli attachment. Sostituire le texture 1024×1024 con texture 512×512, nella maggior parte dei casi non si vedrà una perdita di qualità (a meno che non si zoommi a livello pixel). A volte anche utilizzare texture 256×256 o 128×128 non comporta una notabile perdita di qualità.
  • Utilizzare Alpha Masked al posto di Alpha Blended, poichè pesano meno sul rendering (per vedere l’abbassamento del Draw Weight, togliere l’attachment e reindossarlo) – altre info qui

Qui la pagina wiki che spiega quali sono i fattori utilizzati nel calcolo del Draw Weight.

Anche indossare effetti particellari (particles) molto intensi e/o con texture grandi (> 512 pixel), o varie sorgenti di luce come i Facelight, aumenta notevolmente il carico di lavoro lato viewer, e quindi il lag. Sono effetti utilizzabili in specifiche circostanze o comunque saltuariamente, non come parte integrante del nostro nuovo, scintillante e super-cool avatar.

Alleggerire il peso del nostro avatar non consente di ridurre solo il lag lato client generato sul proprio viewer ma anche quello di tutti gli altri utenti che ci stanno osservando, quindi oltre ad essere utile per noi è una forma di rispetto verso tutti, affinchè si possa godere al meglio questo nostro amato mondo virtuale.

___________________________

Grazie a Nalates Urriah e a Penny Patton per le utili informazioni e gli interessanti spunti di riflessione forniti. E’ fondamentale diffondere informazioni oggettive e fornire i giusti strumenti affinchè ognuno sia libero di prendere decisioni informate.

 

Posted in Featured, Noob2Pro, Tips & Tricks and tagged , , , , , , .

Leave a Reply

Your email address will not be published.