UGUI的射线检测

1.UGUI的射线检测,检测到检测点UI下的所有UI物体。


Unity相关

2.使用该方法,需要用到的条件。
(1)Graphic Raycaster;
(2)Event System;
(3)GraphicRaycaster.Raycast(PointerEventData,List);
List results是检测到的结果。

    private List GraphicRaycaster(Vector2 pos)
    {
        if (BattleUIHotFixManager.Instance != null)
        {
            _mRaycaster = BattleUIHotFixManager.Instance.MRaycaster; //Graphic Raycaster
            _mEventSystem = BattleUIHotFixManager.Instance.MEventSystem;//EventSystem
        }
        var mPointerEventData = new PointerEventData(_mEventSystem);
        mPointerEventData.position = pos;
        List results = new List();
        
        _mRaycaster.Raycast(mPointerEventData, results);
        return results;
    }

你可能感兴趣的:(UGUI的射线检测)