Rotate Sprite to Mouse Position
I've been using the SFML 1.6 library, and I'd like to know.
How d开发者_如何学Gooes one rotate a sprite so it always turns toward where the mouse is located on screen?
Thanks.
(SFML specific code is preferred)
If you have the position of the sprite : S = (Sx, Sy) and the position of the cursor C = (Cx, Cy)
You can calculate the angle between the vector
= (Cx - Sx, Cy - Sy) and a unit vector for example = (1, 0, 0).To calculate the angle you can use the cross product :
And then :
then you calculate the angle :
Finally You rotate your sprite :
Sprite.SetRotation(alpha); //alpha in degree
精彩评论