当鼠标进入 碰撞器 时调用。
当鼠标停留在物体上时,相应的 OnMouseOver 函数被调用,当鼠标移开时,OnMouseExit 被调用。
// Change the mesh color in response to mouse actions.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Renderer rend;
void Start() { rend = GetComponent<Renderer>(); }
// The mesh goes red when the mouse is over it... void OnMouseEnter() { rend.material.color = Color.red; }
// ...the red fades out to cyan as the mouse is held over... void OnMouseOver() { rend.material.color -= new Color(0.1F, 0, 0) * Time.deltaTime; }
// ...and the mesh finally turns white when the mouse moves away. void OnMouseExit() { rend.material.color = Color.white; } }
此函数不会在属于忽略射线层级对象的物体上调用。
当以下属性设置为 true 时,此函数会在标记为触发器的碰撞器和 2D 碰撞器上调用
- 对于 3D 物理:Physics.queriesHitTriggers
- 对于 2D 物理:Physics2D.queriesHitTriggers
OnMouseEnter 可以是协程,只需在函数中使用 yield 语句。此事件会发送到附加到 碰撞器 的所有脚本。
其他资源:OnMouseOver、OnMouseExit。