大家好,我现在正在编写一个游戏,我有一个小问题,我不明白。
当我按下SpriteNode时,我希望它完全旋转360度然后静止不动。我怎样才能做到这一点?我用M_PI尝试了它,但它没有用。多数民众赞成我是如何做到的:
let rotate= SKAction.rotateToAngle(M_PI, duration: 0.5)
restart.runAction(rotate)
答案 0 :(得分:0)
RotateTo会将Sprite旋转到度/ rad。 RotateBy会将Sprite旋转一定数量的rad /度。因此,要将对象旋转360度,请使用rotateBy并将360转换为rads。
在您当前的情况下,您正在告诉当前处于旋转0的对象(与旋转360相同),以旋转到位置360,因此它会立即完成操作,因为它已经存在。
答案 1 :(得分:0)
尝试使用rotateByAngle:
let rotate= SKAction.rotateByAngle(CGFloat(M_PI), duration: 0.5)
restart.runAction(rotate)