【问题标题】:How to InputClickEvent with MRTK v2 C#如何使用 MRTK v2 C# 输入点击事件
【发布时间】:2019-04-27 03:30:05
【问题描述】:

我的项目中有HoloToolkit-Unity-2017.4.3.0-Refresh,但内置脚本中的一些已过时。我解决了这个问题,最近添加了一个 OnInputClicked 方法,但是在尝试构建它时,其他脚本中有很多错误,我改为 MRTK v2。

我环顾四周,但似乎在任何 MRTK v2s 文档中都找不到任何关于如何为 HoloLens 设备制作点击事件的教程。 IInputHandler 不再在 MRTK 中,但 IMixedRealityInputHandler 的工作方式是否相同?

下面的代码是使用 HoloToolkit 时 clickEvent 的样子。 MRTK v2 还是一样吗?

public void OnInputClicked(InputEventData eventData)
{ 
   ...
}

这也足以触发其他方法还是我必须在void Update()-ish 中添加点击事件?另一个也是 - 这足以通过 hololens 触发点击事件吗?

谢谢!

【问题讨论】:

    标签: unity3d mrtk


    【解决方案1】:

    我查看了它,显然它已将 (?) 更改为

    public class NewBehaviourScript : MonoBehaviour, IMixedRealityInputHandler
    {
        public void OnInputUp(InputEventData eventData)
        {
    
        }
    
        public void OnInputDown(InputEventData eventData)
        {
    
        }
    }
    

    或者你可能更想要IMixedRealityPointerHandler

    public class NewBehaviourScript : MonoBehaviour, IMixedRealityPointerHandler
    {
        public void OnPointerUp(MixedRealityPointerEventData eventData)
        {
    
        }
    
        public void OnPointerDown(MixedRealityPointerEventData eventData)
        {
    
        }
    
        public void OnPointerClicked(MixedRealityPointerEventData eventData)
        {
    
        }
    }
    

    是的,afaik 应该足以调用这些方法(当然,它还需要在 GameObject 或其子对象上的某个位置使用 Collider)。

    Here 您可以找到有关 MRTK 2 中可用的输入以及如何设置它的完整概述。

    【讨论】:

    • 谢谢雨果!工具包一定有这么多问题而且文档不够。
    • 嘿,我正在尝试捕捉任何 Airtap。为什么?因为我想在我的空间地图进程运行时实例化和放置项目。但是有了这个接口,什么都不会发生。你知道解决方案吗?
    【解决方案2】:

    文档中有一个 HTK 到 MRTK 的移植指南:https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/HTKToMRTKPortingGuide.html#interface-and-event-mappings

    这包含一个接口映射表,它应该有助于将预制件和接口从 HTK 迁移到 MRTK v2。

    就这种特定情况而言,IMixedRealityPointerHandler 确实是您正在寻找的,如果您需要知道何时单击了特定按钮(分配给特定指针)。如果您只是想知道任何按钮何时被释放,IMixedRealityInputHandler 可能是您更好的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-03
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多