关于box2d碰撞的问题

想要做一款超级玛丽类型的游戏,用到了box2d,当人物刚体跳起来落地的时候刚体位置会出现回弹,这样BeginContact函数里获取到的人物刚体的位置会小于真实位置,这给判断是否落地带来了困难,我目前想到的是隔一帧等引擎自动修复了这个回弹再判断,可以这样影响了操作的连贯性,请问还有什么好的解决方法吗?

判断是否落地有很多方法啊,干嘛用判断位置这种非常蛋疼的方法。
简单的就有判断Y轴速度是否为零,不过这种有很多缺点。

最好用,最准确的,就是用射线,或者在人物脚底放一个scenor感应器。
射线的话,从人物脚底发射,然后判断是否在一定数值内有障碍物。
感应器的话,就从起跳后开始监听,如果起跳后感应器有物体进入,则说明落到地上了。

而且超级玛丽这种平台游戏不应该出现落到地上后出现回弹,也就是你需要把地板的反弹参数设置为0.那样物体落地后就不好反弹了