Tweenライブラリ模索

2010.03.09  Category:ActionScript3.0

現在、MITライセンスのTweenライブラリを探しています。
僕がFlashを制作する際に使用するTweenライブラリは、TweenMaxです。TweenMaxは、本当に便利で素晴らしいTweenライブラリだと思っています。
ただ、TweenMaxは、条件付きで有料ライセンスなので、頼りすぎては、今後作業に支障が出るため、できれば、MITライセンスの高機能Tweenライブラリを探していました。
※閲覧制限の無い所でしか使用してはいけない→会員登録をしないと見れないようなところでは使用できない等(上記の条件付きの例です。)

検証した結果、BetweenAS3がとても良さそうという結論に至りました。
BetweenAS3が優れている点を自分なりに挙げてみます。

処理が高速である

こちらにBetweenAS3作者のyossyさんの各Tweenライブラリのパフォーマンスデモがアップされています。
デモを見ていただければわかりますが、TweensyTweenerTweenMaxGTweenは明らかにコマ落ちしていることが分かります。それに比べてBetweenAS3は、FlashPlayer9用でもコマ落ちしていません。
パフォーマンスの秘密は、以下の本に書かれています。

柔軟性が高い

まさに以下の記事の内容です。

xingxx – 直感的かつ再利用性の高いアニメーションライブラリ BetweenAS3
BetweenAS3クラスのインスタンスを生成することができるので、x,yのプロパティは、そのままでfilterを追加したいとか、1行追加するだけで、そのインスタンスを再利用できる点が素晴らしい。コード数も減るので、嬉しいです。

以下、BetweenAS3の使い方のメモです。

Wonderflに載ってるソースを眺めただけで、実際に走らせていないため、使い方が全然わからないのでメモを残していきます。

Tweenerライクな書き方

※以下の例は、mcをx:100に1.2秒かけてトゥイーンさせます。

Tweenerの書き方

Tweener.addTween(mc,{x:100 , time: 1.2 , transition:"easeOutQuart"});

BetweenAS3の書き方

BetweenAS3.to(mc,{x:100} , 1.2 , Quart.easeOut).play();

コールバック関数の使用

※以下の例は、mcがx:100に1.2秒かけてトゥイーンした後、funcというメソッドを実行します。

Tweenerの書き方

Tweener.addTween(mc,{x:100 , time: 1.2 , transition:"easeOutQuart" , onComplete:func});

BetweenAS3の書き方

//ITweenインターフェースを実装したインスタンスを生成します。(to関数は、ITweenインターフェースを実装したインスタンスを返します。)
var t : ITween = BetweenAS3.to(mc,{x:100} , 1.2 , Quart.easeOut);
//トゥイーン終了後のメソッドをセットします。
t.onComplete = func;
//トゥイーンを実行します。
t.play();

以下、コールバック関数の種類です。

  • onPlay・・・トゥイーン実行直前に実行する
  • onStop・・・トゥイーンをストップしたときに実行する
  • onUpdate・・・トゥイーン中(毎フレーム)実行する
  • onComplete・・・トゥイーン終了後に実行する

フィルターの使用

以下の例では、ブラーフィルターを適用しています。

BetweenAS3.to(mc, {_blurFilter:{blurX:16,blurY:16,quality:3} }, 0.8, Quart.easeInOut).play();

上記のブラーフィルターの他、以下のフィルターがサポートされています。

  • _bevelFilter
  • _colorMatrixFilter
  • _convolutionFilter
  • _displacementMapFilter
  • _dropShadowFilter
  • _glowFilter
  • _gradientBevelFilter
  • _gradientGlowFilter
  • _shaderFilter

随時追記します。

RSS Reader
RSSリーダーへの登録をお願いします。
トップへ戻るボタン

著者

大庭俊介
株式会社サイバーエージェント所属の紙デザイナー上がりのFlashデベロッパー。アメーバピグ内のコンテンツ企画、実装を手掛けています。金沢美術工芸大学出身。
follow twitter

おすすめ

イニシエーション・ラブ/ 乾 くるみ

最後の2行目を見たときにマジでビビり、最初からまた読み返してしまい、ネタばれのサイトに行き着く。

フィジカルコンピューティングを「仕事」にする

初めての共著作。Kinect作品PiggFighterの項目を執筆しています。

基礎からのiOS SDK

iPhone開発ド素人の僕が現在、勉強中の本。結構丁寧に書かれてあって分かりやすい。特にWebブラウザ作成のチュートリアル部分の説明でかなり理解が深まった。