【问题标题】:Detect intersection without causing bodies to collide检测交叉点而不会导致身体碰撞
【发布时间】:2014-06-29 20:29:27
【问题描述】:

我想检测场景中两个对象(精灵)的交集。我不希望对象几何交集导致场景中的身体发生碰撞。

我已经为我的两个对象形状创建了 PhysicalBody,但我无法找到一种方法来检测交叉点而不让两个物体在碰撞时相互碰撞。

我正在使用带有默认花栗鼠引擎的 cocos2d-x 3+(我现在想坚持使用)

问题是,我如何检测元素的交集而不让它们在相交时相互推动。

【问题讨论】:

  • 嗯...我不太明白你的问题。如果两个实体相交,它们就会发生碰撞。我不知道 Chipmunk,但在 Box2D 中,你可以做到这一点,这样“碰撞”就不会引起物理反应,而是发送一个信号,表明这两个物体正在接触。这就是你要找的东西吗?
  • @Losiowaty 是的,正是这样,我一直在尝试所有我能想到的设置,但我无法得到那个结果
  • 好吧,我没有花栗鼠的经验,所以我无法进一步帮助你 - 我添加了chipmunk标签,以便有更多知识的人可以找到你的问题。

标签: cocos2d-x chipmunk cocos2d-x-3.0


【解决方案1】:

答案很简单(虽然我花了两天时间才弄明白)

当检测到接触并调用onContactBegin()时,当相关形状被击中时返回false将停止物理交互。

【讨论】:

  • 比这更简单;您设置了 contact 位掩码,但没有设置 collision 位掩码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-19
相关资源
最近更新 更多