我是 Spritekit 的新手,在一些简单的事情上遇到了一些麻烦。
我正在制作弹球游戏。为了检测与球的碰撞并奖励积分,缓冲器具有以下设置:
categoryBitMask
collisionBitMask
contactTestBitMask
但是,一旦我设置了categoryBitMask,该对象就不再以相同的方式运行。球穿过保险杠。
我尝试在代码中设置属性以反射(reflect) SKS 文件中设置的内容:
physicsBody?.isDynamic
physicsBody?.affectedByGravity
physicsBody?.allowsRotation
physicsBody?.pinned
physicsBody?.mass
但这没有任何区别。
如何在设置categoryBitMask后让SKSpriteNode保持其物理属性?
最佳答案
我发现了这个问题。我在一个对象上设置了碰撞,但没有在另一个对象上设置碰撞
ball.collisionBitMask = ...包含保险杠 ball.contactTestBitMask = ...包含保险杠
但不是保险杠: bumper.collisionBitMask = ...不包含球 bumper.contactTestBitMask = ...不包含球
关于ios - SpriteKit类别BitMask问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56155776/