【发布时间】:2017-07-31 12:54:00
【问题描述】:
我正在使用播放器上的导航网格/代理作为辅助自动路径功能,除非用户单击地板上的某个点走向,否则该代理始终处于禁用状态。然后一旦到达目的地,代理将再次被禁用。
我需要一种方法来检查玩家当前是否在 navmesh 上,在可容忍的阈值内,而无需启用 navmeshagent。或者,如果有一种方法可以在不禁用它的情况下移除 navmeshagent 的播放器绑定“效果”,因为我也可以用它来解决我的问题。
我猜在伪代码中,这就是我想要完成的禁用 navmeshagent:
if (!agent.isOnNavMesh){ DisableClickSelection();}
我正在考虑比较玩家和导航网格的 Y 变换以获得高度差并使用它来确定玩家是否在导航网格上的可能性,但我不知道如何获取 Y导航网格在特定 X 和 Z 点的变换。也许我可以使用光线投射?我不确定最好的方法。就像我说的,如果有一种方法可以消除代理对玩家的玩家绑定“效果”,但保持代理启用,我也可以使用它。
【问题讨论】: