【发布时间】:2020-05-28 02:47:51
【问题描述】:
我使用 Holographic Remoting Player 将 unity uwp 程序投影到 HoloLens。在HoloLens上可以拿到unity图片,可以左右移动视野,但是unity发布程序中检测不到手势。
我的意思是在 release 中无法获取手势,但是在 unity 编辑器中使用内置连接器时可以获取手势。
gestureRecognizer = new GestureRecognizer();
gestureRecognizer.Tapped += RecognizerTapped;
gestureRecognizer.SetRecognizableGestures(GestureSettings.Tap | GestureSettings.DoubleTap | GestureSettings.Hold | GestureSettings.ManipulationTranslate);
gestureRecognizer.StartCapturingGestures();
InteractionManager.InteractionSourcePressed += InteractionSourcePressed;
void RecognizerTapped(TappedEventArgs args)
{
debugWindows .AddMessage ("tap "+args .tapCount);
}
void InteractionSourcePressed(InteractionSourcePressedEventArgs args)
{
debugWindows .AddMessage ("pressed");
}
这是我的测试代码。我的自定义连接器在unity docs 复制。
当我在任何地方(释放\编辑器)使用自定义连接器时,“按下”可以打印,但“点击”和任何手势识别器的委托都不能打印。
当我在编辑器中使用内置连接器时,“pressed”和“tap”都会被打印出来。
我在许多统一版本(2018.2、2018.4、2019.1-2019.3)上运行它,得到相同的结果。我是否缺少任何关键设置?
【问题讨论】:
-
是否有任何错误信息抛出?您能否按照此分步指南对 Unity 项目设置进行故障排除:docs.microsoft.com/en-us/windows/mixed-reality/…。或者下载最新的 MRTK2.3 和 Unity2018.4.22LTS 并创建另一个新的统一项目并开始使用此文档:microsoft.github.io/MixedRealityToolkit-Unity/Documentation/…。你看到同样的行为吗?如果 Unity 配置存在问题,这将有助于缩小范围。
-
没有任何错误,只是不工作。同一个项目在 hololens 上工作,但不适用于带有“全息远程播放器”的自定义连接器。我不认为它与 MRTK 有任何关系,因为我只使用低级 API。我认为这是一个统一错误或存在一些特殊设置错误。最后谢谢大家,我在unity论坛的帖子没有回复╮(╯_╰)╭
-
能否提供更多关于您如何使用手势识别器的信息,我们建议您提供一个 MVCE(stackoverflow.com/help/minimal-reproducible-example),以便我们找到问题或找到解决方案,尤其是我们想知道在哪里定义了gestureRecognizer。
-
@Hernando-MSFT 对不起,我迟到了。我在 github (github.com/tjsgtql/HolographicRemotingTest-Unity-19-3-14) 上创建了一个示例。那里有一些使用说明,如果您有任何问题,请提供。谢谢你的帮助
标签: unity3d gesture remoting hololens