Come nella Parte 1 e nella Parte2, ci occuperemo di indicare in questo post tutti quegli spunti e riflessioni su Three.js che da uno studio superficiale della libreria potrebbero sfuggire. Sono argomenti tecnici particolari e profondi che però cercano di mettere in guardia lo sviluppatore da potenziali problemi ed errori.

L’antialiasing sul Render Composer non funziona

E’ bene ricordare che se si utilizza il Render Composer per visualizzare la propria scena, l’attributo antialising:true del renderer non ha valenza. Le uniche due possibilità sono:

  • Aggiungere un FXAA Pass dentro il flusso di render pass prima di renderizzare l’output, avendo cura di passare la risoluzione corretta
  • Passare al WebGLRenderTarget il parametro “samples: 4” (o un valore definito) durante la sua creazione (ma non è compatibile con WebGL1) – Dalla versione 138 di WebGLMultisampleRenderTarget è stato rimosso in favore del parametro samples

Se si utilizza il MaskPass è necessario abilitare lo Stencil Buffer

Se durante l’utilizzo del Render Composer si rende necessario l’inserimento di MaskPass (e ClearMaskPass) è necessario abilitare nel WebGLRenderTarget, passato al momento delle creazione del Composer, il parametro “stencilBuffer: true”

Debuggare il Frame Buffer non è facile

Qualora servisse avere una visualizzazione chiara di tutti i passaggi di rendering del Frame Buffer della scena corrente, l’unica soluzione è affidarsi ad un sistema di monitoraggio esterno. In questo caso si rende molto utile l’estensione Chrome chiamata Spectator.js, installabile attraverso questo link.

Impostare correttamente l’environment map

Quando si imposta l’environmentMap e la background texture di una scena è sempre necessario impostare un ToneMapping del render.

Aiuto aziende e professionisti che hanno bisogno di sviluppare in modo creativo, alternativo ed efficace la loro identità digitale e che desiderano ottenere visibilità e risultati concreti attraverso lo sviluppo di strumenti online dall'elevata innovazione e personalizzazione (3D, Realtà Virtuale, Realtà Aumentata, Advergame, etc)