[Unity3D]A*算法、导航网格、路径点寻路对比(A-Star VS NavMesh VS WayPoint)
2014-08-11 13:59
417 查看
在Unity3d中,我们一般常用的寻路算法:
1.A*算法插件
与贪婪算法不一样,贪婪算法适合动态规划,寻找局部最优解,不保证最优解。A*是静态网格中求解最短路最有效的方法。也是耗时的算法,不宜寻路频繁的场合。一般来说适合需求精确的场合。
与启发式的搜索一样,能够根据改变网格密度、网格耗散来进行调整精确度。
使用较好的地方:
a.策略游戏的策略搜索
b.方块格子游戏中的格子寻路
2.U3D自带的导航网格系统
U3D内置了NavMesh导航网格系统,一般来说导航网格算法大多是“拐角点算法”,具体大家可以去查下。效率是比较高的,但是不保证最优解算法。
使用较好的地方:
a.游戏场景的怪物寻路
b.动态规避障碍
3.WayPoint寻路插件
速度最快,但相应来说表现也非常局限,它常常走“Z”型的轨迹,并不适合复杂场合的使用。例如它不能根据宽度、高度、路径点耗散等来改变行进路径。
使用较好的地方:
a.塔防怪物行进路径
b.AI巡逻路线
大概简单一说,其实大家心里都会有个底,什么情况用什么。并没有说一种寻路可以通吃所有场合或想适应所有场合。选择都是基于需求而定。
1.A*算法插件
与贪婪算法不一样,贪婪算法适合动态规划,寻找局部最优解,不保证最优解。A*是静态网格中求解最短路最有效的方法。也是耗时的算法,不宜寻路频繁的场合。一般来说适合需求精确的场合。
与启发式的搜索一样,能够根据改变网格密度、网格耗散来进行调整精确度。
使用较好的地方:
a.策略游戏的策略搜索
b.方块格子游戏中的格子寻路
2.U3D自带的导航网格系统
U3D内置了NavMesh导航网格系统,一般来说导航网格算法大多是“拐角点算法”,具体大家可以去查下。效率是比较高的,但是不保证最优解算法。
使用较好的地方:
a.游戏场景的怪物寻路
b.动态规避障碍
3.WayPoint寻路插件
速度最快,但相应来说表现也非常局限,它常常走“Z”型的轨迹,并不适合复杂场合的使用。例如它不能根据宽度、高度、路径点耗散等来改变行进路径。
使用较好的地方:
a.塔防怪物行进路径
b.AI巡逻路线
大概简单一说,其实大家心里都会有个底,什么情况用什么。并没有说一种寻路可以通吃所有场合或想适应所有场合。选择都是基于需求而定。
相关文章推荐
- [Unity3D]A*算法、导航网格、路径点寻路对比(A-Star VS NavMesh VS WayPoint)
- A*算法、导航网格、路径点寻路对比(A-Star VS NavMesh VS WayPoint)
- Unity3D-NavMesh导航网格寻路
- [Unity3d] [图文]【寻路】 Waypoint 与 NavMesh 比较(转)
- Unity3D 导航网格自动寻路(Navigation Mesh)
- Unity 用户手册用户指南导航网格 (Navmesh) 和寻路 (Pathfinding)
- 【Unity】unity3d NavMeshAgent 导航显示路径
- Unity3D - 导航网格自动寻路(Navigation Mesh)
- [原]Unity3D深入浅出 - 导航网格自动寻路(Navigation Mesh)
- Unity3D深入浅出 - 导航网格自动寻路(Navigation Mesh)
- [Unity3d] [图文]【寻路】 Waypoint 与 NavMesh 比较(转)
- [Unity3d] [图文]【寻路】 Waypoint 与 NavMesh 比较(转)
- Unity3D深入浅出 - 导航网格自动寻路(Navigation Mesh)
- Unity3D深入浅出 - 导航网格自动寻路(Navigation Mesh) - Tonge
- [Unity3d] [图文]【寻路】 Waypoint 与 NavMesh 比较(转)
- unity3d——自带寻路Navmesh (三)(转)
- 【Unity】12.2 导航网格寻路简单示例
- unity5之导航网格寻路系统-1Bake(烘培)
- unity3d中两种语言的对比JavaScript vs C#第一节
- UNITY3D自学(五)-- 导航寻路的学习