A星寻路算法和Unity自带的寻路相比有什么优势

如题所述

并没一种寻路适合所有场合,选择都是基于需求而定的。

1. A* 算法与贪婪算法不一样,贪婪算法适合动态规划,寻找局部最优解,不保证最优解。
A*是静态网格中求解最短路最有效的方法。也是耗时的算法,不宜寻路频繁的场合。一般来说适合需求精确的场合。
与启发式的搜索一样,能够根据改变网格密度、网格耗散来进行调整精确度。
使用的地方:
a. 策略游戏的策略搜索
b. 方块格子游戏中的格子寻路

2. Unity 自带的导航网格系统
Unity 内置了NavMesh导航网格系统,一般来说导航网格算法大多是“拐角点算法”。
效率是比较高的,但是不保证最优解算法。
使用的地方:
a.游戏场景的怪物寻路
b.动态规避障碍
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-19
据风宇冲大神说,simple path也是一种基于A star算法的寻路系统,性能也非常不多,刚开始我不知道有unity自带寻路的时候,用的便是simple path,用法也很简易,效果也很棒。(当时我们要做路径动画,后来我发现itween path无法实现真正的匀速,于是开始用寻路插件simple path,移动时给人的感觉很舒适,唯一的缺陷是没有转向,不过这难不倒我们unity程序员,自己写个视角自动转向分分钟搞定。现在这套系统已经很完善了,如果将来需要爬坡,下楼这样的路径搜寻,我在去研究研究unity自带的那个吧。案例说 应该挺好用的,unity5里面依然在用,而且放在很显眼的地方。
相似回答