0

我有一个非常独特的 Box2D 需求:

我将设置多边形具有特定颜色的世界。每当两个相同颜色的多边形重叠时,它们的交叉区域不应再是实心的(其他对象可以通过它)。

我不知道如何在 Box2D 中实现这种碰撞方案。我精通Box2D,所以我了解所有基础知识并且以前使用过它。只是这个功能让我感到困惑。

我目前的计划:实现一个特殊的接触侦听器,它检查碰撞点是否有相同颜色的重叠多边形。我想在这里提出其他想法,因为由于联系人的工作方式,这听起来很脆弱且成本高昂。

4

1 回答 1

0

您可以保留当前重叠的当前多边形列表,如果碰撞对象仅与一个对象发生碰撞,则为实体。如果它与多个碰撞,则允许。当它们不再碰撞(重叠)时,您从列表中删除引用。

于 2012-06-13T14:58:50.897 回答