我正在尝试将一个项目从 Google Cardboard SDK 转移到 Daydream SDK。我正在使用最新的 GVR SDK。在我的场景中, Canvas 上有几个按钮,这些按钮会在悬停时改变事件颜色。它与 Cardboard 十字线配合使用时运行良好,但当我使用 Daydream Controller 时,它有时能够与按钮交互。其余时间它只是表现得好像按钮不存在并且将鼠标悬停在按钮上时不采取任何操作。我想补充一点,同一个 Controller 在同一个应用程序中与对象点击交互时工作正常。
问题出现在 Canvas 中的按钮上。我尝试在按钮上使用不同类型的渲染器和碰撞器组件。
最佳答案
页面上的“用户交互”部分 https://developers.google.com/vr/unity/guide解释了如何在最新的 GVR Unity SDK 中设置事件系统。
我最好的猜测是您需要将 GraphicRaycaster 切换为 GvrPointerGraphicRaycaster,因为它们是在添加 Daydream 支持后才添加到 SDK 中的。但是,如果没有有关场景设置方式的更多信息,我不能肯定地说。您是否在日志中看到任何警告或错误?
此外,最新的 GVR Unity SDK 有一个名为 ScrollingUIDemo 的示例场景,其中包括与 Canvas 上的按钮的交互。查看该场景可能会帮助您确定不同之处。
希望对您有所帮助!如果您提供有关如何构建场景的更多信息,我可以尝试进一步提供帮助。
关于unity3d - Daydream Controller 无法与 Canvas 按钮正确交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43284852/