22_ue4进阶末日生存游戏开发[EQS]

EQS:环境查询系统

功能:1.按照规则生成点 2.跟踪搜寻目标 3.过滤目标

打开编辑器偏好设置

 搜索eqs

 我们得打勾

有什么变化呢?

创建AI的时候,出现了一个eqs

 创建一个eps

进去之后,发现还是树形的。

我们创建这个节点,这个节点的意思是以使用者为圆心,在圆上创建几个点

 

 这些是比较重要的参数

 这样看挺抽象的,我们把这些进行可视化,需要新建一个蓝图

 重命名testpawn

我们把我们创建好的eqs拉进去

 

 把这个可视化蓝图拉到场景中

我们把僵尸与可视化蓝图重合,就能得到僵尸生成的点

 修改eqs参数,看效果

发现点变得稀疏了

 给eqs换个节点,看一下效果

 效果是散射状的

再换一个节点

 成了菊花类型的

 此外还还有网格形式的,等等,自己去尝试。

 除了生成点以外,还有搜寻功能节点。

 为了能搜寻主角,要在参数里设置主角的蓝图类

打上勾就是以半径范围内进行搜索,不打勾就是全图进行搜索。

 在场景中看一下效果

现在是这个样子

向主角移动可视化蓝图,发现主角亮了。 

------------------------------------------------------------------------------------------------------------------------

最后的过滤功能直接以这个项目为例: 

重命名eqs

先添加追踪节点

然后添加过滤

首先过滤是否可到达

 

 修改参数,只过滤,不用打分

再添加方向过滤

 

 设置只过滤不打分,过滤条件是最小值0.7,最大值1

模式由3d改成2d

添加障碍物过滤

 

这个勾要去掉,因为我们要过滤中间有格挡的。

这个eqs就可以代替昨天写的逻辑了。

在行为树里面删掉这个服务。

然后节点选择run eqs

选择我们刚刚创建的eqs

 

 随机找点的任务,我们也可以用eqs替代。

首先我们再新建一个,命名为FindRamPoint。

 调整参数,点不需要这么密

为了不让僵尸按照一个方向的点巡逻,我们要加入打分机制。

 越跟我们朝向不一样的点,我们打分越高。

还是使用dot来计算

 模式是只打分

模式改成2d

 方向越不一样,dot的值越小,得分越高。所以我们这样设置

 丢弃不可到达的点,再加一个过滤,参数不用改

 添加这个,来替换原来的task

 

 我们需要指定叶子节点的eqs,发现有两个可以指定的地方,一个是node,一个是eqs

 建议使用eqs,node是为了兼容老版本才保留的。

运行模式选择这个,因为我们希望僵尸每次在前百分之二十五最符合条件的点去随机选。

 设置要控制的值

 测试成功。

这是巡逻点的打分

 机器人每次更倾向于往这个方向移动,这样先得太死板。

我们希望机器人往自己的左后方,和右后方的百分之二十五的方向移动

我们可以添加过滤器。过滤掉自己后方的点。

首先设置成过滤加打分

 获得选点范围-0.8到1

 效果

现在休息的时间有点长了,我们让他休息3+-1.5s

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无情的阅读机器

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值