我正在尝试确定Object1是否会在给定以下信息的情况下与Object2发生冲突:
1)对象的边界框(使用有界框碰撞检测)
2)物体的速度
3)对象的当前位置(x,y坐标)
4)物体的方向(向上,向下,向左或向右)
对于一些图像,想象一下在2D网格上行进的物体,它们只能在该网格的线上移动。
因此,鉴于上述信息,我需要一种有效但可读的算法来确定这些对象是否会发生冲突。通过有效,我的意思是花费在计算上的时间的最小化时间。 Psuedocode或链接很好。
答案 0 :(得分:3)
首先,找到框在X轴上重叠的时间间隔。 其次,找到框在Y轴上重叠的时间间隔。 最后,检查两个时间间隔是否重叠。如果是这样,两个区间中最早的时间点就是它们碰撞的时刻。
答案 1 :(得分:2)
您正在寻找的是“移动凸对象的分离轴测试”。
以下是Google图书的链接,其中详细说明了这些内容:
(抱歉这个大链接 - 这不是我的想法)
答案 2 :(得分:1)
你最好的方法是解决:
然后测试两个时间范围是否相交。这将是一个额外的奖励,为您提供碰撞时间。
这将是一个简单的恒定时间操作。