最近寻找合适的寻路算法。目前主流的有三种选择。
Unity自带的NavMesh。
优点:原生寻路,整合性好,基于多边形网格的寻路,更精确,适合制作人数不是很多,但需求精度高,功能庞大的动作类游戏。
缺点:慢,不适合做RTS,不能在运行时重新烘焙。
A Star Project寻路算法(正版100刀,祖国版五块钱,淘宝有卖)
一开始我也打算用这个,不过,看了一下网上的评价自己也简单体验了一下,功能强大没的说,但是的确易用性上不是很好。
在寻路算法上甚至优于Apex,但是学习曲线明显比Apex长,代码结构也没有Apex好,在单位很多的时候,负载均衡没有Apex强大
支持Runtime更新,但是更新的时候对帧率没有保障,对于需要频繁Runtime Bake的生存游戏,明显就不合适了。他似乎只能以网格为单位进行烘焙,但是没必要把所有的网格都重新烘焙一遍。
适合做RTS,MMORPG之类的游戏,当然动作游戏也OK.不适合做生存类游戏。
最后是Apex Path 寻路算法。
缺点:
(1)基于Grid的寻路算法,不像NavMesh那样有非常高的精度。不支持单Grid多层,多层的时候需要Portal(传送门,可以实现等价于Off mesh Link 的功能)
(2)贵:有三个插件 Apex Path基本包,95刀,还有两个DLC,啊,