首页 文章

当鼠标超出UI时,如何使用点击来导航NavMesh导航? [重复]

提问于
浏览
1

这个问题在这里已有答案:

我正在创建一个基于回合的游戏,我允许用户使用左键单击导航整个场景 . 在屏幕的底部,我有一个能够保持技能的技能栏,然而,当我点击其中一个能力时,我的场景认为我正在尝试使用我的玩家进行导航 . 如何让我的GUI忽略光线投射,如果我的鼠标超出它,则阻止我的角色移动?我的场景设置如下:

Example of my Scene Setup

我在网上找到的一些答案说使用面板并将其“Raycast Target”复选框设置为false,如果我理解正确的话,应该停止通过该面板进行光线投射 . 但是,这并没有解决我的问题 .

这是我的场景视图:

The red circle is the issue

我希望能够在该红色圆圈内点击以命令攻击,但是,我的navMesh认为是时候导航了 . 任何意见是极大的赞赏 .

1 回答

  • 1

    从Game Dev的my answer开始就类似的问题:

    您有几个选项:当UI启动时,设置一些全局变量(例如,gamePaused),当为true时,您的游戏逻辑不会执行 . 这包括射击 . 询问事件系统:EventSystem.current.IsPointerOverGameObject()检查您的鼠标是否在屏幕的某个区域(例如,是否在UI上),如果在UI上,则不要触发 .

    第一个不适用于你,第二个可能是最好的,但第三个在某些情况下运行良好(当游戏区域或UI区域由单个矩形限制时) .

相关问题