通常为了检测画布游戏中的碰撞,我使用类似的东西:
function collides(a, b) {
return a.x < b.x + b.width &&
a.x + a.width > b.x &&
a.y < b.y + b.height &&
a.y + a.height > b.y;
}
但这仅在处理帧时对象正在接触时才检测到碰撞。如果我有一个精灵,其速度(以像素/帧为单位)大于其路径中障碍物的宽度,它将通过障碍物而不会检测到碰撞。
我将如何检查精灵与其目的地之间的内容?