碰撞不能使用JavaScript(包括屏幕截图和碰撞功能)

时间:2013-04-19 19:11:25

标签: javascript collision-detection

我遇到了一些碰撞检测问题;

我用来检查矩形是否与另一个矩形相交的函数是:

function box_col(ax1, ay1, ax2, ay2, bx1, by1, bx2, by2) {
    return !((ax2 < bx1)||(ax1 > bx2)||(ay1 > by2)||(ay2 < by1));
    }

出于某种原因,每当我在篱笆的边缘时,我都无法移动了。 如果我走到栅栏的顶部,但是不能向左或向右移动,我可以向后移动。

当我击中左侧,右侧和底侧时也是如此。 一旦我分别处于它的边缘,我就再也无法继续前进了。

http://i.stack.imgur.com/jzcp8.png - 屏幕截图

(红色块表示碰撞区域,因为我使用视图变量绘制到画布中)

我知道传递给box_col的所有x,y坐标都是正确的。

你可以看到我在围栏的顶端,但它不会让我向左或向右移动。 刚刚备份。 而且,当我在栅栏的左侧时,我无法在任何时期移动;它甚至不会让我向右移动。

我在网上搜索了很多,花了好几个小时试图找到正确的碰撞算法,但我显然还是没有得到它......

感谢任何帮助,谢谢。

0 个答案:

没有答案