AS3预测性碰撞(扫描测试)

时间:2012-10-03 12:41:52

标签: actionscript-3 flash collision-detection physics collision

我正在AS3制作一个基本的平台游戏引擎,我正在实施引力。重力目前让玩家在落地时(取决于玩家的速度)将几个像素吸入地面,我不希望如此。

我希望能够提前1帧测试碰撞(扫描测试),如果在下一帧发生碰撞,我希望玩家停止0px到地面,无论玩家的速度如何。

我还想要像地形一样的像素完美碰撞,所以我一直在使用Corey O'Neil的碰撞检测套件(CDK),它非常适合检测碰撞,但我无法解决如何让它预测它们。我不确定这是否是最好的库。

我不确定Box2D;我觉得这对我想要的东西来说太过分了。

如何知道如何在AS3中进行像素完美的扫描测试?

2 个答案:

答案 0 :(得分:0)

对于小型项目来说,Box2D也应该是非常好的,如果你想在以后扩展的话也是如此......

如果您需要更快速地潜入,请查看Quick Box 2d

还有一些很好的教程(here& here)。

答案 1 :(得分:0)

  

我希望能够提前1帧测试碰撞(扫描   测试),如果在下一帧发生碰撞,我想要   玩家停止0px进入地面,无论玩家是谁   速度。

在游戏循环中,您正在检查分数,只需添加将在下一帧中完成的移动,即当前的Y速度。 像这样:

if(currentYSpeed + player.y >= ground.y)
{
    player.y = ground.y
}else
{
    player.y += currentYSpeed;
}