当鼠标进入 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 的所有脚本。
另请参阅:OnMouseOver、OnMouseExit。