灵感来源于:https://forum.cocos.org/t/creator-3d-unity-creator3d-3d/85621,感谢分享。
修改后只需要一个ts文件放到任意精灵下,即可实现通过精灵的animation动画导航寻路。




总结:1,原方法内存中只存在一份路径,但使用起来稍复杂。
2,改成一个组件后,拖拽或动态添加到一个精灵上,调用initNavagent传入路径点和速度即可开始移动,修改isMoving随时可暂停和继续。
3,虽然多个精灵会存在多个路径,计算量增加,但是可以在游戏中显示出每个精灵不同的路径,移动完成后路径绿点消失。
贝塞尔曲线(如下是二阶):

简而言之就是ABC三个点在各自的线段上以相同的比例移动,
P0A / P0P1 = AC / AB = P1B / P1P2
C点从A移动到B的过程中形成的一组点,连接起来,就是一个由P0到P2,P1为拉扯点的一条平滑曲线,上面的等式转换后,我们平时直接用下面的公式就可以通过起点P0,终点P2,拉扯点P1,得到一组曲线点C。










