There’s a new tween in town

Les librairies de tweening sont la base de l’animation programmée en Flash. Comme beaucoup, j’ai découvert MC Tween puis Tweener. Depuis, les projets concurrents se sont multipliés pour des facteurs divers (comparatif de vitesse ici), mais je n’ai pas vu l’intéret de délaisser Tweener.

Mais il y a un mois, Grant Skinner a changé la donne en présentant gTween :

La librairie n’est forcement pas la plus rapide ni la plus légère (mais se défend bien). C’est surtout sur les possibilités qu’elle est intéressante. On y retrouve bien le mode “tween en une ligne” avec une syntaxe assez classique :

Tweener :

Tweener.addTween(mySprite, {x:200, y:200, time:2, onComplete: handleComplete});

gTween :

new GTween(mySprite, 2, {x:200, y:200}, {completeListener: handleComplete});

Mais avec gTween, on peut modifier ce tween, à postériori, pour y ajouter des listeners, stopper le tween, changer tous les paramètres. C’est terrible !

Un des exemples de Grant (séquence de tweens) :

var myTween1:GTween = new GTween(target1,3,{x:20});
var myTween2:GTween = new GTween(target2,0,{x:200});
myTween1.addChild(myTween2,true); // true = synch durations
var myTween3:GTween = new GTween(target3,3,{y:50});
myTween3.delay = 2;
myTween1.nextTween = myTween3;

scrollRect fait partie de ces propriétés spéciales de Flash ou pour qu’un changement de paramètre soit pris en compte, il faut réassigner le scrollRect entier. Le seul avantage restant à Tweener est la gestion de ces propriétés spéciales en une seule ligne. gTween peut tweener ces propriétés en une seule ligne via les propriétés assignmentProperty et assignmentTarget (la syntaxe idéale reste à préciser).

L’ensemble manque encore d’une documentation complète, mais c’est clairement la nouvelle librairie de référence à utiliser dans tous les projets AS3. Merci à Grant Skinner d’améliorer une nouvelle fois l’utilisabilité de Flash !

Comments (2)

ArthyJune 3rd, 2009 at 14:33

As-tu regardé aussi du côté de tweensy, cette api propose 3 versions dont une pour les générateurs de particules. Il est possible aussi de tweener sur des matrices de transformations, et bien d’autres.

Je n’ai pas eu le temps de bien creuser les capacités de Tweensy, mais je pense qu’il est bon d’en connaître son existence :)

fuJune 4th, 2009 at 17:37

mouais ça a l’air super rapide mais pas innovant dans son approche

BetweenAS3 semble très élégant mais sans plus (RT @mrdoob: BetweenAS3 looks really good! (And I’m hardly excited for tween engines anymore). http://tinyurl.com/qneq6h)

bref j’aime bien gTween :)

Leave a comment

Your comment