常用三种范围检测——盒状、球形、胶囊体
1、盒状
//盒状范围检测
Collider[] colliders = Physics.OverlapBox(Vector3.zero, //检测盒的中心点
Vector3.one, //盒体的长宽高
Quaternion.AngleAxis(45, Vector3.up),//盒体的旋转
1 << LayerMask.NameToLayer("UI"),//检测层
QueryTriggerInteraction.UseGlobal);//是否忽略触发器,几乎不改
for (int i = 0; i < colliders.Length; i++)
{
print(colliders[i].gameObject.name);
}
2、球
//球中心点 半径
Collider[] colliders1 = Physics.OverlapSphere(this.transform.position, 10);
for (int i = 0; i < colliders1.Length; i++)
{
print(colliders1[i].gameObject.name);
}
3、胶囊
Collider[] colliders3 = Physics.OverlapCapsule(this.transform.position,//第一个半圆的圆心
this.transform.position + this.transform.forward * 5, //第二个圆心
0.5f);//半径