2024-09-03 04:08:34
在本系列的第三部分,我们将深入探讨行为树的运行过程。首先,行为树的运行分为几个关键步骤:
行为树的运行可以通过两种方式启动:
理解流程时,想象一个抽象流程图,我们将讲解分为蓝色泳道(检查和加载)和红色泳道(初始化和执行)。
开始前,UBehaviorTreeComponent会对子树进行三项检查:
检查通过后,进入资源加载阶段,首先尝试从缓存获取数据,避免重复加载。
加载行为树资源,如果缓存中有匹配的模板,直接返回。否则,创建新模板并计算节点初始化信息,包括内存需求和执行顺序。
加载完成后,进一步在UBehaviorTreeComponent::PushInstance中初始化FBehaviorTreeInstance和FBehaviorTreeInstanceId,设置内存偏移,填充数组,然后将新实例入栈并标记为活跃。
最后,执行新树,从根节点的service开始,然后执行根节点,进入下一轮迭代。后续的节点执行细节将作为下一部分内容。