3

我当前的设置只有在发生碰撞后才有用;显然必须有比这更好的东西吗?

public boolean CollisionCheck(Rectangle rect1, Rectangle rect2) {
   if(rect1.intersects(rect2)) {
      return true;
   }
   return false;
}

如何进行抢先式碰撞检测?

4

1 回答 1

0

通常,您提前一步计算,如下所示:

矩形类内部:

public void move()
{
    rec.x += rec.dx
    rec.y += rec.dy
}

然后,

public boolean CollisionCheck(Rectangle rect1, Rectangle rect2) {
   rec1.move();
   rec2.move();
   if(rect1.intersects(rect2)) {
      return true;
   }
   return false;
}

哈。特拉维斯比我先进来。很高兴看到 SO 有更新答案通知。

于 2010-04-22T02:42:32.657 回答