![]()
我有这个:
let Alphacategory: UInt32 = 0x1 << 0let betacategory: UInt32 = 0x1 << 1
我让精灵充满活力而不受重力的影响
self.physicsworld.contactDelegate = selfAlpha.physicsBody?.categoryBitMask = AlphacategoryAlpha.physicsBody?.contactTestBitmask = betacategory
和
beta.physicsBody?.categoryBitMask = betacategorybeta.physicsBody?.contactTestBitmask = Alphacategory
我找不到任何对我有意义的东西,但我认为问题就在这里
func dIDBeginContact(contact: SKPhysicsContact) { var firstbody: SKPhysicsBody var secondBody: SKPhysicsBody if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask { firstbody = contact.bodyA secondBody = contact.BodyB beta.removeFromParent() }} 首先,你应该设置你的firstbody& secondBody到他们的collisionBitMask的顺序: if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask { firstbody = contact.bodyA secondBody = contact.bodyB }else { firstbody = contact.bodyB secondBody = contact.bodyA }if firstbody.categoryBitMask=0 && secondBody.categoryBitMask=1 { secondBody.removeFromParent()} 这将防止你的精灵与任何东西(包括彼此)发生碰撞.将其设置为设置其他BitMask属性的位置:
Alpha.physicsBody.collisionBitMask = 0beta.physicsBody.collisionBitMask = 0总结
以上是内存溢出为你收集整理的初学者swift sprite kit – 节点碰撞检测帮助(SKPhysicsContact)全部内容,希望文章能够帮你解决初学者swift sprite kit – 节点碰撞检测帮助(SKPhysicsContact)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)