2011-10-25 15 views
0

我有3個精靈都具有相同的角度,所以我只想說胳膊精靈。 此時,手臂精靈的角度等於一個點1(60,60,但這並不重要) 到另一個點2,即玩家拇指按下的點。更改角度的3個精靈,並使其看起來光滑/逼真

在ccTime函數期間,我更新了一切,角度和內容。所以只要用戶觸摸屏幕上的一個點,角度就會立即改變,手臂角度等於從點1到點2的矢量。

我不希望角度改變需要0.016秒才能完成(ccTime每1/60秒會被調用一次)。我想要的是角度增加/減少得更快/更慢,這取決於新矢量離當前矢量有多遠。基本上我希望手臂以一定的速度升高/降低,也許加速一點,這取決於矢量。

我已經嘗試了很多次,使其工作,但我沒有得到任何地方。請幫助我,旋轉角度可以從90度直線上升到接近180度的角度(然而,cocos2d中的角度會發生變化,所以我必須在此處添加90個角度)。

如果您需要了解更多信息,只需發表評論,我會盡快給您提供信息。

回答

0

應設置新的角度作爲destinationAngle那麼您的更新循環:

//Instead of checking for equality, you might want to check the angle is close enough, e.g. if they are withing 1 degree of each other e.g.(if (abs(destinationAngle - angle) < 1) 
if (angle != destinationAngle) 
{ 
    //move towards destination 
    angle += ((destinationAngle - angle)/10.0f); 
}