In Blender, we have various levels of visibility. We already have a toggle for viewport visibility per view layer
We then have a layer on top, which is the Hidden toggle:
This is already quite confusing. Even though there is a difference between them that users can learn, in practice it's simply not clear enough which one to use when.
Next, the question is, how to handle the / key Local View feature, as well as per viewport visibility? How can we add these features without adding even more layers of visibility and complexity?
Proposal
- In the outliner we only keep the screen and render visibility option (hide_render, hide_viewport).
- We move the collections and objects visibility to be per-viewport.
- In the viewport collection popover we control only the per-viewport collection visibility (we can still indicate if there is any object in this collection that is invisible).
- With / we control localview, like in 2.79a.
For now we don't change the way per-object visibility is handled. So outliner still shows them, and users can use H, Alt + H to control them.
Viewport visibility UI
Currently, we have two popovers to control viewport visibility:
We can optimize this UI by combining them into one popover, as we do in other editors. Our 3D View header is getting very crowded, and there's no need for two separate ones, and we already have the Outliner visible by default to organize scenes.
Inside, we should mirror the same order and layout as the Outliner. Otherwise, users will have no way of relating to the hierarchy of Collections.
The section in the bottom allows users to disable visibility or selectability per object type:
The hierarchy here is communicated just like hierarchy in the Properties Editor, using background darkness as opposed to indentation. This allows us to see many levels deep without requiring a wide panel to fit all the indentations.
The numbers refer to the shortcut keys one can hit from 1-9 to solo top level Collections.
The filled vs empty Collections show you which Collections are empty.
The yellow highlighted Collections are the ones with the selected items inside it.