当使用NavMeshAgent自动寻路的时候,鼠标点击屏幕上的UI按钮,
UI按钮的事件 和 角色自动寻路到目的地 这两件事同时发生。
发生了UI穿透的事情,是为什么。
因为在 鼠标点击目的地,角色自动寻路的Update函数里面
没有加上这句话
update()
{
...
if (EventSystem.current.IsPointerOverGameObject())//判断当前鼠标是否点击物体上
return;
...
//自动寻路的代码
...
}
参考资料:
2.
3.

本文探讨了在Unity中使用NavMeshAgent进行自动寻路时遇到的UI穿透问题。当玩家点击UI按钮的同时,角色开始自动寻路,这可能导致UI事件响应异常。文章提供了解决方案,即在Update函数中加入判断语句,检查鼠标是否位于UI元素上,从而避免UI穿透现象。
965

被折叠的 条评论
为什么被折叠?



