1 节点与黑板数据关联(共享变量)

1.1 首先要在黑板新建一个数据变量,比如Bool变量 命名 isAttack

游戏AI之行为树的入门使用(二)

1.2 然后在节点里面申明一个共享该Bool的变量,格式为在普通的类型前加Shader,比如 ShaderBool[编辑]

游戏AI之行为树的入门使用(二)

1.3 最后在编辑器节点上 关联黑板上的数据,这样认为节点关联的数据都是用黑板的同一来源

游戏AI之行为树的入门使用(二)

1.4 在代码中通过 该变量的 属性Value 来获取该Bool值   

游戏AI之行为树的入门使用(二)

2 行为树黑板数据与行为树外部关联[编辑]

原则上行为树外部无法访问行为树节点的数据,只能通过中间黑板来达到数据的交互。外部可以获取到行为树的实例来访问GET与SET黑板数据

游戏AI之行为树的入门使用(二)

3 行为树节点之间的关联

在行为树节点之间 除了通过行为树搭建树的形式关联,还可以通过引用与行为树内部处理的事件关联。

3.1 首先是节点引用,需要应用到另一个节点就定义一个该节点的变量,然后在编辑窗口关联即可,就可以访问关联节点的数据。

游戏AI之行为树的入门使用(二)

游戏AI之行为树的入门使用(二)

这样做的好处是,有些不能在黑板共享的变量,或者只是个别节点需要的变量,可以减少黑板的数据暴露。不写在同一个节点是为了节点的复用。

3.2 事件机制处理

在行为树插件Behavior Designer中 内置了一套事件处理机制,方便很多不必要的关联来调用节点的方法。

通过RegisterEvent方式注册与注销事件,其他节点调用完成

相关文章: