2011-08-03 8 views
1

Actionscript 3を使用して徐々にムービークリップの速度を落とそうとしています。現在のコードでムービークリップが再生され、突然停止して数フレーム先に進んでいきます。私が望むよりもはるかに荒い外観。MovieClipのスローダウン再生

var t:Timer=new Timer(2000,1); 
t.addEventListener(TimerEvent.TIMER,slowDown); 
t.start(); 

function slowDown(e:TimerEvent):void { 

    if (currentFrame==totalFrames) { 
     gotoAndStop(1); 

    } else { 

     gotoAndStop(currentFrame+1); 
    } 
} 

Timerクラスは少なくとも正しい方向にありますか?ありがとう。

答えて

3

Tweening Engineのパワーを使いたいと思うように私に聞こえます。そこにはかなりの数がありますが、私のお気に入りはGreensock TweenMaxです。あなたはちょうどあなたがこれを使用することができ、既知の場所にシンプルな使いやすさをしたい場合は

import com.greensock.*; 
import com.greensock.easing.*; 

TweenMax.to(myMovieClip, 2, { frame: myMovieClip.totalFrames, ease: Expo.easeOut }); 
+0

これは勝利の答えです。助けてくれてありがとう。 – cbeezy

+0

+1勝利の答え。 –

0

次のコードは、それが再生の終わりに近づくにつれて徐々に(緩和)鈍化ムービークリップの再生ヘッドをトゥイーンしますEnterframe:

speed = 0.2; // Somewhere between 0 and 1 
x = (targetX - x) * speed; 

あなたが好きなときにtargetXを変更することができます。値を簡単に変更できます。これは任意のプロパティに対して行うことができます。

関連する問題