我试图通过编写一个小型 2D 游戏来学习 XNA,它是一个自上而下的视角,我尝试进行双重移动,使用左右和上下键沿轴移动,以及向右看鼠标光标,以便玩家可以同时奔跑和瞄准。
我有一个用于玩家位置的向量 (m_PlayerPos),一个用于鼠标位置的向量 (m_MousePos),我试图获得朝向鼠标位置的正确角度。
我使用公式方法:
public static float Angle(Vector2 from, Vector2 to)
{
return (float)Math.Atan2(from.X - to.X, from.Y - to.Y);
}
这是可行的,但由于某种原因,该方法只能沿 x 轴工作一半。当鼠标位于玩家的正左侧或右侧时,玩家向右看鼠标。
但是,如果我移动到播放器的顶部,它会向下看,如果鼠标位于播放器的下方,则播放器会向上看。所以我需要反转 Y 轴,但我不知道如何反转。
预先感谢您的任何反馈。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)