ImpactJSを使用してHTML5とJSでゲームを作成していますが、アニメーションが実行されている場合、どのフレームでもアニメーションのフレームフローを逆にすることができますか(反転しない)?rewind()を使用しましたが、最初のフレームに戻るだけですが、reverse()はありますか?
3 に答える
少しハッキーであることを気にしないのであれば、理論的には、このようなものが機能するはずです。
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)。
いいえ。ただし、プラグインシステムを使用して簡単に独自に作成できます。
または、enetity.currentAnim.frameで始まり、entity.sequenceを逆方向にたどって新しいアニメーションを作成し、現在のアニメーションを新しいアニメーションに設定します。
いいえ、私が知っていた逆はありません
ただし、代わりに、順序を逆にした新しいアニメーションを作成して、必要に応じてそのアニメーションに切り替えることができます。