许可优化
产品
解决方案
服务支持
关于
软件库
当前位置:服务支持 >  软件文章 >  [Unity3D]AI智能寻路精讲/敌人自动避障寻路

[Unity3D]AI智能寻路精讲/敌人自动避障寻路

阅读数 4
点赞 0
article_banner

[Unity3D]AI智能寻路精讲/敌人自动避障寻路

在很多游戏中,敌人经常要在复杂的地形中追着主角跑,因为场景中存在很多障碍物,所以敌人的AI要足够聪明,才能找出到达目标点的最近道路,且绕开障碍物。写一个完善的寻路算法是比较有挑战性的,特别是在复杂的3D场景中,好在Unity提供了一个非常实用的寻路功能,只需要较少的代码即可实现复杂的寻路功能。

下面我将给大家介绍如何去具体实现这个功能:

Unity的寻路系统分为两部分:
(1)一部分是对场景进行设置, 使其满足寻路算法的需求;
(2)设置寻路者。

1. 步骤一
选择除敌人和Player以外的所有场景模型,然后单击Inspcetor窗口Static 旁边的小三角形按钮显示出下拉列表,确认[Navigton Satic]被选中,Unity 将指导这样的模型用于寻路计算,如图1-1所示。
在这里插入图片描述
[图1-1] 注:Cube(3)在这里面是敌人模型,所以没有选上

2.步骤二
菜单栏中选择[ Window] -> [Navigation],打开Navigation窗口,如图2-1所示。
在这里插入图片描述
[图2-1] 注:在这里我们可以看见整个地形,除了障碍都被覆盖上了颜色,这里就是Unity帮我们计算地形上的障碍,来指导敌人模型用来自动寻路,如果场景里存在有没有勾选[Navigton Satic]的模型,即使它在场景里面,Unity也会默认他不在场景中来对人物进行自动寻路,下面画两张图给大家解释:

1.场景里面所有场景模型都勾选了[Navigton Satic],敌人将按照Unity对勾选[Navigton Satic]的场景模型进行计算,寻找最短路线:
在这里插入图片描述

2.场景里面有部分模型没有勾选[Navigton Satic],Unity就会默认这个位置不会存在场景模型,然后按照不存在这个模型来计算最短距离,(蓝色部分的场景模型就是没有勾选[[Navigton Satic],Unity在计算最短路线时就会默认他们不存在)
在这里插入图片描述
这也就解释了为什么有的同学在更新一下场景模型后,AI自动寻路就不灵了,出现了卡墙等情况,原因大多是更新场景后没有对场景进行重新烘焙,所以在每次更新场景后都要重新做一下步骤一和步骤二,不然就会出现上述情况


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空