我正在移植我制作的游戏,从Windows(Visual Studio c#XNA4)到Android。
在游戏中,我需要找到用户“触摸”的位置(我已经完成),然后将玩家“指向”此触摸位置(以此角度绘制玩家位图)。
在c#和XNA4中,我使用了以下内容:
Matrix rotationMatrix = Matrix.CreateRotationZ(playerAngle);
PlayerDirection = Vector2.Transform(up, rotationMatrix);
如果球员的位置是
x = 200;
y = 200;
触摸坐标是
x = 300;
y = 300;
如何让玩家“指向”用户触摸的位置?
答案 0 :(得分:2)
在Java中(我假设您使用的是Java for Android),您将执行以下操作来查找角度:
private double getAngle(double x1, double y1, double x2, double y2)
{
return Math.atan2(y2-y1, x2-x1);
}