Comments (5)
It will maybe cool to implement similiar solutions for BlackBoard from BehaviorTree.CPP as they are already more advanced in this question.
From their wiki: A Blackboard is a key/value storage shared by all the Nodes of a Tree.
It will be nice to share the blackboard on every node in the tree. Maybe simple pointer to the tree on every node is enough?
from braintree.
There is already a shared blackboard for each behaviour tree, which can be passed to every leaf.
But yes, I was thinking of something similar for the blackboard when it comes to being able to store any value and not only predefined ones.
from braintree.
How the blackboard is actually passed to every leaf? I see the pointer to blackboard on the Leaf Class but how would you normally do it? Is the tree somehow traversed and automatically passes some global blackboard? Or should I just pass on every leaf some instance of blackboard? How this passing does then work with the tree builders?
from braintree.
When you create the leaf you pass the blackboard which exists within the behaviour tree. But you are correct that the current implementation of the tree builder does not support this in an easy way which should be improved.
from braintree.
How about the code below?
I have also corrected the behavior of stateful composites.
from braintree.
Related Issues (20)
- Improve implementation from lessons learned
- c++98 version HOT 2
- Make library single header
- Change namespace from bt to BrainTree
- The README suggests shared_ptr handling, but classes work with raw pointers. HOT 1
- Hungry for a more complete and runnable example HOT 3
- Make repeating decorators repeat per frame/call instead of using while(1) HOT 1
- Improve composites HOT 2
- Add a more advanced example HOT 4
- GodotBrainTree HOT 1
- Improve use of smart pointers
- Missing forwarding for constructor args
- Succeeder and Failer nodes not managing RUNNING cases
- BehaviorTree constructor that can be passed a blackboard useful for sharing state between trees
- add Ptr type alias for most classes
- add helper MakeX functions for some classes
- Rename project to BrainTree HOT 2
- Use Builder pattern to construct behavior tree and initialize nodes with references HOT 1
- Document API using eg DocumentUp
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from braintree.