Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Obi 5.0 not usable on 2020.1.0a14
#3
(29-11-2019, 01:09 AM)ibbybn Wrote: Opening scene 'Assets/Obi/Samples/Cloth/CharacterCloth.unity'
Serialization depth limit 7 exceeded at 'Obi::ObiConstraints`1.actor'. There may be an object composition cycle in one or more of your serialized classes.

Serialization hierarchy:
8: Obi::ObiConstraints`1.actor
7: Obi::ObiConstraints`1.source
6: Obi::ObiConstraints`1.source
5: Obi::ObiConstraints`1.source
4: Obi::ObiConstraints`1.source
3: Obi::ObiConstraints`1.source
2: Obi::ObiConstraints`1.source
1: Obi::ObiConstraints`1.source

Reproduced. Seems like a bug in Unity's serialization system introduced in 2020, and a pretty serious one. "source" is a protected, generic variable, so it shouldn't be serialized. As far as I know, serialization does not support generics and moreover, only public fields (or those marked with the SerializeField attribute) are serialized. So I don't know why the heck is it complaining of a composition cycle (which I'm full aware is a big no-no because it causes an infinite recursive loop that they cap at a given depth), if the field is not marked for, and in fact cannot be, serialized.

Try placing a [NonSerialized] attribute in front of it (ObiConstraints.cs, line 33), see if this gives Unity a hint that this thing should not be serialized. Didn't work for me, but it's the only thing I can think of. Will send a bug report to them.
Reply


Messages In This Thread
Obi 5.0 not usable on 2020.1.0a14 - by ibbybn - 29-11-2019, 01:09 AM
RE: Obi 5.0 not usable on 2020.1.0a14 - by josemendez - 29-11-2019, 08:47 AM
RE: Obi 5.0 not usable on 2020.1.0a14 - by ibbybn - 29-11-2019, 12:48 PM