Switch to JSON.NET for Unity
MystikalPooka opened this issue · 1 comments
Newtonsoft fails when compiling for IL2CPP in certain iOS builds. Swapping to JSON.,NET should be basically an in-place swap and should fix these issues outright.
Might also want to look into using a lighter-weight serialization option as most of the states from behaviors are now being stripped in favor of stateless streams. The only reason I had JSON.net is becasue default Unity serializer compeltely fails for trees with depth > 3, which is quite common with less simple behavior trees. We could explore other options to serialize the trees.
Another discussion to have is whether or not to stay with the current Asset database system (using a scriptableObject). If we do not use the scriptableObject it opens up infinite possibilities for storage solutions for these trees, but it makes it slightly harder to integrate into the editor inspectors and can make compiles between editor refreshes take much longer...