首页 文章

2D碰撞(返回碰撞侧)

提问于
浏览
1

马里奥打了多场比赛 . 通常情况下,当他在游戏中玩耍时,当他跳到一个问题区域时,他会获得一个免费的惊喜 . 当他遇到Goomba或其他危险的流氓时,他只是跳了起来 . 在进入另一场比赛后,马里奥像往常一样跳到问号框下,发现没有任何反应 . 马里奥跳上Goomba并死去 . 马里奥很困惑,这里有什么不对?

这个新游戏有碰撞检测(因此Goomba死亡),但不知道如何分辨哪一方与之相撞 . 假设一方只能碰撞一侧,而且马里奥的左侧只能碰撞物体的右侧(右 - >左;顶 - >底;等等) .

我如何进行碰撞测试,同时返回可怜的马里奥相撞的哪一侧(确保跳到[盒子下方]给他一个惊喜,但跳到一个盒子上并没有给他任何东西) .

伪代码将不胜感激 .

1 回答

  • 1

    如果您的引擎/游戏没有滞后问题,您可以使用当前速度 .

    例如:

    • 触摸框:如果垂直速度不是't '正',则没有礼物

    • 触摸敌人:如果垂直速度不是''t '负',死亡

    我像往常一样在几何体中使用垂直轴,朝向屏幕顶部,在像素从顶部开始的屏幕空间中通常不常见,因此向上移动 .

相关问题