这个节点是一个异步节点,那么我们不能直接通过双击的方式定位到代码

通过提示文本寻找,为啥不通过节点名寻找,因为节点名定位性还是差点,可能有同名的

这个K2_Node节点本身很简单,它叫UK2Node_AIMoveTo继承UK2Node_BaseAsyncTask从而获得异步的能力,然后可以从构造器里面可以看到,我们需要的函数,它执行的是UAIBlueprintHelperLibrary::CreateMoveToProxyObject,就是这个函数才让我们的AI动起来的,这个节点只是一个异步节点的包装而已。

AIController->MoveTo函数

这个移动的重任又分给了PathFollowingComponent。而PathFollowingComponent组件从创建之后一直Tick的时候,就在不断地判断当前是什么状态,如果是移动,那么就更新路径点,如果是移动中,那么就移动。当执行了组件的RequestMove请求移动之后,状态就变为移动,从控制器那边拿到合适的导航网格的线路点,就可以一直移动,直到反馈给异步节点是否成功

UE5 AIMoveTo是怎么让AI移动的浅析 - 知乎 (zhihu.com)