Apple ha creato una serie di specifiche con le quali – chi crea pagine web – può eseguire trasformazioni sugli elementi CSS e animazioni temporali nelle pagine web. L’ultima versione beta di Safari 4 riesce già a sfruttare queste caratteristiche e alcune delle loro peculiarità sono visibili nella “welcome page” quando questa è visitata con l’ultima versione del browser.
Ars Technica fa notare come queste nuove peculiarità potrebbero fornire agli sviluppatori un sistema leggero per creare varie tipologie di animazioni 3D senza bisogno di appoggiarsi alla tecnologia Flash di Adobe.
Il team del WebKit (il “motore” alla base di Safari) ha aggiunto il supporto a queste nuove caratteristiche fin dalle prime “nightly build” rilasciate a ottobre 2007. Le proprietà permettono di scalare, ruotare, schiacciare e traslatare oggetti nello spazio 2D. Man mano che il sistema si è sviluppato, nuove tecniche di animazione sono state aggiunte e sono state creati “comandi” specifici per richiamare le trasformazioni 3D, dettagliatamente documentati a questo indirizzo.
Nel WebKit sono sempre state incluse le specifiche “3D Tranform” ma la versione “Mobile” di Safari (quella inclusa nell’iPhone e nell’iPod Touch) le ha sempre interpretate di serie. Al momento Safari 3.2, Safari 4 beta e le nightly build di Safari non riescono a sfruttare tutte le caratteristiche intrinseche delle trasformazioni 3D.
Le trasformazioni 3D possono essere applicate solo a elementi 2D ma è possibile traslatare, scalare, schiacciare, ruotare e cambiare la prospettiva di qualunque elemento DOM nello spazio 3D, con effetti spettacolari e interessanti. Benché molti degli effetti sono replicabili ricorrendo a JavaScript e anche Mozilla stia facendo esperimenti con gli effetti 3D, la tecnica delle trasformazioni CSS è più vantaggiosa in termini di performance rispetto a JavaScript. “Tutte le funzioni sono accelerate via hardware, le temporizzazioni e gli intervalli per gestire le animazioni sono gestiti in modo più efficiente da Safari, senza bisogno di ricorrere all’engine JavaScript” afferma Peter Zich, uno sviluppatore della zona di Chicago. “Il framerate con le animazioni JavaScript solitamente non superare i 5 fps, con i CSS è possibile andare molto oltre”.
La casa di Cupertino promuove queste caratteristiche come un sistema che permette agli sviluppatori di ottenere animazioni 3D a velocità nativa e non è ancora chiaro perché non abbia ancora implementato questa tecnologia sul versante desktop. Vicky Murley, Tech Evengelist di Apple per Safari afferma che “non c’è realmente una ragione… semplicemente non è stato ancora fatto”.
Secondo Ars Technica le animazioni 3D basate su CSS, il supporto HTML 5 (gestione avanzata dei media) e l’engine JavaScript “Nitro” potrebbero essere indizi e prove che Apple non implementerà mai Flash sui propri dispositivi mobili.
[A cura di Mauro Notarianni]