Search Unity

  1. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Resolved Moving Points in the Editor (Colliders, etc)

Discussion in 'Authoring Dev Blitz Day 2023' started by CoraBlue, Jan 26, 2023.

  1. CoraBlue

    CoraBlue

    Joined:
    Nov 16, 2017
    Posts:
    58
    Hello Unity devs!

    I hope I'm not too late to the party. I recently shared some feedback about Tilemaps here but working in 2D a lot I have one other frequent headache. Moving points around in the editor.

    The first complaint is that there is different UI for doing this everywhere you look. Colliders, LineRenderer, Splines, ShapeSprite, etc. I have become intimately aware of how each of these work and it takes up an admittedly annoying amount of space in my brain.

    The second issue comes from features that each of these do or don't have, despite the fact they're all doing basically the same thing. Spriteshape has 'Snap To Grid,' which is invaluable; a trait almost nothing else has. It is incredibly frustrating to move something in LineRenderer or PolygonCollider and see a floating point number 10 digits long. You also cannot grab multiple points in Colliders. I invite anyone to try and trace a polygon collider over a level with int accuracy. It's a nightmare. You can select multiple points in LineRenderer but you can't manipulate them. If you select all points in a SpriteShape you cannot change the sprite index they're using because the last point in a SpriteShape has no sprite index. Splines are unusable in 2D unless you rotate every single knot 90 degrees (though I hear that might have been addressed recently, it's still not live).

    Frankly I could go on for a page, but really, I would love to see some sort of unification of these myriad systems that brings the best functionality of all of them.
     
  2. kaarrrllll

    kaarrrllll

    Unity Technologies

    Joined:
    Aug 24, 2017
    Posts:
    552
    We are acutely aware of the lack of consistency among editor tools. There has been work that starts to address this, but we have a long way to go. The first step was a common API for authoring tools https://docs.unity3d.com/ScriptReference/EditorTools.EditorTool.html, and the latest is a common way to register groups for tools for editing non-GameObject type things (e.g., points). https://docs.unity3d.com/ScriptReference/EditorTools.EditorToolContext.html

    ProBuilder and the new Splines packages are the first clients of these APIs, but we have a lot of work internally to bring old code up to date.
     
  3. CoraBlue

    CoraBlue

    Joined:
    Nov 16, 2017
    Posts:
    58
    Great to know. I suspected that Spline was just the first tool of many, but I have to ask. Considering the timelines I suspect are involved, is there any chance of a QOL update to the existing scripts in the meantime? If I had to choose two very easy fixes that would save me hours in particular, it would be snap to grid for collider point editing and dummy fields in SpriteShape's last vertex so that multiediting all points works as expected.
     
  4. kaarrrllll

    kaarrrllll

    Unity Technologies

    Joined:
    Aug 24, 2017
    Posts:
    552
    The best thing to do is submit a feature request to the roadmap, https://unity.com/roadmap/unity-platform/editor.

    Having external pressure to address these inconsistencies is very helpful for us when we're arguing to allocate resources towards these kinds of improvements.