3d su web – una panoramica

Capita spesso che i clienti chiedano l”integrazione di elementi 3d nel loro sito. Le vie per implementare questa caratteristica sono veramente molteplici, e non esiste tutt’oggi un modo “migliore” in assoluto di farlo. Cominciamo col stabilire che ci sono 2 tipi di 3d, precalcolato o real time.

Il 3d precalcolato è di facile implementazione, con dei software di design tridimensionale (3dStudioMax, Maya, Cinema 4d, etc…) si realizzano immagini o video che possono essere visualizzati su web. E’ possibile anche prevedere dell’interazione con essi, creando molti filmati e/o immagini e concatenandoli tramite programmazione. Questo metodo ha sicuramente la resa visiva migliore, il limite è solo nel budget e nel tempo a disposizione, ormai la grafica 3d sfiora il realismo e qui si può utilizzare in tutta la sua potenza. Di contro l’interattività è limitata o assente, visto che ogni immagine o animazione deve essere calcolata e prodotta prima della pubblicazione.

Il realtime 3d invece sfrutta motori di visualizzazione dove si interagisce direttamente con i modelli e le telecamere. Il 3d viene calcolato in tempo reale e quindi le possibilità di interazione sono infinite. Tipico esempio di questo tipo di 3d sono i videogiochi, dove si comandano direttamente i personaggi facendo far loro i movimenti impartiti dall’utente. Questo tipo di 3d ha di contro una qualità generalmente più bassa legata comunque alla potenza del computer in uso. Questo perchè è direttamente la CPU che calcola la scena 25/30 volte al secondo.
I motori realtime sono di due tipi, quelli calcolati via software o quelli che sfruttano le schede grafiche e quindi la potenza delle GPU. Nel primo caso le performance sono più basse perchè è la CPU principale a calcolare la scena, stessa CPU che deve gestire anche tutto il resto del computer. Invece usando l’accelerazione hardware si usano appunto le schede grafiche progettate proprio per svolgere questo compito.

Qui di seguito i motori real time 3d attualmente più utilizzati su web:

Basati su Flash

Away3d
Sandy 3d engine
Alternativa 3d
Papervision3d
Flare3d
Blaze 3d studio
Sophie 3d
Yogurt3d
infinity3d
FreeSpin3d
Ambiera Coppercube
Flash 10 (3D API Molehill, coming soon)

Engines basati su Java

Wirefusion (java)
Shiva 3D (java)

Engine di terze parti che necessitano l’installazione di ulteriori plug-in nel browser

Unity3d
Quest3d
Turntool
Html5 (webgl)
O3D (webgl)