Reply To: Graph.SelfSerialize always serializes even when not required

NodeCanvas Forums Support Graph.SelfSerialize always serializes even when not required Reply To: Graph.SelfSerialize always serializes even when not required


Hi Gavalakis,

Thank you so much for your very detailed answer. I have to admit my wording may have caused confusion, when I said “Serialization” I was referring to Unity’s object serialization (updating the MonoBehaviour references) rather than the custom JSON serialization of Graphs.

On the code, I understood it’d be this part:
_serializedGraph = newSerialization;
_objectReferences = newReferences;

In any case, for us, this issue of the first element change between UnityObject “null” and object (null) was present in over 200 graphs.

Some background information:
– We’re using Unity2019.3.9f1, but we could reproduce with 2019.4 as well
– Most of our graphs came from version 2.x of NodeCanvas, after updating to 3.0.8 we started to notice that the editor was quite more unstable (things would not always serialize, cache errors in the console and often crashes because of corrupted memory). We didn’t report this as the issue since our investigation so far is not really conclusive (it could’ve been any other plugin).

After our small change to check equality:
– The editor so far is more stable, but we still cannot rule this as the main issue, since perhaps it was conflicting with other utilities present in our project
– None of the graphs seem to be displaying the difference in the first element anymore, so the editor was able to successfully save all of them

Unfortunately we also didn’t find any pattern in the graphs that were reproducing and we’re no longer experiencing it. I will make sure I come back here if we find any more information about this case.