当用户松开手指时,我希望我的精灵旋转回0度。目前它是这样完成的:
if (touching == NO && rotationValue != 0)
{
if (rotationValue < 180 && rotationValue < 0)
{
rotationValue += 1.5;
}
else
{
rotationValue -= 1.5;
}
if (rotationValue < 1 && rotationValue > -1)
rotationValue = 0;
}
当精灵以对数方式旋转时,任何人都可以帮助我,所以它开始旋转得更快,然后在达到0时减速。
答案 0 :(得分:1)
基本上,你想减去每个刻度线留下的差异的一小部分。 0.125这里是一个任意参数,你可以改变它来改变整体速度。
if (fabs(rotationValue) < 0.00000000000000000001){
rotationValue = 0.0;
} else {
rotationValue -= .125 * fabs(rotationValue);
}