Hello everyone!
I started studying BevahiorTrees and BlackBoards, and I can’t wrap my head around something.
Are they mandatory? Can’t I do the same things with code inside the AIController?
I recognize that for most people BehaviorTrees may feel and look more intuitive, but having been a programmer for long, I feel more confident and see more clarity using the code directly.
Are there any particular disadvantages in writing the AI logic directly in C++? Does BehaviorTree have any optimization/advantage?
Why would they be mandatory Behavior trees are easy to understand and follow and are quick to prototype as you do it inside of blueprint like UI, you can think of it as a pretty FSM. That being said you will generally have more control and performance (as BT’s have an effective limit on number of AI’s that can run as far as I remember) by doing the AI logic in C++, but it all depends on how complex you want the AI to be, how many concurrent AI’s running there should be, and if you’ll have non-programmers working on that AI.