如何使hitTestObject()更精确?

时间:2012-07-18 02:50:31

标签: actionscript-3 flash actionscript collision-detection

我正在用圆形和正方形进行一些碰撞检测,每当圆与方形接触时,它就会反弹,将其X坐标改变为* -1。但是,圆圈​​的命中区域是一个正方形,因此即使它与圆周围的白色区域发生碰撞,也会出现影响。

我的问题是,有没有办法修改命中区域,使其更接近我的圈子?

谢谢

1 个答案:

答案 0 :(得分:2)

位图命中测试是基于像素的(而不是基于边界的,如基于Sprite的命中测试),因此它本质上更精确。

Here是其上的Adobe文档。

Here是一个很好的教程。

这是一个很好的代码片段:

if (firstObjectBitmapData.hitTest(new Point(firstObject.x, firstObject.y), 255, secondObjectBitmapData, new Point(secondObject.x, secondObject.y), 255))
{
    trace("hit!");
}