The exception is: “EndLayoutGroup: BeginLayoutGroup must be called first.“ After that it gives multiple similar exceptions related to EndLayoutGroup call
You can see the exception in the Demo project.
Unity version: 2020.1.7f
Odin inspector version: 126.96.36.199
Steps to reproduce:
- Import “Sample - RPG Editor” demo project
- Open the RPGEditor Window from the demo project
- Click on Weapons “Root” node.
- Click “Create character” in the top right corner
- After the popup to save the character is opened - click on “Cancel”
- Unity shows the exceptions mentioned at the beginning.
What I found so far:
Associating the menu node with a scriptable object resolves the exception, but it gives a warning (that it should be instantiated) when done like this:
tree.Add("Weapons", new TestObject()); //Where TestObject is just an empty ScriptableObject
It happens only when opening a windows popup from a button inside the OdinMenuEditorWindow like the one in the top toolbar, for example:
EditorUtility.SaveFilePanel("Save object as", dest, "New " + typeof(T).GetNiceName(), "asset");
It doesn’t work with other type of object, only with types inheriting ScriptableObject. This custom ScriptableObject type can be just an empty class.
- “Create item” button - next to the “Create Character” shows an overlay with item selection (weapons, armours and consumables). But after choosing the item from this overlay - the windows popup doesn’t trigger the exceptions
Below are the screenshot illustrating the steps