物体移动制定角度。

我有一个物理身体(气球),并且我正在碰撞中施加一个冲量。

我想要的是,当“玩家”与气球碰撞时,它应该向上移动(这非常好),但应该根据气球的形状在碰撞时采取一些角度。它不应该总是垂直向上移动。

当在气球的最顶部部分碰撞时,它应该直接向上移动。在其他情况下,它应以某个角度向上移动。 我该如何做到这一点?

点赞
用户1440756
用户1440756

从我理解你的问题的角度来看,下面是一种解决方法:

你可以通过你的两个物体(你的玩家和气球)的位置来确定撞击的角度。所以你有气球的 x 坐标,气球的 y 坐标,玩家的 x 坐标和玩家的 y 坐标。

- 三角形的两边对于该角度造成了 opp 和 adj, 
sideO = balloon.y-player.y  -- 对边
sideA = balloon.x-player.x  -- 邻边

- 求得角度
angle = math.atan(sideO/sideA)

这可能和你想要的相反,如果是这样,只需要尝试使用 player.x-balloon.x(和 y 同样如此)。

这里有我学到的数学知识。 另外,这是 Lua 数学库。

2012-06-07 03:30:47