Version: 2022.3

描述

当鼠标进入 Collider 时调用。

当鼠标停留在对象上时,调用相应的 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; } }

在属于 Ignore Raycast 层的对象上,不调用该函数。

This function is called on Colliders and 2D Colliders marked as trigger when the following properties are set to true:

- For 3D physics: Physics.queriesHitTriggers

- For 2D physics: Physics2D.queriesHitTriggers

OnMouseEnter 可以是协程,在函数中只是使用 yield 语句。 此事件将发送至附加到 Collider 的所有脚本。

另请参阅:OnMouseOverOnMouseExit