unity3d自动寻路插件

unity3d自动寻路插件

版本:大小:6.27M

类别: 其他文件 系统:WinAll, WinXP, Win7, Win8

立即下载
  • unity3d自动寻路插件 0

unity寻路插件在此大家准备的是Unity a*寻路插件,即为a pathfinding project pro.unitypackage是在unity游戏制作中经常使用到的自动寻路算法插件,实现了最短路径寻路效果,使得游戏角色能够快速的寻找到目标地点,增加的游戏角色的智能效果。快来绿色资源网下载unity寻路插件吧!

unity寻路插件使用说明

1. 场景准备

先建立一个scene

添加一个plane,让其坐标处于(0,0,0),并三方向scale都为10

添加一个新的layer,命名为Ground,并将上面建立的plane设置为Ground层

在plane上添加若干个box作为障碍物,添加一个新的layer,命名为Obstacles, 将这些box都归为这个Obstacles层

unity3d自动寻路插件

2.加入A*

创建一个空的GameObject,命名为A*, 从Components–>Pathfinding–>Pathfinder中添加插件脚本AstarPath。可以再AstarPath的观察器中看到它被分为几个部分,其中最重要的区域是Graphs区域和底部的Scan区域,Graphs区域保存了工程中所有的寻路图,最多可以有16个,但是一般1到2个已经足够了。有几类寻路图,其中最主要的有两种:Grid Pattern Graph和Navmesh Graph.

这次就先添加Grid graph.

就如名字所述一样,Grid graph会产生一系列的网格,大小为width * height,这个网格可以放在场景中的任何地方,也可以进行旋转。节点尺寸设置了节点所占空间的大小,在这里设置为1;右侧有一个5个点组成的小选取控制,选择左下角的那个点,将其坐标设置为(-50, 0.1, -50), 其中y方向设置为0.1是为了避免产生浮点错误,因为地面plane的y向坐标是0,如果导航网格也是y向为0的话,在进行高度检测的raycast的时候,会产生问题。

高度测试:

为了把寻路的node放置到场景中的正确位置,一般使用从node向下发射一个射线来进行检测,寻路node会被放置到碰撞点的位置。我们将mask设置为Ground,因为只希望寻路节点与Ground进行检测。

碰撞测试:

当寻路节点被放置之后,它就会被用来检测是否可行走,一般可以使用sphere,capsule或ray来进行碰撞检测。一般Capsule会使用和AI对象一样的半径和高度来进行碰撞。为了让AI对象和障碍物有一些边缘,这里将Capsule的半径设置为2.另外将碰撞检测的layer设置为Obstacles,因为不想让地面成为障碍。

好了,都准备好了,点击底部的Scan,我们就可以看到grid Graph的生成了,可以再编辑窗口中看到辅助线显示的寻路网格,包括了可寻路的区域和障碍区域。

3. 加入AI

以上是对场景寻路相关的基础设置,接下来要加入AI对象进行寻路。在场景里面添加一个Capsule,并给其添加一个Character Controller组件,从Components–>Pathfinding中添加Seeker脚本。Seeker脚本是一个帮助类的脚本,用来将其他脚本的寻路请求进行处理,它也可以处理Path modifier(一般是对寻路结果进行圆滑处理的脚本)。A* pathfinding project自带了两个AI脚本用于挂接到对象上进行寻路:AIPah可适用于任何类型的寻路图;而RichAI只适用于NavMesh类型。

unity寻路插件

查看全部

更新时间:2016-12-02
网友评论
我要跟贴
取消
猜你喜欢
  • unity插件

unity插件更多>>

unity插件大全介绍,在unity3d引擎游戏开发当中拥有各式各样的插件工具,帮助你实现各类动态游戏效果,游戏网格编辑,游戏效率增强效果,游戏人物制作等多种功能,让你在游戏开发的过程中比被人实现游戏效果的速度更快,如是十分常见的插件有itween移动插件,a*寻路算法插件以及ui界面编辑的ngui插件,正式通过了这一个又一个不断更新换代的编程插件才使得游戏开发更加的简单方便,能够更快的制作出优质游戏产品供玩家把玩,快来绿色资源网看看有哪些你所需要的插件工具吧!

同类推荐
热门精品
最新应用