我目前正在使用SpriteKit在Swift中创建2D游戏,而且我遇到了碰撞检测问题。
让我们说我在游戏中有SKSpriteNode Foo。然后让我们说SKSpriteNode Bar在Foo之上产生,但是没有contactTestBitMask来触发联系。然后在片刻之后(让我们说1秒)Bar改变其contactTestBitMask以检测与Foo的联系。
目前,Foo必须实际移动一点点,或者从Bar下移出并返回到它以检测与它的联系。我需要Bar在更改其contactTestBitMask时立即触发与Foo的联系。
在不更改contactTestBitMask的情况下,可能有不同的方法吗?
谢谢!
答案 0 :(得分:1)
如果创建一个物理体对象与另一个物理体对象相交,则不会记录任何碰撞。它与SK通过运动记录碰撞的方式有关。
您可以选择在创建对象时使用intersectsNode:
,以查看它是否与另一个对象相交并相应地处理任何后续代码。