SKNode 碰撞

Sprite Kit 碰撞和接触事件处理的决定因素是你为每个交互对象类型创建的 categoryBitMaskcollisionBitMaskcontactTestBitMask 的关系设置。通过合理地将这些设置用于接触和碰撞所需的结果,你可以确定哪些类型可以碰撞并通知与他人的联系,并避免不希望的碰撞,接触和物理处理开销。

对于每种类型的实体,你可以设置所有三种:

  1. categoryBitMask:特定于此类节点的类别
  2. collisionBitMask:碰撞微分器,可以与上面不同
  3. contactTestBitMask:接触微分器,可以与上述两者不同

实施冲突和联系的一般步骤是:

  1. 设定物理尺寸,形状和(有时)质量
  2. 从上面的类别,碰撞和联系人为你的节点类型添加必要的 BitMasks
  3. 将场景设置为联系人委托,使其能够检查并通知冲突和联系人
  4. 实现联系处理程序和物理事件的任何其他相关逻辑