如何检测游戏对象是否超出重叠范围

本文关键字:是否 重叠 范围 对象 游戏 何检测 检测 | 更新日期: 2023-09-27 18:32:09

我正在制作一个范围来拍摄游戏对象。它检测游戏对象何时加入范围,但不检测游戏对象超出范围。如果可能的话,我想知道如何检测敌人是否超出范围。感谢您的任何帮助。

检测敌人的示例代码。

Collider[] hitNpcs = Physics.OverlapSphere(TowerPoint.transform.position, Range);
    for (int i = 0; i < hitNpcs.Length; i++)
    {
        if (hitNpcs[i].GetComponent<Npc>() != null)
        {
             hitNpcs[i].GetComponent<NpcHP>().dmg(Power);
             Debug.Log("Shoot");
             break;
        }
    }

如何检测游戏对象是否超出重叠范围

注意 :这假设您的 Npc 附加了一个RigidBody组件。

不要使用 Physics.OverlapShere ,在TowerPoint游戏对象上创建一个球形碰撞体,然后您可以使用 OnCollisionExit 方法来检测离开范围的 NPC。