在 Box2d 中碰撞的对象类型的情况下是否可以更改主体类型?

Changlable body type in case of object type for collisions in Box2d?

我正在开发一个游戏,十个球是 BodyType.DynamicBody。还有一些障碍是BodyType.KinematicBody。球撞到障碍物,球反弹。还行吧。但是球可以通过这种方式相互撞击。我希望球不能相互撞击和穿过。

综上所述,球会撞到障碍物,但不会撞到其他球。

(如果你知道游戏ballz或bbtan,我正在尝试制作类似的游戏)

  1. 创建一个新的物理层。单击检查器中显示 "layer" 的位置,单击 "Add Layer..." 并将图层(例如图层 12)命名为 "Balls"(名称不重要)。
  2. 将你的球设置到这个物理层。 Select 全部,单击检查器中的 "layer" 下拉菜单,然后 select "Balls"
  3. 转到:编辑 -> 项目设置 -> 物理
  4. 在检查器中,您应该会看到一个奇怪的复选框网格。取消选中 "Balls" 和 "Balls"
  5. 的交集

你的球现在不会相互碰撞了。