Unity3D刚体触发事件监测与处理(十三)

本节要点

#1.触发事件简介

1.触发器

将碰撞体组件属性面板上的“Is Trigger”选项选中,当前的游戏物体的碰撞体

就变成了触发器。

移动的刚体物体会穿透碰撞体勾选了“Is Trigger”的物体。

2.触发事件

当一个用刚体控制的物体进入到另外一个物体的触发器范围内,就是触发事件。

触发用途:不与目标物体发生直接的碰撞(接触),而是只要进入目标物体的“触

发范围”就能执行某些特定操作。

#2.触发事件监测方法

1.OnTriggerEnter(Collider)

当进入触发范围时开始时调用,只会调用该方法一次。

2.OnTriggerExit(Collider)

当离开触发范围时开始调用,只会调用该方法一次。

3.OnTriggerStay(Collider)

在触发范围内,会持续调用该方法。

4.Collider 参数

碰撞体,一个类。作用:用于传递触发信息。

Collider.gameObject 属性,进入触发范围内的目标物体的引用。

gameObject.name 属性,当前物体的名字。

场景视图

Unity3D刚体触发事件监测与处理(十三)_第1张图片

关键代码

public class TriggerCube : MonoBehaviour {


    //谁触发了我?

    //进入触发器范围内执行一次
    void OnTriggerEnter(Collider coll) {

        Debug.Log("Cube Enter"+coll.gameObject.name);
    }

    //离开触发器范围后执行一次
    void OnTriggerExit(Collider coll) {

        Debug.Log("Cube Exit"+coll.gameObject.name);
    }


    //进入触发器范围内持续发生的事件
    void OnTriggerStay(Collider coll) {

        Debug.Log("Cube Stay"+coll.gameObject.name);
    }


}

小结

Unity3D刚体触发事件监测与处理(十三)_第2张图片
自动门.gif
Unity3D刚体触发事件监测与处理(十三)_第3张图片
Unity API.png

你可能感兴趣的:(Unity3D刚体触发事件监测与处理(十三))