0

COCOS-2Dを使用しています。オブジェクトが目的地に向かって移動するときに、スプライトの回転速度を下げたい。

最初は速度が速いので、動きに合わせてスムーズに減速したいです。

どうすればこれができるか助けてください。

ありがとう

4

3 に答える 3

0
- (void)update:(CCTime)delta {

// reduce _ship.rotation
[_ship.physicsBody applyTorque:(_ship.rotation - rotation_01)*800];
rotation_01 = _ship.rotation;

}
于 2014-06-26T21:13:04.740 に答える
0

最も簡単な方法は、2 つのアクションを並行して実行することです。1 つは移動用で、もう 1 つは回転用です。回転を徐々に遅くしたいので、回転アクションの上にイーズ アクションを適用することで実現できます。これらの行に沿ったもの:

float animDuration = 1.5f;
float animRotateAngle = 720.f; // deg
CCActionInterval* effect = [CCSpawn actions: 
     [CCMoveTo actionWithDuration: animDuration position: destPoint], 
     [CCEaseSineOut actionWithAction: [CCRotateBy actionWithDuration: animDuration angle:animRotateAngle]], 
      nil];

[object runAction: effect];
于 2012-08-17T08:48:57.707 に答える
0

明示的またはプログラム的に一連の回転を作成し、新しい回転ごとに継続時間を増やしたり、角度を減らしたりします。

于 2012-08-17T07:59:54.577 に答える