版本: Unity 6 (6000.0)
语言英语
  • C#

MonoBehaviour.OnMouseEnter()

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们不能接受所有提交的内容,但我们确实会阅读用户提出的每一个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

描述

当鼠标进入 碰撞器 时调用。

当鼠标停留在物体上时,相应的 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 语句。此事件会发送到附加到 碰撞器 的所有脚本。

其他资源:OnMouseOverOnMouseExit