如何避免物体从斜坡上滚落时产生的跳跃问题?
我用SAT实现了一个物体在斜坡上运动的场景,当物体前进时效果是正确的,但当物体从斜坡上滚落时,产生了一些跳跃:
预期的是物体粘在坡上,和前进时的效果一样,请问这种情况有什么好的解决方案吗?
这是部分代码:
slopes.forEach((slope) => {
//Minimum Translation Vector
let mtv = character.collidesWith(slope);
if(mtv.overlap !== 0) {
character.velocityY = 0;
character.positionY -= mtv.overlap;
}
});
以及用到的图片,斜坡部分为橙色:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论