Complex AI Performance & Visual Programming with Fluid BT #58
Replies: 2 comments 2 replies
-
Thank you very much for the kind words ^_^ I'll try to address your questions as best I can below. Performance Unless you're going 300+ nested nodes deep I wouldn't really worry about this sorta thing. That said, I haven't written a performance test scene with an insane number of AIs. ScriptableObject(s) If you really wanted to, you could overhaul the architecture to eat SOs and generate a tree. You'd just need to crate a custom tree builder that runs on SOs. All the code is data driven architecture so anything is possible. I mostly created Fluid BT because I noticed solutions like Behavior Designer were struggling to scale with large projects. Specifically when having to edit a lot of logic to overhaul my AI systems. From my experience visual programming AI systems can start to break down in game dev when you need to do massive refactors on the code base. |
Beta Was this translation helpful? Give feedback.
-
300+ nodes deep? Oh I am not even near 30 haha. This is seriously amazing to know! Talking about scriptable objects, how would that work? I understand it's code-driven (I love that fact about this Btree) but scriptable objects are usually shared unless you create a runtime instance of it (which totally is not cool thing to do haha at least to me) |
Beta Was this translation helpful? Give feedback.
-
I just want to say, this is amazing behavior tree implementation! I am using it for small games now and it's working great.
Been finding a free tool like this from a long time - few are bloated and few are just lacking. This one is right on point. So, thank you!
I do have few questions, I am doing FSM mixed with BT and it's great. I want to ask about the performance in general and talking about scriptable objects implementation based on this.
Do we have a performance test on this with heavy AI?
Is it possible to turn little sequences and actions into separate scriptable objects? I am guessing the TaskStatus returns for each object and cannot be shared via scriptable object - so I am not really sure.
Beta Was this translation helpful? Give feedback.
All reactions