【发布时间】:2010-10-22 05:47:13
【问题描述】:
作为爱好,我正在开发一款 2D 游戏。我已经使用分离轴方法实现了一些基本的碰撞检测。当两个物体发生碰撞时,我会将其中一个物体沿重叠最少的轴投影出来。
我遇到的问题是,当物体移动得相当快时,重叠最少的轴并不总是正确的方向。我拥有的最好的例子是当一个物体由于模拟的引力而向下移动(沿着+ y轴)并与靠近“边缘”的环境物体(如悬崖边缘)碰撞时。如果物体下落的速度足够快,那么重叠量最少的轴最终会成为 x 轴,并且物体会被沿 x 轴侧向推。
处理快速移动物体的最佳方法是什么?我考虑过以小增量移动下落的物体,这似乎增加了很多额外的开销。我也考虑过给环境对象一个“偏好”哪个轴来投射下落的对象,但这似乎很混乱且容易出错。
有没有办法在不增加大量额外开销的情况下做到这一点?
【问题讨论】:
标签: game-physics