我一直在使用SFML 1.6库,我想知道。
如何旋转精灵以使其始终转向鼠标在屏幕上的位置?
感谢。
(首选SFML特定代码)
答案 0 :(得分:8)
如果你有精灵的位置:S =(Sx,Sy)和光标的位置C =(Cx,Cy)
您可以计算向量 =(Cx - Sx,Cy - Sy)与单位向量之间的角度,例如
=(1,0,0)。
要计算角度,您可以使用cross product:
然后:
然后你计算角度:
最后你旋转你的精灵:
Sprite.SetRotation(alpha); //alpha in degree
答案 1 :(得分:2)
在this link的SFML论坛上讨论了这个问题。