作者:会长大的幸福7007 | 来源:互联网 | 2023-10-12 10:45
碰撞检测设置步骤:1.添加场景代理SKPhysicsContactDelegate2.设置self.physicsWorld.contactDelegateself3.设置接触抛事
碰撞检测设置步骤:
1.添加场景代理SKPhysicsContactDelegate
2.设置self.physicsWorld.cOntactDelegate= self
3.设置接触抛事件ground.physicsBody?.cOntactTestBitMask= horseCategory
spritekit的碰撞检测,是通过设定这三个值来实现的
ground.physicsBody?.categoryBitMask = landCategory
ground.physicsBody?.cOntactTestBitMask= birdCategory
ground.physicsBody?.collisiOnBitMask= birdCategory
文档中的解释分别是:
1.一个标记,定义了这个物体所属分类
2.一个标记,定义了哪种物体接触到该物体,该物体会收到通知(谁撞我我会收到通知)
3.一个标记,定义了哪种物体会碰撞到自己
第二种是用来抛出接触消息的,第三种是用来检测碰撞的。碰撞检测,默认所有物体之间互相可碰撞。接触消息,默认所有物体接触都不产生消息,这样是为了保证效率。当你对某种接触感兴趣时,单独设置contactCategory,监听这类碰撞消息。