我正在使用 COCOS-2D。我想通过物体向目的地移动来降低精灵的旋转速度。
最初速度更快,我想通过运动平稳地降低它。
请帮助我该怎么做。
谢谢
显式或以编程方式创建一系列旋转,增加持续时间和/或减少每次新旋转的角度。
最简单的方法是并行运行两个动作——一个用于移动,另一个用于旋转。由于您希望旋转逐渐变慢,因此可以通过在旋转动作之上应用缓动动作来完成。这些方面的东西:
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];
- (void)update:(CCTime)delta {
// reduce _ship.rotation
[_ship.physicsBody applyTorque:(_ship.rotation - rotation_01)*800];
rotation_01 = _ship.rotation;
}