物体在斜坡上行走时如何避免“弹跳下降”?

时间:2017-08-28 11:42:13

标签: javascript collision-detection game-physics

我一直致力于通过SAT(分离轴定理)实现斜率碰撞。然后我遇到了麻烦。当我的物体沿着斜坡行走时,它像一个弹跳球一样移动:

enter image description here

坡度有3个精灵(45°):

enter image description here

以下是我目前使用JavaScript的代码:

slopes.forEach((slope) => {
    //Minimum Translation Vector
    let mtv = object.collidesWith(slope);

    if(mtv.overlap !== 0) {
        object.velocityY = 0;
        object.positionY -= mtv.overlap;
    }
});

向上移动时效果很好,但在向下移动时弹跳,我不知道在走路时如何保持物体在斜坡上停留。

请,任何帮助将不胜感激。

0 个答案:

没有答案