如何解决有没有办法在Unity中的“ OnPointerEnter”上获取“指针”?
我正在Unity中使用VR,试图让我的控制器在输入菜单图像时振动。我现在有一个测试脚本,试图查看是否可以获取进入图像的指针,因为我需要知道我的raycast来自哪个控制器,以便可以振动该控制器。
当前,这是我的测试代码,并且我已经查看了“ PointerEventData”的文档,但没有找到从那里获取指针的方法。该测试脚本位于图像游戏对象上。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class OnPointerEnterEvent : EventTrigger
{
public override void OnPointerEnter(PointerEventData data)
{
Debug.Log("OnPointerEnter called.");
}
}
这里我有什么想念的吗?或者这只是错误的处理方式?
解决方法
使用PointerEventData.pointerEnter,您将收到接收“ OnPointerEnter”事件的对象。该游戏对象应该是场景中的控制器。
,由于VR没有屏幕表面,也没有一个指针,因此该区域可能很棘手。我建议研究一下统一的XR框架/示例,其中有一对新的悬停输入/退出回调:
XRBaseControllerInteractor.OnHoverEnter(XRBaseInteractable) XRBaseControllerInteractor.OnHoverExit(XRBaseInteractable)
(其中basecontrollerinteractor通常是XRRayInteractor)
在测试了我可以使用的几乎所有vr框架之后,我发现这是处理这些事件的最可靠方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。