0
私のゲームでは、色が異なるサークルがあります。彼らは色のない境界線と衝突するだけです。 これを行うには、最初にノーマルサークルにカテゴリビットマスクを割り当てます。円は、それはそれはそれはしませんが、境界に衝突し停止させる必要があるビットマスクを取得しピッカーと衝突した後SpriteKitのビットマスクに問題SWIFT
boundary.physicsBody?.categoryBitMask = CollisionCategoryBitmask.bound
boundary.physicsBody?.collisionBitMask = 11101111
:
struct CollisionCategoryBitmask {
static let monster: UInt32 = 00000001
static let picker: UInt32 = 00000010
static let bound: UInt32 = 00000100
static let circle: UInt32 = 00001000
static let yellow: UInt32 = 00010000
static let brown: UInt32 = 00100000
static let cyan: UInt32 = 01000000
static let magenta: UInt32 = 10000000
}
physicsBody?.categoryBitMask = CollisionCategoryBitmask.circle
境界は、次のマスクを持っています。
self.circles[i].fillColor = .yellow
self.circles[i].physicsBody?.categoryBitMask = 00010000
self.circles[i].physicsBody?.collisionBitMask = 11111011
このコードは、円がピッカーと衝突したときに実行されます。 シアンとマゼンタのような構造体の値は、それぞれがその色の境界と衝突しない円の状態に対応しています。私のミスはどこですか?