0

我目前正在尝试在我的游戏中实现“蹲伏”功能。我将 WCK 与 Box2D 一起使用。

我有一些相当基本的东西,我将我的主要角色生成为形状的延伸。这意味着碰撞是从 getgo 自动生成的。这对很多事情都很好,但不是所有事情。

我有蹲伏/滚动功能。问题是蹲下和站立的碰撞箱是相同的,所以如果一个箱子在蹲下时掉到你身上,它会“悬浮”在你身上,因为碰撞箱仍然是站立的碰撞箱。

我将如何“刷新”形状碰撞?有没有办法删除碰撞并使 Box2D 重新计算?

4

1 回答 1

0

可以过滤联系人并防止它们发生(使用联系人监听器或迭代世界联系人列表),但我认为有更好的方法来做你想做的事。

您可以将身体分成两部分,并用棱柱关节连接它们(启用限制和电机,禁用碰撞连接)。站起来你会让电机将部件推到上限,蹲下时你会把它们拉到下限,从而降低高度。

如果您需要真正不同的形状(例如,站立时的矩形和围绕银河系风格滚动的圆形),这可能会起作用:将两个形状的固定装置添加到身体并使用遮罩过滤来防止您不需要的与任何东西碰撞。

于 2013-06-07T15:01:47.233 回答