Search Unity

  1. We are migrating the Unity Forums to Unity Discussions. On July 12, the Unity Forums will become read-only. On July 15, Unity Discussions will become read-only until July 18, when the new design and the migrated forum contents will go live. Read our full announcement for more information and let us know if you have any questions.

Feedback 2022.2Alpha UI Change feedback

Discussion in '2022.2 Beta' started by jjejj87, Apr 14, 2022.

  1. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,117
    I would like to say that it is nice to see UI getting improved. But here are some things that I think needs attention

    List in Inspector
    The new layout, I think, is not good and prohibits quick navigation.
    • It no longer shows the variable name of the list like before.
    • I keep clicking on the list number when I try to click the triangle to open the list
    • The long black bar creates a breakage in visuals that I didin't intend. This may be personal, but not welcomed.
    • the opened list box is out of alignment, ever so slightly, but enough to irritate my eyes whenever I look at it.
    • I think the old layout from 2022.1 was way better.

    Variables that have no allocation
    One of the worst features since the change in UI (I think it started in 2022), is that it is very hard to notice if a variable is Missing/None. It gets a default white paper icon with "None" text. This is very hard to notice when there are many variables, especially in a list or array. Can we make the icons more noticeable, so that when I take a quick look, I can notice it immediately? I think adding a red cross to the paper icon would do the trick, or any adding of some colorization would help.

    Icons need more work
    Two of my favorite icons now are, Textmesh Pro icon and Scriptable Object icon. It doesn't take much to visually identify them. But some icons are either too small, or hard to recognize. Stylistic but just hard to read.

    for example.
    • Animator icon
    • CanvasGroup icon
    • Image icon
    • C# script icon
    Add Component box width
    When you click the Add Component button, to add new scripts, the box width is just strangely small, but script names can often be longer than the box, and namespaces are cut off 100% of the time. This is a design issue that prohibits practical use. Can we widen the box?

    eg. EnemySpawnController.cs (Enemy.AI.Thinkcore) <- this gets cutoff all the time.

    Float range slider
    Range slider doesn't match indentation with other variables. Just painful to look at it everytime.

    Feature Request
    I don't know what it is called internally, but I use the headers quite a bit instead of building custom inspectors for every script. So, [Space] [Range(0f, 1f)] [Header("text_here")]

    I often add [Header("[Items] ================================================")]

    something like this to create a line break to compartmentalize visually
    Can we add another header function like [LineBreak("Item")]?
    It is super useful and quick. Easy to maintain.

    Edit: I just checked and it seems all headers are ignored. Even [Space]. Is this a bug or intended behavior? I really hope this is a bug.

    Hope the devs get to look at this.

    My 2 cents.
     
    Last edited: Apr 15, 2022
    Rennan24 and mgear like this.
  2. MaskedMouse

    MaskedMouse

    Joined:
    Jul 8, 2014
    Posts:
    1,094
    I very much agree but it feels like this is a bug?
    The space between the count and list is also gone. There seems to be no space between lists either, creating a very tight fit.

    Left is Unity 2021.3 --- Right is Unity 2022.2 a10
    upload_2022-4-15_16-49-15.png

    Hopefully that is a bug and not a feature.

    You mean public fields that have nothing assigned? I don't know what "white paper icon" you mean.
    But I noticed they removed the prefab icon on a GameObject field.
    upload_2022-4-15_16-57-40.png

    Not every field is always required to fill in. Some are optional. But it would be nice if we could set an attribute
    [RequiredSerializedField]
    or something. And then give off a warning / error depending on the setting. Like hey you've missed serializing this with a reference to the GameObject and highlight the component & field in the inspector.
    It's often the reason why I put Assert.IsNotNull in scripts on Awake. When they're not serialized there's an exception thrown. But it'd be nice if the developer intended for the field to be required to have some indicators on the field that it needs to be serialized in order for the component to work.

    Another thing I'd like to see is a ReadOnly attribute. Sometimes you have private variables that you want to inspect using the inspector. It should be nice to have an attribute that shows the field in the inspector but ready only. You can use the Debug view but I'd very much want it in the normal view without having to create a custom inspector.

    [Header]
    and
    [Space]
    are IMGUI things. Unity 2022.2 seems to finally convert more to UI Toolkit. The inspector is one of them.
    But yeah it would be nice if those attributes would still work for UI Toolkit as well.

    Every year I expect a lot of things from UI Toolkit but I'm often disappointed at how slow the progression is going.
    I've left many things on the roadmap. But I don't even know whether they've been processed or denied or anything at all. Because there is no feedback there. You just leave your voice and that's it. You just hope it comes on the roadmap. After that it is waiting for another year before it is finally being worked on. Another year before it is finally implemented.
    I expected World Space UI 2 years ago. It's delayed, delayed and more delayed. Now it's finally under planned but you're essentially waiting years. They're working on improved UI data binding now. None knows how that will look like. No preview to be found (correct me if I'm wrong). I know they wanted to get a more stable release before going for the world space feature. Custom shaders using Shader Graph is also something that I'd have wished for uGUI. It never came. Now for UI toolkit it's in the planned section.
    Additional UI style properties (blur, drop shadows, gradients), one of the very essential features for any good looking UI.
    They're still missing a grid layout. I could go on.

    I sometimes wonder how many ppl are working on UI Toolkit as it now becomes an essential piece of the Editor as well as runtime UI. It doesn't feel like there's a lot of development velocity in there. Or at least not noticeable.
    UI Toolkit is in development since 2017.1 as an experimental feature. 5 years later and we've finally got some basics that are usable for both runtime and editor. Don't get me wrong, I love UI Toolkit very much despite my complaining. I prefer UI Toolkit over uGUI anytime. But things just feel so slow in development. I hope that will change in the coming months. But looking at the alpha I very much fear that everything will be shoved towards 2023.1 or 2023.2 or even later.
    In the end it is having patience. But it is quite frustrating that uGUI hasn't become any more performant. And UI Toolkit still hasn't reached feature parity. And my guess is that it'll take another year or two before we can finally convert to it. Just very frustrating.
     
  3. Xan_9

    Xan_9

    Joined:
    Oct 7, 2020
    Posts:
    31
    The layout difference in the inspector is probably because they did the move from IMGUI to UI Toolkit. I expect some features will be improved or added in the coming versions, like header support and basic UI fixes.
     
    MaskedMouse likes this.