我正在试图找出如何检测一个box2d形状是否与另一个重叠。我无法使用正常的碰撞检测,因为其中一个对象尚未激活且尚未成为物理模拟的一部分。这是一个用户可以用鼠标在屏幕上移动的对象,当他们放开按钮时,该对象被添加到sim(通过SetActive)。
问题是用户可以将此对象直接移动到另一个对象的顶部,当他们放开鼠标按钮时,它会被添加并产生一个不和谐的碰撞,并且经常卡在另一个对象中。
所以,我正在寻找的方法是知道一个对象是否与另一个对象重叠,这样我就可以防止用户控制对象的“丢弃”。
我可以循环遍历sim中的所有对象并检查这个用户控制的对象,但我看不到用于检测这种重叠的API。
由于
答案 0 :(得分:1)
您可以将它作为传感器添加到SIM中,因此它与其他实体没有任何交互,但您仍然可以获得它的BeginContact / EndContact事件。然后当它被丢弃时,你所要做的就是改变传感器状态。