用behaviac框架开发行为树 — unity篇

一、介绍

Behaviac官网:

behaviac – Tencent behaviac, Game AI, Behavior Tree, Finite State Machine, Hierarchical Task Network, BT FSM HTN, 腾讯开源, 游戏AI, 行为树,有限状态机,分层任务网络用behaviac框架开发行为树 — unity篇https://www.behaviac.com/

        behaviac是游戏AI的开发框架组件,也是游戏原型的快速设计工具。支持全平台,适用于客户端和服务器,助力游戏快速迭代开发 。

        编辑器可以运行在PC上,操作方便直观可靠,支持实时和离线调试;编辑器可以导出xml,bson等多种格式,更可以导出C++、C#源码,提供最高效率。

        运行时支持全平台,有C++和C#两个版本,原生支持Unity。

        已被多款知名游戏及更多其他预研项目使用。

        所有代码,包括编辑器和运行时全部开源:GitHub - Tencent/behaviac: behaviac is a framework of the game AI development, and it also can be used as a rapid game prototype design tool. behaviac supports the behavior tree, finite state machine and hierarchical task network(BT, FSM, HTN)用behaviac框架开发行为树 — unity篇https://github.com/Tencent/behaviac

        Behaviac框架不仅支持行为树BT,还支持有限状态机FSM、和另外一个设计模式 — HTN (Hierarchical Task Network 分层任务网络)等。

二、开发框架

用behaviac框架开发行为树 — unity篇

三、示例 —— 卡丁车

需求:需要设计一个卡丁车, 遇到弯道就漂移,直道就一直直行。

第一步:打开BehaviacDesigner编辑器。

用behaviac框架开发行为树 — unity篇

第二步:新建工作区。

用behaviac框架开发行为树 — unity篇

第三步:新建Agent实例—player,声明method,生成声明代码。

(智能体(Agent):意思是一个被AI操控的对象物体)

用behaviac框架开发行为树 — unity篇

 

 第四步:新建行为树,拖拽节点,赋值对应method。

用behaviac框架开发行为树 — unity篇

 第五步:行为树xml、cs代码导出。

用behaviac框架开发行为树 — unity篇

第六步:实现cs代码中已声明的method。

注意:自己的代码需要添加在“///<<< BEGIN WRITING YOUR CODE”和“///<<< END WRITING YOUR CODE”之间,以便编辑器下次生成代码的时候,可以自动合并手工添加的内容和生成的内容。

用behaviac框架开发行为树 — unity篇

第七步:挂载 player 脚本 到对应的GameObject 上。

用behaviac框架开发行为树 — unity篇

第八步: 运行,调试。 

运行效果如下:

<iframe allowfullscreen="true" data-mediaembed="bilibili" id="DALAtkuX-1642411331275" src="https://player.bilibili.com/player.html?aid=935747288"></iframe>

上一篇:持续集成及Jenkins介绍及gitlab安装


下一篇:unity Addressables[2]