1

SKPhysicsBody の applyImpulse メソッドを使用して、カスタム ベジェ パスをたどって、ポイント A からポイント B にノードを移動できるようにしたいと考えています。applyImpulse を使用する理由は、最初のインパルスに応じて自然な動き (速く開始して遅くなる) をシミュレートするためです。applyImpulse を介してオブジェクトにインパルスを適用すると、環境との摩擦によって速度がゼロになったときにのみ停止するようです。私はそれが私の道をたどり、最後に止まるようにしたい. どうすればそれについて行くことができますか?

4

2 に答える 2

2

LearnCocos2Dが言ったように、パスをたどるオブジェクトは、そのパスをたどるまで、現在、適用された物理学と相互作用していません。

すべての SKAction には、timingMode という設定可能なプロパティがあります。

したがって、SKAction を 1 行でインスタンス化すると、次の行で次のように言えます。

action.timingMode = SKActionTimingEaseOut;

これは、アクションの過程で速く始まり遅くなり、指定された期間にわたって動きを完了するようにスケーリングします。

于 2014-03-31T21:35:46.673 に答える
0

以下のポスターに示されているように、applyImpulse の後でオブジェクトをカスタム ベジェ パス上に移動させることはできませんでした。SKAction の customActionWithDuration メソッドと、https://github.com/warrenm/AHEasingのカスタム イージング関数を使用しました。

私が望んでいた効果は applyImpulse と同じでも似ていませんが、独自のカスタム イージング関数を定義できることは非常に役立ちました。

于 2014-04-05T06:05:53.843 に答える