Unity跟鼠标相关的事件函数onMouseXXX

跟鼠标相关的事件函数onMouseXXX

对于Unity3d游戏开发,在unity的API中有许多事件函数,为了给让后面的功能开发更为便捷,这章主要介绍一些鼠标相关的事件函数。这里不做细讲,会使用就行。

onMouseXXX

注意:当脚本上编写了该事件函数,并且脚本挂载到一个物体上(这个物体必须要有collider,或者是在GUI元素上),当鼠标点击该物体的时候才会触发。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class test : MonoBehaviour
{
    
    
    //当鼠标点击的时候就会触发该事件函数。
    private void OnMouseDown()
    {
    
    
        Debug.Log("当鼠标点击才会触发该事件函数")}
	
	private void OnMouseUp()
    {
    
    
        Debug.Log("当鼠标点击后抬起的时候(瞬间),才会触发该事件函数");
    }
    private void OnMouseDrag()
    {
    
    
        Debug.Log("当鼠标按下的过程当中拖拽才会触发该事件函数");
    }

    private void OnMouseEnter()
    {
    
    
        Debug.Log("当鼠标移动到该物体上的时候(瞬间),才会触发该事件函数");
    }

    private void OnMouseExit()
    {
    
    
        Debug.Log("当鼠标移出该物体的时候(瞬间),才会触发该事件函数");
    }

    private void OnMouseOver()
    {
    
    
        Debug.Log("当鼠标在物体上的时候,才会触发该事件函数");
    }
    //OnMouseEnter与OnMouseOver的区别就是前者是移到物体的一瞬间触发一次,后者只要在该物体上就会触发。

    //鼠标只有在点击和抬起都在一个物体上,该事件函数才会触发,并且是在抬起的那一刻触发
    //当鼠标点击该物体,但是在物体之外抬起,该事件函数是不会触发的,(在UGUI按钮方面使用较多)
    private void OnMouseUpAsButton()
    {
    
    
        Debug.Log("OnMouseUpAsButton()事件函数");
    }
}

这章就介绍这么多,有兴趣的可以深入了解。(小知识:在游戏开发过程在中需要编写许多脚本,有些脚本可以不需要Start()和Update()方法,那么可以删去,因为留着也会有一部分性能开销)

猜你喜欢

转载自blog.csdn.net/m0_52068514/article/details/122340085