T.1:创建你的第一个行为树
本教程演示了如何在C++ 中创建自定义以ActionNodes及如何使用XML语言将它们组合成树。
T.2:使用端口参数化节点
树节点可以同时具有输入和输出端口。本教程演示了如何使用端口创建参数化节点。
T.3:通用和类型安全的端口
本教程是上一教程的扩展。
它展示了如何创建和使用 通用的和用户定义类型的端口。
T.4:Sequence和ReactiveSequence之间的区别
Reactive ControlNodes 是一个非常强大的创建复杂的行为的工具。
这个例子显示了Sequence和ReactiveSequence之间的区别。
T.5:如何重用整个子树
可重用性和可组合性可以在单个节点的层级上完成,也可以在整个树上完成,这些树可以成为“父”树的子树。
在本教程中,我们还将介绍内置的日志模块。
T.6:子树与其父级之间端口的重新映射
系统中的任何树/子树都有自己独立的黑板。
在本教程中,我们使用端口重新映射将概念或端口扩展到子树。
T.7:如何以非侵入性的方式包装遗留代码
本教程展示了将现有代码包装到BehavioTree.CPP
基础架构中的多种可能方法之一。
T.8:将参数传递给没有端口的节点
如果您的自定义 Node 有很多端口,则可能表明您不了解 Ports 应该解决的问题;)
在本教程中,我们将展示如何将参数传递给自定义 Node 类,而不会用无意义的输入端口污染您的接口。
T.9:协程的异步操作
协程是创建异步代码的强大工具。
在本教程中,我们将概述用 CoroActionNode 实现异步 Action 时要使用的典型设计模式