U3D游戏开发练习归纳(AI导航)
*注:此文章为基于M_Studio《Unity3D游戏开发教程》练习笔记,勿喷;版本和视频有出入,故记录;
视频链接:
Unity3D版本:2021.2.3
1.AI地图导航烘焙
(1)窗口——AI——导航,打开AI导航窗口;
人物大小,宽度,可爬坡的角度
(2)选择地面对象,在检查器便签选择Navigation Static;
(3)这里询问是否把对象子对象也设置成Navigation Static,这里要选择否,因为我们要设置成树木石头是不可行走范围,地面是可行走范围;
(4)点开导航窗口——对象——下拉选择“Waalkable”,图1;
点开烘焙——可以先不调整数值直接点Bake,图2;
就会发现地图上有绿色的格子,这些绿色格子就是行走范围,图3;
调整图2的数值,可以调整坑洼山上的行走范围;
图2
图3
(3)接下来我们给树木,石头做不可行走范围;打开检查器,搜索对象“tree”,
或者石头之类的对象全选,图1;
在导航窗口勾选“Navigation Staic”,下拉选择“No Waalkable”,图2
然后在烘焙窗口,点击"bake“(如上一步);
你的树和石头就会空出来一块,这一块就是不可行走范围,图3;
http://pic2.zhim.com/v2-375d8b1a4fbb293e1d9a5d9317aa80cd_b.png
图1
图2
图3
(4)调整人物的碰撞体大小,选择人物——检查器——把Animator上的控制器为“无”,图1;
图1
添加"Nav Mesh Agent"组件,可以控制人物的碰撞体大小,图2;
图2
双击对象,拉近视角,可以发现有绿色的框,就是你模型的碰撞区域大小,图2;
图2
如图调整"Nav Mesh Agent"参数,调整到合适的大小,图3;
图3
把图3数值填入图4,按“Bake”,会发现行走范围会改变,是因为调整了合适碰撞体大小的行走范围;
图4
(完了)
页:
[1]