我正在尝试并尝试让一些东西为以后的项目工作,但我有一个问题,我似乎无法找到解决方案。
现在我有工作和准确的碰撞检测,但问题是创建物理。现在的物理学很简单,一个物体有一个 vector 来表示它的方向和速度,当发生碰撞时, vector 是反转的。
问题是,当物体发生碰撞时,它们会相互挤压,最终永远反转 vector ,从而导致奇怪的结果。例如。神奇地向上漂浮,或者似乎完全忽略了物理学。
谁能帮帮我?
编辑: 检测是通过分离轴定理完成的,我没有放代码,因为真正发生的事情是有一个循环来检查碰撞,当发现碰撞时, vector 被反转。就像我说的,实际检测工作正常,我认为我的问题正如 Sibbo 所说的那样,移动物体使它们不再碰撞。
最佳答案
我不知道你的实现,但是当你检测到碰撞时,你应该移动对象,使它们不再接触。这将防止您的程序进入无限碰撞循环
关于java - 碰撞检测和弹跳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8717494/