Unity常用脚本功能持续更新

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;

public class HelpScript : MonoBehaviour
{
    #region 判断鼠标是否在UI上
    /// <summary>
    /// 判断鼠标是否在指定的Canvas上,若返回为flase,则不再,若返回为true,则在指定canvas的UI上,可多个Canvas同时判断
    /// </summary>
    /// <param name="GO_Canvas">用于指定的UI</param>
    /// <returns></returns>
    public static bool GetOverUI(GameObject GO_Canvas)
    {
        PointerEventData _PointerEventData = new PointerEventData(EventSystem.current);
        _PointerEventData.position = Input.mousePosition;
        GraphicRaycaster _GR = GO_Canvas.GetComponent<GraphicRaycaster>();
        List<RaycastResult> _Results = new List<RaycastResult>();
        _GR.Raycast(_PointerEventData, _Results);
        if (_Results.Count != 0)
        {
            return true;
        }
        return false;
    }
    #endregion
}//end Class

猜你喜欢

转载自blog.csdn.net/qq_34444468/article/details/113152299