didBeginContact重新组合所有physicsBody(Swift)

时间:2016-04-09 16:03:43

标签: swift sprite-kit

我有一个Ball(categoryBitMask = 1,Contact = 2), 墙(categoryBitMask = 2,Contact = 1) 和一个地面(使用PhysicsBody for Ball to down)

我为所有这些设置了physicsBody。

但我只想和Ball和Walls联系,而不是Ball with Ground。

当ball掉到地面时,在didBeginContact()中,它也会被调用。

我怎么样?

1 个答案:

答案 0 :(得分:0)

在枚举类别中,设置3个类别:(土地,墙壁,球)。

设置球和地的无接触,我只设置墙壁接触,而不是球和地:

wallsNode.physicsBody?.categoryBitMask = categoryType.walls.rawValue

要让球不与Land接触,请执行以下操作:

wallsNode.physicsBody?.contactTestBitMask = categoryType.ball.rawValue | categoryType.land.rawValue

而且:

wallsNode.physicsBody?.collisionBitMask = categoryType.ball.rawValue | categoryType.land.rawValue