PicLens in Flash con Papervision3D 2.0: parte II

Martedì 17 Giugno, 2008

Questa volta (vedi Piclens in Flash con Papervision3D 2.0) pubblico il codice (PicLens.as), ho dovuto rivedere alcune parti di codice, allineandomi così agli ultimi rilasci di Papervision3D 2.0 Great White ed ho eseguito alcuni aggiustamenti e aggiunte. Ho inserito in questa demo anche una serie di Knob, manopole, per modificare runtime alcuni parametri.

Simulazione del moto PicLens

Per avvicinarmi il più possibile al movimento orizzontale di PicLens originale, ho usato un piccolo stratagemma inserendo un "non visibile" DisplayObject3D come target per la camera:

Actionscript:
  1. __fooTarget = new DisplayObject3D();
  2. ...
  3. __bv.cameraAsCamera3D.target = __fooTarget;

In pratica la camera punta sempre il DisplayObject3D posto dietro la serie di immmagini. Quando la camera si muove (con un movimento accelerato/inerziale) anche il DisplayObject3D la segue, ma con un leggero ritardo. Questo mi ha permesso di rendere l'effetto di moto morbido e del tutto simile a quello realizzato su PicLens originale:

Actionscript:
  1. __bv.cameraAsCamera3D.x += (( __slider.Value - __bv.cameraAsCamera3D.x)/10)/2.2;
  2. __fooTarget.x += (( __slider.Value - __fooTarget.x)/5)/2.2;

Non ho utilizzato nessun Tween, ma una più semplice e performante funzione:

CODE:
  1. posizione += ((posizionefinale - posizione)/accelerazione)/inerzia;

Nel demo è possibile modificare alcuni parametri: focus, zoom e target. Quest'ultimo è la posizione del DisplayObject3D rispetto alle 99 immagini! Modificando questa posizione si noteranno cambiamenti nel movimento dell'intera scena.
Focus e Zoom sono invece proprietà dell'ambiente Papervision3D.

Interazione

Provate a cliccare sulle immagini... ;)

Post correlati

Piclens in Flash con Papervision3D 2.0

Lunedì 28 Aprile, 2008

Piclens È possibile realizzare l'effetto dell'add-on di FireFox Piclens in Flash? Penso proprio di si! Grazie a Papervision3D è possibile avvicinarsi molto allo stesso effetto. Questo che presento è un prototipo di cui non posso - per ora - rendere disponibile il codice. Tuttavia è interessante notare quanto sia verosimile l'effetto. L'immagine che vedete ripetuta 100 volte è incapsulata all'interno del filmato SWF e le sue dimensioni sono di 256x256 (PNG 24bit trasparente). In alternativa è molto semplice leggere una lista di immagini da un file XML, cosa che ho già fatto in un altro demo. In questo prototipo ho utilizzato Adobe Flash CS3, Actionscript 3.0 e la versione 2.0 di Papervision3D (GreatWhite).

Loading Flash Player...

Post correlati