如何在精灵套件中设置类别掩码?

问题描述

  let dart = SKSpriteNode(imageNamed: "Dart")
        dart.physicsBody?.isDynamic = true
        dart.physicsBody?.categoryBitMask = 3
        dart.physicsBody?.collisionBitMask = 2

当我打印飞镖类别掩码时,它返回 nil。我已经通过场景编辑器设置了其他精灵类别蒙版,它们工作正常。感谢您的帮助。

解决方法

你实际上还没有制作一个物理体。

dart.physicsBody = SKPhysicsBody(...)
dart.physicsBody?.isDynamic = true
// etc.

... 取决于您想要的物理体类型(圆形、矩形、多边形等)。请参见此处的示例: https://developer.apple.com/documentation/spritekit/sknode/getting_started_with_physics_bodies