UE4简单的用行为树做的AI

感觉用行为树做是不是要节省很多资源啊。用蓝图的时候。EventTick一放,电脑风扇立马就转起来了。

用行为树做一个在场景中漫游带有血条AI的几个步骤:

1.

了解Behave tree, Blackboard, Task

行为树是控制AI在不同环境中的不同行为。

Blackboard是为ai建立各种各样的条件。各种变量。

task是用来存储Ai的行为。相当于一个函数接口。


2. 首先导入AI的模型和动画.创将导入的动画贴图和骨骼分别放入新创建的animation和matierials和texture文件夹。以方便后面管理和修改。


3. 新建角色蓝图,行为树,blackboard,为AI添加task(右键查找BTTask_BlueprintBase)命名为Wander,添加Control(AIcontroll),添加naveigation 。


4. 打开角色蓝图添加模型,并改变碰撞体积。在右方细节菜单中搜索control选择自己刚刚命名的controll。


5. 在Blackboard里面添加变量,TargetPoint(vector),health(float)

UE4简单的用行为树做的AI_第1张图片

6. 设置任务,打开Wander这个task,思路是,先获取自己的位置,然后在范围内随机找点。

节点如下

UE4简单的用行为树做的AI_第2张图片

      新建一个变量命名为Destination(blackboardkey类型的

Event Receive Execise

Set Blackboard Value as Vector 

Get actor location

Get Random Point in navigation Radius

finish execise(结束找点非常重要,不然AI会一直找点,不会移动)

7. 在行为树中用Sequence连接Wander和Moveto

UE4简单的用行为树做的AI_第3张图片

8. 这些都设置好了之后AI就可以在场景中闲逛了.

Blackboard中的Service可以不用添加,如果只是闲逛的话。

如果添加就是判断AI是否存活,再决定是否执行各种Task

UE4简单的用行为树做的AI_第4张图片


9. 在AI的角色蓝图details中选择自己的animation。选择ThirdPersonAnimationBP









你可能感兴趣的:(虚幻引擎)