如何使用 MRTK 向 HoloLens 1 添加基本近距离交互?

How can I add basic near interaction to HoloLens 1 using MRTK?

可能与

有关

我想使用 HoloLens 1 设备来模拟 HoloLens 2 提供的基本近距交互。

具体来说,我该如何执行以下映射:

  1. 在 "Ready" 手势期间使用手的位置来控制 PokePointer?
  2. 在 "Tap-and-hold" 手势期间使用手的位置来控制 GrabPointer?

由于 HL1 不跟踪手的方向,我希望这些需要像手射线的例子一样进行估计。

我已经尝试根据上面的答案创建一个自定义指针,它适用于手部射线,但据我所知不适用于 poke/grab。

我还根据 上 WMR 控制器的示例创建了一个自定义戳指针,并以相同的方式将其分配给 GGV 控制器,但不知何故手似乎没有得到检测到 poke(或 grab),仅用于手射线。

(我正在使用 Grab 姿势,因为 HL1 在准备手势期间似乎 return 食指姿势,并且指针姿势似乎指的是 HL1 的凝视指针)

好的,

以防其他人试图在 HoloLens 1 上接近交互,这就是我最终实现它的方式:

  1. 创建自定义输入配置文件
  2. 基于PokePointer,为 HL1 的 GGV(注视-手势-语音)控制器,具有以下功能 修改:
    • 使用来自基础控制器组件的(抓握)位置而不是凝视位置。
    • 从位置计算旋转(在手部射线示例中使用头部位置进行插值)
    • updateEnabled 切换设置为不检查手动启用,因为 GGV 在就绪期间总是 returns false
    • 确保继承自 PokePointer(仅允许来自 PokePointer 或派生的近距离交互的事件处理程序需要 类)
  3. 创建一个使用自定义指针组件的自定义指针预制件。
  4. 更新指针部分以使用自定义指针
  5. 修改按钮 只需要靠近,不需要从前面推动 因为 HoloLens 1
  6. 上的推送方向不是 working/unreliable