如何在as3中进行像连锁反应安卓游戏的碰撞检测?

时间:2014-05-12 13:20:06

标签: actionscript-3 flash 2d-games

我正在开发一个类似于Android游戏连锁反应的项目。

网格和结构已完成。唯一的问题是让碰撞算法正确。

我需要一个更加动态的解决方案。

1 个答案:

答案 0 :(得分:0)

在我看来,你不必使用像hitTestPoint HitTestObject这样的复杂方法。

你需要检查的是圈子半径和圈子之间的距离:(猜猜你在某个地方存储了你的圈子列表!)

for each(var circle1:* in listOfCircle)
{
   for each(var circle2:* in listOfCircle
   {
       if(distance between circle 1 and circle 2 < (circle1 radius/2) + (circle2 radius/2))
       {
          //Collision
       }
   }

}

当然你必须避免检查相同圆圈之间的距离。 你可以在这里找到2点之间的距离:
Distance between two points

现在,如果您正在寻找高性能游戏,我会立即使用Starling Framework: http://gamua.com/starling/

但如果它只是一个培训的个人项目,一切都会好起来的。)