2016-03-03 65 views
0

我正在構建一個遊戲,其中一個playernode可以旋轉並且必須匹配目標的角度。 當目標產生時,它的角度介於0和359之間。爲了匹配角色我正在使用玩家和目標的zRotation。SKNode()只有360deg zRotation

我的問題是,如何告訴玩家只需旋轉從0到359,而不是更喜歡360,361,362 ...不小於0喜歡-1,-2 ...

我試圖將球員zRotation設置爲0(如果它大於360),如果它小於0則設置爲360(360度),但我認爲這不是最好的方法。

任何人都做過類似的事情?

回答

1

你可以用模數來做到這一點。無論你的計算後:

zRotation %= CGFloat(M_PI*2)

或者對你的計算:

zRotation = (zRotation + amount) % CGFloat(M_PI*2)

+2

'zRotation'是_radians_的角度。改爲使用'CGFloat(M_PI * 2)'。 – 0x141E

+0

啊,是的,沒有閱讀文檔!答案已更新。 – Doug

+0

謝謝你們,它幫了我很多! – Cherrypig