Example #1
0
        /// <summary>
        /// Deserializes a whole tree.
        /// </summary>
        /// <remarks>
        /// On first call, it deserializes serialized data and caches it for later usage.
        /// </remarks>
        private void Deserialize()
        {
            if (m_treeBuilder == null)
            {
                BehaviorTreeDebug.Log("Start deserializing a tree builder");

                m_treeBuilder = new TreeBuilder();
                Deserialize(m_RootNode);

                BehaviorTreeDebug.Log("Finish deserializing a tree builder");
            }
        }
Example #2
0
        public override TreeRoot CreateTree(Blackboard blackboard)
        {
            Profiler.BeginSample("SerializedBehaviorTree.CreateTree(Blackboard)");
            Profiler.BeginSample(name);

            Deserialize();

            BehaviorTreeDebug.Log($"Start creating a behavior tree {name}");

            TreeRoot treeRoot = m_treeBuilder.Build(blackboard);

            BehaviorTreeDebug.Log($"Finish creating a behavior tree {name}");

            Profiler.EndSample();
            Profiler.EndSample();

            return(treeRoot);
        }