我们需要在我们的游戏Bonehearts中建立一种攀爬系统,我花了最近两晚测试了一种边缘抓取机制 - 而事实证明,成败比我期望的要好得多。

主要的想法是颠倒这种系统的工作方式。

在大多数游戏中,你标记出特定的边缘为“可攀爬”,然后将玩家吸附到它们上面。
我想和反过来:一切都是可攀爬的默认情况,并且我只在那里禁用它。

所以,系统不再问 “玩家可以抓哪些东西?” ,而是问 “他们不能抓什么?”

这导致了一些很有趣的行为:

  • 玩家可以依附在事实上任何边缘上(只要符合倾斜和大小的检查)
  • 甚至包括移动物体和巨大敌人
  • 玩家可以爬上去,如果上方有空间
  • 沿着边缘左右晃动,如果有空隙,甚至可以在拐角处和高度区别处晃动
  • 玩家可以在任何时候松开
  • 如果目标物体移动,玩家会动态移动
  • 它插入了我们的状态机,所以它支持一些奇怪的情况(比如我的角色身体悬挂起来,而头部是分开的💀)

它仍然处于工作状态(动画缺失,还有一些抖动),但我对当前的方向很喜欢。

在开始之前,我研究了现有的解决方案,但并没有找到能做到我想要的,所以我直接从零开始建立这种方法。

我肯定是解决了边缘抓取问题的方式。所以,如果有人正在工作同样的东西,并想了解技术细节,我很高兴分享更多信息。