位置: 编程技术 - 正文
推荐整理分享Unity中自动寻路的几种方法(三)(unity自动寻路插件),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity自动寻路怎么做,unity寻路算法有哪些,unity寻路算法有哪些,unity2d自动寻路,unity自动寻路插件,unity自动寻路插件,unity自动寻路躲避障碍,unity中自动寻路结束后跳转场景,内容如对您有帮助,希望把文章链接给更多的朋友!
现在的大部分mmo游戏都有了自动寻路功能。点击场景上的一个位置,角色就会自动寻路过去。中间可能会有很多的障碍物,角色会自动绕过障碍物,最终达到终点。使用Unity来开发手游,自动寻路可以有很多种实现方式。第一种比较传统的是使用A星寻路,它是一种比较传统的人工智能算法,在游戏开发中比较常用到。大部分的页游和端游都用到这种技术。在Unity游戏也可以用这种技术,Asset Store上面已经有相关的组件了,感兴趣的同学可以自己去了解。我在后面有机会再来详细介绍了。今天我们来学习Unity官方内置的寻路插件-Navmesh。由于内容比较多,我们将分几次来系统学习。今天先通过学习一个最简单的例子来入门。
实例我们要实现一个功能:点击场景中的一个位置,角色可以自动寻路过去。角色会绕过各种复杂的障碍,找到一条理论上”最短路径“。步骤1.创建地形2.添加角色3.创建多个障碍物,尽量摆的复杂一点,来检查Navmesh的可用性和效率。4.选中地形,在Navigation窗口中,设置Navigation Static5.依次选中障碍物,在avigation窗口中,设置Navigation Static7.Navigation窗口中,选择Bake(烘焙)界面,点击Bake按钮,进程场景烘焙,就可以烘焙出寻路网了8.为角色添加NavMeshAgent组件。Component->Navigation->Nav Mesh Agent9.为角色新增一个脚本PlayerController.cs,实现点击目标,自动寻路功能完成了,可以看看效果:相关知识1.角色身上的Nav Mesh Agent 组件Radius 半径: 代理的半径(仅用于寻路目的,可以跟实际对象的半径大小不一样,一般比实际对象的半径大)。Speed 速度: 代理可以周游世界,走向它的目的地的最大移动速度。Acceleration 加速度: 最大加速度。Angular Speed 角速度: 最高转速(度/秒)。Stopping distance 制动距离:制动距离。到目的地的距离小于这个,代理减速。Auto Traverse OffMesh Link 自动遍历OffMesh链接:自动移动并关闭OffMeshLinksAuto Repath 自动重新寻路:如果现有的部分已失效,获得新的路径。Height 高度:代理的高度(用于调试图形)。Base offset 基本偏移:碰撞几何体相对于实际几何体垂直的偏移。Obstacle Avoidance Type 障碍躲避类型 :躲避的质量水平。NavMesh Walkable 导航网行走:指定代理可以遍历的导航网层类型。这个参数很有用,在接下来的实例中可以用到。2.障碍物一定要有Mesh Render,用于烘焙寻路网。
总结这个实例可以很简单的让我们学会如何最基本的使用自动寻路组件Nav。但是,这个组件还提供了更加强大的功能,比如,起始点和目标点中间出现阻断了,怎么办?在下面的文章中,我们将会继续探寻其他强大的功能。源码
Texturepackage工具免费申请正版密钥 1、Texturepackage工具是一个非常强大的图片纹理打包工具,在游戏开发中使用它可以很方便的为你节省资源。网上也有破解版的,大家可以搜索Texturepackage
[置顶] 启动unity3d 提示“unity3d EditorWindow could not be loaded because the script is not found in the projec” 转载请注明出处:
Unity4.6 UGUI 图片打包设置(小图打包成图集 SpritePacker) 在学习UGUI的过程中,一直使用小图也就是散图,一个按钮一个图片,一个图标一个图片,这样每一个图片都有一个Drawcall。之前公司的游戏都是使用Unity
标签: unity自动寻路插件
本文链接地址:https://www.jiuchutong.com/biancheng/375749.html 转载请保留说明!友情链接: 武汉网站建设