Search Unity

Suggestions to improve asset labeling workflow

Discussion in 'Editor & General Support' started by huulong, May 31, 2021.

  1. huulong

    huulong

    Joined:
    Jul 1, 2013
    Posts:
    224
    I always put a "Data" label on all my scriptable objects so I can find them in a glance, esp. when I got a lot of data to balance. However, it is easy to forget to label a particular asset, and there is no way to batch-label them afterward. So here are a few suggestions to improve the labeling workflow.

    The current state is:
    1. There is no way to define default labels for new assets, even for custom Scriptable Object classes.
    2. One must set a label for each asset one by one. Multi-selection hides the label editing interface.
    EDIT: more exactly, heterogeneous asset type multi-selection prevents label editing. It is possible to batch edit asset labels if the assets have the same type.
    3. Duplicating an asset doesn't preserve labels. As a result, my attempt to use an existing (scriptable object) asset as a template for a new one also failed.

    My suggestions address each of these:
    A. Allow user to define default labels for custom Scriptable Object classes in the .cs script, using [attributes]. Alternatively, add a menu in the editor to define default labels for *any* asset type, similarly to what the default import Presets window does with asset import.
    B. Support label editing for heterogeneous multi-selection a bit like what checkboxes show on multiple objects: if a label is owned by some selected assets but not all, the label appears in gray or with a "-" sign. If it is owned by all selected assets, it appears in blue or with a "x" sign. This way you can remove existing labels even if owned by some of the selected objects. And you can add new labels to all selected assets (if some already have it, it just adds them to those that don't have it yet).
    C. Add a preference to the editor to duplicate labels along with Assets. You could also always enable it if developers are OK with this workflow, but if you want to keep retrocompatibility the preference could help. You could also add the preference, but still enable it by default so developers not aware of the new feature get to discover it by doing, but can disable it if they want.
     
    Last edited: Jun 6, 2021
  2. huulong

    huulong

    Joined:
    Jul 1, 2013
    Posts:
    224
    I just got another use case:
    - I'm filtering assets by label with a custom filter
    - I select an asset and duplicate it to create some variation of it
    - the new asset doesn't have the label, therefore it's not visible in the custom filter view, and it looks like the operation failed!
    - clear the custom view while selecting the original asset to see the cloned asset in the same folder as the original asset