我正在尝试完成重力,其中包括通话时间以及加速度。
我尝试过使用通常的重力,它看起来像这样:
velocity += gravity * dt;
position += velocity * dt;
对于普通的平台游戏来说,这可能已经足够了,但我正在尝试制作一款受“直升机游戏”启发的游戏,你必须在不接触墙壁的情况下穿过隧道。
我想做的不同的是,我希望能够在下降的过程中保存上升速度,这将在再次上升的路上使用,所以我会在开始时有一些加速。
我还想要一些通话时间,所以当你到达顶部时,如果我使用代码示例中的重力,它不会像它那样快速地迫使你下来。
这张图说明了我想要的曲线:
请注意,整个控制是通过一个键完成的,所以例如,如果你按住空格,你会飞起来,如果你松开它,你会潜水。
角色也永远不会向左或向右移动,因为它在屏幕上的 X 位置是静态的,所以不能使用向量。
我花了几个小时试图让它工作,但没有成功。我也尝试在互联网上搜索,但没有任何运气。
游戏“鲸鱼足迹”得到了我想要的重力。
这是游戏视频的链接:http
://www.youtube.com/watch?v= 5OQ0OWcuDJs实际代码
我希望任何人都可以帮助我解决这个问题。