IsPointerOverGameObject 获取游戏对象
IsPointerOverGameObject get the gameobject
我想知道用户将鼠标指向哪个对象。
我发现我可以知道他何时指向一个(IsPointerOverGameObject),但我找不到获取该游戏对象的方法。
http://docs.unity3d.com/460/Documentation/ScriptReference/EventSystems.EventSystem.IsPointerOverGameObject.html
我真的必须手动对 UI 进行光线投射吗?
这就是你的做法,你发送一个光线投射。
if(Input.GetMouseButtonDown(0))
{
RaycastHit hit = new RaycastHit();
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if(Physics.Raycast(ray, out hit))
print(hit.collider.transform.gameObject.name);
}
我会使用事件触发器来检测与 UI 元素的交互(也许 Pointer Down 是您想要的?),而不是在这里搞乱光线投射。
我想知道用户将鼠标指向哪个对象。
我发现我可以知道他何时指向一个(IsPointerOverGameObject),但我找不到获取该游戏对象的方法。 http://docs.unity3d.com/460/Documentation/ScriptReference/EventSystems.EventSystem.IsPointerOverGameObject.html
我真的必须手动对 UI 进行光线投射吗?
这就是你的做法,你发送一个光线投射。
if(Input.GetMouseButtonDown(0))
{
RaycastHit hit = new RaycastHit();
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if(Physics.Raycast(ray, out hit))
print(hit.collider.transform.gameObject.name);
}
我会使用事件触发器来检测与 UI 元素的交互(也许 Pointer Down 是您想要的?),而不是在这里搞乱光线投射。