Archive for the ‘Tween’ Category
org.as3s.Tween Ver2.0の使い方(5) カスタムイージング関数
org.as3s.Tween Ver2.0ではイージング関数として独自に作成した関数を利用することができます。
また使い方(3)で紹介したように、持続時間を設定しないイージング関数を作成することができるため、従来のTweenライブラリよりも柔軟な拡張が可能です。
org.as3s.Tween Ver2.0の使い方(4) オブジェクトトゥイーン
org.as3s.Tween Ver2.0では変化させたいパラメータとして、数値だけでなくオブジェクトを指定することができます。
パラメータとしてオブジェクトを指定すると、そのオブジェクト内に含まれる数値を一括して変化させることができます。
TweenerなどではColorTransform、Matrix、BitmapFilterのトゥイーンを行いたい場合にはそれぞれに対応した拡張クラスを読み込む必要がありますが、org.as3s.Tween Ver2.0では、この新機能によってTweenライブラリ内で特殊な処理を行うことなく、ColorTransform、Matrix、BitmapFilterなどのトゥイーンを行うことが可能になりました。
org.as3s.Tween Ver2.0の使い方(3) 物理的なイージング
org.as3s.Tweenでは単純なイージング以外にも簡単な物理運動をシミュレートしたイージングをサポートしています。
org.as3s.Tween Ver2.0の使い方(2) 単純なイージング
通常のTweenライブラリでは、基本的にTweenの持続時間を指定する必要があります。
具体的には、30フレームでx=100に、2秒間でalpha=0に、といった指定が必要です。
org.as3s.Tweenではそれらに加えて持続時間を指定しないイージングをサポートしています。
org.as3s.Tween Ver2.0の使い方(1) 基本的な使い方
基本的な使い方
tween = new Tween(対象オブジェクト, {パラメータ:目標値}, イージング関数, 持続時間, [イージング関数への追加引数], 秒単位の指定);
tween.start();
対象オブジェクト:トゥイーンしたい対象オブジェクト
{パラメータ:目標値}:トゥイーンで変更したいパラメータをオブジェクト形式で指定。(複数指定可)
イージング関数:fl.motion.easingパッケージの各イージング関数の他、カスタムイージング関数も指定可。
持続時間:トゥイーンの持続時間(デフォルトはフレーム単位)
[イージング関数への追加引数](オプション):fl.motion.easing.Elasticクラスなど追加引数を指定できるイージング関数に対しては、配列形式で引数を渡すことができます。
秒単位の指定(オプション):持続時間はデフォルトではフレーム単位になっていますが、trueに指定すると秒単位の指定になります。
例)
tween = new Tween(sp, {x:100, y:200}, Quadratic.easeOut, 30);
tween.start();
以下、様々な使い方の例を簡単にご紹介します。
org.as3s.Tween Ver2.0
軽量・高機能Tweenライブラリ org.as3s.Tween Ver2.0を公開しました。
Ver1.6から大幅にバージョンアップしています。
▼主な特徴
- 複数パラメータのサポート
- 複数Tweenの一括設定
- Tweenerよりも軽量・高速
- 標準のイベントモデルに準拠(スタート、アップデート、ポーズ、完了)
- ディレイ(一定時間待機)のサポート
- リピートのサポート
- 単純なイージング(一定の割合で目標値に近づく、よく使われるタイプのイージング)のサポート
- 物理的なイージングのサポート
- カスタムイージング関数のサポート
- 目標値にオブジェクトを指定したTweenのサポート
- ワンライナー(1行でTweenの設定から実行まで記述)のサポート
▼使い方
Tweenクラスをバージョンアップ(Ver.1.6)
Tweenクラスorg.as3s.Tweenをバージョンアップしました。
ソースコード及びダウンロードはこちらから。
今回のアップデートは主にパフォーマンスの改善です。
改善後のパフォーマンスについてはTweenBencherというベンチマークがありましたので、テストしてみました。
Tweenクラス BugFix(Ver.1.5.1)
org.as3s.Tween Ver1.5に一部バグがありましたので修正しました。
ソースコード及びダウンロードはこちらから。
具体的な修正点は、以下の通りです。
・複数指定時にウェイティングを指定する場合の挙動を修正。
・パラメータが複数ある場合のTween.easing, Tween.uniformの挙動を修正。
Tweenクラスをバージョンアップ(Ver.1.5)
シンプルなTweenクラスorg.as3s.Tweenをバージョンアップしました。
ソースコード及びダウンロードはこちらから。
シンプルさを損なわないように、機能を拡張しました。
主な新機能は以下の通り。
・複数のTweenを一括設定可能
・ディレイ(一定時間待機)のサポート
・単純なイージング(一定の割合で目標値に近づく、よく使われるタイプのイージング)のサポート
・等速イージング(速さを指定して等速運動するイージング)のサポート
・fl.motion.easing関数(Robert Pennerタイプ)以外のカスタムイージング関数のサポート
・イベントの追加(スタート、アップデート、ポーズ、完了)
Tweenクラスのソースコードは160行程度で非常に軽量で、また特殊なことはやっていないので
ソース全体の内容を把握することも比較的に容易ではないかと思います。
サンプルを見る
使い方は以下の通りです。
シンプルなTweenクラス
AS3用のシンプルなTweenクラスを公開しました。
よく使われていると思われる他のTweenクラスとの簡単な比較は以下の通り。
fl.transitions.Tween > パラメータはひとつだけ
org.as3s.Tween > 複数パラメータを設定可
Tweener > 多機能だが、その分ファイルが大きい。作法が独特。
org.as3s.Tween > 最低限の機能だけで軽い。標準のイベントモデルに準拠。
TweenLite > Tweenerよりも軽い。作法が独特。
org.as3s.Tween > さらに軽い。標準のイベントモデルに準拠。
機能としては、標準のfl.motion.easingパッケージに含まれるEasing関数の他、カスタム関数も利用できます。
一時停止/再開が可能。
不具合などあるかもしれませんが、適宜改変してください。
余裕があればシンプルさを損なわない範囲で改良するかもしれません。