我正在制作一个游戏,其中你有一个向鼠标方向发射子弹的精灵。到目前为止,它适用于 1 个子弹。我有这个方法可以得到一个斜率,然后对向量进行归一化:
public static Vector2f getSimplifiedSlope(Vector2f v1, Vector2f v2) {
Vector2f result = new Vector2f(v2.x - v1.x, v2.y - v1.y);
float length = (float)Math.sqrt(result.x * result.x + result.y * result.y);
return new Vector2f(result.x / length, result.y / length);
}
但是,现在我正在制作一把可以发射几发子弹的霰弹枪,并带有“扩散”。我的计划是,我将取基本斜率,将其转换为度数,添加或减去一对以创建偏差,然后将度数转换回斜率,并将其传递给子弹。
但是,我不知道该怎么做。如果有人能告诉我如何将 2D 斜率转换为度数,那就太好了,反之亦然。
提前致谢!