为了实现更复杂的碰撞需求,我们为用户提供了层级碰撞的功能。 可以设置某个图层组只和某些图层组发生碰撞。
当不发生碰撞时,刚体不会生效,对象会穿过物体,并且不会触发碰撞的条件。
上图中可以看到,横向和竖向都存在组1~组8的选项。 每一个选项代表了当前所在的组与某个组之间是否开启碰撞。
例如:下图框选的部分,代表组7会和组8和组7自身发生碰撞。
如果需要使用层级碰撞功能,需要先将图层组加入碰撞组中。
首先,选择一个场景的指定图层
在右侧属性栏中,选择【碰撞组】。(引擎提供了8组碰撞组,暂时不可新增或删除碰撞组)
选择完成后,在场景窗口,点击指定的场景。
右侧属性栏中,编辑该场景碰撞组的交互即可。
可以发现,如果是两个可以发生碰撞的碰撞组,两个加了刚体的物体进行移动时会碰撞在一起,无法穿过。
如果是不可以发生碰撞的碰撞组,两个物体就会穿过,不会发生碰撞。
需要注意,如果开启了层级碰撞,但是自身的碰撞没有开启,也无法与其他物体发生碰撞。
反之亦然,如果关闭了层级碰撞,但开启了自身的碰撞,也无法与其他物体发生碰撞。
也就是说,层级碰撞和自身碰撞必须都满足的情况下,才能正常的发生碰撞。