Godot Engine:PhysicsBody中的Layer和Mask

先浏览一下LayerMask的设置,再解释其作用
  1. PhysicsBody的属性栏中可以看到它们的身影,LayerMask各有20个小“方块”,默认LayerMask的第一个“方块”是被选中的
    Godot Engine:PhysicsBody中的Layer和Mask_第1张图片
  2. 点击右边的按钮
    Godot Engine:PhysicsBody中的Layer和Mask_第2张图片
    弹出一个层列表,每层前面有一个单选框,后面是层的名字
    Godot Engine:PhysicsBody中的Layer和Mask_第3张图片
    层的名字可以在项目设置自定义
    Godot Engine:PhysicsBody中的Layer和Mask_第4张图片
    Godot Engine:PhysicsBody中的Layer和Mask_第5张图片
    修改后
    Godot Engine:PhysicsBody中的Layer和Mask_第6张图片

设置方法解释完毕,那么LayerMask到底是干嘛的呢

作用

LayerMask实际上就是PhysicsBody的分组,可以对碰撞检测进行过滤

  • Layer是当前这个PhysicsBody所属组,一个PhysicsBody可以属于0至多个(注意,不属于任何组也是可以的)
  • Mask是当前这个PhysicsBody目标组,即要进行碰撞检测的组,也可以设置0至多个

于是对于A和B两个PhysicsBody就会有如下可能

是否发生碰撞
AB的目标,B也A的目标
AB的目标,B不是A的目标
A不是B的目标,BA的目标
A不是B的目标,B也不是A的目标

你可能感兴趣的:(Godot笔记,#,Godot,基础)