【腾讯开源】behaviac行为树解决方案

behaviac是腾讯对行为树(Behavior Tree)的一个实现方案。该方案包括编辑器(Designer)和运行时库(Runtime)

behaviac是腾讯对行为树(Behavior Tree)的一个实现方案。该方案包括编辑器(Designer)和运行时库(Runtime):编辑器用来编辑和调试行为树,运行时库用来解释和执行编辑器生成的行为树。该项目目前已经开源,项目源码地址: git

behaviac组件支持全平台,包括Windows/Linux/Android/iOS等,并对Unity引擎有C#的原生支持。该组件的主要特点是编辑器和运行时的交互是基于元信息的,包括类的属性和方法等,这提供了极大的灵活性。此外,经过GUI统一管理的有名字的变量par,外部系统能够和行为树交换信息,这使得整个系统有了动态的能力。该组件的使用场景,支持但不限于游戏中的逻辑、角色的人工智能、动画的控制等方面。 github

主要特性: 编辑器

  1. 编辑器和运行时的交互基于元信息,这提供了极大的灵活性。
  2. 经过GUI统一管理的有名字的变量par,外部系统能够和行为树交换信息。
  3. 当游戏执行时,可随时链接编辑器,行为树的执行路径被高亮更新,属性和par的值能够被监控和修改,任何节点均可以方便灵活的设置断点。
  4. 支持多种文件格式的导出,包括XML/BSON/C++/C#等,方便开发过程当中的调试,以及提升发布版本的效率。
  5. 概述文档、使用手册、深刻解析、效率分析等相关文档齐全,便于用户入门及深刻了解系统的工做机理。
  6. 编辑器功能齐全、易用,支持撤销/重作、预置、子树、事件等。
更多腾讯公司开源项目,可见这里: https://code.csdn.net/Tencent