我有一个edgeLoopForRect
的正文,我给它categoryBitMask
,但是当我调试对象时categoryBitMask
与 self.physicsBody?.categoryBitMask = 1
self.physicsBody = SKPhysicsBody(edgeLoopFromRect: self.frame)
不同我分配了它......
453453
当我调试它显示为{{1}}而不是``
时答案 0 :(得分:0)
您不能将物理实体分配给自己。您必须先创建一个节点,然后为其物理主体指定一个类别位掩码。
IE:
let edge = SKNode()
edge.phisicsbody = SKPhisicsbody(edgeloopfromrect: frame)
edge.physicsbody!.restitution = 0
edge.physicsbody!.friction = 0
edge.physicsbody!.angularDamping = 1
edge.physicsbody!.dynamic = false
edge.physicsbody!.categotyBitMask = 2
edge.physicsbody!.collisionBitMask = 1 //The category bit mask of the object you want it to collide with I used 1 as example
addChild(edge)
如果您遵循此示例,请记住对要与边缘发生碰撞的节点执行相同的过程,并使碰撞位掩码为2。
希望这有助于交配。