使用复杂对象进行可拖动对象碰撞检测的最佳方法

时间:2013-03-04 21:02:29

标签: actionscript-3 flash

我很难找到具有可拖动对象的多个边界的对象。 HitTest无法正常工作,因为在快速拖动时,对象将在HitTest触发之前重叠。我想知道是否有更有效的方法来确定这种互动。

我将尝试存储每个矩形x,y,宽度,高度,然后循环遍历这些矩形,以确定对象是否已触及并阻止玩家在该方向上拖动。

Here's the example as a drawing.

1 个答案:

答案 0 :(得分:0)

因为您正在尝试检测高速发生的碰撞,所以您需要使用某种形式的扫掠多边形碰撞检测。在前一帧和最后一帧之间仅一次采样冲突总是有可能失败。

查看Swept Collision检测的简要说明: http://howlingmoonsoftware.com/wordpress/?p=300

或者只是搜索“扫描碰撞检测”

如果你在游戏中这样做,你可能会发现使用像Box2D这样的库将是一个值得解决的问题。在Box2D中,您想要的是连续碰撞检测。 http://www.box2d.org/manual.html