- changed status to open
Unsupported type int2_storage with MinMaxSlider and Vector2Int
Description
I tried to define a MinMaxSlider of two int values, as described in the release notes of v2.0 : Section "Additions"
The MinMaxSlider attribute now also works on Vector2Int properties.
However, in v 3.0.4 (Unity 2020.0.0f1) Vector2Int seams to be broken with the Attribute “MinMaxSlider”
The code:
[Serializable]
public class ItemRange
{
[MinMaxSlider(1, 100)]
public Vector2Int range;
}
causes the following stack trace, if the slider is manipulated in the editor:
Unsupported type int2_storage
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Sirenix.OdinInspector.Editor.PropertyTree`1<Assets.Scripts.Item.DropItem>:<ApplyChanges>b__49_1 () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Core/PropertyTree.cs:1431)
Sirenix.OdinInspector.Editor.PropertyTree`1<Assets.Scripts.Item.DropItem>:InvokeDelayedActions () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Core/PropertyTree.cs:2093)
Sirenix.OdinInspector.Editor.PropertyTree:EndDraw () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Core/PropertyTree.cs:515)
Sirenix.OdinInspector.Editor.PropertyTree:Draw (bool) (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Core/PropertyTree.cs:390)
Sirenix.OdinInspector.Editor.OdinEditor:DrawTree () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Drawers/OdinEditor.cs:93)
Sirenix.OdinInspector.Editor.OdinEditor:DrawOdinInspector () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Drawers/OdinEditor.cs:216)
Sirenix.OdinInspector.Editor.OdinEditor:OnInspectorGUI () (at Y:/Repositories/sirenix-development-framework/Sirenix Solution/Sirenix.OdinInspector.Editor/Drawers/OdinEditor.cs:85)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
How to reproduce
- Define a serializable class that is used as field in a class, extending MonoBehaviour
- Define a filed with the type Vector2Int
- Add the attribute MinMaxSlider with values like min:1, max:100
- Add the MonoBehaviour class as component in a Unity GameObject
- Change the value of the serializable class with the MinMaxSlider
The above stated error “Unsupported type int2_storage
“ will occur on each change of the value
Environment
- OS: Windows 10 x64 (20H2)
- Unity: 2020.3.0f1
- Odin Inspector: 3.0.4.0
- Editor Only Mode: Occurs in enabled and disabled mode
Please let me know if a demo project is necessary.
Comments (3)
-
-
reporter Hi
I tried to reproduce it too in a new project and failed (was working), tried it in my original project and was now also working.
So, I really cannot say what happened back then. Maybe it was a .NET/CLR problem that was resolved with a restart of the system.I am sorry for the inconvenience. I will consider further checks in the future before reporting an issue.
This issue can be closed therefore.Thank you very much for your time.
-
reporter - changed status to resolved
Cannot be reproduced
- Log in to comment
I'm afraid this issue does not reproduce in the Unity/Odin versions you specified. I also tried in a few newer and older versions of Unity, and it also failed to reproduce there. If you want a resolution, I'm afraid you will have to provide a repro package that reliably reproduces the issue in a fresh Unity project.