挖坑---敌人孵化后随机生成巡逻路径

最开始的时候用的是手动自己在地图上设置的路径点
开始做多个敌人的时候就发现:
固定的路线导致每个生成的敌人走的地方都一样
不然要手动设置多个路线
Idea:
敌人生成之后会有一个初始位置
在初始位置规划一个范围作为活动范围
活动范围内随机生成N个点作为路点
路点传到EnemyAi的巡逻路线
这个过程只执行一次
EnemyAI那边开放一个bool决定是用随机路点还是手动规划

1.先给场景加一个空物体命名:EnemySpawnManager
下边再挂几个空物体作为具体的孵化点命名:SpawnPos,每个孵化点下面再挂一个空物体命名RandomWayPointsContainer
在这里插入图片描述
随机路点上代码:在这里插入图片描述
爬过的坑:
1.路点随机出来只要取用X和Z的坐标,带Y轴的话AI是走不到目的地的,毕竟不会飞天遁地。。。
2.生成路点的脚本不能直接放到敌人预制件上,路点一直随父物体(敌人)移动—生成路点的脚本挂到孵化位置上

每个孵化位置下挂一个脚本:EnemySpawn
在这里插入图片描述
用于生成敌人和给敌人的巡逻路径赋值
那个随机产生路点的脚本挂载到RandomWayPointsContainer上面,赋值给敌人的就是这个。
EnemySpawnManager下挂载一个用于管理敌人生成的脚本
在这里插入图片描述
这里可以扩展管理敌人的孵化行为

关于这个随机路点,坑又lei了:
随机到的路点有时候在建筑物里面,AI永远走不到位置—以头抢墙。。。
Idea:
way1.随机的范围要去除建筑部分
way2.暂时办法:走不到就切换到下一个点呗
1.能想到的思路:在设定的随机范围内监测建筑的碰撞体,去掉不能走的部分范围(尚未实现)
2.代码逻辑:巡逻的时候开启协程,以一定的时间间隔不断记录AI的位置,如果两者之间的距离小于一定的数值就直接切换到下一个路点。运行起来,敌人的巡逻就看起来正常了。
关于路径随机还有好多东西要学,挖个坑,慢慢补吧。
欢迎各位大佬们的意见。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值