一般在游戏中,人物放出大范围攻击技能的时候可以使用球形射线。例如:
void ExplosionDamage(Vector3 center, float radius) {
Collider[] hitColliders = Physics.OverlapSphere(center, radius);
int i = 0;
while (i < hitColliders.Length) {
//被扫到的碰撞体的行为,例如:
hitColliders[i].GetComponent<Renderer>().materal.color = Color.Red;
i++;
}
}
我们可以传入球形的中心点center,以及扫到的半径radius.