Library Override - Outliner UI/UX #95802
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
9 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#95802
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
WIP
This task gathers the planned changes to the Outliner UI/UX regarding library overrides.
It is partially related to #95707 (Library Override - System override IDs).
There are three main identified tasks:
NOTE: A third Favorite view mode is also planed for the Outliner, see #95816 (Library Override - 'Cherry-Picked' Properties) for details.
Overrides Properties View Mode
The current Outliner's 'flat' view of overrides should be moved into its own 'mode', and extended to show UI widgets for each overridden RNA properties.
The focus of this view mode is the access to the actual (user-defined) overridden data of each ID.
In that mode, new SystemOverrides data-block would not be visible by default (filter option), just like existing 'system override' properties (for ID pointers) are already hidden by default. Using the same option for both should make sense.
Some common operations over overrides will be added in a contextual menu.
Mockup:
Tasks
d2a30abff0
Further tweaks:
d2a30abff0
d2a30abff0
a6214ce7ac
Overrides Hierarchies View Mode
That new view mode will focus on showing and helping manage the override hierarchies, i.e. the relationships between IDs.
As such, only 'root overrides' (and those who are not part of any hierarchy) will be shown at the first level (typically, collections).
System Overrides will be shown in that mode. An button icon on the right will allow to toggle them to actual 'user' overrides.
Some advanced management/fixing operations could also be added in a contextual menu, such as removing and override from a hierarchy, or moving it to another hierarchy. Those could be useful to fix broken cases.
Mockup:
Tasks
994da7077d
f1df685f57
,6feca52349
Refine Allowed Operations, Integrate System Override IDs and Root IDs
This is mostly a lot of smaller tasks (new operators, refinement of poll/execution checks of existing ones, etc.). It should also include/take advantage of the new hierarchy root ID pointer, and system overrides concepts.
Tasks
and move it after the 'Override Hierarchy' option (make this one the most visible/obvious option).Better not break muscle memory, at least for now.!
to the left of the items) are handled, make it more generic. -f1df685f57
Outdated Mockups
Changed status from 'Needs Triage' to: 'Confirmed'
Added subscriber: @mont29
Added subscriber: @RedMser
Added subscriber: @JulianEisel
Pushed some first changes to a branch
temp-library-overrides-outliner
. It does most work needed for displaying the buttons to edit the overridden properties in the Outliner. Looks like this: Main TODO I see is handling longer arrays and matrices better. You can't really squeeze more than 3 items into the right column. In that case I think we should add the components as children again, like the Data API display mode does it.Worth noting for design evaluations, I decided to add the right column so that the left column can be scrolled independently, like we do it for the restriction toggles in other display modes.
This differs from the Data API mode, which just adds the column behind the width of the visible items, so you may have to scroll right to see the entire column: Plus, it attaches the column weirdly to the left in wider layouts: So I prefer the other solution.
Added subscriber: @Gabi_love
I don't think that you should have multiple of the same icons in the bottom of the hierarchy (if all of them are overriden). Sorry for the jankey way it looks I did it in paint just for demonstration. You don't have to pick this icon just something with less visual clutter
@Gabi_love agreed, this is something I wanted to address anyway. There's no need for icons at all there, it's just redundant and adds visual noise. But that would be a separate change, I'd like to do such polishing in master once the main usability features are there.
Added subscriber: @satishgoda1
One thing to check:
Yes I think it should definitely be in the hierarchy view, there you want to know whether your overrides are linked from a library (and which one), or if they are actually local. And whether you need to resync those linked files or not.
In the 'properties' view we don't need it because linked overrides should not be listed there (since they are not editable in any ways).
Removed subscriber: @Gabi_love
This issue was referenced by
1ff853a3f0
This issue was referenced by
dcb520a7af
This issue was referenced by
0c6dc7c59e
Added subscriber: @GeorgiaPacific
Added subscriber: @AlexeyAdamitsky
Added subscriber: @Emi_Martinez
Changed status from 'Confirmed' to: 'Resolved'
Think we can consider this task as done, at least in the liboverride project context. Further improvements obviously remain possible in the future..