【发布时间】:2015-12-04 00:18:33
【问题描述】:
我正在尝试使用 SKShapenode 在 Swift 中创建墙。即使将碰撞位掩码设置为“全部”,角色仍然会在矩形中移动并且不会与之交互。
设置物理类别:
struct PhysicsCategory {
static let None : UInt32 = 0
static let All : UInt32 = UInt32.max
static let Monster : UInt32 = 0b1
static let Projectile: UInt32 = 0b10
static let Walls : UInt32 = 0b11
static let Player : UInt32 = 0b100
}
我如何尝试设置墙壁:
let rectangle = SKShapeNode(rectOfSize: CGSize(width:390, height:200))
rectangle.position = CGPointMake(frame.midX-10, frame.midY + 50)
rectangle.strokeColor = SKColor.blackColor()
rectangle.glowWidth = 1.0
rectangle.physicsBody = SKPhysicsBody(edgeLoopFromRect: rectangle.frame)
rectangle.physicsBody?.dynamic = false
rectangle.physicsBody?.categoryBitMask = PhysicsCategory.Walls
rectangle.physicsBody?.contactTestBitMask = PhysicsCategory.None
rectangle.physicsBody?.collisionBitMask = PhysicsCategory.All
self.addChild(rectangle)
【问题讨论】:
标签: ios swift skphysicsbody skshapenode