Java游戏,计算曲线

时间:2013-11-09 11:01:39

标签: java game-physics

我正在做一个简单的游戏,需要做类似水果忍者游戏的事情。我现在正试图让物体从底部飞到屏幕右边的曲线,就像这样(但是从随机位置而不是中间位置):

enter image description here

因为我对数学知之甚少,所以我现在已经坚持了很长一段时间。我该如何计算呢?

我让它以一种非常简单和讨厌的方式工作,但是对象有一个静态的速度,而不是很好的平滑,甚至我不知道我刚刚做了什么。

2 个答案:

答案 0 :(得分:3)

kinematics equations.

中使用初始速度,发射角度和重力加速度

答案 1 :(得分:1)

根据牛顿第一运动定律,物体在恒定方向上以恒定速度移动,除非外力作用于它。这意味着每个对象具有一个位置(以X和Y坐标表示),该位置由每个游戏帧的向量(由x方向和y方向的速度表示)改变。当你跑步时,你已经到了一半。

for (GameObject object: gameObjects) {
     object.position.x += object.vector.x;
     object.position.y += object.vector.y;
}

但在这种情况下,你有一股影响物体的力量:重力。重力是Y方向的恒定加速度。这意味着矢量每次都由重力改变:

for (GameObject object: gameObjects) {
     object.vector.y -= GRAVITY;
     object.position.x += object.vector.x;
     object.position.y += object.vector.y;
}