4

我最近被分配使用 Corona SDK 创建一个简单的游戏。游戏的主要支柱是一个简单的事件:用户应该将球放入篮子,我应该能够处理这个事件。

为了更好的理解,放一张图:

在此处输入图像描述

我成功地为篮子创建了碰撞形状,但是我遇到了这个篮子内部的碰撞问题。我的第一个想法是:

  • 创建一个新形状
  • 大小和位置以适合这个篮子的“腹部”
  • 将其添加到物理世界中,并聆听碰撞。

使用混合绘图,它看起来像这样:

在此处输入图像描述

但是有一个问题:如果我将这个形状添加到物理中,它不会让球掉进篮子里,它也会把这个形状当作一个固体来处理。

所以我的问题是:我怎样才能让这个自定义对象发生碰撞,而不会阻止球通过它?我已经阅读了很多类似问题的论坛帖子,但没有一个得到正确答案。必须有一种优雅的方式来做到这一点。

还有一点注意:请不要建议手动检查碰撞,用矩形相交,因为在这种简单的情况下它会起作用,但以后我可能需要改变篮子的形状,然后它就没有用了!

4

1 回答 1

5

Box2D 有一个叫做“传感器”的东西。

您只需将内部碰撞设置为传感器,它就会完全按照您的要求进行操作:)

做就是了:

MyInternalCollisionObject.isSensor = true
于 2012-10-14T03:33:46.937 回答