getObjectsUnderPoint在开发中经常被应用到,DragManager,新手等等。
getObjectsUnderPoint貌似用的local坐标,而不是global坐标,如var obj:Array = _warFogMc.getObjectsUnderPoint(p);这个坐标p就是在
_warFogMc内的局部坐标。
为了要用
getObjectsUnderPoint来代替hitTestPoint方法来检测碰撞,但是发现有些地方的
getObjectsUnderPoint失效了。原来是自己对显示对象用了模糊滤镜[new BlurFilter(100, 100)]。去掉滤镜以后就OK了。看来
getObjectsUnderPoint可能是用的是实际显示的像素吧。
解决办法是建立一个相同的对象hitTestObj,可以不加到舞台,然后用
hitTestObj对象来检测,用获取到的对象的名字在实际显示的对象里面去找这个实际的对象,然后再做处理就可以了。