UGUI区分UI与3d响应

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

public class TouchRayTest : MonoBehaviour {
public EventSystem eventSystem;
public GraphicRaycaster graphicRaycaster;

// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {
if (CheckGuiRaycastObjects())
{
Debug.Log("on");
}
else {
Debug.Log("off");
}
}

bool CheckGuiRaycastObjects()
{
PointerEventData eventData = new PointerEventData(eventSystem);
eventData.pressPosition = Input.mousePosition;
eventData.position = Input.mousePosition;

List<RaycastResult> list = new List<RaycastResult>();
graphicRaycaster.Raycast(eventData, list);
//Debug.Log(list.Count);
return list.Count > 0;
}
}

posted @ 2015-09-09 16:44  小歪歪Frank  阅读(255)  评论(0)    收藏  举报