本文仅作学习笔记与交流,不作任何商业用途

本文包括但不限于unity官方手册,唐老狮,麦扣教程知识,引用会标记,如有不足还请斧正

1.范围检测介绍

unity提供了五种可行的范围检测,可以看这篇文章【Unity每日一记】关于五种Unity范围检测方法的总结_unity常用的攻击范围检测-CSDN博客

而物理系统下的Overlap比较好用:

下为官方手册:

Physics - Unity 脚本 API

2.常用API

盒状检测:一个瞬时检测!

五个参数如下:

重点说明一下第四个参数:

layerMask要填入:关于1的位运算,即左移n位二进制数,多个层级之间用“|”或运算,原理讲解出自唐老狮

这样做的目的是,可以用一串二进制数代表多个层级的选择

比如默认层级顺序如下,我想检测在TransparentFX与UI层级盒状范围碰撞

需要写的代码就是:

代表的二进制数为:0010 0010(注意,层级符号是从0开始的)

注意它的返回值是一个碰撞器数组,也就是在该范围内你可以得到所有对象的脚本或组件:

当然默认情况下该碰撞器是不可见的,你可以写如下代码画一个对应的框线来看到其位置

其他范围检测还请自行查看官方手册,不再赘述

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐