2011-07-07 3 views
2

私はAS3のTween機能を使い始めましたが、少しずつ奇妙な動作に気付きました。基本的には、トゥイーンを終了する前にフリーズします。AS3 Tween Freezes

このウェブサイトでは、ソリューションを提供しているようだ: http://www.rgbeffects.com/blog/actionscript/tween-freeze-frustrations-avoid-actionscript-tweens-stalling-out/

私のプログラムは、回転トゥイーンを正確たびに動作することが必要です。私はadobeが置いている機能を使うのが好きですが、これは大きな問題があるので緊張します。

greensock.comのTweenLiteのようなAS3のトゥイーンまたは外部のトゥイーンを使用する必要がありますか?

どちらがより信頼できるでしょうか?

答えて

4

おそらく、あなたのどこかへの参照を格納していないため、トゥウィーンのインスタンスが早すぎてガベージコレクションされている可能性があります。これは一般的な間違いであり、Googleで簡単に行うことができます。

解決策:Tweenインスタンスへの参照を、アニメーションを実行している間にGCから保存します。

詳細な説明については、リンク:AS3 Garbage Collection, the reason your tweens are ending earlyに従ってください。

注:Tweenクラスを使用している場合、変数のスコープを考えてみましょう

Official article on adobe.comも、この問題を(記事の下のメモを参照)に言及します。トゥイーンが関数内に作成されている場合は、変数のスコープが関数自体を超えて存在することが重要です。トゥイーンがローカルスコープの変数に格納されている場合、ActionScriptガベージコレクションは関数の完了時にトゥイーンを削除します。トゥイーンが開始される前である可能性があります。

さらに、GCロジックについて詳しく知りたい場合は、some links on garbage collectingです。

+1

偉大な答え。 +1 – fenomas