Cheo
Active member
Hello, after toying a little bit with BD Pro this afternoon, I found a few issues which I show in this video :
In summary :
-The Save and Load feature doesn't work as expected, or at least not in the relevant demo scene. I get this error when pressing Load after Save :
-Connection lines disappear when maximizing a tree window or docking it somewhere else. When doing that at runtime, we get this error :
-The turret's health in the Entities section is too low, and we end up dying after just a second without even understanding what's going on. Might be a bit of a nitpick but I would recommend moving the Spawn button and entity count elsewhere so that it doesn't get hidden by the Stats screen, so that we can easily take a look at it while increasing the entity count.
-Lastly, just like for UCC I hope light baking can be included in the future.
That's all for now, so far despite these issues BD Pro is looking good and I look forward to make ambitious usage of it.
In summary :
-The Save and Load feature doesn't work as expected, or at least not in the relevant demo scene. I get this error when pressing Load after Save :
C#:
[Exception] NullReferenceException: Object reference not set to an instance of an object
Serialization.DeserializeFields() at <620570833a2a4ea8bc912f709a95d49a>:0
SaveManager.Load() at ./Packages/com.opsive.behaviordesigner/Runtime/Utility/SaveManager.cs:644
642: }
--> 644: var sharedVariableValue = saveData.Values[i].DeserializeFields(MemberVisibility.Public);
645: sharedVariables[i].SetValue(sharedVariableValue);
646: }
SaveManager.Load() at ./Packages/com.opsive.behaviordesigner/Runtime/Utility/SaveManager.cs:457
456: // Restore the Graph SharedVariables.
--> 457: if (Load(behaviorTree, behaviorTreeSaveData.GraphSharedVariables)) {
458: loadCount++;
459: }
BehaviorTree.Load() at ./Packages/com.opsive.behaviordesigner/Runtime/BehaviorTree.cs:1243
1241: OnWillLoad(this);
1242: }
-->1243: var success = SaveManager.Load(new BehaviorTree[] { this }, saveData, afterVariablesRestored);
1244: if (OnDidLoad != null) {
1245: OnDidLoad(this, success);
SaveLoadSceneManager.Load() at /Samples/Opsive Behavior Designer/2.0.2/Sample/Scripts/SceneManagers/SaveLoadSceneManager.cs:157
156: // Restore the values.
--> 157: m_BehaviorTree.Load(agentSaveData.BehaviorTreeSaveData, (BehaviorTree tree) =>
158: {
159: // Scene objects cannot be persisted to a file. Restore the scene values before the tasks are restored.
InvokableCall.Invoke() at <8e5a634840fd4c6b9a0a867163b727ec>:0
UnityEvent.Invoke() at <8e5a634840fd4c6b9a0a867163b727ec>:0
Button.Press() at ./Library/PackageCache/com.unity.ugui@03407c6d8751/Runtime/UGUI/UI/Core/Button.cs:70
69: UISystemProfilerApi.AddMarker("Button.onClick", this);
--> 70: m_OnClick.Invoke();
71: }
Button.OnPointerClick() at ./Library/PackageCache/com.unity.ugui@03407c6d8751/Runtime/UGUI/UI/Core/Button.cs:114
112: return;
--> 114: Press();
115: }
ExecuteEvents.Execute() at ./Library/PackageCache/com.unity.ugui@03407c6d8751/Runtime/UGUI/EventSystem/ExecuteEvents.cs:57
55: private static void Execute(IPointerClickHandler handler, BaseEventData eventData)
56: {
--> 57: handler.OnPointerClick(ValidateEventData<PointerEventData>(eventData));
58: }
ExecuteEvents.Execute[T]() at ./Library/PackageCache/com.unity.ugui@03407c6d8751/Runtime/UGUI/EventSystem/ExecuteEvents.cs:272
270: try
271: {
--> 272: functor(arg, eventData);
273: }
274: catch (Exception e)
EventSystem.Update() at ./Library/PackageCache/com.unity.ugui@03407c6d8751/Runtime/UGUI/EventSystem/EventSystem.cs:530
529: if (!changedModule && m_CurrentInputModule != null)
--> 530: m_CurrentInputModule.Process();
532: #if UNITY_EDITOR
-Connection lines disappear when maximizing a tree window or docking it somewhere else. When doing that at runtime, we get this error :
C#:
[Exception] InvalidCastException: Specified cast is not valid.
UnityObjectControl+<>c__DisplayClass2_0.<GetControl>b__1() at <94efb747d9fe446992c6de906e79d827>:0
BindingUpdater+Binding.Update() at <94efb747d9fe446992c6de906e79d827>:0
BindingUpdater.UpdateBindings() at <94efb747d9fe446992c6de906e79d827>:0
EditorApplication.Internal_CallUpdateFunctions() at <c80d599bb30f4b0bbd7509f2fe905e9b>:0
-The turret's health in the Entities section is too low, and we end up dying after just a second without even understanding what's going on. Might be a bit of a nitpick but I would recommend moving the Spawn button and entity count elsewhere so that it doesn't get hidden by the Stats screen, so that we can easily take a look at it while increasing the entity count.
-Lastly, just like for UCC I hope light baking can be included in the future.
That's all for now, so far despite these issues BD Pro is looking good and I look forward to make ambitious usage of it.