我的当前设置只有在发生碰撞后才有用;显然,必须有比这更好的东西吧?
public boolean CollisionCheck(Rectangle rect1, Rectangle rect2) {
if(rect1.intersects(rect2)) {
return true;
}
return false;
}
如何进行预防性碰撞检测?
我的当前设置只有在发生碰撞后才有用;显然,必须有比这更好的东西吧?
public boolean CollisionCheck(Rectangle rect1, Rectangle rect2) {
if(rect1.intersects(rect2)) {
return true;
}
return false;
}
通常,您预先计算一步,就像这样:
在矩形类内部:
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;
}
哈。Travis在我之前回答了。很高兴看到SO已经更新了答案通知。
move()
和CollissionCheck()
。对于一个有用的问题给予+1。 - Xavier Ho