摘要:behaviac是腾讯对行为树(Behavior Tree)的一个实现方案。该方案包括编辑器(Designer)和运行时库(Runtime)
behaviac是腾讯对行为树(Behavior Tree)的一个实现方案。该方案包括编辑器(Designer)和运行时库(Runtime):编辑器用来编辑和调试行为树,运行时库用来解释和执行编辑器生成的行为树。该项目目前已经开源,项目源码地址:
behaviac组件支持全平台,包括Windows/Linux/Android/iOS等,并对Unity引擎有C#的原生支持。该组件的主要特色是编辑器和运行时的交互是基于元信息的,包括类的属性和方法等,这提供了极大的灵活性。此外,通过GUI统一管理的有名字的变量par,外部系统可以和行为树交换信息,这使得整个系统有了动态的能力。该组件的使用场景,支持但不限于游戏中的逻辑、角色的人工智能、动画的控制等方面。
主要特性:
- 编辑器和运行时的交互基于元信息,这提供了极大的灵活性。
- 通过GUI统一管理的有名字的变量par,外部系统可以和行为树交换信息。
- 当游戏执行时,可随时连接编辑器,行为树的执行路径被高亮更新,属性和par的值可以被监控和修改,任何节点都可以方便灵活的设置断点。
- 支持多种文件格式的导出,包括XML/BSON/C++/C#等,方便开发过程中的调试,以及提高发布版本的效率。
- 概述文档、使用手册、深入解析、效率分析等相关文档齐全,便于用户入门及深入了解系统的工作机理。
- 编辑器功能齐全、易用,支持撤销/重做、预置、子树、事件等。
更多腾讯公司开源项目,可见这里:https://code.csdn.net/Tencent