Alternative to Blackboard #744
Replies: 2 comments
-
Blackboard is the only mechanism currently used for data flow. Why not using the blackboard and what would you do instead? About the additional arguments (tutorial 8?).... again, why and what do you suggest instead? Of course, you can skip the entire dataflow system in BT.CPP and do WHATEVER you want to pass data from one node to another, but then you are on your own (no official support). To summarize my answer: "I am confused" 😃 |
Beta Was this translation helpful? Give feedback.
-
There are ways to share data without requiring the use of the blackboard: one is the method you said you don't want to use, and one more manual. The first is "pass additional arguments for nodes" (tutorial 8) and is a fairly capable method. When creating builder functors and registering them with the You can also construct your trees directly in C++ by creating nodes and adding children to control/decorators by hand, bypassing the XML parsing and factory and builder functors entirely. This is commonly done in unit tests, and allows you to arbitrarily connect objects between specific instances of a node in the tree. Downsides of this approach include the requirement to rebuild your binaries every time you want to change the tree structure. It can also get a little messy and difficult to maintain given the mutable way BehaviorTree.CPP constructs parent-child relationships (with the |
Beta Was this translation helpful? Give feedback.
-
Hi @facontidavide
Is there an alternative way to Blackboards, in sharing variables between multiple subTrees ? also I don't want to use "Pass additional arguments for nodes".
Beta Was this translation helpful? Give feedback.
All reactions