根据以下信息,我正在尝试确定 Object1 是否会与 Object2 发生碰撞:
1) 对象的边界框(使用边界框碰撞检测)
2) 物体的速度
3) 对象的当前位置(x,y 坐标)
4) 物体的方向(上、下、左、右)
想像一下,想象物体在二维网格上移动,它们只能在该网格的线上移动。
所以鉴于以上信息,我需要一个高效但可读的算法来确定这些对象是否会发生碰撞。我所说的高效是指花费在计算上的时间最少的恒定时间。伪代码或链接都可以。
最佳答案
首先,找出框在 X 轴上重叠的时间间隔。 其次,找出框在 Y 轴上重叠的时间间隔。 最后,检查两个时间间隔是否重叠。如果是这样,则两个间隔中最早的时间点就是它们将要发生碰撞的时刻。
关于performance - 查找 2D 平面上的 2 个对象是否会发生碰撞的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3382367/