【问题标题】:Reproducing Hololens Gesture tutorial with HoloToolkit使用 HoloToolkit 重现 Hololens 手势教程
【发布时间】:2017-04-30 05:11:10
【问题描述】:

不确定这是否最适合这里或 Unity 或 MS 论坛,但我们会尝试 StackOverflow。

我一直在尝试使用 HoloToolkit 重现 Hololens tutorial 211。我只是在尝试执行第 1 部分,并重现手部识别。

在这种情况下,我使用了 HoloToolkit 中与教程中的文件共享名称的所有文件 - 除了 Singleton,它在两种情况下的工作方式似乎不同。对于教程中不在工具包中的任何文件,我将它们复制了过来。

虽然 HandsManager 被触发,private void InteractionManager_SourceDetected(InteractionSourceState hand) 被调用并将 handsDetected 设置为 true,handDetectedGameObject 设置为活动,但光标似乎没有任何变化。我不确定除了我写的内容之外,哪些信息对重现这个有用(我认为在 SO 上删除这么多文件是没有意义的),但是有人知道为什么会这样吗?我正在使用相同的 CursorFeedback 脚本,并将 HandDetectedFeedback 预制件附加为其 HandDetected 资产,使用带有 Billboard.cs 组件的自制预制件作为反馈父级。

如果这里有更多有用的信息,请告诉我,我可以提供。

【问题讨论】:

    标签: c# unity3d hololens


    【解决方案1】:

    我已经很久没有看教程了,但上次我看的时候它们已经过时了。自工具包编写以来,从工具包获取输入发生了巨大变化。

    您需要从 Toolkit 中将 InputManager 组件添加到您的场景中。然后创建一个脚本并将其添加到实现接口 ISourceState 并实现“OnSourceDetected”和“OnSourceLost”的场景中,当检测到手和丢失手时触发。

    有关更多详细信息,您可以参考 HoloToolkit 中的文档:

    https://github.com/Microsoft/HoloToolkit-Unity/blob/master/Assets/HoloToolkit/Input/README.md

    或查看我网站上最新的更完整教程。这部分教程具体实现手和点击识别:

    http://www.cameronvetter.com/2017/01/03/hololens-tutorial-finalize-spatial-understanding/

    【讨论】:

    • 感谢您的回复。我认为教程实际上已经在上个月左右更新,当时 Windows 10 Creators 发布。不过,我会检查你的教程。除此之外:a)您是说 ISourceStateHandler 吗? b) 我目前只使用 InteractionManager 的 onSourceDetected。这不是一种有效的做事方式吗?我注意到它无法从 InputManager 中检测到“虚拟”手 c) 我发现我能够使用我的方法检测到 Hololens 中的手 - 但不要设置我的预制件来替换光标。这感觉很神秘。你知道为什么我的没有改变吗?
    • 为了简化问题 b:为什么我不能将 InteractionManager 与 InputManager 的模拟手一起使用?
    • 我现在可以回答C了。无论出于何种原因,新的 Cursor 预制件在启动时禁用所有子对象,将它们的活动状态设置为 false。我必须手动再次激活我的广告牌才能让它出现。教程光标中不存在此行为。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-05
    • 2017-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    相关资源
    最近更新 更多