3

ImpactJSを使用してHTML5とJSでゲームを作成していますが、アニメーションが実行されている場合、どのフレームでもアニメーションのフレームフローを逆にすることができますか(反転しない)?rewind()を使用しましたが、最初のフレームに戻るだけですが、reverse()はありますか?

4

3 に答える 3

4

少しハッキーであることを気にしないのであれば、理論的には、このようなものが機能するはずです。

animation.sequence = animation.sequence.reverse(); //Reverse the animation
animation.gotoFrame(animation.length - animation.frame - 1); //Set the frame to be the same frame as it was before.

基本的に、ig.Animation()クラスのシーケンスプロパティは、フレームが実行される順序を決定するものであり、更新はタイマーに基づいてフレームを反復処理するだけです。それを逆にすると、アニメーションが逆になります。アニメーションを前方にリセットする場合は、同じコードを再度使用できます。

完全に反転したアニメーションを再生したい場合は、animation.rewind()代わりに行う必要があるかもしれません。gotoFrame()

それ以外の場合は、2つのアニメーションを使用gotoFrame()し、アニメーションを切り替えて正しいフレームを開始するときに使用できます。また、上記のコードはアニメーションの1フレームを複製することに注意してください。削除する必要があります-1(ソースを見ると、この場合は問題ないと思いますframe = 0)。

于 2012-04-24T19:26:19.783 に答える
0

いいえ。ただし、プラグインシステムを使用して簡単に独自に作成できます。

または、enetity.currentAnim.frameで始まり、entity.sequenceを逆方向にたどって新しいアニメーションを作成し、現在のアニメーションを新しいアニメーションに設定します。

于 2012-02-13T21:08:47.323 に答える
0

いいえ、私が知っていた逆はありません

ただし、代わりに、順序を逆にした新しいアニメーションを作成して、必要に応じてそのアニメーションに切り替えることができます。

于 2013-07-24T16:41:43.217 に答える